org.modeshape.jcr.query.plan

## Enum PlanNode.Type

- java.lang.Object
- - java.lang.Enum<PlanNode.Type>
  - - org.modeshape.jcr.query.plan.PlanNode.Type

- All Implemented Interfaces:
    Serializable, Comparable<PlanNode.Type>
  Enclosing class:
    PlanNode

      public static enum PlanNode.Type
      extends Enum<PlanNode.Type>

  An enumeration dictating the type of plan tree nodes.

- - ### Enum Constant Summary

    Enum Constants
    Enum Constant and Description
    `ACCESS` A node that represents an access of the underlying storage.
    `DEPENDENT_QUERY` A node that contains two nodes, where the left side must be done before the right
    `DUP_REMOVE` A node that defines the removal of duplicate tuples.
    `GROUP` A node that groups sets of rows into groups (and where aggregation would be performed)
    `INDEX` A node that defines an index that can be used for the parent SOURCE node
    `JOIN` A node that defines the join type, join criteria, and join strategy
    `LIMIT` A node that limits the number of tuples returned
    `NULL` A node that produces no results
    `PROJECT` A node that defines the columns returned from the node.
    `SELECT` A node that selects a filters the tuples by applying a criteria evaluation filter node (WHERE / HAVING)
    `SET_OPERATION` A node the performs set operations on two sets of tuples, including UNION
    `SORT` A node that defines the columns to sort on, the sort direction for each column, and whether to remove duplicates.
    `SOURCE` A node that defines the 'table' from which the tuples are being obtained

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `static PlanNode.Type` | `forSymbol(String symbol)` Attempt to find the Type given a symbol.
    `String` | `getSymbol()` Get the symbol representation of this node type.
    `String` | `toString()`
    `static PlanNode.Type` | `valueOf(String name)` Returns the enum constant of this type with the specified name.
    `static PlanNode.Type[]` | `values()` Returns an array containing the constants of this enum type, in the order they are declared.

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

      `clone, compareTo, equals, finalize, getDeclaringClass, hashCode, name, ordinal, valueOf`

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

      `getClass, notify, notifyAll, wait, wait, wait`

- - ### Enum Constant Detail

    - #### ACCESS

          public static final PlanNode.Type ACCESS

      A node that represents an access of the underlying storage.

    - #### DUP_REMOVE

          public static final PlanNode.Type DUP_REMOVE

      A node that defines the removal of duplicate tuples.

    - #### JOIN

          public static final PlanNode.Type JOIN

      A node that defines the join type, join criteria, and join strategy

    - #### PROJECT

          public static final PlanNode.Type PROJECT

      A node that defines the columns returned from the node.

    - #### SELECT

          public static final PlanNode.Type SELECT

      A node that selects a filters the tuples by applying a criteria evaluation filter node (WHERE / HAVING)

    - #### SORT

          public static final PlanNode.Type SORT

      A node that defines the columns to sort on, the sort direction for each column, and whether to remove duplicates.

    - #### SOURCE

          public static final PlanNode.Type SOURCE

      A node that defines the 'table' from which the tuples are being obtained

    - #### GROUP

          public static final PlanNode.Type GROUP

      A node that groups sets of rows into groups (and where aggregation would be performed)

    - #### NULL

          public static final PlanNode.Type NULL

      A node that produces no results

    - #### LIMIT

          public static final PlanNode.Type LIMIT

      A node that limits the number of tuples returned

    - #### SET_OPERATION

          public static final PlanNode.Type SET_OPERATION

      A node the performs set operations on two sets of tuples, including UNION

    - #### DEPENDENT_QUERY

          public static final PlanNode.Type DEPENDENT_QUERY

      A node that contains two nodes, where the left side must be done before the right

    - #### INDEX

          public static final PlanNode.Type INDEX

      A node that defines an index that can be used for the parent SOURCE node

  - ### Method Detail

    - #### values

          public static PlanNode.Type[] values()

      Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:

          for (PlanNode.Type c : PlanNode.Type.values())
              System.out.println(c);

      Returns:
        an array containing the constants of this enum type, in the order they are declared

    - #### valueOf

          public static PlanNode.Type valueOf(String name)

      Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)
      Parameters:
        `name` - the name of the enum constant to be returned.
      Returns:
        the enum constant with the specified name
      Throws:
        `IllegalArgumentException` - if this enum type has no constant with the specified name
        `NullPointerException` - if the argument is null

    - #### getSymbol

          public String getSymbol()

      Get the symbol representation of this node type.
      Returns:
        the symbol; never null and never empty

    - #### toString

          public String toString()

      Overrides:
        `toString` in class `Enum<PlanNode.Type>`
      See Also:
        `Enum.toString()`

    - #### forSymbol

          public static PlanNode.Type forSymbol(String symbol)

      Attempt to find the Type given a symbol. The matching is done independent of case.
      Parameters:
        `symbol` - the symbol
      Returns:
        the Type having the supplied symbol, or null if there is no Type with the supplied symbol
      Throws:
        `IllegalArgumentException` - if the symbol is null

Copyright © 2008-2014 JBoss, a division of Red Hat. All Rights Reserved.