MediaWiki REL1_35
|
Class to handle database/schema/prefix specifications for IDatabase. More...
Public Member Functions | |
__construct ( $database, $schema, $prefix) | |
__toString () | |
equals ( $other) | |
getDatabase () | |
getId () | |
getSchema () | |
getTablePrefix () | |
isCompatible ( $other) | |
Check whether the domain $other meets the specifications of this domain. | |
isUnspecified () | |
Static Public Member Functions | |
static | newFromId ( $domain) |
static | newUnspecified () |
Private Member Functions | |
convertToString () | |
Static Private Member Functions | |
static | decode ( $encoded) |
static | encode ( $decoded) |
Private Attributes | |
string null | $database |
string | $equivalentString |
Cache of convertToString() | |
string | $prefix |
string null | $schema |
Class to handle database/schema/prefix specifications for IDatabase.
The components of a database domain are defined as follows:
If an RDBMS does not support server-side collections of table collections (schemas) then the schema component should be null and the "database" component treated as a collection of exactly one table collection (the implied schema for that "database").
The above criteria should determine how components should map to RDBMS specific keywords rather than "database"/"schema" always mapping to "DATABASE"/"SCHEMA" as used by the RDBMS.
Definition at line 40 of file DatabaseDomain.php.
Wikimedia\Rdbms\DatabaseDomain::__construct | ( | $database, | |
$schema, | |||
$prefix | |||
) |
string | null | $database | Database name |
string | null | $schema | Schema name |
string | $prefix | Table prefix |
Definition at line 56 of file DatabaseDomain.php.
References Wikimedia\Rdbms\DatabaseDomain\$database, Wikimedia\Rdbms\DatabaseDomain\$prefix, and Wikimedia\Rdbms\DatabaseDomain\$schema.
Wikimedia\Rdbms\DatabaseDomain::__toString | ( | ) |
Definition at line 270 of file DatabaseDomain.php.
References Wikimedia\Rdbms\DatabaseDomain\getId().
|
private |
Definition at line 207 of file DatabaseDomain.php.
References Wikimedia\Rdbms\DatabaseDomain\$prefix, and Wikimedia\Rdbms\DatabaseDomain\$schema.
Referenced by Wikimedia\Rdbms\DatabaseDomain\getId().
|
staticprivate |
Definition at line 242 of file DatabaseDomain.php.
|
staticprivate |
Definition at line 224 of file DatabaseDomain.php.
Wikimedia\Rdbms\DatabaseDomain::equals | ( | $other | ) |
DatabaseDomain | string | $other |
Definition at line 122 of file DatabaseDomain.php.
References Wikimedia\Rdbms\DatabaseDomain\getId().
Wikimedia\Rdbms\DatabaseDomain::getDatabase | ( | ) |
Definition at line 175 of file DatabaseDomain.php.
References Wikimedia\Rdbms\DatabaseDomain\$database.
Referenced by Wikimedia\Rdbms\DatabaseMysqlBase\doSelectDomain(), Wikimedia\Rdbms\DatabasePostgres\doSelectDomain(), Wikimedia\Rdbms\DatabaseSqlite\doSelectDomain(), Wikimedia\Rdbms\LoadBalancer\isMasterRunningReadOnly(), and Wikimedia\Rdbms\LoadBalancer\reallyOpenConnection().
Wikimedia\Rdbms\DatabaseDomain::getId | ( | ) |
Definition at line 196 of file DatabaseDomain.php.
References Wikimedia\Rdbms\DatabaseDomain\$equivalentString, and Wikimedia\Rdbms\DatabaseDomain\convertToString().
Referenced by Wikimedia\Rdbms\DatabaseDomain\__toString(), Wikimedia\Rdbms\DatabaseDomain\equals(), Wikimedia\Rdbms\DBConnRef\getDomainID(), Wikimedia\Rdbms\LoadBalancer\isMasterRunningReadOnly(), and Wikimedia\Rdbms\LoadBalancer\reallyOpenConnection().
Wikimedia\Rdbms\DatabaseDomain::getSchema | ( | ) |
Definition at line 182 of file DatabaseDomain.php.
References Wikimedia\Rdbms\DatabaseDomain\$schema.
Referenced by Wikimedia\Rdbms\DatabaseMysqlBase\doSelectDomain(), Wikimedia\Rdbms\DatabasePostgres\doSelectDomain(), Wikimedia\Rdbms\DatabaseSqlite\doSelectDomain(), Wikimedia\Rdbms\LoadBalancer\isMasterRunningReadOnly(), and Wikimedia\Rdbms\LoadBalancer\reallyOpenConnection().
Wikimedia\Rdbms\DatabaseDomain::getTablePrefix | ( | ) |
Definition at line 189 of file DatabaseDomain.php.
References Wikimedia\Rdbms\DatabaseDomain\$prefix.
Referenced by Wikimedia\Rdbms\DatabaseMysqlBase\doSelectDomain(), Wikimedia\Rdbms\DatabasePostgres\doSelectDomain(), Wikimedia\Rdbms\DatabaseSqlite\doSelectDomain(), and Wikimedia\Rdbms\LoadBalancer\reallyOpenConnection().
Wikimedia\Rdbms\DatabaseDomain::isCompatible | ( | $other | ) |
Check whether the domain $other meets the specifications of this domain.
If this instance has a null database specifier, then $other can have any database specifier, including null. This is likewise true if the schema specifier is null. This is not transitive like equals() since a domain that explicitly wants a certain database or schema cannot be satisfied by one of another (nor null). If the prefix is empty and the DB and schema are both null, then the entire domain is considered unspecified, and any prefix of $other is considered compatible.
DatabaseDomain | string | $other |
Definition at line 148 of file DatabaseDomain.php.
References Wikimedia\Rdbms\DatabaseDomain\isUnspecified(), and Wikimedia\Rdbms\DatabaseDomain\newFromId().
Wikimedia\Rdbms\DatabaseDomain::isUnspecified | ( | ) |
Definition at line 166 of file DatabaseDomain.php.
Referenced by Wikimedia\Rdbms\DatabaseDomain\isCompatible().
|
static |
DatabaseDomain | string | $domain | Result of DatabaseDomain::toString() |
Definition at line 77 of file DatabaseDomain.php.
References Wikimedia\Rdbms\DatabaseDomain\$database, Wikimedia\Rdbms\DatabaseDomain\$prefix, and Wikimedia\Rdbms\DatabaseDomain\$schema.
Referenced by Wikimedia\Rdbms\LBFactory\__construct(), Wikimedia\Rdbms\LoadBalancer\__construct(), Wikimedia\Rdbms\DBConnRef\dbSchema(), Wikimedia\Rdbms\DBConnRef\getDBname(), Wikimedia\Rdbms\LoadBalancer\getForeignConnection(), Wikimedia\Rdbms\LoadBalancer\getReadOnlyReason(), Wikimedia\Rdbms\DatabaseDomain\isCompatible(), Wikimedia\Rdbms\LBFactory\redefineLocalDomain(), Wikimedia\Rdbms\LoadBalancer\redefineLocalDomain(), Wikimedia\Rdbms\LBFactory\resolveDomainInstance(), Wikimedia\Rdbms\LoadBalancer\resolveDomainInstance(), Wikimedia\Rdbms\Database\selectDomain(), and Wikimedia\Rdbms\DBConnRef\tablePrefix().
|
static |
Definition at line 114 of file DatabaseDomain.php.
Referenced by Wikimedia\Rdbms\LBFactory\__construct(), and Wikimedia\Rdbms\LoadBalancer\__construct().
|
private |
Definition at line 42 of file DatabaseDomain.php.
Referenced by Wikimedia\Rdbms\DatabaseDomain\__construct(), Wikimedia\Rdbms\DatabaseDomain\getDatabase(), and Wikimedia\Rdbms\DatabaseDomain\newFromId().
|
private |
Cache of convertToString()
Definition at line 49 of file DatabaseDomain.php.
Referenced by Wikimedia\Rdbms\DatabaseDomain\getId().
|
private |
Definition at line 46 of file DatabaseDomain.php.
Referenced by Wikimedia\Rdbms\DatabaseDomain\__construct(), Wikimedia\Rdbms\DatabaseDomain\convertToString(), Wikimedia\Rdbms\DatabaseDomain\getTablePrefix(), and Wikimedia\Rdbms\DatabaseDomain\newFromId().
|
private |
Definition at line 44 of file DatabaseDomain.php.
Referenced by Wikimedia\Rdbms\DatabaseDomain\__construct(), Wikimedia\Rdbms\DatabaseDomain\convertToString(), Wikimedia\Rdbms\DatabaseDomain\getSchema(), and Wikimedia\Rdbms\DatabaseDomain\newFromId().