org.apache.openjpa.jdbc.kernel
Class JDBCStoreQuery

java.lang.Object
  extended by org.apache.openjpa.kernel.AbstractStoreQuery
      extended by org.apache.openjpa.kernel.ExpressionStoreQuery
          extended by org.apache.openjpa.jdbc.kernel.JDBCStoreQuery
All Implemented Interfaces:
Serializable, QueryOperations, StoreQuery

public class JDBCStoreQuery
extends ExpressionStoreQuery

JDBC query implementation.

Author:
Abe White
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class org.apache.openjpa.kernel.ExpressionStoreQuery
ExpressionStoreQuery.AbstractExpressionExecutor, ExpressionStoreQuery.DataStoreExecutor
 
Nested classes/interfaces inherited from class org.apache.openjpa.kernel.AbstractStoreQuery
AbstractStoreQuery.AbstractExecutor
 
Nested classes/interfaces inherited from interface org.apache.openjpa.kernel.StoreQuery
StoreQuery.Executor, StoreQuery.Range
 
Field Summary
 
Fields inherited from class org.apache.openjpa.kernel.AbstractStoreQuery
ctx
 
Fields inherited from interface org.apache.openjpa.kernel.StoreQuery
EMPTY_BOOLEANS, EMPTY_CLASSES, EMPTY_METAS, EMPTY_OBJECTS, EMPTY_PARAMS, EMPTY_STRINGS
 
Fields inherited from interface org.apache.openjpa.kernel.QueryOperations
OP_DELETE, OP_SELECT, OP_UPDATE
 
Constructor Summary
JDBCStoreQuery(JDBCStore store, ExpressionParser parser)
          Constructor.
 
Method Summary
 Object evaluate(Object value, Object ob, Object[] params, OpenJPAStateManager sm)
           
protected  Number executeDelete(StoreQuery.Executor ex, ClassMetaData base, ClassMetaData[] metas, boolean subclasses, ExpressionFactory[] facts, QueryExpressions[] exps, Object[] params)
           
protected  org.apache.openjpa.lib.rop.ResultObjectProvider executeQuery(StoreQuery.Executor ex, ClassMetaData base, ClassMetaData[] metas, boolean subclasses, ExpressionFactory[] facts, QueryExpressions[] exps, Object[] params, StoreQuery.Range range)
           
protected  Number executeUpdate(ClassMetaData base, ClassMetaData[] metas, boolean subclasses, ExpressionFactory[] facts, QueryExpressions[] parsed, Object[] params)
           
protected  int executeUpdate(Connection conn, PreparedStatement stmnt, SQLBuffer sqlBuf, boolean isUpdate)
          This method is to provide override for non-JDBC or JDBC-like implementation of executing update.
protected  Number executeUpdate(StoreQuery.Executor ex, ClassMetaData base, ClassMetaData[] metas, boolean subclasses, ExpressionFactory[] facts, QueryExpressions[] exps, Object[] params)
           
protected  String[] getDataStoreActions(ClassMetaData base, ClassMetaData[] metas, boolean subclasses, ExpressionFactory[] facts, QueryExpressions[] exps, Object[] params, StoreQuery.Range range)
           
protected  ExpressionFactory getExpressionFactory(ClassMetaData meta)
           
 FilterListener getFilterListener(String tag)
           
protected  ClassMetaData[] getIndependentExpressionCandidates(ClassMetaData meta, boolean subclasses)
           
 JDBCStore getStore()
          Return the store.
 Object newCompilationKey()
           
protected  PreparedStatement prepareStatement(Connection conn, SQLBuffer sql)
          This method is to provide override for non-JDBC or JDBC-like implementation of preparing statement.
 boolean supportsDataStoreExecution()
           
 
Methods inherited from class org.apache.openjpa.kernel.ExpressionStoreQuery
getResolver, invalidateCompilation, newCompilation, newDataStoreExecutor, newInMemoryExecutor, populateFromCompilation, setQuery, supportsInMemoryExecution
 
Methods inherited from class org.apache.openjpa.kernel.AbstractStoreQuery
getAggregateListener, getContext, requiresCandidateType, requiresParameterDeclarations, setContext, supportsAbstractExecutors, supportsParameterDeclarations
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

JDBCStoreQuery

public JDBCStoreQuery(JDBCStore store,
                      ExpressionParser parser)
Constructor. Supply store manager.

Method Detail

getStore

public JDBCStore getStore()
Return the store.


getFilterListener

public FilterListener getFilterListener(String tag)
Specified by:
getFilterListener in interface StoreQuery
Overrides:
getFilterListener in class ExpressionStoreQuery

newCompilationKey

public Object newCompilationKey()
Specified by:
newCompilationKey in interface StoreQuery
Overrides:
newCompilationKey in class AbstractStoreQuery

supportsDataStoreExecution

public boolean supportsDataStoreExecution()
Specified by:
supportsDataStoreExecution in interface StoreQuery
Overrides:
supportsDataStoreExecution in class AbstractStoreQuery

getIndependentExpressionCandidates

protected ClassMetaData[] getIndependentExpressionCandidates(ClassMetaData meta,
                                                             boolean subclasses)
Overrides:
getIndependentExpressionCandidates in class ExpressionStoreQuery

getExpressionFactory

protected ExpressionFactory getExpressionFactory(ClassMetaData meta)
Overrides:
getExpressionFactory in class ExpressionStoreQuery

executeQuery

protected org.apache.openjpa.lib.rop.ResultObjectProvider executeQuery(StoreQuery.Executor ex,
                                                                       ClassMetaData base,
                                                                       ClassMetaData[] metas,
                                                                       boolean subclasses,
                                                                       ExpressionFactory[] facts,
                                                                       QueryExpressions[] exps,
                                                                       Object[] params,
                                                                       StoreQuery.Range range)
Overrides:
executeQuery in class ExpressionStoreQuery

executeDelete

protected Number executeDelete(StoreQuery.Executor ex,
                               ClassMetaData base,
                               ClassMetaData[] metas,
                               boolean subclasses,
                               ExpressionFactory[] facts,
                               QueryExpressions[] exps,
                               Object[] params)
Overrides:
executeDelete in class ExpressionStoreQuery

executeUpdate

protected Number executeUpdate(StoreQuery.Executor ex,
                               ClassMetaData base,
                               ClassMetaData[] metas,
                               boolean subclasses,
                               ExpressionFactory[] facts,
                               QueryExpressions[] exps,
                               Object[] params)
Overrides:
executeUpdate in class ExpressionStoreQuery

executeUpdate

protected Number executeUpdate(ClassMetaData base,
                               ClassMetaData[] metas,
                               boolean subclasses,
                               ExpressionFactory[] facts,
                               QueryExpressions[] parsed,
                               Object[] params)

getDataStoreActions

protected String[] getDataStoreActions(ClassMetaData base,
                                       ClassMetaData[] metas,
                                       boolean subclasses,
                                       ExpressionFactory[] facts,
                                       QueryExpressions[] exps,
                                       Object[] params,
                                       StoreQuery.Range range)
Overrides:
getDataStoreActions in class ExpressionStoreQuery

executeUpdate

protected int executeUpdate(Connection conn,
                            PreparedStatement stmnt,
                            SQLBuffer sqlBuf,
                            boolean isUpdate)
                     throws SQLException
This method is to provide override for non-JDBC or JDBC-like implementation of executing update.

Throws:
SQLException

prepareStatement

protected PreparedStatement prepareStatement(Connection conn,
                                             SQLBuffer sql)
                                      throws SQLException
This method is to provide override for non-JDBC or JDBC-like implementation of preparing statement.

Throws:
SQLException

evaluate

public Object evaluate(Object value,
                       Object ob,
                       Object[] params,
                       OpenJPAStateManager sm)
Specified by:
evaluate in interface StoreQuery
Overrides:
evaluate in class AbstractStoreQuery


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