feat: add status notification transition check to OCPP 2.x.x code
[e-mobility-charging-stations-simulator.git] / src / charging-station / ocpp / 2.0 / OCPP20ServiceUtils.ts
index 2c7d3df3191f2246eb3086e4bb02d003ef241663..9fb61bd0c49eb07b4872840fb336ebbcbaaf0228 100644 (file)
@@ -1,30 +1,24 @@
 // Partial Copyright Jerome Benoit. 2021-2023. All Rights Reserved.
 
-import fs from 'node:fs';
 import path from 'node:path';
 import { fileURLToPath } from 'node:url';
 
 import type { JSONSchemaType } from 'ajv';
 
-import { FileType } from '../../../types/FileType';
-import type { JsonType } from '../../../types/JsonType';
-import { OCPPVersion } from '../../../types/ocpp/OCPPVersion';
-import FileUtils from '../../../utils/FileUtils';
-import { OCPPServiceUtils } from '../OCPPServiceUtils';
+import { type JsonType, OCPPVersion } from '../../../types';
+import { OCPPServiceUtils } from '../internal';
 
 export class OCPP20ServiceUtils extends OCPPServiceUtils {
-  public static parseJsonSchemaFile<T extends JsonType>(relativePath: string): JSONSchemaType<T> {
-    const filePath = path.resolve(path.dirname(fileURLToPath(import.meta.url)), relativePath);
-    try {
-      return JSON.parse(fs.readFileSync(filePath, 'utf8')) as JSONSchemaType<T>;
-    } catch (error) {
-      FileUtils.handleFileException(
-        OCPPServiceUtils.logPrefix(OCPPVersion.VERSION_20),
-        FileType.JsonSchema,
-        filePath,
-        error as NodeJS.ErrnoException,
-        { throwError: false }
-      );
-    }
+  public static parseJsonSchemaFile<T extends JsonType>(
+    relativePath: string,
+    moduleName?: string,
+    methodName?: string
+  ): JSONSchemaType<T> {
+    return super.parseJsonSchemaFile<T>(
+      path.resolve(path.dirname(fileURLToPath(import.meta.url)), relativePath),
+      OCPPVersion.VERSION_20,
+      moduleName,
+      methodName
+    );
   }
 }