123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105 |
- <?php
- /**
- * Copyright © Magento, Inc. All rights reserved.
- * See COPYING.txt for license details.
- */
- namespace Magento\Framework\App\Cache;
- use \Magento\Framework\App\CacheInterface;
- use \Magento\Framework\ObjectManager\NoninterceptableInterface;
- /**
- * System cache proxy model
- */
- class Proxy implements
- CacheInterface,
- NoninterceptableInterface
- {
- /**
- * @var \Magento\Framework\ObjectManagerInterface
- */
- protected $_objectManager;
- /**
- * @var CacheInterface
- */
- protected $_cache;
- /**
- * @param \Magento\Framework\ObjectManagerInterface $objectManager
- */
- public function __construct(\Magento\Framework\ObjectManagerInterface $objectManager)
- {
- $this->_objectManager = $objectManager;
- }
- /**
- * Create cache model
- *
- * @return CacheInterface
- */
- protected function _getCache()
- {
- if (null == $this->_cache) {
- $this->_cache = $this->_objectManager->get(\Magento\Framework\App\Cache::class);
- }
- return $this->_cache;
- }
- /**
- * Get cache frontend API object
- *
- * @return \Zend_Cache_Core
- */
- public function getFrontend()
- {
- return $this->_getCache()->getFrontend();
- }
- /**
- * Load data from cache by id
- *
- * @param string $identifier
- * @return string
- */
- public function load($identifier)
- {
- return $this->_getCache()->load($identifier);
- }
- /**
- * Save data
- *
- * @param string $data
- * @param string $identifier
- * @param array $tags
- * @param int $lifeTime
- * @return bool
- */
- public function save($data, $identifier, $tags = [], $lifeTime = null)
- {
- return $this->_getCache()->save($data, $identifier, $tags, $lifeTime);
- }
- /**
- * Remove cached data by identifier
- *
- * @param string $identifier
- * @return bool
- */
- public function remove($identifier)
- {
- return $this->_getCache()->remove($identifier);
- }
- /**
- * Clean cached data by specific tag
- *
- * @param array $tags
- * @return bool
- */
- public function clean($tags = [])
- {
- return $this->_getCache()->clean($tags);
- }
- }
|