Merge dependabot/npm_and_yarn/types/tar-6.1.12 into combined-prs-branch
[e-mobility-charging-stations-simulator.git] / src / performance / storage / StorageFactory.ts
index f5cfcbefa6af6e134caef94f085f567170be40c6..2b6b84ffe5b8ad75da53fc7c5fa9687b0e0089cd 100644 (file)
@@ -1,12 +1,12 @@
-// Copyright Jerome Benoit. 2021-2023. All Rights Reserved.
+// Copyright Jerome Benoit. 2021-2024. All Rights Reserved.
 
+import { BaseError } from '../../exception/index.js'
+import { StorageType } from '../../types/index.js'
 import { JsonFileStorage } from './JsonFileStorage.js'
-// eslint-disable-next-line @typescript-eslint/no-unused-vars
 import { MikroOrmStorage } from './MikroOrmStorage.js'
 import { MongoDBStorage } from './MongoDBStorage.js'
+import { None } from './None.js'
 import type { Storage } from './Storage.js'
-import { BaseError } from '../../exception/index.js'
-import { StorageType } from '../../types/index.js'
 
 // eslint-disable-next-line @typescript-eslint/no-extraneous-class
 export class StorageFactory {
@@ -27,12 +27,16 @@ 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 MikroOrmStorage(connectionUri, logPrefix, type)
-      //   break
+      case StorageType.SQLITE:
+      case StorageType.MARIA_DB:
+      case StorageType.MYSQL:
+        storageInstance = new MikroOrmStorage(connectionUri, logPrefix, type)
+        break
+      case StorageType.NONE:
+        storageInstance = new None()
+        break
       default:
+        // eslint-disable-next-line @typescript-eslint/restrict-template-expressions
         throw new BaseError(`${logPrefix} Unknown storage type: ${type}`)
     }
     return storageInstance