X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=src%2Fcharging-station%2Fui-server%2FUIServerFactory.ts;h=2a6b521e42446cf0713b3a138db2051bf5eb53ba;hb=42371a2ed3ad187c91417fa759fd260ae86dee7c;hp=905ce66d5325fc7bca9424d6f313de5cec089588;hpb=60a743910478b70e39dcefa5e1b752ec8a93880e;p=e-mobility-charging-stations-simulator.git diff --git a/src/charging-station/ui-server/UIServerFactory.ts b/src/charging-station/ui-server/UIServerFactory.ts index 905ce66d..2a6b521e 100644 --- a/src/charging-station/ui-server/UIServerFactory.ts +++ b/src/charging-station/ui-server/UIServerFactory.ts @@ -1,8 +1,11 @@ import chalk from 'chalk'; -import { ApplicationProtocol, type UIServerConfiguration } from '../../types'; +import type { AbstractUIServer } from './AbstractUIServer'; +import { UIHttpServer } from './UIHttpServer'; +import { UIServerUtils } from './UIServerUtils'; +import { UIWebSocketServer } from './UIWebSocketServer'; +import { ApplicationProtocol, ConfigurationSection, type UIServerConfiguration } from '../../types'; import { Configuration } from '../../utils'; -import { type AbstractUIServer, UIHttpServer, UIServerUtils, UIWebSocketServer } from '../internal'; export class UIServerFactory { private constructor() { @@ -10,20 +13,34 @@ export class UIServerFactory { } public static getUIServerImplementation( - uiServerConfiguration?: UIServerConfiguration + uiServerConfiguration?: UIServerConfiguration, ): AbstractUIServer | null { - if (UIServerUtils.isLoopback(uiServerConfiguration.options?.host) === false) { + if (UIServerUtils.isLoopback(uiServerConfiguration!.options!.host!) === false) { console.warn( chalk.yellow( - 'Loopback address not detected in UI server configuration. This is not recommended.' - ) + 'Loopback address not detected in UI server configuration. This is not recommended.', + ), ); } - switch (uiServerConfiguration?.type ?? Configuration.getUIServer().type) { + switch ( + uiServerConfiguration?.type ?? + Configuration.getConfigurationSection(ConfigurationSection.uiServer) + .type + ) { case ApplicationProtocol.WS: - return new UIWebSocketServer(uiServerConfiguration ?? Configuration.getUIServer()); + return new UIWebSocketServer( + uiServerConfiguration ?? + Configuration.getConfigurationSection( + ConfigurationSection.uiServer, + ), + ); case ApplicationProtocol.HTTP: - return new UIHttpServer(uiServerConfiguration ?? Configuration.getUIServer()); + return new UIHttpServer( + uiServerConfiguration ?? + Configuration.getConfigurationSection( + ConfigurationSection.uiServer, + ), + ); default: return null; }