The invention includes a method of synchronizing objects between first and
second object stores. A synchronization manager in accordance with the
invention maintains a reference store containing identifying data segments
corresponding respectively to a plurality of objects that have previously
been synchronized between the first and second object stores. An
application program that maintains the first object store has associated
interfaces that allow the synchronization manager to compare and
manipulate objects. One such interface allows the synchronization manager
to submit an identifying data segment associated with a particular object.
In response, this interface returns a handle that corresponds to the
submitted identifying data segment. Another interface accepts a handle
that refers to an identifying data segment, and determines if the object
corresponding to the identifying data segment has been changed in the
first object store since the last synchronization. If it has, the
synchronization manager takes steps to update the second object store. If,
on the other hand, the object has changed in the second object store,
application program interfaces allow the synchronization manager to update
the object in the first object store. Objects are transferred through the
synchronization manager in an arbitrary, application-specific format that
is not determined or understood by the synchronization manager itself.
De uitvinding omvat een methode om voorwerpen tussen en tweede objecten opslag eerst te synchroniseren. Een synchronisatiemanager overeenkomstig de uitvinding handhaaft een verwijzingsopslag die identificeert gegevenssegmenten die respectievelijk aan een meerderheid van voorwerpen bevat beantwoorden die eerder tussen de eerste en tweede objecten opslag zijn gesynchroniseerd. Een toepassingsprogramma dat de eerste objecten opslag handhaaft heeft interfaces geassocieerd die de synchronisatiemanager toestaan om voorwerpen te vergelijken en te manipuleren. Één dergelijke interface staat de synchronisatiemanager toe om een identificerend gegevenssegment voor te leggen verbonden aan een bepaald voorwerp. In reactie, keert deze interface een handvat terug dat aan het voorgelegde identificerende gegevenssegment beantwoordt. Een andere interface keurt een handvat goed dat naar een identificerend gegevenssegment verwijst, en bepaalt als het voorwerp dat aan het identificerende gegevenssegment beantwoordt in de eerste objecten opslag sinds de laatste synchronisatie is veranderd. Als het heeft, treft de synchronisatiemanager maatregelen om de tweede objecten opslag bij te werken. Als, enerzijds, het voorwerp in de tweede objecten opslag is veranderd, staan de interfaces van het toepassingsprogramma de synchronisatiemanager toe om het voorwerp in de eerste objecten opslag bij te werken. De voorwerpen worden overgebracht door de synchronisatiemanager in een willekeurig, application-specific formaat dat niet wordt bepaald of door de synchronisatiemanager zelf begrepen.