NAME
Prophet::ChangeSet - represents a single, atomic Prophet database update.
VERSION
version 0.751
DESCRIPTION
This class represents a single, atomic Prophet database update. It tracks some metadata about the changeset itself and contains a list of Prophet::Change entries which describe the actual records created, updated and deleted.
ATTRIBUTES
creator
A string representing who created this changeset.
created
A string representing the ISO 8601 date and time when this changeset was created (UTC).
source_uuid
The uuid of the replica sending us the change.
sequence_no
The changeset's sequence number (in subversion terms, revision #) on the replica sending us the changeset.
original_source_uuid
The uuid of the replica where the change was authored.
original_sequence_no
The changeset's sequence number (in subversion terms, revision #) on the replica where the change was originally created.
is_resolution
A boolean value specifying whether this is a conflict resolution changeset or not.
changes
Returns an array of all the changes in the current changeset.
METHODS
add_change { change => Prophet::Change }
Adds a new change to this changeset.
as_hash
Returns a reference to a representation of this changeset as a hash, containing all the properties in the package variable @SERIALIZE_PROPS
, as well as a changes
key containing hash representations of each change in the changeset, keyed on UUID.
new_from_hashref HASHREF
Takes a reference to a hash representation of a changeset (such as is returned by "as_hash" or serialized json) and returns a new Prophet::ChangeSet representation of it.
Should be invoked as a class method, not an object method.
For example: Prophet::ChangeSet->new_from_hashref($ref_to_changeset_hash)
as_string ARGS
Returns a single string representing the changes in this changeset.
If $args{header_callback}
is defined, the string returned from passing $self
to the callback is prepended to the changeset string before it is returned (instead of "description_as_string").
If $args{skip_empty}
is defined, an empty string is returned if the changeset contains no changes.
The argument change_filter
can be used to filter certain changes from the string representation; the function is passed a change and should return false if that change should be skipped.
The change_header
argument, if present, is passed to $change->to_string
when individual changes are converted to strings.
description_as_string
Returns a string representing a description of this changeset.
is_nullification
A boolean value specifying whether this is a nullification changeset or not.
has_changes
Returns true if this changeset has any changes.
AUTHORS
Jesse Vincent <jesse@bestpractical.com>
Chia-Liang Kao <clkao@bestpractical.com>
Christine Spang <christine@spang.cc>
COPYRIGHT AND LICENSE
This software is Copyright (c) 2009 by Best Practical Solutions.
This is free software, licensed under:
The MIT (X11) License
BUGS AND LIMITATIONS
You can make new bug reports, and view existing ones, through the web interface at https://rt.cpan.org/Public/Dist/Display.html?Name=Prophet.
CONTRIBUTORS
Alex Vandiver <alexmv@bestpractical.com>
Casey West <casey@geeknest.com>
Cyril Brulebois <kibi@debian.org>
Florian Ragwitz <rafl@debian.org>
Ioan Rogers <ioanr@cpan.org>
Jonas Smedegaard <dr@jones.dk>
Kevin Falcone <falcone@bestpractical.com>
Lance Wicks <lw@judocoach.com>
Nelson Elhage <nelhage@mit.edu>
Pedro Melo <melo@simplicidade.org>
Rob Hoelz <rob@hoelz.ro>
Ruslan Zakirov <ruz@bestpractical.com>
Shawn M Moore <sartak@bestpractical.com>
Simon Wistow <simon@thegestalt.org>
Stephane Alnet <stephane@shimaore.net>
Unknown user <nobody@localhost>
Yanick Champoux <yanick@babyl.dyndns.org>
franck cuny <franck@lumberjaph.net>
robertkrimen <robertkrimen@gmail.com>
sunnavy <sunnavy@bestpractical.com>