From 7a9d1afde59ec5fb8aa7e48e3022ae7adc1e5385 Mon Sep 17 00:00:00 2001 From: Thiemo Kreuz Date: Mon, 14 May 2018 13:27:23 +0200 Subject: [PATCH] ConnectionManager: Require ILoadBalancer instead of LoadBalancer Since I4fdf7f7 more code stops returning the implementation, but only returns the interface. This is a good, very welcome change. However, ConnectionManager still requires the LoadBalancer implementation, for no obvious reason. All code in this class works fine with the interface. This is currently reported by Phan as a violation (and it actually is one), e.g.: https://integration.wikimedia.org/ci/job/mwext-php70-phan-docker/6433/console Change-Id: I63cbb98fd277b0c64ab8b303888b9354c4be29e2 --- includes/libs/rdbms/connectionmanager/ConnectionManager.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/includes/libs/rdbms/connectionmanager/ConnectionManager.php b/includes/libs/rdbms/connectionmanager/ConnectionManager.php index 4a497b088b..27e6138102 100644 --- a/includes/libs/rdbms/connectionmanager/ConnectionManager.php +++ b/includes/libs/rdbms/connectionmanager/ConnectionManager.php @@ -35,7 +35,7 @@ use InvalidArgumentException; class ConnectionManager { /** - * @var LoadBalancer + * @var ILoadBalancer */ private $loadBalancer; @@ -52,14 +52,14 @@ class ConnectionManager { private $groups = []; /** - * @param LoadBalancer $loadBalancer + * @param ILoadBalancer $loadBalancer * @param string|bool $domain Optional logical DB name, defaults to current wiki. * This follows the convention for database names used by $loadBalancer. * @param string[] $groups see LoadBalancer::getConnection * * @throws InvalidArgumentException */ - public function __construct( LoadBalancer $loadBalancer, $domain = false, array $groups = [] ) { + public function __construct( ILoadBalancer $loadBalancer, $domain = false, array $groups = [] ) { if ( !is_string( $domain ) && $domain !== false ) { throw new InvalidArgumentException( '$dbName must be a string, or false.' ); } -- 2.20.1