Overview

Namespaces

  • Charcoal
    • Object
    • User
      • Acl

Classes

  • Content
  • ObjectRevision
  • ObjectRoute
  • ObjectSchedule
  • UserData

Interfaces

  • ArchivableInterface
  • CategorizableInterface
  • CategorizableMultipleInterface
  • CategoryInterface
  • ContentInterface
  • HierarchicalInterface
  • ObjectRevisionInterface
  • ObjectRouteInterface
  • ObjectScheduleInterface
  • PublishableInterface
  • RevisionableInterface
  • RoutableInterface
  • UserDataInterface

Traits

  • ArchivableTrait
  • CategorizableMultipleTrait
  • CategorizableTrait
  • CategoryTrait
  • HierarchicalTrait
  • PublishableTrait
  • RevisionableTrait
  • RoutableTrait
  • Overview
  • Namespace
  • Class

Interface ObjectRevisionInterface

Defines a changeset of an object implementing Charcoal\Object\RevisionableInterface.

Charcoal\Object\ObjectRevision for a basic implementation.

Direct known implementers

Charcoal\Object\ObjectRevision
Namespace: Charcoal\Object
Located at Charcoal/Object/ObjectRevisionInterface.php
Methods summary
public Charcoal\Object\ObjectRevisionInterface
# setTargetType( string $targetType )

Parameters

$targetType
The object type (type-ident).

Returns

Charcoal\Object\ObjectRevisionInterface
Chainable
public string
# targetType( )

Returns

string
public Charcoal\Object\ObjectRevisionInterface
# setTargetId( mixed $targetId )

Parameters

$targetId
The object ID.

Returns

Charcoal\Object\ObjectRevisionInterface
Chainable
public mixed
# targetId( )

Returns

mixed
public Charcoal\Object\ObjectRevisionInterface
# setRevNum( integer $revNum )

Parameters

$revNum
The revision number.

Returns

Charcoal\Object\ObjectRevisionInterface
Chainable
public integer
# revNum( )

Returns

integer
public Charcoal\Object\ObjectRevisionInterface
# setRevTs( mixed $revTs )

Parameters

$revTs
The revision's timestamp.

Returns

Charcoal\Object\ObjectRevisionInterface
Chainable
public DateTime|null
# revTs( )

Returns

DateTime|null
public Charcoal\Object\ObjectRevisionInterface
# setRevUser( string $revUser )

Parameters

$revUser
The revision user ident.

Returns

Charcoal\Object\ObjectRevisionInterface
Chainable
public string
# revUser( )

Returns

string
public Charcoal\Object\ObjectRevision
# setDataPrev( array|string $data )

Parameters

$data
The previous revision data.

Returns

Charcoal\Object\ObjectRevision
public array
# dataPrev( )

Returns

array
public Charcoal\Object\ObjectRevision
# setDataObj( array|string $data )

Parameters

$data
The current revision (object) data.

Returns

Charcoal\Object\ObjectRevision
public array
# dataObj( )

Returns

array
public Charcoal\Object\ObjectRevision
# setDataDiff( array|string $data )

Parameters

$data
The data diff.

Returns

Charcoal\Object\ObjectRevision
public array
# dataDiff( )

Returns

array
public Charcoal\Object\ObjectRevision
# createFromObject( Charcoal\Object\RevisionableInterface $obj )

Create a new revision from an object

Create a new revision from an object

  1. Load the last revision
  2. Load the current item from DB
  3. Create diff from (1) and (2).

Parameters

$obj
The object to create the revision from.

Returns

Charcoal\Object\ObjectRevision
Chainable
public array
# createDiff( array $dataPrev, array $dataObj )

Parameters

$dataPrev
Optional. The previous revision data.
$dataObj
Optional. The current revision (object) data.

Returns

array
The diff data
public array
# recursiveDiff( array $array1, array $array2 )

Recursive arrayDiff.

Recursive arrayDiff.

Parameters

$array1
First array.
$array2
Second array.

Returns

array
The array diff.
public Charcoal\Object\ObjectRevision
# lastObjectRevision( Charcoal\Object\RevisionableInterface $obj )

Parameters

$obj
The object to load the last revision of.

Returns

Charcoal\Object\ObjectRevision
The last revision for the give object.
public Charcoal\Object\ObjectRevision
# objectRevisionNum( Charcoal\Object\RevisionableInterface $obj, integer $revNum )

Retrieve a specific object revision, by revision number.

Retrieve a specific object revision, by revision number.

Parameters

$obj
Target object.
$revNum
The revision number to load.

Returns

Charcoal\Object\ObjectRevision
API documentation generated by ApiGen