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,AbstractResolverPlugin,AbstractSearchDataConnector,ContextDerivedAttributeDefinition,DateTimeAttributeDefinition,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.booleanGet whether aResolutionExceptionthat 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, isDestroyedMethods inherited from interface net.shibboleth.utilities.java.support.component.IdentifiedComponent
getIdMethods inherited from interface net.shibboleth.utilities.java.support.component.InitializableComponent
initialize, isInitialized
-
Method Details
-
isPropagateResolutionExceptions
boolean isPropagateResolutionExceptions()Get whether aResolutionExceptionthat occurred resolving attributes will be re-thrown. Doing so will cause the entire attribute resolution request to fail.- Returns:
- true if
ResolutionExceptions 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
-