Class ElementProxy

    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected java.lang.String baseURI
      Field baseURI
      protected static org.slf4j.Logger LOG  
      private static java.util.Map<java.lang.String,​java.lang.String> prefixMappings
      Field prefixMappings
      private org.w3c.dom.Document wrappedDoc
      Field doc
      private org.w3c.dom.Element wrappedElement
      What XML element does this ElementProxy instance wrap?
    • Constructor Summary

      Constructors 
      Constructor Description
      ElementProxy()
      Constructor ElementProxy
      ElementProxy​(org.w3c.dom.Document doc)
      Constructor ElementProxy
      ElementProxy​(org.w3c.dom.Element element, java.lang.String baseURI)
      Constructor ElementProxy
    • Method Summary

      All Methods Static Methods Instance Methods Abstract Methods Concrete Methods 
      Modifier and Type Method Description
      void addBase64Element​(byte[] bytes, java.lang.String localname)
      Method addBase64Element
      void addBase64Text​(byte[] bytes)
      Method addBase64Text
      void addBigIntegerElement​(java.math.BigInteger bi, java.lang.String localname)
      Method addBigIntegerElement
      protected void addReturnToSelf()  
      void addText​(java.lang.String text)
      Method addText
      void addTextElement​(java.lang.String text, java.lang.String localname)
      Method addTextElement
      protected void appendOther​(org.w3c.dom.Element parent, org.w3c.dom.Node toAppend)  
      protected void appendSelf​(ElementProxy toAppend)  
      protected void appendSelf​(org.w3c.dom.Node toAppend)  
      static org.w3c.dom.Element createElementForFamily​(org.w3c.dom.Document doc, java.lang.String namespace, java.lang.String localName)
      This method creates an Element in a given namespace with a given localname.
      protected org.w3c.dom.Element createElementForFamilyLocal​(java.lang.String namespace, java.lang.String localName)  
      protected org.w3c.dom.Text createText​(java.lang.String text)  
      abstract java.lang.String getBaseLocalName()
      Returns the localname of the Elements of the sub-class.
      abstract java.lang.String getBaseNamespace()
      Returns the namespace of the Elements of the sub-class.
      java.lang.String getBaseURI()
      Method getBaseURI
      java.math.BigInteger getBigIntegerFromChildElement​(java.lang.String localname, java.lang.String namespace)
      Method getVal
      byte[] getBytesFromTextChild()
      Method getBytesFromTextChild
      static java.lang.String getDefaultPrefix​(java.lang.String namespace)
      Method getDefaultPrefix
      org.w3c.dom.Document getDocument()
      Method getDocument
      org.w3c.dom.Element getElement()
      Returns the Element which was constructed by the Object.
      org.w3c.dom.NodeList getElementPlusReturns()
      Returns the Element plus a leading and a trailing CarriageReturn Text node.
      protected org.w3c.dom.Node getFirstChild()  
      protected java.lang.String getLocalAttribute​(java.lang.String attrName)  
      java.lang.String getTextFromChildElement​(java.lang.String localname, java.lang.String namespace)
      Method getTextFromChildElement
      java.lang.String getTextFromTextChild()
      Method getTextFromTextChild
      (package private) void guaranteeThatElementInCorrectSpace()
      Method guaranteeThatElementInCorrectSpace
      int length​(java.lang.String namespace, java.lang.String localname)
      Method length
      static void registerDefaultPrefixes()
      This method registers the default prefixes.
      static void setDefaultPrefix​(java.lang.String namespace, java.lang.String prefix)
      Method setDefaultPrefix
      protected void setDocument​(org.w3c.dom.Document doc)
      Set a new value for the wrapped document that this object is a proxy for.
      protected void setElement​(org.w3c.dom.Element elem)
      New value for the wrapped XML element that this object is a proxy for.
      void setElement​(org.w3c.dom.Element element, java.lang.String baseURI)
      Method setElement
      protected void setLocalAttribute​(java.lang.String attrName, java.lang.String value)  
      protected void setLocalIdAttribute​(java.lang.String attrName, java.lang.String value)  
      private static void setNamespacePrefix​(java.lang.String namespace, java.lang.String prefix)  
      void setXPathNamespaceContext​(java.lang.String prefix, java.lang.String uri)
      Adds an xmlns: definition to the Element.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • LOG

        protected static final org.slf4j.Logger LOG
      • wrappedElement

        private org.w3c.dom.Element wrappedElement
        What XML element does this ElementProxy instance wrap?
      • baseURI

        protected java.lang.String baseURI
        Field baseURI
      • wrappedDoc

        private org.w3c.dom.Document wrappedDoc
        Field doc
      • prefixMappings

        private static java.util.Map<java.lang.String,​java.lang.String> prefixMappings
        Field prefixMappings
    • Constructor Detail

      • ElementProxy

        public ElementProxy()
        Constructor ElementProxy
      • ElementProxy

        public ElementProxy​(org.w3c.dom.Document doc)
        Constructor ElementProxy
        Parameters:
        doc -
      • ElementProxy

        public ElementProxy​(org.w3c.dom.Element element,
                            java.lang.String baseURI)
                     throws XMLSecurityException
        Constructor ElementProxy
        Parameters:
        element -
        baseURI -
        Throws:
        XMLSecurityException
    • Method Detail

      • getBaseNamespace

        public abstract java.lang.String getBaseNamespace()
        Returns the namespace of the Elements of the sub-class.
        Returns:
        the namespace of the Elements of the sub-class.
      • getBaseLocalName

        public abstract java.lang.String getBaseLocalName()
        Returns the localname of the Elements of the sub-class.
        Returns:
        the localname of the Elements of the sub-class.
      • createElementForFamilyLocal

        protected org.w3c.dom.Element createElementForFamilyLocal​(java.lang.String namespace,
                                                                  java.lang.String localName)
      • createElementForFamily

        public static org.w3c.dom.Element createElementForFamily​(org.w3c.dom.Document doc,
                                                                 java.lang.String namespace,
                                                                 java.lang.String localName)
        This method creates an Element in a given namespace with a given localname. It uses the getDefaultPrefix(java.lang.String) method to decide whether a particular prefix is bound to that namespace.

        This method was refactored out of the constructor.
        Parameters:
        doc -
        namespace -
        localName -
        Returns:
        The element created.
      • setElement

        public void setElement​(org.w3c.dom.Element element,
                               java.lang.String baseURI)
                        throws XMLSecurityException
        Method setElement
        Parameters:
        element -
        baseURI -
        Throws:
        XMLSecurityException
      • getElement

        public final org.w3c.dom.Element getElement()
        Returns the Element which was constructed by the Object.
        Returns:
        the Element which was constructed by the Object.
      • getElementPlusReturns

        public final org.w3c.dom.NodeList getElementPlusReturns()
        Returns the Element plus a leading and a trailing CarriageReturn Text node.
        Returns:
        the Element which was constructed by the Object.
      • createText

        protected org.w3c.dom.Text createText​(java.lang.String text)
      • getDocument

        public org.w3c.dom.Document getDocument()
        Method getDocument
        Returns:
        the Document where this element is contained.
      • getBaseURI

        public java.lang.String getBaseURI()
        Method getBaseURI
        Returns:
        the base uri of the namespace of this element
      • addBigIntegerElement

        public void addBigIntegerElement​(java.math.BigInteger bi,
                                         java.lang.String localname)
        Method addBigIntegerElement
        Parameters:
        bi -
        localname -
      • addReturnToSelf

        protected void addReturnToSelf()
      • addBase64Element

        public void addBase64Element​(byte[] bytes,
                                     java.lang.String localname)
        Method addBase64Element
        Parameters:
        bytes -
        localname -
      • addTextElement

        public void addTextElement​(java.lang.String text,
                                   java.lang.String localname)
        Method addTextElement
        Parameters:
        text -
        localname -
      • addBase64Text

        public void addBase64Text​(byte[] bytes)
        Method addBase64Text
        Parameters:
        bytes -
      • appendSelf

        protected void appendSelf​(ElementProxy toAppend)
      • appendSelf

        protected void appendSelf​(org.w3c.dom.Node toAppend)
      • appendOther

        protected void appendOther​(org.w3c.dom.Element parent,
                                   org.w3c.dom.Node toAppend)
      • addText

        public void addText​(java.lang.String text)
        Method addText
        Parameters:
        text -
      • getBigIntegerFromChildElement

        public java.math.BigInteger getBigIntegerFromChildElement​(java.lang.String localname,
                                                                  java.lang.String namespace)
        Method getVal
        Parameters:
        localname -
        namespace -
        Returns:
        The biginteger contained in the given element
      • getTextFromChildElement

        public java.lang.String getTextFromChildElement​(java.lang.String localname,
                                                        java.lang.String namespace)
        Method getTextFromChildElement
        Parameters:
        localname -
        namespace -
        Returns:
        the Text of the textNode
      • getBytesFromTextChild

        public byte[] getBytesFromTextChild()
                                     throws XMLSecurityException
        Method getBytesFromTextChild
        Returns:
        The base64 bytes from the text children of this element
        Throws:
        XMLSecurityException
      • getTextFromTextChild

        public java.lang.String getTextFromTextChild()
        Method getTextFromTextChild
        Returns:
        the Text obtained by concatenating all the text nodes of this element
      • length

        public int length​(java.lang.String namespace,
                          java.lang.String localname)
        Method length
        Parameters:
        namespace -
        localname -
        Returns:
        the number of elements {namespace}:localname under this element
      • setXPathNamespaceContext

        public void setXPathNamespaceContext​(java.lang.String prefix,
                                             java.lang.String uri)
                                      throws XMLSecurityException
        Adds an xmlns: definition to the Element. This can be called as follows:
         // set namespace with ds prefix
         xpathContainer.setXPathNamespaceContext("ds", "http://www.w3.org/2000/09/xmldsig#");
         xpathContainer.setXPathNamespaceContext("xmlns:ds", "http://www.w3.org/2000/09/xmldsig#");
         
        Parameters:
        prefix -
        uri -
        Throws:
        XMLSecurityException
      • setDefaultPrefix

        public static void setDefaultPrefix​(java.lang.String namespace,
                                            java.lang.String prefix)
                                     throws XMLSecurityException
        Method setDefaultPrefix
        Parameters:
        namespace -
        prefix -
        Throws:
        XMLSecurityException
        java.lang.SecurityException - if a security manager is installed and the caller does not have permission to set the default prefix
      • getDefaultPrefix

        public static java.lang.String getDefaultPrefix​(java.lang.String namespace)
        Method getDefaultPrefix
        Parameters:
        namespace -
        Returns:
        the default prefix bind to this element.
      • setElement

        protected void setElement​(org.w3c.dom.Element elem)
        New value for the wrapped XML element that this object is a proxy for.
        Parameters:
        elem - New element
        See Also:
        getElement()
      • setDocument

        protected void setDocument​(org.w3c.dom.Document doc)
        Set a new value for the wrapped document that this object is a proxy for.
        Parameters:
        doc - New document object being wrapped.
        See Also:
        getDocument()
      • getLocalAttribute

        protected java.lang.String getLocalAttribute​(java.lang.String attrName)
      • setLocalAttribute

        protected void setLocalAttribute​(java.lang.String attrName,
                                         java.lang.String value)
      • setLocalIdAttribute

        protected void setLocalIdAttribute​(java.lang.String attrName,
                                           java.lang.String value)
      • getFirstChild

        protected org.w3c.dom.Node getFirstChild()