Class AbstractAttributeReleaseAction
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.ar.impl.AbstractAttributeReleaseAction
- All Implemented Interfaces:
Component
,DestructableComponent
,InitializableComponent
,ProfileAction
,Aware
,MessageSource
,MessageSourceAware
,Action
- Direct Known Subclasses:
PopulateAttributeReleaseContext
,ReleaseAttributes
public abstract class AbstractAttributeReleaseAction extends AbstractConsentAction
Base class for attribute release consent actions.
Ensures that
- an
AttributeReleaseContext
is available from theProfileRequestContext
- the interceptor attempted flow is an
AttributeReleaseFlowDescriptor
- an
AttributeContext
is available from theProfileRequestContext
- Event:
EventIds.PROCEED_EVENT_ID
,EventIds.INVALID_PROFILE_CTX
,IdPEventIds.INVALID_ATTRIBUTE_CTX
- Precondition:
- See above.
-
Field Summary
Fields Modifier and Type Field Description private AttributeContext
attributeContext
TheAttributeContext
to operate on.private Function<ProfileRequestContext,AttributeContext>
attributeContextLookupStrategy
Strategy used to find theAttributeContext
from theProfileRequestContext
.private AttributeReleaseContext
attributeReleaseContext
TheAttributeReleaseContext
to operate on.private Function<ProfileRequestContext,AttributeReleaseContext>
attributeReleaseContextLookupStrategy
Strategy used to find theAttributeReleaseContext
from theProfileRequestContext
.private AttributeReleaseFlowDescriptor
attributeReleaseFlowDescriptor
The attribute consent flow descriptor.private org.slf4j.Logger
log
Class logger. -
Constructor Summary
Constructors Constructor Description AbstractAttributeReleaseAction()
Constructor. -
Method Summary
Modifier and Type Method Description protected boolean
doPreExecute(ProfileRequestContext profileRequestContext, ProfileInterceptorContext interceptorContext)
Performs this profile interceptor action's pre-execute step.AttributeContext
getAttributeContext()
Get the attribute context.AttributeReleaseContext
getAttributeReleaseContext()
Get the attribute release context.AttributeReleaseFlowDescriptor
getAttributeReleaseFlowDescriptor()
Get the attribute release flow descriptor.void
setAttributeContextLookupStrategy(Function<ProfileRequestContext,AttributeContext> strategy)
Set the attribute context lookup strategy.void
setAttributeReleaseContextLookupStrategy(Function<ProfileRequestContext,AttributeReleaseContext> strategy)
Set the attribute release context lookup strategy.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, getMessage, getMessage, getMessage, 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, getHttpServletResponse, getLogPrefix, setHttpServletRequest, setHttpServletResponse
Methods inherited from class net.shibboleth.utilities.java.support.component.AbstractInitializableComponent
destroy, doDestroy, doInitialize, 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. -
attributeReleaseContext
TheAttributeReleaseContext
to operate on. -
attributeReleaseContextLookupStrategy
@Nonnull private Function<ProfileRequestContext,AttributeReleaseContext> attributeReleaseContextLookupStrategyStrategy used to find theAttributeReleaseContext
from theProfileRequestContext
. -
attributeReleaseFlowDescriptor
The attribute consent flow descriptor. -
attributeContext
TheAttributeContext
to operate on. -
attributeContextLookupStrategy
Strategy used to find theAttributeContext
from theProfileRequestContext
.
-
-
Constructor Details
-
AbstractAttributeReleaseAction
public AbstractAttributeReleaseAction()Constructor.
-
-
Method Details
-
setAttributeContextLookupStrategy
public void setAttributeContextLookupStrategy(Function<ProfileRequestContext,AttributeContext> strategy)Set the attribute context lookup strategy.- Parameters:
strategy
- the attribute context lookup strategy
-
setAttributeReleaseContextLookupStrategy
public void setAttributeReleaseContextLookupStrategy(@Nonnull Function<ProfileRequestContext,AttributeReleaseContext> strategy)Set the attribute release context lookup strategy.- Parameters:
strategy
- the attribute release context lookup strategy
-
getAttributeReleaseContext
Get the attribute release context.- Returns:
- the attribute release context
-
getAttributeReleaseFlowDescriptor
Get the attribute release flow descriptor.- Returns:
- the attribute release flow descriptor
-
getAttributeContext
Get the attribute context.- Returns:
- the attribute context
-
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
-