type = $type; } /** * Generates a unique identifier for a particular configuration * @param Instance of HTMLPurifier_Config */ function generateKey($config) { return md5(serialize($config->getBatch($this->type))); } /** * Factory method that creates a cache object based on configuration * @param $name Name of definitions handled by cache * @param $config Instance of HTMLPurifier_Config */ function create($name, $config) { // only one implementation as for right now, $config will // be used to determine implementation return new HTMLPurifier_DefinitionCache_Serializer($name); } /** * Adds a definition object to the cache */ function add($def, $config) { trigger_error('Cannot call abstract method', E_USER_ERROR); } /** * Unconditionally saves a definition object to the cache */ function set($def, $config) { trigger_error('Cannot call abstract method', E_USER_ERROR); } /** * Retrieves a definition object from the cache */ function get($config) { trigger_error('Cannot call abstract method', E_USER_ERROR); } /** * Removes a definition object to the cache */ function remove($config) { trigger_error('Cannot call abstract method', E_USER_ERROR); } } ?>