Claims
- 1. In a network having at least two electronic devices and a plurality of services, said plurality of services provided by computer-executable code stored on at least one of said electronic devices, said at least two electronic devices including a requesting device and a receiving device, a method, comprising the steps of:
receiving over a connection at said first service on said receiving device a request from said requesting device, said request including at least two service requests and a callback request, said callback request including a return destination address on the requesting device, said at least two service requests including at least one service request for a service other than said first service; performing an operation specified in said request with said first service; appending output of said operation to said request; and forwarding said results and said request to a second service listed in said request, said second service performing one of said service requests prior to the results of said service being transmitted over a new connection to the requesting device.
- 2. The method of claim 1 wherein said second service uses the results of said first service as input for said second service.
- 3. The method of claim 1, comprising the further steps of:
transmitting the results of said second service and said request to an additional service listed in said request; and using the results of the previously performed services listed in said request to perform said additional request.
- 4. The method of claim 1 wherein each of said plurality of services are located on different electronic devices.
- 5. The method of claim 1 wherein at least two of said plurality of services are located on the same device.
- 6. The method of claim 1 wherein said request is an HTTP request.
- 7. The method of claim 6 wherein said service requests are encoded using MIME encoding.
- 8. The method of claim 1, comprising the further steps of:
transmitting the results of said request via a broker device, said broker device being a device authorized by said firewall to accept messages from addresses outside said firewall and send messages to addresses inside said firewall.
- 9. The method of claim 1, comprising the further steps of:
receiving said request using a first protocol; and transmitting said message over said new connection using a protocol different from said first protocol.
- 10. In a network having at least two electronic devices and a plurality of services, said plurality of services provided by computer-executable code stored on at least one of said electronic devices, said at least two electronic devices including a requesting device and a receiving device, a method, comprising the steps of:
sending over a connection between said requesting device and said receiving device holding a first service a request, said request including at least two service requests and a callback request, said callback request including a destination address and port on the requesting device, said at least two service requests including at least one service request for a service other than said first service; listening at said destination port; accepting a new connection at said destination port from an electronic device holding the last service that performed an operation listed in said request.
- 11. The method of claim 10, comprising the further step of:
receiving a message over said new connection, said message containing the results of the operation performed by said last service listed in said request.
- 12. The method of claim 11, comprising the further steps of:
transmitting said request over said new connection using a first transport protocol; and receiving said message formatted in a protocol different than that used by said request.
- 13. The method of claim 10 wherein each of said plurality of services are located on different electronic devices.
- 14. The method of claim 10 wherein at least two of said plurality of services are located on the same device.
- 15. The method of claim 10 wherein said request is an HTTP request.
- 16. The method of claim 15 wherein said service requests are encoded using MIME encoding.
- 17. In a network having at least two electronic devices and a plurality of services, said plurality of services provided by computer-executable code stored on at least one of said electronic devices, said at least two electronic devices including a requesting device and a receiving device, a medium holding computer-executable steps for a method, said method comprising the steps of:
providing a plurality of services, said services provided by computer-executable code stored on at least one of said electronic devices; receiving over a connection at said first service on said receiving device a request from said requesting device, said request including at least two service requests and a callback request, said callback request including a return destination address on the requesting device, said at least two service requests including at least one service request for a service other than said first service; performing an operation specified in said request with said first service; forwarding the results of said operation and said request to a second service requested in said request; performing an operation specified in said request with said second service, said operation using the results of said first service as input for said second service; transmitting a message over a new connection from said at least one electronic device holding one of said plurality of services to the requesting device, said one of said plurality of services being the last service that performed an operation listed in said request, said message including the results of said last service listed in said request.
- 18. The medium of claim 17, wherein said method comprises the further steps of:
transmitting the results of said second service and said request to an additional service listed in said request; and using the results of the previously performed services listed in said request to perform said additional request.
- 19. The medium of claim 17 wherein said request is an HTTP request.
- 20. The medium of claims 17 wherein said at least two service requests are encoded using MIME encoding.
- 21. The medium of claim 17 wherein said method comprises the further steps of:
transmitting said message via a broker device, said broker device being a device located inside a firewall which is authorized by said firewall to accept messages from designated addresses outside said firewall and send messages to designated addresses inside said firewall.
- 22. In a network having at least two electronic devices and a plurality of services, said plurality of services provided by computer-executable code stored on at least one of said electronic devices, said at least two electronic devices including a requesting device and a receiving device, a method, comprising the steps of:
receiving over a connection at said first service on said receiving device a request from said requesting device, said request including at least two service requests and a callback request, said callback request including a return destination address on the requesting device, said at least two service requests including at least one service request for a service other than said first service; performing an operation specified in said request with said first service; forwarding the results of said operation and said request to a second service requested in said request; performing an operation specified in said request with said second service, said operation using the results of said first service as input for said second service; transmitting a message over a new connection from said at least one electronic device holding one of said plurality of services to the requesting device, said one of said plurality of services being the last service that performed an operation listed in the request, said message including the results of said last service listed in said request.
- 23. The method of claim 22, comprising the further steps of:
transmitting the results of said second service and said request to an additional service listed in said request; and using the results of the previously performed services listed in said request to perform said additional request.
- 24. In a network having at least two electronic devices and a plurality of services, said plurality of services provided by computer-executable code stored on at least one of said electronic devices, said at least two electronic devices including a requesting device and a receiving device, a method, comprising the steps of:
receiving over a connection at said first service on said receiving device a request from said requesting device, said request including at least two service requests and a callback request, said callback request including a return destination address on the requesting device, said at least two service requests including at least one service request for a service other than said first service; performing an operation specified in said request with said first service; and forwarding said request to a second service listed in said request, said second service performing one of said service requests prior to an acknowledgement being transmitted over a new connection to the requesting device.
- 25. The method of claim 24, comprising the further steps of:
transmitting said request to an additional service listed in said request; and performing a requested operation with said additional service.
- 26. The method of claim 25 wherein said additional service uses results from the performance of at least one of said at least two service requests to perform said requested operation.
- 27. The method of claim 26, comprising the further steps of:
transmitting said results to said requesting device with said acknowledgement.
RELATED APPLICATIONS
[0001] The illustrative embodiment of the present invention is related to four co-pending applications, A System and Method For Processing Callback Requests Included in Web-Based Procedure Calls, A System and Method For Processing Callback Requests Included in Web-Based Procedure Calls Through a Firewall, MIME Encoding of Values for Web Procedure Calls, and System and Method for Dynamically Routing Web Procedure Calls filed concurrently with the present application.