Make the UI pages HTML 4 compliant
[e-mobility-charging-stations-simulator.git] / src / charging-station / ocpp / OCPPRequestService.ts
index c4dc0cbf396fafc986ccf921712d125c6da7582b..abef08086ade8629890df3403567cda2e9e5b4cc 100644 (file)
@@ -34,6 +34,8 @@ export default abstract class OCPPRequestService {
     this.chargingStation = chargingStation;
     this.ocppResponseService = ocppResponseService;
     this.sendMessageHandler.bind(this);
+    this.sendResult.bind(this);
+    this.sendError.bind(this);
   }
 
   public static getInstance<T extends OCPPRequestService>(
@@ -41,13 +43,13 @@ export default abstract class OCPPRequestService {
     chargingStation: ChargingStation,
     ocppResponseService: OCPPResponseService
   ): T {
-    if (!OCPPRequestService.instances.has(chargingStation.id)) {
+    if (!OCPPRequestService.instances.has(chargingStation.hashId)) {
       OCPPRequestService.instances.set(
-        chargingStation.id,
+        chargingStation.hashId,
         new this(chargingStation, ocppResponseService)
       );
     }
-    return OCPPRequestService.instances.get(chargingStation.id) as T;
+    return OCPPRequestService.instances.get(chargingStation.hashId) as T;
   }
 
   public async sendResult(
@@ -315,9 +317,10 @@ export default abstract class OCPPRequestService {
     }
   }
 
-  public abstract sendMessageHandler(
+  // eslint-disable-next-line @typescript-eslint/no-unused-vars
+  public abstract sendMessageHandler<Request extends JsonType, Response extends JsonType>(
     commandName: RequestCommand,
     commandParams?: JsonType,
     params?: SendParams
-  ): Promise<ResponseType>;
+  ): Promise<Response>;
 }