@Override public void contributeFilter( DeploymentContext context, Provider provider, Service service, ResourceDescriptor resource, List<FilterParamDescriptor> params ) { FilterDescriptor filter = resource.addFilter().name( getName() ).role( getRole() ).impl( GatewayDispatchFilter.class ); filter.param().name(DISPATCH_IMPL_PARAM).value(DefaultDispatch.class.getName()); for ( Map.Entry<String,String> serviceParam : service.getParams().entrySet() ) { filter.param().name( serviceParam.getKey() ).value( serviceParam.getValue() ); } if( context.getGatewayConfig().isHadoopKerberosSecured() ) { filter.param().name("kerberos").value("true"); } }
@Override public void contributeFilter( DeploymentContext context, Provider provider, Service service, ResourceDescriptor resource, List<FilterParamDescriptor> params ) { FilterDescriptor filterDescriptor = resource.addFilter(); filterDescriptor.role( getRole() ).name( getName() ).impl( UrlRewriteServletFilter.class ).params( params ); filterDescriptor.param().name(PARAM_SERVICE_ROLE).value(service.getRole()); }
@Override public void contributeFilter( DeploymentContext context, Provider provider, Service service, ResourceDescriptor resource, List<FilterParamDescriptor> params ) { FilterDescriptor filterDescriptor = resource.addFilter(); filterDescriptor.role( getRole() ).name( getName() ).impl( UrlRewriteServletFilter.class ).params( params ); filterDescriptor.param().name(PARAM_SERVICE_ROLE).value(service.getRole()); }
@Override public void contributeFilter( DeploymentContext context, Provider provider, Service service, ResourceDescriptor resource, List<FilterParamDescriptor> params ) { FilterDescriptor filter = resource.addFilter().name( getName() ).role( getRole() ).impl( GatewayDispatchFilter.class ); filter.param().name(DISPATCH_IMPL_PARAM).value(DefaultDispatch.class.getName()); for ( Map.Entry<String,String> serviceParam : service.getParams().entrySet() ) { filter.param().name( serviceParam.getKey() ).value( serviceParam.getValue() ); } if( context.getGatewayConfig().isHadoopKerberosSecured() ) { filter.param().name("kerberos").value("true"); } }
private FilterDescriptor addDispatchFilterForClass(DeploymentContext context, Service service, ResourceDescriptor resource, String dispatchClass, String httpClientFactory, boolean useTwoWaySsl) { FilterDescriptor filter = resource.addFilter().name(getName()).role(DISPATCH_ROLE).impl(GatewayDispatchFilter.class); filter.param().name(DISPATCH_IMPL_PARAM).value(dispatchClass); if (httpClientFactory != null) { filter.param().name(HTTP_CLIENT_FACTORY_PARAM).value(httpClientFactory); } // let's take the value of useTwoWaySsl which is derived from the service definition // then allow it to be overridden by service params from the topology filter.param().name("useTwoWaySsl").value(Boolean.toString(useTwoWaySsl)); for ( Map.Entry<String, String> serviceParam : service.getParams().entrySet() ) { filter.param().name(serviceParam.getKey()).value(serviceParam.getValue()); } if ( context.getGatewayConfig().isHadoopKerberosSecured() ) { filter.param().name("kerberos").value("true"); } else { //TODO: [sumit] Get rid of special case. Add config/param capabilities to service definitions? //special case for hive filter.param().name("basicAuthPreemptive").value("true"); } return filter; }
private FilterDescriptor addDispatchFilterForClass(DeploymentContext context, Service service, ResourceDescriptor resource, String dispatchClass, String httpClientFactory, boolean useTwoWaySsl, Map<String, String> dispatchParams) { FilterDescriptor filter = resource.addFilter().name(getName()).role(DISPATCH_ROLE).impl(GatewayDispatchFilter.class); filter.param().name(DISPATCH_IMPL_PARAM).value(dispatchClass); if (httpClientFactory != null) { filter.param().name(HTTP_CLIENT_FACTORY_PARAM).value(httpClientFactory); } if(dispatchParams != null) { for ( Map.Entry<String, String> dispatchParam : dispatchParams.entrySet() ) { filter.param().name(dispatchParam.getKey()).value(dispatchParam.getValue()); } } // let's take the value of useTwoWaySsl which is derived from the service definition // then allow it to be overridden by service params from the topology filter.param().name("useTwoWaySsl").value(Boolean.toString(useTwoWaySsl)); for ( Map.Entry<String, String> serviceParam : service.getParams().entrySet() ) { filter.param().name(serviceParam.getKey()).value(serviceParam.getValue()); } if ( context.getGatewayConfig().isHadoopKerberosSecured() ) { filter.param().name("kerberos").value("true"); } else { //TODO: [sumit] Get rid of special case. Add config/param capabilities to service definitions? //special case for hive filter.param().name("basicAuthPreemptive").value("true"); } return filter; }
private void addDefaultHaDispatchFilter(DeploymentContext context, Service service, ResourceDescriptor resource, Map<String, String> dispatchParams) { FilterDescriptor filter = addDispatchFilterForClass(context, service, resource, DEFAULT_HA_DISPATCH_CLASS, null, dispatchParams); filter.param().name(SERVICE_ROLE_PARAM).value(service.getRole()); }
private void addDefaultHaDispatchFilter(DeploymentContext context, Service service, ResourceDescriptor resource) { FilterDescriptor filter = addDispatchFilterForClass(context, service, resource, DEFAULT_HA_DISPATCH_CLASS, null); filter.param().name(SERVICE_ROLE_PARAM).value(service.getRole()); }
@Override public void contributeFilter( DeploymentContext context, Provider provider, Service service, ResourceDescriptor resource, List<FilterParamDescriptor> params ) { FilterDescriptor filter = resource.addFilter().name( getName() ).role( getRole() ).impl( FILTER_CLASS_NAME ); if( params != null ) { for( FilterParamDescriptor param : params ) { filter.param().name( param.name() ).value( param.value() ); } } }
@Override public void contributeFilter( DeploymentContext context, Provider provider, Service service, ResourceDescriptor resource, List<FilterParamDescriptor> params ) { FilterDescriptor filter = resource.addFilter().name( getName() ).role( getRole() ).impl( FILTER_CLASS_NAME ); if( params != null ) { for( FilterParamDescriptor param : params ) { filter.param().name( param.name() ).value( param.value() ); } } }
private void contributeResource(DeploymentContext context, Service service, Route binding, Map<String, String> filterParams) throws URISyntaxException { List<FilterParamDescriptor> params = new ArrayList<>(); ResourceDescriptor resource = context.getGatewayDescriptor().addResource(); resource.role(service.getRole()); resource.pattern(binding.getPath()); //add x-forwarded filter if enabled in config if (context.getGatewayConfig().isXForwardedEnabled()) { resource.addFilter().name(XFORWARDED_FILTER_NAME).role(XFORWARDED_FILTER_ROLE).impl(XForwardedHeaderFilter.class); } if (context.getGatewayConfig().isCookieScopingToPathEnabled()) { FilterDescriptor filter = resource.addFilter().name(COOKIE_SCOPING_FILTER_NAME).role(COOKIE_SCOPING_FILTER_ROLE).impl(CookieScopeServletFilter.class); filter.param().name(GatewayConfigImpl.HTTP_PATH).value(context.getGatewayConfig().getGatewayPath()); filter.param().name("topologyName").value(context.getTopology().getName()); } List<Policy> policyBindings = binding.getPolicies(); if ( policyBindings == null ) { policyBindings = serviceDefinition.getPolicies(); } if ( policyBindings == null ) { //add default set addDefaultPolicies(context, service, filterParams, params, resource); } else { addPolicies(context, service, filterParams, params, resource, policyBindings); } addDispatchFilter(context, service, resource, binding); }
private void contributeResource( DeploymentContext context, Service service, Route binding, Map<String, String> filterParams) throws URISyntaxException { List<FilterParamDescriptor> params = new ArrayList<>(); ResourceDescriptor resource = context.getGatewayDescriptor().addResource(); resource.role(service.getRole()); resource.pattern(binding.getPath()); //add x-forwarded filter if enabled in config if (context.getGatewayConfig().isXForwardedEnabled()) { resource.addFilter().name(XFORWARDED_FILTER_NAME).role(XFORWARDED_FILTER_ROLE).impl(XForwardedHeaderFilter.class); } if (context.getGatewayConfig().isCookieScopingToPathEnabled()) { FilterDescriptor filter = resource.addFilter().name(COOKIE_SCOPING_FILTER_NAME).role(COOKIE_SCOPING_FILTER_ROLE).impl(CookieScopeServletFilter.class); filter.param().name(GatewayConfigImpl.HTTP_PATH).value(context.getGatewayConfig().getGatewayPath()); } List<Policy> policyBindings = binding.getPolicies(); if ( policyBindings == null ) { policyBindings = serviceDefinition.getPolicies(); } if ( policyBindings == null ) { //add default set addDefaultPolicies(context, service, filterParams, params, resource); } else { addPolicies(context, service, filterParams, params, resource, policyBindings); } }
private void contributeResource( DeploymentContext context, Service service, Route binding, Map<String, String> filterParams) throws URISyntaxException { List<FilterParamDescriptor> params = new ArrayList<>(); ResourceDescriptor resource = context.getGatewayDescriptor().addResource(); resource.role(service.getRole()); resource.pattern(binding.getPath()); //add x-forwarded filter if enabled in config if (context.getGatewayConfig().isXForwardedEnabled()) { resource.addFilter().name(XFORWARDED_FILTER_NAME).role(XFORWARDED_FILTER_ROLE).impl(XForwardedHeaderFilter.class); } if (context.getGatewayConfig().isCookieScopingToPathEnabled()) { FilterDescriptor filter = resource.addFilter().name(COOKIE_SCOPING_FILTER_NAME).role(COOKIE_SCOPING_FILTER_ROLE).impl(CookieScopeServletFilter.class); filter.param().name(GatewayConfigImpl.HTTP_PATH).value(context.getGatewayConfig().getGatewayPath()); } List<Policy> policyBindings = binding.getPolicies(); if ( policyBindings == null ) { policyBindings = serviceDefinition.getPolicies(); } if ( policyBindings == null ) { //add default set addDefaultPolicies(context, service, filterParams, params, resource); } else { addPolicies(context, service, filterParams, params, resource, policyBindings); } }
private void contributeResource(DeploymentContext context, Service service, Route binding, Map<String, String> filterParams) throws URISyntaxException { List<FilterParamDescriptor> params = new ArrayList<>(); ResourceDescriptor resource = context.getGatewayDescriptor().addResource(); resource.role(service.getRole()); resource.pattern(binding.getPath()); //add x-forwarded filter if enabled in config if (context.getGatewayConfig().isXForwardedEnabled()) { resource.addFilter().name(XFORWARDED_FILTER_NAME).role(XFORWARDED_FILTER_ROLE).impl(XForwardedHeaderFilter.class); } if (context.getGatewayConfig().isCookieScopingToPathEnabled()) { FilterDescriptor filter = resource.addFilter().name(COOKIE_SCOPING_FILTER_NAME).role(COOKIE_SCOPING_FILTER_ROLE).impl(CookieScopeServletFilter.class); filter.param().name(GatewayConfigImpl.HTTP_PATH).value(context.getGatewayConfig().getGatewayPath()); } List<Policy> policyBindings = binding.getPolicies(); if ( policyBindings == null ) { policyBindings = serviceDefinition.getPolicies(); } if ( policyBindings == null ) { //add default set addDefaultPolicies(context, service, filterParams, params, resource); } else { addPolicies(context, service, filterParams, params, resource, policyBindings); } addDispatchFilter(context, service, resource, binding); }