net.sourceforge.toscanaj.model.database
Class Query

java.lang.Object
  extended bynet.sourceforge.toscanaj.model.database.Query
All Implemented Interfaces:
XMLizable
Direct Known Subclasses:
AggregateQuery, DistinctListQuery, ListQuery

public abstract class Query
extends java.lang.Object
implements XMLizable


Nested Class Summary
protected  class Query.QueryField
           
 
Field Summary
protected  java.util.List fieldList
           
 
Constructor Summary
Query(org.jdom.Element element)
           
Query(java.lang.String name, java.lang.String header)
           
 
Method Summary
abstract  DatabaseRetrievedObject createDatabaseRetrievedObject(java.lang.String whereClause, java.util.Vector values, java.util.Vector referenceValues)
           
abstract  boolean doesNeedReferenceValues()
           
 java.lang.String formatResults(java.util.Vector values, int startPosition)
          Formats a row of a result set for this query.
protected abstract  java.lang.String getElementName()
           
 java.lang.String getName()
           
abstract  java.lang.String getOrderClause()
          Returns an SQL clause to order the results if possible.
abstract  java.lang.String getQueryHead()
           
 void insertQueryColumn(java.lang.String columnName, java.lang.String columnFormat, java.lang.String separator, java.lang.String queryPart, boolean isRelative)
           
 void readXML(org.jdom.Element elem)
          Read this element as the content of elem.
 org.jdom.Element toXML()
          Write this element as the content of elem.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

fieldList

protected java.util.List fieldList
Constructor Detail

Query

public Query(java.lang.String name,
             java.lang.String header)

Query

public Query(org.jdom.Element element)
Method Detail

toXML

public org.jdom.Element toXML()
Description copied from interface: XMLizable
Write this element as the content of elem.

Specified by:
toXML in interface XMLizable

readXML

public void readXML(org.jdom.Element elem)
Description copied from interface: XMLizable
Read this element as the content of elem.

Specified by:
readXML in interface XMLizable

getName

public java.lang.String getName()

insertQueryColumn

public void insertQueryColumn(java.lang.String columnName,
                              java.lang.String columnFormat,
                              java.lang.String separator,
                              java.lang.String queryPart,
                              boolean isRelative)

formatResults

public java.lang.String formatResults(java.util.Vector values,
                                      int startPosition)
Formats a row of a result set for this query. The input is a ResultSet which is supposed to point to an existing row. Column one is supposed to be the first column of the query definition and so on. The return value is a String which returns a formatted version of the row


getElementName

protected abstract java.lang.String getElementName()

getQueryHead

public abstract java.lang.String getQueryHead()

getOrderClause

public abstract java.lang.String getOrderClause()
Returns an SQL clause to order the results if possible. This is a clause of the form "ORDER BY [field1],...,[fieldN]", which is typically used only for list queries, all other query implementations should return an empty string.


createDatabaseRetrievedObject

public abstract DatabaseRetrievedObject createDatabaseRetrievedObject(java.lang.String whereClause,
                                                                      java.util.Vector values,
                                                                      java.util.Vector referenceValues)
Parameters:
whereClause - The SQL WHERE clause to query.
values - The query results to turn into objects
referenceValues - The reference values that can be used for relative results, usually the same values for the top node

doesNeedReferenceValues

public abstract boolean doesNeedReferenceValues()


The ToscanaJ project