Class AbstractProfileConfiguration
- java.lang.Object
-
- net.shibboleth.utilities.java.support.component.AbstractInitializableComponent
-
- net.shibboleth.utilities.java.support.component.AbstractIdentifiedInitializableComponent
-
- net.shibboleth.utilities.java.support.component.AbstractIdentifiableInitializableComponent
-
- net.shibboleth.idp.profile.config.AbstractProfileConfiguration
-
- All Implemented Interfaces:
ProfileConfiguration,net.shibboleth.utilities.java.support.component.Component,net.shibboleth.utilities.java.support.component.DestructableComponent,net.shibboleth.utilities.java.support.component.IdentifiableComponent,net.shibboleth.utilities.java.support.component.IdentifiedComponent,net.shibboleth.utilities.java.support.component.InitializableComponent
- Direct Known Subclasses:
AbstractConditionalProfileConfiguration
public abstract class AbstractProfileConfiguration extends net.shibboleth.utilities.java.support.component.AbstractIdentifiableInitializableComponent implements ProfileConfiguration
Base class forProfileConfigurationimplementations.
-
-
Field Summary
Fields Modifier and Type Field Description static IntegerDEFAULT_DISALLOWED_FEATURESDefault value for disallowedFeatures property.private Function<org.opensaml.profile.context.ProfileRequestContext,Integer>disallowedFeaturesLookupStrategyLookup function to return a bitmask of request features to disallow.private Function<org.opensaml.profile.context.ProfileRequestContext,List<String>>inboundFlowsLookupStrategyLookup function to supply inboundFlows property.private org.slf4j.LoggerlogClass logger.private Function<org.opensaml.profile.context.ProfileRequestContext,List<String>>outboundFlowsLookupStrategyLookup function to supply #outboundFlows property.private Function<org.opensaml.profile.context.ProfileRequestContext,SecurityConfiguration>securityConfigurationLookupStrategyLookup function to supply securityConfiguration property.
-
Constructor Summary
Constructors Constructor Description AbstractProfileConfiguration(String id)Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanequals(Object obj)intgetDisallowedFeatures(org.opensaml.profile.context.ProfileRequestContext profileRequestContext)Get a bitmask of disallowed features to block.List<String>getInboundInterceptorFlows(org.opensaml.profile.context.ProfileRequestContext profileRequestContext)Get an ordered list of interceptor flows to run for this profile after an inbound message is decoded.List<String>getOutboundInterceptorFlows(org.opensaml.profile.context.ProfileRequestContext profileRequestContext)Get an ordered list of interceptor flows to run for this profile before a final outbound message is generated.SecurityConfigurationgetSecurityConfiguration(org.opensaml.profile.context.ProfileRequestContext profileRequestContext)Get theSecurityConfigurationto use with this profile.inthashCode()booleanisFeatureDisallowed(org.opensaml.profile.context.ProfileRequestContext profileRequestContext, int feature)Return true iff the input feature constant is disallowed.voidsetDisallowedFeatures(int mask)Set a bitmask of disallowed features to block.voidsetDisallowedFeaturesLookupStrategy(Function<org.opensaml.profile.context.ProfileRequestContext,Integer> strategy)Set a lookup strategy for the bitmask of disallowed features to block.voidsetInboundFlowsLookupStrategy(Function<org.opensaml.profile.context.ProfileRequestContext,List<String>> strategy)Set a lookup strategy for the inbound interceptor flows to enable.voidsetInboundInterceptorFlows(Collection<String> flows)Set the ordered collection of inbound interceptor flows to enable.voidsetOutboundFlowsLookupStrategy(Function<org.opensaml.profile.context.ProfileRequestContext,List<String>> strategy)Set a lookup strategy for the outbound interceptor flows to enable.voidsetOutboundInterceptorFlows(Collection<String> flows)Set the ordered collection of outbound interceptor flows to enable.voidsetSecurityConfiguration(SecurityConfiguration configuration)Sets the security configuration for this profile.voidsetSecurityConfigurationLookupStrategy(Function<org.opensaml.profile.context.ProfileRequestContext,SecurityConfiguration> strategy)Set a lookup strategy for the security configuration.-
Methods inherited from class net.shibboleth.utilities.java.support.component.AbstractIdentifiableInitializableComponent
setId
-
Methods inherited from class net.shibboleth.utilities.java.support.component.AbstractIdentifiedInitializableComponent
doInitialize, getId
-
Methods inherited from class net.shibboleth.utilities.java.support.component.AbstractInitializableComponent
destroy, doDestroy, initialize, isDestroyed, isInitialized
-
-
-
-
Field Detail
-
DEFAULT_DISALLOWED_FEATURES
@Nonnull public static final Integer DEFAULT_DISALLOWED_FEATURES
Default value for disallowedFeatures property.
-
log
@Nonnull private final org.slf4j.Logger log
Class logger.
-
inboundFlowsLookupStrategy
@Nonnull private Function<org.opensaml.profile.context.ProfileRequestContext,List<String>> inboundFlowsLookupStrategy
Lookup function to supply inboundFlows property.
-
outboundFlowsLookupStrategy
@Nonnull private Function<org.opensaml.profile.context.ProfileRequestContext,List<String>> outboundFlowsLookupStrategy
Lookup function to supply #outboundFlows property.
-
securityConfigurationLookupStrategy
@Nonnull private Function<org.opensaml.profile.context.ProfileRequestContext,SecurityConfiguration> securityConfigurationLookupStrategy
Lookup function to supply securityConfiguration property.
-
-
Constructor Detail
-
AbstractProfileConfiguration
public AbstractProfileConfiguration(@Nonnull @NotEmpty @ParameterName(name="id") String id)Constructor.- Parameters:
id- ID of the communication profile, never null or empty
-
-
Method Detail
-
getSecurityConfiguration
@Nullable public SecurityConfiguration getSecurityConfiguration(@Nullable org.opensaml.profile.context.ProfileRequestContext profileRequestContext)
Get theSecurityConfigurationto use with this profile.- Specified by:
getSecurityConfigurationin interfaceProfileConfiguration- Parameters:
profileRequestContext- current profile request context- Returns:
- security configuration to use with this profile
-
setSecurityConfiguration
public void setSecurityConfiguration(@Nullable SecurityConfiguration configuration)Sets the security configuration for this profile.- Parameters:
configuration- security configuration for this profile
-
setSecurityConfigurationLookupStrategy
public void setSecurityConfigurationLookupStrategy(@Nonnull Function<org.opensaml.profile.context.ProfileRequestContext,SecurityConfiguration> strategy)Set a lookup strategy for the security configuration.- Parameters:
strategy- lookup strategy- Since:
- 3.3.0
-
getInboundInterceptorFlows
@Nonnull @NonnullElements @NotLive @Unmodifiable public List<String> getInboundInterceptorFlows(@Nullable org.opensaml.profile.context.ProfileRequestContext profileRequestContext)
Get an ordered list of interceptor flows to run for this profile after an inbound message is decoded.The flow IDs returned MUST NOT contain the
ProfileInterceptorFlowDescriptor.FLOW_ID_PREFIXprefix common to all interceptor flows.- Specified by:
getInboundInterceptorFlowsin interfaceProfileConfiguration- Parameters:
profileRequestContext- current profile request context- Returns:
- a set of interceptor flow IDs to enable
-
setInboundInterceptorFlows
public void setInboundInterceptorFlows(@Nullable @NonnullElements Collection<String> flows)Set the ordered collection of inbound interceptor flows to enable.- Parameters:
flows- flow identifiers to enable
-
setInboundFlowsLookupStrategy
public void setInboundFlowsLookupStrategy(@Nonnull Function<org.opensaml.profile.context.ProfileRequestContext,List<String>> strategy)Set a lookup strategy for the inbound interceptor flows to enable.- Parameters:
strategy- lookup strategy- Since:
- 3.3.0
-
getOutboundInterceptorFlows
@Nonnull @NonnullElements @NotLive @Unmodifiable public List<String> getOutboundInterceptorFlows(@Nullable org.opensaml.profile.context.ProfileRequestContext profileRequestContext)
Get an ordered list of interceptor flows to run for this profile before a final outbound message is generated.The flow IDs returned MUST NOT contain the
ProfileInterceptorFlowDescriptor.FLOW_ID_PREFIXprefix common to all interceptor flows.- Specified by:
getOutboundInterceptorFlowsin interfaceProfileConfiguration- Parameters:
profileRequestContext- current profile request context- Returns:
- a set of interceptor flow IDs to enable
-
setOutboundInterceptorFlows
public void setOutboundInterceptorFlows(@Nullable @NonnullElements Collection<String> flows)Set the ordered collection of outbound interceptor flows to enable.- Parameters:
flows- flow identifiers to enable
-
setOutboundFlowsLookupStrategy
public void setOutboundFlowsLookupStrategy(@Nonnull Function<org.opensaml.profile.context.ProfileRequestContext,List<String>> strategy)Set a lookup strategy for the outbound interceptor flows to enable.- Parameters:
strategy- lookup strategy- Since:
- 3.3.0
-
isFeatureDisallowed
public boolean isFeatureDisallowed(@Nullable org.opensaml.profile.context.ProfileRequestContext profileRequestContext, int feature)Return true iff the input feature constant is disallowed.- Parameters:
profileRequestContext- current profile request contextfeature- a bit constant- Returns:
- true iff the input feature constant is disallowed
- Since:
- 3.3.0
-
getDisallowedFeatures
public int getDisallowedFeatures(@Nullable org.opensaml.profile.context.ProfileRequestContext profileRequestContext)Get a bitmask of disallowed features to block.Individual profiles define their own feature constants.
- Parameters:
profileRequestContext- current profile request context- Returns:
- bitmask of features to block
- Since:
- 3.3.0
-
setDisallowedFeatures
public void setDisallowedFeatures(int mask)
Set a bitmask of disallowed features to block.- Parameters:
mask- a bitmask of features to block- Since:
- 3.3.0
-
setDisallowedFeaturesLookupStrategy
public void setDisallowedFeaturesLookupStrategy(@Nonnull Function<org.opensaml.profile.context.ProfileRequestContext,Integer> strategy)Set a lookup strategy for the bitmask of disallowed features to block.- Parameters:
strategy- lookup strategy- Since:
- 3.3.0
-
-