×

Transactional autosave with local and remote lifecycles

  • US 11,102,313 B2
  • Filed: 11/23/2015
  • Issued: 08/24/2021
  • Est. Priority Date: 08/10/2015
  • Status: Active Grant
First Claim
Patent Images

1. A non-transitory computer readable medium having instructions stored thereon that, when executed by a processor, cause the processor to perform autosave, the performing comprising:

  • receiving, by a web browser of a client device, a user action performed by a user that interacts with a user interface for a website corresponding to a remote server, the user interface displayed by the web browser and the user action triggering an autosave functionality;

    determining a change record corresponding to the user action;

    queuing the change record in a first queue that is local to the client device to commit corresponding changes to a local client model, wherein the changes to the local client model comprise a change to a page schema and a change to a corresponding binding;

    queuing the change record in a second queue that is local to the client device, that communicates with the server, and is independent of the first queue to persist the change record at the server, wherein the corresponding changes cause corresponding modifications to the user interface before the change record is persisted at the server, wherein at least one additional user action is received and its corresponding changes to the local client model are committed and cause corresponding modifications to the user interface before the change record is persisted at the server, wherein the change record is queued in duplicate on both the first queue and the second queue and the change record is dequeued from the first queue independently from the second queue;

    processing, by the website within the web browser, the change record in the first queue independently of the change record in the second queue and applying the change record to the user interface;

    communicating, to the server, the change record in the second queue independently of the change record in the first queue, the communicating causing the change record to be persisted at the server; and

    when the change record saves a totality of a resource, removing previous change records to the resource from the first queue and the second queue, the change record identified by a unique type that represents the resource;

    wherein the change record is first applied to a local lifecycle from the first queue to commit the changes to the local client model and then applied to a remote lifecycle from the second queue to the remote server.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×