/**
* @param array $options
- * @throws MWException
+ * @throws Exception
*/
protected function __construct( array $options ) {
if ( !class_exists( 'Redis' ) ) {
- throw new MWException( __CLASS__ . ' requires a Redis client library. ' .
+ throw new Exception( __CLASS__ . ' requires a Redis client library. ' .
'See https://www.mediawiki.org/wiki/Redis#Setup' );
}
if ( isset( $options['logger'] ) ) {
} elseif ( $options['serializer'] === 'none' ) {
$this->serializer = Redis::SERIALIZER_NONE;
} else {
- throw new MWException( "Invalid serializer specified." );
+ throw new InvalidArgumentException( "Invalid serializer specified." );
}
}
return self::$instances[$id];
}
+ /**
+ * Destroy all singleton() instances
+ * @since 1.27
+ */
+ public static function destroySingletons() {
+ self::$instances = array();
+ }
+
/**
* Get a connection to a redis server. Based on code in RedisBagOStuff.php.
*
// TCP connection
$hostPort = IP::splitHostAndPort( $server );
if ( !$server || !$hostPort ) {
- throw new MWException( __CLASS__ . ": invalid configured server \"$server\"" );
+ throw new InvalidArgumentException(
+ __CLASS__ . ": invalid configured server \"$server\""
+ );
}
list( $host, $port ) = $hostPort;
if ( $port === false ) {