Package net.shibboleth.idp.session

# Class LogoutPropagationFlowDescriptor

java.lang.Object
net.shibboleth.shared.component.AbstractInitializableComponent
net.shibboleth.shared.component.AbstractIdentifiedInitializableComponent
net.shibboleth.shared.component.AbstractIdentifiableInitializableComponent
net.shibboleth.idp.session.LogoutPropagationFlowDescriptor

All Implemented Interfaces:
  `Component`, `DestructableComponent`, `IdentifiableComponent`, `IdentifiedComponent`, `InitializableComponent`

public class LogoutPropagationFlowDescriptor extends AbstractIdentifiableInitializableComponent
A descriptor for a logout propagation flow.

A flow models a sequence of profile actions that performs logout propagation of an `SPSession`. The suitability of a particular flow given an instance of `SPSession` is determined by `getSessionType()`.

## Field Summary

Fields
Modifier and Type
Field
Description
`private final Class<? extends SPSession>`
`sessionType`
Type of session handled by this flow.

## Constructor Summary

Constructors
Constructor
Description
`LogoutPropagationFlowDescriptor(Class<? extends SPSession> type)`
Constructor.

## Method Summary

Modifier and Type
Method
Description
`boolean`
`equals(Object obj)`
`Class<? extends SPSession>`
`getSessionType()`
Get the type of `SPSession` supported by this flow descriptor.
`int`
`hashCode()`
`boolean`
`isSupported(SPSession session)`
Test an input session to determine if this flow supports it.
`String`
`toString()`

### Methods inherited from class net.shibboleth.shared.component.AbstractIdentifiableInitializableComponent

`setId`

### Methods inherited from class net.shibboleth.shared.component.AbstractIdentifiedInitializableComponent

`doInitialize, ensureId, getId, ifDestroyedThrowDestroyedComponentException, ifInitializedThrowUnmodifiabledComponentException, ifNotInitializedThrowUninitializedComponentException`

### Methods inherited from class net.shibboleth.shared.component.AbstractInitializableComponent

`checkComponentActive, checkSetterPreconditions, destroy, doDestroy, initialize, isDestroyed, isInitialized`

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

`clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

### Methods inherited from interface net.shibboleth.shared.component.IdentifiedComponent

`getId`

## Field Details

### sessionType

@Nonnull private final Class<? extends SPSession> sessionType
Type of session handled by this flow.

## Constructor Details

### LogoutPropagationFlowDescriptor

public LogoutPropagationFlowDescriptor(@ParameterName(name="type") Class<? extends SPSession> type)
Constructor.

Parameters:
  `type` - type of `SPSession` associated with this flow

## Method Details

### getSessionType

@Nonnull public Class<? extends SPSession> getSessionType()
Get the type of `SPSession` supported by this flow descriptor.

Returns:
  type of session supported by this flow descriptor

### isSupported

public boolean isSupported(@Nonnull SPSession session)
Test an input session to determine if this flow supports it.

Parameters:
  `session` - input session
Returns:
  true iff this flow should be used to propagate a logout to the corresponding SP

### hashCode

public int hashCode()

Overrides:
  `hashCode` in class `Object`

### equals

public boolean equals(Object obj)

Overrides:
  `equals` in class `Object`

### toString

public String toString()

Overrides:
  `toString` in class `Object`