Package org.apache.lucene.queryparser.flexible.core.nodes

## Class OpaqueQueryNode

- java.lang.Object
- - org.apache.lucene.queryparser.flexible.core.nodes.QueryNodeImpl
  - - org.apache.lucene.queryparser.flexible.core.nodes.OpaqueQueryNode

- All Implemented Interfaces:
    `Cloneable`, `QueryNode`

      public class OpaqueQueryNode
      extends QueryNodeImpl

  A `OpaqueQueryNode` is used for specify values that are not supposed to be parsed by the parser. For example: and XPATH query in the middle of a query string a b @xpath:'/bookstore/book[1]/title' c d

- - ### Field Summary

    - ### Fields inherited from class org.apache.lucene.queryparser.flexible.core.nodes.QueryNodeImpl

      `PLAINTEXT_FIELD_NAME, toQueryStringIgnoreFields`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `OpaqueQueryNode​(CharSequence schema, CharSequence value)` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `QueryNode` | `cloneTree()` | Recursive clone the QueryNode tree The tags are not copied to the new tree when you call the cloneTree() method
    `CharSequence` | `getSchema()` |
    `CharSequence` | `getValue()` |
    `CharSequence` | `toQueryString​(EscapeQuerySyntax escapeSyntaxParser)` | convert to a query string understood by the query parser
    `String` | `toString()` | Every implementation of this class should return pseudo xml like this:

    - ### Methods inherited from class org.apache.lucene.queryparser.flexible.core.nodes.QueryNodeImpl

      `add, add, allocate, clone, containsTag, getChildren, getParent, getTag, getTagMap, isDefaultField, isLeaf, isRoot, removeChildren, removeFromParent, set, setLeaf, setTag, unsetTag`

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

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

- - ### Constructor Detail

    - #### OpaqueQueryNode

          public OpaqueQueryNode​(CharSequence schema,
                                 CharSequence value)

      Parameters:
        `schema` - - schema identifier
        `value` - - value that was not parsed

  - ### Method Detail

    - #### toString

          public String toString()

      Description copied from class: `QueryNodeImpl`
      Every implementation of this class should return pseudo xml like this:

      For FieldQueryNode: <field start='1' end='2' field='subject' text='foo'/>

      Specified by:
        `toString` in interface `QueryNode`
      Overrides:
        `toString` in class `QueryNodeImpl`
      See Also:
        `QueryNode.toString()`

    - #### toQueryString

          public CharSequence toQueryString​(EscapeQuerySyntax escapeSyntaxParser)

      Description copied from interface: `QueryNode`
      convert to a query string understood by the query parser

    - #### cloneTree

          public QueryNode cloneTree()
                              throws CloneNotSupportedException

      Description copied from interface: `QueryNode`
      Recursive clone the QueryNode tree The tags are not copied to the new tree when you call the cloneTree() method
      Specified by:
        `cloneTree` in interface `QueryNode`
      Overrides:
        `cloneTree` in class `QueryNodeImpl`
      Returns:
        the cloned tree
      Throws:
        `CloneNotSupportedException`

    - #### getSchema

          public CharSequence getSchema()

      Returns:
        the schema

    - #### getValue

          public CharSequence getValue()

      Returns:
        the value