Package net.shibboleth.idp.session.impl
Class SelectLogoutPropagationFlow
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.session.impl.SelectLogoutPropagationFlow
- All Implemented Interfaces:
Component
,DestructableComponent
,InitializableComponent
,ProfileAction
,Aware
,MessageSource
,MessageSourceAware
,Action
A profile action that selects a logout propagation flow to invoke.
This is the heart of the logout propagation processing sequence, and runs after the
LogoutContext
has been populated. It uses the potential flows,
and their associated activation conditions to decide how to proceed.
This is a rare case in that the standard default event,
EventIds.PROCEED_EVENT_ID
, cannot be returned,
because the action must either dispatch to a flow by name, or signal an error.
- Event:
AuthnEventIds.NO_POTENTIAL_FLOW
, Selected flow ID to execute
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final Function<SPSession,
LogoutPropagationFlowDescriptor> Selection function to determine suitable LogoutPropagationFlowDescriptor for given SPSession.private final org.slf4j.Logger
Class logger.Function to retrieve LogoutPropagationContext from context tree. -
Constructor Summary
ConstructorsConstructorDescriptionConstructor. -
Method Summary
Modifier and TypeMethodDescriptionprotected void
doExecute
(ProfileRequestContext profileRequestContext) void
setLogoutPropagationContextFunction
(Function<ProfileRequestContext, LogoutPropagationContext> function) Sets the function used to retrieve theLogoutPropagationContext
from the context tree.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
doPreExecute, 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. -
flowSelectorFunction
Selection function to determine suitable LogoutPropagationFlowDescriptor for given SPSession. -
logoutPropagationContextFunction
@Nonnull private Function<ProfileRequestContext,LogoutPropagationContext> logoutPropagationContextFunctionFunction to retrieve LogoutPropagationContext from context tree.
-
-
Constructor Details
-
SelectLogoutPropagationFlow
public SelectLogoutPropagationFlow(@Nonnull Function<SPSession, LogoutPropagationFlowDescriptor> selector) Constructor.- Parameters:
selector
- mapping function from session to flow descriptor
-
-
Method Details
-
setLogoutPropagationContextFunction
public void setLogoutPropagationContextFunction(@Nonnull Function<ProfileRequestContext, LogoutPropagationContext> function) Sets the function used to retrieve theLogoutPropagationContext
from the context tree.- Parameters:
function
- Lookup function.
-
doExecute
- Overrides:
doExecute
in classAbstractProfileAction
-