Moodle PHP Documentation 4.3
Moodle 4.3.5 (Build: 20240610) (7dcfaa79f78)
cache_data_source_versionable Interface Reference

Versionable cache data source. More...

Inheritance diagram for cache_data_source_versionable:
cache_data_source

Public Member Functions

 load_for_cache ($key)
 Loads the data for the key provided ready formatted for caching.
 
 load_for_cache_versioned ($key, int $requiredversion, &$actualversion)
 Loads the data for the key provided ready formatted for caching.
 
 load_many_for_cache (array $keys)
 Loads several keys for the cache.
 

Static Public Member Functions

static get_instance_for_cache (cache_definition $definition)
 Returns an instance of the data source class that the cache can use for loading data using the other methods specified by this interface.
 

Detailed Description

Versionable cache data source.

This interface extends the main cache data source interface to add an extra required method if the data source is to be used for a versioned cache.

Member Function Documentation

◆ get_instance_for_cache()

static cache_data_source::get_instance_for_cache ( cache_definition $definition)
staticinherited

Returns an instance of the data source class that the cache can use for loading data using the other methods specified by this interface.

Parameters
cache_definition$definition
Return values
object

Implemented in core_course\cache\course_image, mod_assign\cache\overrides, mod_lesson\cache\overrides, mod_quiz\cache\overrides, mod_scorm\cache\elements, and question_finder.

◆ load_for_cache()

cache_data_source::load_for_cache ( $key)
inherited

Loads the data for the key provided ready formatted for caching.

Parameters
string | int$keyThe key to load.
Return values
mixedWhat ever data should be returned, or false if it can't be loaded.

Implemented in core_course\cache\course_image, core_message\time_last_message_between_users, mod_assign\cache\overrides, mod_lesson\cache\overrides, mod_quiz\cache\overrides, mod_scorm\cache\elements, and question_finder.

◆ load_for_cache_versioned()

cache_data_source_versionable::load_for_cache_versioned ( $key,
int $requiredversion,
& $actualversion )

Loads the data for the key provided ready formatted for caching.

If there is no data for that key, or if the data for the required key has an older version than the specified $requiredversion, then this returns null.

If there is data then $actualversion should be set to the actual version number retrieved (may be the same as $requiredversion or newer).

Parameters
string | int$keyThe key to load.
int$requiredversionMinimum required version
mixed$actualversionShould be set to the actual version number retrieved
Return values
mixedWhat ever data should be returned, or false if it can't be loaded.

◆ load_many_for_cache()

cache_data_source::load_many_for_cache ( array $keys)
inherited

Loads several keys for the cache.

Parameters
array$keysAn array of keys each of which will be string|int.
Return values
arrayAn array of matching data items.

Implemented in core_course\cache\course_image, core_message\time_last_message_between_users, mod_assign\cache\overrides, mod_lesson\cache\overrides, mod_quiz\cache\overrides, mod_scorm\cache\elements, and question_finder.


The documentation for this interface was generated from the following file: