UNPKG

@akala/json-rpc-ws

Version:

json-rpc websocket transport

31 lines 824 B
import * as ws from 'ws'; import WsSocketAdapter from './ws-socket-adapter.js'; import { JsonRpcSocketAdapter } from '../shared-connection.js'; export class Adapter { options; server; closed; close() { this.server?.close(); return this.closed; } onConnection(handler) { this.server?.on('connection', function (socket) { handler(new JsonRpcSocketAdapter(new WsSocketAdapter(socket))); }); } once(event, callback) { this.server?.on(event, callback); } start() { this.server = new ws.WebSocketServer(this.options); this.closed = new Promise(resolve => this.server.once('close', resolve)); } /** * */ constructor(options) { this.options = options; } } //# sourceMappingURL=server.js.map