MediaWiki
master
|
Public Member Functions | |
canHaveField ($name) | |
Gets if the object can take a certain field. | |
count (array $conditions=array(), array $options=array()) | |
Returns the amount of matching records. | |
delete (array $conditions, $functionName=null) | |
Removes the object from the database. | |
getAPIParams ($requireParams=false, $setDefaults=false) | |
Get API parameters for the fields supported by this object. | |
getDefaults () | |
Returns a list of default field values. | |
getFieldDescriptions () | |
Returns an array with the fields and their descriptions. | |
getFieldNames () | |
Return the names of the fields. | |
getFieldsFromDBResult (stdClass $result) | |
Get an array with fields from a database result, that can be fed directly to the constructor or to setFields. | |
getLoadBalancer () | |
Get the database type used for read operations. | |
getPrefixedField ($field) | |
Takes in a field and returns an it's prefixed version, ready for db usage. | |
getPrefixedFields (array $fields) | |
Takes in a field or array of fields and returns an array with their prefixed versions, ready for db usage. | |
getPrefixedValues (array $values) | |
Takes in an associative array with field names as keys and their values as value. | |
getReadDb () | |
Get the database ID used for read operations. | |
getReadDbConnection () | |
Get the database type used for read operations. | |
getSummaryFields () | |
Returns a list of the summary fields. | |
getTargetWiki () | |
Get the ID of the any foreign wiki to use as a target for database operations. | |
getWriteDbConnection () | |
Get the database type used for read operations. | |
has (array $conditions=array()) | |
Returns if there is at least one record matching the provided conditions. | |
newFromArray (array $data, $loadDefaults=false) | |
newFromDBResult (stdClass $result) | |
newRow (array $data, $loadDefaults=false) | |
Get a new instance of the class from an array. | |
newRowFromDBResult (stdClass $result) | |
Get a new instance of the class from a database result. | |
rawSelect ($fields=null, array $conditions=array(), array $options=array(), $functionName=null) | |
Do the actual select. | |
rawSelectRow (array $fields, array $conditions=array(), array $options=array(), $functionName=null) | |
Selects the the specified fields of the records matching the provided conditions. | |
releaseConnection (DatabaseBase $db) | |
Releases the lease on the given database connection. | |
select ($fields=null, array $conditions=array(), array $options=array(), $functionName=null) | |
Selects the the specified fields of the records matching the provided conditions and returns them as DBDataObject. | |
selectFields ($fields=null, array $conditions=array(), array $options=array(), $collapse=true, $functionName=null) | |
Selects the the specified fields of the records matching the provided conditions and returns them as associative arrays. | |
selectFieldsRow ($fields=null, array $conditions=array(), array $options=array(), $collapse=true, $functionName=null) | |
Selects the the specified fields of the first record matching the provided conditions and returns it as an associative array, or false when nothing matches. | |
selectObjects ($fields=null, array $conditions=array(), array $options=array(), $functionName=null) | |
Selects the the specified fields of the records matching the provided conditions and returns them as DBDataObject. | |
selectRow ($fields=null, array $conditions=array(), array $options=array(), $functionName=null) | |
Selects the the specified fields of the first matching record. | |
setReadDb ($db) | |
Set the database ID to use for read operations, use DB_XXX constants or an index to the load balancer setup. | |
setTargetWiki ($wiki) | |
Set the ID of the any foreign wiki to use as a target for database operations. | |
unprefixFieldName ($fieldName) | |
Takes a field name with prefix and returns the unprefixed equivalent. | |
unprefixFieldNames (array $fieldNames) | |
Takes an array of field names with prefix and returns the unprefixed equivalent. | |
update (array $values, array $conditions=array()) | |
Update the records matching the provided conditions by setting the fields that are keys in the $values param to their corresponding values. | |
updateSummaryFields ($summaryFields=null, array $conditions=array()) | |
Computes the values of the summary fields of the objects matching the provided conditions. | |
Static Public Member Functions | |
static | singleton () |
Get an instance of this class. | |
Protected Member Functions | |
getFieldPrefix () | |
Gets the db field prefix. | |
Protected Attributes | |
integer | $readDb = DB_SLAVE |
ID of the database connection to use for read operations. | |
String bool | $wiki = false |
The ID of any foreign wiki to use as a target for database operations, or false to use the local wiki. | |
Static Protected Attributes | |
static | $instanceCache = array() |
Definition at line 30 of file ORMTable.php.
ORMTable::canHaveField | ( | $ | name | ) |
Gets if the object can take a certain field.
string | $name |
Implements IORMTable.
Definition at line 774 of file ORMTable.php.
ORMTable::count | ( | array $ | conditions = array() , |
array $ | options = array() |
||
) |
Returns the amount of matching records.
Condition field names get prefixed.
Note that this can be expensive on large tables. In such cases you might want to use DatabaseBase::estimateRowCount instead.
array | $conditions | |
array | $options |
Implements IORMTable.
Definition at line 323 of file ORMTable.php.
ORMTable::delete | ( | array $ | conditions, |
$ | functionName = null |
||
) |
Removes the object from the database.
array | $conditions | |
string | null | $functionName |
Implements IORMTable.
Definition at line 343 of file ORMTable.php.
ORMTable::getAPIParams | ( | $ | requireParams = false , |
$ | setDefaults = false |
||
) |
Get API parameters for the fields supported by this object.
boolean | $requireParams | |
boolean | $setDefaults |
Implements IORMTable.
Definition at line 366 of file ORMTable.php.
Returns a list of default field values.
field name => field value
Implements IORMTable.
Reimplemented in SitesTable.
Definition at line 73 of file ORMTable.php.
Returns an array with the fields and their descriptions.
field name => field description
Implements IORMTable.
Definition at line 414 of file ORMTable.php.
Return the names of the fields.
Implements IORMTable.
Definition at line 761 of file ORMTable.php.
ORMTable::getFieldPrefix | ( | ) | [abstract, protected] |
ORMTable::getFieldsFromDBResult | ( | stdClass $ | result | ) |
Get an array with fields from a database result, that can be fed directly to the constructor or to setFields.
stdClass | $result |
Implements IORMTable.
Definition at line 689 of file ORMTable.php.
Get the database type used for read operations.
Implements IORMTable.
Definition at line 499 of file ORMTable.php.
ORMTable::getPrefixedField | ( | $ | field | ) |
Takes in a field and returns an it's prefixed version, ready for db usage.
string | array | $field |
Implements IORMTable.
Definition at line 631 of file ORMTable.php.
ORMTable::getPrefixedFields | ( | array $ | fields | ) |
Takes in a field or array of fields and returns an array with their prefixed versions, ready for db usage.
array | string | $fields |
Implements IORMTable.
Definition at line 614 of file ORMTable.php.
ORMTable::getPrefixedValues | ( | array $ | values | ) |
Takes in an associative array with field names as keys and their values as value.
The field names are prefixed with the db field prefix.
array | $values |
Implements IORMTable.
Definition at line 581 of file ORMTable.php.
Get the database ID used for read operations.
Implements IORMTable.
Definition at line 425 of file ORMTable.php.
Get the database type used for read operations.
This is to be used instead of wfGetDB.
Implements IORMTable.
Definition at line 472 of file ORMTable.php.
Returns a list of the summary fields.
These are fields that cache computed values, such as the amount of linked objects of $type. This is relevant as one might not want to do actions such as log changes when these get updated.
Implements IORMTable.
Definition at line 86 of file ORMTable.php.
Get the ID of the any foreign wiki to use as a target for database operations.
Implements IORMTable.
Definition at line 447 of file ORMTable.php.
Get the database type used for read operations.
This is to be used instead of wfGetDB.
Implements IORMTable.
Definition at line 486 of file ORMTable.php.
ORMTable::has | ( | array $ | conditions = array() | ) |
Returns if there is at least one record matching the provided conditions.
Condition field names get prefixed.
array | $conditions |
Implements IORMTable.
Definition at line 305 of file ORMTable.php.
ORMTable::newFromArray | ( | array $ | data, |
$ | loadDefaults = false |
||
) |
array | $data | |
boolean | $loadDefaults |
Definition at line 735 of file ORMTable.php.
ORMTable::newFromDBResult | ( | stdClass $ | result | ) |
stdClass | $result |
Definition at line 707 of file ORMTable.php.
ORMTable::newRow | ( | array $ | data, |
$ | loadDefaults = false |
||
) |
Get a new instance of the class from an array.
array | $data | |
boolean | $loadDefaults |
Implements IORMTable.
Reimplemented in SitesTable.
Definition at line 749 of file ORMTable.php.
ORMTable::newRowFromDBResult | ( | stdClass $ | result | ) |
Get a new instance of the class from a database result.
stdClass | $result |
Implements IORMTable.
Definition at line 720 of file ORMTable.php.
ORMTable::rawSelect | ( | $ | fields = null , |
array $ | conditions = array() , |
||
array $ | options = array() , |
||
$ | functionName = null |
||
) |
Do the actual select.
null | string | array | $fields | |
array | $conditions | |
array | $options | |
null | string | $functionName |
Implements IORMTable.
Definition at line 146 of file ORMTable.php.
ORMTable::rawSelectRow | ( | array $ | fields, |
array $ | conditions = array() , |
||
array $ | options = array() , |
||
$ | functionName = null |
||
) |
Selects the the specified fields of the records matching the provided conditions.
Field names do NOT get prefixed.
array | $fields | |
array | $conditions | |
array | $options | |
string | null | $functionName |
Implements IORMTable.
Definition at line 253 of file ORMTable.php.
Releases the lease on the given database connection.
This is useful mainly for connections to a foreign wiki. It does nothing for connections to the local wiki.
DatabaseBase | $db | the database |
Implements IORMTable.
Definition at line 513 of file ORMTable.php.
ORMTable::select | ( | $ | fields = null , |
array $ | conditions = array() , |
||
array $ | options = array() , |
||
$ | functionName = null |
||
) |
Selects the the specified fields of the records matching the provided conditions and returns them as DBDataObject.
Field names get prefixed.
array | string | null | $fields | |
array | $conditions | |
array | $options | |
string | null | $functionName |
Implements IORMTable.
Definition at line 103 of file ORMTable.php.
ORMTable::selectFields | ( | $ | fields = null , |
array $ | conditions = array() , |
||
array $ | options = array() , |
||
$ | collapse = true , |
||
$ | functionName = null |
||
) |
Selects the the specified fields of the records matching the provided conditions and returns them as associative arrays.
Provided field names get prefixed. Returned field names will not have a prefix.
When $collapse is true: If one field is selected, each item in the result array will be this field. If two fields are selected, each item in the result array will have as key the first field and as value the second field. If more then two fields are selected, each item will be an associative array.
array | string | null | $fields | |
array | $conditions | |
array | $options | |
boolean | $collapse | Set to false to always return each result row as associative array. |
string | null | $functionName |
Implements IORMTable.
Definition at line 190 of file ORMTable.php.
ORMTable::selectFieldsRow | ( | $ | fields = null , |
array $ | conditions = array() , |
||
array $ | options = array() , |
||
$ | collapse = true , |
||
$ | functionName = null |
||
) |
Selects the the specified fields of the first record matching the provided conditions and returns it as an associative array, or false when nothing matches.
This method makes use of selectFields and expects the same parameters and returns the same results (if there are any, if there are none, this method returns false).
array | string | null | $fields | |
array | $conditions | |
array | $options | |
boolean | $collapse | Set to false to always return each result row as associative array. |
string | null | $functionName |
Implements IORMTable.
Definition at line 286 of file ORMTable.php.
ORMTable::selectObjects | ( | $ | fields = null , |
array $ | conditions = array() , |
||
array $ | options = array() , |
||
$ | functionName = null |
||
) |
Selects the the specified fields of the records matching the provided conditions and returns them as DBDataObject.
Field names get prefixed.
array | string | null | $fields | |
array | $conditions | |
array | $options | |
string | null | $functionName |
Implements IORMTable.
Definition at line 121 of file ORMTable.php.
ORMTable::selectRow | ( | $ | fields = null , |
array $ | conditions = array() , |
||
array $ | options = array() , |
||
$ | functionName = null |
||
) |
Selects the the specified fields of the first matching record.
Field names get prefixed.
array | string | null | $fields | |
array | $conditions | |
array | $options | |
string | null | $functionName |
Implements IORMTable.
Definition at line 231 of file ORMTable.php.
ORMTable::setReadDb | ( | $ | db | ) |
Set the database ID to use for read operations, use DB_XXX constants or an index to the load balancer setup.
integer | $db |
Implements IORMTable.
Definition at line 436 of file ORMTable.php.
ORMTable::setTargetWiki | ( | $ | wiki | ) |
Set the ID of the any foreign wiki to use as a target for database operations.
String | bool | $wiki | The target wiki, in a form that LBFactory understands (or false if the local wiki shall be used) |
Implements IORMTable.
Definition at line 458 of file ORMTable.php.
static ORMTable::singleton | ( | ) | [static] |
Get an instance of this class.
Implements IORMTable.
Definition at line 668 of file ORMTable.php.
Referenced by SiteObjectTest\getTableInstance(), TestORMRowTest\getTableInstance(), MediaWikiSite\newFromGlobalId(), and MediaWikiSiteTest\testFactoryConstruction().
ORMTable::unprefixFieldName | ( | $ | fieldName | ) |
Takes a field name with prefix and returns the unprefixed equivalent.
string | $fieldName |
Implements IORMTable.
Definition at line 657 of file ORMTable.php.
ORMTable::unprefixFieldNames | ( | array $ | fieldNames | ) |
Takes an array of field names with prefix and returns the unprefixed equivalent.
array | $fieldNames |
Implements IORMTable.
Definition at line 644 of file ORMTable.php.
ORMTable::update | ( | array $ | values, |
array $ | conditions = array() |
||
) |
Update the records matching the provided conditions by setting the fields that are keys in the $values param to their corresponding values.
array | $values | |
array | $conditions |
Implements IORMTable.
Definition at line 532 of file ORMTable.php.
ORMTable::updateSummaryFields | ( | $ | summaryFields = null , |
array $ | conditions = array() |
||
) |
Computes the values of the summary fields of the objects matching the provided conditions.
array | string | null | $summaryFields | |
array | $conditions |
Implements IORMTable.
Definition at line 554 of file ORMTable.php.
ORMTable::$instanceCache = array() [static, protected] |
Definition at line 47 of file ORMTable.php.
integer ORMTable::$readDb = DB_SLAVE [protected] |
ID of the database connection to use for read operations.
Can be changed via
Definition at line 55 of file ORMTable.php.
The ID of any foreign wiki to use as a target for database operations, or false to use the local wiki.
Definition at line 63 of file ORMTable.php.