e0b1207106e34ab1755a68cf9d3974d27a8d3088
1 import { Server
as HttpServer
} from
'http';
3 import WebSocket from
'ws';
5 import { ChargingStationData
} from
'../../types/ChargingStationWorker';
6 import { ProtocolVersion
} from
'../../types/UIProtocol';
7 import AbstractUIService from
'./ui-services/AbstractUIService';
9 export abstract class AbstractUIServer
{
10 public readonly chargingStations
: Map
<string, ChargingStationData
>;
11 protected readonly uiServices
: Map
<ProtocolVersion
, AbstractUIService
>;
12 protected server
: WebSocket
.Server
| HttpServer
;
14 public constructor() {
15 this.chargingStations
= new Map
<string, ChargingStationData
>();
16 this.uiServices
= new Map
<ProtocolVersion
, AbstractUIService
>();
19 public abstract start(): void;
20 public abstract stop(): void;
21 public abstract sendRequest(request
: string): void;
22 public abstract sendResponse(response
: string): void;
23 public abstract logPrefix(modName
?: string, methodName
?: string): string;