System and methods for asynchronous synchronization
First Claim
Patent Images
1. A method of updating data at a first computing device, wherein the first computing device comprises a data store configured to store workspace elements and the first computing device is configured to receive data from at least a second computing device via a network, and is configured to:
- receive at the first computing device, a synchronization message from the second computing device via said network, the synchronization message comprising data relating to a given workspace element;
determine whether a conflicting workspace data item, corresponding to a given workspace data item, is stored in said data store;
in the case of a determination that said conflicting workspace data item is stored in said data store, perform a resolution process with said second computing device to resolve said conflict in respect of the given workspace data item and the conflicting workspace data item, the method comprising;
modifying, at said first computing device, said workspace element in accordance with a first modification to generate a first modified version of the workspace element;
receiving, at the first computing device, a synchronization message relating to said workspace element, the synchronization message including a set one or more version identifiers, and modification data indicative of a second modification to the workspace element, said second modification having been made at the second computing device to generate a second modified version of workspace element at the second computing device;
comparing, at the first computing device, said set of one or more version identifiers with a further set of version identifiers relating to said workspace element, wherein said further set of version identifiers is stored at said first computing device;
on the basis of the comparison, performing a first process or a second process, wherein the first process is different from the second process, the first process comprises;
modifying said first modified version of the workspace element in accordance with said modification data;
and the second process comprises;
storing a new workspace element in said data store, wherein the new workspace element is based on said first modified version of the workspace element and said modification data, and said data store includes said new workspace element and said first modified version of said workspace element; and
performing said conflict resolution process with said second computing device in respect of said new workspace element and said second modified version of the workspace element stored at said second computing device.
6 Assignments
0 Petitions
Accused Products
Abstract
Aspects of the advancement provide for information to be synchronized in an asynchronous manner among two or more computing devices.
110 Citations
8 Claims
-
1. A method of updating data at a first computing device, wherein the first computing device comprises a data store configured to store workspace elements and the first computing device is configured to receive data from at least a second computing device via a network, and is configured to:
-
receive at the first computing device, a synchronization message from the second computing device via said network, the synchronization message comprising data relating to a given workspace element; determine whether a conflicting workspace data item, corresponding to a given workspace data item, is stored in said data store; in the case of a determination that said conflicting workspace data item is stored in said data store, perform a resolution process with said second computing device to resolve said conflict in respect of the given workspace data item and the conflicting workspace data item, the method comprising; modifying, at said first computing device, said workspace element in accordance with a first modification to generate a first modified version of the workspace element; receiving, at the first computing device, a synchronization message relating to said workspace element, the synchronization message including a set one or more version identifiers, and modification data indicative of a second modification to the workspace element, said second modification having been made at the second computing device to generate a second modified version of workspace element at the second computing device; comparing, at the first computing device, said set of one or more version identifiers with a further set of version identifiers relating to said workspace element, wherein said further set of version identifiers is stored at said first computing device; on the basis of the comparison, performing a first process or a second process, wherein the first process is different from the second process, the first process comprises; modifying said first modified version of the workspace element in accordance with said modification data; and the second process comprises; storing a new workspace element in said data store, wherein the new workspace element is based on said first modified version of the workspace element and said modification data, and said data store includes said new workspace element and said first modified version of said workspace element; and performing said conflict resolution process with said second computing device in respect of said new workspace element and said second modified version of the workspace element stored at said second computing device. - View Dependent Claims (2, 3, 4)
-
-
5. A non-transitory computer-readable storage medium having computer readable instructions stored thereon, the computer readable instructions when executed by a first computing device cause the first computing device to perform a method of updating data, wherein the first computing device comprises a data store configured to store workspace elements and the first computing device is configured to receive data from at least a second computing device via a network, and is configured to:
-
receive at the first computing device, a synchronization message from the second computing device via said network, the synchronization message comprising data relating to a given workspace element; determine whether a conflicting workspace data item, corresponding to a given workspace data item, is stored in said data store; in the case of a determination that said conflicting workspace data item is stored in said data store, perform a resolution process with said second computing device to resolve said conflict in respect of the given workspace data item and the conflicting workspace data item, the method comprising; modifying, at said first computing device, said workspace element in accordance with a first modification to generate a first modified version of the workspace element; receiving, at the first computing device, a synchronization message relating to said workspace element, the synchronization message including a set one or more version identifiers and modification data indicative of a second modification to the workspace element, said second modification having been made at the second computing device to generate a second modified version of workspace element at the second computing device; comparing, at the first computing device, said set of one or more version identifiers with a further set of version identifiers relating to said workspace element, wherein said further set of version identifiers is stored at said first computing device; on the basis of the comparison, performing a first process or a second process, wherein the first process is different from the second process, the first process comprises; modifying said first modified version of the workspace element in accordance with said modification data; and the second process comprises; storing a new workspace element in said data store, wherein the new workspace element is based on said first modified version of the workspace element and said modification data, and said data store includes said new workspace element and said first modified version of said workspace element; and performing said conflict resolution process with said second computing device in respect of said new workspace element and said second modified version of the workspace element stored at said second computing device.
-
-
6. A computing device comprising:
-
a data store configured to store workspace elements; and a communications interface configured to receive data from at least a second computing device via a network, wherein a first computing device is configured to; modify said workspace element in accordance with a first modification to generate a first modified version of the workspace element; receive, at the first computing device, a synchronization message relating to said workspace element, the synchronization message including a set one or more version identifiers, and modification data indicative of a second modification to the workspace element, said second modification having been made at said second computing device to generate a second modified version of workspace element at the second computing device; compare said set of one or more version identifiers with a further set of version identifiers relating to said workspace element, said further set of version identifiers is stored at said first computing device; on the basis of the comparison, perform a first process or a second process, wherein the first process is different from the second process, the first process comprises; modifying said first modified version of the workspace element in accordance with said modification data; and the second process comprises; storing a new workspace element in said data store, wherein the new workspace element is based on said first modified version of the workspace element and said modification data, and said data store includes said new workspace element and said first modified version of said workspace element; receiving, from the second computing device, a request to add said second version of the workspace element to said data store; performing a conflict resolution process with said second computing device in respect of said new workspace element and said second modified version of the workspace element stored at said second computing device. - View Dependent Claims (7, 8)
-
Specification