/** * A function to delete a single cache entry or the entire delivery cache. * * @param string $name The cache entry name * @return bool True if the entres were succesfully deleted */ function deleteCacheFile($name = '') { if ($name != '') { $filename = OA_Delivery_Cache_buildFileName($name); return $this->_deleteCacheFile($filename); } return $this->_deleteAll(); }
/** * A function to store content a cache entry. * * @param string $name The cache entry name * @param string $cache The cache content * @param string $isHash Define if $name is already a cached value or not * @param int $expireAt Define the exact time when cache is expired * @return bool True if the entry was succesfully stored */ function OA_Delivery_Cache_store($name, $cache, $isHash = false, $expireAt = null) { if ($cache === OA_DELIVERY_CACHE_FUNCTION_ERROR) { // Don't store the result to enable permanent caching return false; } $filename = OA_Delivery_Cache_buildFileName($name, $isHash); $aCacheVar = array(); $aCacheVar['cache_contents'] = $cache; $aCacheVar['cache_name'] = $name; $aCacheVar['cache_time'] = MAX_commonGetTimeNow(); $aCacheVar['cache_expire'] = $expireAt; return OX_Delivery_Common_hook('cacheStore', array($filename, $aCacheVar), $GLOBALS['_MAX']['CONF']['delivery']['cacheStorePlugin']); }
/** * A method to test the _deleteAll mathod */ function test__deleteAll() { $oPlgOxCacheFile = new Plugins_DeliveryCacheStore_oxCacheFile_oxCacheFile('deliveryCacheStore', 'oxCacheFile', 'oxCacheFile'); $content = NULL; $name = 'test'; $filename = OA_Delivery_Cache_buildFileName($name); $cachefile = $GLOBALS['OA_Delivery_Cache']['path'] . $filename; Plugin_deliveryCacheStore_oxCacheFile_oxCacheFile_Delivery_cacheStore($filename, $content); $this->assertTrue(file_exists($cachefile)); $oPlgOxCacheFile->_deleteAll(); $this->assertFalse(file_exists($cachefile)); }