Package org.opensaml.storage.impl.client

# Class PopulateClientStorageLoadContext

java.lang.Object
net.shibboleth.shared.component.AbstractInitializableComponent
org.opensaml.profile.action.AbstractProfileAction
org.opensaml.storage.impl.client.PopulateClientStorageLoadContext

All Implemented Interfaces:
  `Component`, `DestructableComponent`, `InitializableComponent`, `ProfileAction`

public class PopulateClientStorageLoadContext extends AbstractProfileAction
An action that creates and populates a `ClientStorageLoadContext` with any storage keys identified as missing from the current session and in need of loading.

The action will signal the `LOAD_NOT_NEEDED` event if it is unnecessary to proceed with the load operation.

Event:
  `EventIds.PROCEED_EVENT_ID`, `LOAD_NOT_NEEDED`

## Field Summary

Fields
Modifier and Type
Field
Description
`static final String`
`LOAD_NOT_NEEDED`
Event signaling that no load step is necessary.
`private final org.slf4j.Logger`
`log`
Class logger.
`private Collection<ClientStorageService>`
`storageServices`
The storage service instances to check for a loading requirement.

## Constructor Summary

Constructors
Constructor
Description
`PopulateClientStorageLoadContext()`
Constructor.

## Method Summary

Modifier and Type
Method
Description
`protected void`
`doExecute(ProfileRequestContext profileRequestContext)`
Performs this action.
`protected boolean`
`doPreExecute(ProfileRequestContext profileRequestContext)`
Called prior to execution, actions may override this method to perform pre-processing for a request.
`void`
`setStorageServices(Collection<ClientStorageService> services)`
Set the `ClientStorageService` instances to check for loading.

### Methods inherited from class org.opensaml.profile.action.AbstractProfileAction

`doPostExecute, doPostExecute, ensureHttpServletRequest, ensureHttpServletResponse, execute, getHttpServletRequest, getHttpServletRequestSupplier, getHttpServletResponse, getHttpServletResponseSupplier, getLogPrefix, isPreExecuteCalled, setHttpServletRequestSupplier, setHttpServletResponseSupplier`

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

`checkComponentActive, checkSetterPreconditions, destroy, doDestroy, doInitialize, ifDestroyedThrowDestroyedComponentException, ifInitializedThrowUnmodifiabledComponentException, ifNotInitializedThrowUninitializedComponentException, 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.shared.component.InitializableComponent

`initialize, isInitialized`

## Field Details

### LOAD_NOT_NEEDED

@Nonnull @NotEmpty public static final String LOAD_NOT_NEEDED
Event signaling that no load step is necessary.

See Also:
  - Constant Field Values

### log

@Nonnull private final org.slf4j.Logger log
Class logger.

### storageServices

@Nonnull private Collection<ClientStorageService> storageServices
The storage service instances to check for a loading requirement.

## Constructor Details

### PopulateClientStorageLoadContext

public PopulateClientStorageLoadContext()
Constructor.

## Method Details

### setStorageServices

public void setStorageServices(@Nullable Collection<ClientStorageService> services)
Set the `ClientStorageService` instances to check for loading.

Parameters:
  `services` - instances to check for loading

### doPreExecute

protected boolean doPreExecute(@Nonnull ProfileRequestContext profileRequestContext)
Called prior to execution, actions may override this method to perform pre-processing for a request.

If false is returned, execution will not proceed, and the action should attach an `EventContext` to the context tree to signal how to continue with overall workflow processing.

If returning successfully, the last step should be to return the result of the superclass version of this method.

Overrides:
  `doPreExecute` in class `AbstractProfileAction`
Parameters:
  `profileRequestContext` - the current IdP profile request context
Returns:
  true iff execution should proceed

### doExecute

protected void doExecute(@Nonnull ProfileRequestContext profileRequestContext)
Performs this action. Actions must override this method to perform their work.

Overrides:
  `doExecute` in class `AbstractProfileAction`
Parameters:
  `profileRequestContext` - the current IdP profile request context