From ec3972361d95f6f5956df77f7a76105b5ae6af72 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicolas=20L=C5=93uillet?= Date: Sun, 25 Aug 2013 20:10:23 +0200 Subject: poche now uses Full Text RSS to fetch content --- .../simplepie/SimplePie/Cache/Memcache.php | 118 +++++++++++++++++++++ 1 file changed, 118 insertions(+) create mode 100644 inc/3rdparty/simplepie/SimplePie/Cache/Memcache.php (limited to 'inc/3rdparty/simplepie/SimplePie/Cache/Memcache.php') diff --git a/inc/3rdparty/simplepie/SimplePie/Cache/Memcache.php b/inc/3rdparty/simplepie/SimplePie/Cache/Memcache.php new file mode 100644 index 00000000..3535fecc --- /dev/null +++ b/inc/3rdparty/simplepie/SimplePie/Cache/Memcache.php @@ -0,0 +1,118 @@ +options = array( + 'host' => '127.0.0.1', + 'port' => 11211, + 'extras' => array( + 'timeout' => 3600, // one hour + 'prefix' => 'simplepie_', + ), + ); + $this->options = array_merge_recursive($this->options, SimplePie_Cache::parse_URL($url)); + $this->name = $this->options['extras']['prefix'] . md5("$filename:$extension"); + + $this->cache = new Memcache(); + $this->cache->addServer($this->options['host'], (int) $this->options['port']); + } + + public function save($data) + { + if (is_a($data, 'SimplePie')) + { + $data = $data->data; + } + return $this->cache->set($this->name, serialize($data), MEMCACHE_COMPRESSED, (int) $this->options['extras']['timeout']); + } + + public function load() + { + $data = $this->cache->get($this->name); + + if ($data !== false) + { + return unserialize($data); + } + return false; + } + + public function mtime() + { + $data = $this->cache->get($this->name); + + if ($data !== false) + { + // essentially ignore the mtime because Memcache expires on it's own + return time(); + } + + return false; + } + + public function touch() + { + $data = $this->cache->get($this->name); + + if ($data !== false) + { + return $this->cache->set($this->name, $data, MEMCACHE_COMPRESSED, (int) $this->duration); + } + + return false; + } + + public function unlink() + { + return $this->cache->delete($this->name); + } +} -- cgit v1.2.3