Package net.shibboleth.idp.attribute.resolver.dc.saml.plugin.impl

# Class CriteriaSelfEntityIDResolver

java.lang.Object
net.shibboleth.shared.component.AbstractInitializableComponent
net.shibboleth.idp.attribute.resolver.dc.saml.plugin.impl.CriteriaSelfEntityIDResolver

All Implemented Interfaces:
  `SelfEntityIDResolver`, `Component`, `DestructableComponent`, `InitializableComponent`

public class CriteriaSelfEntityIDResolver extends AbstractInitializableComponent implements SelfEntityIDResolver
An implementation of `SelfEntityIDResolver` which uses a delegated resolver based on an input `CriteriaSet`.

## Field Summary

Fields
Modifier and Type
Field
Description
`private org.slf4j.Logger`
`log`
Logger.
`private Resolver<String,CriteriaSet>`
`selfEntityIDResolver`
Resolver for the self entityID, based on the peer entity data.

## Constructor Summary

Constructors
Constructor
Description
`CriteriaSelfEntityIDResolver()`

## Method Summary

Modifier and Type
Method
Description
`protected void`
`doInitialize()`
`Resolver<String,CriteriaSet>`
`getSelfEntityIDResolver()`
Get the resolver for the self entityID.
`String`
`resolve(AttributeResolutionContext resolutionContext, Map<String,List<IdPAttributeValue>> dependencyAttributes, AttributeAuthorityDescriptor roleDescriptor)`
Resolve the self entity ID to use in query.
`void`
`setSelfEntityIDResolver(Resolver<String,CriteriaSet> resolver)`
Set the resolver for the self entityID.

### Methods inherited from class net.shibboleth.shared.component.AbstractInitializableComponent

`checkComponentActive, checkSetterPreconditions, destroy, doDestroy, ifDestroyedThrowDestroyedComponentException, ifInitializedThrowUnmodifiabledComponentException, ifNotInitializedThrowUninitializedComponentException, initialize, isDestroyed, isInitialized`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Field Details

### log

@Nonnull private org.slf4j.Logger log
Logger.

### selfEntityIDResolver

@NonnullAfterInit private Resolver<String,CriteriaSet> selfEntityIDResolver
Resolver for the self entityID, based on the peer entity data.

## Constructor Details

### CriteriaSelfEntityIDResolver

public CriteriaSelfEntityIDResolver()

## Method Details

### getSelfEntityIDResolver

@NonnullAfterInit public Resolver<String,CriteriaSet> getSelfEntityIDResolver()
Get the resolver for the self entityID.

Returns:
  the resolver

### setSelfEntityIDResolver

public void setSelfEntityIDResolver(@Nullable Resolver<String,CriteriaSet> resolver)
Set the resolver for the self entityID.

Parameters:
  `resolver` - the resolver instance

### doInitialize

protected void doInitialize() throws ComponentInitializationException

Overrides:
  `doInitialize` in class `AbstractInitializableComponent`
Throws:
  `ComponentInitializationException`

### resolve

@Nullable public String resolve(@Nonnull AttributeResolutionContext resolutionContext, @Nonnull Map<String,List<IdPAttributeValue>> dependencyAttributes, @Nonnull AttributeAuthorityDescriptor roleDescriptor) throws ResolutionException
Resolve the self entity ID to use in query.

Specified by:
  `resolve` in interface `SelfEntityIDResolver`
Parameters:
  `resolutionContext` - the attribute resolution context in effect for the query
  `dependencyAttributes` - the dependency attributes in effect for the query
  `roleDescriptor` - the attribute authority role descriptor for the query
Returns:
  the entity ID, may be null
Throws:
  `ResolutionException` - if there is a fatal error during processing