/** * Internal method to check if the given cache supports tags * * @param Zend_Cache $cache */ private static function _getTagSupportForCache() { $backend = self::$_cache->getBackend(); if ($backend instanceof Zend_Cache_Backend_ExtendedInterface) { $cacheOptions = $backend->getCapabilities(); self::$_cacheTags = $cacheOptions['tags']; } else { self::$_cacheTags = false; } return self::$_cacheTags; }
/** * Get cache backend type * * @return string */ protected function _getBackendType() { $backendType = ''; if ($this->_frontend) { $backend = $this->_frontend->getBackend(); $backendClass = get_class($backend); $possibleCacheBackends = array('Zend_Cache_Backend_', 'Varien_Cache_Backend_'); foreach ($possibleCacheBackends as $backendClassStart) { if (substr($backendClass, 0, strlen($backendClassStart)) == $backendClassStart) { $backendType = substr($backendClass, strlen($backendClassStart)); break; } } } return $backendType; }
/** * Returns cache information * * @return array */ public function getConfigCacheInfo() { $cacheConfig = $this->container->getParameter('shopware.cache'); if ($this->cache->getBackend() instanceof \Zend_Cache_Backend_Apc) { $apcInfo = apc_cache_info('user'); $info['files'] = $apcInfo['num_entries']; $info['size'] = $this->encodeSize($apcInfo['mem_size']); } else { if (!empty($cacheConfig['backendOptions']['cache_dir'])) { $dir = $cacheConfig['backendOptions']['cache_dir']; } elseif (!empty($cacheConfig['backendOptions']['slow_backend_options']['cache_dir'])) { $dir = $cacheConfig['backendOptions']['slow_backend_options']['cache_dir']; } $info = $this->getDirectoryInfo($dir); } $info['name'] = 'Shopware configuration'; $backend = get_class($this->cache->getBackend()); $backend = str_replace('Zend_Cache_Backend_', '', $backend); $info['backend'] = $backend; return $info; }
/** * {@inheritdoc} */ public function getBackend() { return $this->_frontend->getBackend(); }
/** * Returns the backend adapter * * @return \Zend_Cache_Backend */ public function getBackendAdapter() { return $this->cacheAdapter->getBackend(); }