Class CommandDatagramChannel
java.lang.Object
org.apache.activemq.transport.udp.CommandChannelSupport
org.apache.activemq.transport.udp.CommandDatagramChannel
- All Implemented Interfaces:
Service
,Replayer
,CommandChannel
A strategy for reading datagrams and de-fragmenting them together.
-
Field Summary
Fields inherited from class org.apache.activemq.transport.udp.CommandChannelSupport
datagramSize, headerMarshaller, name, replayAddress, sequenceGenerator, targetAddress, wireFormat
-
Constructor Summary
ConstructorsConstructorDescriptionCommandDatagramChannel
(UdpTransport transport, OpenWireFormat wireFormat, int datagramSize, SocketAddress targetAddress, DatagramHeaderMarshaller headerMarshaller, DatagramChannel channel, ByteBufferPool bufferPool) -
Method Summary
Modifier and TypeMethodDescriptionint
read()
void
sendBuffer
(int commandId, Object buffer) Sends the given buffer back to the transport if the buffer could be found - otherwise maybe send some kind of exceptionprotected void
sendWriteBuffer
(int commandId, SocketAddress address, ByteBuffer writeBuffer, boolean redelivery) void
setBufferPool
(ByteBufferPool bufferPool) Sets the implementation of the byte buffer pool to usevoid
start()
void
stop()
void
write
(Command command, SocketAddress address) Methods inherited from class org.apache.activemq.transport.udp.CommandChannelSupport
getDatagramSize, getHeaderMarshaller, getReplayAddress, getReplayBuffer, getTargetAddress, setDatagramSize, setHeaderMarshaller, setReplayAddress, setReplayBuffer, setTargetAddress, toString, write
-
Constructor Details
-
CommandDatagramChannel
public CommandDatagramChannel(UdpTransport transport, OpenWireFormat wireFormat, int datagramSize, SocketAddress targetAddress, DatagramHeaderMarshaller headerMarshaller, DatagramChannel channel, ByteBufferPool bufferPool)
-
-
Method Details
-
start
- Throws:
Exception
-
stop
- Throws:
Exception
-
read
- Throws:
IOException
-
write
- Throws:
IOException
-
getBufferPool
-
setBufferPool
Sets the implementation of the byte buffer pool to use -
sendWriteBuffer
protected void sendWriteBuffer(int commandId, SocketAddress address, ByteBuffer writeBuffer, boolean redelivery) throws IOException - Throws:
IOException
-
sendBuffer
Description copied from interface:Replayer
Sends the given buffer back to the transport if the buffer could be found - otherwise maybe send some kind of exception- Parameters:
commandId
- the command IDbuffer
- the buffer to be sent - or null if the buffer no longer exists in the buffer- Throws:
IOException
-
getReceiveCounter
public int getReceiveCounter()
-