Class SimpleKeyInfoReferenceEncryptedKeyResolver

    • Field Detail

      • log

        @Nonnull
        private final org.slf4j.Logger log
        Class logger.
      • depthLimit

        private int depthLimit
        Number of times to follow a reference before failing.
    • Constructor Detail

      • SimpleKeyInfoReferenceEncryptedKeyResolver

        public SimpleKeyInfoReferenceEncryptedKeyResolver()
        Constructor.
      • SimpleKeyInfoReferenceEncryptedKeyResolver

        public SimpleKeyInfoReferenceEncryptedKeyResolver​(@Nullable
                                                          Set<String> recipients)
        Constructor.
        Parameters:
        recipients - the set of recipients
      • SimpleKeyInfoReferenceEncryptedKeyResolver

        public SimpleKeyInfoReferenceEncryptedKeyResolver​(@Nullable
                                                          String recipient)
        Constructor.
        Parameters:
        recipient - the recipient
    • Method Detail

      • getDepthLimit

        public int getDepthLimit()
        Gets the reference depth limit.
        Returns:
        the depth limit
      • setDepthLimit

        public void setDepthLimit​(int limit)
        Sets the reference depth limit, to a minimum of 1.
        Parameters:
        limit - limit to set
      • 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
      • resolveKeyInfo

        @Nonnull
        protected Iterable<EncryptedKey> resolveKeyInfo​(@Nullable
                                                        KeyInfo keyInfo,
                                                        int limit)
        Turn a KeyInfo into an EncryptedKey collection.
        Parameters:
        keyInfo - KeyInfo to process
        limit - depth of references to follow
        Returns:
        encrypted keys
      • dereferenceURI

        @Nullable
        protected KeyInfo dereferenceURI​(@Nonnull
                                         KeyInfoReference ref)
        Dereference the URI attribute of the specified retrieval method into a KeyInfo.
        Parameters:
        ref - the KeyInfoReference to process
        Returns:
        the dereferenced KeyInfo