IP Library › Granted Patent US 8,711,396
Granted Patent B2
US 8,711,396 · App. 12/334,304 · Granted Apr 29, 2014

Managing multiple web services on a single device

Inventor: Lifen Tian (Sunnyvale, CA)
Assignee: Ricoh Company, Ltd.
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,711,396
App. No.
12/334,304
Granted
Apr 29, 2014
Kind
B2
Abstract

Techniques are provided for managing multiple Web services on a single device. The device includes device metadata and a service manager. Each Web service registers with the service manager. Registration includes providing service metadata to the service manager. The service manager may generate (e.g., at least some) service relationship data based on the service metadata. The service relationship data indicates (either explicitly or implicitly) a relationship (e.g., a dependency) between a first Web service of the multiple Web services and a second Web service. In response to one or more criteria being satisfied with respect to the first Web service, the service manager uses the service relationship data and/or the device metadata to determine that one or more actions should be initiated with respective to the second Web service.

Claims (102)

1. A printing device comprising:

a first Web service that is addressable by one or more clients that are separate from the printing device and that are configured to communicate with the printing device over a network;

a second Web service that is addressable by the one or more clients that are separate from the printing device;

service metadata that contains:

first service metadata for the first Web service, and

second service metadata for the second Web service;

service relationship data that is generated at the printing device based on the first service metadata and the second service metadata and that indicates a relationship between the first Web service and the second Web service for the printing device;

device metadata that contains metadata for the printing device; and

a service manager that is configured to:

register the first Web service on the printing device,

register the second Web service on the printing device, and

in response to one or more criteria, associated with the first Web service, being satisfied:

determine, based on one or more of the service relationship data or the device metadata, that a set of one or more actions are to be performed with respect to the second Web service, and

cause the set of one or more actions to be performed with respect to the second Web service.

2. The printing device of claim 1 , wherein the first Web service is a printing service and the second Web service is one of a scan service, a facsimile service, an archive service, or a global positioning system (GPS) service.

3. The printing device of claim 1 , wherein:

the one or more criteria include the first Web service becoming unavailable; and

the set of one or more actions include at least one of instructing the second Web service to terminate or causing the printing device to reboot.

4. The printing device of claim 1 , wherein:

the one or more criteria include a client unsubscribing all events, associated with the first Web service, for which the client subscribed; and

the set of one or more actions include unsubscribing all events, associated with the second Web service, for which the client subscribed.

5. The printing device of claim 1 , wherein:

the one or more criteria include a failure of a client installing the first Web service; and

the set of one or more actions include at least one of: preventing the client from installing the second Web service, causing the client to uninstall the second Web service if the client has installed the second Web service, or unsubscribing all events, associated with the second Web service, for which the client subscribed.

6. The printing device of claim 1 , wherein:

the device metadata includes a device preference data that indicates whether the printing device is treated as a single device or as a plurality of services; and

determining that the set of one or more actions are to be performed with respect to the second Web service is based on the device preference data.

7. The printing device of claim 1 , wherein:

the first service metadata includes a first service priority data that indicates a level of importance of the first Web service;

the second service metadata includes a second service priority data that indicates a level of importance of the second Web service; and

determining that the set of one or more actions are to be performed with respect to the second Web service is also based on the first service priority data and the second service priority data.

8. The printing device of claim 1 , wherein:

the first service metadata includes a first service visibility data that indicates that the first Web service is to be exposed to clients;

the second service metadata includes a second service visibility data that indicates that the second Web service is not to be exposed to clients; and

the service manager is further configured to:

receive, from a client, a request for identification of available services hosted by the printing device; and

determine, based on the first service visibility data and the second service visibility data, whether to include, in a response to the request, an identification of the first Web service and the second Web service;

in response to determining that the first service visibility data indicates that the first Web service is to be exposed to clients, including an identification of the first Web service in the response;

in response to determining that the second service visibility data indicates that the second Web service is not to be exposed to clients, not including an identification of the second Web service in the response.

9. The printing device of claim 1 , wherein:

the first service metadata includes a first depended service data that indicates one or more first services upon which the first Web service is dependent;

the second service metadata includes a second depended service data that indicates one or more second services upon which the second Web service is dependent; and

the service manager is further to:

in response to determining that a particular service of the one or more first services or the one or more second services is not functioning properly, determine, based on the first depended service data and the second depended service data, which Web services will be affected by the particular service not functioning properly.

10. A printing device comprising:

a first Web service that is addressable by one or more clients that are separate from the printing device and that are configured to communicate with the printing device over a network;

a second Web service that is addressable by the one or more clients that are separate from the printing device;

service metadata that contains:

first service metadata for the first Web service, and

second service metadata for the second Web service; and

a service manager configured to:

register the first Web service on the printing device,

register the second Web service on the printing device,

receive and store on the printing device first status or event data associated with the first Web service,

receive and store on the printing device second status or event data associated with the second Web service,

provide, to a client, printing device metadata that indicates that the printing device is currently configured to use aggregated data collection, and

in response to a request from the client for status or event data and determining that the printing device is currently configured to use aggregated data collection, provide, to the client, both at least a portion of the first status or event data associated with the first Web service and at least a portion of the second status or event data associated with the second Web service.

11. The printing device of claim 10 , wherein:

the request is also for a status of the printing device; and

the service manager is further configured to:

maintain a device status data that is separate from status data of the first Web service and status data of the second Web service;

provide the device status data to the client.

12. One or more non-transitory machine-readable media carrying instructions which, when executed by one or more processors, cause:

registering a first Web service, on a printing device, with a service manager of the printing device, wherein registering the first Web service includes the service manager receiving first service metadata of the first Web service;

wherein the first Web service is addressable by one or more clients that are separate from the printing device and that are configured to communicate with the printing device over a network;

registering a second Web service, on the printing device, with the service manager of the printing device, wherein registering the second Web service includes the service manager receiving second service metadata of the second Web service;

wherein the second Web service is addressable by the one or more clients that are separate from the printing device;

maintaining, on the printing device, device metadata that indicates metadata for the printing device;

generating, at the printing device, service relationship data based on the first service metadata and the second service metadata, wherein the service relationship data indicates a relationship between the first Web service and the second Web service; and

in response to one or more criteria, associated with the first Web service, being satisfied:

determining, by the service manager, based on one or more of the service relationship data or the device metadata, that a set of one or more actions are to be performed with respect to the second Web service, and

causing, by the service manager, the set of one or more actions to be performed with respect to the second Web service.

13. The one or more non-transitory machine-readable media of claim 12 , wherein the first Web service is a printing service and the second Web service is one of a scan service, a facsimile service, an archive service, or a global positioning system (GPS) service.

14. The one or more non-transitory machine-readable media of claim 12 , wherein:

the one or more criteria include the first Web service becoming unavailable; and

the set of one or more actions include at least one of the service manager instructing the second Web service to terminate or causing the printing device to reboot.

15. The one or more non-transitory machine-readable media of claim 12 , wherein:

the one or more criteria include a client unsubscribing all events, associated with the first Web service, for which the client subscribed; and

the set of one or more actions include the service manager unsubscribing all events, associated with the second Web service, for which the client subscribed.

16. The one or more non-transitory machine-readable media of claim 12 , wherein:

the one or more criteria include a failure of a client installing the first Web service; and

the set of one or more actions include at least one of preventing the client from installing the second Web service, causing the client to uninstall the second Web service if the client has installed the second Web service, or unsubscribing all events, associated with the second Web service, for which the client subscribed.

17. The one or more non-transitory machine-readable media of claim 12 , wherein:

the device metadata includes a device preference data that indicates whether the printing device is treated as a single device or as a plurality of services; and

determining that the set of one or more actions are to be performed with respect to the second Web service is based on the device preference data.

18. The one or more non-transitory machine-readable media of claim 12 , wherein:

the first service metadata includes a first service priority data that indicates a level of importance of the first Web service;

the second service metadata includes a second service priority data that indicates a level of importance of the second Web service; and

determining that the set of one or more actions are to be performed with respect to the second Web service is also based on the first service priority data and the second service priority data.

19. The one or more non-transitory machine-readable media of claim 12 , wherein:

the first service metadata includes a first service visibility data that indicates that the first Web service is to be exposed to clients;

the second service metadata includes a second service visibility data that indicates that the second Web service is not to be exposed to clients; and

the instructions include additional instructions which, when executed by the one or more processors, further cause:

the service manager receiving, from a client, a request for identification of available services hosted by the printing device;

the service manager determining, based on the first service visibility data and the second service visibility data, whether to include, in a response to the request, an identification of the first Web service and the second Web service;

in response to determining that the first service visibility data indicates that the first Web service is to be exposed to clients, including an identification of the first Web service in the response;

in response to determining that the second service visibility data indicates that the second Web service is not to be exposed to clients, not including an identification of the second Web service in the response.

20. The one or more non-transitory machine-readable media of claim 12 , wherein:

the first service metadata includes a first depended service data that indicates one or more first services upon which the first Web service is dependent;

the second service metadata includes a second depended service data that indicates one or more second services upon which the second Web service is dependent; and

the instructions include additional instructions which, when executed by the one or more processors, further cause:

in response to determining that a particular service of the one or more first services or the one or more second services is not functioning properly, the service manager determining, based on the first depended service data and the second depended service data, which Web services will be affected by the particular service not functioning properly.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 12, 2008
From: TIAN, LIFEN
To: RICOH COMPANY, LTD.
Reel/Frame 021973/0834 →
Continuity (1)
Related Publication 20100149583A1 · Jun 17, 2010