X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=src%2Fperformance%2Fstorage%2FStorage.ts;h=c4a0ce9c5669d2516554d161b11f8234a8e08c09;hb=717c1e56bde34461c2a53b73cc1ca04aed39392f;hp=db33a694777e5efe0e415bf96c2874b7ad434cba;hpb=1f5df42ad17d09d3a1f53f6618eba325a403d7ad;p=e-mobility-charging-stations-simulator.git diff --git a/src/performance/storage/Storage.ts b/src/performance/storage/Storage.ts index db33a694..c4a0ce9c 100644 --- a/src/performance/storage/Storage.ts +++ b/src/performance/storage/Storage.ts @@ -2,6 +2,8 @@ import { DBName, StorageType } from '../../types/Storage'; +import { EmptyObject } from '../../types/EmptyObject'; +import { HandleErrorParams } from '../../types/Error'; import Statistics from '../../types/Statistics'; import { URL } from 'url'; import Utils from '../../utils/Utils'; @@ -17,8 +19,11 @@ export abstract class Storage { this.logPrefix = logPrefix; } - protected handleDBError(type: StorageType, error: Error, table?: string): void { + protected handleDBError(type: StorageType, error: Error, table?: string, params: HandleErrorParams = { throwError: false }): void { logger.error(`${this.logPrefix} ${this.getDBNameFromStorageType(type)} error '${error.message}'${(!Utils.isNullOrUndefined(table) || !table) && ` in table or collection '${table}'`}: %j`, error); + if (params?.throwError) { + throw error; + } } protected getDBNameFromStorageType(type: StorageType): DBName {