Elgg  Version master
Public Member Functions | Protected Member Functions | List of all members
Elgg\Database\Entities Class Reference

Entities repository contains methods for fetching entities from database or performing calculations on entity properties. More...

Inheritance diagram for Elgg\Database\Entities:
Elgg\Database\Repository Elgg\Database\QueryExecuting

Public Member Functions

 count ()
 {Count rows.
Returns
int
} More...
 
 calculate ($function, $property, $property_type=null)
 Performs a mathematical calculation on a set of entity properties. More...
 
 get ($limit=null, $offset=null, $callback=null)
 Fetch entities. More...
 
 getDates ()
 Returns a list of months in which entities were updated or created. More...
 
 execute ()
 Execute the query resolving calculation, count and/or batch options. More...
 
- Public Member Functions inherited from Elgg\Database\Repository
 __construct (array $options=[])
 Constructor. More...
 
 __get ($name)
 {} More...
 
 __set ($name, $value)
 {} More...
 
 __unset ($name)
 {} More...
 
 __isset ($name)
 {} More...
 
 batch ($limit=null, $offset=null, $callback=null)
 {Fetch rows as an ElggBatch.
Parameters
int$limitNumber of rows to fetch
int$offsetIndex of the first row
callable | false$callbackCallback function to run database rows through
Returns
ElggBatch
} More...
 
 filter (\Closure $closure)
 {} More...
 
 select ($expression)
 {Add SELECT.
Parameters
mixed$expressionSelect
Returns
static
} More...
 
 join ($joined_table, $joined_alias=null, $x=null, $comparison=null, $y=null, $type=null, $case_sensitive=null)
 {Add JOIN clause Join a database table on an $x to $y comparison.
Parameters
string$joined_tableName of the table (with or without dbprefix)
string$joined_aliasAlias of the joined table If not set, the alias will be assigned automatically
string$xBase column, e.g. 'n_table.entity_guid' This value is NOT a query parameter and will not be sanitized
string$comparisonComparison operator, e.g. '=', 'not like' etc
mixed$yComparison value(s)
string$typeType of the comparison value(s), e.g. ELGG_VALUE_STRING, ELGG_VALUE_INT
bool$case_sensitiveUse case senstivie comparison for string values
Returns
static
} More...
 
 groupBy ($expression)
 {Add GROUP BY.
Parameters
string$expressionGroup by
Returns
static
} More...
 
 having ($expression)
 {Add HAVING.
Parameters
string$expressionHaving
Returns
static
} More...
 
 orderBy ($expression, $direction)
 {Add ORDER BY.
Parameters
string$expressionColumn/calculation
string$directionDirection
Returns
static
} More...
 
 expandInto (QueryBuilder $qb, $table_alias=null)
 Extend query builder with select, group_by, having and order_by clauses from $options. More...
 
- Public Member Functions inherited from Elgg\Database\QueryExecuting
 filter (Closure $closure)
 Filter query prior to execution Callback function will receive QueryBuilder as the first argument and table alias as a second Callback function can either mutate the instance of the QueryBuilder or return a composition expression that will be appended to AND where statements. More...
 

Protected Member Functions

 buildQuery (QueryBuilder $qb)
 Build a database query. More...
 
 buildEntityClause (QueryBuilder $qb)
 Process entity attribute wheres Applies entity attribute constrains on the selected entities table. More...
 
 buildPairedMetadataClause (QueryBuilder $qb, $clauses, $boolean= 'AND')
 Process metadata name value pairs Joins the metadata table on entity guid in the entities table and applies metadata where clauses. More...
 
 buildPairedAnnotationClause (QueryBuilder $qb, $clauses, $boolean= 'AND')
 Process annotation name value pairs Joins the annotation table on entity guid in the entities table and applies annotation where clauses. More...
 
 buildPairedRelationshipClause (QueryBuilder $qb, $clauses, $boolean= 'AND')
 Process relationship pairs. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from Elgg\Database\Repository
static with (array $options=[])
 Constructs a new. More...
 
static find (array $options=[])
 Build and execute a new query from an array of legacy options. More...
 
- Protected Attributes inherited from Elgg\Database\Repository
 $options
 

Detailed Description

Entities repository contains methods for fetching entities from database or performing calculations on entity properties.

Definition at line 24 of file Entities.php.

Member Function Documentation

Elgg\Database\Entities::buildEntityClause ( QueryBuilder  $qb)
protected

Process entity attribute wheres Applies entity attribute constrains on the selected entities table.

Parameters
QueryBuilder$qbQuery builder
Returns
|CompositeExpression|mixed|null|string

Definition at line 259 of file Entities.php.

Elgg\Database\Entities::buildPairedAnnotationClause ( QueryBuilder  $qb,
  $clauses,
  $boolean = 'AND' 
)
protected

Process annotation name value pairs Joins the annotation table on entity guid in the entities table and applies annotation where clauses.

Parameters
QueryBuilder$qbQuery builder
AnnotationWhereClause[]$clauses Where clauses
string$booleanMerge boolean
Returns
CompositeExpression|string

Definition at line 301 of file Entities.php.

Elgg\Database\Entities::buildPairedMetadataClause ( QueryBuilder  $qb,
  $clauses,
  $boolean = 'AND' 
)
protected

Process metadata name value pairs Joins the metadata table on entity guid in the entities table and applies metadata where clauses.

Parameters
QueryBuilder$qbQuery builder
MetadataWhereClause[]$clauses Where clauses
string$booleanMerge boolean
Returns
CompositeExpression|string

Definition at line 273 of file Entities.php.

Elgg\Database\Entities::buildPairedRelationshipClause ( QueryBuilder  $qb,
  $clauses,
  $boolean = 'AND' 
)
protected

Process relationship pairs.

Parameters
QueryBuilder$qbQuery builder
RelationshipWhereClause[]$clauses Where clauses
string$booleanMerge boolean
Returns
CompositeExpression|string

Definition at line 325 of file Entities.php.

Elgg\Database\Entities::buildQuery ( QueryBuilder  $qb)
protected

Build a database query.

Parameters
QueryBuilder$qb
Returns
QueryBuilder

Definition at line 224 of file Entities.php.

Elgg\Database\Entities::calculate (   $function,
  $property,
  $property_type = null 
)

Performs a mathematical calculation on a set of entity properties.

Parameters
string$functionValid numeric function
string$propertyProperty name
string$property_type'attribute'|'metadata'|'annotation'
Returns
string
Exceptions
InvalidParameterException

Implements Elgg\Database\QueryExecuting.

Definition at line 56 of file Entities.php.

Elgg\Database\Entities::count ( )

{Count rows.

Returns
int
}

Implements Elgg\Database\QueryExecuting.

Definition at line 29 of file Entities.php.

Elgg\Database\Entities::execute ( )

Execute the query resolving calculation, count and/or batch options.

Returns
array|[]|[]|false|int
Exceptions
LogicException

Implements Elgg\Database\QueryExecuting.

Definition at line 188 of file Entities.php.

Elgg\Database\Entities::get (   $limit = null,
  $offset = null,
  $callback = null 
)

Fetch entities.

Parameters
int$limitLimit
int$offsetOffset
callable$callbackCustom callback
Returns
[]

Implements Elgg\Database\QueryExecuting.

Definition at line 109 of file Entities.php.

Elgg\Database\Entities::getDates ( )

Returns a list of months in which entities were updated or created.

Use this to generate a list of archives by month for when entities were added or updated.

Warning
Months are returned in the form YYYYMM.
Returns
array An array months as YYYYMM

Definition at line 156 of file Entities.php.


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