Prophet::Change.3pm

Langue: en

Version: 2009-12-22 (ubuntu - 24/10/10)

Section: 3 (Bibliothèques de fonctions)

NAME

Prophet::Change

DESCRIPTION

This class encapsulates a change to a single record in a Prophet replica.

METHODS

record_type

The record type for the record.

record_uuid

The UUID of the record being changed.

change_type

One of "add_file", "add_dir", "update_file", "delete".

is_resolution

A boolean value specifying whether this change represents a conflict resolution or not.

prop_changes [\@PROPCHANGES]

Returns a list of Prophet::PropChanges associated with this Change. Takes an optional arrayref to fully replace the set of propchanges.

has_prop_changes

Returns true if this change contains any Prophet::PropChanges and false if it doesn't.

new_from_conflict $conflict

Takes a Prophet::Conflict object and creates a Prophet::Change object representing the conflict resolution.

add_prop_change { new => __, old => ___, name => ___ }

Adds a new Prophet::PropChange to this Prophet::Change.

Takes a "name", and the "old" and "new" values.

as_hash

Returns a reference to a representation of this change as a hash.

as_string ARGS

Returns a string representing this change. If $args{header_callback} is specified, the string returned from passing $self to the callback is prepended to the change string before it is returned.

new_from_hashref HASHREF

Takes a reference to a hash representation of a change (such as is returned by ``as_hash'' or serialized json) and returns a new Prophet::Change representation of it.

This method should be invoked as a class method, not an object method.

For example: "Prophet::Change->new_from_hashref($ref_to_change_hash)"