Class AbstractInterceptorAwareProfileConfiguration

java.lang.Object
net.shibboleth.shared.component.AbstractInitializableComponent
net.shibboleth.shared.component.AbstractIdentifiedInitializableComponent
net.shibboleth.shared.component.AbstractIdentifiableInitializableComponent
net.shibboleth.profile.config.AbstractProfileConfiguration
net.shibboleth.profile.config.AbstractConditionalProfileConfiguration
net.shibboleth.idp.profile.config.AbstractInterceptorAwareProfileConfiguration
All Implemented Interfaces:
InterceptorAwareProfileConfiguration, net.shibboleth.profile.config.ConditionalProfileConfiguration, net.shibboleth.profile.config.ProfileConfiguration, Component, DestructableComponent, IdentifiableComponent, IdentifiedComponent, InitializableComponent

public abstract class AbstractInterceptorAwareProfileConfiguration extends net.shibboleth.profile.config.AbstractConditionalProfileConfiguration implements InterceptorAwareProfileConfiguration
Base class for InterceptorAwareProfileConfiguration implementations.
Since:
5.0.0
  • Field Details

  • Constructor Details

    • AbstractInterceptorAwareProfileConfiguration

      public AbstractInterceptorAwareProfileConfiguration(@Nonnull @NotEmpty @ParameterName(name="id") String id)
      Constructor.
      Parameters:
      id - ID of the communication profile, never null or empty
  • Method Details

    • getInboundInterceptorFlows

      @Nonnull @NotLive @Unmodifiable public List<String> getInboundInterceptorFlows(@Nullable 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_PREFIX prefix common to all interceptor flows.

      Specified by:
      getInboundInterceptorFlows in interface InterceptorAwareProfileConfiguration
      Parameters:
      profileRequestContext - current profile request context
      Returns:
      a set of interceptor flow IDs to enable
    • setInboundInterceptorFlows

      public void setInboundInterceptorFlows(@Nullable Collection<String> flows)
      Set the ordered collection of inbound interceptor flows to enable.
      Parameters:
      flows - flow identifiers to enable
    • setInboundInterceptorFlowsLookupStrategy

      public void setInboundInterceptorFlowsLookupStrategy(@Nonnull Function<ProfileRequestContext,List<String>> strategy)
      Set a lookup strategy for the inbound interceptor flows to enable.
      Parameters:
      strategy - lookup strategy
      Since:
      4.2.0
    • getOutboundInterceptorFlows

      @Nonnull @NotLive @Unmodifiable public List<String> getOutboundInterceptorFlows(@Nullable 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_PREFIX prefix common to all interceptor flows.

      Specified by:
      getOutboundInterceptorFlows in interface InterceptorAwareProfileConfiguration
      Parameters:
      profileRequestContext - current profile request context
      Returns:
      a set of interceptor flow IDs to enable
    • setOutboundInterceptorFlows

      public void setOutboundInterceptorFlows(@Nullable Collection<String> flows)
      Set the ordered collection of outbound interceptor flows to enable.
      Parameters:
      flows - flow identifiers to enable
    • setOutboundInterceptorFlowsLookupStrategy

      public void setOutboundInterceptorFlowsLookupStrategy(@Nonnull Function<ProfileRequestContext,List<String>> strategy)
      Set a lookup strategy for the outbound interceptor flows to enable.
      Parameters:
      strategy - lookup strategy
      Since:
      4.2.0