UI server: add basic authentication support
[e-mobility-charging-stations-simulator.git] / src / charging-station / ui-server / UIServerFactory.ts
index bbbb66b9c2fd67b01e2deb604345ae95314a7b36..392d1ee010f6ab1447cea880fdd311f8d19c21f7 100644 (file)
@@ -1,6 +1,6 @@
 import chalk from 'chalk';
 
-import type { ServerOptions } from '../../types/ConfigurationData';
+import type { UIServerConfiguration } from '../../types/ConfigurationData';
 import { ApplicationProtocol } from '../../types/UIProtocol';
 import Configuration from '../../utils/Configuration';
 import type { AbstractUIServer } from './AbstractUIServer';
@@ -15,9 +15,9 @@ export default class UIServerFactory {
 
   public static getUIServerImplementation(
     applicationProtocol: ApplicationProtocol,
-    options?: ServerOptions
+    uiServerConfiguration?: UIServerConfiguration
   ): AbstractUIServer | null {
-    if (!UIServiceUtils.isLoopback(options?.host)) {
+    if (UIServiceUtils.isLoopback(uiServerConfiguration.options?.host) === false) {
       console.warn(
         chalk.magenta(
           'Loopback address not detected in UI server configuration. This is not recommended.'
@@ -26,9 +26,9 @@ export default class UIServerFactory {
     }
     switch (applicationProtocol) {
       case ApplicationProtocol.WS:
-        return new UIWebSocketServer(options ?? Configuration.getUIServer().options);
+        return new UIWebSocketServer(uiServerConfiguration ?? Configuration.getUIServer());
       case ApplicationProtocol.HTTP:
-        return new UIHttpServer(options ?? Configuration.getUIServer().options);
+        return new UIHttpServer(uiServerConfiguration ?? Configuration.getUIServer());
       default:
         return null;
     }