public class MessageCore
extends java.lang.Object
| Modifier and Type | Field and Description |
|---|---|
static java.lang.String |
VERSION |
| Constructor and Description |
|---|
MessageCore(Executor executor) |
| Modifier and Type | Method and Description |
|---|---|
void |
addAsyncFilter(MessageFilter filter,
AsyncMessageFilterCallback callback,
ByteCounter ctr) |
void |
checkFilters(Message m,
PacketSocketHandler from)
Dispatch a message to a waiting filter, or feed it to the
Dispatcher if none are found.
|
Message |
decodeSingleMessage(byte[] data,
int offset,
int length,
PeerContext peer,
int overhead)
Decode a packet from data and a peer.
|
Executor |
getExecutor() |
long |
getStartedTime() |
java.util.Map<java.lang.String,java.lang.Integer> |
getUnclaimedFIFOMessageCounts() |
int |
getUnclaimedFIFOSize() |
void |
onDisconnect(PeerContext ctx)
IncomingPacketFilter should call this when a node is disconnected.
|
void |
onRestart(PeerContext ctx)
IncomingPacketFilter should call this when a node connects with a new boot ID
|
void |
send(PeerContext destination,
Message m,
ByteCounter ctr)
Send a Message to a PeerContext.
|
void |
setDispatcher(Dispatcher d) |
void |
start(Ticker ticker) |
Message |
waitFor(MessageFilter filter,
ByteCounter ctr)
Wait for a filter to trigger, or timeout.
|
public static final java.lang.String VERSION
public MessageCore(Executor executor)
public long getStartedTime()
public Message decodeSingleMessage(byte[] data, int offset, int length, PeerContext peer, int overhead)
data - offset - length - peer - public void start(Ticker ticker)
public void checkFilters(Message m, PacketSocketHandler from)
m - The Message to dispatch.public void onDisconnect(PeerContext ctx)
public void onRestart(PeerContext ctx)
public void addAsyncFilter(MessageFilter filter, AsyncMessageFilterCallback callback, ByteCounter ctr) throws DisconnectedException
DisconnectedExceptionpublic Message waitFor(MessageFilter filter, ByteCounter ctr) throws DisconnectedException
filter - The filter to wait for. This filter must not have a callback.ctr - Byte counter to add bytes from the message to.DisconnectedException - If the single peer being waited for disconnects.java.lang.IllegalArgumentException - If filter has a callbackpublic void send(PeerContext destination, Message m, ByteCounter ctr) throws NotConnectedException
NotConnectedException - If we are not currently connected to the node.public void setDispatcher(Dispatcher d)
public int getUnclaimedFIFOSize()
public java.util.Map<java.lang.String,java.lang.Integer> getUnclaimedFIFOMessageCounts()
public Executor getExecutor()