Package org.apache.activemq.artemis.selector.filter

## Class XPathExpression

- java.lang.Object
- - org.apache.activemq.artemis.selector.filter.XPathExpression

- All Implemented Interfaces:
    `BooleanExpression`, `Expression`

      public final class XPathExpression
      extends java.lang.Object
      implements BooleanExpression

  Used to evaluate an XPath Expression in a JMS selector.

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class | Description
    --- | --- | ---
    `static interface` | `XPathExpression.XPathEvaluator` |
    `static interface` | `XPathExpression.XPathEvaluatorFactory` |

  - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `static java.lang.String` | `DOCUMENT_BUILDER_FACTORY_FEATURE_PREFIX` |
    `static XPathExpression.XPathEvaluatorFactory` | `XPATH_EVALUATOR_FACTORY` |

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `java.lang.Object` | `evaluate​(Filterable message)` |
    `boolean` | `matches​(Filterable message)` |
    `protected static void` | `setupFeatures​(javax.xml.parsers.DocumentBuilderFactory factory)` |
    `java.lang.String` | `toString()` |

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

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

- - ### Field Detail

    - #### XPATH_EVALUATOR_FACTORY

          public static XPathExpression.XPathEvaluatorFactory XPATH_EVALUATOR_FACTORY

    - #### DOCUMENT_BUILDER_FACTORY_FEATURE_PREFIX

          public static final java.lang.String DOCUMENT_BUILDER_FACTORY_FEATURE_PREFIX

      See Also:
        Constant Field Values

  - ### Method Detail

    - #### evaluate

          public java.lang.Object evaluate​(Filterable message)
                                    throws FilterException

      Specified by:
        `evaluate` in interface `Expression`
      Returns:
        the value of this expression
      Throws:
        `FilterException`

    - #### toString

          public java.lang.String toString()

      Overrides:
        `toString` in class `java.lang.Object`

    - #### matches

          public boolean matches​(Filterable message)
                          throws FilterException

      Specified by:
        `matches` in interface `BooleanExpression`
      Parameters:
        `message` -
      Returns:
        true if the expression evaluates to Boolean.TRUE.
      Throws:
        `FilterException`

    - #### setupFeatures

          protected static void setupFeatures​(javax.xml.parsers.DocumentBuilderFactory factory)
                                       throws javax.xml.parsers.ParserConfigurationException

      Throws:
        `javax.xml.parsers.ParserConfigurationException`