org.apache.cayenne.query

## Class QueryMetadataProxy

- java.lang.Object
- - org.apache.cayenne.query.QueryMetadataProxy

- All Implemented Interfaces:
    QueryMetadata

      public class QueryMetadataProxy
      extends Object
      implements QueryMetadata

  Since:
    4.0

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected QueryMetadata` | `mdDelegate`

    - ### Fields inherited from interface org.apache.cayenne.query.QueryMetadata

      `CACHE_GROUPS_PROPERTY, CACHE_STRATEGY_PROPERTY, FETCH_LIMIT_DEFAULT, FETCH_LIMIT_PROPERTY, FETCH_OFFSET_DEFAULT, FETCH_OFFSET_PROPERTY, FETCHING_DATA_ROWS_DEFAULT, FETCHING_DATA_ROWS_PROPERTY, PAGE_SIZE_DEFAULT, PAGE_SIZE_PROPERTY, STATEMENT_FETCH_SIZE_DEFAULT, STATEMENT_FETCH_SIZE_PROPERTY`

  - ### Constructor Summary

    Constructors
    Modifier | Constructor and Description
    --- | ---
    `protected` | `QueryMetadataProxy(QueryMetadata mdDelegate)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods Deprecated Methods
    Modifier and Type | Method and Description
    --- | ---
    `String` | `getCacheGroup()` Returns an optional cache "group".
    `String[]` | `getCacheGroups()` Deprecated.
    `String` | `getCacheKey()` Returns a String that uniquely identifies this query for the purposes of result caching.
    `QueryCacheStrategy` | `getCacheStrategy()` Returns a caching strategy for this query.
    `ClassDescriptor` | `getClassDescriptor()`
    `DataMap` | `getDataMap()` Returns a DataMap associated with a query or null if no such DataMap exists.
    `DbEntity` | `getDbEntity()` Returns a DbEntity associated with a query or null if no such entity exists.
    `int` | `getFetchLimit()` Returns the limit on the maximum number of records that can be returned by this query.
    `int` | `getFetchOffset()` Specifies a start of a range when fetching a subset of records.
    `ObjEntity` | `getObjEntity()` Returns an ObjEntity associated with a query or null if no such entity exists.
    `Query` | `getOrginatingQuery()` Deprecated.
    `Query` | `getOriginatingQuery()` Returns a query that originated this query.
    `int` | `getPageSize()` Returns query page size.
    `Map<String,String>` | `getPathSplitAliases()` Returns a map of aliases vs.
    `PrefetchTreeNode` | `getPrefetchTree()` Returns a root node of prefetch tree used by this query, or null of no prefetches are configured.
    `Procedure` | `getProcedure()` Returns a Procedure associated with a query or null if no such procedure exists.
    `List<Object>` | `getResultSetMapping()` Returns an optional list of result set mapping hints.
    `int` | `getStatementFetchSize()`
    `boolean` | `isFetchingDataRows()` Returns `true` if this query should produce a list of data rows as opposed to DataObjects, `false` for DataObjects.
    `boolean` | `isRefreshingObjects()` Returns `true` if the query results should replace any currently cached values, returns `false` otherwise.
    `boolean` | `isSingleResultSetMapping()`
    `boolean` | `isSuppressingDistinct()`

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

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

- - ### Field Detail

    - #### mdDelegate

          protected QueryMetadata mdDelegate

  - ### Constructor Detail

    - #### QueryMetadataProxy

          protected QueryMetadataProxy(QueryMetadata mdDelegate)

  - ### Method Detail

    - #### getCacheGroups

          @Deprecated
          public String[] getCacheGroups()

      Deprecated.
      Description copied from interface: `QueryMetadata`
      Returns an optional array of cache "groups". Cache groups allow to invalidate query caches in bulk on different events. Usually the first group in the array is considered to be the "main" group that is used for declarative cache invalidation with some cache providers.
      Specified by:
        `getCacheGroups` in interface `QueryMetadata`
      See Also:
        `QueryMetadata.getCacheGroup()`

    - #### getCacheGroup

          public String getCacheGroup()

      Description copied from interface: `QueryMetadata`
      Returns an optional cache "group". Cache groups allow to invalidate query caches in bulk on different events.
      Specified by:
        `getCacheGroup` in interface `QueryMetadata`

    - #### getCacheKey

          public String getCacheKey()

      Description copied from interface: `QueryMetadata`
      Returns a String that uniquely identifies this query for the purposes of result caching. If null is returned, no caching is performed.
      Specified by:
        `getCacheKey` in interface `QueryMetadata`

    - #### getCacheStrategy

          public QueryCacheStrategy getCacheStrategy()

      Description copied from interface: `QueryMetadata`
      Returns a caching strategy for this query.
      Specified by:
        `getCacheStrategy` in interface `QueryMetadata`

    - #### getClassDescriptor

          public ClassDescriptor getClassDescriptor()

      Specified by:
        `getClassDescriptor` in interface `QueryMetadata`

    - #### getDataMap

          public DataMap getDataMap()

      Description copied from interface: `QueryMetadata`
      Returns a DataMap associated with a query or null if no such DataMap exists.
      Specified by:
        `getDataMap` in interface `QueryMetadata`

    - #### getDbEntity

          public DbEntity getDbEntity()

      Description copied from interface: `QueryMetadata`
      Returns a DbEntity associated with a query or null if no such entity exists.
      Specified by:
        `getDbEntity` in interface `QueryMetadata`

    - #### getFetchLimit

          public int getFetchLimit()

      Description copied from interface: `QueryMetadata`
      Returns the limit on the maximum number of records that can be returned by this query. If the actual number of rows in the result exceeds the fetch limit, they will be discarded. One possible use of fetch limit is using it as a safeguard against large result sets that may lead to the application running out of memory, etc. If a fetch limit is greater or equal to zero, all rows will be returned.
      Specified by:
        `getFetchLimit` in interface `QueryMetadata`
      Returns:
        the limit on the maximum number of records that can be returned by this query

    - #### getFetchOffset

          public int getFetchOffset()

      Description copied from interface: `QueryMetadata`
      Specifies a start of a range when fetching a subset of records.
      Specified by:
        `getFetchOffset` in interface `QueryMetadata`

    - #### getObjEntity

          public ObjEntity getObjEntity()

      Description copied from interface: `QueryMetadata`
      Returns an ObjEntity associated with a query or null if no such entity exists.
      Specified by:
        `getObjEntity` in interface `QueryMetadata`

    - #### getOrginatingQuery

          @Deprecated
          public Query getOrginatingQuery()

      Deprecated.
      Specified by:
        `getOrginatingQuery` in interface `QueryMetadata`

    - #### getOriginatingQuery

          public Query getOriginatingQuery()

      Description copied from interface: `QueryMetadata`
      Returns a query that originated this query. Originating query is a query whose result is needed to obtain the result of the query owning this metadata. Most often than not the returned value is null. One example of non-null originating query is a query for a range of objects in a previously fetched paginated list. The query that fetched the original paginated list is an "originated" query. It may be used to restore a list that got lost due to a cache overflow, etc.
      Specified by:
        `getOriginatingQuery` in interface `QueryMetadata`

    - #### getPageSize

          public int getPageSize()

      Description copied from interface: `QueryMetadata`
      Returns query page size. Page size is a hint to Cayenne that query should be performed page by page, instead of retrieving all results at once. If the value returned is less than or equal to zero, no paging should occur.
      Specified by:
        `getPageSize` in interface `QueryMetadata`

    - #### getPrefetchTree

          public PrefetchTreeNode getPrefetchTree()

      Description copied from interface: `QueryMetadata`
      Returns a root node of prefetch tree used by this query, or null of no prefetches are configured.
      Specified by:
        `getPrefetchTree` in interface `QueryMetadata`

    - #### getPathSplitAliases

          public Map<String,String> getPathSplitAliases()

      Description copied from interface: `QueryMetadata`
      Returns a map of aliases vs. expression subpaths that is used to build split joins.
      Specified by:
        `getPathSplitAliases` in interface `QueryMetadata`

    - #### getProcedure

          public Procedure getProcedure()

      Description copied from interface: `QueryMetadata`
      Returns a Procedure associated with a query or null if no such procedure exists.
      Specified by:
        `getProcedure` in interface `QueryMetadata`

    - #### getResultSetMapping

          public List<Object> getResultSetMapping()

      Description copied from interface: `QueryMetadata`
      Returns an optional list of result set mapping hints. Elements in the list can be either `EntityResultSegment` or `ScalarResultSegment`. The returned list can be null.
      Specified by:
        `getResultSetMapping` in interface `QueryMetadata`

    - #### isSingleResultSetMapping

          public boolean isSingleResultSetMapping()

      Specified by:
        `isSingleResultSetMapping` in interface `QueryMetadata`
      Returns:
        should the result be mapped to single object (scalar or entity)
      See Also:
        `QueryMetadata.getResultSetMapping()`

    - #### isFetchingDataRows

          public boolean isFetchingDataRows()

      Description copied from interface: `QueryMetadata`
      Returns `true` if this query should produce a list of data rows as opposed to DataObjects, `false` for DataObjects. This is a hint to QueryEngine executing this query.
      Specified by:
        `isFetchingDataRows` in interface `QueryMetadata`

    - #### isRefreshingObjects

          public boolean isRefreshingObjects()

      Description copied from interface: `QueryMetadata`
      Returns `true` if the query results should replace any currently cached values, returns `false` otherwise. If `QueryMetadata.isFetchingDataRows()` returns `true`, this setting is not applicable and has no effect.
      Specified by:
        `isRefreshingObjects` in interface `QueryMetadata`

    - #### getStatementFetchSize

          public int getStatementFetchSize()

      Specified by:
        `getStatementFetchSize` in interface `QueryMetadata`
      Returns:
        statement's fetch size

    - #### isSuppressingDistinct

          public boolean isSuppressingDistinct()

      Specified by:
        `isSuppressingDistinct` in interface `QueryMetadata`

Copyright © 2001–2018 Apache Cayenne. All rights reserved.