Constructor.
public __construct ( array $params = [] ) | ||
$params | array | Configuration parameters:
'logger' - (Horde_Log_Logger) A logger instance. |
/** * Constructor. * * @param array $params Parameters: * <pre> * - collection: (string) The collection name. * - mongo_db: [REQUIRED] (Horde_Mongo_Client) A MongoDB client object. * </pre> */ public function __construct(array $params = array()) { if (!isset($params['mongo_db'])) { throw new InvalidArgumentException('Missing mongo_db parameter.'); } parent::__construct(array_merge(array('collection' => 'horde_locks'), $params)); $this->_db = $this->_params['mongo_db']->selectCollection(null, $this->_params['collection']); }
/** * Constructor. * * @param array $params Parameters: * <pre> * 'db' - (Horde_Db_Adapter) [REQUIRED] The DB instance. * 'table' - (string) The name of the lock table in 'database'. * DEFAULT: 'horde_locks' * </pre> * * @throws Horde_Lock_Exception */ public function __construct($params = array()) { if (!isset($params['db'])) { throw new Horde_Lock_Exception('Missing db parameter.'); } $this->_db = $params['db']; unset($params['db']); $params = array_merge(array('table' => 'horde_locks'), $params); parent::__construct($params); /* Only do garbage collection 0.1% of the time we create an object. */ if (substr(time(), -3) === '000') { register_shutdown_function(array($this, 'doGC')); } }