Package net.shibboleth.idp.session.context

# Class LogoutPropagationContext

java.lang.Object
org.opensaml.messaging.context.BaseContext
net.shibboleth.idp.session.context.LogoutPropagationContext

All Implemented Interfaces:
  `Iterable<BaseContext>`

public final class LogoutPropagationContext extends BaseContext
Context holding information needed to perform logout for a single SP session.

## Nested Class Summary

Nested Classes
Modifier and Type
Class
Description
`static enum`
`LogoutPropagationContext.Result`
Logout propagation result.

## Nested classes/interfaces inherited from class org.opensaml.messaging.context.BaseContext

`BaseContext.ContextSetNoRemoveIteratorDecorator, BaseContext.DeprecatedContextClassNameLookAside`

## Field Summary

Fields
Modifier and Type
Field
Description
`private String`
`detail`
Details of result, typically only populated for failures.
`private LogoutPropagationContext.Result`
`result`
Result of logout propagation flow.
`private SPSession`
`session`
SP session to be destroyed.
`private String`
`sessionKey`
Session key.

## Constructor Summary

Constructors
Constructor
Description
`LogoutPropagationContext()`

## Method Summary

Modifier and Type
Method
Description
`String`
`getDetail()`
Get detailed message regarding result of logout propagation.
`LogoutPropagationContext.Result`
`getResult()`
Get the result of the logout propagation.
`SPSession`
`getSession()`
Get the `SPSession` being destroyed by the logout propagation.
`String`
`getSessionKey()`
Gets the key under which the `SPSession` was stored in `LogoutContext.getKeyedSessionMap()`.
`void`
`setDetail(String msg)`
Set the logout propagation result detail message.
`void`
`setResult(LogoutPropagationContext.Result theResult)`
Set the logout propagation result.
`void`
`setResultString(String resultString)`
Set the logout propagation result from a string representation of `LogoutPropagationContext.Result`.
`void`
`setSession(SPSession theSession)`
Set the `SPSession` to be destroyed.
`void`
`setSessionKey(String key)`
Sets the key under which the `SPSession` was stored in `LogoutContext.getKeyedSessionMap()`.

### Methods inherited from class org.opensaml.messaging.context.BaseContext

`addSubcontext, addSubcontext, clearSubcontexts, containsSubcontext, createSubcontext, ensureSubcontext, ensureSubcontext, getParent, getSubcontext, getSubcontext, getSubcontext, getSubcontext, iterator, removeFromParent, removeSubcontext, removeSubcontext, setParent`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Methods inherited from interface java.lang.Iterable

`forEach, spliterator`

## Field Details

### session

@Nullable private SPSession session
SP session to be destroyed.

### sessionKey

@Nullable private String sessionKey
Session key.

### result

@Nonnull private LogoutPropagationContext.Result result
Result of logout propagation flow.

### detail

@Nullable private String detail
Details of result, typically only populated for failures.

## Constructor Details

### LogoutPropagationContext

public LogoutPropagationContext()

## Method Details

### getSession

@Nullable public SPSession getSession()
Get the `SPSession` being destroyed by the logout propagation.

Returns:
  the SP session to be destroyed

### setSession

public void setSession(@Nullable SPSession theSession)
Set the `SPSession` to be destroyed.

Parameters:
  `theSession` - the SP session

### getSessionKey

@Nullable public String getSessionKey()
Gets the key under which the `SPSession` was stored in `LogoutContext.getKeyedSessionMap()`.

Returns:
  Session key.

### setSessionKey

public void setSessionKey(@Nullable String key)
Sets the key under which the `SPSession` was stored in `LogoutContext.getKeyedSessionMap()`.

Parameters:
  `key` - Session key.

### getResult

@Nonnull public LogoutPropagationContext.Result getResult()
Get the result of the logout propagation.

Returns:
  logout propagation result

### setResult

public void setResult(@Nonnull LogoutPropagationContext.Result theResult)
Set the logout propagation result.

Parameters:
  `theResult` - non-null result

### setResultString

public void setResultString(@Nonnull String resultString)
Set the logout propagation result from a string representation of `LogoutPropagationContext.Result`.

Parameters:
  `resultString` - Non-null string representation of `LogoutPropagationContext.Result`.

### getDetail

@Nullable public String getDetail()
Get detailed message regarding result of logout propagation.

Returns:
  logout propagation result detail message

### setDetail

public void setDetail(@Nullable String msg)
Set the logout propagation result detail message.

Parameters:
  `msg` - result detail message.