Bidirectional update of client-server objects
First Claim
1. A computer-implemented hardware system including a processor, the system comprising:
- a server using the processor to operate on a structure of server data objects and a client operating on a structure of client data objects, the server data objects, the client data objects, the structure of the server data objects, and the structure of the client data objects being managed through an implementation of a predefined application programming interface that implements at least two types of data object update commands, wherein the two types of data object update commands are;
an object level update type for performing bidirectional updates between the server data objects and the client data objects for updating an entire specified client data object or an entire specified server data object; and
a sub-structure level update type for performing bidirectional updates between the server data objects and the client data objects for updating a sub-structure of a specified client data object or a specified server data object, the sub-structure being a subset of the specified client data object or the specified server data object; and
a server protocol controller performing the steps of;
receiving one or more modifications to the structure of server data objects in response to a server operation,determining, using the processor at the server, whether to transmit the object level update type command or the sub-structure level update type command based on a comparison of a predefined criteria and transmission requirements of the one or more modifications to the structure of server data objects, andtransmitting, based on the determination, an update command of either the object level update type or the sub-structure level update type to update the structure of client data objects with the modifications to the structure of server data objects.
3 Assignments
0 Petitions
Accused Products
Abstract
Methods and apparatus, including computer program products, for updating data. In one aspect, a system that has a server operating on a structure of server data objects and a client operating on a structure of client data objects, the data objects and the structure of the server data objects and the structure of the client data objects being managed through an implementation of a predefined application programming interface that implements at least two types of data object update commands, the data object update commands being operable to perform bidirectional updates between the server data objects and the client data objects. The two types of data object update commands are: an object level update type that is operable to update one or more specified data objects; and a sub-structure level update type that is operable to update a sub-structure of the data objects.
14 Citations
19 Claims
-
1. A computer-implemented hardware system including a processor, the system comprising:
-
a server using the processor to operate on a structure of server data objects and a client operating on a structure of client data objects, the server data objects, the client data objects, the structure of the server data objects, and the structure of the client data objects being managed through an implementation of a predefined application programming interface that implements at least two types of data object update commands, wherein the two types of data object update commands are; an object level update type for performing bidirectional updates between the server data objects and the client data objects for updating an entire specified client data object or an entire specified server data object; and a sub-structure level update type for performing bidirectional updates between the server data objects and the client data objects for updating a sub-structure of a specified client data object or a specified server data object, the sub-structure being a subset of the specified client data object or the specified server data object; and a server protocol controller performing the steps of; receiving one or more modifications to the structure of server data objects in response to a server operation, determining, using the processor at the server, whether to transmit the object level update type command or the sub-structure level update type command based on a comparison of a predefined criteria and transmission requirements of the one or more modifications to the structure of server data objects, and transmitting, based on the determination, an update command of either the object level update type or the sub-structure level update type to update the structure of client data objects with the modifications to the structure of server data objects. - View Dependent Claims (2, 3, 4, 5, 6, 7, 12, 13, 14, 15, 16, 17, 18, 19)
-
-
8. A computer program product, tangibly embodied in a computer-readable hardware medium, the computer program product comprising instructions for causing a processor to:
-
receive, at the processor, one or more modifications to a structure of server data objects; and transmit, from the processor, a data object update command to a client, the data object update command for updating a structure of client data objects with the modifications to the structure of server data objects, the client data objects and the structure of client data objects being managed through an implementation of a predefined application programming interface that implements at least two types of data object update commands, wherein the two types of data object update commands are; an object level update type for performing bidirectional updates between the server data objects and the client data objects for updating an entire specified client data object or an entire specified server data object; and a sub-structure level update type for performing bidirectional updates between the server data objects and the client data objects for updating a sub-structure of a specified client data object or a specified server data object, the sub-structure being a subset of the specified client data object or the specified server data object; receive one or more modifications to the structure of server data objects in response to a server operation, determine, at the processor, whether to transmit the object level update type command or the sub-structure level update type command based on a predefined criteria and transmission requirements of the one or more modifications to the structure of server data objects; and transmit, based on the determination, an update command of either the object level update type or the sub-structure level update type to update the structure of client data objects with the modifications to the structure of server data objects.
-
-
9. A computer program product, tangibly embodied in a computer-readable hardware medium, the computer program product comprising instructions for causing a processor to:
-
receive, at the processor, one or more modifications to a structure of client data objects; transmit, from the processor, a data object update command to a server, the data object update command for updating a structure of server data objects with the modifications to the structure of client data objects, the server data objects and the structure of server data objects being managed through an implementation of a predefined application programming interface that implements at least two types of data object update commands, wherein the two types of data object update commands are; an object level update type for performing bidirectional updates between the server data objects and the client data objects for updating an entire specified client data object or an entire specified server data object; and a sub-structure level update type for performing bidirectional updates between the server data objects and the client data objects for updating a sub-structure of a specified client data object or a specified server data object, the sub-structure being a subset of the specified client data object or the specified server data object; receive one or more modifications to the structure of server data objects in response to a server operation, determine, at the processor, whether to transmit the object level update type command or the sub-structure level update type command based on a predefined criteria and transmission requirements of the one or more modifications to the structure of server data objects; and transmit, based on the determination, an update command of either the object level update type or the sub-structure level update type to update the structure of client data objects with the modifications to the structure of server data objects.
-
-
10. A method comprising:
-
receiving one or more modifications to a structure of server data objects; and transmitting a data object update command to a client, the data object update command for updating a structure of client data objects with the modifications to the structure of server data objects, the client data objects and the structure of client data objects being managed through an implementation of a predefined application programming interface that implements at least two types of data object update commands, wherein the two types of data object update commands are; an object level update type for performing bidirectional updates between the server data objects and the client data objects for updating an entire specified client data object or an entire specified server data object; and a sub-structure level update type for performing bidirectional updates between the server data objects and the client data objects for updating a sub-structure of a specified client data object or a specified server data object, the sub-structure being a subset of the specified client data object or the specified server data object; receive one or more modifications to the structure of server data objects in response to a server operation, determine, at the processor, whether to transmit the object level update type command or the sub-structure level update type command based on a predefined criteria and transmission requirements of the one or more modifications to the structure of server data objects; and transmit, based on the determination, an update command of either the object level update type or the sub-structure level update type to update the structure of client data objects with the modifications to the structure of server data objects.
-
-
11. A method comprising:
-
receiving one or more modifications to a structure of client data objects; and transmitting a data object update command to a server, the data object update command for updating a structure of server data objects with the modifications to the structure of client data objects, the server data objects and the structure of server data objects being managed through an implementation of a predefined application programming interface that implements at least two types of data object update commands, wherein the two types of data object update commands are; an object level update type for performing bidirectional updates between the server data objects and the client data objects for updating an entire specified client data object or an entire specified server data object; and a sub-structure level update type for performing bidirectional updates between the server data objects and the client data objects for updating a sub-structure of a specified client data object or a specified server data object, the sub-structure being a subset of the specified client data object or the specified server data object; and receive one or more modifications to the structure of server data objects in response to a server operation, determine, at the processor, whether to transmit the object level update type command or the sub-structure level update type command based on a predefined criteria and transmission requirements of the one or more modifications to the structure of server data objects; and transmit, based on the determination, an update command of either the object level update type or the sub-structure level update type to update the structure of client data objects with the modifications to the structure of server data objects.
-
Specification