PHP Class Horde_History, horde

Copyright 2003-2016 Horde LLC (http://www.horde.org/) See the enclosed file COPYING for license information (LGPL). If you did not receive this file, see http://www.horde.org/licenses/lgpl21.
Author: Chuck Hagenbuch ([email protected])
Author: Gunnar Wrobel ([email protected])
Exibir arquivo Open project: horde/horde Class Usage Examples

Protected Properties

Property Type Description
$_auth string The current user.
$_cache Horde_Cache Cache driver object.
$_logger Horde_Log_Logger Our log handler.

Public Methods

Method Description
__construct ( string $auth ) Constructor.
_getByTimestamp ( string $cmp, integer $ts, array $filters = [], string $parent = null ) : array Finds history objects by timestamp, and optionally filter on other fields as well.
_getHistory ( string $guid ) : Horde_History_Log Returns a Horde_History_Log corresponding to the named history entry, with the data retrieved appropriately.
getActionModSeq ( string $guid, string $action ) : integer Gets the modseq of the most recent change to $guid
getActionTimestamp ( string $guid, string $action ) : integer Gets the timestamp of the most recent change to $guid.
getByModSeq ( integer $start, integer $end, array $filters = [], string $parent = null ) : array Return history objects with changes during a modseq interval, and optionally filtered on other fields as well.
getByTimestamp ( string $cmp, integer $ts, array $filters = [], string $parent = null ) : array Finds history objects by timestamp, and optionally filter on other fields as well.
getHighestModSeq ( string $parent = null ) : integer Return the maximum modification sequence. To be overridden in concrete class.
getHistory ( string $guid ) : Horde_History_Log Returns a Horde_History_Log corresponding to the named history entry, with the data retrieved appropriately.
getLatestEntry ( string $guid, boolean $use_ts = false ) : array | boolean Gets the latest entry of $guid
log ( string $guid, array $attributes = [], boolean $replaceAction = false ) Logs an event to an item's history log.
removeByNames ( array $names ) Removes one or more history entries by name.
removeByParent ( string $parent ) Remove one or more history entries by parent.
setCache ( Horde_Cache $cache ) Set Cache object.
setLogger ( Horde_Log_Logger $logger ) : null Set the log handler.

Protected Methods

Method Description
_log ( Horde_History_Log $history, array $attributes, boolean $replaceAction = false ) Logs an event to an item's history log. Any other details about the event are passed in $attributes.

Method Details

__construct() public method

Constructor.
public __construct ( string $auth )
$auth string The current user.

_getByTimestamp() abstract public method

Finds history objects by timestamp, and optionally filter on other fields as well.
abstract public _getByTimestamp ( string $cmp, integer $ts, array $filters = [], string $parent = null ) : array
$cmp string The comparison operator (<, >, <=, >=, or =) to check the timestamps with.
$ts integer The timestamp to compare against.
$filters array An array of additional (ANDed) criteria. Each array value should be an array with 3 entries: - field: the history field being compared (i.e. 'action'). - op: the operator to compare this field with. - value: the value to check for (i.e. 'add').
$parent string The parent history to start searching at. If non-empty, will be searched for with a LIKE '$parent:%' clause.
return array An array of history object ids, or an empty array if none matched the criteria.

_getHistory() abstract public method

Returns a Horde_History_Log corresponding to the named history entry, with the data retrieved appropriately.
abstract public _getHistory ( string $guid ) : Horde_History_Log
$guid string The name of the history entry to retrieve.
return Horde_History_Log A Horde_History_Log object.

_log() abstract protected method

Logs an event to an item's history log. Any other details about the event are passed in $attributes.
abstract protected _log ( Horde_History_Log $history, array $attributes, boolean $replaceAction = false )
$history Horde_History_Log The history item to add to.
$attributes array The hash of name => value entries that describe this event.
$replaceAction boolean If $attributes['action'] is already present in the item's history log, update that entry instead of creating a new one.

getActionModSeq() public method

Gets the modseq of the most recent change to $guid
Since: 2.1.0
public getActionModSeq ( string $guid, string $action ) : integer
$guid string The name of the history entry to retrieve.
$action string An action: 'add', 'modify', 'delete', etc.
return integer The modseq, or 0 if no matching entry is found.

getActionTimestamp() public method

Gets the timestamp of the most recent change to $guid.
public getActionTimestamp ( string $guid, string $action ) : integer
$guid string The name of the history entry to retrieve.
$action string An action: 'add', 'modify', 'delete', etc.
return integer The timestamp, or 0 if no matching entry is found.

getByModSeq() public method

Return history objects with changes during a modseq interval, and optionally filtered on other fields as well.
public getByModSeq ( integer $start, integer $end, array $filters = [], string $parent = null ) : array
$start integer The (exclusive) start of the modseq range.
$end integer The (inclusive) end of the modseq range.
$filters array An array of additional (ANDed) criteria. Each array value should be an array with 3 entries: - field: the history field being compared (i.e. 'action'). - op: the operator to compare this field with. - value: the value to check for (i.e. 'add').
$parent string The parent history to start searching at. If non-empty, will be searched for with a LIKE '$parent:%' clause.
return array An array of history object ids, or an empty array if none matched the criteria.

getByTimestamp() public method

Finds history objects by timestamp, and optionally filter on other fields as well.
public getByTimestamp ( string $cmp, integer $ts, array $filters = [], string $parent = null ) : array
$cmp string The comparison operator (<, >, <=, >=, or =) to check the timestamps with.
$ts integer The timestamp to compare against.
$filters array An array of additional (ANDed) criteria. Each array value should be an array with 3 entries: - field: the history field being compared (i.e. 'action'). - op: the operator to compare this field with. - value: the value to check for (i.e. 'add').
$parent string The parent history to start searching at. If non-empty, will be searched for with a LIKE '$parent:%' clause.
return array An array of history object ids, or an empty array if none matched the criteria.

getHighestModSeq() public method

Return the maximum modification sequence. To be overridden in concrete class.
Since: 2.1.0
public getHighestModSeq ( string $parent = null ) : integer
$parent string Restrict to entries a specific parent.
return integer The modseq

getHistory() public method

Returns a Horde_History_Log corresponding to the named history entry, with the data retrieved appropriately.
public getHistory ( string $guid ) : Horde_History_Log
$guid string The name of the history entry to retrieve.
return Horde_History_Log A Horde_History_Log object.

getLatestEntry() public method

Gets the latest entry of $guid
Since: 2.2.0
public getLatestEntry ( string $guid, boolean $use_ts = false ) : array | boolean
$guid string The name of the history entry to retrieve.
$use_ts boolean If false we use the 'modseq' field to determine the latest entry. If true we use the timestamp instead of modseq to determine the latest entry. Note: Only 'modseq' can give a definitive answer.
return array | boolean The latest history entry, or false if $guid does not exist.

log() public method

The item must be uniquely identified by $guid. Any other details about the event are passed in $attributes. Standard suggested attributes are: - who: The id of the user that performed the action (will be added automatically if not present). - ts: Timestamp of the action (this will be added automatically if it is not present).
public log ( string $guid, array $attributes = [], boolean $replaceAction = false )
$guid string The unique identifier of the entry to add to.
$attributes array The hash of name => value entries that describe this event.
$replaceAction boolean If $attributes['action'] is already present in the item's history log, update that entry instead of creating a new one.

removeByNames() abstract public method

Removes one or more history entries by name.
abstract public removeByNames ( array $names )
$names array The history entries to remove.

removeByParent() public method

Remove one or more history entries by parent.
public removeByParent ( string $parent )
$parent string The parent name to remove.

setCache() public method

Set Cache object.
Since: 2.1.0
public setCache ( Horde_Cache $cache )
$cache Horde_Cache The cache instance.

setLogger() public method

Set the log handler.
public setLogger ( Horde_Log_Logger $logger ) : null
$logger Horde_Log_Logger The log handler.
return null

Property Details

$_auth protected_oe property

The current user.
protected string $_auth
return string

$_cache protected_oe property

Cache driver object.
protected Horde_Cache $_cache
return Horde_Cache

$_logger protected_oe property

Our log handler.
protected Horde_Log_Logger $_logger
return Horde_Log_Logger