Transport protocol independent communications library
First Claim
1. A non-transitory computer readable medium encoded with instructions executable by a computer, the instructions comprising:
- a communications library that can be implemented in client agents of different types, the communications library supporting a plurality of transport protocols, each of the client agents supporting one or more of the transport protocols; and
wherein upon such execution the instructions cause the computer to perform operations comprising;
receiving a communication request from a client module executing in a client agent on the computer, the request not formatted according to any of the transport protocols, and specifying a subset of the plurality of transport protocols, the subset including at least two of the plurality of transport protocols;
determining whether (a) at least one transport protocol is included in the subset of the transport protocols specified by the client agent and included in the plurality of transport protocols supported by the communications library, or (b) no transport protocols are included in both the subset of the transport protocols specified by the client agent and the plurality of transport protocols supported by the communications library, and that no communication request should be sent; and
in response to determining that at least one transport protocol is included in the subset of the transport protocols specified by the communication request and included in the plurality of transport protocols supported by the communications library;
selecting one of the transport protocols of the subset of the transport protocols specified by the client agent;
sending the communication request according to the selected transport protocol; and
receiving a communication response according to the selected transport protocol including one or more first feature values in a wrapper and data responsive to the communication request, the first feature values specifying a plurality of communication features for the communication response independent of the selected transport protocol, at least one of the first feature values not supported by at least one of the plurality of transport protocols supported by the communications library.
2 Assignments
0 Petitions
Accused Products
Abstract
Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for a transport protocol independent communications library. In one aspect, a method includes receiving a communication request from a client device and processed according to a selected transport protocol, generating a response to the communication request, the response including data responsive to the communication request and one or more feature values specifying one or more communication features for the communication request, each communication feature being independent of the selected transport protocol, and providing the response to the communication request according to the selected transport protocol.
83 Citations
28 Claims
-
1. A non-transitory computer readable medium encoded with instructions executable by a computer, the instructions comprising:
-
a communications library that can be implemented in client agents of different types, the communications library supporting a plurality of transport protocols, each of the client agents supporting one or more of the transport protocols; and wherein upon such execution the instructions cause the computer to perform operations comprising; receiving a communication request from a client module executing in a client agent on the computer, the request not formatted according to any of the transport protocols, and specifying a subset of the plurality of transport protocols, the subset including at least two of the plurality of transport protocols; determining whether (a) at least one transport protocol is included in the subset of the transport protocols specified by the client agent and included in the plurality of transport protocols supported by the communications library, or (b) no transport protocols are included in both the subset of the transport protocols specified by the client agent and the plurality of transport protocols supported by the communications library, and that no communication request should be sent; and in response to determining that at least one transport protocol is included in the subset of the transport protocols specified by the communication request and included in the plurality of transport protocols supported by the communications library; selecting one of the transport protocols of the subset of the transport protocols specified by the client agent; sending the communication request according to the selected transport protocol; and receiving a communication response according to the selected transport protocol including one or more first feature values in a wrapper and data responsive to the communication request, the first feature values specifying a plurality of communication features for the communication response independent of the selected transport protocol, at least one of the first feature values not supported by at least one of the plurality of transport protocols supported by the communications library. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A non-transitory computer readable medium encoded with instructions executable by a data processing apparatus supporting a plurality of transport protocols, and that cause the data processing apparatus to perform operations comprising:
-
receiving a communication request from a client device that determined that at least a selected transport protocol from the plurality of transport protocols is supported by a client agent and a communications library implemented in the client agent and that processed the communication request according to the selected transport protocol; generating a communication response to the communication request, the communication response including data responsive to the communication request and one or more feature values in a wrapper specifying one or more communication features for the communication response, each communication feature being independent of the selected transport protocol and at least one of the feature values not supported by at least one of the plurality of transport protocols, the feature values not formatted according to a specific one of the transport protocols; and providing the communication response to the communication request according to the selected transport protocol. - View Dependent Claims (11, 12, 13, 14, 15)
-
-
16. A computer-implemented method performed by a computer, comprising:
-
accessing a communications library stored in a computer memory of the computer, the communications library supporting client agents of different types, the communications library supporting a plurality of transport protocols, each of the client agents supporting one or more of the transport protocols; receiving a communication request from a client module executing in a client agent on the computer, the request not formatted according to any of the transport protocols, and specifying a subset of the plurality of transport protocols, the subset including at least two of the plurality of transport protocols; determining whether (a) at least one transport protocol is included in the subset of the transport protocols specified by the client agent and included in the plurality of transport protocols supported by the communications library, or (b) no transport protocols are included in both the subset of the transport protocols specified by the client agent and the plurality of transport protocols supported by the communications library, and that no communication request should be sent; and in response to determining that at least one transport protocol is included in the subset of the transport protocols specified by the communication request and included in the plurality of transport protocols supported by the communications library; selecting one of the transport protocols of the subset of the transport protocols specified by the client agent; sending the communication request according to the selected transport protocol; and receiving a communication response according to the selected transport protocol including one or more first feature values in a wrapper and data responsive to the communication request, the first feature values specifying a plurality of communication features for the communication response independent of the selected transport protocol, at least one of the first feature values not supported by at least one of the plurality of transport protocols supported by the communications library. - View Dependent Claims (17, 18, 19, 20, 21, 22, 23)
-
-
24. A computer-implemented method performed by a data processing apparatus supporting a plurality of transport protocols, comprising:
-
receiving a communication request from a client device that determined that at least a selected transport protocol from the plurality of transport protocols is supported by a client agent and a communications library implemented in the client agent and that processed the communication request according to the selected transport protocol; generating a communication response to the communication request, the communication response including data responsive to the communication request and one or more feature values in a wrapper specifying one or more communication features for the communication response, each communication feature being independent of the selected transport protocol and at least one of the feature values not supported by at least one of the plurality of transport protocols, the feature values not formatted according to a specific one of the transport protocols; and providing the communication response to the communication request according to the selected transport protocol. - View Dependent Claims (25, 26, 27, 28)
-
Specification