X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=src%2Fperformance%2Fstorage%2FMikroOrmStorage.ts;h=d1b84b8577d6bd267cf709cbc4cfd0880ceaea88;hb=db6ce8d86b3384fea4a55de8a543e7966f34685a;hp=021bc28b078a658e7e4191d9fae13a2a45c31a84;hpb=2896e06dc8d72adf7150b23c941079f622f6f37c;p=e-mobility-charging-stations-simulator.git diff --git a/src/performance/storage/MikroOrmStorage.ts b/src/performance/storage/MikroOrmStorage.ts index 021bc28b..d1b84b85 100644 --- a/src/performance/storage/MikroOrmStorage.ts +++ b/src/performance/storage/MikroOrmStorage.ts @@ -1,21 +1,27 @@ // Copyright Jerome Benoit. 2021-2023. All Rights Reserved. -import { Configuration, Connection, IDatabaseDriver, MikroORM, Options } from '@mikro-orm/core'; +import { + Configuration, + Connection, + type IDatabaseDriver, + MikroORM, + type Options, +} from '@mikro-orm/core'; import { TsMorphMetadataProvider } from '@mikro-orm/reflection'; +import { Storage } from './Storage'; import { - type MikroORMDBType, + type MikroOrmDbType, PerformanceData, PerformanceRecord, type Statistics, StorageType, } from '../../types'; -import { Constants } from '../../utils/Constants'; -import { Storage } from '../internal'; +import { Constants } from '../../utils'; export class MikroOrmStorage extends Storage { private storageType: StorageType; - private orm!: MikroORM | null; + private orm?: MikroORM; constructor(storageUri: string, logPrefix: string, storageType: StorageType) { super(storageUri, logPrefix); @@ -23,6 +29,7 @@ export class MikroOrmStorage extends Storage { this.dbName = this.getDBName(); } + // eslint-disable-next-line @typescript-eslint/no-unused-vars public async storePerformanceStatistics(performanceStatistics: Statistics): Promise { try { const performanceRecord = new PerformanceRecord(); @@ -46,7 +53,7 @@ export class MikroOrmStorage extends Storage { try { if (this?.orm) { await this.orm.close(); - this.orm = null; + delete this?.orm; } } catch (error) { this.handleDBError(this.storageType, error as Error); @@ -69,7 +76,7 @@ export class MikroOrmStorage extends Storage { return { metadataProvider: TsMorphMetadataProvider, entities: [PerformanceRecord, PerformanceData], - type: this.storageType as MikroORMDBType, + type: this.storageType as MikroOrmDbType, clientUrl: this.getClientUrl(), }; }