repositories
/
e-mobility-charging-stations-simulator.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Check build requirements before all build types
[e-mobility-charging-stations-simulator.git]
/
src
/
charging-station
/
ui-server
/
UIHttpServer.ts
diff --git
a/src/charging-station/ui-server/UIHttpServer.ts
b/src/charging-station/ui-server/UIHttpServer.ts
index 4db72bf71e473f21526e6663f3d247ad6c5687e0..d6ce53103e31c38bed3910fef957acb56bd282af 100644
(file)
--- a/
src/charging-station/ui-server/UIHttpServer.ts
+++ b/
src/charging-station/ui-server/UIHttpServer.ts
@@
-1,4
+1,4
@@
-import
{ IncomingMessage, RequestListener, Serv
er, ServerResponse } from 'http';
+import
type { IncomingMessage, RequestListen
er, ServerResponse } from 'http';
import { StatusCodes } from 'http-status-codes';
import { StatusCodes } from 'http-status-codes';
@@
-27,20
+27,22
@@
export default class UIHttpServer extends AbstractUIServer {
public constructor(protected readonly uiServerConfiguration: UIServerConfiguration) {
super(uiServerConfiguration);
public constructor(protected readonly uiServerConfiguration: UIServerConfiguration) {
super(uiServerConfiguration);
- this.httpServer = new Server(this.requestListener.bind(this) as RequestListener);
this.responseHandlers = new Map<string, responseHandler>();
}
public start(): void {
this.responseHandlers = new Map<string, responseHandler>();
}
public start(): void {
+ this.httpServer.on('connection', (socket) => {
+ this.sockets.add(socket);
+ socket.on('close', () => {
+ this.sockets.delete(socket);
+ });
+ });
+ this.httpServer.on('request', this.requestListener.bind(this) as RequestListener);
if (this.httpServer.listening === false) {
this.httpServer.listen(this.uiServerConfiguration.options);
}
}
if (this.httpServer.listening === false) {
this.httpServer.listen(this.uiServerConfiguration.options);
}
}
- public stop(): void {
- this.chargingStations.clear();
- }
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
public sendRequest(request: ProtocolRequest): void {
// This is intentionally left blank
// eslint-disable-next-line @typescript-eslint/no-unused-vars
public sendRequest(request: ProtocolRequest): void {
// This is intentionally left blank
@@
-53,8
+55,7
@@
export default class UIHttpServer extends AbstractUIServer {
res.writeHead(this.responseStatusToStatusCode(payload.status), {
'Content-Type': 'application/json',
});
res.writeHead(this.responseStatusToStatusCode(payload.status), {
'Content-Type': 'application/json',
});
- res.write(JSON.stringify(payload));
- res.end();
+ res.end(JSON.stringify(payload));
this.responseHandlers.delete(uuid);
} else {
logger.error(
this.responseHandlers.delete(uuid);
} else {
logger.error(
@@
-90,13
+91,13
@@
export default class UIHttpServer extends AbstractUIServer {
if (UIServiceUtils.isProtocolAndVersionSupported(protocol, version) === false) {
throw new BaseError(`Unsupported UI protocol version: '/${protocol}/${version}'`);
}
if (UIServiceUtils.isProtocolAndVersionSupported(protocol, version) === false) {
throw new BaseError(`Unsupported UI protocol version: '/${protocol}/${version}'`);
}
+ this.registerProtocolVersionUIService(version);
req.on('error', (error) => {
logger.error(
`${this.logPrefix(moduleName, 'requestListener.req.onerror')} Error on HTTP request:`,
error
);
});
req.on('error', (error) => {
logger.error(
`${this.logPrefix(moduleName, 'requestListener.req.onerror')} Error on HTTP request:`,
error
);
});
- this.registerProtocolVersionUIService(version);
if (req.method === 'POST') {
const bodyBuffer = [];
req
if (req.method === 'POST') {
const bodyBuffer = [];
req