class ListenerProxy extends Object implements RemoteEventListener, Serializable, ReferentUuid
ListenerProxy
class implements the
RemoteEventListener
interface.
Instances of this class are provided as the event "forwarding"
target to clients of the mailbox service.Modifier and Type | Class and Description |
---|---|
(package private) static class |
ListenerProxy.ConstrainableListenerProxy
A subclass of ListenerProxy that implements RemoteMethodControl.
|
Modifier and Type | Field and Description |
---|---|
(package private) Uuid |
registrationID
The proxy's
Uuid |
private static long |
serialVersionUID |
(package private) MailboxBackEnd |
server
The reference to the event mailbox service implementation
|
Modifier | Constructor and Description |
---|---|
private |
ListenerProxy(MailboxBackEnd ref,
Uuid regID)
Simple constructor
|
Modifier and Type | Method and Description |
---|---|
(package private) static ListenerProxy |
create(Uuid id,
MailboxBackEnd server)
Creates a mailbox listener proxy, returning an instance
that implements RemoteMethodControl if the server does too.
|
boolean |
equals(Object o)
Proxies for servers with the same
proxyID are
considered equal. |
Uuid |
getReferentUuid()
Returns the universally unique identifier that has been assigned to the
resource this proxy represents.
|
int |
hashCode()
Proxies for servers with the same proxyID have the same hash code.
|
void |
notify(RemoteEvent theEvent)
Notify the listener about an event.
|
private void |
readObject(ObjectInputStream s)
When an instance of this class is deserialized, this method is
automatically invoked.
|
private void |
readObjectNoData()
During deserialization of an instance of this class, if it is found
that the stream contains no data, this method is automatically
invoked.
|
private static final long serialVersionUID
final MailboxBackEnd server
final Uuid registrationID
Uuid
private ListenerProxy(MailboxBackEnd ref, Uuid regID)
static ListenerProxy create(Uuid id, MailboxBackEnd server)
id
- the ID of the proxyserver
- the server's listener proxypublic void notify(RemoteEvent theEvent) throws UnknownEventException, RemoteException
RemoteEventListener
The call to notify is synchronous to allow the party making the call to know if the call succeeded. However, it is not part of the semantics of the call that the notification return can be delayed while the recipient of the call reacts to the occurrence of the event. Simply put, the best strategy on the part of the recipient is to note the occurrence in some way and then return from the notify method as quickly as possible.
UnknownEventException is thrown when the recipient does not recognize the combination of the event identifier and the event source as something in which it is interested. Throwing this exception has the effect of asking the sender to not send further notifications of this kind of event from this source in the future.
notify
in interface RemoteEventListener
theEvent
- the remote event that occurredUnknownEventException
- the recipient does not recognize the
combination of event identifier and event sourceRemoteException
public final Uuid getReferentUuid()
getReferentUuid
in interface ReferentUuid
Uuid
that is associated with the
resource this proxy represents. This method will not return
null
.ReferentUuid
public int hashCode()
public boolean equals(Object o)
proxyID
are
considered equal.private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
InvalidObjectException
- if the state of the
deserialized instance of this class is found to be invalid.IOException
ClassNotFoundException
private void readObjectNoData() throws ObjectStreamException
InvalidObjectException
- to indicate that there
was no data in the stream during deserialization of an
instance of this class; declaring that something is wrong.ObjectStreamException
Copyright 2007-2013, multiple authors.
Licensed under the Apache License, Version 2.0, see the NOTICE file for attributions.