Throw an error in the template does not have default required mesurand
[e-mobility-charging-stations-simulator.git] / src / utils / performance-storage / StorageFactory.ts
index 2012b500e544485c8f0f607ea4d9b89a5ac363a4..721a5fb10cd5b18018d3aefb228a762ce5328a71 100644 (file)
@@ -1,8 +1,10 @@
+// Copyright Jerome Benoit. 2021. All Rights Reserved.
+
 import { JSONFileStorage } from './JSONFileStorage';
 import { MongoDBStorage } from './MongoDBStorage';
 import { Storage } from './Storage';
 import { StorageType } from '../../types/Storage';
-import logger from '../Logger';
+import { TypeORMStorage } from './TypeORMStorage';
 
 export class StorageFactory {
   // eslint-disable-next-line @typescript-eslint/no-empty-function
@@ -19,8 +21,13 @@ export class StorageFactory {
       case StorageType.MONGO_DB:
         storageInstance = new MongoDBStorage(connectionURI, logPrefix);
         break;
+      case StorageType.MYSQL:
+      case StorageType.MARIA_DB:
+      case StorageType.SQLITE:
+        storageInstance = new TypeORMStorage(connectionURI, logPrefix, type);
+        break;
       default:
-        logger.error(`${logPrefix} Unknown storage type: ${type}`);
+        throw new Error(`${logPrefix} Unknown storage type: ${type}`);
     }
     return storageInstance;
   }