MediaWiki
1.34.0
SlotDiffRenderer.php
Go to the documentation of this file.
1
<?php
23
use Wikimedia\Assert\Assert;
24
39
abstract
class
SlotDiffRenderer
{
40
49
abstract
public
function
getDiff
(
Content
$oldContent =
null
,
Content
$newContent =
null
);
50
55
public
function
addModules
( OutputPage
$output
) {
56
}
57
62
public
function
getExtraCacheKeys
() {
63
return
[];
64
}
65
75
protected
function
normalizeContents
(
76
Content
&$oldContent =
null
,
Content
&$newContent =
null
, $allowedClasses =
null
77
) {
78
if
( !$oldContent && !$newContent ) {
79
throw
new
InvalidArgumentException(
'$oldContent and $newContent cannot both be null'
);
80
}
81
82
if
( $allowedClasses ) {
83
if
( is_array( $allowedClasses ) ) {
84
$allowedClasses = implode(
'|'
, $allowedClasses );
85
}
86
Assert::parameterType( $allowedClasses .
'|null'
, $oldContent,
'$oldContent'
);
87
Assert::parameterType( $allowedClasses .
'|null'
, $newContent,
'$newContent'
);
88
}
89
90
if
( !$oldContent ) {
91
$oldContent = $newContent->getContentHandler()->makeEmptyContent();
92
} elseif ( !$newContent ) {
93
$newContent = $oldContent->getContentHandler()->makeEmptyContent();
94
}
95
}
96
97
}
SlotDiffRenderer\getExtraCacheKeys
getExtraCacheKeys()
Return any extra keys to split the diff cache by.
Definition:
SlotDiffRenderer.php:62
SlotDiffRenderer\addModules
addModules(OutputPage $output)
Add modules needed for correct styling/behavior of the diff.
Definition:
SlotDiffRenderer.php:55
SlotDiffRenderer\normalizeContents
normalizeContents(Content &$oldContent=null, Content &$newContent=null, $allowedClasses=null)
Helper method to normalize the input of getDiff().
Definition:
SlotDiffRenderer.php:75
SlotDiffRenderer\getDiff
getDiff(Content $oldContent=null, Content $newContent=null)
Get a diff between two content objects.
$output
$output
Definition:
SyntaxHighlight.php:335
Content
Base interface for content objects.
Definition:
Content.php:34
SlotDiffRenderer
Renders a diff for a single slot (that is, a diff between two content objects).
Definition:
SlotDiffRenderer.php:39
includes
diff
SlotDiffRenderer.php
Generated on Thu Dec 19 2019 14:54:16 for MediaWiki by
1.8.16