# Norm
v2.0_002 Release Notes

### Description

"Norm" is the name of the contributed Jini(TM) technology lease renewal service implementation from Sun Microsystems. The Jini Lease Renewal Service Specification is available in html.

The specification for Norm is defined not only by the Jini Lease Renewal Service Specification, but also by the API documentation (generated by the Javadoc(TM) tool) for `Administrable`.

### Changes since the v1.2.X release

Non-Activatable Persistent and Transient Implementations
  Norm can now be run in three different modes:
  - Transient (and non-activatable)
  - Persistent and non-activatable)
  - Persistent and activatable
  For examples of running Norm in these different modes, see the `com.sun.jini.norm` package documentation.

Adding Leases to Multiple Renewal Sets
  Norm has been modified to support changes to the Lease Renewal Specification to permit adding leases to multiple renewal sets. Along with this change, Norm no longer restricts the batching of leases to leases with the same codebase, and can be configured to control whether or not to batch leases that are contained in different renewal sets.

Leases and Lease Maps that Implement `RemoteMethodControl`
  Norm supports leases and lease maps that implement `RemoteMethodControl`. The implementation only batches leases if they both implement `RemoteMethodControl` and have the same constraints, or if neither implements `RemoteMethodControl`. In addition, the constraints for the `renew` and `cancel` methods on a lease are placed on the `renewAll` and `cancelAll` methods of the associated lease map if the map implements `RemoteMethodControl`.

Modifications to Proxies
  Norm's proxies now implement `RemoteMethodControl` if the underlying server remote reference does. Norm proxies are also now smart proxies that are equal if they are associated with the same service, regardless of changes to the proxy class or the underlying server remote reference.

Configuration
  Norm can now be configured using the `com.sun.jini.norm` `Configuration` component, including configuring proxy preparation, lookup attributes and groups, and whether to batch leases in different renewal sets. A full list of supported configuration entries is given in the package documentation.

Logging
  Norm now logs diagnostic information to the `Logger` named `com.sun.jini.norm`, replacing the use of the `com.sun.jini.norm.debug` system property. A description of what information is logged at what logging levels is given in the package documentation.

Removal of `com.sun.jini.norm.NormAdmin`
  The administrative methods provided by the `NormAdmin` interface have been replaced by equivalent configuration entries, and the `NormAdmin` interface has been removed. Note that Norm's admin proxy (returned from the `getAdmin` method of Norm's main proxy) still implements the `JoinAdmin` and `DestroyAdmin` interfaces. The `NormAdmin` methods have been replaced by the following configuration entries for the `com.sun.jini.norm` component, which are only supported by persistent implementations of Norm:

  `setLogToSnapshotThreshold`
    Use the `persistenceSnapshotThreshold` entry.

  `setSnapshotWeight`
    Use the `persistenceSnapshotWeight` entry.

Copyright 2004 Sun Microsystems, Inc. All Rights Reserved.