|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectjgroup.relacs.gm.MulticastLayer
public final class MulticastLayer
The MulticastLayer
class implements the multicast service.
Nested Class Summary |
---|
Nested classes/interfaces inherited from interface jgroup.core.Layer |
---|
Layer.FinalizeLayer |
Field Summary |
---|
Fields inherited from interface jgroup.relacs.events.EventTags |
---|
DAEMON_FAILURE_EVENT, DELIVERY_ACK, DELIVERY_EVENT, INSTALL_ACK, INSTALL_EVENT, JOIN_REQUEST, LEAVE_REQUEST, MEMBER_LEFT_EVENT, MULTICAST_REQUEST, PREPARE_ACK, PREPARE_EVENT |
Method Summary | |
---|---|
void |
addListener(java.lang.Object listener)
Add a listener object for this layer to provide upcalls to in response to multicast events. |
int[] |
eventTypes()
Returns the set of event types supported by this listener. |
static MulticastLayer |
getLayer(DispatcherService ds,
MembershipService pgms)
|
java.io.OutputStream |
getMessage(java.lang.String protocol)
Returns an output stream to be used to encode a message. |
void |
mcast(java.io.OutputStream stream,
AckListener ackl)
Multicast a message enclosed in the stream out to the
members of the current view of the group. |
void |
mcast(java.io.OutputStream out,
AckListener ackl,
ChainIdentifier chId)
Multicast a message enclosed in the stream out to the
members of the current view of the group. |
void |
mcast(java.lang.String protocol,
java.lang.Object obj,
AckListener ackl)
Multicast a serializable object to the members of the current view of a group. |
void |
notifyEvent(Event event)
This method is invoked by a dispatcher to notify a listener about an event. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Method Detail |
---|
public static MulticastLayer getLayer(DispatcherService ds, MembershipService pgms) throws JgroupException
JgroupException
public void addListener(java.lang.Object listener)
addListener
in interface Layer
listener
- An Object
representation of the listener interface.
This will typically be cast to the appropriate listener interface
type after checking the type with the instanceof operator.public void mcast(java.io.OutputStream out, AckListener ackl, ChainIdentifier chId) throws JgroupException
MulticastService
out
to the
members of the current view of the group.
The invoker may specify an AckListener
object, which
will be notified when objects returned by members delivering this
message, are received.
mcast
in interface MulticastService
out
- The stream message to be multicast.ackl
- Acknowledgement listener to be notified; if null, no listener
will be notified.chId
- Identifier of a previous message (delivered through a
deliverStream
).
This is only required for multicast messages
that relate to some previous multicast message. It will only
be used in extremely rare cases, to avoid that the membership service
delays the message while running the agreement protocol, which would
otherwise prevent the agreement protocol from concluding.
JgroupException
- Rasied if the group manager receives a request to multicast a
message after having joined a group, but before having received
the first view for it; or after having requested to leave the group.public void mcast(java.io.OutputStream stream, AckListener ackl) throws JgroupException
MulticastService
out
to the
members of the current view of the group.
The invoker may specify an AckListener
object, which
will be notified when objects returned by members delivering this
message, are received.
mcast
in interface MulticastService
stream
- The stream message to be multicast.ackl
- Acknowledgement listener to be notified; if null, no listener
will be notified.
JgroupException
- Rasied if the group manager receives a request to multicast a
message after having joined a group, but before having received
the first view for it; or after having requested to leave the group.public void mcast(java.lang.String protocol, java.lang.Object obj, AckListener ackl) throws JgroupException, java.io.IOException
MulticastService
The invoker may specify an AckListener
object, which
will be notified when objects returned by members delivering this
message are received.
mcast
in interface MulticastService
protocol
- The protocol for the message object to be multicast.obj
- The message object to be multicast.ackl
- Acknowledgement listener to be notified; if null, no listener
will be notified.
JgroupException
- Rasied if the group manager receives a request to multicast a
message after having joined a group, but before having received
the first view for it; or after having requested to leave the group.
java.io.IOException
- Raised if the object to be multicast could not be serialized.public java.io.OutputStream getMessage(java.lang.String protocol) throws java.io.IOException
MulticastService
mcast(OutputStream, AckListener)
accepts only
multicast messages obtained through this method. The provided output
stream is a memory data structure optimized to avoid useless data
copies.
getMessage
in interface MulticastService
protocol
- The protocol name used for the OutputStream
message
object to be multicast.
java.io.IOException
public int[] eventTypes()
DispatcherListener
EventTags
interface.
eventTypes
in interface DispatcherListener
public void notifyEvent(Event event)
DispatcherListener
notifyEvent
in interface DispatcherListener
event
- The Event
object to be processed.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |