Class DOMX509Data

  • All Implemented Interfaces:
    javax.xml.crypto.dsig.keyinfo.X509Data, javax.xml.crypto.XMLStructure

    public final class DOMX509Data
    extends DOMStructure
    implements javax.xml.crypto.dsig.keyinfo.X509Data
    DOM-based implementation of X509Data.
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private java.security.cert.CertificateFactory cf  
      private java.util.List<java.lang.Object> content  
      • Fields inherited from interface javax.xml.crypto.dsig.keyinfo.X509Data

        RAW_X509_CERTIFICATE_TYPE, TYPE
    • Constructor Summary

      Constructors 
      Constructor Description
      DOMX509Data​(java.util.List<?> content)
      Creates a DOMX509Data.
      DOMX509Data​(org.w3c.dom.Element xdElem)
      Creates a DOMX509Data from an element.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      boolean equals​(java.lang.Object o)  
      java.util.List<java.lang.Object> getContent()  
      int hashCode()  
      void marshal​(org.w3c.dom.Node parent, java.lang.String dsPrefix, javax.xml.crypto.dom.DOMCryptoContext context)  
      private void marshalCert​(java.security.cert.X509Certificate cert, org.w3c.dom.Node parent, org.w3c.dom.Document doc, java.lang.String dsPrefix)  
      private void marshalCRL​(java.security.cert.X509CRL crl, org.w3c.dom.Node parent, org.w3c.dom.Document doc, java.lang.String dsPrefix)  
      private void marshalSKI​(byte[] skid, org.w3c.dom.Node parent, org.w3c.dom.Document doc, java.lang.String dsPrefix)  
      private void marshalSubjectName​(java.lang.String name, org.w3c.dom.Node parent, org.w3c.dom.Document doc, java.lang.String dsPrefix)  
      private java.io.ByteArrayInputStream unmarshalBase64Binary​(org.w3c.dom.Element elem)  
      private java.security.cert.X509Certificate unmarshalX509Certificate​(org.w3c.dom.Element elem)  
      private java.security.cert.X509CRL unmarshalX509CRL​(org.w3c.dom.Element elem)  
      • Methods inherited from class java.lang.Object

        clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
      • Methods inherited from interface javax.xml.crypto.XMLStructure

        isFeatureSupported
    • Field Detail

      • content

        private final java.util.List<java.lang.Object> content
      • cf

        private java.security.cert.CertificateFactory cf
    • Constructor Detail

      • DOMX509Data

        public DOMX509Data​(java.util.List<?> content)
        Creates a DOMX509Data.
        Parameters:
        content - a list of one or more X.509 data types. Valid types are String (subject names), byte[] (subject key ids), X509Certificate, X509CRL, or javax.xml.dsig.XMLStructure objects or elements from an external namespace). The list is defensively copied to protect against subsequent modification.
        Throws:
        java.lang.NullPointerException - if content is null
        java.lang.IllegalArgumentException - if content is empty
        java.lang.ClassCastException - if content contains any entries that are not of one of the valid types mentioned above
      • DOMX509Data

        public DOMX509Data​(org.w3c.dom.Element xdElem)
                    throws javax.xml.crypto.MarshalException
        Creates a DOMX509Data from an element.
        Parameters:
        xdElem - an X509Data element
        Throws:
        javax.xml.crypto.MarshalException - if there is an error while unmarshalling
    • Method Detail

      • getContent

        public java.util.List<java.lang.Object> getContent()
        Specified by:
        getContent in interface javax.xml.crypto.dsig.keyinfo.X509Data
      • marshal

        public void marshal​(org.w3c.dom.Node parent,
                            java.lang.String dsPrefix,
                            javax.xml.crypto.dom.DOMCryptoContext context)
                     throws javax.xml.crypto.MarshalException
        Specified by:
        marshal in class DOMStructure
        Throws:
        javax.xml.crypto.MarshalException
      • marshalSKI

        private void marshalSKI​(byte[] skid,
                                org.w3c.dom.Node parent,
                                org.w3c.dom.Document doc,
                                java.lang.String dsPrefix)
      • marshalSubjectName

        private void marshalSubjectName​(java.lang.String name,
                                        org.w3c.dom.Node parent,
                                        org.w3c.dom.Document doc,
                                        java.lang.String dsPrefix)
      • marshalCert

        private void marshalCert​(java.security.cert.X509Certificate cert,
                                 org.w3c.dom.Node parent,
                                 org.w3c.dom.Document doc,
                                 java.lang.String dsPrefix)
                          throws javax.xml.crypto.MarshalException
        Throws:
        javax.xml.crypto.MarshalException
      • marshalCRL

        private void marshalCRL​(java.security.cert.X509CRL crl,
                                org.w3c.dom.Node parent,
                                org.w3c.dom.Document doc,
                                java.lang.String dsPrefix)
                         throws javax.xml.crypto.MarshalException
        Throws:
        javax.xml.crypto.MarshalException
      • unmarshalX509Certificate

        private java.security.cert.X509Certificate unmarshalX509Certificate​(org.w3c.dom.Element elem)
                                                                     throws javax.xml.crypto.MarshalException
        Throws:
        javax.xml.crypto.MarshalException
      • unmarshalX509CRL

        private java.security.cert.X509CRL unmarshalX509CRL​(org.w3c.dom.Element elem)
                                                     throws javax.xml.crypto.MarshalException
        Throws:
        javax.xml.crypto.MarshalException
      • unmarshalBase64Binary

        private java.io.ByteArrayInputStream unmarshalBase64Binary​(org.w3c.dom.Element elem)
                                                            throws javax.xml.crypto.MarshalException
        Throws:
        javax.xml.crypto.MarshalException
      • equals

        public boolean equals​(java.lang.Object o)
        Overrides:
        equals in class java.lang.Object
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object