Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.openjpa.kernel
Class AbstractStoreQuery.AbstractExecutor

    java.lang.Object
      org.apache.openjpa.kernel.AbstractStoreQuery.AbstractExecutor

All Implemented Interfaces:
  StoreQuery.Executor

Direct Known Subclasses:
  ExpressionStoreQuery.AbstractExpressionExecutor, SQLStoreQuery.SQLExecutor

Enclosing class:
  AbstractStoreQuery

    public abstract static class AbstractStoreQuery.AbstractExecutor

extends Object
implements StoreQuery.Executor

Abstract `AbstractStoreQuery.AbstractExecutor` that implements most methods as no-ops.

Constructor Summary
`AbstractStoreQuery.AbstractExecutor()`

Method Summary
`Number` | `executeDelete(StoreQuery q, Object[] params)` Deleted the objects that result from the execution of the query, retuning the number of objects that were deleted.
`Number` | `executeUpdate(StoreQuery q, Object[] params)` Updates the objects that result from the execution of the query, retuning the number of objects that were updated.
`ClassMetaData[]` | `getAccessPathMetaDatas(StoreQuery q)` Return an array of all persistent classes used in this query, or empty array if unknown.
`String` | `getAlias(StoreQuery q)` If this is not a projection but the candidate results are placed into a result class with an alias, return that alias.
`boolean[]` | `getAscending(StoreQuery q)` Return the ordering direction for all ordering clauses, or empty array if none.
`String[]` | `getDataStoreActions(StoreQuery q, Object[] params, StoreQuery.Range range)` Return a description of the commands that will be sent to the datastore in order to execute the query.
`int` | `getOperation(StoreQuery q)` Returns the operation this executor is meant to execute.
`OrderedMap<Object,Class<?>>` | `getOrderedParameterTypes(StoreQuery q)` Return a map of parameter names to types.
`Object` | `getOrderingValue(StoreQuery q, Object[] params, Object resultObject, int orderIndex)` Extract the value of the `orderIndex`th ordering expression in `Query#getOrderingClauses` from the given result object.
`org.apache.commons.collections.map.LinkedMap` | `getParameterTypes(StoreQuery q)` Return a map of parameter names to types.
`String[]` | `getProjectionAliases(StoreQuery q)` Return the alias for each projection element, or empty array if not a projection.
`Class<?>[]` | `getProjectionTypes(StoreQuery q)` Return the expected types of the projections used by this query, or an empty array if not a projection.
`QueryExpressions[]` | `getQueryExpressions()` Return the parsed query expressions for our candidate types.
`void` | `getRange(StoreQuery q, Object[] params, StoreQuery.Range range)` Mutate the given range to set any range information stored in the query string and/or parameters.
`Class<?>` | `getResultClass(StoreQuery q)` Returns the result class, if any.
`ResultShape<?>` | `getResultShape(StoreQuery q)`
`Map<FieldMetaData,Value>` | `getUpdates(StoreQuery q)` Return a map of `FieldMetaData` to update `Constant`s, in cases where this query is for a bulk update.
`boolean` | `hasGrouping(StoreQuery q)` Whether the compiled query has grouping.
`boolean` | `isAggregate(StoreQuery q)` Return true if the compiled query is an aggregate.
`boolean` | `isDistinct(StoreQuery q)`
`boolean` | `isPacking(StoreQuery q)` Return true if this executor packs projections into the result class itself.
`void` | `validate(StoreQuery q)` Validate components of query.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Methods inherited from interface org.apache.openjpa.kernel.StoreQuery.Executor
`executeQuery, toParameterArray`

Constructor Detail

### AbstractStoreQuery.AbstractExecutor

    public AbstractStoreQuery.AbstractExecutor()

Method Detail

### executeDelete

    public Number executeDelete(StoreQuery q,
                                Object[] params)

  Description copied from interface: `StoreQuery.Executor`
  Deleted the objects that result from the execution of the query, retuning the number of objects that were deleted.

  Specified by:
    `executeDelete` in interface `StoreQuery.Executor`

### executeUpdate

    public Number executeUpdate(StoreQuery q,
                                Object[] params)

  Description copied from interface: `StoreQuery.Executor`
  Updates the objects that result from the execution of the query, retuning the number of objects that were updated.

  Specified by:
    `executeUpdate` in interface `StoreQuery.Executor`

### getDataStoreActions

    public String[] getDataStoreActions(StoreQuery q,
                                        Object[] params,
                                        StoreQuery.Range range)

  Description copied from interface: `StoreQuery.Executor`
  Return a description of the commands that will be sent to the datastore in order to execute the query.

  Specified by:
    `getDataStoreActions` in interface `StoreQuery.Executor`

### validate

    public void validate(StoreQuery q)

  Description copied from interface: `StoreQuery.Executor`
  Validate components of query.

  Specified by:
    `validate` in interface `StoreQuery.Executor`

### getQueryExpressions

    public QueryExpressions[] getQueryExpressions()

  Description copied from interface: `StoreQuery.Executor`
  Return the parsed query expressions for our candidate types. The expressions are available only after query has been parsed.

  Specified by:
    `getQueryExpressions` in interface `StoreQuery.Executor`

### getResultShape

    public ResultShape<?> getResultShape(StoreQuery q)

  Specified by:
    `getResultShape` in interface `StoreQuery.Executor`

### getRange

    public void getRange(StoreQuery q,
                         Object[] params,
                         StoreQuery.Range range)

  Description copied from interface: `StoreQuery.Executor`
  Mutate the given range to set any range information stored in the query string and/or parameters.

  Specified by:
    `getRange` in interface `StoreQuery.Executor`

### getOrderingValue

    public Object getOrderingValue(StoreQuery q,
                                   Object[] params,
                                   Object resultObject,
                                   int orderIndex)

  Description copied from interface: `StoreQuery.Executor`
  Extract the value of the `orderIndex`th ordering expression in `Query#getOrderingClauses` from the given result object. The result object will be an object from the result object provider returned from `StoreQuery.Executor.executeQuery(org.apache.openjpa.kernel.StoreQuery, java.lang.Object[], org.apache.openjpa.kernel.StoreQuery.Range)`. This method is used when several result lists have to be merged in memory. If this exeuctor's parent query supports executors on abstract or interface classes, this method will not be used.

  Specified by:
    `getOrderingValue` in interface `StoreQuery.Executor`
  See Also:
    `StoreQuery.supportsAbstractExecutors()`

### getAscending

    public boolean[] getAscending(StoreQuery q)

  Description copied from interface: `StoreQuery.Executor`
  Return the ordering direction for all ordering clauses, or empty array if none.

  Specified by:
    `getAscending` in interface `StoreQuery.Executor`

### isPacking

    public boolean isPacking(StoreQuery q)

  Description copied from interface: `StoreQuery.Executor`
  Return true if this executor packs projections into the result class itself. Executors for query languages that allow projections without result clauses must return true and perform the result packing themselves.

  Specified by:
    `isPacking` in interface `StoreQuery.Executor`

### getAlias

    public String getAlias(StoreQuery q)

  Description copied from interface: `StoreQuery.Executor`
  If this is not a projection but the candidate results are placed into a result class with an alias, return that alias.

  Specified by:
    `getAlias` in interface `StoreQuery.Executor`

### getProjectionAliases

    public String[] getProjectionAliases(StoreQuery q)

  Description copied from interface: `StoreQuery.Executor`
  Return the alias for each projection element, or empty array if not a projection.

  Specified by:
    `getProjectionAliases` in interface `StoreQuery.Executor`

### getProjectionTypes

    public Class<?>[] getProjectionTypes(StoreQuery q)

  Description copied from interface: `StoreQuery.Executor`
  Return the expected types of the projections used by this query, or an empty array if not a projection.

  Specified by:
    `getProjectionTypes` in interface `StoreQuery.Executor`

### getAccessPathMetaDatas

    public ClassMetaData[] getAccessPathMetaDatas(StoreQuery q)

  Description copied from interface: `StoreQuery.Executor`
  Return an array of all persistent classes used in this query, or empty array if unknown.

  Specified by:
    `getAccessPathMetaDatas` in interface `StoreQuery.Executor`

### getOperation

    public int getOperation(StoreQuery q)

  Description copied from interface: `StoreQuery.Executor`
  Returns the operation this executor is meant to execute.

  Specified by:
    `getOperation` in interface `StoreQuery.Executor`
  See Also:
    `QueryOperations`

### isAggregate

    public boolean isAggregate(StoreQuery q)

  Description copied from interface: `StoreQuery.Executor`
  Return true if the compiled query is an aggregate.

  Specified by:
    `isAggregate` in interface `StoreQuery.Executor`

### isDistinct

    public boolean isDistinct(StoreQuery q)

  Specified by:
    `isDistinct` in interface `StoreQuery.Executor`

### hasGrouping

    public boolean hasGrouping(StoreQuery q)

  Description copied from interface: `StoreQuery.Executor`
  Whether the compiled query has grouping.

  Specified by:
    `hasGrouping` in interface `StoreQuery.Executor`

### getOrderedParameterTypes

    public OrderedMap<Object,Class<?>> getOrderedParameterTypes(StoreQuery q)

  Description copied from interface: `StoreQuery.Executor`
  Return a map of parameter names to types. The returned `Map.entrySet()`'s `Iterator` must return values in the order in which they were declared or used.

  Specified by:
    `getOrderedParameterTypes` in interface `StoreQuery.Executor`

### getParameterTypes

    public org.apache.commons.collections.map.LinkedMap getParameterTypes(StoreQuery q)

  Description copied from interface: `StoreQuery.Executor`
  Return a map of parameter names to types. The returned `Map.entrySet()`'s `Iterator` must return values in the order in which they were declared or used.
  Warning: Deprecated. Use StoreQuery.Executor.getOrderedParameterTypes(StoreQuery) instead.

  Specified by:
    `getParameterTypes` in interface `StoreQuery.Executor`

### getResultClass

    public Class<?> getResultClass(StoreQuery q)

  Description copied from interface: `StoreQuery.Executor`
  Returns the result class, if any.

  Specified by:
    `getResultClass` in interface `StoreQuery.Executor`

### getUpdates

    public Map<FieldMetaData,Value> getUpdates(StoreQuery q)

  Description copied from interface: `StoreQuery.Executor`
  Return a map of `FieldMetaData` to update `Constant`s, in cases where this query is for a bulk update.

  Specified by:
    `getUpdates` in interface `StoreQuery.Executor`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2006-2013 Apache Software Foundation. All Rights Reserved.