Class NameSpaceSymbTable

java.lang.Object
com.sun.xml.wss.impl.transform.NameSpaceSymbTable

public class NameSpaceSymbTable extends Object
A stack based Symble Table.
For speed reasons all the symbols are introduced in the same map, and at the same time in a list so it can be removed when the frame is pop back.
Author:
Raul Benito
  • Constructor Details

    • NameSpaceSymbTable

      public NameSpaceSymbTable()
      Default constractor
  • Method Details

    • getUnrenderedNodes

      public void getUnrenderedNodes(Collection result)
      Get all the unrendered nodes in the name space. For Inclusive rendering
      Parameters:
      result - the list where to fill the unrendered xmlns definitions.
    • outputNodePush

      public void outputNodePush()
      Push a frame for visible namespace. For Inclusive rendering.
    • outputNodePop

      public void outputNodePop()
      Pop a frame for visible namespace.
    • push

      public void push()
      Push a frame for a node. Inclusive or Exclusive.
    • pop

      public void pop()
      Pop a frame. Inclusive or Exclusive.
    • getMapping

      public Attr getMapping(String prefix)
      Gets the attribute node that defines the binding for the prefix.
      Parameters:
      prefix - the prefix to obtain the attribute.
      Returns:
      null if there is no need to render the prefix. Otherwise the node of definition.
    • getMappingWithoutRendered

      public Attr getMappingWithoutRendered(String prefix)
      Gets a definition without mark it as render. For render in exclusive c14n the namespaces in the include prefixes.
      Parameters:
      prefix - The prefix whose definition is neaded.
      Returns:
      the attr to render, null if there is no need to render
    • addMapping

      public boolean addMapping(String prefix, String uri, Attr n)
      Adds the mapping for a prefix.
      Parameters:
      prefix - the prefix of definition
      uri - the Uri of the definition
      n - the attribute that have the definition
      Returns:
      true if there is already defined.
    • addMappingAndRender

      public Node addMappingAndRender(String prefix, String uri, Attr n)
      Adds a definition and mark it as render. For inclusive c14n.
      Parameters:
      prefix - the prefix of definition
      uri - the Uri of the definition
      n - the attribute that have the definition
      Returns:
      the attr to render, null if there is no need to render
    • addMappingAndRenderXNodeSet

      public Node addMappingAndRenderXNodeSet(String prefix, String uri, Attr n, boolean outputNode)
      Adds and gets(if needed) the attribute node that defines the binding for the prefix. Take on account if the rules of rendering in the inclusive c14n. For inclusive c14n.
      Parameters:
      prefix - the prefix to obtain the attribute.
      outputNode - the container element is an output element.
      uri - the Uri of the definition
      n - the attribute that have the definition
      Returns:
      null if there is no need to render the prefix. Otherwise the node of definition.