Integrating eventing in a web service application of a multi-functional peripheral
First Claim
1. A method for processing a plurality of event subscription requests at a multi-functional peripheral (MFP), wherein the MFP executes a device facility manager (DFM) and a plurality of service applications that each provides at least one service, the method comprising:
- receiving, from a client application, at a service application of the plurality of service applications, a request to subscribe to an event, wherein;
the request is an event subscription request;
the service application includes (1) an event manager that (a) is a component of the service application and (b) implements an eventing specification and (2) one or more components, other than the event manager, that correspond to the at least one service provided by the service application;
the service application executes as a single process and implements functionality of the event manager in addition to functionality of the one or more other components that correspond to the at least one service provided by the service application;
the at least one service provided by the service application is one of printing, faxing, or scanning;
wherein the event manager is configured to perform at least one of the following additional functions;
retrieve a status corresponding to a particular event, update said status, unsubscribe the particular event, or renew the particular event;
wherein the DFM (i) executes on the MFP separate from the plurality of service applications, (ii) processes device metadata requests from one or more client applications that seek one or more services provided by the MFP, and (iii) implements, for the plurality of service applications, a plurality of Web Services specifications, each of which is different than the eventing specification;
wherein none of the plurality of service applications implements any of the plurality of Web Services specifications;
the event manager maintaining identification information that identifies at least the event specified in the request;
wherein the event manager maintaining identification information includes;
the event manager sending, to a component of the one or more other components of the service application, first data, from the event subscription request, that is specific to the service application;
the component of the service application processing said first data to generate second data;
the component of the service application sending the second data to the event manager;
the event manager including the second data in a subscribe response that is generated by the event manager; and
the event manager sending the subscribe response to the client application;
the event manager receiving, from a platform of the MFP, notification data that indicates that the event occurred;
the event manager comparing the notification data with the identification information;
based on the comparison, the event manager composing a notification message; and
sending the notification message to one or more intended recipients.
1 Assignment
0 Petitions
Accused Products
Abstract
Techniques are provided for efficiently processing SOAP requests at a Web service application (WSA) of a multi-functional device (MFP). In one technique, a WSA includes at least three threads. An external request processing thread processes SOAP requests from different client applications. A request processing thread processes a SOAP request according to the business logic of the WSA. A internal communications thread communicates with other components of the MFP that are distinct from the WSA. In another technique, a WSA processes different SOAP request differently, depending on the size of the SOAP and the resources required to process the SOAP request so that fast requests may be processed immediately while slow requests are pending. In another technique, a WS-Eventing specification is implemented within a WSA to simplify the event subscription and notification process.
76 Citations
29 Claims
-
1. A method for processing a plurality of event subscription requests at a multi-functional peripheral (MFP), wherein the MFP executes a device facility manager (DFM) and a plurality of service applications that each provides at least one service, the method comprising:
-
receiving, from a client application, at a service application of the plurality of service applications, a request to subscribe to an event, wherein; the request is an event subscription request; the service application includes (1) an event manager that (a) is a component of the service application and (b) implements an eventing specification and (2) one or more components, other than the event manager, that correspond to the at least one service provided by the service application; the service application executes as a single process and implements functionality of the event manager in addition to functionality of the one or more other components that correspond to the at least one service provided by the service application; the at least one service provided by the service application is one of printing, faxing, or scanning; wherein the event manager is configured to perform at least one of the following additional functions;
retrieve a status corresponding to a particular event, update said status, unsubscribe the particular event, or renew the particular event;wherein the DFM (i) executes on the MFP separate from the plurality of service applications, (ii) processes device metadata requests from one or more client applications that seek one or more services provided by the MFP, and (iii) implements, for the plurality of service applications, a plurality of Web Services specifications, each of which is different than the eventing specification; wherein none of the plurality of service applications implements any of the plurality of Web Services specifications; the event manager maintaining identification information that identifies at least the event specified in the request; wherein the event manager maintaining identification information includes; the event manager sending, to a component of the one or more other components of the service application, first data, from the event subscription request, that is specific to the service application; the component of the service application processing said first data to generate second data; the component of the service application sending the second data to the event manager; the event manager including the second data in a subscribe response that is generated by the event manager; and the event manager sending the subscribe response to the client application; the event manager receiving, from a platform of the MFP, notification data that indicates that the event occurred; the event manager comparing the notification data with the identification information; based on the comparison, the event manager composing a notification message; and sending the notification message to one or more intended recipients. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A machine-readable storage medium for processing a plurality of event subscription requests at a multi-functional peripheral (MFP), wherein the MFP executes a device facility manager (DFM) and a plurality of service applications that each provides at least one service, the machine-readable storage medium carrying instructions which, when processed by one or more processors, causes:
-
receiving, from a client application, at a service application of the plurality of service applications, a request to subscribe to an event, wherein; the request is an event subscription request; the service application includes (1) an event manager that (a) is a component of the service application and (b) implements an eventing specification and (2) one or more components, other than the event manager, that correspond to the at least one service provided by the service application; the service application executes as a single process and implements functionality of the event manager in addition to functionality of the one or more other components that correspond to the at least one service provided by the service application; the at least one service provided by the service application is one of printing, faxing, or scanning; wherein the event manager is configured to perform at least one of the following additional functions;
retrieve a status corresponding to the event, update said status, unsubscribe the event, or renew the event;wherein the DFM (i) executes on the MFP separate from the plurality of service applications, (ii) processes device metadata requests from one or more client applications that seek one or more services provided by the MFP, and (iii) implements, for the plurality of service applications, a plurality of Web Services specifications, each of which is different than the eventing specification; wherein none of the plurality of service applications implements any of the plurality of Web Services specifications; the event manager maintaining identification information that identifies at least the event specified in the request; wherein the event manager maintaining identification information includes; the event manager sending, to a component of the one or more other components of the service application, first data, from the event subscription request, that is specific to the service application; the component of the service application processing said first data to generate second data; the component of the service application sending the second data to the event manager; the event manager including the second data in a subscribe response that is generated by the event manager; and the event manager sending the subscribe response to the client application; the event manager receiving, from a platform of the MFP, notification data that indicates that the event occurred; the event manager comparing the notification data with the identification information; based on the comparison, the event manager composing a notification message; and sending the notification message to one or more intended recipients. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. A multi-functional peripheral (MFP) device for processing a plurality of event subscription requests at the MFP device, wherein the MFP device executes a device facility manager (DFM) and a plurality of service applications that each provides at least one service, the MFP being configured to:
-
receive, from a client application, at a service application of the plurality of service applications, a request to subscribe to an event, wherein; the request is an event subscription request; the service application includes (1) an event manager that (a) is a component of the service application and (b) implements an eventing specification and (2) one or more components, other than the event manager, that correspond to the at least one service provided by the service application; the service application executes as a single process and implements functionality of the event manager in addition to functionality of the one or more other components that correspond to the at least one service provided by the service application; the at least one service provided by the service application is one of printing, faxing, or scanning; wherein the MFP is configured to cause the event manager to perform at least one of the following additional functions;
retrieve a status corresponding to the event, update said status, unsubscribe the event, or renew the event;wherein the DFM (i) executes on the MFP separate from the plurality of service applications, (ii) processes device metadata requests from one or more client applications that seek one or more services provided by the MFP, and (iii) implements, for the plurality of service applications, a plurality of Web Services specifications, each of which is different than the eventing specification; wherein none of the plurality of service applications implements any of the plurality of Web Services specifications; cause the event manager to maintain identification information that identifies at least the event specified in the request; wherein the MFP being configured to cause the event manager to maintain identification information includes the MFP being configured to cause; the event manager to send, to a component of the one or more components of the service application, first data, from the event subscription request, that is specific to the service application; the component of the service application to process said first data to generate second data; the component of the service application to send the second data to the event manager; the event manager to include the second data in a subscribe response that is generated by the event manager; and the event manager to send the subscribe response to the client application; cause the event manager to receive, from a platform of the MFP, notification data that indicates that the event occurred; cause the event manager to compare the notification data with the identification information; based on the comparison, cause the event manager to compose a notification message; and send the notification message to one or more intended recipients. - View Dependent Claims (21, 22, 23, 24, 25, 26, 27, 28, 29)
-
Specification