|
This patch primarily updates p_cached_xhtml() and p_cached_instructions() to
allow their caching logic to be surrounded by an event trigger.
p_cached_xhtml() has been rewritten as the more general p_cached_output() to
support other render output formats besides 'xhtml'. All calls to
p_cached_xhtml() have been changed to refer to the new function.
New event:
name: PARSER_CACHE_USE
data: cache object (see below)
action: determine if cache file can be used
preventable: yes
result: bool, true to use cache file, false otherwise
Cache operations have been generalised in a new class, cache, extended to
cache_parser, cache_renderer & cache_instructions. Details can be found in
inc/cache.php
For handling of above event, key properties 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
Other changes:
- cache class counts cache hits against attempts, results are stored in
{cache_dir}/cache_stats.txt
- adds metadata dependency to renderer page cache
- replaces purgefile dependency for renderer cache with metadata
'relation references' (internal link) dependency for wiki pages only
darcs-hash:20060911021418-9b6ab-19601ed194b8c8e45236ab72c3e23d78bf777e6c.gz
|