- manipulate the cache validity
- determine whether or not cached data should be used
Signalled by cache versions of parser wrapper functions inc/parserutils.php. Syntax plugins can use this event to provide their own assistance to DokuWiki's cache (from cache key, via cache file location to validity logic) when the syntax extension adds other dependencies to the rendered page.
Passed Data and Result in event handler
The passed dokuwiki\Extension\Event has the fields
For handling the event, key properties of the CacheParser object are:
$page, if present the wiki page id, may not always be present, e.g. when called for locale XHTML files
$file, source file
$mode, renderer mode (e.g. 'xhtml') or 'i' for instructions
$key, primary identifier, will be md5 hashed part of the cache file
$ext, secondary identifier, extension of the cache file, readable part
$cache, cache name generated by getCacheName()
$depends, array of dependencies used to determine cache validity
In the BEFORE event handler the cache object can be modified. Some examples are: extending the
$depends field, using more cachefiles for variants of the same source file (see also struct plugin) or preventing and replacing the default
makeDefaultCacheDecision() cache check.
In the AFTER event handler the
$result field is set with the result of the makeDefaultCacheDecision() method. The AFTER event handler can modify this field.