From a415c29efee45520ae252d2aa28f1083a521cd7b Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Wed, 17 Apr 2024 09:56:49 +0200 Subject: Adding upstream version 6.4.3+dfsg1. Signed-off-by: Daniel Baumann --- wp-includes/class-wp-feed-cache-transient.php | 133 ++++++++++++++++++++++++++ 1 file changed, 133 insertions(+) create mode 100644 wp-includes/class-wp-feed-cache-transient.php (limited to 'wp-includes/class-wp-feed-cache-transient.php') diff --git a/wp-includes/class-wp-feed-cache-transient.php b/wp-includes/class-wp-feed-cache-transient.php new file mode 100644 index 0000000..1d39932 --- /dev/null +++ b/wp-includes/class-wp-feed-cache-transient.php @@ -0,0 +1,133 @@ +name = 'feed_' . $filename; + $this->mod_name = 'feed_mod_' . $filename; + + $lifetime = $this->lifetime; + /** + * Filters the transient lifetime of the feed cache. + * + * @since 2.8.0 + * + * @param int $lifetime Cache duration in seconds. Default is 43200 seconds (12 hours). + * @param string $filename Unique identifier for the cache object. + */ + $this->lifetime = apply_filters( 'wp_feed_cache_transient_lifetime', $lifetime, $filename ); + } + + /** + * Sets the transient. + * + * @since 2.8.0 + * + * @param SimplePie $data Data to save. + * @return true Always true. + */ + public function save( $data ) { + if ( $data instanceof SimplePie ) { + $data = $data->data; + } + + set_transient( $this->name, $data, $this->lifetime ); + set_transient( $this->mod_name, time(), $this->lifetime ); + return true; + } + + /** + * Gets the transient. + * + * @since 2.8.0 + * + * @return mixed Transient value. + */ + public function load() { + return get_transient( $this->name ); + } + + /** + * Gets mod transient. + * + * @since 2.8.0 + * + * @return mixed Transient value. + */ + public function mtime() { + return get_transient( $this->mod_name ); + } + + /** + * Sets mod transient. + * + * @since 2.8.0 + * + * @return bool False if value was not set and true if value was set. + */ + public function touch() { + return set_transient( $this->mod_name, time(), $this->lifetime ); + } + + /** + * Deletes transients. + * + * @since 2.8.0 + * + * @return true Always true. + */ + public function unlink() { + delete_transient( $this->name ); + delete_transient( $this->mod_name ); + return true; + } +} -- cgit v1.2.3