Class ProfileInterceptorFlowDescriptor

  • All Implemented Interfaces:
    Predicate<org.opensaml.profile.context.ProfileRequestContext>, FlowDescriptor, 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

    public class ProfileInterceptorFlowDescriptor
    extends net.shibboleth.utilities.java.support.component.AbstractIdentifiableInitializableComponent
    implements FlowDescriptor, Predicate<org.opensaml.profile.context.ProfileRequestContext>
    A descriptor for a profile interceptor flow.

    A profile interceptor flow is designed to be injected into a profile flow to facilitate customization of the profile flow. A profile interceptor flow must include an activation predicate to indicate suitability based on the content of the ProfileRequestContext.

    • Field Summary

      Fields 
      Modifier and Type Field Description
      private Predicate<org.opensaml.profile.context.ProfileRequestContext> activationCondition
      Predicate that must be true for this flow to be usable for a given request.
      static String FLOW_ID_PREFIX
      Prefix convention for flow IDs.
      private org.opensaml.storage.StorageService storageService
      Storage service for the results generated by this flow.
      private boolean supportsNonBrowser
      Whether this flow supports non-browser clients.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      boolean equals​(Object obj)
      org.opensaml.storage.StorageService getStorageService()
      Get the storage service.
      int hashCode()
      boolean isNonBrowserSupported()
      Get whether this flow supports non-browser clients.
      void setActivationCondition​(Predicate<org.opensaml.profile.context.ProfileRequestContext> condition)
      Set the activation condition in the form of a Predicate such that iff the condition evaluates to true should the corresponding flow be allowed/possible.
      void setNonBrowserSupported​(boolean isSupported)
      Set whether this flow supports non-browser clients.
      void setStorageService​(org.opensaml.storage.StorageService service)
      Set the storage service.
      boolean test​(org.opensaml.profile.context.ProfileRequestContext input)
      String toString()
      • 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
      • Methods inherited from interface net.shibboleth.utilities.java.support.component.DestructableComponent

        destroy, isDestroyed
      • Methods inherited from interface net.shibboleth.utilities.java.support.component.IdentifiableComponent

        setId
      • Methods inherited from interface net.shibboleth.utilities.java.support.component.IdentifiedComponent

        getId
      • Methods inherited from interface net.shibboleth.utilities.java.support.component.InitializableComponent

        initialize, isInitialized
    • Field Detail

      • FLOW_ID_PREFIX

        @Nonnull
        @NotEmpty
        public static final String FLOW_ID_PREFIX
        Prefix convention for flow IDs.
        See Also:
        Constant Field Values
      • activationCondition

        @Nonnull
        private Predicate<org.opensaml.profile.context.ProfileRequestContext> activationCondition
        Predicate that must be true for this flow to be usable for a given request.
      • storageService

        @Nullable
        private org.opensaml.storage.StorageService storageService
        Storage service for the results generated by this flow.
      • supportsNonBrowser

        private boolean supportsNonBrowser
        Whether this flow supports non-browser clients.
    • Constructor Detail

      • ProfileInterceptorFlowDescriptor

        public ProfileInterceptorFlowDescriptor()
        Constructor.
    • Method Detail

      • setActivationCondition

        public void setActivationCondition​(@Nonnull
                                           Predicate<org.opensaml.profile.context.ProfileRequestContext> condition)
        Set the activation condition in the form of a Predicate such that iff the condition evaluates to true should the corresponding flow be allowed/possible.
        Parameters:
        condition - predicate that controls activation of the flow
      • isNonBrowserSupported

        public boolean isNonBrowserSupported()
        Get whether this flow supports non-browser clients.
        Returns:
        whether this flow supports non-browser clients
      • setNonBrowserSupported

        public void setNonBrowserSupported​(boolean isSupported)
        Set whether this flow supports non-browser clients.
        Parameters:
        isSupported - whether this flow supports non-browser clients
      • getStorageService

        @Nullable
        public org.opensaml.storage.StorageService getStorageService()
        Get the storage service.
        Returns:
        the storage service
      • setStorageService

        public void setStorageService​(@Nonnull
                                      org.opensaml.storage.StorageService service)
        Set the storage service.
        Parameters:
        service - the storage service
      • test

        public boolean test​(@Nullable
                            org.opensaml.profile.context.ProfileRequestContext input)
        Specified by:
        test in interface Predicate<org.opensaml.profile.context.ProfileRequestContext>
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object