public class BasicRoleDescriptorResolver extends net.shibboleth.utilities.java.support.component.AbstractIdentifiedInitializableComponent implements RoleDescriptorResolver
RoleDescriptorResolver
which wraps an instance of MetadataResolver
to
support basic EntityDescriptor resolution, and then performs further role-related filtering over the
returned EntityDescriptor.Constructor and Description |
---|
BasicRoleDescriptorResolver(MetadataResolver mdResolver)
Constructor.
|
Modifier and Type | Method and Description |
---|---|
protected EntityDescriptor |
doGetEntityDescriptor(String entityID)
Resolve an entity descriptor based on entityID using the wrapped metadata resolver.
|
protected List<RoleDescriptor> |
doGetRole(String entityID,
QName roleName)
Gets the identified roles from an EntityDescriptor.
|
protected RoleDescriptor |
doGetRole(String entityID,
QName roleName,
String supportedProtocol)
Gets the role which supports the given protocol.
|
protected List<RoleDescriptor> |
getRole(String entityID,
QName roleName)
Get role descriptors for a given entityID and role.
|
protected RoleDescriptor |
getRole(String entityID,
QName roleName,
String supportedProtocol)
Get role descriptor for a given entityID and role and protocol.
|
boolean |
isRequireValidMetadata()
Gets whether the metadata returned by queries must be valid.
|
protected boolean |
isValid(XMLObject descriptor)
Returns whether the given descriptor is valid.
|
Iterable<RoleDescriptor> |
resolve(net.shibboleth.utilities.java.support.resolver.CriteriaSet criteria) |
RoleDescriptor |
resolveSingle(net.shibboleth.utilities.java.support.resolver.CriteriaSet criteria) |
void |
setRequireValidMetadata(boolean require)
Sets whether the metadata returned by queries must be valid.
|
doInitialize, getId, setId
destroy, doDestroy, initialize, isDestroyed, isInitialized
public BasicRoleDescriptorResolver(@Nonnull MetadataResolver mdResolver)
mdResolver
- the resolver of EntityDescriptorspublic boolean isRequireValidMetadata()
isRequireValidMetadata
in interface RoleDescriptorResolver
public void setRequireValidMetadata(boolean require)
setRequireValidMetadata
in interface RoleDescriptorResolver
require
- whether the metadata returned by queries must be valid@Nullable public RoleDescriptor resolveSingle(net.shibboleth.utilities.java.support.resolver.CriteriaSet criteria) throws net.shibboleth.utilities.java.support.resolver.ResolverException
resolveSingle
in interface net.shibboleth.utilities.java.support.resolver.Resolver<RoleDescriptor,net.shibboleth.utilities.java.support.resolver.CriteriaSet>
net.shibboleth.utilities.java.support.resolver.ResolverException
@Nonnull public Iterable<RoleDescriptor> resolve(net.shibboleth.utilities.java.support.resolver.CriteriaSet criteria) throws net.shibboleth.utilities.java.support.resolver.ResolverException
resolve
in interface net.shibboleth.utilities.java.support.resolver.Resolver<RoleDescriptor,net.shibboleth.utilities.java.support.resolver.CriteriaSet>
net.shibboleth.utilities.java.support.resolver.ResolverException
@Nonnull @NonnullElements protected List<RoleDescriptor> getRole(@Nullable String entityID, @Nullable QName roleName) throws net.shibboleth.utilities.java.support.resolver.ResolverException
entityID
- entityID to lookuproleName
- role to lookupnet.shibboleth.utilities.java.support.resolver.ResolverException
- if an error occurs@Nonnull @NonnullElements protected List<RoleDescriptor> doGetRole(@Nullable String entityID, @Nullable QName roleName) throws net.shibboleth.utilities.java.support.resolver.ResolverException
entityID
- ID of the entity from which to retrieve the roles, never nullroleName
- name of the roles to search for, never nullnet.shibboleth.utilities.java.support.resolver.ResolverException
- thrown if there is a problem searching for the rolesprotected EntityDescriptor doGetEntityDescriptor(String entityID) throws net.shibboleth.utilities.java.support.resolver.ResolverException
entityID
- the entityID of the EntityDescriptor to resolve.net.shibboleth.utilities.java.support.resolver.ResolverException
- if there is a problem resolving the EntityDescriptor@Nullable protected RoleDescriptor getRole(@Nullable String entityID, @Nullable QName roleName, @Nullable String supportedProtocol) throws net.shibboleth.utilities.java.support.resolver.ResolverException
entityID
- entityID to lookuproleName
- role to lookupsupportedProtocol
- protocol to lookupnet.shibboleth.utilities.java.support.resolver.ResolverException
- if an error occursprotected RoleDescriptor doGetRole(String entityID, QName roleName, String supportedProtocol) throws net.shibboleth.utilities.java.support.resolver.ResolverException
entityID
- ID of the entity from which to retrieve roles, never nullroleName
- name of the role to search for, never nullsupportedProtocol
- protocol to search for, never nullnet.shibboleth.utilities.java.support.resolver.ResolverException
- thrown if there is a problem search for the rolesprotected boolean isValid(XMLObject descriptor)
descriptor
- the descriptor to checkCopyright © 2016. All rights reserved.