Zeta Components - high quality PHP components

Zeta Components Manual :: Docs For Class ezcPersistentFindWithRelationsQuery

PersistentObject::ezcPersistentFindWithRelationsQuery

Class ezcPersistentFindWithRelationsQuery

Find query object for pre-fetching queries in ezcPersistentSessionIdentityDecorator.

This query class extends ezcPersistentFindQuery with the possibility to define related objects to be pre-fretched. Do not instantiate this class directly, but use ezcPersistentIdentityDecorator::createFindQueryWithRelations() instead.

Source for this file: /PersistentObject/src/queries/find_with_relations_query.php

ezcPersistentFindQuery
   |
   --ezcPersistentFindWithRelationsQuery
Version:   //autogen//

Properties

bool read $isRestricted
Whether the query has been restricted using a where() condition.

Inherited Member Variables

From ezcPersistentFindQuery
protected ezcPersistentFindQuery::$properties

Method Summary

public ezcPersistentFindWithRelationsQuery __construct( $query , $className , $relations )
Creates a new persistent find query.
public ezcQuerySelect where( $... )
Adds a where clause with logical expressions to the query.
public mixed __call( $methodName , $arguments )
Delegate to inner $query object.

Inherited Methods

From ezcPersistentFindQuery
public ezcPersistentFindQuery ezcPersistentFindQuery::__construct()
Creates a new persistent find query.
public mixed ezcPersistentFindQuery::__call()
Delegate to inner $query object.

Methods

__construct

ezcPersistentFindWithRelationsQuery __construct( $query , string $className , $relations )

Creates a new persistent find query.

Creates a new persistent find query from the query object $q and the given $className. $relations defines, which related objects should be fetched by this query.

Parameters:
Name Type Description
$query ezcQuerySelect
$className string
$relations array(string=>ezcPersistentRelationFindDefinition)
Redefinition of:
Method Description
ezcPersistentFindQuery::__construct() Creates a new persistent find query.

where

ezcQuerySelect where( string|array(string) $... )

Adds a where clause with logical expressions to the query.

where() accepts an arbitrary number of parameters. Each parameter must contain a logical expression or an array with logical expressions. If you specify multiple logical expression they are connected using a logical and.

Multiple calls to where() will join the expressions using a logical and.

Example:

  1.  $q->select( '*' )->from( 'table' )->where( $q->expr->eq( 'id', 1 ) );

Note, if you add a WHERE clause to this query, the fetched related objects will not be fetched into the ezcPersistentIdentityMap used as a typical related object set, but as a named set.

Parameters:
Name Type Description
$... string|array(string) Either a string with a logical expression name or an array with logical expressions.
Exceptions:
Type Description
ezcQueryVariableParameterException if called with no parameters.

__call

mixed __call( string $methodName , array $arguments )

Delegate to inner $query object.

This query object does not allow any other calls than {where()} and {groupBy()}. Therefore, this method throws an exception, for any other call.

Parameters:
Name Type Description
$methodName string
$arguments array
Exceptions:
Type Description
RuntimeException For any call.
Redefinition of:
Method Description
ezcPersistentFindQuery::__call() Delegate to inner $query object.
Documentation generated by phpDocumentor 1.4.3