Class ContextDerivedAttributeDefinition
- java.lang.Object
-
- net.shibboleth.utilities.java.support.component.AbstractInitializableComponent
-
- net.shibboleth.utilities.java.support.component.AbstractIdentifiedInitializableComponent
-
- net.shibboleth.utilities.java.support.component.AbstractIdentifiableInitializableComponent
-
- net.shibboleth.idp.attribute.resolver.AbstractResolverPlugin<IdPAttribute>
-
- net.shibboleth.idp.attribute.resolver.AbstractAttributeDefinition
-
- net.shibboleth.idp.attribute.resolver.ad.impl.ContextDerivedAttributeDefinition
-
- All Implemented Interfaces:
AttributeDefinition,ResolverPlugin<IdPAttribute>,Component,DestructableComponent,IdentifiableComponent,IdentifiedComponent,InitializableComponent,UnmodifiableComponent,DisposableBean
public class ContextDerivedAttributeDefinition extends AbstractAttributeDefinition
An attribute definition which returns an attribute whose values are derived from theProfileRequestContextassociated with the request via a plugged inFunction.
-
-
Field Summary
Fields Modifier and Type Field Description private Function<ProfileRequestContext,List<IdPAttributeValue>>attributeValuesFunctionFunction used to generate the values associated with theProfileRequestContextThe function returns null or an empty list if the context isn't relevant.private org.slf4j.LoggerlogLogger.private Function<AttributeResolutionContext,ProfileRequestContext>prcLookupStrategyStrategy used to locate theProfileRequestContextto use.
-
Constructor Summary
Constructors Constructor Description ContextDerivedAttributeDefinition()Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected IdPAttributedoAttributeDefinitionResolve(AttributeResolutionContext resolutionContext, AttributeResolverWorkContext workContext)protected voiddoInitialize()voidsetAttributeValuesFunction(Function<ProfileRequestContext,List<IdPAttributeValue>> function)Sets the attribute value function.voidsetProfileRequestContextLookupStrategy(Function<AttributeResolutionContext,ProfileRequestContext> strategy)Set the strategy used to locate theProfileRequestContextassociated with a givenAttributeResolutionContext.-
Methods inherited from class net.shibboleth.idp.attribute.resolver.AbstractAttributeDefinition
doResolve, getLogPrefix, isDependencyOnly, isPreRequested, setDependencyOnly, setPreRequested
-
Methods inherited from class net.shibboleth.idp.attribute.resolver.AbstractResolverPlugin
addDisplayInformation, doDestroy, equals, getActivationCondition, getAttributeDependencies, getDataConnectorDependencies, getProfileContextStrategy, hashCode, isPropagateResolutionExceptions, isSuppressDisplayInformation, resolve, setActivationCondition, setAttributeDependencies, setDataConnectorDependencies, setProfileContextStrategy, setPropagateResolutionExceptions, setSuppressDisplayInformation
-
Methods inherited from class net.shibboleth.utilities.java.support.component.AbstractIdentifiableInitializableComponent
setId
-
Methods inherited from class net.shibboleth.utilities.java.support.component.AbstractIdentifiedInitializableComponent
getId
-
Methods inherited from class net.shibboleth.utilities.java.support.component.AbstractInitializableComponent
destroy, initialize, isDestroyed, isInitialized
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface net.shibboleth.utilities.java.support.component.DestructableComponent
destroy, isDestroyed
-
Methods inherited from interface org.springframework.beans.factory.DisposableBean
destroy
-
Methods inherited from interface net.shibboleth.utilities.java.support.component.IdentifiedComponent
getId
-
Methods inherited from interface net.shibboleth.utilities.java.support.component.InitializableComponent
initialize, isInitialized
-
Methods inherited from interface net.shibboleth.idp.attribute.resolver.ResolverPlugin
getActivationCondition, getAttributeDependencies, getDataConnectorDependencies, isPropagateResolutionExceptions, resolve
-
-
-
-
Field Detail
-
log
@Nonnull private final org.slf4j.Logger log
Logger.
-
prcLookupStrategy
@Nonnull private Function<AttributeResolutionContext,ProfileRequestContext> prcLookupStrategy
Strategy used to locate theProfileRequestContextto use.
-
attributeValuesFunction
@NonnullAfterInit private Function<ProfileRequestContext,List<IdPAttributeValue>> attributeValuesFunction
Function used to generate the values associated with theProfileRequestContextThe function returns null or an empty list if the context isn't relevant.
-
-
Method Detail
-
setProfileRequestContextLookupStrategy
public void setProfileRequestContextLookupStrategy(@Nonnull Function<AttributeResolutionContext,ProfileRequestContext> strategy)Set the strategy used to locate theProfileRequestContextassociated with a givenAttributeResolutionContext.- Parameters:
strategy- strategy used to locate theProfileRequestContextassociated with a givenAttributeResolutionContext
-
setAttributeValuesFunction
public void setAttributeValuesFunction(@Nonnull Function<ProfileRequestContext,List<IdPAttributeValue>> function)Sets the attribute value function.- Parameters:
function- what to set.
-
doInitialize
protected void doInitialize() throws ComponentInitializationException- Overrides:
doInitializein classAbstractAttributeDefinition- Throws:
ComponentInitializationException
-
doAttributeDefinitionResolve
@Nullable protected IdPAttribute doAttributeDefinitionResolve(@Nonnull AttributeResolutionContext resolutionContext, @Nonnull AttributeResolverWorkContext workContext) throws ResolutionException
- Specified by:
doAttributeDefinitionResolvein classAbstractAttributeDefinition- Throws:
ResolutionException
-
-