org.eclipse.emf.oda.ecore.impl
Class Query

java.lang.Object
  extended by org.eclipse.emf.oda.ecore.impl.Query
All Implemented Interfaces:
org.eclipse.datatools.connectivity.oda.IQuery

public class Query
extends java.lang.Object
implements org.eclipse.datatools.connectivity.oda.IQuery

Implementation of IQuery for EMF ODA runtime driver.


Field Summary
protected  Connection connection
           
protected  EClassifier context
           
static java.lang.String CONTEXT_PROPERTY_NAME
           
protected  QueryDelegate delegate
           
static java.lang.String DELEGATE_PROPERTY_NAME
           
protected  QueryDelegate.Factory factory
           
protected  int maxRows
           
protected  java.lang.String queryText
           
protected  org.eclipse.datatools.connectivity.oda.spec.QuerySpecification specification
           
protected  EClassifier type
           
static java.lang.String TYPE_PROPERTY_NAME
           
protected  java.util.Map<java.lang.String,EClassifier> variables
           
static java.lang.String VARIABLES_PROPERTY_NAME
           
 
Constructor Summary
protected Query(Connection connection)
           
 
Method Summary
protected  void assertPrepared()
          Asserts that this query has been prepared.
protected  void assertSpecified()
          Asserts that a specification has been provided for this query.
 void cancel()
           
 void clearInParameters()
           
 void close()
           
 org.eclipse.datatools.connectivity.oda.IResultSet executeQuery()
           
 int findInParameter(java.lang.String parameterName)
           
protected  EList<java.lang.Object> getAllObjectsByType(EList<java.lang.Object> objects, EClassifier type)
           
 java.lang.String getEffectiveQueryText()
           
 int getMaxRows()
           
 org.eclipse.datatools.connectivity.oda.IResultSetMetaData getMetaData()
           
 org.eclipse.datatools.connectivity.oda.IParameterMetaData getParameterMetaData()
           
protected  EList<java.lang.Object> getResults(EList<java.lang.Object> results, QueryDelegate delegate, EList<java.lang.Object> targets, java.util.Map<java.lang.String,java.lang.Object> arguments, EClassifier type)
           
 org.eclipse.datatools.connectivity.oda.SortSpec getSortSpec()
           
 org.eclipse.datatools.connectivity.oda.spec.QuerySpecification getSpecification()
           
protected  java.util.Map<java.lang.String,EClassifier> getVariables()
          Returns the expression variables specified for this query.
 void prepare(java.lang.String queryText)
           
 void setAppContext(java.lang.Object context)
           
 void setBigDecimal(int parameterId, java.math.BigDecimal value)
           
 void setBigDecimal(java.lang.String parameterName, java.math.BigDecimal value)
           
 void setBoolean(int parameterId, boolean value)
           
 void setBoolean(java.lang.String parameterName, boolean value)
           
 void setDate(int parameterId, java.sql.Date value)
           
 void setDate(java.lang.String parameterName, java.sql.Date value)
           
 void setDouble(int parameterId, double value)
           
 void setDouble(java.lang.String parameterName, double value)
           
 void setInt(int parameterId, int value)
           
 void setInt(java.lang.String parameterName, int value)
           
 void setMaxRows(int max)
           
 void setNull(int parameterId)
           
 void setNull(java.lang.String parameterName)
           
 void setObject(int parameterId, java.lang.Object value)
           
 void setObject(java.lang.String parameterName, java.lang.Object value)
           
 void setProperty(java.lang.String name, java.lang.String value)
           
 void setSortSpec(org.eclipse.datatools.connectivity.oda.SortSpec sortBy)
           
 void setSpecification(org.eclipse.datatools.connectivity.oda.spec.QuerySpecification querySpec)
           
 void setString(int parameterId, java.lang.String value)
           
 void setString(java.lang.String parameterName, java.lang.String value)
           
 void setTime(int parameterId, java.sql.Time value)
           
 void setTime(java.lang.String parameterName, java.sql.Time value)
           
 void setTimestamp(int parameterId, java.sql.Timestamp value)
           
 void setTimestamp(java.lang.String parameterName, java.sql.Timestamp value)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

DELEGATE_PROPERTY_NAME

public static final java.lang.String DELEGATE_PROPERTY_NAME
See Also:
Constant Field Values

CONTEXT_PROPERTY_NAME

public static final java.lang.String CONTEXT_PROPERTY_NAME
See Also:
Constant Field Values

VARIABLES_PROPERTY_NAME

public static final java.lang.String VARIABLES_PROPERTY_NAME
See Also:
Constant Field Values

TYPE_PROPERTY_NAME

public static final java.lang.String TYPE_PROPERTY_NAME
See Also:
Constant Field Values

connection

protected final Connection connection

specification

protected org.eclipse.datatools.connectivity.oda.spec.QuerySpecification specification

factory

protected QueryDelegate.Factory factory

delegate

protected QueryDelegate delegate

context

protected EClassifier context

variables

protected java.util.Map<java.lang.String,EClassifier> variables

type

protected EClassifier type

queryText

protected java.lang.String queryText

maxRows

protected int maxRows
Constructor Detail

Query

protected Query(Connection connection)
Method Detail

assertSpecified

protected void assertSpecified()
                        throws org.eclipse.datatools.connectivity.oda.OdaException
Asserts that a specification has been provided for this query.

Throws:
org.eclipse.datatools.connectivity.oda.OdaException - if a specification has not been provided

assertPrepared

protected void assertPrepared()
                       throws org.eclipse.datatools.connectivity.oda.OdaException
Asserts that this query has been prepared.

Throws:
org.eclipse.datatools.connectivity.oda.OdaException - if the query has not been prepared

getVariables

protected java.util.Map<java.lang.String,EClassifier> getVariables()
                                                            throws org.eclipse.datatools.connectivity.oda.OdaException
Returns the expression variables specified for this query.

Returns:
a map of variable names to types
Throws:
org.eclipse.datatools.connectivity.oda.OdaException - if a specification has not been provided

prepare

public void prepare(java.lang.String queryText)
             throws org.eclipse.datatools.connectivity.oda.OdaException
Specified by:
prepare in interface org.eclipse.datatools.connectivity.oda.IQuery
Throws:
org.eclipse.datatools.connectivity.oda.OdaException

setAppContext

public void setAppContext(java.lang.Object context)
                   throws org.eclipse.datatools.connectivity.oda.OdaException
Specified by:
setAppContext in interface org.eclipse.datatools.connectivity.oda.IQuery
Throws:
org.eclipse.datatools.connectivity.oda.OdaException

close

public void close()
           throws org.eclipse.datatools.connectivity.oda.OdaException
Specified by:
close in interface org.eclipse.datatools.connectivity.oda.IQuery
Throws:
org.eclipse.datatools.connectivity.oda.OdaException

getMetaData

public org.eclipse.datatools.connectivity.oda.IResultSetMetaData getMetaData()
                                                                      throws org.eclipse.datatools.connectivity.oda.OdaException
Specified by:
getMetaData in interface org.eclipse.datatools.connectivity.oda.IQuery
Throws:
org.eclipse.datatools.connectivity.oda.OdaException

getAllObjectsByType

protected EList<java.lang.Object> getAllObjectsByType(EList<java.lang.Object> objects,
                                                      EClassifier type)

getResults

protected EList<java.lang.Object> getResults(EList<java.lang.Object> results,
                                             QueryDelegate delegate,
                                             EList<java.lang.Object> targets,
                                             java.util.Map<java.lang.String,java.lang.Object> arguments,
                                             EClassifier type)
                                      throws java.lang.reflect.InvocationTargetException
Throws:
java.lang.reflect.InvocationTargetException

executeQuery

public org.eclipse.datatools.connectivity.oda.IResultSet executeQuery()
                                                               throws org.eclipse.datatools.connectivity.oda.OdaException
Specified by:
executeQuery in interface org.eclipse.datatools.connectivity.oda.IQuery
Throws:
org.eclipse.datatools.connectivity.oda.OdaException

setProperty

public void setProperty(java.lang.String name,
                        java.lang.String value)
                 throws org.eclipse.datatools.connectivity.oda.OdaException
Specified by:
setProperty in interface org.eclipse.datatools.connectivity.oda.IQuery
Throws:
org.eclipse.datatools.connectivity.oda.OdaException

setMaxRows

public void setMaxRows(int max)
                throws org.eclipse.datatools.connectivity.oda.OdaException
Specified by:
setMaxRows in interface org.eclipse.datatools.connectivity.oda.IQuery
Throws:
org.eclipse.datatools.connectivity.oda.OdaException

getMaxRows

public int getMaxRows()
               throws org.eclipse.datatools.connectivity.oda.OdaException
Specified by:
getMaxRows in interface org.eclipse.datatools.connectivity.oda.IQuery
Throws:
org.eclipse.datatools.connectivity.oda.OdaException

clearInParameters

public void clearInParameters()
                       throws org.eclipse.datatools.connectivity.oda.OdaException
Specified by:
clearInParameters in interface org.eclipse.datatools.connectivity.oda.IQuery
Throws:
org.eclipse.datatools.connectivity.oda.OdaException

setInt

public void setInt(java.lang.String parameterName,
                   int value)
            throws org.eclipse.datatools.connectivity.oda.OdaException
Specified by:
setInt in interface org.eclipse.datatools.connectivity.oda.IQuery
Throws:
org.eclipse.datatools.connectivity.oda.OdaException

setInt

public void setInt(int parameterId,
                   int value)
            throws org.eclipse.datatools.connectivity.oda.OdaException
Specified by:
setInt in interface org.eclipse.datatools.connectivity.oda.IQuery
Throws:
org.eclipse.datatools.connectivity.oda.OdaException

setDouble

public void setDouble(java.lang.String parameterName,
                      double value)
               throws org.eclipse.datatools.connectivity.oda.OdaException
Specified by:
setDouble in interface org.eclipse.datatools.connectivity.oda.IQuery
Throws:
org.eclipse.datatools.connectivity.oda.OdaException

setDouble

public void setDouble(int parameterId,
                      double value)
               throws org.eclipse.datatools.connectivity.oda.OdaException
Specified by:
setDouble in interface org.eclipse.datatools.connectivity.oda.IQuery
Throws:
org.eclipse.datatools.connectivity.oda.OdaException

setBigDecimal

public void setBigDecimal(java.lang.String parameterName,
                          java.math.BigDecimal value)
                   throws org.eclipse.datatools.connectivity.oda.OdaException
Specified by:
setBigDecimal in interface org.eclipse.datatools.connectivity.oda.IQuery
Throws:
org.eclipse.datatools.connectivity.oda.OdaException

setBigDecimal

public void setBigDecimal(int parameterId,
                          java.math.BigDecimal value)
                   throws org.eclipse.datatools.connectivity.oda.OdaException
Specified by:
setBigDecimal in interface org.eclipse.datatools.connectivity.oda.IQuery
Throws:
org.eclipse.datatools.connectivity.oda.OdaException

setString

public void setString(java.lang.String parameterName,
                      java.lang.String value)
               throws org.eclipse.datatools.connectivity.oda.OdaException
Specified by:
setString in interface org.eclipse.datatools.connectivity.oda.IQuery
Throws:
org.eclipse.datatools.connectivity.oda.OdaException

setString

public void setString(int parameterId,
                      java.lang.String value)
               throws org.eclipse.datatools.connectivity.oda.OdaException
Specified by:
setString in interface org.eclipse.datatools.connectivity.oda.IQuery
Throws:
org.eclipse.datatools.connectivity.oda.OdaException

setDate

public void setDate(java.lang.String parameterName,
                    java.sql.Date value)
             throws org.eclipse.datatools.connectivity.oda.OdaException
Specified by:
setDate in interface org.eclipse.datatools.connectivity.oda.IQuery
Throws:
org.eclipse.datatools.connectivity.oda.OdaException

setDate

public void setDate(int parameterId,
                    java.sql.Date value)
             throws org.eclipse.datatools.connectivity.oda.OdaException
Specified by:
setDate in interface org.eclipse.datatools.connectivity.oda.IQuery
Throws:
org.eclipse.datatools.connectivity.oda.OdaException

setTime

public void setTime(java.lang.String parameterName,
                    java.sql.Time value)
             throws org.eclipse.datatools.connectivity.oda.OdaException
Specified by:
setTime in interface org.eclipse.datatools.connectivity.oda.IQuery
Throws:
org.eclipse.datatools.connectivity.oda.OdaException

setTime

public void setTime(int parameterId,
                    java.sql.Time value)
             throws org.eclipse.datatools.connectivity.oda.OdaException
Specified by:
setTime in interface org.eclipse.datatools.connectivity.oda.IQuery
Throws:
org.eclipse.datatools.connectivity.oda.OdaException

setTimestamp

public void setTimestamp(java.lang.String parameterName,
                         java.sql.Timestamp value)
                  throws org.eclipse.datatools.connectivity.oda.OdaException
Specified by:
setTimestamp in interface org.eclipse.datatools.connectivity.oda.IQuery
Throws:
org.eclipse.datatools.connectivity.oda.OdaException

setTimestamp

public void setTimestamp(int parameterId,
                         java.sql.Timestamp value)
                  throws org.eclipse.datatools.connectivity.oda.OdaException
Specified by:
setTimestamp in interface org.eclipse.datatools.connectivity.oda.IQuery
Throws:
org.eclipse.datatools.connectivity.oda.OdaException

setBoolean

public void setBoolean(java.lang.String parameterName,
                       boolean value)
                throws org.eclipse.datatools.connectivity.oda.OdaException
Specified by:
setBoolean in interface org.eclipse.datatools.connectivity.oda.IQuery
Throws:
org.eclipse.datatools.connectivity.oda.OdaException

setBoolean

public void setBoolean(int parameterId,
                       boolean value)
                throws org.eclipse.datatools.connectivity.oda.OdaException
Specified by:
setBoolean in interface org.eclipse.datatools.connectivity.oda.IQuery
Throws:
org.eclipse.datatools.connectivity.oda.OdaException

setObject

public void setObject(java.lang.String parameterName,
                      java.lang.Object value)
               throws org.eclipse.datatools.connectivity.oda.OdaException
Specified by:
setObject in interface org.eclipse.datatools.connectivity.oda.IQuery
Throws:
org.eclipse.datatools.connectivity.oda.OdaException

setObject

public void setObject(int parameterId,
                      java.lang.Object value)
               throws org.eclipse.datatools.connectivity.oda.OdaException
Specified by:
setObject in interface org.eclipse.datatools.connectivity.oda.IQuery
Throws:
org.eclipse.datatools.connectivity.oda.OdaException

setNull

public void setNull(java.lang.String parameterName)
             throws org.eclipse.datatools.connectivity.oda.OdaException
Specified by:
setNull in interface org.eclipse.datatools.connectivity.oda.IQuery
Throws:
org.eclipse.datatools.connectivity.oda.OdaException

setNull

public void setNull(int parameterId)
             throws org.eclipse.datatools.connectivity.oda.OdaException
Specified by:
setNull in interface org.eclipse.datatools.connectivity.oda.IQuery
Throws:
org.eclipse.datatools.connectivity.oda.OdaException

findInParameter

public int findInParameter(java.lang.String parameterName)
                    throws org.eclipse.datatools.connectivity.oda.OdaException
Specified by:
findInParameter in interface org.eclipse.datatools.connectivity.oda.IQuery
Throws:
org.eclipse.datatools.connectivity.oda.OdaException

getParameterMetaData

public org.eclipse.datatools.connectivity.oda.IParameterMetaData getParameterMetaData()
                                                                               throws org.eclipse.datatools.connectivity.oda.OdaException
Specified by:
getParameterMetaData in interface org.eclipse.datatools.connectivity.oda.IQuery
Throws:
org.eclipse.datatools.connectivity.oda.OdaException

setSortSpec

public void setSortSpec(org.eclipse.datatools.connectivity.oda.SortSpec sortBy)
                 throws org.eclipse.datatools.connectivity.oda.OdaException
Specified by:
setSortSpec in interface org.eclipse.datatools.connectivity.oda.IQuery
Throws:
org.eclipse.datatools.connectivity.oda.OdaException

getSortSpec

public org.eclipse.datatools.connectivity.oda.SortSpec getSortSpec()
                                                            throws org.eclipse.datatools.connectivity.oda.OdaException
Specified by:
getSortSpec in interface org.eclipse.datatools.connectivity.oda.IQuery
Throws:
org.eclipse.datatools.connectivity.oda.OdaException

setSpecification

public void setSpecification(org.eclipse.datatools.connectivity.oda.spec.QuerySpecification querySpec)
                      throws org.eclipse.datatools.connectivity.oda.OdaException,
                             java.lang.UnsupportedOperationException
Specified by:
setSpecification in interface org.eclipse.datatools.connectivity.oda.IQuery
Throws:
org.eclipse.datatools.connectivity.oda.OdaException
java.lang.UnsupportedOperationException

getSpecification

public org.eclipse.datatools.connectivity.oda.spec.QuerySpecification getSpecification()
Specified by:
getSpecification in interface org.eclipse.datatools.connectivity.oda.IQuery

getEffectiveQueryText

public java.lang.String getEffectiveQueryText()
Specified by:
getEffectiveQueryText in interface org.eclipse.datatools.connectivity.oda.IQuery

cancel

public void cancel()
            throws org.eclipse.datatools.connectivity.oda.OdaException,
                   java.lang.UnsupportedOperationException
Specified by:
cancel in interface org.eclipse.datatools.connectivity.oda.IQuery
Throws:
org.eclipse.datatools.connectivity.oda.OdaException
java.lang.UnsupportedOperationException

Copyright 2001-2006 IBM Corporation and others.
All Rights Reserved.