Пример #1
0
 /**
  * Помещает данные в кэш
  * @param string $cacheKey ключ
  * @param mixed  $result   значение
  * @param int    $expires  время жизни, сек
  * @return bool
  */
 protected function cacherSet($cacheKey, $result, $expires = 0)
 {
     if (isset($this->cacher)) {
         $this->cacher->set($cacheKey, $result, $expires);
         return true;
     }
     return false;
 }
Пример #2
0
 /**
  * Производит конфигурирование компонента
  * @param array $config опции конфигурации
  * @return StashCacher
  * @throws ConfigurationError
  */
 public function configure(array $config = [])
 {
     if (!isset($config['driver']['class'])) {
         throw new ConfigurationError(self::ERR__CACHER_DRIVER_CLASS);
     }
     if (!isset($config['driver']['options'])) {
         throw new ConfigurationError(self::ERR__CACHER_DRIVER_OPTIONS);
     }
     /* @var DriverInterface $driver */
     $driver = new $config['driver']['class']();
     $driver->setOptions($config['driver']['options']);
     $this->impl = new Pool($driver);
     return parent::configure($config);
 }