com.lowagie.text.pdf

## Class XfaForm.Xml2Som

- java.lang.Object
- - com.lowagie.text.pdf.XfaForm.Xml2Som

- Direct Known Subclasses:
    XfaForm.AcroFieldsSearch, XfaForm.Xml2SomDatasets, XfaForm.Xml2SomTemplate
  Enclosing class:
    XfaForm

      public static class XfaForm.Xml2Som
      extends java.lang.Object

  A class for some basic SOM processing.

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected int` | `anform` A temporary store for the repetition count.
    `protected java.util.HashMap` | `inverseSearch` The data to do a search from the bottom hierarchy.
    `protected java.util.HashMap` | `name2Node` The mapping of full names to nodes.
    `protected java.util.ArrayList` | `order` The order the names appear in the XML, depth first.
    `protected XfaForm.Stack2` | `stack` A stack to be used when parsing.

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `XfaForm.Xml2Som()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `static java.lang.String` | `escapeSom(java.lang.String s)` Escapes a SOM string fragment replacing "." with "\.".
    `java.util.HashMap` | `getInverseSearch()` Gets the data to do a search from the bottom hierarchy.
    `java.util.HashMap` | `getName2Node()` Gets the mapping of full names to nodes.
    `java.util.ArrayList` | `getOrder()` Gets the order the names appear in the XML, depth first.
    `static java.lang.String` | `getShortName(java.lang.String s)` Gets the name with the `#subform` removed.
    `static void` | `inverseSearchAdd(java.util.HashMap inverseSearch, XfaForm.Stack2 stack, java.lang.String unstack)` Adds a SOM name to the search node chain.
    `void` | `inverseSearchAdd(java.lang.String unstack)` Adds a SOM name to the search node chain.
    `java.lang.String` | `inverseSearchGlobal(java.util.ArrayList parts)` Searches the SOM hierarchy from the bottom.
    `protected java.lang.String` | `printStack()` Outputs the stack as the sequence of elements separated by '.'.
    `void` | `setInverseSearch(java.util.HashMap inverseSearch)` Sets the data to do a search from the bottom hierarchy.
    `void` | `setName2Node(java.util.HashMap name2Node)` Sets the mapping of full names to nodes.
    `void` | `setOrder(java.util.ArrayList order)` Sets the order the names appear in the XML, depth first
    `static XfaForm.Stack2` | `splitParts(java.lang.String name)` Splits a SOM name in the individual parts.
    `static java.lang.String` | `unescapeSom(java.lang.String s)` Unescapes a SOM string fragment replacing "\." with ".".

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### order

          protected java.util.ArrayList order

      The order the names appear in the XML, depth first.

    - #### name2Node

          protected java.util.HashMap name2Node

      The mapping of full names to nodes.

    - #### inverseSearch

          protected java.util.HashMap inverseSearch

      The data to do a search from the bottom hierarchy.

    - #### stack

          protected XfaForm.Stack2 stack

      A stack to be used when parsing.

    - #### anform

          protected int anform

      A temporary store for the repetition count.

  - ### Constructor Detail

    - #### XfaForm.Xml2Som

          public XfaForm.Xml2Som()

  - ### Method Detail

    - #### escapeSom

          public static java.lang.String escapeSom(java.lang.String s)

      Escapes a SOM string fragment replacing "." with "\.".
      Parameters:
        `s` - the unescaped string
      Returns:
        the escaped string

    - #### unescapeSom

          public static java.lang.String unescapeSom(java.lang.String s)

      Unescapes a SOM string fragment replacing "\." with ".".
      Parameters:
        `s` - the escaped string
      Returns:
        the unescaped string

    - #### printStack

          protected java.lang.String printStack()

      Outputs the stack as the sequence of elements separated by '.'.
      Returns:
        the stack as the sequence of elements separated by '.'

    - #### getShortName

          public static java.lang.String getShortName(java.lang.String s)

      Gets the name with the `#subform` removed.
      Parameters:
        `s` - the long name
      Returns:
        the short name

    - #### inverseSearchAdd

          public void inverseSearchAdd(java.lang.String unstack)

      Adds a SOM name to the search node chain.
      Parameters:
        `unstack` - the SOM name

    - #### inverseSearchAdd

          public static void inverseSearchAdd(java.util.HashMap inverseSearch,
                              XfaForm.Stack2 stack,
                              java.lang.String unstack)

      Adds a SOM name to the search node chain.
      Parameters:
        `inverseSearch` - the start point
        `stack` - the stack with the separated SOM parts
        `unstack` - the full name

    - #### inverseSearchGlobal

          public java.lang.String inverseSearchGlobal(java.util.ArrayList parts)

      Searches the SOM hierarchy from the bottom.
      Parameters:
        `parts` - the SOM parts
      Returns:
        the full name or `null` if not found

    - #### splitParts

          public static XfaForm.Stack2 splitParts(java.lang.String name)

      Splits a SOM name in the individual parts.
      Parameters:
        `name` - the full SOM name
      Returns:
        the split name

    - #### getOrder

          public java.util.ArrayList getOrder()

      Gets the order the names appear in the XML, depth first.
      Returns:
        the order the names appear in the XML, depth first

    - #### setOrder

          public void setOrder(java.util.ArrayList order)

      Sets the order the names appear in the XML, depth first
      Parameters:
        `order` - the order the names appear in the XML, depth first

    - #### getName2Node

          public java.util.HashMap getName2Node()

      Gets the mapping of full names to nodes.
      Returns:
        the mapping of full names to nodes

    - #### setName2Node

          public void setName2Node(java.util.HashMap name2Node)

      Sets the mapping of full names to nodes.
      Parameters:
        `name2Node` - the mapping of full names to nodes

    - #### getInverseSearch

          public java.util.HashMap getInverseSearch()

      Gets the data to do a search from the bottom hierarchy.
      Returns:
        the data to do a search from the bottom hierarchy

    - #### setInverseSearch

          public void setInverseSearch(java.util.HashMap inverseSearch)

      Sets the data to do a search from the bottom hierarchy.
      Parameters:
        `inverseSearch` - the data to do a search from the bottom hierarchy