|
||||||||||
| PREV NEXT | FRAMES NO FRAMES | |||||||||
MessageSender logic simply in order to help the specific transport layer to be implemented easily
Mainly, this stores both source's PeerID and target's PeerID before sending the message to the peerMulticastMessageSender logic simply in order to help the specific transport layer to be implemented easily
Mainly, this stores both source's PeerID and target's PeerID before broadcasting the message to all membersMulticastMessageSender and MessageSender logic simply
in order to help the specific transport layer to be implemented easily
Mainly, this stores both source's PeerID and target's PeerID
before sending the message to the peer or broadcasting the message to all membersNetworkManager logic simply in order to help the specific transport layer to be implemented easily
Mainly, this manages MessageListener and dispatches an inbound Message into the appropriate listenerMessageListener
MessageListener
peerID to this network manager
MessageListener.receiveMessageEvent(MessageEvent)} callback, this method will be called
MessageListener.receiveMessageEvent(MessageEvent)} callback, this method will be called
MulticastMessageSender's implementation and extends AbstractMulticastMessageSender
This uses MulticastSocket which is based on Blocking I/OMessage to all members
Message to all members
Message to all members
ByteBuffer was taken as base for Grizzly
Buffer interface, but Buffer has several extensions:
it's possible to prepend some data to a Buffer and release Buffer, when
it's not required any more.InputStream implementation over Buffer.ActionFactory and Action sub-typesMessage to all members
Message to all members
Message to all members
Message to all members
Message to all members
Message to the destination
Message to the destination
Message to the destination
Buffer that shares this buffer's content.
DynamicBufferWriter factory.InetAddress of the first network interface
check java property java.net.preferIPv6Addresses for whether to favor IPv4 or IPv6.
InetAddress of the first network interface
But, if any network interfaces were not found locally, null could be returned.
PeerID
PeerID
null if this message contains no mapping for the key
null if this message contains no mapping for the key
Set element view of the mappings contained in this message
Set element view of the mappings contained in this message
MessageSender corresponding with transport type
MulticastMessageSender
InetAddress of network interface
But, if any network interfaces were not found locally, null could be returned.
PeerID corresponding with a given instance name
Buffer of this message
ByteBuffer of this message
ByteBuffer of this message
Message is supporting
i.g.
ByteBuffer given
to this ProtocolParser's ProtocolParser.startBuffer(ByteBuffer) ?
This method is typically called after processing the protocol message,
to determine if the ByteBuffer has more bytes which
need to parsed into a next message.
ProtocolParser.getNextMessage().
HealthMonitor uses this messages to check the member's health.HealthMonitor in order to determine the failure member
ProtocolParser.hasNextMessage() to determine if the
ByteBuffer which has been parsed contains a partial message
true if shutting down
JxtaPipeManager and extends AbstractMultiMessageSender
which supports both MulticastMessageSender
and MessageSender transport layer
This stores and caches JxtaPipeManager according to Message's type
This implements Jxta's PipeMsgListener, receives Jxta's PipeMsgEvent, parses Jxta's message,
converts it into Message and forwards it to NetworkManagerPeerID.
PeerID.
PeerID.
PeerID.
Buffer <-> Message transformation.Message's implementation
The byte array or ByteBuffer which represent this message's low level data will be cached if this message is not modified
Here are this message's structure
----
[packet]
magic(4) + version(4) + type(4) + messages_length(4) + messages(message_length)
[messages]
message_count(4) + message_key1 + message_value1 + message_key2 + message_value2 + ...(message_count)
----MessageNetworkManager
with corresponding to the appropriate message type
i.g.Message to the specific destination
This interface can be implemented for only TCP or only UDP or both TCP and UDP transport layerMessage to all membersParserProtocolFilter, which allows just OP_READ.uniqueID is used in order to identify a unique member.Message
In this process, inbound Message will be wrapped into MessageEvent
and be delivered to registered MessageListener with corresponding to the message type
Message
In this process, inbound Message will be wrapped into MessageEvent
and be delivered to registered MessageListener with corresponding to the message type
MessageEvent
MessageEvent
MessageEvent
MessageEvent
ProtocolParser.startBuffer(ByteBuffer).
MessageListener
MessageListener
peerID from this network manager
Message to the destination
Message to the destination
msg over pipe.
Message to the destination
ByteBuffer of required size from big chunk.
ByteBuffer's slice basing on its passed position and limit.
PeerID
NetworkManager.initialize(String, String, java.util.Map) internally
NetworkManager.initialize(String, String, java.util.Map) internally
SystemAdvertisementPeerID
Buffer content as String, using default Charset
Buffer content as String
Buffer's chunk content as String
ClusterManager message
HealthMonitor's message
Currently, HealthMessage will be used for message elements
MasterNode message
LWRMulticast message
NetworkManager.isConnected(com.sun.enterprise.ee.cms.impl.base.PeerID) send the ping message to suspicious member
BlockingIOMulticastSender
for supporting the circumstance that cluster members are located beyond one subnet
or multicast traffic is disabled
virtualPeerIdList should contain PeerIDs of cluster members which are located beyond one subnet.
|
||||||||||
| PREV NEXT | FRAMES NO FRAMES | |||||||||