Skip to main content

MergableObjectState

Describes the states a mergable object may have. A mergable object is an object that has a local and a remote representation. Changes made to the local object shall be synchronized to the remote object and vice versa. In same cases conflicts may arise because changes have been made to both the local and the remote representation of the object.

Index

Enumeration Members

Added

Added: 1

Object has been added to MergableSet via MergableSet.addOrUpdate but has not yet been saved (in which case it shall become Unchanged). It is not possible to transition directly to Modified from this state as there is (probably) not yet a remote counterpart. In the unlikely case there is a remote counterpart we will have to deal with a conflict. Somebody has added the exact same object remotely

Deleted

Deleted: 4

Object is marked for deletion. If the object has no remote counterpart it is removed immediately. Otherwise it will be removed on next save. (at which point its remote counterpart will disappear).

Modified

Modified: 2

Local object has been modified. Only possible if the local object has had or have a remote counterpart. A object can only get this state if MergableSet.addOrUpdate is called and the object previously existed in MergableSet. Do note that if a object is updated because its remote counterpart has changed then the object will retain its Unchanged state.

Unchanged

Unchanged: 0

Object is not modified. Only possible if the object has had or have a remote counterpart.