# ProtoDAO Class Reference
[Root classes for building DAO hierarchies]

Inheritance diagram for ProtoDAO:
[legend]

List of all members.

## Public Member Functions

| getJoinPrefix ($field, $prefix=null)
| getJoinName ($field, $prefix=null)
| fetchCollections (array $collections, array $list)
| guessAtom ($atom, JoinCapableQuery $query, $table=null, $parentRequired=true, $prefix=null)

## Protected Member Functions

| setQueryFields (InsertOrUpdateQuery $query, $object)

## Private Member Functions

| processPath (AbstractProtoClass $proto, $probablyPath, JoinCapableQuery $query, $table, $parentRequired=true, $prefix=null)

## Detailed Description

Definition at line 15 of file ProtoDAO.class.php.

## Member Function Documentation

ProtoDAO::fetchCollections | ( | array $ | collections,
|  | array $ | list |
| ) |  |  |

Definition at line 27 of file ProtoDAO.class.php.

References DBField::create(), GenericDAO::getIdName(), ArrayUtils::getIdsArray(), GenericDAO::getObjectName(), GenericDAO::getTable(), Expression::in(), Assert::isNotEmptyArray(), Assert::isTrue(), MetaRelation::MANY_TO_MANY, Expression::notNull(), MetaRelation::ONE_TO_MANY, processPath(), and OSQL::select().

Here is the call graph for this function:

ProtoDAO::getJoinName | ( | $ | field,
|  | $ | prefix = `null` |
| ) |  |  |

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

Referenced by getJoinPrefix().

ProtoDAO::getJoinPrefix | ( | $ | field,
|  | $ | prefix = `null` |
| ) |  |  |

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

References getJoinName().

Here is the call graph for this function:

ProtoDAO::guessAtom | ( | $ | atom,
|  | JoinCapableQuery $ | query,
|  | $ | table = `null`,
|  | $ | parentRequired = `true`,
|  | $ | prefix = `null` |
| ) |  |  |

Definition at line 349 of file ProtoDAO.class.php.

References GenericDAO::getMapping(), GenericDAO::getObjectName(), GenericDAO::getTable(), and processPath().

Referenced by processPath(), SQLFunction::toMapped(), SQLChain::toMapped(), OrderBy::toMapped(), GroupBy::toMapped(), FullText::toMapped(), ExtractPart::toMapped(), PrefixUnaryExpression::toMapped(), PostfixUnaryExpression::toMapped(), LogicalBetween::toMapped(), InExpression::toMapped(), EqualsLowerExpression::toMapped(), and BinaryExpression::toMapped().

Here is the call graph for this function:

ProtoDAO::processPath | ( | AbstractProtoClass $ | proto,
|  | $ | probablyPath,
|  | JoinCapableQuery $ | query,
|  | $ | table,
|  | $ | parentRequired = `true`,
|  | $ | prefix = `null` |
| ) |  |  | `[private]`

Definition at line 168 of file ProtoDAO.class.php.

References Assert::classExists(), DBField::create(), Expression::eq(), GenericDAO::getIdName(), GenericDAO::getObjectName(), AbstractProtoClass::getPropertyByName(), guessAtom(), JoinCapableQuery::hasJoinedTable(), Assert::isNotNull(), Assert::isTrue(), JoinCapableQuery::join(), JoinCapableQuery::leftJoin(), MetaRelation::MANY_TO_MANY, and MetaRelation::ONE_TO_MANY.

Referenced by fetchCollections(), and guessAtom().

Here is the call graph for this function:

ProtoDAO::setQueryFields | ( | InsertOrUpdateQuery $ | query,
|  | $ | object |
| ) |  |  | `[protected]`

Definition at line 161 of file ProtoDAO.class.php.

References GenericDAO::checkObjectType(), and GenericDAO::getProtoClass().

Here is the call graph for this function:

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

- main/DAOs/ProtoDAO.class.php