7136e4472735e7e3ec6dffee11f58a360962d3cd
[e-mobility-charging-stations-simulator.git] / src / charging-station / ui-server / ui-services / UIServiceFactory.ts
1 import { AbstractUIServer } from '../AbstractUIServer';
2 import AbstractUIService from './AbstractUIService';
3 import { ProtocolVersion } from '../../../types/UIProtocol';
4 import UIService001 from './UIService001';
5
6 export default class UIServiceFactory {
7 private constructor() {
8 // This is intentional
9 }
10
11 public static getUIServiceImplementation(
12 version: ProtocolVersion,
13 uiServer: AbstractUIServer
14 ): AbstractUIService | null {
15 switch (version) {
16 case ProtocolVersion['0.0.1']:
17 return new UIService001(uiServer);
18 default:
19 return null;
20 }
21 }
22 }