private class NormServerBaseImpl.SendMonitorImpl extends Object implements SendMonitor
SendMonitor
we use to track
event delivery threads. Each set gets its own object.Modifier and Type | Field and Description |
---|---|
private LeaseSet |
set
Set this is the monitor for
|
Modifier | Constructor and Description |
---|---|
private |
NormServerBaseImpl.SendMonitorImpl(LeaseSet set)
Simple constructor.
|
Modifier and Type | Method and Description |
---|---|
void |
definiteException(EventType type,
RemoteEvent ev,
long registrationNumber,
Throwable t)
Method called when an attempt to send the event associated with
this object results in a definite exception
(e.g.
|
boolean |
isCurrent()
Should return
true if the lease associated with this
event is still valid and false otherwise. |
private final LeaseSet set
private NormServerBaseImpl.SendMonitorImpl(LeaseSet set)
set
- the set this monitor is associated withpublic void definiteException(EventType type, RemoteEvent ev, long registrationNumber, Throwable t)
SendMonitor
java.rmi.NoSuchObjectException
or any other
Throwable
that is not a subclass of
java.rmi.RemoteException
.
The caller will own no locks when calling this method.
definiteException
in interface SendMonitor
type
- the object that generated the eventev
- the remote event that could not be sentregistrationNumber
- of the event registration that
generated the exception. This can be used
to call EventType.clearListenerIfSequenceMatch
ensure only the registration that cause the problem
gets cleared.t
- the definite exception that caused us to give up
sending the eventpublic boolean isCurrent()
SendMonitor
true
if the lease associated with this
event is still valid and false
otherwise.
The caller will own no locks when calling this method.
isCurrent
in interface SendMonitor
Copyright 2007-2013, multiple authors.
Licensed under the Apache License, Version 2.0, see the NOTICE file for attributions.