@@ -81,7 +81,10 @@ export class BoardDiscovery
81
81
stop ( ) : Promise < void > {
82
82
this . logger . info ( '>>> Stopping boards watcher...' ) ;
83
83
return new Promise < void > ( ( resolve , reject ) => {
84
- const timeout = this . timeout ( BoardDiscovery . StopWatchTimeout , reject ) ;
84
+ const timeout = this . createTimeout (
85
+ BoardDiscovery . StopWatchTimeout ,
86
+ reject
87
+ ) ;
85
88
const toDispose = new DisposableCollection ( ) ;
86
89
toDispose . pushAll ( [
87
90
timeout ,
@@ -107,7 +110,7 @@ export class BoardDiscovery
107
110
} ) ;
108
111
}
109
112
110
- private timeout (
113
+ private createTimeout (
111
114
after : number ,
112
115
onTimeout : ( error : Error ) => void
113
116
) : Disposable {
@@ -118,37 +121,22 @@ export class BoardDiscovery
118
121
return Disposable . create ( ( ) => clearTimeout ( timer ) ) ;
119
122
}
120
123
121
- private async write (
124
+ private async requestStartWatch (
122
125
req : BoardListWatchRequest ,
123
126
duplex : Duplex
124
127
) : Promise < void > {
125
128
return new Promise < void > ( ( resolve , reject ) => {
126
- this . logger . info ( `>>> Writing ${ this . toJson ( req ) } to the stream...` ) ;
127
129
if (
128
130
! duplex . write ( req , ( err : Error | undefined ) => {
129
131
if ( err ) {
130
- this . logger . error (
131
- `<<< Error ocurred while writing to the stream.` ,
132
- err
133
- ) ;
134
132
reject ( err ) ;
135
133
return ;
136
134
}
137
135
} )
138
136
) {
139
- duplex . once ( 'drain' , ( ) => {
140
- this . logger . info (
141
- `<<< Board list watch request has been successfully written to the stream after the handling backpressure.`
142
- ) ;
143
- resolve ( ) ;
144
- } ) ;
137
+ duplex . once ( 'drain' , resolve ) ;
145
138
} else {
146
- process . nextTick ( ( ) => {
147
- this . logger . info (
148
- `<<< Board list watch request has been successfully written to the stream.`
149
- ) ;
150
- resolve ( ) ;
151
- } ) ;
139
+ process . nextTick ( resolve ) ;
152
140
}
153
141
} ) ;
154
142
}
@@ -302,7 +290,7 @@ export class BoardDiscovery
302
290
this . notificationService . notifyAttachedBoardsDidChange ( event ) ;
303
291
}
304
292
} ) ;
305
- await this . write (
293
+ await this . requestStartWatch (
306
294
new BoardListWatchRequest ( ) . setInstance ( instance ) ,
307
295
wrapper . stream
308
296
) ;
0 commit comments