feat: improve get composite schedule
[e-mobility-charging-stations-simulator.git] / src / performance / storage / StorageFactory.ts
index 677ae8f267c99587be81b894d55c3b3d3f1263c6..cecaa48901bf3689475503d431891edd9e41c518 100644 (file)
@@ -1,10 +1,12 @@
-// Copyright Jerome Benoit. 2021. All Rights Reserved.
+// Copyright Jerome Benoit. 2021-2023. All Rights Reserved.
 
 import { JsonFileStorage } from './JsonFileStorage';
+// eslint-disable-next-line @typescript-eslint/no-unused-vars
 import { MikroOrmStorage } from './MikroOrmStorage';
 import { MongoDBStorage } from './MongoDBStorage';
-import { Storage } from './Storage';
-import { StorageType } from '../../types/Storage';
+import type { Storage } from './Storage';
+import { BaseError } from '../../exception';
+import { StorageType } from '../../types';
 
 export class StorageFactory {
   private constructor() {
@@ -12,7 +14,7 @@ export class StorageFactory {
   }
 
   public static getStorage(type: StorageType, connectionUri: string, logPrefix: string): Storage {
-    let storageInstance: Storage = null;
+    let storageInstance: Storage | null = null;
     switch (type) {
       case StorageType.JSON_FILE:
         storageInstance = new JsonFileStorage(connectionUri, logPrefix);
@@ -26,7 +28,7 @@ export class StorageFactory {
       //   storageInstance = new MikroOrmStorage(connectionUri, logPrefix, type);
       //   break;
       default:
-        throw new Error(`${logPrefix} Unknown storage type: ${type}`);
+        throw new BaseError(`${logPrefix} Unknown storage type: ${type}`);
     }
     return storageInstance;
   }