Class ElementProxy

java.lang.Object
org.apache.xml.security.utils.ElementProxy
Direct Known Subclasses:
EncryptionElementProxy, InclusiveNamespaces, Signature11ElementProxy, SignatureElementProxy, XPath2FilterContainer, XPath2FilterContainer04, XPathFilterCHGPContainer

public abstract class ElementProxy extends Object
This is the base class to all Objects which have a direct 1:1 mapping to an Element in a particular namespace.
  • Field Details

    • LOG

      protected static final org.slf4j.Logger LOG
    • baseURI

      protected String baseURI
      Field baseURI
  • Constructor Details

    • ElementProxy

      public ElementProxy()
      Constructor ElementProxy
    • ElementProxy

      public ElementProxy(Document doc)
      Constructor ElementProxy
      Parameters:
      doc -
    • ElementProxy

      public ElementProxy(Element element, String baseURI) throws XMLSecurityException
      Constructor ElementProxy
      Parameters:
      element -
      baseURI -
      Throws:
      XMLSecurityException
  • Method Details

    • getBaseNamespace

      public abstract 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 String getBaseLocalName()
      Returns the localname of the Elements of the sub-class.
      Returns:
      the localname of the Elements of the sub-class.
    • createElementForFamilyLocal

      protected Element createElementForFamilyLocal(String namespace, String localName)
    • createElementForFamily

      public static Element createElementForFamily(Document doc, String namespace, 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(Element element, String baseURI) throws XMLSecurityException
      Method setElement
      Parameters:
      element -
      baseURI -
      Throws:
      XMLSecurityException
    • getElement

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

      public final 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 Text createText(String text)
    • getDocument

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

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

      public void addBigIntegerElement(BigInteger bi, String localname)
      Method addBigIntegerElement
      Parameters:
      bi -
      localname -
    • addReturnToSelf

      protected void addReturnToSelf()
    • addBase64Element

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

      public void addTextElement(String text, 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(Node toAppend)
    • appendOther

      protected void appendOther(Element parent, Node toAppend)
    • addText

      public void addText(String text)
      Method addText
      Parameters:
      text -
    • getBigIntegerFromChildElement

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

      public String getTextFromChildElement(String localname, 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 String getTextFromTextChild()
      Method getTextFromTextChild
      Returns:
      the Text obtained by concatenating all the text nodes of this element
    • length

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

      public void setXPathNamespaceContext(String prefix, 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(String namespace, String prefix) throws XMLSecurityException
      Method setDefaultPrefix
      Parameters:
      namespace -
      prefix -
      Throws:
      XMLSecurityException
      SecurityException - if a security manager is installed and the caller does not have permission to set the default prefix
    • registerDefaultPrefixes

      public static void registerDefaultPrefixes() throws XMLSecurityException
      This method registers the default prefixes.
      Throws:
      XMLSecurityException
    • getDefaultPrefix

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

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

      protected void setDocument(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:
    • getLocalAttribute

      protected String getLocalAttribute(String attrName)
    • setLocalAttribute

      protected void setLocalAttribute(String attrName, String value)
    • setLocalIdAttribute

      protected void setLocalIdAttribute(String attrName, String value)
    • getFirstChild

      protected Node getFirstChild()