Preservation of type information between a client and a server
First Claim
Patent Images
1. In a distributed computing system including at least one server component (“
- server”
) and at least one client component (“
client”
), a computer-implemented method for preserving type information of a server object that is passed from the server to the client, comprising;
receiving a service request from a client computer system, the service request including a request for an indication of those services provided by the server;
creating a server object including an indication of those services provided by the server, wherein the server object includes a special token that includes one or more portions of specialized syntax in a special token format that identify the type information associated with the server object and one or more values of properties associated with the server object, wherein the special token is included as part of a client-side service definition that defines the parameters and methods of the client-side service;
associating the server object with at least a portion of type information and at least a portion of property information corresponding to the server object, the property information including one or more property values;
verifying that the server object is of a specified registered type, wherein only specific object types are allowed to be passed between the server and the client, preventing clients from manufacturing and passing malicious or other arbitrary objects to the server;
serializing the server object using a custom serialization method that changes the format of the server object according to one or more specified object receiver settings, such that object property names are changed to comply with formats accessible by the object receiver;
passing each of the following to the client;
the verified, serialized server object including the type information and the property information, the custom serialization method, a server custom serialization mechanism and a client custom deserialization mechanism; and
receiving from the client a modified server object, wherein the client has used both the custom serialization method and the client custom deserialization mechanism to deserialize the serialized server object, and has modified the server object by instantiating a new client object using the same type information and property information as the server object while changing at least one of the property values, and wherein the client passes the newly instantiated client object to the server by making a call for a method of the server service using the new client object as a parameter to the method.
2 Assignments
0 Petitions
Accused Products
Abstract
In a distributed computing system containing multiple entities such as servers and clients, an object passed between the entities is attached with metadata identifying the type of the object and/or types and values of properties associated with the object. Before the object is passed to an entity in the distributed computing system, the object may be serialized into a data format that the receiving entity can understand.
32 Citations
20 Claims
-
1. In a distributed computing system including at least one server component (“
- server”
) and at least one client component (“
client”
), a computer-implemented method for preserving type information of a server object that is passed from the server to the client, comprising;receiving a service request from a client computer system, the service request including a request for an indication of those services provided by the server; creating a server object including an indication of those services provided by the server, wherein the server object includes a special token that includes one or more portions of specialized syntax in a special token format that identify the type information associated with the server object and one or more values of properties associated with the server object, wherein the special token is included as part of a client-side service definition that defines the parameters and methods of the client-side service; associating the server object with at least a portion of type information and at least a portion of property information corresponding to the server object, the property information including one or more property values; verifying that the server object is of a specified registered type, wherein only specific object types are allowed to be passed between the server and the client, preventing clients from manufacturing and passing malicious or other arbitrary objects to the server; serializing the server object using a custom serialization method that changes the format of the server object according to one or more specified object receiver settings, such that object property names are changed to comply with formats accessible by the object receiver; passing each of the following to the client;
the verified, serialized server object including the type information and the property information, the custom serialization method, a server custom serialization mechanism and a client custom deserialization mechanism; andreceiving from the client a modified server object, wherein the client has used both the custom serialization method and the client custom deserialization mechanism to deserialize the serialized server object, and has modified the server object by instantiating a new client object using the same type information and property information as the server object while changing at least one of the property values, and wherein the client passes the newly instantiated client object to the server by making a call for a method of the server service using the new client object as a parameter to the method. - View Dependent Claims (2, 3, 4, 5, 6, 7)
- server”
-
8. In a distributed computing system including at least one server component (“
- server”
) and at least one client component (“
client”
), wherein the server provides at least one service for the client, a computer-implemented method for preserving type information of a client object passed from the client to the server, comprising;sending a service request to the server computer system, the service request including a request for an indication of those services provided by the server; creating the client object; associating the client object with at least a portion of type information and at least a portion of property information corresponding to the client object, the property information including one or more property values; verifying that the client object is of a specified registered type, wherein only specific object types are allowed to be passed between the server and the client, preventing clients from manufacturing and passing malicious or other arbitrary objects to the server; serializing the client object using a custom serialization method that changes the format of the client object according to one or more specified object receiver settings, such that object property names are changed to comply with formats accessible by the object receiver; sending each of the following to the server;
the verified, serialized client object, wherein the client object is associated with the type information and property information of the client object, the custom serialization method, a client custom serialization mechanism and a server custom deserialization mechanism;receiving from the server a verified server object that includes type information and the property information; and sending a modified server object to the server, wherein the client has used both the custom serialization method and the client custom deserialization mechanism to deserialize the serialized server object, and has modified the server object by instantiating a new client object using the same type information and property information as the server object while changing at least one of the property values, and wherein the client passes the newly instantiated client object to the server by making a call for a method of the server service using the new client object as a parameter to the method, and wherein the server object includes a special token that includes one or more portions of specialized syntax in a special token format that identify the type information associated with the server object and one or more values of properties associated with the server object, wherein the special token is included as part of a client-side service definition that defines the parameters and methods of the client-side service. - View Dependent Claims (9, 10, 11, 12, 13, 19)
- server”
-
14. In a distributed computing system including at least one server component (“
- server”
) and at least one client component (“
client”
), a computer-implemented method for serializing an object passed between the server and the client, comprising;receiving a service request from a client computer system, the service request including a request for an indication of those services provided by the server; creating a server object including a proxy class configured to provide a description of one or more server services and an indication of how to call the described services, wherein the server object includes a special token that includes one or more portions of specialized syntax in a special token format that identify the type information associated with the server object and one or more values of properties associated with the server object, wherein the special token is included as part of a client-side service definition that defines the parameters and methods of the client-side service; associating the server object with at least a portion of type information and at least a portion of property information corresponding to the server object, the property information including one or more property values; serializing the server object that is to be passed to the client, using a custom serialization method that changes the format of the server object according to one or more specified object receiver settings, such that object property names are changed to comply with formats accessible by the object receiver; verifying that the server object is of a specified registered type, wherein only specific object types are allowed to be passed between the server and the client, preventing clients from manufacturing and passing malicious or other arbitrary objects to the server; passing each of the following to the client;
the verified serialized server object including the type information and the property information, the custom serialization method, a server custom serialization mechanism and a client custom deserialization mechanism;receiving from the client a modified server object, wherein the client has used both the custom serialization method and the client custom deserialization mechanism to deserialize the serialized server object, and has modified the server object by instantiating a new client object using the same type information and property information as the server object while changing at least one of the property values, and wherein the client passes the newly instantiated client object to the server by making a call for a method of the server service using the new client object as a parameter to the method, the modified server object further including an indication from the client requesting calling a specified service, the client having examined the proxy class to determine which of the server'"'"'s service methods to call; and providing the requested service to the client. - View Dependent Claims (15, 16, 17, 18, 20)
- server”
Specification