Skip to content

Commit cac5818

Browse files
author
Sandro
committed
Added 'error' TransportEvent option
1 parent 2ce9d10 commit cac5818

File tree

3 files changed

+10
-1
lines changed

3 files changed

+10
-1
lines changed

src/index.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -587,6 +587,7 @@ export class DCRFClient implements IStreamingAPI {
587587
this.queue.processQueue();
588588
}
589589

590+
590591
public buildMultiplexedMessage(stream: string, payload: object): object {
591592
return { stream, payload };
592593
}

src/interface.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { Options as ReconnectingWebsocketOptions } from 'reconnecting-websocket';
1+
import ReconnectingWebSocket, { Options as ReconnectingWebsocketOptions } from 'reconnecting-websocket';
22
import { Logger } from 'winston';
33

44
export
@@ -111,6 +111,7 @@ export type TransportEvent = 'open' | 'connect' | 'reconnect' | 'message' | 'err
111111

112112
export
113113
interface ITransport {
114+
114115
/**
115116
* Initiate the transport's connection
116117
*
@@ -140,6 +141,7 @@ interface ITransport {
140141
* - "connect": on initial connection
141142
* - "reconnect": when the connection is lost, then reestablished
142143
* - "message": when a message is received
144+
* - "error": when an error occurs
143145
*/
144146
on(name: TransportEvent, handler: (...args: any) => void): any | null;
145147

src/transports/websocket.ts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,7 @@ export class WebsocketTransport extends EventEmitter implements ITransport {
4646

4747
this.socket.addEventListener("message", this.handleMessage);
4848
this.socket.addEventListener("open", this.handleOpen);
49+
this.socket.addEventListener("error", this.handleError);
4950

5051
return true;
5152
}
@@ -79,6 +80,11 @@ export class WebsocketTransport extends EventEmitter implements ITransport {
7980
this.socket.send(bytes);
8081
}
8182

83+
@autobind
84+
protected handleError(event: Event) {
85+
this.emit("error", event);
86+
}
87+
8288
@autobind
8389
protected handleMessage(event: Event) {
8490
this.emit("message", event);

0 commit comments

Comments
 (0)