Skip to content

Commit 64b8fb7

Browse files
committed
Merge remote-tracking branch 'upstream/forward-dispatch'
* upstream/forward-dispatch: fix: forward dispatch return value Refactor example documentation structure and add CacheableLookup example (nodejs#3363)
2 parents 1aa10e3 + 766c3b8 commit 64b8fb7

File tree

1 file changed

+20
-3
lines changed

1 file changed

+20
-3
lines changed

lib/dispatcher/dispatcher.js

+20-3
Original file line numberDiff line numberDiff line change
@@ -39,18 +39,35 @@ class Dispatcher extends EventEmitter {
3939
}
4040
}
4141

42+
const kOnDrain = Symbol('onDrain')
43+
const kOnConnect = Symbol('onConnect')
44+
const kOnDisconnect = Symbol('onDisconnect')
45+
const kOnConnectionError = Symbol('onConnectionError')
46+
4247
class ComposedDispatcher extends Dispatcher {
43-
#dispatcher = null
44-
#dispatch = null
48+
#dispatcher
49+
#dispatch
4550

4651
constructor (dispatcher, dispatch) {
4752
super()
53+
4854
this.#dispatcher = dispatcher
4955
this.#dispatch = dispatch
56+
57+
this[kOnDrain] = (...args) => this.emit('drain', ...args)
58+
this[kOnConnect] = (...args) => this.emit('connect', ...args)
59+
this[kOnDisconnect] = (...args) => this.emit('disconnect', ...args)
60+
this[kOnConnectionError] = (...args) => this.emit('connectionError', ...args)
61+
62+
this.#dispatcher
63+
.on('drain', this[kOnDrain])
64+
.on('connect', this[kOnConnect])
65+
.on('disconnect', this[kOnDisconnect])
66+
.on('connectionError', this[kOnConnectionError])
5067
}
5168

5269
dispatch (...args) {
53-
this.#dispatch(...args)
70+
return this.#dispatch(...args)
5471
}
5572

5673
close (...args) {

0 commit comments

Comments
 (0)