org.modeshape.jcr.query

## Class JcrQueryResult

- java.lang.Object
- - org.modeshape.jcr.query.JcrQueryResult

- All Implemented Interfaces:
    QueryResult
  Direct Known Subclasses:
    JcrSqlQueryResult, XPathQueryResult

      @NotThreadSafe
      public class JcrQueryResult
      extends Object
      implements QueryResult

  The results of a query. This is not thread-safe because it relies upon JcrSession, which is not thread-safe. Also, although the results of a query never change, the objects returned by the iterators may vary if the session information changes.
  See Also:
    `XPathQueryResult`, `JcrSqlQueryResult`

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `protected static class` | `JcrQueryResult.MultiSelectorQueryResultRow`
    `protected static class` | `JcrQueryResult.QueryResultNodeIterator` The `NodeIterator` implementation returned by the `JcrQueryResult`.
    `protected static class` | `JcrQueryResult.QueryResultRowIterator` The `RowIterator` implementation returned by the `JcrQueryResult`.
    `protected static class` | `JcrQueryResult.SingleSelectorQueryResultRow`
    `protected static class` | `JcrQueryResult.SingleSelectorQueryResultRowIterator` The `RowIterator` implementation returned by the `JcrQueryResult`.

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected JcrQueryContext` | `context`
    `static String` | `JCR_NAME_COLUMN_NAME`
    `static String` | `JCR_PATH_COLUMN_NAME`
    `static String` | `JCR_SCORE_COLUMN_NAME`
    `static String` | `MODE_DEPTH_COLUMN_NAME`
    `static String` | `MODE_LOCALNAME_COLUMN_NAME`
    `protected static Set<String>` | `PSEUDO_COLUMNS`
    `protected String` | `queryStatement`
    `protected QueryResults` | `results`
    `protected Schemata` | `schemata`

  - ### Constructor Summary

    Constructors
    Modifier | Constructor and Description
    --- | ---
    `protected` | `JcrQueryResult(JcrQueryContext context, String query, QueryResults graphResults, Schemata schemata)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `List<String>` | `getColumnNameList()`
    `String[]` | `getColumnNames()`
    `List<String>` | `getColumnTypeList()`
    `String[]` | `getColumnTypes()` Returns an array of the `PropertyType` name for each of the columns in this result.
    `NodeIterator` | `getNodes()`
    `String` | `getPlan()` Get a description of ModeShape's plan for executing this query.
    `RowIterator` | `getRows()`
    `String[]` | `getSelectorNames()`
    `Collection<String>` | `getWarnings()` Get any warnings that might describe potential problems with this query.
    `protected QueryResults` | `results()`
    `String` | `toString()`

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

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

- - ### Field Detail

    - #### JCR_SCORE_COLUMN_NAME

          public static final String JCR_SCORE_COLUMN_NAME

      See Also:
        Constant Field Values

    - #### JCR_PATH_COLUMN_NAME

          public static final String JCR_PATH_COLUMN_NAME

      See Also:
        Constant Field Values

    - #### JCR_NAME_COLUMN_NAME

          public static final String JCR_NAME_COLUMN_NAME

      See Also:
        Constant Field Values

    - #### MODE_LOCALNAME_COLUMN_NAME

          public static final String MODE_LOCALNAME_COLUMN_NAME

      See Also:
        Constant Field Values

    - #### MODE_DEPTH_COLUMN_NAME

          public static final String MODE_DEPTH_COLUMN_NAME

      See Also:
        Constant Field Values

    - #### PSEUDO_COLUMNS

          protected static final Set<String> PSEUDO_COLUMNS

    - #### context

          protected final JcrQueryContext context

    - #### results

          protected final QueryResults results

    - #### schemata

          protected final Schemata schemata

    - #### queryStatement

          protected final String queryStatement

  - ### Constructor Detail

    - #### JcrQueryResult

          protected JcrQueryResult(JcrQueryContext context,
                        String query,
                        QueryResults graphResults,
                        Schemata schemata)

  - ### Method Detail

    - #### results

          protected QueryResults results()

    - #### getColumnNameList

          public List<String> getColumnNameList()

    - #### getColumnTypeList

          public List<String> getColumnTypeList()

    - #### getColumnNames

          public String[] getColumnNames()

      Specified by:
        `getColumnNames` in interface `QueryResult`

    - #### getColumnTypes

          public String[] getColumnTypes()

      Description copied from interface: `QueryResult`
      Returns an array of the `PropertyType` name for each of the columns in this result.
      Returns:
        the array of property type names; never null, never has null elements, and the size always matches `QueryResult.getColumnNames()`.

    - #### getSelectorNames

          public String[] getSelectorNames()

      Specified by:
        `getSelectorNames` in interface `QueryResult`

    - #### getNodes

          public NodeIterator getNodes()
                                throws RepositoryException

      Specified by:
        `getNodes` in interface `QueryResult`
      Throws:
        `RepositoryException`

    - #### getRows

          public RowIterator getRows()

      Specified by:
        `getRows` in interface `QueryResult`

    - #### getPlan

          public String getPlan()

      Description copied from interface: `QueryResult`
      Get a description of ModeShape's plan for executing this query. The plan uses relational algebra and operations, and may be used to get insight into what operations are performed when executing the query.

      Note that as of ModeShape 3.1, the plan is always captured and available, though this may change in future versions. This means that clients should be written to never expect a non-null String response from this method.

      Returns:
        the string representation of the query plan as executed by the query; may be null if the query plan was not captured for the query (though currently it is always captured)

    - #### getWarnings

          public Collection<String> getWarnings()

      Description copied from interface: `QueryResult`
      Get any warnings that might describe potential problems with this query.

      Note that a query that has warnings is not necessarily incorrect or potentially wrong - because of residual properties, ModeShape may produce warnings for queries that are perfectly valid.

      However, if a query does not give the expected results (during development), check the warnings to see if ModeShape can suggest specific things to look at. For example, a warnings might suggest that a column might be resolved on a different selector, or that a column might have been misspelled.

      Returns:
        the collection of warnings; never null be empty when there are no warnings

    - #### toString

          public String toString()

      Overrides:
        `toString` in class `Object`

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