Class ChainingEncryptedKeyResolver
- java.lang.Object
-
- org.opensaml.xmlsec.encryption.support.AbstractEncryptedKeyResolver
-
- org.opensaml.xmlsec.encryption.support.ChainingEncryptedKeyResolver
-
- All Implemented Interfaces:
EncryptedKeyResolver
public class ChainingEncryptedKeyResolver extends AbstractEncryptedKeyResolver
An implementation ofEncryptedKeyResolverwhich chains multiple other resolver implementations together, calling them in the order specified in the resolver list.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description classChainingEncryptedKeyResolver.ChainingIterableImplementation ofIterableto be returned byChainingEncryptedKeyResolver.classChainingEncryptedKeyResolver.ChainingIteratorImplementation ofIteratorto be (indirectly) returned byChainingEncryptedKeyResolver.
-
Field Summary
Fields Modifier and Type Field Description private org.slf4j.LoggerlogClass logger.private List<EncryptedKeyResolver>resolversThe list of resolvers which form the resolution chain.
-
Constructor Summary
Constructors Constructor Description ChainingEncryptedKeyResolver(List<EncryptedKeyResolver> encKeyResolvers)Constructor.ChainingEncryptedKeyResolver(List<EncryptedKeyResolver> encKeyResolvers, String recipient)Constructor.ChainingEncryptedKeyResolver(List<EncryptedKeyResolver> encKeyResolvers, Set<String> recipients)Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description List<EncryptedKeyResolver>getResolverChain()Get the unmodifiable list of resolvers which form the resolution chain.Iterable<EncryptedKey>resolve(EncryptedData encryptedData)Resolve the EncryptedKey elements containing the data encryption key used to encrypt the specified EncryptedData element.-
Methods inherited from class org.opensaml.xmlsec.encryption.support.AbstractEncryptedKeyResolver
getRecipients, matchCarriedKeyName, matchDataReference, matchRecipient
-
-
-
-
Field Detail
-
resolvers
@Nonnull @NonnullElements private final List<EncryptedKeyResolver> resolvers
The list of resolvers which form the resolution chain.
-
log
@Nonnull private final org.slf4j.Logger log
Class logger.
-
-
Constructor Detail
-
ChainingEncryptedKeyResolver
public ChainingEncryptedKeyResolver(@Nonnull @NonnullElements @ParameterName(name="encKeyResolvers") List<EncryptedKeyResolver> encKeyResolvers)Constructor.- Parameters:
encKeyResolvers- the chain of encrypted key resolvers
-
ChainingEncryptedKeyResolver
public ChainingEncryptedKeyResolver(@Nonnull @NonnullElements @ParameterName(name="encKeyResolvers") List<EncryptedKeyResolver> encKeyResolvers, @Nullable @ParameterName(name="recipients") Set<String> recipients)Constructor.- Parameters:
encKeyResolvers- the chain of encrypted key resolversrecipients- the set of recipients
-
ChainingEncryptedKeyResolver
public ChainingEncryptedKeyResolver(@Nonnull @NonnullElements @ParameterName(name="encKeyResolvers") List<EncryptedKeyResolver> encKeyResolvers, @Nullable @ParameterName(name="recipient") String recipient)Constructor.- Parameters:
encKeyResolvers- the chain of encrypted key resolversrecipient- the recipient
-
-
Method Detail
-
getResolverChain
@Nonnull @NonnullElements @Unmodifiable @NotLive public List<EncryptedKeyResolver> getResolverChain()
Get the unmodifiable list of resolvers which form the resolution chain.- Returns:
- a list of EncryptedKeyResolver instances
-
resolve
@Nonnull public Iterable<EncryptedKey> resolve(@Nonnull EncryptedData encryptedData)
Resolve the EncryptedKey elements containing the data encryption key used to encrypt the specified EncryptedData element.- Parameters:
encryptedData- the EncryptedData element context in which to resolve- Returns:
- an iterable of EncryptedKey elements
-
-