@@ -46,8 +46,6 @@ import { createHttpFilter, HttpFilterConfig, parseOverrideFilterConfig, parseTop
46
46
import { EXPERIMENTAL_FAULT_INJECTION } from './environment' ;
47
47
import Filter = experimental . Filter ;
48
48
import FilterFactory = experimental . FilterFactory ;
49
- import BaseFilter = experimental . BaseFilter ;
50
- import CallStream = experimental . CallStream ;
51
49
52
50
const TRACER_NAME = 'xds_resolver' ;
53
51
@@ -209,25 +207,6 @@ function protoDurationToDuration(duration: Duration__Output): Duration {
209
207
}
210
208
}
211
209
212
- class NoRouterFilter extends BaseFilter implements Filter {
213
- constructor ( private call : CallStream ) {
214
- super ( ) ;
215
- }
216
-
217
- sendMetadata ( metadata : Promise < Metadata > ) : Promise < Metadata > {
218
- this . call . cancelWithStatus ( status . UNAVAILABLE , 'no xDS HTTP router filter configured' ) ;
219
- return Promise . reject < Metadata > ( new Error ( 'no xDS HTTP router filter configured' ) ) ;
220
- }
221
- }
222
-
223
- class NoRouterFilterFactory implements FilterFactory < NoRouterFilter > {
224
- createFilter ( callStream : CallStream ) : NoRouterFilter {
225
- return new NoRouterFilter ( callStream ) ;
226
- }
227
- }
228
-
229
- const ROUTER_FILTER_URL = 'type.googleapis.com/envoy.extensions.filters.http.router.v3.Router' ;
230
-
231
210
class XdsResolver implements Resolver {
232
211
private hasReportedSuccess = false ;
233
212
@@ -247,7 +226,6 @@ class XdsResolver implements Resolver {
247
226
private latestDefaultTimeout : Duration | undefined = undefined ;
248
227
249
228
private ldsHttpFilterConfigs : { name : string , config : HttpFilterConfig } [ ] = [ ] ;
250
- private hasRouterFilter = false ;
251
229
252
230
constructor (
253
231
private target : GrpcUri ,
@@ -265,12 +243,7 @@ class XdsResolver implements Resolver {
265
243
}
266
244
if ( EXPERIMENTAL_FAULT_INJECTION ) {
267
245
this . ldsHttpFilterConfigs = [ ] ;
268
- this . hasRouterFilter = false ;
269
246
for ( const filter of httpConnectionManager . http_filters ) {
270
- if ( filter . typed_config ?. type_url === ROUTER_FILTER_URL ) {
271
- this . hasRouterFilter = true ;
272
- break ;
273
- }
274
247
// typed_config must be set here, or validation would have failed
275
248
const filterConfig = parseTopLevelFilterConfig ( filter . typed_config ! ) ;
276
249
if ( filterConfig ) {
@@ -421,9 +394,6 @@ class XdsResolver implements Resolver {
421
394
}
422
395
}
423
396
}
424
- if ( ! this . hasRouterFilter ) {
425
- extraFilterFactories . push ( new NoRouterFilterFactory ( ) ) ;
426
- }
427
397
}
428
398
routeAction = new SingleClusterRouteAction ( cluster , timeout , extraFilterFactories ) ;
429
399
break ;
@@ -464,9 +434,6 @@ class XdsResolver implements Resolver {
464
434
}
465
435
}
466
436
}
467
- if ( ! this . hasRouterFilter ) {
468
- extraFilterFactories . push ( new NoRouterFilterFactory ( ) ) ;
469
- }
470
437
}
471
438
weightedClusters . push ( { name : clusterWeight . name , weight : clusterWeight . weight ?. value ?? 0 , dynamicFilterFactories : extraFilterFactories } ) ;
472
439
}
0 commit comments