org.apache.ojb.odmg.oql
Class OQLQueryImpl

java.lang.Object
  extended by org.apache.ojb.odmg.oql.OQLQueryImpl
All Implemented Interfaces:
org.apache.ojb.broker.util.configuration.Configurable, EnhancedOQLQuery, OQLQuery

public class OQLQueryImpl
extends java.lang.Object
implements EnhancedOQLQuery, org.apache.ojb.broker.util.configuration.Configurable

The OQL query interface implementation.

Version:
$Id: OQLQueryImpl.java 365266 2005-12-31 18:51:59Z arminw $

Constructor Summary
OQLQueryImpl(ImplementationImpl odmg)
           
OQLQueryImpl(PBKey pbKey)
          Deprecated.  
 
Method Summary
 void bind(java.lang.Object parameter)
          Bind a parameter to the query.
 void configure(org.apache.ojb.broker.util.configuration.Configuration pConfig)
          configure an object using the Configuration pConfig
 void create(java.lang.String queryString)
          Create an OQL query from the string parameter.
 void create(java.lang.String queryString, int startAtIndex, int endAtIndex)
          An extension of the OQLQuery.create(String) method, which additionally allow to specify an start- and end-Index for the query.
 java.lang.Object execute()
          Execute the query.
 int fullSize()
          Deprecated method.
 Query getQuery()
          returns the compiled query object
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

OQLQueryImpl

public OQLQueryImpl(ImplementationImpl odmg)

OQLQueryImpl

public OQLQueryImpl(PBKey pbKey)
Deprecated. 

Parameters:
pbKey -
Method Detail

getQuery

public Query getQuery()
returns the compiled query object


bind

public void bind(java.lang.Object parameter)
          throws QueryParameterCountInvalidException,
                 QueryParameterTypeInvalidException
Bind a parameter to the query. A parameter is denoted in the query string passed to create by $i, where i is the rank of the parameter, beginning with 1. The parameters are set consecutively by calling this method bind. The ith variable is set by the ith call to the bind method. If any of the $i are not set by a call to bind at the point execute is called, QueryParameterCountInvalidException is thrown. The parameters must be objects, and the result is an Object. Objects must be used instead of primitive types (Integer instead of int) for passing the parameters.

If the parameter is of the wrong type, QueryParameterTypeInvalidException is thrown. After executing a query, the parameter list is reset.

Specified by:
bind in interface OQLQuery
Parameters:
parameter - A value to be substituted for a query parameter.
Throws:
QueryParameterCountInvalidException - The number of calls to bind has exceeded the number of parameters in the query.
QueryParameterTypeInvalidException - The type of the parameter does not correspond with the type of the parameter in the query.

create

public void create(java.lang.String queryString)
            throws QueryInvalidException
Create an OQL query from the string parameter. In order to execute a query, an OQLQuery object must be created by calling Implementation.newOQLQuery, then calling the create method with the query string. The create method might throw QueryInvalidException if the query could not be compiled properly. Some implementations may not want to compile the query before execute is called. In this case QueryInvalidException is thrown when execute is called.

Specified by:
create in interface OQLQuery
Parameters:
queryString - An OQL query.
Throws:
QueryInvalidException - The query syntax is invalid.

create

public void create(java.lang.String queryString,
                   int startAtIndex,
                   int endAtIndex)
            throws QueryInvalidException
Description copied from interface: EnhancedOQLQuery
An extension of the OQLQuery.create(String) method, which additionally allow to specify an start- and end-Index for the query.

Specified by:
create in interface EnhancedOQLQuery
Parameters:
queryString - An oql query string.
startAtIndex - The start index.
endAtIndex - The end index.
Throws:
QueryInvalidException - The type of the parameter does not correspond with the type of the parameter in the query.

execute

public java.lang.Object execute()
                         throws QueryException
Execute the query. After executing a query, the parameter list is reset. Some implementations may throw additional exceptions that are also derived from ODMGException.

Specified by:
execute in interface OQLQuery
Returns:
The object that represents the result of the query. The returned data, whatever its OQL type, is encapsulated into an object. For instance, when OQL returns an integer, the result is put into an Integer object. When OQL returns a collection (literal or object), the result is always a Java collection object of the same kind (for instance, a DList).
Throws:
QueryException - An exception has occurred while executing the query.

configure

public void configure(org.apache.ojb.broker.util.configuration.Configuration pConfig)
               throws org.apache.ojb.broker.util.configuration.ConfigurationException
Description copied from interface: org.apache.ojb.broker.util.configuration.Configurable
configure an object using the Configuration pConfig

Specified by:
configure in interface org.apache.ojb.broker.util.configuration.Configurable
Parameters:
pConfig - the Configuration object used to configure current instance
Throws:
org.apache.ojb.broker.util.configuration.ConfigurationException
See Also:
Configurable.configure(Configuration)

fullSize

public int fullSize()
Description copied from interface: EnhancedOQLQuery
Deprecated method.

Specified by:
fullSize in interface EnhancedOQLQuery


(C) 2002 - 2006 Apache Software Foundation
All rights reserved. Published under the Apache License 2.0.
http://db.apache.org/ojb
Version: 1.0.4, 2005-12-30