repositories
/
e-mobility-charging-stations-simulator.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 'main' of github.com:SAP/e-mobility-charging-stations-simulator
[e-mobility-charging-stations-simulator.git]
/
src
/
performance
/
storage
/
MikroOrmStorage.ts
diff --git
a/src/performance/storage/MikroOrmStorage.ts
b/src/performance/storage/MikroOrmStorage.ts
index 1953491adb698692172c7595ac57e28016cc7360..d1b84b8577d6bd267cf709cbc4cfd0880ceaea88 100644
(file)
--- a/
src/performance/storage/MikroOrmStorage.ts
+++ b/
src/performance/storage/MikroOrmStorage.ts
@@
-1,18
+1,27
@@
-// Copyright Jerome Benoit. 2021. All Rights Reserved.
+// Copyright Jerome Benoit. 2021
-2023
. All Rights Reserved.
-import { Configuration, Connection, IDatabaseDriver, MikroORM, Options } from '@mikro-orm/core';
-import { MikroORMDBType, StorageType } from '../../types/Storage';
+import {
+ Configuration,
+ Connection,
+ type IDatabaseDriver,
+ MikroORM,
+ type Options,
+} from '@mikro-orm/core';
+import { TsMorphMetadataProvider } from '@mikro-orm/reflection';
-import Constants from '../../utils/Constants';
-import { PerformanceData } from '../../types/orm/entities/PerformanceData';
-import { PerformanceRecord } from '../../types/orm/entities/PerformanceRecord';
-import Statistics from '../../types/Statistics';
import { Storage } from './Storage';
import { Storage } from './Storage';
-import { TsMorphMetadataProvider } from '@mikro-orm/reflection';
+import {
+ type MikroOrmDbType,
+ PerformanceData,
+ PerformanceRecord,
+ type Statistics,
+ StorageType,
+} from '../../types';
+import { Constants } from '../../utils';
export class MikroOrmStorage extends Storage {
private storageType: StorageType;
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);
constructor(storageUri: string, logPrefix: string, storageType: StorageType) {
super(storageUri, logPrefix);
@@
-20,10
+29,11
@@
export class MikroOrmStorage extends Storage {
this.dbName = this.getDBName();
}
this.dbName = this.getDBName();
}
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
public async storePerformanceStatistics(performanceStatistics: Statistics): Promise<void> {
try {
const performanceRecord = new PerformanceRecord();
public async storePerformanceStatistics(performanceStatistics: Statistics): Promise<void> {
try {
const performanceRecord = new PerformanceRecord();
- await this.orm.em.persistAndFlush(performanceRecord);
+ await this.orm
?
.em.persistAndFlush(performanceRecord);
} catch (error) {
this.handleDBError(this.storageType, error as Error, Constants.PERFORMANCE_RECORDS_TABLE);
}
} catch (error) {
this.handleDBError(this.storageType, error as Error, Constants.PERFORMANCE_RECORDS_TABLE);
}
@@
-43,7
+53,7
@@
export class MikroOrmStorage extends Storage {
try {
if (this?.orm) {
await this.orm.close();
try {
if (this?.orm) {
await this.orm.close();
-
this.orm = null
;
+
delete this?.orm
;
}
} catch (error) {
this.handleDBError(this.storageType, error as Error);
}
} catch (error) {
this.handleDBError(this.storageType, error as Error);
@@
-66,12
+76,12
@@
export class MikroOrmStorage extends Storage {
return {
metadataProvider: TsMorphMetadataProvider,
entities: [PerformanceRecord, PerformanceData],
return {
metadataProvider: TsMorphMetadataProvider,
entities: [PerformanceRecord, PerformanceData],
- type: this.storageType as MikroO
RMDB
Type,
+ type: this.storageType as MikroO
rmDb
Type,
clientUrl: this.getClientUrl(),
};
}
clientUrl: this.getClientUrl(),
};
}
- private getClientUrl(): string {
+ private getClientUrl(): string
| undefined
{
switch (this.storageType) {
case StorageType.SQLITE:
case StorageType.MARIA_DB:
switch (this.storageType) {
case StorageType.SQLITE:
case StorageType.MARIA_DB: