. */ /** * Abstract cache driver class * * @package Doctrine * @subpackage Cache * @license http://www.opensource.org/licenses/lgpl-license.php LGPL * @link www.phpdoctrine.org * @since 1.0 * @version $Revision: 5620 $ * @author Konsta Vesterinen */ abstract class Doctrine_Cache_Driver implements Doctrine_Cache_Interface { /** * @var array $_options an array of options */ protected $_options = array(); /** * Configure cache driver with an array of options * * @param array $_options an array of options */ public function __construct($options = array()) { $this->_options = $options; } /** * Set option name and value * * @param mixed $option the option name * @param mixed $value option value * @return boolean TRUE on success, FALSE on failure */ public function setOption($option, $value) { if (isset($this->_options[$option])) { $this->_options[$option] = $value; return true; } return false; } /** * Get value of option * * @param mixed $option the option name * @return mixed option value */ public function getOption($option) { if ( ! isset($this->_options[$option])) { return null; } return $this->_options[$option]; } /** * Get the hash key passing its suffix * * @param string $id The hash key suffix * @return string Hash key to be used by drivers */ protected function _getKey($id) { return (isset($this->_options['prefix']) ? $this->_options['prefix'] : '') . $id; } }