MediaWiki  master
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 (ILoadBalancer $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 = []
 
ILoadBalancer $loadBalancer
 

Detailed Description

Database connection manager.

This manages access to master and replica databases.

Since
1.29
Author
Addshore

Definition at line 35 of file ConnectionManager.php.

Constructor & Destructor Documentation

◆ __construct()

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

Definition at line 62 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
IDatabase

Definition at line 116 of file ConnectionManager.php.

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

◆ getReadConnectionRef()

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

Returns a database connection ref for reading.

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

Definition at line 150 of file ConnectionManager.php.

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

◆ 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
IDatabase

Definition at line 102 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

Definition at line 137 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 126 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 47 of file ConnectionManager.php.

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

◆ $groups

◆ $loadBalancer

ILoadBalancer Wikimedia\Rdbms\ConnectionManager::$loadBalancer
private

Definition at line 40 of file ConnectionManager.php.

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


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