Class AbstractConditionalProfileAction

  • All Implemented Interfaces:
    net.shibboleth.utilities.java.support.component.Component, net.shibboleth.utilities.java.support.component.DestructableComponent, net.shibboleth.utilities.java.support.component.InitializableComponent, ProfileAction
    Direct Known Subclasses:
    AbstractHandlerDelegatingProfileAction

    public abstract class AbstractConditionalProfileAction
    extends AbstractProfileAction
    Base class for conditional profile actions.

    A condition does not represent a situation in which an error should be raised, but that normal processing should continue and the action simply doesn't apply, so a false condition does not raise a non-proceed event.

    • Constructor Detail

      • AbstractConditionalProfileAction

        public AbstractConditionalProfileAction()
        Constructor.
    • Method Detail

      • getActivationCondition

        @Nonnull
        public Predicate<ProfileRequestContext> getActivationCondition()
        Get activation condition indicating whether action should execute.
        Returns:
        activation condition
      • setActivationCondition

        public void setActivationCondition​(@Nonnull
                                           Predicate<ProfileRequestContext> condition)
        Set activation condition indicating whether action should execute.
        Parameters:
        condition - predicate to apply
      • doPreExecute

        protected boolean doPreExecute​(@Nonnull
                                       ProfileRequestContext profileRequestContext)
        Called prior to execution, actions may override this method to perform pre-processing for a request.

        If false is returned, execution will not proceed, and the action should attach an EventContext to the context tree to signal how to continue with overall workflow processing.

        If returning successfully, the last step should be to return the result of the superclass version of this method.

        Overrides:
        doPreExecute in class AbstractProfileAction
        Parameters:
        profileRequestContext - the current IdP profile request context
        Returns:
        true iff execution should proceed