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
refactor: switch to public static instead of setter in configuration
[e-mobility-charging-stations-simulator.git]
/
src
/
performance
/
storage
/
MongoDBStorage.ts
diff --git
a/src/performance/storage/MongoDBStorage.ts
b/src/performance/storage/MongoDBStorage.ts
index cebab8c722ebef0e84da79117ec1c580421abd54..568f70953edc4a2a6db290dae0e51a1634e7cb68 100644
(file)
--- a/
src/performance/storage/MongoDBStorage.ts
+++ b/
src/performance/storage/MongoDBStorage.ts
@@
-2,12
+2,13
@@
import { MongoClient } from 'mongodb';
import { MongoClient } from 'mongodb';
+import { Storage } from './Storage';
+import { BaseError } from '../../exception';
import { type Statistics, StorageType } from '../../types';
import { type Statistics, StorageType } from '../../types';
-import { Constants } from '../../utils/Constants';
-import { Storage } from '../internal';
+import { Constants } from '../../utils';
export class MongoDBStorage extends Storage {
export class MongoDBStorage extends Storage {
- private readonly client
: MongoClient | null
;
+ private readonly client
?: MongoClient
;
private connected: boolean;
constructor(storageUri: string, logPrefix: string) {
private connected: boolean;
constructor(storageUri: string, logPrefix: string) {
@@
-25,7
+26,7
@@
export class MongoDBStorage extends Storage {
await this.client
?.db(this.dbName)
.collection<Statistics>(Constants.PERFORMANCE_RECORDS_TABLE)
await this.client
?.db(this.dbName)
.collection<Statistics>(Constants.PERFORMANCE_RECORDS_TABLE)
- .
insertOne(performanceStatistics
);
+ .
replaceOne({ id: performanceStatistics.id }, performanceStatistics, { upsert: true }
);
} catch (error) {
this.handleDBError(StorageType.MONGO_DB, error as Error, Constants.PERFORMANCE_RECORDS_TABLE);
}
} catch (error) {
this.handleDBError(StorageType.MONGO_DB, error as Error, Constants.PERFORMANCE_RECORDS_TABLE);
}
@@
-55,17
+56,17
@@
export class MongoDBStorage extends Storage {
private checkDBConnection() {
if (!this?.client) {
private checkDBConnection() {
if (!this?.client) {
- throw new Error(
+ throw new
Base
Error(
`${this.logPrefix} ${this.getDBNameFromStorageType(
`${this.logPrefix} ${this.getDBNameFromStorageType(
- StorageType.MONGO_DB
- )} client initialization failed while trying to issue a request`
+ StorageType.MONGO_DB
,
+ )} client initialization failed while trying to issue a request`
,
);
}
if (!this.connected) {
);
}
if (!this.connected) {
- throw new Error(
+ throw new
Base
Error(
`${this.logPrefix} ${this.getDBNameFromStorageType(
`${this.logPrefix} ${this.getDBNameFromStorageType(
- StorageType.MONGO_DB
- )} connection not opened while trying to issue a request`
+ StorageType.MONGO_DB
,
+ )} connection not opened while trying to issue a request`
,
);
}
}
);
}
}