# Criteria Class Reference
[Object queries API]

Inheritance diagram for Criteria:
[legend]

List of all members.

## Public Member Functions

| __construct ($dao=null)
| __clone ()
| __sleep ()
| __wakeup ()
| getDao ()
| setDao (ProtoDAO $dao)
| getLogic ()
| add (LogicalObject $logic)
| getOrder ()
| addOrder ($order)
| prependOrder ($order)
| dropOrder ()
| getLimit ()
| setLimit ($limit)
| getOffset ()
| setOffset ($offset)
| getFetchStrategy ()
| setFetchStrategy (FetchStrategy $strategy)
| setProjection (ObjectProjection $chain)
| addProjection (ObjectProjection $projection)
| getProjection ()
| dropProjection ()
| setDistinct ($orly=true)
| isDistinct ()
| isSilent ()
| setSilent ($silent)
| fetchCollection ($path, $lazy=false, $criteria=null)
| get ()
| getList ()
| getResult ()
| getCustom ($index=null)
| getCustomList ()
| getPropertyList ()
| toString ()
| toDialectString (Dialect $dialect)
| toSelectQuery ()
| fillSelectQuery (SelectQuery $query)
| dropProjectionByType ($dropTypes)

## Static Public Member Functions

static | create ($dao=null)

## Private Member Functions

| joinProperties (SelectQuery $query, ProtoDAO $parentDao, $parentTable, $parentRequired, $prefix=null)
| getProto ()

## Private Attributes

| $dao = null
| $daoClass = null
| $logic = null
| $order = null
| $strategy = null
| $projection = null
| $distinct = false
| $limit = null
| $offset = null
| $collections = array()
| $silent = true

## Detailed Description

See also:
  http://www.hibernate.org/hib_docs/v3/reference/en/html/querycriteria.html

Definition at line 17 of file Criteria.class.php.

## Constructor & Destructor Documentation

Criteria::__construct | ( | $ | dao = `null` | ) |

Definition at line 44 of file Criteria.class.php.

References $dao, Expression::andBlock(), Projection::chain(), Assert::isTrue(), and FetchStrategy::join().

Here is the call graph for this function:

## Member Function Documentation

Criteria::__clone | ( |  | ) |

Definition at line 56 of file Criteria.class.php.

Criteria::__sleep | ( |  | ) |

Definition at line 64 of file Criteria.class.php.

Criteria::__wakeup | ( |  | ) |

Definition at line 73 of file Criteria.class.php.

References Singleton::getInstance().

Here is the call graph for this function:

Criteria::add | ( | LogicalObject $ | logic | ) |

Returns:
  Criteria

Definition at line 107 of file Criteria.class.php.

Criteria::addOrder | ( | $ | order | ) |

Returns:
  Criteria

Definition at line 125 of file Criteria.class.php.

References $order.

Criteria::addProjection | ( | ObjectProjection $ | projection | ) |

Returns:
  Criteria

Definition at line 222 of file Criteria.class.php.

static Criteria::create | ( | $ | dao = `null` | ) | `[static]`

Returns:
  Criteria

Definition at line 39 of file Criteria.class.php.

References $dao.

Referenced by DaoMoveHelper::down(), DaoIterator::loadNextChunk(), and DaoMoveHelper::up().

Criteria::dropOrder | ( |  | ) |

Returns:
  Criteria

Definition at line 151 of file Criteria.class.php.

Criteria::dropProjection | ( |  | ) |

Returns:
  Criteria

Definition at line 244 of file Criteria.class.php.

References Projection::chain().

Here is the call graph for this function:

Criteria::dropProjectionByType | ( | $ | dropTypes | ) |

Returns:
  Criteria

Definition at line 481 of file Criteria.class.php.

References Assert::isInstance().

Here is the call graph for this function:

Criteria::fetchCollection | ( | $ | path,
|  | $ | lazy = `false`,
|  | $ | criteria = `null` |
| ) |  |  |

Returns:
  Criteria

Definition at line 286 of file Criteria.class.php.

References Assert::isBoolean(), and Assert::isTrue().

Here is the call graph for this function:

Criteria::fillSelectQuery | ( | SelectQuery $ | query | ) |

Returns:
  SelectQuery

Definition at line 447 of file Criteria.class.php.

References FetchStrategy::CASCADE, SelectQuery::distinct(), joinProperties(), and SelectQuery::setOrderChain().

Referenced by toSelectQuery().

Here is the call graph for this function:

Criteria::get | ( |  | ) |

Definition at line 306 of file Criteria.class.php.

References isSilent().

Here is the call graph for this function:

Criteria::getCustom | ( | $ | index = `null` | ) |

Definition at line 360 of file Criteria.class.php.

References isSilent(), and toSelectQuery().

Here is the call graph for this function:

Criteria::getCustomList | ( |  | ) |

Definition at line 383 of file Criteria.class.php.

References isSilent(), and toSelectQuery().

Here is the call graph for this function:

Criteria::getDao | ( |  | ) |

Returns:
  ProtoDAO

Definition at line 81 of file Criteria.class.php.

Referenced by CountProjection::getFunction(), PropertyProjection::process(), MappableObjectProjection::process(), HavingProjection::process(), GroupByPropertyProjection::process(), AggregateProjection::process(), and UnifiedContainer::setCriteria().

Criteria::getFetchStrategy | ( |  | ) |

Returns:
  FetchStrategy

Definition at line 191 of file Criteria.class.php.

Referenced by joinProperties().

Criteria::getLimit | ( |  | ) |

Definition at line 158 of file Criteria.class.php.

Criteria::getList | ( |  | ) |

Definition at line 325 of file Criteria.class.php.

References isSilent(), and toSelectQuery().

Here is the call graph for this function:

Criteria::getLogic | ( |  | ) |

Returns:
  LogicalChain

Definition at line 99 of file Criteria.class.php.

Criteria::getOffset | ( |  | ) |

Definition at line 173 of file Criteria.class.php.

Criteria::getOrder | ( |  | ) |

Returns:
  OrderChain

Definition at line 117 of file Criteria.class.php.

Criteria::getProjection | ( |  | ) |

Returns:
  ProjectionChain

Definition at line 236 of file Criteria.class.php.

Referenced by toSelectQuery().

Criteria::getPropertyList | ( |  | ) |

Definition at line 395 of file Criteria.class.php.

References isSilent(), and toSelectQuery().

Here is the call graph for this function:

Criteria::getProto | ( |  | ) | `[private]`

Returns:
  AbstractProtoClass

Definition at line 599 of file Criteria.class.php.

Criteria::getResult | ( |  | ) |

Returns:
  QueryResult

Definition at line 345 of file Criteria.class.php.

References toSelectQuery().

Here is the call graph for this function:

Criteria::isDistinct | ( |  | ) |

Definition at line 261 of file Criteria.class.php.

Criteria::isSilent | ( |  | ) |

Definition at line 266 of file Criteria.class.php.

Referenced by get(), getCustom(), getCustomList(), getList(), and getPropertyList().

Criteria::joinProperties | ( | SelectQuery $ | query,
|  | ProtoDAO $ | parentDao,
|  | $ | parentTable,
|  | $ | parentRequired,
|  | $ | prefix = `null` |
| ) |  |  | `[private]`

Definition at line 490 of file Criteria.class.php.

References $logic, DBField::create(), Expression::eq(), SelectQuery::get(), getFetchStrategy(), GenericDAO::getObjectName(), SelectQuery::hasJoinedTable(), SelectQuery::join(), FetchStrategy::JOIN, SelectQuery::leftJoin(), and MetaRelation::ONE_TO_ONE.

Referenced by fillSelectQuery().

Here is the call graph for this function:

Criteria::prependOrder | ( | $ | order | ) |

Returns:
  Criteria

Definition at line 138 of file Criteria.class.php.

References $order.

Criteria::setDao | ( | ProtoDAO $ | dao | ) |

Returns:
  Criteria

Definition at line 89 of file Criteria.class.php.

Referenced by UnifiedContainer::setCriteria().

Criteria::setDistinct | ( | $ | orly = `true` | ) |

Returns:
  Criteria

Definition at line 254 of file Criteria.class.php.

Criteria::setFetchStrategy | ( | FetchStrategy $ | strategy | ) |

Returns:
  Criteria

Definition at line 199 of file Criteria.class.php.

Criteria::setLimit | ( | $ | limit | ) |

Returns:
  Criteria

Definition at line 166 of file Criteria.class.php.

References $limit.

Criteria::setOffset | ( | $ | offset | ) |

Returns:
  Criteria

Definition at line 181 of file Criteria.class.php.

References $offset.

Criteria::setProjection | ( | ObjectProjection $ | chain | ) |

Returns:
  Criteria

Definition at line 209 of file Criteria.class.php.

References Projection::chain().

Here is the call graph for this function:

Criteria::setSilent | ( | $ | silent | ) |

Returns:
  Criteria

Definition at line 274 of file Criteria.class.php.

References $silent, and Assert::isBoolean().

Here is the call graph for this function:

Criteria::toDialectString | ( | Dialect $ | dialect | ) |

Definition at line 416 of file Criteria.class.php.

References toSelectQuery().

Referenced by toString().

Here is the call graph for this function:

Criteria::toSelectQuery | ( |  | ) |

Returns:
  SelectQuery

Definition at line 424 of file Criteria.class.php.

References fillSelectQuery(), getProjection(), and Assert::isNotNull().

Referenced by getCustom(), getCustomList(), getList(), getPropertyList(), getResult(), FullTextUtils::makeFullTextQuery(), and toDialectString().

Here is the call graph for this function:

Criteria::toString | ( |  | ) |

Reimplemented from QueryIdentification.

Definition at line 407 of file Criteria.class.php.

References DBPool::getByDao(), ImaginaryDialect::me(), and toDialectString().

Here is the call graph for this function:

## Member Data Documentation

Criteria::$collections = array()`[private]`

Definition at line 31 of file Criteria.class.php.

Criteria::$dao = null`[private]`

Definition at line 19 of file Criteria.class.php.

Referenced by __construct(), and create().

Criteria::$daoClass = null`[private]`

Definition at line 20 of file Criteria.class.php.

Criteria::$distinct = false`[private]`

Definition at line 26 of file Criteria.class.php.

Criteria::$limit = null`[private]`

Definition at line 28 of file Criteria.class.php.

Referenced by setLimit().

Criteria::$logic = null`[private]`

Definition at line 21 of file Criteria.class.php.

Referenced by joinProperties().

Criteria::$offset = null`[private]`

Definition at line 29 of file Criteria.class.php.

Referenced by setOffset().

Criteria::$order = null`[private]`

Definition at line 22 of file Criteria.class.php.

Referenced by addOrder(), and prependOrder().

Criteria::$projection = null`[private]`

Definition at line 24 of file Criteria.class.php.

Criteria::$silent = true`[private]`

Definition at line 34 of file Criteria.class.php.

Referenced by setSilent().

Criteria::$strategy = null`[private]`

Definition at line 23 of file Criteria.class.php.

The documentation for this class was generated from the following file:

- main/Criteria/Criteria.class.php