org.neodatis.odb.impl.core.query.values
Class ValuesCriteriaQuery

java.lang.Object
  extended by org.neodatis.odb.core.query.AbstractQuery
      extended by org.neodatis.odb.impl.core.query.criteria.CriteriaQuery
          extended by org.neodatis.odb.impl.core.query.values.ValuesCriteriaQuery
All Implemented Interfaces:
java.io.Serializable, IQuery, IValuesQuery

public class ValuesCriteriaQuery
extends CriteriaQuery
implements IValuesQuery

A values Criteria quwry is a query to retrieve object values instead of objects. Values Criteria Query allows one to retrieve one field value of an object: - A field values - The sum of a specific numeric field - The Max value of a specific numeric field - The Min value of a specific numeric field - The Average value of a specific numeric value

Author:
osmadja
See Also:
Serialized Form

Field Summary
 
Fields inherited from class org.neodatis.odb.core.query.AbstractQuery
executionPlan, oidOfObjectToQuery, orderByFields, orderByType, polymorphic, storageEngine
 
Constructor Summary
ValuesCriteriaQuery(java.lang.Class aClass)
           
ValuesCriteriaQuery(java.lang.Class aClass, ICriterion criteria)
           
ValuesCriteriaQuery(java.lang.Class aClass, OID oid)
           
ValuesCriteriaQuery(CriteriaQuery query)
           
ValuesCriteriaQuery(java.lang.String aFullClassName)
           
ValuesCriteriaQuery(java.lang.String aFullClassName, ICriterion criteria)
           
 
Method Summary
 IValuesQuery avg(java.lang.String attributeName)
           
 IValuesQuery avg(java.lang.String attributeName, java.lang.String alias)
           
 IValuesQuery count(java.lang.String alias)
           
 IValuesQuery custom(java.lang.String attributeName, ICustomQueryFieldAction action)
           
 IValuesQuery custom(java.lang.String attributeName, java.lang.String alias, ICustomQueryFieldAction action)
           
 IValuesQuery field(java.lang.String attributeName)
           
 IValuesQuery field(java.lang.String attributeName, java.lang.String alias)
           
 IOdbList<java.lang.String> getAllInvolvedFields()
          Returns the list of involved fields for this query.
 java.lang.String[] getGroupByFieldList()
           
 IOdbList<IQueryFieldAction> getObjectActions()
          A collection of IQueryFieldAction
 IValuesQuery groupBy(java.lang.String fieldList)
           
 boolean hasGroupBy()
           
 boolean isMultiRow()
          To indicate if a query will return one row (for example, sum, average, max and min, or will return more than one row
 IValuesQuery max(java.lang.String attributeName)
           
 IValuesQuery max(java.lang.String attributeName, java.lang.String alias)
           
 IValuesQuery min(java.lang.String attributeName)
           
 IValuesQuery min(java.lang.String attributeName, java.lang.String alias)
           
 boolean returnInstance()
           
 void setReturnInstance(boolean returnInstance)
          To indicate if query execution must build instances or return object representation, Default value is true(return instance)
 IValuesQuery size(java.lang.String attributeName)
           
 IValuesQuery size(java.lang.String attributeName, java.lang.String alias)
           
 IValuesQuery sublist(java.lang.String attributeName, int fromIndex, int toIndex)
           
 IValuesQuery sublist(java.lang.String attributeName, int fromIndex, int size, boolean throwException)
           
 IValuesQuery sublist(java.lang.String attributeName, java.lang.String alias, int fromIndex, int toIndex)
           
 IValuesQuery sublist(java.lang.String attributeName, java.lang.String alias, int fromIndex, int size, boolean throwException)
           
 IValuesQuery sum(java.lang.String attributeName)
           
 IValuesQuery sum(java.lang.String attributeName, java.lang.String alias)
           
 
Methods inherited from class org.neodatis.odb.impl.core.query.criteria.CriteriaQuery
getCriteria, getFullClassName, hasCriteria, match, match, setCriterion, setExecutionPlan, toString
 
Methods inherited from class org.neodatis.odb.core.query.AbstractQuery
getExecutionPlan, getOidOfObjectToQuery, getOrderByFieldNames, getOrderByType, getStorageEngine, hasOrderBy, isForSingleOid, isPolymorphic, optimizeObjectComparison, orderByAsc, orderByDesc, setOidOfObjectToQuery, setOptimizeObjectComparison, setOrderByFields, setOrderByType, setPolymorphic, setStorageEngine
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.neodatis.odb.core.query.IQuery
getExecutionPlan, getOidOfObjectToQuery, getOrderByFieldNames, getOrderByType, getStorageEngine, hasOrderBy, isForSingleOid, isPolymorphic, optimizeObjectComparison, orderByAsc, orderByDesc, setExecutionPlan, setOptimizeObjectComparison, setPolymorphic, setStorageEngine
 

Constructor Detail

ValuesCriteriaQuery

public ValuesCriteriaQuery(java.lang.Class aClass,
                           OID oid)

ValuesCriteriaQuery

public ValuesCriteriaQuery(java.lang.Class aClass,
                           ICriterion criteria)

ValuesCriteriaQuery

public ValuesCriteriaQuery(java.lang.Class aClass)

ValuesCriteriaQuery

public ValuesCriteriaQuery(java.lang.String aFullClassName)

ValuesCriteriaQuery

public ValuesCriteriaQuery(java.lang.String aFullClassName,
                           ICriterion criteria)

ValuesCriteriaQuery

public ValuesCriteriaQuery(CriteriaQuery query)
Method Detail

count

public IValuesQuery count(java.lang.String alias)
Specified by:
count in interface IValuesQuery

sum

public IValuesQuery sum(java.lang.String attributeName)
Specified by:
sum in interface IValuesQuery

sum

public IValuesQuery sum(java.lang.String attributeName,
                        java.lang.String alias)
Specified by:
sum in interface IValuesQuery

sublist

public IValuesQuery sublist(java.lang.String attributeName,
                            int fromIndex,
                            int size,
                            boolean throwException)
Specified by:
sublist in interface IValuesQuery

sublist

public IValuesQuery sublist(java.lang.String attributeName,
                            java.lang.String alias,
                            int fromIndex,
                            int size,
                            boolean throwException)
Specified by:
sublist in interface IValuesQuery

sublist

public IValuesQuery sublist(java.lang.String attributeName,
                            int fromIndex,
                            int toIndex)
Specified by:
sublist in interface IValuesQuery

sublist

public IValuesQuery sublist(java.lang.String attributeName,
                            java.lang.String alias,
                            int fromIndex,
                            int toIndex)
Specified by:
sublist in interface IValuesQuery

size

public IValuesQuery size(java.lang.String attributeName)
Specified by:
size in interface IValuesQuery

size

public IValuesQuery size(java.lang.String attributeName,
                         java.lang.String alias)
Specified by:
size in interface IValuesQuery

avg

public IValuesQuery avg(java.lang.String attributeName)
Specified by:
avg in interface IValuesQuery

avg

public IValuesQuery avg(java.lang.String attributeName,
                        java.lang.String alias)
Specified by:
avg in interface IValuesQuery

max

public IValuesQuery max(java.lang.String attributeName)
Specified by:
max in interface IValuesQuery

max

public IValuesQuery max(java.lang.String attributeName,
                        java.lang.String alias)
Specified by:
max in interface IValuesQuery

min

public IValuesQuery min(java.lang.String attributeName)

min

public IValuesQuery min(java.lang.String attributeName,
                        java.lang.String alias)

field

public IValuesQuery field(java.lang.String attributeName)
Specified by:
field in interface IValuesQuery

field

public IValuesQuery field(java.lang.String attributeName,
                          java.lang.String alias)
Specified by:
field in interface IValuesQuery

custom

public IValuesQuery custom(java.lang.String attributeName,
                           ICustomQueryFieldAction action)

custom

public IValuesQuery custom(java.lang.String attributeName,
                           java.lang.String alias,
                           ICustomQueryFieldAction action)

getObjectActions

public IOdbList<IQueryFieldAction> getObjectActions()
Description copied from interface: IValuesQuery
A collection of IQueryFieldAction

Specified by:
getObjectActions in interface IValuesQuery

getAllInvolvedFields

public IOdbList<java.lang.String> getAllInvolvedFields()
Returns the list of involved fields for this query. List of String
 If query must return sum("value") and field("name"), involvedField will contain "value","name"
 

Specified by:
getAllInvolvedFields in interface IValuesQuery
Overrides:
getAllInvolvedFields in class CriteriaQuery

isMultiRow

public boolean isMultiRow()
Description copied from interface: IValuesQuery
To indicate if a query will return one row (for example, sum, average, max and min, or will return more than one row

Specified by:
isMultiRow in interface IValuesQuery

groupBy

public IValuesQuery groupBy(java.lang.String fieldList)
Specified by:
groupBy in interface IValuesQuery

hasGroupBy

public boolean hasGroupBy()
Specified by:
hasGroupBy in interface IValuesQuery

getGroupByFieldList

public java.lang.String[] getGroupByFieldList()
Specified by:
getGroupByFieldList in interface IValuesQuery

returnInstance

public boolean returnInstance()
Specified by:
returnInstance in interface IValuesQuery
Returns:

setReturnInstance

public void setReturnInstance(boolean returnInstance)
Description copied from interface: IValuesQuery
To indicate if query execution must build instances or return object representation, Default value is true(return instance)

Specified by:
setReturnInstance in interface IValuesQuery