Package net.shibboleth.idp.session.impl
Class ProcessLogout
- All Implemented Interfaces:
Component,DestructableComponent,InitializableComponent,ProfileAction,Aware,MessageSource,MessageSourceAware,Action
Profile action that resolves an active session from the profile request, and records it,
populating the associated
SPSession objects into a LogoutContext.
A SubjectContext and SessionContext are also populated.
Each SPSession is also assigned a unique number and inserted into the map
returned by LogoutContext.getKeyedSessionMap().
- Event:
EventIds.PROCEED_EVENT_ID,EventIds.INVALID_PROFILE_CTX,EventIds.IO_ERROR- Postcondition:
- If a
IdPSessionwas found, then aSubjectContextandLogoutContextwill be populated.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate Function<ProfileRequestContext,String> Function to override source of address to bind session.private final org.slf4j.LoggerClass logger.private Function<ProfileRequestContext,LogoutContext> Creation/lookup function for LogoutContext.private Function<ProfileRequestContext,SessionContext> Creation/lookup function for SessionContext.private SessionResolverSession resolver.private Function<ProfileRequestContext,CriteriaSet> Function to returnCriteriaSetto give to session resolver.private Function<ProfileRequestContext,SubjectContext> Creation/lookup function for SubjectContext. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voiddoExecute(ProfileRequestContext profileRequestContext) protected voidvoidSet an optional lookup strategy to obtain the address to which to validate the session.voidSet the creation/lookup strategy for the LogoutContext to populate.voidSet the creation/lookup strategy for the SessionContext to populate.voidsetSessionResolver(SessionResolver resolver) Set theSessionResolverto use.voidSet the strategy for building theCriteriaSetto feed into theSessionResolver.voidSet the creation/lookup strategy for the SubjectContext to populate.Methods 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
doPreExecute, 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, 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. -
sessionResolver
Session resolver. -
subjectContextCreationStrategy
Creation/lookup function for SubjectContext. -
sessionContextCreationStrategy
Creation/lookup function for SessionContext. -
logoutContextCreationStrategy
Creation/lookup function for LogoutContext. -
sessionResolverCriteriaStrategy
Function to returnCriteriaSetto give to session resolver. -
addressLookupStrategy
Function to override source of address to bind session.
-
-
Constructor Details
-
ProcessLogout
public ProcessLogout()Constructor.
-
-
Method Details
-
setSessionResolver
Set theSessionResolverto use.- Parameters:
resolver- session resolver to use
-
setSubjectContextCreationStrategy
public void setSubjectContextCreationStrategy(@Nonnull Function<ProfileRequestContext, SubjectContext> strategy) Set the creation/lookup strategy for the SubjectContext to populate.- Parameters:
strategy- creation/lookup strategy
-
setSessionContextCreationStrategy
public void setSessionContextCreationStrategy(@Nonnull Function<ProfileRequestContext, SessionContext> strategy) Set the creation/lookup strategy for the SessionContext to populate.- Parameters:
strategy- creation/lookup strategy
-
setLogoutContextCreationStrategy
public void setLogoutContextCreationStrategy(@Nonnull Function<ProfileRequestContext, LogoutContext> strategy) Set the creation/lookup strategy for the LogoutContext to populate.- Parameters:
strategy- creation/lookup strategy
-
setSessionResolverCriteriaStrategy
public void setSessionResolverCriteriaStrategy(@Nonnull Function<ProfileRequestContext, CriteriaSet> strategy) Set the strategy for building theCriteriaSetto feed into theSessionResolver.- Parameters:
strategy- building strategy
-
setAddressLookupStrategy
Set an optional lookup strategy to obtain the address to which to validate the session.- Parameters:
strategy- lookup strategy- Since:
- 4.2.0
-
doInitialize
- Overrides:
doInitializein classAbstractInitializableComponent- Throws:
ComponentInitializationException
-
doExecute
- Overrides:
doExecutein classAbstractProfileAction
-