public class AbstractPacketForwarder extends Object implements PacketForwarder
PacketForwarder interface. The class has
default implementation for packet forwarding and maintains collector
subscriptions.
Set of PacketCollectors must be synchronized before modifying
it as multiple thread coould use the same set.
| Modifier | Constructor and Description |
|---|---|
protected |
AbstractPacketForwarder() |
| Modifier and Type | Method and Description |
|---|---|
void |
addPacketCollector(Class<? extends Packet> clz,
PacketCollector collector)
|
void |
addPacketCollector(PacketCollector collector)
|
protected void |
forwardDefault(Packet packet) |
void |
forwardPacket(Packet packet)
Forwards packet to registered packet collectors
|
void |
removePacketCollector(Class<? extends Packet> clz,
PacketCollector collector)
Remove the given
PacketCollector from this
PacketForwarder list. |
void |
removePacketCollector(PacketCollector collector)
Remove the given
PacketCollector from this
PacketForwarder list for all packets. |
public void addPacketCollector(PacketCollector collector)
PacketCollector to this PacketForwarder's list of
PacketCollectors. The collector will receive all type of packets
which this forwarder could not consume.addPacketCollector in interface PacketForwardercollector - PacketCollector instancepublic void addPacketCollector(Class<? extends Packet> clz, PacketCollector collector)
PacketCollector to this PacketForwarder's list of
PacketCollectors. This forwarder will forward the packets of type
class specified to the specified collector.addPacketCollector in interface PacketForwarderclz - Class of the packet for which collector is subscribingcollector - PacketCollector instancepublic void removePacketCollector(PacketCollector collector)
PacketCollector from this
PacketForwarder list for all packets.removePacketCollector in interface PacketForwardercollector - PacketCollector to be removedpublic void removePacketCollector(Class<? extends Packet> clz, PacketCollector collector)
PacketCollector from this
PacketForwarder list. This method will remove the collector for
packets of type class specified.removePacketCollector in interface PacketForwarderclz - Class for which the collector subscription has to be
removedcollector - PacketCollector instancepublic void forwardPacket(Packet packet)
forwardPacket in interface PacketForwarderpacket - Packet instanceprotected void forwardDefault(Packet packet)
Copyright © 2019. All rights reserved.