MediaWiki  REL1_23
DiffHistoryBlob Class Reference

Diff-based history compression Requires xdiff 1.5+ and zlib. More...

Inheritance diagram for DiffHistoryBlob:
Collaboration diagram for DiffHistoryBlob:

List of all members.

Public Member Functions

 __construct ()
 __sleep ()
 __wakeup ()
 addItem ($text)
 compress ()
 diff ($t1, $t2)
 getItem ($key)
 getText ()
 isHappy ()
 Helper function for compression jobs Returns true until the object is "full" and ready to be committed.
 patch ($base, $diff)
 setText ($text)
 uncompress ()
 xdiffAdler32 ($s)
 Compute a binary "Adler-32" checksum as defined by LibXDiff, i.e.

Public Attributes

 $mCompressed
 Compressed storage.
 $mDefaultKey
 The key for getText()
 $mDiffMap
 The diff map, see above.
 $mDiffs
 Array of diffs.
 $mFrozen = false
 True if the object is locked against further writes.
 $mItems = array()
 Uncompressed item cache.
 $mMaxCount = 100
 The maximum number of text items before the object becomes sad.
 $mMaxSize = 10000000
 The maximum uncompressed size before the object becomes sad Should be less than max_allowed_packet.
 $mSize = 0
 Total uncompressed size.
const XDL_BDOP_CPY = 2
const XDL_BDOP_INS = 1
 Constants from xdiff.h.
const XDL_BDOP_INSB = 3

Detailed Description

Diff-based history compression Requires xdiff 1.5+ and zlib.

Definition at line 334 of file HistoryBlob.php.


Constructor & Destructor Documentation

Definition at line 385 of file HistoryBlob.php.


Member Function Documentation

Returns:
array

Definition at line 617 of file HistoryBlob.php.

References array(), as, and compress().

Definition at line 645 of file HistoryBlob.php.

References array(), as, and uncompress().

Exceptions:
MWException
Parameters:
$textstring
Returns:
int

Implements HistoryBlob.

Definition at line 396 of file HistoryBlob.php.

Referenced by setText().

Exceptions:
MWException

Definition at line 432 of file HistoryBlob.php.

References array(), as, diff(), and patch().

Referenced by __sleep().

DiffHistoryBlob::diff ( t1,
t2 
)
Parameters:
$t1
$t2
Returns:
string

Definition at line 509 of file HistoryBlob.php.

References wfRestoreWarnings(), and wfSuppressWarnings().

Referenced by compress().

Parameters:
$keystring
Returns:
string

Implements HistoryBlob.

Definition at line 411 of file HistoryBlob.php.

References $key.

Referenced by getText().

Returns:
string

Implements HistoryBlob.

Definition at line 425 of file HistoryBlob.php.

References getItem().

Helper function for compression jobs Returns true until the object is "full" and ready to be committed.

Returns:
bool

Definition at line 685 of file HistoryBlob.php.

DiffHistoryBlob::patch ( base,
diff 
)
Parameters:
$base
$diff
Returns:
bool|string

Definition at line 523 of file HistoryBlob.php.

References $out, wfDebug(), wfRestoreWarnings(), wfSuppressWarnings(), and xdiffAdler32().

Referenced by compress(), and uncompress().

Parameters:
$textstring

Implements HistoryBlob.

Definition at line 418 of file HistoryBlob.php.

References addItem().

Definition at line 601 of file HistoryBlob.php.

References patch().

Referenced by __wakeup().

Compute a binary "Adler-32" checksum as defined by LibXDiff, i.e.

with the bytes backwards and initialised with 0 instead of 1. See bug 34428.

Parameters:
string$s
Returns:
string|bool: false if the hash extension is not available

Definition at line 585 of file HistoryBlob.php.

References $s.

Referenced by patch(), and DiffHistoryBlobTest\testXdiffAdler32().


Member Data Documentation

DiffHistoryBlob::$mCompressed

Compressed storage.

Definition at line 362 of file HistoryBlob.php.

DiffHistoryBlob::$mDefaultKey

The key for getText()

Definition at line 357 of file HistoryBlob.php.

DiffHistoryBlob::$mDiffMap

The diff map, see above.

Definition at line 352 of file HistoryBlob.php.

DiffHistoryBlob::$mDiffs

Array of diffs.

If a diff D from A to B is notated D = B - A, and Z is an empty string:

{ item[map[i]] - item[map[i-1]] where i > 0 diff[i] = { { item[map[i]] - Z where i = 0

Definition at line 349 of file HistoryBlob.php.

DiffHistoryBlob::$mFrozen = false

True if the object is locked against further writes.

Definition at line 367 of file HistoryBlob.php.

DiffHistoryBlob::$mItems = array()

Uncompressed item cache.

Definition at line 336 of file HistoryBlob.php.

DiffHistoryBlob::$mMaxCount = 100

The maximum number of text items before the object becomes sad.

Definition at line 378 of file HistoryBlob.php.

DiffHistoryBlob::$mMaxSize = 10000000

The maximum uncompressed size before the object becomes sad Should be less than max_allowed_packet.

Definition at line 373 of file HistoryBlob.php.

DiffHistoryBlob::$mSize = 0

Total uncompressed size.

Definition at line 339 of file HistoryBlob.php.

Definition at line 382 of file HistoryBlob.php.

Constants from xdiff.h.

Definition at line 381 of file HistoryBlob.php.

Definition at line 383 of file HistoryBlob.php.


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