Class AMQPTunneledCoreLargeMessageReader
- java.lang.Object
-
- org.apache.activemq.artemis.protocol.amqp.proton.AMQPTunneledCoreLargeMessageReader
-
- All Implemented Interfaces:
MessageReader
public class AMQPTunneledCoreLargeMessageReader extends Object implements MessageReader
Reader of tunneled large Core message that have been written as the body of an AMQP delivery with a custom message format that indicates this payload. The reader will extract bytes from the delivery and write them into a Core large message file which is then routed into the broker as if received from a Core connection.
-
-
Constructor Summary
Constructors Constructor Description AMQPTunneledCoreLargeMessageReader(ProtonAbstractReceiver serverReceiver)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclose()Closes the reader and releases any in use resources.org.apache.qpid.proton.amqp.messaging.DeliveryAnnotationsgetDeliveryAnnotations()Once a message has been read but before the reader is closed this API offers access to any delivery annotations that were present upon decode of the read message.AMQPTunneledCoreLargeMessageReaderopen()Reset any internal state of this reader and prepares it to begin processing a new delivery.MessagereadBytes(org.apache.qpid.proton.engine.Delivery delivery)Reads the bytes from an incoming delivery which might not be complete yet but allows the reader to consume pending bytes to prevent stalling the sender because the session window was exhausted.
-
-
-
Constructor Detail
-
AMQPTunneledCoreLargeMessageReader
public AMQPTunneledCoreLargeMessageReader(ProtonAbstractReceiver serverReceiver)
-
-
Method Detail
-
getDeliveryAnnotations
public org.apache.qpid.proton.amqp.messaging.DeliveryAnnotations getDeliveryAnnotations()
Description copied from interface:MessageReaderOnce a message has been read but before the reader is closed this API offers access to any delivery annotations that were present upon decode of the read message.- Specified by:
getDeliveryAnnotationsin interfaceMessageReader- Returns:
- any DeliveryAnnotations that were read as part of decoding the message.
-
close
public void close()
Description copied from interface:MessageReaderCloses the reader and releases any in use resources. If the reader was not finished processing an incoming message when closed the reader should release any resources that might be held such as large message files etc.- Specified by:
closein interfaceMessageReader
-
open
public AMQPTunneledCoreLargeMessageReader open()
Description copied from interface:MessageReaderReset any internal state of this reader and prepares it to begin processing a new delivery. A previously closed reader can be reset for reuse.- Specified by:
openin interfaceMessageReader- Returns:
- this
MessageReaderinstance.
-
readBytes
public Message readBytes(org.apache.qpid.proton.engine.Delivery delivery) throws Exception
Description copied from interface:MessageReaderReads the bytes from an incoming delivery which might not be complete yet but allows the reader to consume pending bytes to prevent stalling the sender because the session window was exhausted. Once a delivery has been fully read and is no longer partial the readBytes method will return the decoded message for dispatch. Notice that asynchronous Readers will never return the Message but will rather call a complete operation on the Server Receiver.- Specified by:
readBytesin interfaceMessageReader- Parameters:
delivery- The delivery that has pending incoming bytes.- Throws:
Exception
-
-