81fc2201f294f89f14c7de9479921feb0141525e
[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 // eslint-disable-next-line @typescript-eslint/no-extraneous-class
7 export class UIServiceFactory {
8 private constructor () {
9 // This is intentional
10 }
11
12 public static getUIServiceImplementation (
13 version: ProtocolVersion,
14 uiServer: AbstractUIServer
15 ): AbstractUIService {
16 switch (version) {
17 case ProtocolVersion['0.0.1']:
18 return new UIService001(uiServer)
19 }
20 }
21 }