refactor: cleanup loops over object keys
[e-mobility-charging-stations-simulator.git] / src / charging-station / ui-server / ui-services / UIService001.ts
index b02bac82cbb029e654e35e69769c45080a4a0fd2..e6ee2d2cddc405b1cd54b40f8d3de26155bbe489 100644 (file)
@@ -1,65 +1,15 @@
-import {
-  ProcedureName,
-  type ProtocolRequestHandler,
-  ProtocolVersion,
-} from '../../../types/UIProtocol';
+import { AbstractUIService } from './AbstractUIService';
+import { type ProcedureName, type ProtocolRequestHandler, ProtocolVersion } from '../../../types';
 import type { AbstractUIServer } from '../AbstractUIServer';
-import AbstractUIService from './AbstractUIService';
 
-export default class UIService001 extends AbstractUIService {
+export class UIService001 extends AbstractUIService {
   constructor(uiServer: AbstractUIServer) {
     super(uiServer, ProtocolVersion['0.0.1']);
-    this.requestHandlers.set(
-      ProcedureName.START_CHARGING_STATION,
-      this.handleProtocolRequest.bind(this) as ProtocolRequestHandler
-    );
-    this.requestHandlers.set(
-      ProcedureName.STOP_CHARGING_STATION,
-      this.handleProtocolRequest.bind(this) as ProtocolRequestHandler
-    );
-    this.requestHandlers.set(
-      ProcedureName.OPEN_CONNECTION,
-      this.handleProtocolRequest.bind(this) as ProtocolRequestHandler
-    );
-    this.requestHandlers.set(
-      ProcedureName.CLOSE_CONNECTION,
-      this.handleProtocolRequest.bind(this) as ProtocolRequestHandler
-    );
-    this.requestHandlers.set(
-      ProcedureName.START_AUTOMATIC_TRANSACTION_GENERATOR,
-      this.handleProtocolRequest.bind(this) as ProtocolRequestHandler
-    );
-    this.requestHandlers.set(
-      ProcedureName.STOP_AUTOMATIC_TRANSACTION_GENERATOR,
-      this.handleProtocolRequest.bind(this) as ProtocolRequestHandler
-    );
-    this.requestHandlers.set(
-      ProcedureName.START_TRANSACTION,
-      this.handleProtocolRequest.bind(this) as ProtocolRequestHandler
-    );
-    this.requestHandlers.set(
-      ProcedureName.STOP_TRANSACTION,
-      this.handleProtocolRequest.bind(this) as ProtocolRequestHandler
-    );
-    this.requestHandlers.set(
-      ProcedureName.AUTHORIZE,
-      this.handleProtocolRequest.bind(this) as ProtocolRequestHandler
-    );
-    this.requestHandlers.set(
-      ProcedureName.BOOT_NOTIFICATION,
-      this.handleProtocolRequest.bind(this) as ProtocolRequestHandler
-    );
-    this.requestHandlers.set(
-      ProcedureName.STATUS_NOTIFICATION,
-      this.handleProtocolRequest.bind(this) as ProtocolRequestHandler
-    );
-    this.requestHandlers.set(
-      ProcedureName.HEARTBEAT,
-      this.handleProtocolRequest.bind(this) as ProtocolRequestHandler
-    );
-    this.requestHandlers.set(
-      ProcedureName.METER_VALUES,
-      this.handleProtocolRequest.bind(this) as ProtocolRequestHandler
-    );
+    for (const procedureName in AbstractUIService.ProcedureNameToBroadCastChannelProcedureNameMapping) {
+      this.requestHandlers.set(
+        procedureName as ProcedureName,
+        this.handleProtocolRequest.bind(this) as ProtocolRequestHandler
+      );
+    }
   }
 }