diff options
Diffstat (limited to 'vendor/simplepie/simplepie/src/Cache/Redis.php')
-rw-r--r-- | vendor/simplepie/simplepie/src/Cache/Redis.php | 176 |
1 files changed, 9 insertions, 167 deletions
diff --git a/vendor/simplepie/simplepie/src/Cache/Redis.php b/vendor/simplepie/simplepie/src/Cache/Redis.php index 96f47f658..e203b6c1b 100644 --- a/vendor/simplepie/simplepie/src/Cache/Redis.php +++ b/vendor/simplepie/simplepie/src/Cache/Redis.php @@ -5,7 +5,10 @@ * A PHP-Based RSS and Atom Feed Framework. * Takes the hard work out of managing a complete RSS/Atom solution. * - * Copyright (c) 2004-2022, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors + * Please note: This file is automatically generated by a build script. The + * full original source is always available from http://simplepie.org/ + * + * Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors * All rights reserved. * * Redistribution and use in source and binary forms, with or without modification, are @@ -43,171 +46,10 @@ namespace SimplePie\Cache; -use Redis as NativeRedis; - -/** - * Caches data to redis - * - * Registered for URLs with the "redis" protocol - * - * For example, `redis://localhost:6379/?timeout=3600&prefix=sp_&dbIndex=0` will - * connect to redis on `localhost` on port 6379. All tables will be - * prefixed with `simple_primary-` and data will expire after 3600 seconds - * - * @package SimplePie - * @subpackage Caching - * @uses Redis - */ -class Redis implements Base -{ - /** - * Redis instance - * - * @var NativeRedis - */ - protected $cache; - - /** - * Options - * - * @var array - */ - protected $options; - - /** - * Cache name - * - * @var string - */ - protected $name; - - /** - * Cache Data - * - * @var type - */ - protected $data; - - /** - * Create a new cache object - * - * @param string $location Location string (from SimplePie::$cache_location) - * @param string $name Unique ID for the cache - * @param string $type Either TYPE_FEED for SimplePie data, or TYPE_IMAGE for image data - */ - public function __construct($location, $name, $options = null) - { - //$this->cache = \flow\simple\cache\Redis::getRedisClientInstance(); - $parsed = \SimplePie\Cache::parse_URL($location); - $redis = new NativeRedis(); - $redis->connect($parsed['host'], $parsed['port']); - if (isset($parsed['pass'])) { - $redis->auth($parsed['pass']); - } - if (isset($parsed['path'])) { - $redis->select((int)substr($parsed['path'], 1)); - } - $this->cache = $redis; - - if (!is_null($options) && is_array($options)) { - $this->options = $options; - } else { - $this->options = [ - 'prefix' => 'rss:simple_primary:', - 'expire' => 0, - ]; - } +class_exists('SimplePie_Cache_Redis'); - $this->name = $this->options['prefix'] . $name; - } - - /** - * @param NativeRedis $cache - */ - public function setRedisClient(NativeRedis $cache) - { - $this->cache = $cache; - } - - /** - * Save data to the cache - * - * @param array|SimplePie $data Data to store in the cache. If passed a SimplePie object, only cache the $data property - * @return bool Successfulness - */ - public function save($data) - { - if ($data instanceof \SimplePie\SimplePie) { - $data = $data->data; - } - $response = $this->cache->set($this->name, serialize($data)); - if ($this->options['expire']) { - $this->cache->expire($this->name, $this->options['expire']); - } - - return $response; - } - - /** - * Retrieve the data saved to the cache - * - * @return array Data for SimplePie::$data - */ - public function load() - { - $data = $this->cache->get($this->name); - - if ($data !== false) { - return unserialize($data); - } - return false; - } - - /** - * Retrieve the last modified time for the cache - * - * @return int Timestamp - */ - public function mtime() - { - $data = $this->cache->get($this->name); - - if ($data !== false) { - return time(); - } - - return false; - } - - /** - * Set the last modified time to the current time - * - * @return bool Success status - */ - public function touch() - { - $data = $this->cache->get($this->name); - - if ($data !== false) { - $return = $this->cache->set($this->name, $data); - if ($this->options['expire']) { - return $this->cache->expire($this->name, $this->options['expire']); - } - return $return; - } - - return false; - } - - /** - * Remove the cache - * - * @return bool Success status - */ - public function unlink() - { - return $this->cache->set($this->name, null); - } +if (\false) { + class Redis extends \SimplePie_Cache_Redis + { + } } - -class_alias('SimplePie\Cache\Redis', 'SimplePie_Cache_Redis'); |