PHP Class Horde_History_Sql, horde

Author: Chuck Hagenbuch ([email protected])
Inheritance: extends Horde_History
Afficher le fichier Open project: horde/horde

Protected Properties

Свойство Type Description
$_db Horde_Db_Adapter Horde_Db_Adapter instance to manage the history.

Méthodes publiques

Méthode Description
__construct ( string $auth, Horde_Db_Adapter $db ) Constructor.
_getByTimestamp ( string $cmp, integer $ts, array $filters = [], string $parent = null ) : array Finds history objects by timestamp, and optionally filtered 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.
getActionTimestamp ( string $guid, string $action ) : integer Returns the timestamp of the most recent change to $guid.
getHighestModSeq ( string $parent = null ) : integer | boolean Returns the current value of the modseq.
getLatestEntry ( string $guid, boolean $use_ts = false ) : array | boolean Returns the latest entry of $guid.
removeByNames ( array $names ) Removes one or more history entries by name.

Méthodes protégées

Méthode Description
_getByModSeq ( integer $start, integer $end, array $filters = [], string $parent = null ) : array Returns history objects with changes during a modseq interval, and optionally filtered on other fields as well.
_log ( Horde_History_Log $history, array $attributes, boolean $replaceAction = false ) Logs an event to an item's history log.
_nextModSeq ( ) : integer Increments, and returns, the modseq value.

Method Details

__construct() public méthode

Constructor.
public __construct ( string $auth, Horde_Db_Adapter $db )
$auth string The current user.
$db Horde_Db_Adapter The database connection.

_getByModSeq() protected méthode

Note: For BC reasons, the results are returned keyed by the object UID, with a (fairly useless) history_id as the value. @todo This should be changed for Horde 6.
protected _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.
Résultat array An array of history object ids that have had at least one match for the given $filters. Will return empty array if none matched the criteria. If the same GUID has multiple matches withing the range requested, there is no guarantee which entry will be returned.

_getByTimestamp() public méthode

Note: For BC reasons, the results are returned keyed by the object UID, with a (fairly useless) history_id as the value. @todo This should be changed for Horde 6.
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.
Résultat array An array of history object ids that have had at least one match for the given $filters. Will return empty array if none matched the criteria. If the same GUID has multiple matches withing the range requested, there is no guarantee which entry will be returned.

_getHistory() public méthode

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.
Résultat Horde_History_Log A Horde_History_Log object.

_log() protected méthode

Any other details about the event are passed in $attributes.
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.

_nextModSeq() protected méthode

Increments, and returns, the modseq value.
protected _nextModSeq ( ) : integer
Résultat integer The new modseq value.

getActionTimestamp() public méthode

Returns 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.
Résultat integer The timestamp, or 0 if no matching entry is found.

getHighestModSeq() public méthode

We take the MAX of the horde_histories table instead of the value of the horde_histories_modseq table to ensure we never miss an entry if we query the history system between the time we call nextModSeq() and the time the new entry is written.
public getHighestModSeq ( string $parent = null ) : integer | boolean
$parent string Restrict to entries a specific parent.
Résultat integer | boolean The highest used modseq value, false if no history.

getLatestEntry() public méthode

Returns 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.
Résultat array | boolean The latest history entry, or false if $guid does not exist.

removeByNames() public méthode

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

Property Details

$_db protected_oe property

Horde_Db_Adapter instance to manage the history.
protected Horde_Db_Adapter $_db
Résultat Horde_Db_Adapter