Class AbstractEncryptedKeyResolver

java.lang.Object
org.opensaml.xmlsec.encryption.support.AbstractEncryptedKeyResolver
All Implemented Interfaces:
EncryptedKeyResolver
Direct Known Subclasses:
ChainingEncryptedKeyResolver, EncryptedElementTypeEncryptedKeyResolver, InlineEncryptedKeyResolver, SimpleKeyInfoReferenceEncryptedKeyResolver, SimpleRetrievalMethodEncryptedKeyResolver

public abstract class AbstractEncryptedKeyResolver extends Object implements EncryptedKeyResolver
Abstract class implementation for EncryptedKeyResolver.
  • Field Details

    • recipients

      private final Set<String> recipients
      Recipient attribute criteria against which to match.
  • Constructor Details

    • AbstractEncryptedKeyResolver

      public AbstractEncryptedKeyResolver()
      Constructor.
    • AbstractEncryptedKeyResolver

      public AbstractEncryptedKeyResolver(@Nullable Set<String> newRecipents)
      Constructor.
      Parameters:
      newRecipents - set of recipients
    • AbstractEncryptedKeyResolver

      public AbstractEncryptedKeyResolver(@Nullable String recipient)
      Constructor.
      Parameters:
      recipient - the recipient
  • Method Details

    • getRecipients

      @Nonnull @NonnullElements @Unmodifiable @NotLive public Set<String> getRecipients()
      Get the set of recipient criteria used by this resolver, and against which a candidate EncryptedKey's Recipient attribute is evaluated.
      Specified by:
      getRecipients in interface EncryptedKeyResolver
      Returns:
      the collection of recipient criteria
    • matchRecipient

      protected boolean matchRecipient(@Nullable String recipient)
      Evaluate whether the specified recipient attribute value matches this resolver's recipient criteria.
      Parameters:
      recipient - the recipient value to evaluate
      Returns:
      true if the recipient value matches the resolver's criteria, false otherwise
    • matchCarriedKeyName

      protected boolean matchCarriedKeyName(@Nonnull EncryptedData encryptedData, @Nonnull EncryptedKey encryptedKey)
      Evaluate whether an EncryptedKey's CarriedKeyName matches one of the KeyName values from the EncryptedData context.
      Parameters:
      encryptedData - the EncryptedData context
      encryptedKey - the candidate Encryptedkey to evaluate
      Returns:
      true if the encrypted key's carried key name matches that of the encrytped data, false otherwise
    • matchDataReference

      protected boolean matchDataReference(@Nonnull EncryptedData encryptedData, @Nonnull EncryptedKey encryptedKey)
      Evaluate whether any of the EncryptedKey's DataReferences refer to the EncryptedData context.
      Parameters:
      encryptedData - the EncryptedData context
      encryptedKey - the candidate Encryptedkey to evaluate
      Returns:
      true if any of the encrypted key's data references refer to the encrypted data context, false otherwise