Class SelectProfileInterceptorFlow
java.lang.Object
net.shibboleth.utilities.java.support.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
public class SelectProfileInterceptorFlow extends AbstractProfileInterceptorAction
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 Modifier and Type Field Description private org.slf4j.Logger
log
Class logger. -
Constructor Summary
Constructors Constructor Description SelectProfileInterceptorFlow()
-
Method Summary
Modifier and Type Method Description protected void
doExecute(ProfileRequestContext profileRequestContext, ProfileInterceptorContext interceptorContext)
Performs this profile interceptor action.protected boolean
doPreExecute(ProfileRequestContext profileRequestContext, ProfileInterceptorContext interceptorContext)
Performs this profile interceptor action's pre-execute step.private ProfileInterceptorFlowDescriptor
selectUnattemptedFlow(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, setLookupStrategy
Methods inherited from class net.shibboleth.idp.profile.AbstractProfileAction
doExecute, execute, getMessage, getMessage, getMessage, getProfileContextLookupStrategy, getRequestContext, getResult, setMessageSource, setProfileContextLookupStrategy
Methods inherited from class org.opensaml.profile.action.AbstractConditionalProfileAction
getActivationCondition, setActivationCondition
Methods inherited from class org.opensaml.profile.action.AbstractProfileAction
doPostExecute, doPostExecute, execute, getHttpServletRequest, getHttpServletResponse, getLogPrefix, setHttpServletRequest, setHttpServletResponse
Methods inherited from class net.shibboleth.utilities.java.support.component.AbstractInitializableComponent
destroy, doDestroy, doInitialize, initialize, isDestroyed, isInitialized
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface net.shibboleth.utilities.java.support.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:
doPreExecute
in 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:
doExecute
in 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
-