System and method for replicating offline scheduling transactions from a client to a server
First Claim
1. A computer-readable storage medium whose contents cause a computer to:
- receive as input a transaction for a remote service; and
place the input transaction as an item in an outbox of a store-and-forward application for processing by the store-and-forward application, wherein the store-and-forward application being operable to determine whether there is network connectivity, and responsive to determining that there is network connectivity, being operable to process the items in the outbox by;
invoking a service delivery component being operable to retrieve an item from the outbox, operable to determine whether the item is a transaction for the remote service, operable to send the item to the remote service in response to determining that the item is a transaction for the remote service, and operable to place the item back in the outbox in response to determining that the item is not a transaction for the remote service, such that the service delivery component is invoked prior to a transport component of the store-and-forward application.
2 Assignments
0 Petitions
Accused Products
Abstract
A facility for replicating offline scheduling transactions directed to a server is provided. The facility is implemented as a client-side application that integrates with and utilizes components of a store-and-forward application, which is operable to execute on a client to guarantee that transactions submitted on the client are replicated and carried out on a service hosted on a remote server even in light of intermittent connectivity between the client, the server, and networks. Records describing transactions intended remote service are written to an outbox of the store-and-forward application on the client. When online, the store-and-forward application first invokes the facility, which processes the items in the outbox by iteratively retrieving the items from the outbox and, for each item, determining whether the item is a transaction intended for the scheduling application. If the item is intended for the scheduling application, the facility sends the item to the scheduling application. Otherwise, if the item is not intended for the scheduling application, the facility returns the item to the outbox for processing by other components of the store-and-forward application.
-
Citations
24 Claims
-
1. A computer-readable storage medium whose contents cause a computer to:
-
receive as input a transaction for a remote service; and
place the input transaction as an item in an outbox of a store-and-forward application for processing by the store-and-forward application, wherein the store-and-forward application being operable to determine whether there is network connectivity, and responsive to determining that there is network connectivity, being operable to process the items in the outbox by;
invoking a service delivery component being operable to retrieve an item from the outbox, operable to determine whether the item is a transaction for the remote service, operable to send the item to the remote service in response to determining that the item is a transaction for the remote service, and operable to place the item back in the outbox in response to determining that the item is not a transaction for the remote service, such that the service delivery component is invoked prior to a transport component of the store-and-forward application. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A computer-implemented method for replicating offline transactions from a client to a server, the method comprising:
-
receiving as input on a client a transaction for a remote service;
placing the input transaction as an item in an outbox of a store-and-forward application;
determining whether the client is online or offline;
responsive to determining that the client is offline, maintaining the transaction in the outbox for subsequent processing when the client becomes online; and
responsive to determining that the client is online, first invoking a service delivery component being operable to retrieve an item from the outbox, operable to determine whether the item is a transaction for the remote service, operable to send the item to the remote service in response to determining that the item is a transaction for the remote service, and operable to place the item back in the outbox in response to determining that the item is not a transaction for the remote service for processing by another component of the store-and-forward application. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. A store-and-forward application comprising:
-
an outbox being operable to maintain a queue of items;
an interface being operable to receive a transaction for a remote service, and operable to place the transaction in the outbox;
a service delivery component being operable to communicate with the remote service, operable to retrieve an item from the outbox, operable to determine whether the item is a transaction for the remote service, operable to send the item to the remote service in response to determining that the item is a transaction for the remote service, and operable to place the item back in the outbox in response to determining that the item is not a transaction for the remote service;
a network connectivity component being operable to determine a network connectivity state of the store-and-forward application, and operable to first invoke the service delivery component in response to determining that the network connectivity state indicates online; and
a store-and-forward delivery component being operable to process items in the outbox subsequent to processing by the service delivery component. - View Dependent Claims (21, 22, 23, 24)
-
Specification