Class SelectProfileInterceptorFlow
java.lang.Object
net.shibboleth.shared.component.AbstractInitializableComponent
org.opensaml.profile.action.AbstractProfileAction
org.opensaml.profile.action.AbstractConditionalProfileAction
net.shibboleth.idp.profile.AbstractProfileAction
net.shibboleth.idp.profile.interceptor.AbstractProfileInterceptorAction
net.shibboleth.idp.profile.interceptor.impl.SelectProfileInterceptorFlow
- All Implemented Interfaces:
Component,DestructableComponent,InitializableComponent,ProfileAction,Aware,MessageSource,MessageSourceAware,Action
A profile interceptor action that selects flows to invoke.
The flows available to be executed are held by the ProfileInterceptorContext. Available flows are executed in
the order that they are configured if their activation condition evaluates to true.
This action returns the flow ID to be executed or EventIds.PROCEED_EVENT_ID if
there are no flows available to be executed.
- Event:
EventIds.PROCEED_EVENT_ID, Selected flow ID to execute- Precondition:
ProfileRequestContext.getSubcontext(ProfileInterceptorContext.class, true) != null
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voiddoExecute(ProfileRequestContext profileRequestContext, ProfileInterceptorContext interceptorContext) Performs this profile interceptor action.protected booleandoPreExecute(ProfileRequestContext profileRequestContext, ProfileInterceptorContext interceptorContext) Performs this profile interceptor action's pre-execute step.private ProfileInterceptorFlowDescriptorselectUnattemptedFlow(ProfileRequestContext profileRequestContext, ProfileInterceptorContext interceptorContext) Select the first potential flow not found in the completed flows collection, and that is applicable to the context.Methods inherited from class net.shibboleth.idp.profile.interceptor.AbstractProfileInterceptorAction
doExecute, doPreExecute, setLookupStrategyMethods inherited from class net.shibboleth.idp.profile.AbstractProfileAction
doExecute, execute, getBean, getBean, getMessage, getMessage, getMessage, getParameter, getParameter, getProfileContextLookupStrategy, getRequestContext, getResult, setMessageSource, setProfileContextLookupStrategyMethods inherited from class org.opensaml.profile.action.AbstractConditionalProfileAction
getActivationCondition, setActivationConditionMethods inherited from class org.opensaml.profile.action.AbstractProfileAction
doPostExecute, doPostExecute, ensureHttpServletRequest, ensureHttpServletResponse, execute, getHttpServletRequest, getHttpServletRequestSupplier, getHttpServletResponse, getHttpServletResponseSupplier, getLogPrefix, isPreExecuteCalled, setHttpServletRequestSupplier, setHttpServletResponseSupplierMethods inherited from class net.shibboleth.shared.component.AbstractInitializableComponent
checkComponentActive, checkSetterPreconditions, destroy, doDestroy, doInitialize, ifDestroyedThrowDestroyedComponentException, ifInitializedThrowUnmodifiabledComponentException, ifNotInitializedThrowUninitializedComponentException, initialize, isDestroyed, isInitializedMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface net.shibboleth.shared.component.InitializableComponent
initialize, isInitialized
-
Field Details
-
log
@Nonnull private final org.slf4j.Logger logClass logger.
-
-
Constructor Details
-
SelectProfileInterceptorFlow
public SelectProfileInterceptorFlow()
-
-
Method Details
-
doPreExecute
protected boolean doPreExecute(@Nonnull ProfileRequestContext profileRequestContext, @Nonnull ProfileInterceptorContext interceptorContext) Performs this profile interceptor action's pre-execute step. Default implementation returns true.- Overrides:
doPreExecutein classAbstractProfileInterceptorAction- Parameters:
profileRequestContext- the current profile request contextinterceptorContext- the current profile interceptor context- Returns:
- true iff execution should continue
-
doExecute
protected void doExecute(@Nonnull ProfileRequestContext profileRequestContext, @Nonnull ProfileInterceptorContext interceptorContext) Performs this profile interceptor action. Default implementation does nothing.- Overrides:
doExecutein classAbstractProfileInterceptorAction- Parameters:
profileRequestContext- the current profile request contextinterceptorContext- the current profile interceptor context
-
selectUnattemptedFlow
@Nullable private ProfileInterceptorFlowDescriptor selectUnattemptedFlow(@Nonnull ProfileRequestContext profileRequestContext, @Nonnull ProfileInterceptorContext interceptorContext) Select the first potential flow not found in the completed flows collection, and that is applicable to the context.- Parameters:
profileRequestContext- the current IdP profile request contextinterceptorContext- the current profile interceptor context- Returns:
- an eligible flow, or null
-