@@ -106,6 +106,7 @@ export class RedisAdapter extends Adapter {
106
106
private requests : Map < string , Request > = new Map ( ) ;
107
107
private ackRequests : Map < string , AckRequest > = new Map ( ) ;
108
108
private redisListeners : Map < string , Function > = new Map ( ) ;
109
+ private readonly friendlyErrorHandler : ( ) => void ;
109
110
110
111
/**
111
112
* Adapter constructor.
@@ -183,16 +184,13 @@ export class RedisAdapter extends Adapter {
183
184
) ;
184
185
}
185
186
186
- const registerFriendlyErrorHandler = ( redisClient ) => {
187
- redisClient . on ( "error" , ( ) => {
188
- if ( redisClient . listenerCount ( "error" ) === 1 ) {
189
- console . warn ( "missing 'error' handler on this Redis client" ) ;
190
- }
191
- } ) ;
187
+ this . friendlyErrorHandler = function ( ) {
188
+ if ( this . listenerCount ( "error" ) === 1 ) {
189
+ console . warn ( "missing 'error' handler on this Redis client" ) ;
190
+ }
192
191
} ;
193
-
194
- registerFriendlyErrorHandler ( this . pubClient ) ;
195
- registerFriendlyErrorHandler ( this . subClient ) ;
192
+ this . pubClient . on ( "error" , this . friendlyErrorHandler ) ;
193
+ this . subClient . on ( "error" , this . friendlyErrorHandler ) ;
196
194
}
197
195
198
196
/**
@@ -981,6 +979,9 @@ export class RedisAdapter extends Adapter {
981
979
this . redisListeners . get ( "messageBuffer" )
982
980
) ;
983
981
}
982
+
983
+ this . pubClient . off ( "error" , this . friendlyErrorHandler ) ;
984
+ this . subClient . off ( "error" , this . friendlyErrorHandler ) ;
984
985
}
985
986
}
986
987
0 commit comments