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