Legacy applications as web services
First Claim
Patent Images
1. A computer server comprising:
- one or more processors; and
a memory coupled to the processors comprising instructions executable by the processors, the processors being operable when executing the instructions to;
receive a request from a client application, the request comprising;
a legacy application program identifier corresponding to one of a plurality of legacy application programs;
a legacy type program identifier comprising an interface plug-in identifier that identifies a dynamic SQL interface plug-in;
input data; and
a template identifier for a template comprising metadata for use when formatting the input data for use by the corresponding legacy application program and when formatting output data received from the legacy application program for use by the client application;
obtain a template based at least in part on the template identifier, wherein the template comprises a header portion and a plurality of data element descriptor portions, each of the one or more data element descriptor portions used for communicating information between the interface plug-in and the corresponding legacy application program;
generate a test harness for automated testing of the template based at least in part on metadata in the template;
format the input data based at least in part on metadata in the template;
invoke the corresponding legacy application program, the invoking comprising sending the formatted legacy application input data to the legacy application program;
receive, from the corresponding legacy application program, output data;
format the output data based at least in part on the metadata; and
transmit a response to the client application, the response comprising the formatted output data.
14 Assignments
0 Petitions
Accused Products
Abstract
A legacy application may be executed as a Web Service by receiving from a client application a request comprising application input data that includes target legacy program identifying information and a template identifier, loading the specified template, translating the input data into a data format compatible with the application, executing the application and translating the output data for transmission to the client application. The template corresponds to the legacy application and comprises metadata describing the application flow and the required input data and output data for the application.
32 Citations
30 Claims
-
1. A computer server comprising:
- one or more processors; and
a memory coupled to the processors comprising instructions executable by the processors, the processors being operable when executing the instructions to;receive a request from a client application, the request comprising; a legacy application program identifier corresponding to one of a plurality of legacy application programs; a legacy type program identifier comprising an interface plug-in identifier that identifies a dynamic SQL interface plug-in; input data; and a template identifier for a template comprising metadata for use when formatting the input data for use by the corresponding legacy application program and when formatting output data received from the legacy application program for use by the client application; obtain a template based at least in part on the template identifier, wherein the template comprises a header portion and a plurality of data element descriptor portions, each of the one or more data element descriptor portions used for communicating information between the interface plug-in and the corresponding legacy application program; generate a test harness for automated testing of the template based at least in part on metadata in the template; format the input data based at least in part on metadata in the template; invoke the corresponding legacy application program, the invoking comprising sending the formatted legacy application input data to the legacy application program; receive, from the corresponding legacy application program, output data; format the output data based at least in part on the metadata; and transmit a response to the client application, the response comprising the formatted output data. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
- one or more processors; and
-
10. A method comprising:
-
receiving, by one or more computer servers, a request from a client application, the request comprising; a legacy application program identifier corresponding to one of a plurality of legacy application programs; a legacy type program identifier comprising an interface plug-in identifier that identifies a dynamic SQL interface plug-in; input data; and a template identifier for a template comprising metadata for use when formatting the input data for use by the corresponding legacy application program for use by the client application; obtaining, by one or more computer servers, a template based at least in part on the template identifier, wherein the template comprises a header portion and a plurality of data element descriptor portions, each of the one or more data element descriptor portions used for communicating information between the interface plug-in and the corresponding legacy application program; generating, by one or more computer servers, a test harness for automated testing of the template based at least in part on metadata in the template; formatting, by one or more computer servers, the input data based at least in part on metadata in the template; invoking, by one or more computer servers, the corresponding legacy application program, the invoking comprising sending the formatted legacy application input data to the legacy application program; receiving, by one or more computer servers, from the corresponding legacy application program, output data; formatting, by one or more computer servers, the output data based at least in part on the metadata; and transmitting, by one or more computer servers, a response to the client application, the response comprising the formatted output data. - View Dependent Claims (11, 12, 13, 14, 15, 16)
-
-
17. One or more computer-readable non-transitory storage media embodying software that is operable when executed to:
-
receive a request from a client application, the request comprising; a legacy application program identifier corresponding to one of a plurality of legacy application programs; a legacy type program identifier comprising an interface plug-in identifier that identifies a dynamic SQL interface plug-in; input data; and a template identifier for a template comprising metadata for use when formatting the input data for use by the corresponding legacy application program and when formatting output data received from the legacy application program for use by the client application; obtain a template based at least in part on the template identifier, wherein the template comprises a header portion and a plurality of data element descriptor portions, each of the one or more data element descriptor portions used for communicating information between the interface plug-in and the corresponding legacy application program; generate a test harness for automated testing of the template based at least in part on metadata in the template; format the input data based at least in part on metadata in the template; invoke the corresponding legacy application program, the invoking comprising sending the formatted legacy application input data to the legacy application program; receive, from the corresponding legacy application program, output data; format the output data based at least in part on the metadata; and transmit a response to the client application, the response comprising the formatted output data. - View Dependent Claims (18, 19, 20, 21, 22, 23)
-
-
24. A computer server comprising:
-
means for receiving a request from a client application, the request comprising; a legacy application program identifier corresponding to one of a plurality of legacy application programs; a legacy type program identifier comprising an interface plug-in identifier that identifies a dynamic SQL interface plug-in; input data; and a template identifier for a template comprising metadata for use when formatting the input data for use by the corresponding legacy application program and when formatting output data received from the legacy application program for use by the client application; means for obtaining a template based at least in part on the template identifier, wherein the template comprises a header portion and a plurality of data element descriptor portions, each of the one or more data element descriptor portions used for communicating information between the interface plug-in and the corresponding legacy application program; means for generating a test harness for automated testing of the template based at least in part on metadata in the template; means for formatting the input data based at least in part on the metadata in the template; means for invoking the corresponding legacy application program, the invoking comprising sending the formatting legacy application input data to the legacy application program; means for receiving, from the corresponding legacy application program, output data; means for formatting the output data based at least in part on the metadata; and means for transmitting a response to the client application, the response comprising the formatted output data. - View Dependent Claims (25, 26, 27, 28, 29, 30)
-
Specification