System and method for offline synchronization of exception items of shared services for client applications
First Claim
1. A method for resolving a conflict during client side offline editing at a client, the method comprising:
- storing a series locally at a client cache, wherein the series comprises a recurrence item and an exception item, wherein the exception item comprises a change to an instance of the recurrence item, and wherein each of the recurrence item and the exception item are calendar items, wherein the series is associated with a first URL and an alternate URL;
receiving a change to the exception item of the series by a server at the client, wherein the first URL resolves to the server;
increasing a master version for the exception item at the client;
receiving a request to check out a recurrence item at the client, wherein, upon receiving the request, the client pulls the recurrence item from the client cache instead of from the server;
changing the recurrence item of the series in response to a change made at the client, wherein the change includes a series version of the client;
comparing the master version to the series version;
upon determining that the master version and the series version are not the same, determining that the series version is the client-side conflict winner;
attempting to upload the change to the recurrence item of the series to the server to which the first URL resolves;
receiving an indication that the upload failed; and
uploading the change to the recurrence item of the series to an alternate server, wherein the alternate URL resolves to the alternate server.
1 Assignment
0 Petitions
Accused Products
Abstract
Application Programming Interfaces (APIs) and UI modifications for existing applications are used to implement efficient methods for taking content offline with full synchronization, incremental synchronization, in the case of document libraries per-folder synchronization, and the like. The APIs provide support for synchronizing changes to attachments, the ability to download a document library'"'"'s complete contents or only a list of the available documents, and read-only folder hierarchy replication in the case of document libraries. These abilities coupled with corresponding user interface features enable easier browsing and searching of large document library structures, making edits to those documents offline, being able to see an up-to-date version of those documents in a preview mode, and receiving reminders when offline edits remain on the local computer and need to be updated to a server.
-
Citations
20 Claims
-
1. A method for resolving a conflict during client side offline editing at a client, the method comprising:
-
storing a series locally at a client cache, wherein the series comprises a recurrence item and an exception item, wherein the exception item comprises a change to an instance of the recurrence item, and wherein each of the recurrence item and the exception item are calendar items, wherein the series is associated with a first URL and an alternate URL; receiving a change to the exception item of the series by a server at the client, wherein the first URL resolves to the server; increasing a master version for the exception item at the client; receiving a request to check out a recurrence item at the client, wherein, upon receiving the request, the client pulls the recurrence item from the client cache instead of from the server; changing the recurrence item of the series in response to a change made at the client, wherein the change includes a series version of the client; comparing the master version to the series version; upon determining that the master version and the series version are not the same, determining that the series version is the client-side conflict winner; attempting to upload the change to the recurrence item of the series to the server to which the first URL resolves; receiving an indication that the upload failed; and uploading the change to the recurrence item of the series to an alternate server, wherein the alternate URL resolves to the alternate server. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A computer implemented system comprising:
-
a processor; and a memory communicatively coupled to the processor, the memory having computer-executable instructions that when executed by the processor provide a method for resolving a conflict during client side offline editing at a client, the method comprising; storing a series locally at a client cache, wherein the series comprises a recurrence item and an exception item, wherein the exception item comprises a change to an instance of the recurrence item, and wherein each of the recurrence item and the exception item are calendar items, wherein the series is associated with a first URL and an alternate URL; receiving a change to the exception item of the series by a server at the client, wherein the first URL resolves to the server; increasing a master version for the exception item at the client; receiving a request to check out a recurrence item at the client, wherein, upon receiving the request, the client pulls the recurrence item from the client cache instead of from the server; changing the recurrence item of the series in response to a change made at the client, wherein the change includes a series version of the client; comparing the master version to the series version; upon determining that the master version and the series version are not the same, determining that the series version is the client-side conflict winner; attempting to upload the change to the recurrence item of the series to the server to which the first URL resolves; receiving an indication that the upload failed; and uploading the change to the recurrence item of the series to an alternate server, wherein the alternate URL resolves to the alternate server. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A computer storage device having computer executable instructions stored thereon which when executed by a processor cause the processor to perform a method for resolving a conflict during client side offline editing at a client, the method comprising:
-
storing a series locally at a client cache, wherein the series comprises a recurrence item and an exception item, wherein the exception item comprises a change to an instance of the recurrence item, and wherein each of the recurrence item and the exception item are calendar items, wherein the series is associated with a first URL and an alternate URL; receiving a change to the exception item of the series by a server at the client, wherein the first URL resolves to the server; increasing a master version for the exception item at the client; receiving a request to check out a recurrence item at the client, wherein, upon receiving the request, the client pulls the recurrence item from the client cache instead of from the server; changing the recurrence item of the series in response to a change made at the client, wherein the change includes a series version of the client; comparing the master version to the series version; upon determining that the master version and the series version are not the same, determining that the series version is the client-side conflict winner; attempting to upload the change to the recurrence item of the series to the server to which the first URL resolves; receiving an indication that the upload failed; and uploading the change to the recurrence item of the series to an alternate server, wherein the alternate URL resolves to the alternate server. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification