X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=src%2Fcharging-station%2Fui-server%2Fui-services%2FUIServiceUtils.ts;h=cf89b0c60598c2625b691288b144819c9e52c209;hb=f0227f390d3f6e303bc54a96c16c075e9de46ad6;hp=dabb5d474e88a78aebe5ea965b5b591e9f20246e;hpb=675fa8e39afc1cc54c2dc68542300de95f5767e9;p=e-mobility-charging-stations-simulator.git diff --git a/src/charging-station/ui-server/ui-services/UIServiceUtils.ts b/src/charging-station/ui-server/ui-services/UIServiceUtils.ts index dabb5d47..cf89b0c6 100644 --- a/src/charging-station/ui-server/ui-services/UIServiceUtils.ts +++ b/src/charging-station/ui-server/ui-services/UIServiceUtils.ts @@ -1,10 +1,14 @@ -import { Protocol, ProtocolVersion } from '../../../types/UIProtocol'; - import { IncomingMessage } from 'http'; -import Utils from '../../../utils/Utils'; + +import { Protocol, ProtocolVersion } from '../../../types/UIProtocol'; import logger from '../../../utils/Logger'; +import Utils from '../../../utils/Utils'; export class UIServiceUtils { + private constructor() { + // This is intentional + } + public static handleProtocols = ( protocols: Set, request: IncomingMessage @@ -28,9 +32,18 @@ export class UIServiceUtils { } logger.error( `${Utils.logPrefix( - ' UI WebSocket Server:' + ' UI WebSocket Server |' )} Unsupported protocol: ${protocol} or protocol version: ${version}` ); return false; }; + + public static isLoopback(address: string): boolean { + const isLoopbackRegExp = new RegExp( + // eslint-disable-next-line no-useless-escape + /^localhost$|^127(?:\.\d+){0,2}\.\d+$|^(?:0*\:)*?:?0*1$/, + 'i' + ); + return isLoopbackRegExp.test(address); + } }