Package net.shibboleth.idp.session.impl
Class ProcessLogout
-
- All Implemented Interfaces:
Component,DestructableComponent,InitializableComponent,ProfileAction,Aware,MessageSource,MessageSourceAware,Action
public class ProcessLogout extends AbstractProfileAction
Profile action that resolves an active session from the profile request, and records it, populating the associatedSPSessionobjects into aLogoutContext.A
SubjectContextandSessionContextare also populated.Each
SPSessionis also assigned a unique number and inserted into the map returned byLogoutContext.getKeyedSessionMap().- Event:
EventIds.PROCEED_EVENT_ID,EventIds.INVALID_PROFILE_CTX,EventIds.IO_ERROR- Postcondition:
- If a
IdPSessionwas found, then aSubjectContextandLogoutContextwill be populated.
-
-
Field Summary
Fields Modifier and Type Field Description private Function<ProfileRequestContext,String>addressLookupStrategyFunction to override source of address to bind session.private org.slf4j.LoggerlogClass logger.private Function<ProfileRequestContext,LogoutContext>logoutContextCreationStrategyCreation/lookup function for LogoutContext.private Function<ProfileRequestContext,SessionContext>sessionContextCreationStrategyCreation/lookup function for SessionContext.private SessionResolversessionResolverSession resolver.private Function<ProfileRequestContext,CriteriaSet>sessionResolverCriteriaStrategyFunction to returnCriteriaSetto give to session resolver.private Function<ProfileRequestContext,SubjectContext>subjectContextCreationStrategyCreation/lookup function for SubjectContext.
-
Constructor Summary
Constructors Constructor Description ProcessLogout()Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voiddoExecute(ProfileRequestContext profileRequestContext)protected voiddoInitialize()voidsetAddressLookupStrategy(Function<ProfileRequestContext,String> strategy)Set an optional lookup strategy to obtain the address to which to validate the session.voidsetLogoutContextCreationStrategy(Function<ProfileRequestContext,LogoutContext> strategy)Set the creation/lookup strategy for the LogoutContext to populate.voidsetSessionContextCreationStrategy(Function<ProfileRequestContext,SessionContext> strategy)Set the creation/lookup strategy for the SessionContext to populate.voidsetSessionResolver(SessionResolver resolver)Set theSessionResolverto use.voidsetSessionResolverCriteriaStrategy(Function<ProfileRequestContext,CriteriaSet> strategy)Set the strategy for building theCriteriaSetto feed into theSessionResolver.voidsetSubjectContextCreationStrategy(Function<ProfileRequestContext,SubjectContext> strategy)Set the creation/lookup strategy for the SubjectContext to populate.-
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, 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 Detail
-
log
@Nonnull private final org.slf4j.Logger log
Class logger.
-
sessionResolver
@NonnullAfterInit private SessionResolver sessionResolver
Session resolver.
-
subjectContextCreationStrategy
@Nonnull private Function<ProfileRequestContext,SubjectContext> subjectContextCreationStrategy
Creation/lookup function for SubjectContext.
-
sessionContextCreationStrategy
@Nonnull private Function<ProfileRequestContext,SessionContext> sessionContextCreationStrategy
Creation/lookup function for SessionContext.
-
logoutContextCreationStrategy
@Nonnull private Function<ProfileRequestContext,LogoutContext> logoutContextCreationStrategy
Creation/lookup function for LogoutContext.
-
sessionResolverCriteriaStrategy
@Nonnull private Function<ProfileRequestContext,CriteriaSet> sessionResolverCriteriaStrategy
Function to returnCriteriaSetto give to session resolver.
-
addressLookupStrategy
@Nullable private Function<ProfileRequestContext,String> addressLookupStrategy
Function to override source of address to bind session.
-
-
Method Detail
-
setSessionResolver
public void setSessionResolver(@Nonnull SessionResolver resolver)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
public void setAddressLookupStrategy(@Nullable Function<ProfileRequestContext,String> strategy)Set an optional lookup strategy to obtain the address to which to validate the session.- Parameters:
strategy- lookup strategy- Since:
- 4.2.0
-
doInitialize
protected void doInitialize() throws ComponentInitializationException- Overrides:
doInitializein classAbstractInitializableComponent- Throws:
ComponentInitializationException
-
doExecute
protected void doExecute(@Nonnull ProfileRequestContext profileRequestContext)- Overrides:
doExecutein classAbstractProfileAction
-
-