Interface ResolverPlugin<ResolvedType>
- Type Parameters:
ResolvedType
- object type this plug-in resolves to
- All Superinterfaces:
Component
,DestructableComponent
,IdentifiedComponent
,InitializableComponent
,UnmodifiableComponent
- All Known Subinterfaces:
AttributeDefinition
,DataConnector
- All Known Implementing Classes:
AbstractAttributeDefinition
,AbstractDataConnector
,AbstractPersistentIdDataConnector
,AbstractResolverPlugin
,AbstractSearchDataConnector
,ContextDerivedAttributeDefinition
,DecryptedAttributeDefinition
,HTTPDataConnector
,LDAPDataConnector
,MappedAttributeDefinition
,PairwiseIdDataConnector
,PrescopedAttributeDefinition
,PrincipalNameAttributeDefinition
,RDBMSDataConnector
,RegexSplitAttributeDefinition
,ResolvedAttributeDefinition
,ResolvedDataConnector
,SAML1NameIdentifierAttributeDefinition
,SAML2NameIDAttributeDefinition
,ScopedAttributeDefinition
,ScriptedAttributeDefinition
,ScriptedDataConnector
,SimpleAttributeDefinition
,StaticAttributeDefinition
,StaticDataConnector
,StorageServiceDataConnector
,SubjectDataConnector
,TemplateAttributeDefinition
@ThreadSafe
public interface ResolverPlugin<ResolvedType>
extends UnmodifiableComponent, InitializableComponent, DestructableComponent, IdentifiedComponent
Interface defining the base work done by all plugins used within attribute resolution.
-
Method Summary
Modifier and TypeMethodDescriptionGet the predicate which defines whether this plugin is active for a given request.Get the unmodifiable list of attribute dependencies for this plugin.Get the unmodifiable list of data connector dependencies for this plugin.boolean
Get whether aResolutionException
that occurred resolving attributes will be re-thrown.resolve
(AttributeResolutionContext resolutionContext) Perform the attribute resolution for this plugin.Methods inherited from interface net.shibboleth.utilities.java.support.component.DestructableComponent
destroy, isDestroyed
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
-
Method Details
-
isPropagateResolutionExceptions
boolean isPropagateResolutionExceptions()Get whether aResolutionException
that occurred resolving attributes will be re-thrown. Doing so will cause the entire attribute resolution request to fail.- Returns:
- true if
ResolutionException
s are propagated, false if not
-
getActivationCondition
Get the predicate which defines whether this plugin is active for a given request.- Returns:
- the predicate.
-
getAttributeDependencies
@NonnullAfterInit @NonnullElements @Unmodifiable Set<ResolverAttributeDefinitionDependency> getAttributeDependencies()Get the unmodifiable list of attribute dependencies for this plugin.- Returns:
- unmodifiable list of attribute dependencies for this plugin, never null
-
getDataConnectorDependencies
@NonnullAfterInit @NonnullElements @Unmodifiable Set<ResolverDataConnectorDependency> getDataConnectorDependencies()Get the unmodifiable list of data connector dependencies for this plugin.- Returns:
- unmodifiable list of data connector dependencies for this plugin, never null
-
resolve
@Nullable ResolvedType resolve(@Nonnull AttributeResolutionContext resolutionContext) throws ResolutionException Perform the attribute resolution for this plugin.- Parameters:
resolutionContext
- current attribute resolution context- Returns:
- the attributes made available by the resolution, or null if no attributes were resolved
- Throws:
ResolutionException
- thrown if there was a problem resolving the attributes
-