aboutsummaryrefslogtreecommitdiffstats
path: root/includes/parser/ParserCacheMetadata.php
blob: 58e10db8c81d31473527d80404cbc3dcaf995739 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
<?php

namespace MediaWiki\Parser;

/**
 * Read-only interface for metadata about a ParserCache entry.
 * @since 1.36
 */
interface ParserCacheMetadata {

	/**
	 * Returns the timestamp when the output was cached
	 * or -1 for uncacheable for legacy reasons.
	 * @todo remove legacy -1
	 *
	 * @return string|int TS_MW timestamp
	 */
	public function getCacheTime();

	/**
	 * @return int|null Revision id, if any was set
	 */
	public function getCacheRevisionId(): ?int;

	/**
	 * Returns the number of seconds after which this object should expire.
	 * This method is used by ParserCache to determine how long the ParserOutput can be cached.
	 * The timestamp of expiry can be calculated by adding getCacheExpiry() to getCacheTime().
	 * The value returned by getCacheExpiry is smaller or equal to the smallest number
	 * that was provided to a call of ParserOutput::updateCacheExpiry(),
	 * and smaller or equal to the value of $wgParserCacheExpireTime.
	 *
	 * @return int
	 */
	public function getCacheExpiry(): int;

	/**
	 * Returns the options from its ParserOptions which have been taken
	 * into account to produce the output.
	 *
	 * @return string[]
	 */
	public function getUsedOptions(): array;
}