public abstract class GrizzlyNetworkManager extends AbstractNetworkManager
| Modifier and Type | Field and Description |
|---|---|
static String |
DEFAULT_IPv4_MULTICAST_ADDRESS |
static String |
DEFAULT_IPv6_MULTICAST_ADDRESS |
protected boolean |
disableMulticast |
long |
failTcpTimeout |
String |
groupName |
protected int |
highWaterMark |
String |
host |
String |
instanceName |
Logger |
LOG |
protected int |
maxParallelSendConnections |
String |
multicastAddress |
int |
multicastPacketSize |
int |
multicastPort |
MulticastMessageSender |
multicastSender |
int |
multicastTimeToLive |
String |
networkInterfaceName |
Logger |
nomcastLogger |
protected int |
numberToReclaim |
ConcurrentHashMap<String,PeerID<GrizzlyPeerID>> |
peerIDMap |
ConcurrentHashMap<PeerID,CountDownLatch> |
pingMessageLockMap |
boolean |
running |
long |
sendWriteTimeoutMillis |
long |
startTimeoutMillis |
int |
tcpEndPort |
int |
tcpPort |
MessageSender |
tcpSender |
int |
tcpStartPort |
MessageSender |
udpSender |
static String |
UNKNOWN |
protected String |
virtualUriList |
protected VirtualMulticastSender |
vms |
int |
writeSelectorPoolSize |
localPeerIDTCP_TRANSPORT, UDP_TRANSPORT| Constructor and Description |
|---|
GrizzlyNetworkManager() |
| Modifier and Type | Method and Description |
|---|---|
void |
addRemotePeer(PeerID peerID)
Add the
peerID to this network manager |
protected void |
addToVMS(PeerID peerID) |
void |
afterDispatchingMessage(MessageEvent messageEvent,
Map piggyback)
After executing
MessageListener.receiveMessageEvent(MessageEvent)} callback, this method will be called |
void |
beforeDispatchingMessage(MessageEvent messageEvent,
Map piggyback)
Before executing
MessageListener.receiveMessageEvent(MessageEvent)} callback, this method will be called |
boolean |
broadcast(Message message)
Broadcasts or Multicasts the given
Message to all members |
void |
configure(Map properties) |
protected abstract Logger |
getGrizzlyLogger() |
MessageSender |
getMessageSender(int transport)
Returns a
MessageSender corresponding with transport type |
MulticastMessageSender |
getMulticastMessageSender()
Returns a
MulticastMessageSender |
PeerID |
getPeerID(String instanceName)
Returns the proper
PeerID corresponding with a given instance name |
protected PeerID<GrizzlyPeerID> |
getPeerIDFromURI(String uri) |
CountDownLatch |
getPingMessageLock(PeerID peerID) |
protected List<PeerID> |
getVirtualPeerIDList(String groupDiscoveryUriList) |
void |
initialize(String groupName,
String instanceName,
Map properties)
Initializes this network manager with given params and properties
|
boolean |
isConnected(PeerID peerID)
Check whether the suspicious peer is alive or not
This API is mainly used in
HealthMonitor in order to determine the failure member |
protected boolean |
isLeavingMessage(MessageEvent msgEvent) |
protected void |
removeFromVMS(PeerID peerID) |
void |
removePeerID(PeerID peerID)
Removes the
peerID from this network manager |
void |
removeRemotePeer(String instanceName) |
boolean |
send(PeerID peerID,
Message message)
Sends the given
Message to the destination |
void |
start()
Starts this network manager
This method will be called after
NetworkManager.initialize(String, String, java.util.Map) internally |
void |
stop()
Stops this network manager
For cleaning up remaining values and finishing I/O operation, this method could be used
|
addMessageListener, getInstance, getLocalPeerID, getLogger, receiveMessage, removeMessageListenerpublic final Logger LOG
public final Logger nomcastLogger
public final ConcurrentHashMap<String,PeerID<GrizzlyPeerID>> peerIDMap
public volatile boolean running
public MessageSender tcpSender
public MessageSender udpSender
public MulticastMessageSender multicastSender
public int multicastTimeToLive
public String instanceName
public String groupName
public String host
public int tcpPort
public int tcpStartPort
public int tcpEndPort
public int multicastPort
public String multicastAddress
public String networkInterfaceName
public long failTcpTimeout
protected int highWaterMark
protected int numberToReclaim
protected int maxParallelSendConnections
public long startTimeoutMillis
public long sendWriteTimeoutMillis
public int multicastPacketSize
public int writeSelectorPoolSize
public static final String UNKNOWN
public static final String DEFAULT_IPv4_MULTICAST_ADDRESS
public static final String DEFAULT_IPv6_MULTICAST_ADDRESS
public final ConcurrentHashMap<PeerID,CountDownLatch> pingMessageLockMap
protected VirtualMulticastSender vms
protected boolean disableMulticast
protected String virtualUriList
public void configure(Map properties)
public void initialize(String groupName, String instanceName, Map properties) throws IOException
NetworkManagerinitialize in interface NetworkManagerinitialize in class AbstractNetworkManagergroupName - group nameinstanceName - instance nameproperties - specific propertiesIOException - if an unexpected error occurspublic void start()
throws IOException
AbstractNetworkManagerNetworkManager.initialize(String, String, java.util.Map) internallystart in interface NetworkManagerstart in interface ShoalMessageSenderstart in class AbstractNetworkManagerIOException - if an I/O error occurspublic void stop()
throws IOException
AbstractNetworkManagerstop in interface NetworkManagerstop in interface ShoalMessageSenderstop in class AbstractNetworkManagerIOException - if an I/O error occurspublic void beforeDispatchingMessage(MessageEvent messageEvent, Map piggyback)
AbstractNetworkManagerMessageListener.receiveMessageEvent(MessageEvent)} callback, this method will be calledbeforeDispatchingMessage in class AbstractNetworkManagermessageEvent - a received MessageEventpiggyback - piggybackpublic void afterDispatchingMessage(MessageEvent messageEvent, Map piggyback)
AbstractNetworkManagerMessageListener.receiveMessageEvent(MessageEvent)} callback, this method will be calledafterDispatchingMessage in class AbstractNetworkManagermessageEvent - a received MessageEventpiggyback - piggybackpublic void addRemotePeer(PeerID peerID)
NetworkManagerpeerID to this network managerpeerID - the peer Idpublic void removeRemotePeer(String instanceName)
public boolean send(PeerID peerID, Message message) throws IOException
MessageSenderMessage to the destinationpeerID - the destination PeerID. null is not allowedmessage - a message which is sent to the peerIOException - if I/O error occurs or given parameters are not validpublic boolean broadcast(Message message) throws IOException
MulticastMessageSenderMessage to all membersmessage - a message which is sent to all membersIOException - if I/O error occurs or given parameters are not validpublic PeerID getPeerID(String instanceName)
NetworkManagerPeerID corresponding with a given instance nameinstanceName - instance namepublic void removePeerID(PeerID peerID)
NetworkManagerpeerID from this network managerpeerID - the peer Idpublic boolean isConnected(PeerID peerID)
NetworkManagerHealthMonitor in order to determine the failure memberpeerID - peer idpublic CountDownLatch getPingMessageLock(PeerID peerID)
public MessageSender getMessageSender(int transport)
NetworkManagerMessageSender corresponding with transport typetransport - transport type. ShoalMessageSender.TCP_TRANSPORT or ShoalMessageSender.UDP_TRANSPORT's integer valueMessageSender's instance which this network manager containspublic MulticastMessageSender getMulticastMessageSender()
NetworkManagerMulticastMessageSenderMulticastMessageSender's instance which this network manager containsprotected abstract Logger getGrizzlyLogger()
protected PeerID<GrizzlyPeerID> getPeerIDFromURI(String uri) throws URISyntaxException
URISyntaxExceptionprotected boolean isLeavingMessage(MessageEvent msgEvent)
protected void addToVMS(PeerID peerID)
protected void removeFromVMS(PeerID peerID)
Copyright © 2017–2019 Eclipse Foundation. All rights reserved.