Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## net.jini.lease
Class LeaseRenewalEvent

    java.lang.Object
      java.util.EventObject
          net.jini.lease.LeaseRenewalEvent

All Implemented Interfaces:
  Serializable

public class LeaseRenewalEvent
extends EventObject

Event generated when a `LeaseRenewalManager` cannot renew a lease.

The `LeaseRenewalEvent` instances are sent to the `LeaseListener` (if any) associated with a given lease when the lease was added to the managed set. These events are typically generated because one of the following conditions occur:

- After successfully renewing a lease any number of times and experiencing no failures, the `LeaseRenewalManager` determines, prior to the next renewal attempt, that the actual expiration time of the lease has passed, implying that any further attempt to renew the lease would be fruitless.
- An indefinite exception occurs during each attempt to renew a lease, from the point that the first such exception occurs until the point when the `LeaseRenewalManager` determines that lease's actual expiration time has passed.
- A definite exception occurs during a lease renewal attempt.

Note that bad object exceptions, bad invocation exceptions, and `LeaseException`s are all considered definite exceptions.

This class encapsulates information about both the lease for which the failure occurred, as well as information about the condition that caused the renewal attempt to fail.

This class is a subclass of the class `EventObject`, adding the following additional items of abstract state:

- The lease on which the renewal attempt failed, and to which the event pertains
- The desired expiration time of the affected lease
- The `Throwable` associated with the last renewal attempt (if any)

In addition to the methods of the `EventObject` class, this class defines methods through which this additional state may be retrieved.

The source associated with a `LeaseRenewalEvent` will be the `LeaseRenewalManager` that generated the event.

See Also:
  `Lease`, `LeaseException`, `LeaseRenewalManager`, `LeaseListener`, `EventObject`, Serialized Form

Field Summary

Fields inherited from class java.util.EventObject
`source`

Constructor Summary
`LeaseRenewalEvent(LeaseRenewalManager source, Lease lease, long expiration, Throwable ex)` Constructs an instance of this class with the specified state.

Method Summary
`Throwable` | `getException()` Returns the exception (if any) that caused the event to be sent.
`long` | `getExpiration()` Returns the desired expiration time of the lease to which event pertains.
`Lease` | `getLease()` Returns a reference to the lease to which the event pertains.

Methods inherited from class java.util.EventObject
`getSource, toString`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Constructor Detail

### LeaseRenewalEvent

    public LeaseRenewalEvent(LeaseRenewalManager source,
                             Lease lease,
                             long expiration,
                             Throwable ex)

  Constructs an instance of this class with the specified state.

Parameters:
  `source` - reference to the instance of the `LeaseRenewalManager` that generated the event
  `lease` - the lease to which the event pertains
  `expiration` - the desired expiration time for the affected lease
  `ex` - the `Throwable` associated with the last renewal attempt (if any)
See Also:
  `Lease`, `LeaseRenewalManager`

Method Detail

### getLease

    public Lease getLease()

  Returns a reference to the lease to which the event pertains.

  Returns:
    the `Lease` object corresponding to the lease on which the renewal attempt failed
  See Also:
    `Lease`

### getExpiration

    public long getExpiration()

  Returns the desired expiration time of the lease to which event pertains.

  Returns:
    a `long` value that represents the desired expiration time of the lease on which the renewal attempt failed

### getException

    public Throwable getException()

  Returns the exception (if any) that caused the event to be sent. The conditions under which the event may be sent, and the related values returned by this method, are as follows:
  - When any lease in the managed set has passed its actual expiration time, and either the most recent renewal attempt was successful or there have been no renewal attempts, the `LeaseRenewalManager` will cease any further attempts to renew the lease, and will send a `LeaseRenewalEvent` with no associated exception. In this case, invoking this method will return `null`.
  - For any lease from the managed set for which the most recent renewal attempt was unsuccessful because of the occurrence of a indefinite exception, the `LeaseRenewalManager` will continue to attempt to renew the affected lease at the appropriate times until: the renewal succeeds, the lease's expiration time has passed, or a renewal attempt throws a definite exception. If a definite exception is thrown or the lease expires, the `LeaseRenewalManager` will cease any further attempts to renew the lease, and will send a `LeaseRenewalEvent` containing the exception associated with the last renewal attempt.
  - If, while attempting to renew a lease from the managed set, a definite exception is encountered, the `LeaseRenewalManager` will cease any further attempts to renew the lease, and will send a `LeaseRenewalEvent` containing the particular exception that occurred.

  Returns:
    an instance of `Throwable` or `null`, indicating the condition that caused the `LeaseRenewalManager` to fail to renew the affected lease

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2004 Sun Microsystems, Inc. All rights reserved