×

INTELLIGENT CLIENT ARCHITECTURE COMPUTER SYSTEM AND METHOD

  • US 20090292709A1
  • Filed: 04/10/2009
  • Published: 11/26/2009
  • Est. Priority Date: 10/31/2003
  • Status: Active Grant
First Claim
Patent Images

1. A method of implementing synchronized distributed objects comprising:

  • a local computing device requests data from a remote computing device to be used in a transaction;

    the local computing device checks local resources for the data required;

    upon failing to locate the required data locally, the local computing device formats a request to the remote computing device;

    the local computing device sends the request to the remote computing device;

    the remote computing device receives the request and unpacks the request to remove formatting elements needed for transport;

    the remote computing device interprets the data request from the local computing device by comparing the data request to the object model on the remote computing device;

    the remote computing devices resolve the data request to a set of data access instructions that operate on database management software;

    the database management software retrieves the requested data;

    the remote computing device registers interest in the data retrieved by the local computing device that requested the data;

    the remote computing device packages the data for transport to the local computing device;

    the remote computing device delivers the data to the local computing device;

    the local computing device receives the data and unpacks the request to remove formatting elements needed for transport;

    the local computing device adds the data to local data storage resources device;

    the local computing device copies the data and delivers the data to the requested transaction;

    the local computing device stores the data in a transaction data cache used to support the transaction, the transaction data cache being separate from a main local data cache and separate from a main local data mass storage area;

    the local computing device registers the data as used by the transaction;

    the local data storage resources are updated to reflect changes made at the remote data source by other users and processes;

    the local computing device operates the transaction, thereby accumulating changes in the data stored in the transaction data cache;

    the changes in the data stored in the transaction data cache are compared against a log of data changes to the local data storage resources device since the remote data was retrieved;

    the local computing device detects a local data collision conflict based upon the comparison of the data stored in the transaction data cache and the local data storage resources device;

    the local computing device notifies the transaction that the local data collision conflict occurred;

    the transaction resolves the local data collision conflict in an application-specific manner;

    the local computing device formats the resolved local data collision conflict for transport to the remote computing device;

    the local computing device transports the resolved local data collision conflict to the remote computing device for remote data conflict checking and long-term persistence;

    the remote computing device receives the resolved local data collision conflicts and unpacks formatting elements added for transport;

    the remote computing device compares the resolved local data collision conflicts to data items changed by other users or by automated processes;

    the remote computing device stores the data items changed by other users or by automated processes as queued data changes;

    the remote computing device detects a remote data change collision conflict based upon the comparison of the resolved local data collision conflicts and the queued data changes;

    the remote computing device notifies the local computing device that a remote data change collision conflict occurred;

    the local computing device forwards the notification to the transaction for resolution in an application-specific manner and sends a message to the remote computing device indicating resolution of the remote data collision conflict;

    the remote computing device then detects remote data base collision conflicts based upon comparison of the results of the local data collision conflict resolutions and the persistent data store on the remote computing devicethe remote computing device notifies the local computing device that a remote data base collision conflict occurred;

    the local computing device forwards the notification to the transaction for resolution in an application-specific manner and sends a message to the remote computing device indicating resolution of the remote data collision conflict;

    the remote computing device updates the persistent data store on the remote computing device;

    the remote computing device checks a registration table to determine other computing devices that must be notified of the resolution performed by the local and remote computing devices;

    the remote computing device transmits the results of the data collision conflict resolutions to the local computing device and other computing devices affected by the remote data collision resolutions; and

    the local computing device and other computing devices update the local main cache based upon the data collision conflict resolution; and

    the local computing device purges data from the transaction cache.

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