Ejemplo n.º 1
0
 /**
  * Loads cache storage
  *
  * @param array|string $config
  *                  'adapter' - storage adapter; 'plugins'; 'options'
  * @return AbstractAdapter
  */
 public function loadStorage($config = array())
 {
     if (is_string($config)) {
         $configFile = sprintf('cache.%s.php', $config);
         $config = Pi::config()->load($configFile);
     }
     if (!isset($config['adapter']['options']['namespace'])) {
         $config['adapter']['options']['namespace'] = '';
     }
     $config['adapter']['options']['namespace'] = $this->getNamespace($config['adapter']['options']['namespace']);
     StorageFactory::setAdapterPluginManager(new AdapterPluginManager());
     $storage = StorageFactory::factory($config);
     return $storage;
 }
Ejemplo n.º 2
0
 public function testChangeAdapterPluginManager()
 {
     $adapters = new Cache\Storage\AdapterPluginManager();
     Cache\StorageFactory::setAdapterPluginManager($adapters);
     $this->assertSame($adapters, Cache\StorageFactory::getAdapterPluginManager());
 }
 /**
  * Prepare the storage factory with the adapter and plugins plugin managers.
  *
  * @param ContainerInterface $container
  * @return void
  */
 private function prepareStorageFactory(ContainerInterface $container)
 {
     StorageFactory::setAdapterPluginManager($this->lookupStorageAdapterPluginManager($container));
     StorageFactory::setPluginManager($this->lookupStoragePluginManager($container));
 }