MediaWiki  1.30.0
Wikimedia\Rdbms\ConnectionManager Class Reference

Database connection manager. More...

Inheritance diagram for Wikimedia\Rdbms\ConnectionManager:
Collaboration diagram for Wikimedia\Rdbms\ConnectionManager:

Public Member Functions

 __construct (LoadBalancer $loadBalancer, $domain=false, array $groups=[])
 
 getReadConnection (array $groups=null)
 Returns a database connection for reading. More...
 
 getReadConnectionRef (array $groups=null)
 Returns a database connection ref for reading. More...
 
 getWriteConnection ()
 Returns a connection to the master DB, for updating. More...
 
 getWriteConnectionRef ()
 Returns a connection ref to the master DB, for updating. More...
 
 releaseConnection (IDatabase $db)
 

Private Member Functions

 getConnection ( $i, array $groups=null)
 
 getConnectionRef ( $i, array $groups=null)
 

Private Attributes

string false $domain
 The symbolic name of the target database, or false for the local wiki's database. More...
 
string[] $groups = []
 
LoadBalancer $loadBalancer
 

Detailed Description

Database connection manager.

This manages access to master and replica databases.

Since
1.29
Note
GPL-2.0+
Author
Addshore

Definition at line 17 of file ConnectionManager.php.

Constructor & Destructor Documentation

◆ __construct()

Wikimedia\Rdbms\ConnectionManager::__construct ( LoadBalancer  $loadBalancer,
  $domain = false,
array  $groups = [] 
)
Parameters
LoadBalancer$loadBalancer
string | bool$domainOptional logical DB name, defaults to current wiki. This follows the convention for database names used by $loadBalancer.
string[]$groupssee LoadBalancer::getConnection
Exceptions
InvalidArgumentException

Definition at line 44 of file ConnectionManager.php.

References Wikimedia\Rdbms\ConnectionManager\$domain, Wikimedia\Rdbms\ConnectionManager\$groups, Wikimedia\Rdbms\ConnectionManager\$loadBalancer, and groups().

Member Function Documentation

◆ getConnection()

Wikimedia\Rdbms\ConnectionManager::getConnection (   $i,
array  $groups = null 
)
private

◆ getConnectionRef()

Wikimedia\Rdbms\ConnectionManager::getConnectionRef (   $i,
array  $groups = null 
)
private

◆ getReadConnection()

Wikimedia\Rdbms\ConnectionManager::getReadConnection ( array  $groups = null)

Returns a database connection for reading.

The connection should later be released by calling releaseConnection().

Since
1.29
Parameters
string[] | null$groups
Returns
Database

Reimplemented in Wikimedia\Rdbms\SessionConsistentConnectionManager.

Definition at line 98 of file ConnectionManager.php.

References Wikimedia\Rdbms\ConnectionManager\$groups, DB_REPLICA, Wikimedia\Rdbms\ConnectionManager\getConnection(), and groups().

◆ getReadConnectionRef()

Wikimedia\Rdbms\ConnectionManager::getReadConnectionRef ( array  $groups = null)

Returns a database connection ref for reading.

Since
1.29
Parameters
string[] | null$groups
Returns
DBConnRef

Reimplemented in Wikimedia\Rdbms\SessionConsistentConnectionManager.

Definition at line 132 of file ConnectionManager.php.

References Wikimedia\Rdbms\ConnectionManager\$groups, DB_REPLICA, Wikimedia\Rdbms\ConnectionManager\getConnectionRef(), and groups().

◆ getWriteConnection()

Wikimedia\Rdbms\ConnectionManager::getWriteConnection ( )

Returns a connection to the master DB, for updating.

The connection should later be released by calling releaseConnection().

Since
1.29
Returns
Database

Reimplemented in Wikimedia\Rdbms\SessionConsistentConnectionManager.

Definition at line 84 of file ConnectionManager.php.

References DB_MASTER, and Wikimedia\Rdbms\ConnectionManager\getConnection().

◆ getWriteConnectionRef()

Wikimedia\Rdbms\ConnectionManager::getWriteConnectionRef ( )

Returns a connection ref to the master DB, for updating.

Since
1.29
Returns
DBConnRef

Reimplemented in Wikimedia\Rdbms\SessionConsistentConnectionManager.

Definition at line 119 of file ConnectionManager.php.

References DB_MASTER, and Wikimedia\Rdbms\ConnectionManager\getConnectionRef().

◆ releaseConnection()

Wikimedia\Rdbms\ConnectionManager::releaseConnection ( IDatabase  $db)
Since
1.29
Parameters
IDatabase$db

Definition at line 108 of file ConnectionManager.php.

Member Data Documentation

◆ $domain

string false Wikimedia\Rdbms\ConnectionManager::$domain
private

The symbolic name of the target database, or false for the local wiki's database.

Definition at line 29 of file ConnectionManager.php.

Referenced by Wikimedia\Rdbms\ConnectionManager\__construct().

◆ $groups

◆ $loadBalancer

LoadBalancer Wikimedia\Rdbms\ConnectionManager::$loadBalancer
private

Definition at line 22 of file ConnectionManager.php.

Referenced by Wikimedia\Rdbms\ConnectionManager\__construct().


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