The Licensing Service is a protocol for controlled access to objects and services under a licensing model. Conceptually, you can think of it as an extension of the Security Service, with some additional access semantics having to do with consumable and expirable access. A license gives a user certain limited rights to use a particular remote object or set of objects.
In the License Service model, a client makes a request for a licensed service from a service provider, giving the provider some proof of ownership of a license. The provider then turns to a license manager to acquire a license service, which it uses to verify the existence of a license and check its policy against the proposed usage. The producer can then ask to be notified of license expiration during its use, or it can poll the license service for changes in the license state.
The LicenseServiceManager provides access to license services specific to certain producers. The ProducerSpecificLicenseService provides a producer with the methods needed to check on license validity, and start and end license usage sessions.
The License Service depends on the Security Service for license verification and secure communications and on the Event Service for asynchonous notification of license events to producers. Some implementations may also use the Relationship, Property, and Query Services.
Copyright © 2001 O'Reilly & Associates. All rights reserved.