@@ -41,8 +41,12 @@ class WebSocketChannel implements Channel {
41
41
42
42
/** Forcibly close the channel */
43
43
close ( ) {
44
- debug ( 'closing websocket channel' )
45
- this . ws . close ( )
44
+ try {
45
+ debug ( 'closing websocket channel' )
46
+ this . ws . close ( )
47
+ } catch ( err ) {
48
+ console . error ( 'Error in WebSocketChannel.close' , err )
49
+ }
46
50
}
47
51
48
52
send ( msg : string ) {
@@ -55,7 +59,7 @@ class WebSocketChannel implements Channel {
55
59
try {
56
60
return this . ws . send ( JSON . stringify ( withUser ) )
57
61
} catch ( err ) {
58
- console . error ( 'Error from WebSocketChannel: ' , err )
62
+ console . error ( 'Error in WebSocketChannel.send ' , err )
59
63
}
60
64
}
61
65
@@ -65,34 +69,42 @@ class WebSocketChannel implements Channel {
65
69
66
70
// eslint-disable-next-line @typescript-eslint/no-explicit-any
67
71
removeEventListener ( eventType : string , handler : any ) {
68
- this . ws . removeEventListener ( eventType , handler )
72
+ try {
73
+ this . ws . removeEventListener ( eventType , handler )
74
+ } catch ( err ) {
75
+ console . error ( 'Error in WebSocketChannel.removeEventListener' , err )
76
+ }
69
77
}
70
78
71
79
// eslint-disable-next-line @typescript-eslint/no-explicit-any
72
80
on ( eventType : string , handler : any ) {
73
- switch ( eventType ) {
74
- // new Kui browser client
75
- case 'open' :
76
- debug ( 'WebSocketChannel: installing onopen handler' )
77
- this . ws . addEventListener ( eventType , handler )
78
- break
79
-
80
- // message from Kui browser client
81
- case 'message' :
82
- debug ( 'WebSocketChannel: installing onmessage handler' )
83
- // this.onmessage = message => handler(message.data)
84
- this . ws . addEventListener ( eventType , handler )
85
- break
86
-
87
- case 'error' :
88
- debug ( 'WebSocketChannel: installing onerror handler' )
89
- this . ws . addEventListener ( eventType , handler )
90
- break
91
-
92
- case 'close' :
93
- debug ( 'WebSocketChannel: installing onclose handler' )
94
- this . ws . addEventListener ( eventType , handler )
95
- break
81
+ try {
82
+ switch ( eventType ) {
83
+ // new Kui browser client
84
+ case 'open' :
85
+ debug ( 'WebSocketChannel: installing onopen handler' )
86
+ this . ws . addEventListener ( eventType , handler )
87
+ break
88
+
89
+ // message from Kui browser client
90
+ case 'message' :
91
+ debug ( 'WebSocketChannel: installing onmessage handler' )
92
+ // this.onmessage = message => handler(message.data)
93
+ this . ws . addEventListener ( eventType , handler )
94
+ break
95
+
96
+ case 'error' :
97
+ debug ( 'WebSocketChannel: installing onerror handler' )
98
+ this . ws . addEventListener ( eventType , handler )
99
+ break
100
+
101
+ case 'close' :
102
+ debug ( 'WebSocketChannel: installing onclose handler' )
103
+ this . ws . addEventListener ( eventType , handler )
104
+ break
105
+ }
106
+ } catch ( err ) {
107
+ console . error ( 'Error in WebSocketChannel.on' , err )
96
108
}
97
109
}
98
110
}
0 commit comments