This is a utility for services implementing leases. The {@link com.sun.jini.landlord.Landlord} is the basic interface that defines the utility. A service that exports leases implements the `Landlord` interface, which is used for callbacks by the utility classes when a lease's status changes. Each leased resource is identified by a landlord-generated {@link net.jini.id.Uuid} called a cookie. The {@link net.jini.core.lease.Lease} object handed to the client contains the cookie, and that cookie is used when communicating with the landlord about the lease.

The utility classes define a lease object type {@link com.sun.jini.landlord.LandlordLease}. The `Lease` objects handed to clients will be of this type. `LandlordLease` objects talk to the `Landlord` about the lease. A factory class, {@link com.sun.jini.landlord.LeaseFactory}, can be used to generate new leases. The package also contains a constrainable implementation of `Lease`, {@link com.sun.jini.landlord.ConstrainableLandlordLease}, that implements {@link net.jini.core.constraint.RemoteMethodControl} and supports proxy trust verification (when used with {@link com.sun.jini.landlord.LandlordProxyVerifier}) and suitable implementations of {@link net.jini.core.lease.LeaseMap}. It also contains utilities and interfaces to assist you in implementing the `Landlord` interfaces: {@link com.sun.jini.landlord.LandlordUtil}, {@link com.sun.jini.landlord.LeasePeriodPolicy}, and {@link com.sun.jini.landlord.FixedLeasePeriodPolicy}.

Using the classes in this package, you can write services that export leases and handle primarily those factors that are unique to your service, letting the utility classes do generic lease-related work.