@Override public List<FilterParamDescriptor> buildFilterInitParms(Provider provider, ResourceDescriptor resource, List<FilterParamDescriptor> params) { // blindly add all the provider params as filter init params if (params == null) { params = new ArrayList<>(); } Map<String, String> providerParams = provider.getParams(); return createParamList(resource, params, providerParams); }
private boolean isHaEnabled(DeploymentContext context) { Provider provider = getProviderByRole(context, "ha"); if ( provider != null && provider.isEnabled() ) { Map<String, String> params = provider.getParams(); if ( params != null ) { if ( params.containsKey(getRole()) ) { return true; } } } return false; }
private static void addMissingDefaultProviders(Topology topology) { Collection<Provider> providers = topology.getProviders(); HashMap<String, String> providerMap = new HashMap<>(); for (Provider provider : providers) { providerMap.put(provider.getRole(), provider.getName()); } // first make sure that the required provider is available from the serviceloaders // for some tests the number of providers are limited to the classpath of the module // and exceptions will be thrown as topologies are deployed even though they will // work fine at actual server runtime. if (PROVIDER_CONTRIBUTOR_MAP.get("identity-assertion") != null) { // check for required providers and add the defaults if missing if (!providerMap.containsKey("identity-assertion")) { Provider idassertion = new Provider(); idassertion.setRole("identity-assertion"); idassertion.setName("Default"); idassertion.setEnabled(true); providers.add(idassertion); } } }
public void addProvider( Provider provider ) { providerList.add( provider ); String role = provider.getRole(); Map<String,Provider> nameMap = providerMap.get( role ); if( nameMap == null ) { nameMap = new HashMap<>(); providerMap.put( role, nameMap ); } nameMap.put( provider.getName(), provider ); }
@Override public void contributeFilter( DeploymentContext context, Provider provider, Service service, ResourceDescriptor resource, List<FilterParamDescriptor> params ) { String filterClassName = getFilterClassName( provider.getParams() ); FilterDescriptor filter = resource.addFilter(); filter.name( getName() ); filter.role( provider.getRole() ); filter.impl( filterClassName ); filter.params( getFilterInitParams( filter, provider.getParams(), params ) ); }
private static org.apache.knox.gateway.topology.Provider getProvider(Provider provider) { org.apache.knox.gateway.topology.Provider deploymentProvider = new org.apache.knox.gateway.topology.Provider(); deploymentProvider.setName(provider.getName()); deploymentProvider.setEnabled(provider.isEnabled()); deploymentProvider.setRole(provider.getRole()); for ( Param param : provider.getParams() ) { deploymentProvider.addParam( getParam(param) ); } return deploymentProvider; }
private static Provider getProvider( org.apache.knox.gateway.topology.Provider provider) { Provider providerResource = new Provider(); providerResource.setName(provider.getName()); providerResource.setEnabled(provider.isEnabled()); providerResource.setRole(provider.getRole()); Collection<org.apache.knox.gateway.topology.Param> paramsList = provider.getParamsList(); if (paramsList != null && !paramsList.isEmpty()) { for ( org.apache.knox.gateway.topology.Param param : paramsList ) { providerResource.getParams().add(getParam(param)); } } return providerResource; }
private static void contributeProviders( DeploymentContext context, Topology topology, Map<String, List<ProviderDeploymentContributor>> providers ) { for( Provider provider : topology.getProviders() ) { ProviderDeploymentContributor contributor = getProviderContributor( providers, provider.getRole(), provider.getName() ); if( contributor != null && provider.isEnabled() ) { try { log.contributeProvider( provider.getName(), provider.getRole() ); contributor.contributeProvider( context, provider ); } catch( Exception e ) { // Maybe it makes sense to throw exception log.failedToContributeProvider( provider.getName(), provider.getRole(), e ); throw new DeploymentException("Failed to contribute provider.", e); } } } }
@Override public void contributeProvider( DeploymentContext context, Provider provider ) { if( provider.isEnabled() ) { // UrlRewriteRulesDescriptor rules = context.getDescriptor( REWRITE_ROLE_NAME ); // if( rules != null ) { // HostmapFunctionDescriptor func = rules.addFunction( HostmapFunctionDescriptor.FUNCTION_NAME ); // if( func != null ) { // Asset asset = createAsset( provider ); // context.getWebArchive().addAsWebInfResource( // asset, HostmapFunctionProcessor.DESCRIPTOR_DEFAULT_FILE_NAME ); // func.config( HostmapFunctionProcessor.DESCRIPTOR_DEFAULT_LOCATION ); // } // } } }
protected Provider getProviderByRole(DeploymentContext context, String role) { Provider p = null; Collection<Provider> providers = context.getTopology().getProviders(); for (Provider provider : providers) { if (role.equals(provider.getRole())) { p = provider; break; } } return p; }
@Override public void contributeFilter( DeploymentContext context, Provider provider, Service service, ResourceDescriptor resource, List<FilterParamDescriptor> params ) { String filterClassName = getFilterClassName( provider.getParams() ); if( filterClassName != null ) { FilterDescriptor filter = resource.addFilter(); filter.name( getName() ); filter.role( provider.getRole() ); filter.impl( filterClassName ); filter.params( getFilterInitParams( filter, provider.getParams(), params ) ); } }
@Override public void contributeFilter( Service service, ResourceDescriptor resource, String role, String name, List<FilterParamDescriptor> params ) { ProviderDeploymentContributor contributor = DeploymentFactory.getProviderContributor( providers, role, name ); Provider provider = getTopology().getProvider( role, name ); if( provider == null ) { provider = new Provider(); provider.setRole( role ); provider.setName( name ); provider.setEnabled( true ); } if( provider.isEnabled() ) { contributor.contributeFilter( this, provider, service, resource, params ); } }
private static void contributeProviders( DeploymentContext context, Topology topology, Map<String, List<ProviderDeploymentContributor>> providers ) { for( Provider provider : topology.getProviders() ) { ProviderDeploymentContributor contributor = getProviderContributor( providers, provider.getRole(), provider.getName() ); if( contributor != null && provider.isEnabled() ) { try { log.contributeProvider( provider.getName(), provider.getRole() ); contributor.contributeProvider( context, provider ); } catch( Exception e ) { // Maybe it makes sense to throw exception log.failedToContributeProvider( provider.getName(), provider.getRole(), e ); throw new DeploymentException("Failed to contribute provider.", e); } } } }
public void addProvider( Provider provider ) { providerList.add( provider ); String role = provider.getRole(); Map<String,Provider> nameMap = providerMap.get( role ); if( nameMap == null ) { nameMap = new HashMap<>(); providerMap.put( role, nameMap ); } nameMap.put( provider.getName(), provider ); }
@Override public void contributeProvider( DeploymentContext context, Provider provider ) { if( provider.isEnabled() ) { // UrlRewriteRulesDescriptor rules = context.getDescriptor( REWRITE_ROLE_NAME ); // if( rules != null ) { // HostmapFunctionDescriptor func = rules.addFunction( HostmapFunctionDescriptor.FUNCTION_NAME ); // if( func != null ) { // Asset asset = createAsset( provider ); // context.getWebArchive().addAsWebInfResource( // asset, HostmapFunctionProcessor.DESCRIPTOR_DEFAULT_FILE_NAME ); // func.config( HostmapFunctionProcessor.DESCRIPTOR_DEFAULT_LOCATION ); // } // } } }
protected Provider getProviderByRole(DeploymentContext context, String role) { Provider p = null; Collection<Provider> providers = context.getTopology().getProviders(); for (Provider provider : providers) { if (role.equals(provider.getRole())) { p = provider; break; } } return p; }
@Override public List<FilterParamDescriptor> buildFilterInitParms(Provider provider, ResourceDescriptor resource, List<FilterParamDescriptor> params) { // blindly add all the provider params as filter init params if (params == null) { params = new ArrayList<>(); } Map<String, String> providerParams = provider.getParams(); return createParamList(resource, params, providerParams); }
private boolean isHaEnabled(DeploymentContext context) { Provider provider = getProviderByRole(context, "ha"); if ( provider != null && provider.isEnabled() ) { Map<String, String> params = provider.getParams(); if ( params != null ) { if ( params.containsKey(getRole()) ) { return true; } } } return false; }
@Override public void contributeFilter( Service service, ResourceDescriptor resource, String role, String name, List<FilterParamDescriptor> params ) { ProviderDeploymentContributor contributor = DeploymentFactory.getProviderContributor( providers, role, name ); Provider provider = getTopology().getProvider( role, name ); if( provider == null ) { provider = new Provider(); provider.setRole( role ); provider.setName( name ); provider.setEnabled( true ); } if( provider.isEnabled() ) { contributor.contributeFilter( this, provider, service, resource, params ); } }
private static void addMissingDefaultProviders(Topology topology) { Collection<Provider> providers = topology.getProviders(); HashMap<String, String> providerMap = new HashMap<>(); for (Provider provider : providers) { providerMap.put(provider.getRole(), provider.getName()); } // first make sure that the required provider is available from the serviceloaders // for some tests the number of providers are limited to the classpath of the module // and exceptions will be thrown as topologies are deployed even though they will // work fine at actual server runtime. if (PROVIDER_CONTRIBUTOR_MAP.get("identity-assertion") != null) { // check for required providers and add the defaults if missing if (!providerMap.containsKey("identity-assertion")) { Provider idassertion = new Provider(); idassertion.setRole("identity-assertion"); idassertion.setName("Default"); idassertion.setEnabled(true); providers.add(idassertion); } } }