System and method for enabling a client application to operate offline from a server
First Claim
1. A method for sending a request from a client computer to a server computer, wherein the client computer is connected to the server computer via a network, where the server computer runs server-side code associated with a client/server application, wherein the client computer runs client-side code associated with the client/server application, the method comprising:
- the client-side code registering a request entry with a client-side scheduler while the network connection is unavailable, wherein the request entry represents the request to be sent from the client computer to the server computer;
the scheduler storing the request entry until a network connection is available for use by the client-side code;
the scheduler notifying the client-side code that the network connection is available;
the client-side code using the network connection to send the request to the server computer.
3 Assignments
0 Petitions
Accused Products
Abstract
One disadvantage of the client/server computing model is the client'"'"'s strong dependence on the server. A system and method are disclosed for enabling a client application to operate offline from the server. For each request, the client application registers a request entry with a scheduler, informing the scheduler of an associated application callback. The scheduler then invokes this application callback when a network connection is available for use, and the client application then sends the request to the server. Error recovery methods are described for requests that are sent to the server but for which no reply is received, and for other error scenarios. Some applications may maintain client-side caches to lookup information independently of the server. Synchronization entries may be registered with the scheduler for keeping the client-side cache in sync with the server-side master data.
151 Citations
60 Claims
-
1. A method for sending a request from a client computer to a server computer, wherein the client computer is connected to the server computer via a network, where the server computer runs server-side code associated with a client/server application, wherein the client computer runs client-side code associated with the client/server application, the method comprising:
-
the client-side code registering a request entry with a client-side scheduler while the network connection is unavailable, wherein the request entry represents the request to be sent from the client computer to the server computer;
the scheduler storing the request entry until a network connection is available for use by the client-side code;
the scheduler notifying the client-side code that the network connection is available;
the client-side code using the network connection to send the request to the server computer. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30)
-
-
31. A system for enabling a client/server application, the system comprising:
-
a server computer, wherein the server computer runs server-side code associated with the application;
a client computer connected to the server computer via a network, wherein the client computer runs client-side code associated with the application;
a client-side scheduler, wherein the client-side code is operable to interface with the scheduler in order to manage requests to the server computer;
wherein the client-side code is executable to register a request entry with the scheduler while the network connection is unavailable, wherein the request entry represents a request that the client-side code needs to send to the server computer;
wherein the scheduler is executable to store the request entry until a network connection is available for use by the client-side code;
wherein the scheduler is executable to notify the client-side code that the network connection is available;
wherein the client-side code is executable to use the network connection to send the request to the server computer. - View Dependent Claims (32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60)
-
Specification