UI Server: dedupe some code in helpers
[e-mobility-charging-stations-simulator.git] / src / charging-station / ocpp / OCPPRequestService.ts
index 1ae25a65329107bc31b0ade928d3507b54375822..236508bbae983fadfcc70b883ba1e72638577497 100644 (file)
@@ -34,18 +34,21 @@ export default abstract class OCPPRequestService {
 
   protected constructor(ocppResponseService: OCPPResponseService) {
     this.ocppResponseService = ocppResponseService;
+    this.ajv = new Ajv();
+    ajvFormats(this.ajv);
     this.requestHandler.bind(this);
     this.sendResponse.bind(this);
     this.sendError.bind(this);
-    this.ajv = new Ajv();
-    ajvFormats(this.ajv);
+    this.internalSendMessage.bind(this);
+    this.buildMessageToSend.bind(this);
+    this.validateRequestPayload.bind(this);
   }
 
   public static getInstance<T extends OCPPRequestService>(
     this: new (ocppResponseService: OCPPResponseService) => T,
     ocppResponseService: OCPPResponseService
   ): T {
-    if (!OCPPRequestService.instance) {
+    if (OCPPRequestService.instance === null) {
       OCPPRequestService.instance = new this(ocppResponseService);
     }
     return OCPPRequestService.instance as T;
@@ -358,7 +361,7 @@ export default abstract class OCPPRequestService {
     error: Error,
     params: HandleErrorParams<EmptyObject> = { throwError: true }
   ): void {
-    logger.error(chargingStation.logPrefix() + ' Request command %s error: %j', commandName, error);
+    logger.error(chargingStation.logPrefix() + ' Request command %s error:', commandName, error);
     if (params?.throwError) {
       throw error;
     }