Class CreateStateData
java.lang.Object
net.shibboleth.shared.component.AbstractInitializableComponent
org.opensaml.profile.action.AbstractProfileAction
org.opensaml.profile.action.AbstractConditionalProfileAction
net.shibboleth.idp.profile.AbstractProfileAction
net.shibboleth.sp.profile.AbstractAgentRequestAction
net.shibboleth.sp.profile.AbstractAgentAction
net.shibboleth.sp.profile.AbstractApplicationAction
net.shibboleth.sp.oidc.profile.impl.CreateStateData
- All Implemented Interfaces:
net.shibboleth.shared.component.Component,net.shibboleth.shared.component.DestructableComponent,net.shibboleth.shared.component.InitializableComponent,org.opensaml.profile.action.ProfileAction,Aware,MessageSource,MessageSourceAware,Action
public class CreateStateData
extends net.shibboleth.sp.profile.AbstractApplicationAction
An action that looks up
StateData using a configured lookup strategy and adds it to a
StateDataContext obtained from the profile request context using a configured creation strategy.
In addition, the target URL is pulled out of the Agent input and added to the state data, if available, or if not, from any existing state data.
- Event:
EventIds.INVALID_PROFILE_CTX
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate net.shibboleth.sp.ddf.DDFThe stashed input DDF from the Agent.private final org.slf4j.LoggerClass logger.private net.shibboleth.sp.context.StateDataContextThe stashed state data context.private Function<org.opensaml.profile.context.ProfileRequestContext,net.shibboleth.sp.context.StateDataContext> Strategy used to locate or create theStateDataContextto populate.private Function<org.opensaml.profile.context.ProfileRequestContext,net.shibboleth.sp.state.StateData> Lookup strategy for the contents of the state token, as stored in aStateDataor subclass thereof. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voiddoExecute(org.opensaml.profile.context.ProfileRequestContext profileRequestContext) protected voidprotected booleandoPreExecute(org.opensaml.profile.context.ProfileRequestContext profileRequestContext) voidsetStateDataContextCreationStrategy(Function<org.opensaml.profile.context.ProfileRequestContext, net.shibboleth.sp.context.StateDataContext> strategy) Sets the strategy used to create theStateDataContext.voidsetStateDataLookupStrategy(Function<org.opensaml.profile.context.ProfileRequestContext, net.shibboleth.sp.state.StateData> strategy) Sets the lookup strategy for obtaining theStateDataof the state token.Methods inherited from class net.shibboleth.sp.profile.AbstractApplicationAction
ensureApplication, getApplicationMethods inherited from class net.shibboleth.sp.profile.AbstractAgentAction
ensureAgent, getAgentMethods inherited from class net.shibboleth.sp.profile.AbstractAgentRequestAction
ensureAgentRequestContext, getAgentRequestContext, setAgentRequestContextLookupStrategyMethods 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
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. -
stateDataLookupStrategy
@NonnullAfterInit private Function<org.opensaml.profile.context.ProfileRequestContext,net.shibboleth.sp.state.StateData> stateDataLookupStrategyLookup strategy for the contents of the state token, as stored in aStateDataor subclass thereof. This is augmented with other state data as defined in this action. -
stateDataContextCreationStrategy
@Nonnull private Function<org.opensaml.profile.context.ProfileRequestContext,net.shibboleth.sp.context.StateDataContext> stateDataContextCreationStrategyStrategy used to locate or create theStateDataContextto populate. -
stateDataContext
@NonnullBeforeExec private net.shibboleth.sp.context.StateDataContext stateDataContextThe stashed state data context. -
input
@NonnullBeforeExec private net.shibboleth.sp.ddf.DDF inputThe stashed input DDF from the Agent.
-
-
Constructor Details
-
CreateStateData
public CreateStateData()Constructor.
-
-
Method Details
-
setStateDataContextCreationStrategy
public void setStateDataContextCreationStrategy(@Nonnull Function<org.opensaml.profile.context.ProfileRequestContext, net.shibboleth.sp.context.StateDataContext> strategy) Sets the strategy used to create theStateDataContext.- Parameters:
strategy- creation strategy
-
doInitialize
protected void doInitialize() throws net.shibboleth.shared.component.ComponentInitializationException- Overrides:
doInitializein classnet.shibboleth.shared.component.AbstractInitializableComponent- Throws:
net.shibboleth.shared.component.ComponentInitializationException
-
setStateDataLookupStrategy
public void setStateDataLookupStrategy(@Nonnull Function<org.opensaml.profile.context.ProfileRequestContext, net.shibboleth.sp.state.StateData> strategy) Sets the lookup strategy for obtaining theStateDataof the state token.- Parameters:
strategy- lookup strategy
-
doPreExecute
protected boolean doPreExecute(org.opensaml.profile.context.ProfileRequestContext profileRequestContext) - Overrides:
doPreExecutein classnet.shibboleth.sp.profile.AbstractApplicationAction
-
doExecute
protected void doExecute(@Nonnull org.opensaml.profile.context.ProfileRequestContext profileRequestContext) - Overrides:
doExecutein classorg.opensaml.profile.action.AbstractProfileAction
-