Patent ID: 7778962

Claim:
A method for synchronizing at least two computer systems, comprising the following steps: providing at least two client computer systems, wherein each client computer system utilizes a first storage platform; providing an intermediary computer system, wherein the intermediary computer system utilizes a second storage platform different from and lacking support for synchronization for the first storage platform; connecting the intermediary computer system to each client computer system; providing a synchronization adapter to each client computer system enabling the client computer system to logically synchronize with the intermediary computer system; synchronizing each client computer system with the intermediary computer system via the adapter resident on each client computer system; and synchronizing each client computer system with the other client computer systems by means of the intermediary computer system; wherein changes to a first version of a file stored on a client computer system are synchronized to the intermediary computer system to allow a second version of the file stored on a different client computer system to be synchronized with the first version by the intermediary computer system performing the following steps: receiving a change packet from the client computer system that identifies changes to the first version of the file that were made by the client computer system; determining whether the first version of the file contains each change that has been synchronized to the intermediary computer system by comparing the identified changes in the change packet with change data associated with the file that is stored on the intermediary computer system such that: upon determining that the first version of the file contains each change that has been synchronized to the intermediary computer system, the intermediary computer system replaces the change data with the identified changes in the change packet, whereas upon determining that the first version of the file does not contain each change that has been synchronized to the intermediary computer system, the intermediary computer system generates an exception and does not replace the change data with the identified changes in the change packet.