Class AbstractInterceptorAwareProfileConfiguration

All Implemented Interfaces:
InterceptorAwareProfileConfiguration, ConditionalProfileConfiguration, ProfileConfiguration, Component, DestructableComponent, IdentifiableComponent, IdentifiedComponent, InitializableComponent
Direct Known Subclasses:
AbstractProtocolConfiguration, AbstractSAMLProfileConfiguration, BasicAdministrativeFlowDescriptor, MockAuthenticationProfileConfiguration, MockProfileConfiguration

public abstract class AbstractInterceptorAwareProfileConfiguration extends 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