Class AbstractConsentStorageAction
java.lang.Object
net.shibboleth.utilities.java.support.component.AbstractInitializableComponent
org.opensaml.profile.action.AbstractProfileAction
org.opensaml.profile.action.AbstractConditionalProfileAction
net.shibboleth.idp.profile.AbstractProfileAction
net.shibboleth.idp.profile.interceptor.AbstractProfileInterceptorAction
net.shibboleth.idp.consent.flow.impl.AbstractConsentAction
net.shibboleth.idp.consent.flow.storage.impl.AbstractConsentStorageAction
- All Implemented Interfaces:
Component
,DestructableComponent
,InitializableComponent
,ProfileAction
,Aware
,MessageSource
,MessageSourceAware
,Action
- Direct Known Subclasses:
AbstractConsentIndexedStorageAction
,ReadConsentFromStorage
,UpdateCounter
Base class for consent actions which interact with a
StorageService
.
This action ensures that the storage service, serializer, storageContext, and storageKey are available.
The storage service is provided by the profile interceptor flow descriptor.
The storage serializer defaults to a ConsentSerializer
.
The storage context defaults to the flow ID provided by a FlowIdLookupFunction
.- Precondition:
InterceptorContext.getAttemptedFlow() != null
,FlowDescriptor.getStorageService() != null
,StorageSerializer != null
,StorageContextLookupStrategy != null
,StorageKeyLookupStrategy != null
,storageContextLookupStrategy.apply(profileRequestContext) != null
,storageKeyLookupStrategy.apply(profileRequestContext) != null
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final org.slf4j.Logger
Class logger.private String
Storage context resulting from lookup strategy.private Function<ProfileRequestContext,
String> Strategy used to determine the storage context.private String
Storage key resulting from lookup strategy.private Function<ProfileRequestContext,
String> Strategy used to determine the storage key.private StorageSerializer<Map<String,
Consent>> Storage serializer.private StorageService
Storage service from theProfileInterceptorFlowDescriptor
. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected void
protected boolean
doPreExecute
(ProfileRequestContext profileRequestContext, ProfileInterceptorContext interceptorContext) Performs this profile interceptor action's pre-execute step.Get the storage context resulting from applying the storage context lookup strategy.Get the storage context lookup strategy.Get the storage key resulting from applying the storage key lookup strategy.Get the storage key lookup strategy.Get the storage serializer.Get the storage service from theProfileInterceptorFlowDescriptor
.void
Set the storage context lookup strategy.void
Set the storage key lookup strategy.void
setStorageSerializer
(StorageSerializer<Map<String, Consent>> serializer) Set the storage serializer.Methods inherited from class net.shibboleth.idp.consent.flow.impl.AbstractConsentAction
getConsentContext, getConsentFlowDescriptor, setConsentContextLookupStrategy
Methods inherited from class net.shibboleth.idp.profile.interceptor.AbstractProfileInterceptorAction
doExecute, doExecute, doPreExecute, setLookupStrategy
Methods inherited from class net.shibboleth.idp.profile.AbstractProfileAction
doExecute, execute, getBean, getBean, getMessage, getMessage, getMessage, getParameter, getParameter, getProfileContextLookupStrategy, getRequestContext, getResult, setMessageSource, setProfileContextLookupStrategy
Methods inherited from class org.opensaml.profile.action.AbstractConditionalProfileAction
getActivationCondition, setActivationCondition
Methods inherited from class org.opensaml.profile.action.AbstractProfileAction
doPostExecute, doPostExecute, execute, getHttpServletRequest, getHttpServletRequestSupplier, getHttpServletResponse, getHttpServletResponseSupplier, getLogPrefix, setHttpServletRequest, setHttpServletRequestSupplier, setHttpServletResponse, setHttpServletResponseSupplier
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 Details
-
log
@Nonnull private final org.slf4j.Logger logClass logger. -
storageContextLookupStrategy
Strategy used to determine the storage context. -
storageKeyLookupStrategy
Strategy used to determine the storage key. -
storageSerializer
Storage serializer. -
storageService
Storage service from theProfileInterceptorFlowDescriptor
. -
storageContext
Storage context resulting from lookup strategy. -
storageKey
Storage key resulting from lookup strategy.
-
-
Constructor Details
-
AbstractConsentStorageAction
public AbstractConsentStorageAction()Constructor.
-
-
Method Details
-
getStorageContextLookupStrategy
Get the storage context lookup strategy.- Returns:
- the storage context lookup strategy
-
getStorageKeyLookupStrategy
Get the storage key lookup strategy.- Returns:
- the storage key lookup strategy
-
getStorageSerializer
Get the storage serializer.- Returns:
- the storage serializer
-
setStorageSerializer
Set the storage serializer.- Parameters:
serializer
- storage serializer
-
setStorageContextLookupStrategy
public void setStorageContextLookupStrategy(@Nonnull Function<ProfileRequestContext, String> strategy) Set the storage context lookup strategy.- Parameters:
strategy
- the storage context lookup strategy
-
setStorageKeyLookupStrategy
Set the storage key lookup strategy.- Parameters:
strategy
- the storage key lookup strategy
-
getStorageService
Get the storage service from theProfileInterceptorFlowDescriptor
.- Returns:
- the storage service
-
getStorageContext
Get the storage context resulting from applying the storage context lookup strategy.- Returns:
- the storage context
-
getStorageKey
Get the storage key resulting from applying the storage key lookup strategy.- Returns:
- the storage key
-
doInitialize
- Overrides:
doInitialize
in classAbstractInitializableComponent
- Throws:
ComponentInitializationException
-
doPreExecute
protected boolean doPreExecute(@Nonnull ProfileRequestContext profileRequestContext, @Nonnull ProfileInterceptorContext interceptorContext) Performs this profile interceptor action's pre-execute step. Default implementation returns true.- Overrides:
doPreExecute
in classAbstractConsentAction
- Parameters:
profileRequestContext
- the current profile request contextinterceptorContext
- the current profile interceptor context- Returns:
- true iff execution should continue
-