import { StatusCodes } from 'http-status-codes';
import WebSocket, { type RawData, WebSocketServer } from 'ws';
+import { AbstractUIServer } from './AbstractUIServer';
+import { UIServerUtils } from './UIServerUtils';
import {
type ProtocolRequest,
type ProtocolResponse,
WebSocketCloseEventStatusCode,
} from '../../types';
import { Constants, Utils, logger } from '../../utils';
-import { AbstractUIServer, UIServerUtils } from '../internal';
const moduleName = 'UIWebSocketServer';
}
const [requestId] = request as ProtocolRequest;
this.responseHandlers.set(requestId, ws);
- this.uiServices.get(version)?.requestHandler(request).catch(Constants.EMPTY_FUNCTION);
+ this.uiServices
+ .get(version)
+ ?.requestHandler(request)
+ .then((protocolResponse: ProtocolResponse) => {
+ if (!Utils.isNullOrUndefined(protocolResponse)) {
+ this.sendResponse(protocolResponse);
+ }
+ })
+ .catch(Constants.EMPTY_FUNCTION);
});
ws.on('error', (error) => {
logger.error(`${this.logPrefix(moduleName, 'start.ws.onerror')} WebSocket error:`, error);