Selecting client adapters
First Claim
1. A computer program product, tangibly embodied in a machine-readable storage device, the computer program product comprising instructions operable to cause data processing apparatus to:
- identify at a client abstraction layer on a server, one or more selection data elements in a client request received at the client abstraction layer, where the one or more selection data elements specify an adapter type; and
use the selection data elements to select an adapter at the client abstraction layer to convert communication data between an application running on the server and one or more client programs, the adapter being used by the client abstraction layer as an intermediary, the adapter hiding client-specific behavior from the application running on the server, the adapter being designed for use with a particular client program,wherein the adapter is selected from one or more suitable adapters based on a priority list, wherein the priority list ranks the plurality of adapters according to pre-defined criteria.
2 Assignments
0 Petitions
Accused Products
Abstract
Methods and apparatus, including computer program products, for selecting client adapters. A client abstraction layer identifies one or more selection data elements in a client request and selects an adapter to communicate with the client based on the selection data elements, wherein each selection data element specifies an adapter type, a client type, or data describing the client. The adapter can be selected based on a multi-stage selection process that involves performing an adapter-request process for selecting an adapter based on the selection data elements that specify the adapter type; if the adapter-request process fails to select an adapter, performing a client-identification process for selecting an adapter based on the selection data elements that specify the client type; and if the client-identification process fails to select an adapter, performing a client-description process for selecting an adapter based on the selection data elements that specify data describing the client.
44 Citations
23 Claims
-
1. A computer program product, tangibly embodied in a machine-readable storage device, the computer program product comprising instructions operable to cause data processing apparatus to:
-
identify at a client abstraction layer on a server, one or more selection data elements in a client request received at the client abstraction layer, where the one or more selection data elements specify an adapter type; and use the selection data elements to select an adapter at the client abstraction layer to convert communication data between an application running on the server and one or more client programs, the adapter being used by the client abstraction layer as an intermediary, the adapter hiding client-specific behavior from the application running on the server, the adapter being designed for use with a particular client program, wherein the adapter is selected from one or more suitable adapters based on a priority list, wherein the priority list ranks the plurality of adapters according to pre-defined criteria. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A system comprising:
-
a server having a processor and memory operable to run an application; a plurality of client-specific adapters, each adapter in the plurality enabling communication between the application on the server and a client; and a client abstraction layer on the server operable to; identify one or more selection data elements in a client request received at the client abstraction layer, where the one or more selection data elements specify an adapter type; and use the selection data elements to select an adapter at the client abstraction layer to enable communication between an application running on the server and one or more client programs, the adapter being used by the client abstraction layer as an intermediary, the adapter hiding client-specific behavior from the application running on the server, the adapter being designed for use with a particular client program, wherein the adapter is selected from one or more suitable adapters based on a priority list, wherein the priority list ranks the plurality of adapters according to pre-defined criteria. - View Dependent Claims (14, 15)
-
-
16. A method comprising:
-
identifying at a client abstraction layer executing on a server, said server having a processor and memory, one or more selection data elements in a client request received at the client abstraction layer, where the one or more selection data elements specify an adapter type; and using the selection data elements to select an adapter at the client abstraction layer to convert communication data between an application running on the server and one or more client programs, the adapter being used by the client abstraction layer as an intermediary, the adapter hiding client-specific behavior from the application running on the server, the adapter being designed for use with a particular client program, wherein the adapter is selected from one or more suitable adapters based on a priority list, wherein the priority list ranks the plurality of adapters according to pre-defined criteria. - View Dependent Claims (17)
-
-
18. An apparatus comprising:
-
means for identifying at a client abstraction layer on a server having a processor and memory, one or more selection data elements in a client request received at the client abstraction layer, where the one or more selection data elements specify an adapter type; and means for using the data elements to elect an adapter at the client abstraction layer to convert communication data between an application running on the server and one or more client programs, the adapter being used by the client abstraction layer as an intermediary, the adapter hiding client-specific behavior from the application running on the server, the adapter being designed for use with a particular client program, wherein the adapter is selected from one or more suitable adapters based on a priority list, wherein the priority list ranks the plurality of adapters according to pre-defined criteria. - View Dependent Claims (19, 20)
-
-
21. A method of selecting an adapter for converting communication data between a plurality of client programs and a server application comprising:
-
at a client abstraction layer executing on a server, said server having a processor and memory, receiving a connection request from a client program to begin a new connection with the server application, wherein the client abstraction layer hides the client-specific behavior of the client program from the server application, wherein the client abstraction layer is an intermediary between the client program and the server application; and executing a multi-stage selection process wherein the process comprises; selecting a first process from a plurality of processes based on one or more selection data elements in the connection request, wherein the one or more selection data elements specify an adapter type; and selecting the adapter from a plurality of adapters based on the selected first process, wherein each adapter from the plurality of adapters is designed for use with a particular type of client, wherein the selected first process comprises selecting the adapter based on the specified adapter type based on a priority list, wherein the priority list ranks the plurality of adapters according to pre-defined criteria. - View Dependent Claims (22, 23)
-
Specification