Package org.apache.activemq.command
Class Message
- java.lang.Object
-
- org.apache.activemq.command.BaseCommand
-
- org.apache.activemq.command.Message
-
- All Implemented Interfaces:
MessageReference
,Command
,DataStructure
,MarshallAware
- Direct Known Subclasses:
ActiveMQMessage
public abstract class Message extends BaseCommand implements MarshallAware, MessageReference
Represents an ActiveMQ message
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interface
Message.MessageDestination
-
Field Summary
-
Fields inherited from class org.apache.activemq.command.BaseCommand
commandId, responseRequired
-
-
Constructor Summary
Constructors Constructor Description Message()
-
Method Summary
-
Methods inherited from class org.apache.activemq.command.BaseCommand
copy, getCommandId, getFrom, getTo, isBrokerInfo, isConnectionControl, isConsumerControl, isMessageAck, isMessageDispatch, isMessageDispatchNotification, isResponse, isResponseRequired, isShutdownInfo, isWireFormatInfo, setCommandId, setFrom, setResponseRequired, setTo
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.apache.activemq.command.DataStructure
getDataStructureType
-
-
-
-
Field Detail
-
ORIGINAL_EXPIRATION
public static final String ORIGINAL_EXPIRATION
- See Also:
- Constant Field Values
-
DEFAULT_MINIMUM_MESSAGE_SIZE
public static final int DEFAULT_MINIMUM_MESSAGE_SIZE
The default minimum amount of memory a message is assumed to use- See Also:
- Constant Field Values
-
messageId
protected MessageId messageId
-
originalDestination
protected ActiveMQDestination originalDestination
-
originalTransactionId
protected TransactionId originalTransactionId
-
producerId
protected ProducerId producerId
-
destination
protected ActiveMQDestination destination
-
transactionId
protected TransactionId transactionId
-
expiration
protected long expiration
-
timestamp
protected long timestamp
-
arrival
protected long arrival
-
brokerInTime
protected long brokerInTime
-
brokerOutTime
protected long brokerOutTime
-
correlationId
protected String correlationId
-
replyTo
protected ActiveMQDestination replyTo
-
persistent
protected boolean persistent
-
type
protected String type
-
priority
protected byte priority
-
groupID
protected String groupID
-
groupSequence
protected int groupSequence
-
targetConsumerId
protected ConsumerId targetConsumerId
-
compressed
protected boolean compressed
-
userID
protected String userID
-
content
protected ByteSequence content
-
marshalledProperties
protected volatile ByteSequence marshalledProperties
-
dataStructure
protected DataStructure dataStructure
-
redeliveryCounter
protected int redeliveryCounter
-
size
protected int size
-
readOnlyProperties
protected boolean readOnlyProperties
-
readOnlyBody
protected boolean readOnlyBody
-
recievedByDFBridge
protected transient boolean recievedByDFBridge
-
droppable
protected boolean droppable
-
jmsXGroupFirstForConsumer
protected boolean jmsXGroupFirstForConsumer
-
-
Method Detail
-
copy
public abstract Message copy()
-
clearBody
public abstract void clearBody() throws JMSException
- Throws:
JMSException
-
storeContent
public abstract void storeContent()
-
storeContentAndClear
public abstract void storeContentAndClear()
-
clearUnMarshalledState
public void clearUnMarshalledState() throws JMSException
- Throws:
JMSException
-
isMarshalled
public boolean isMarshalled()
-
isPropertiesMarshalled
protected boolean isPropertiesMarshalled()
-
isContentMarshalled
protected boolean isContentMarshalled()
-
copy
protected void copy(Message copy)
-
getProperty
public Object getProperty(String name) throws IOException
- Throws:
IOException
-
getProperties
public Map<String,Object> getProperties() throws IOException
- Throws:
IOException
-
clearProperties
public void clearProperties()
-
setProperty
public void setProperty(String name, Object value) throws IOException
- Throws:
IOException
-
removeProperty
public void removeProperty(String name) throws IOException
- Throws:
IOException
-
lazyCreateProperties
protected void lazyCreateProperties() throws IOException
- Throws:
IOException
-
beforeMarshall
public void beforeMarshall(WireFormat wireFormat) throws IOException
- Specified by:
beforeMarshall
in interfaceMarshallAware
- Throws:
IOException
-
afterMarshall
public void afterMarshall(WireFormat wireFormat) throws IOException
- Specified by:
afterMarshall
in interfaceMarshallAware
- Throws:
IOException
-
beforeUnmarshall
public void beforeUnmarshall(WireFormat wireFormat) throws IOException
- Specified by:
beforeUnmarshall
in interfaceMarshallAware
- Throws:
IOException
-
afterUnmarshall
public void afterUnmarshall(WireFormat wireFormat) throws IOException
- Specified by:
afterUnmarshall
in interfaceMarshallAware
- Throws:
IOException
-
getProducerId
public ProducerId getProducerId()
-
setProducerId
public void setProducerId(ProducerId producerId)
-
getDestination
public ActiveMQDestination getDestination()
-
setDestination
public void setDestination(ActiveMQDestination destination)
-
getTransactionId
public TransactionId getTransactionId()
-
setTransactionId
public void setTransactionId(TransactionId transactionId)
-
isInTransaction
public boolean isInTransaction()
-
getOriginalDestination
public ActiveMQDestination getOriginalDestination()
-
setOriginalDestination
public void setOriginalDestination(ActiveMQDestination destination)
-
getMessageId
public MessageId getMessageId()
- Specified by:
getMessageId
in interfaceMessageReference
-
setMessageId
public void setMessageId(MessageId messageId)
-
getOriginalTransactionId
public TransactionId getOriginalTransactionId()
-
setOriginalTransactionId
public void setOriginalTransactionId(TransactionId transactionId)
-
getGroupID
public String getGroupID()
- Specified by:
getGroupID
in interfaceMessageReference
-
setGroupID
public void setGroupID(String groupID)
-
getGroupSequence
public int getGroupSequence()
- Specified by:
getGroupSequence
in interfaceMessageReference
-
setGroupSequence
public void setGroupSequence(int groupSequence)
-
getCorrelationId
public String getCorrelationId()
-
setCorrelationId
public void setCorrelationId(String correlationId)
-
isPersistent
public boolean isPersistent()
- Specified by:
isPersistent
in interfaceMessageReference
-
setPersistent
public void setPersistent(boolean deliveryMode)
-
getExpiration
public long getExpiration()
- Specified by:
getExpiration
in interfaceMessageReference
-
setExpiration
public void setExpiration(long expiration)
-
getPriority
public byte getPriority()
-
setPriority
public void setPriority(byte priority)
-
getReplyTo
public ActiveMQDestination getReplyTo()
-
setReplyTo
public void setReplyTo(ActiveMQDestination replyTo)
-
getTimestamp
public long getTimestamp()
-
setTimestamp
public void setTimestamp(long timestamp)
-
getType
public String getType()
-
setType
public void setType(String type)
-
getContent
public ByteSequence getContent()
-
setContent
public void setContent(ByteSequence content)
-
getMarshalledProperties
public ByteSequence getMarshalledProperties()
-
setMarshalledProperties
public void setMarshalledProperties(ByteSequence marshalledProperties)
-
getDataStructure
public DataStructure getDataStructure()
-
setDataStructure
public void setDataStructure(DataStructure data)
-
getTargetConsumerId
public ConsumerId getTargetConsumerId()
Can be used to route the message to a specific consumer. Should be null to allow the broker use normal JMS routing semantics. If the target consumer id is an active consumer on the broker, the message is dropped. Used by the AdvisoryBroker to replay advisory messages to a specific consumer.- Specified by:
getTargetConsumerId
in interfaceMessageReference
-
setTargetConsumerId
public void setTargetConsumerId(ConsumerId targetConsumerId)
-
isExpired
public boolean isExpired()
Description copied from interface:MessageReference
Returns true if this message is expired- Specified by:
isExpired
in interfaceMessageReference
-
isAdvisory
public boolean isAdvisory()
- Specified by:
isAdvisory
in interfaceMessageReference
- Returns:
- true if the message is an advisory
-
isCompressed
public boolean isCompressed()
-
setCompressed
public void setCompressed(boolean compressed)
-
isRedelivered
public boolean isRedelivered()
-
setRedelivered
public void setRedelivered(boolean redelivered)
-
incrementRedeliveryCounter
public void incrementRedeliveryCounter()
- Specified by:
incrementRedeliveryCounter
in interfaceMessageReference
-
getRedeliveryCounter
public int getRedeliveryCounter()
- Specified by:
getRedeliveryCounter
in interfaceMessageReference
-
setRedeliveryCounter
public void setRedeliveryCounter(int deliveryCounter)
-
getBrokerPath
public BrokerId[] getBrokerPath()
The route of brokers the command has moved through.
-
setBrokerPath
public void setBrokerPath(BrokerId[] brokerPath)
-
isReadOnlyProperties
public boolean isReadOnlyProperties()
-
setReadOnlyProperties
public void setReadOnlyProperties(boolean readOnlyProperties)
-
isReadOnlyBody
public boolean isReadOnlyBody()
-
setReadOnlyBody
public void setReadOnlyBody(boolean readOnlyBody)
-
getConnection
public ActiveMQConnection getConnection()
-
setConnection
public void setConnection(ActiveMQConnection connection)
-
getArrival
public long getArrival()
Used to schedule the arrival time of a message to a broker. The broker will not dispatch a message to a consumer until it's arrival time has elapsed.
-
setArrival
public void setArrival(long arrival)
-
getUserID
public String getUserID()
Only set by the broker and defines the userID of the producer connection who sent this message. This is an optional field, it needs to be enabled on the broker to have this field populated.
-
setUserID
public void setUserID(String jmsxUserID)
-
getReferenceCount
public int getReferenceCount()
- Specified by:
getReferenceCount
in interfaceMessageReference
-
getMessageHardRef
public Message getMessageHardRef()
- Specified by:
getMessageHardRef
in interfaceMessageReference
-
getMessage
public Message getMessage()
- Specified by:
getMessage
in interfaceMessageReference
-
setRegionDestination
public void setRegionDestination(Message.MessageDestination destination)
-
getRegionDestination
public Message.MessageDestination getRegionDestination()
- Specified by:
getRegionDestination
in interfaceMessageReference
-
getMemoryUsage
public MemoryUsage getMemoryUsage()
-
setMemoryUsage
public void setMemoryUsage(MemoryUsage usage)
-
isMarshallAware
public boolean isMarshallAware()
- Specified by:
isMarshallAware
in interfaceDataStructure
- Overrides:
isMarshallAware
in classBaseCommand
-
incrementReferenceCount
public int incrementReferenceCount()
- Specified by:
incrementReferenceCount
in interfaceMessageReference
-
decrementReferenceCount
public int decrementReferenceCount()
- Specified by:
decrementReferenceCount
in interfaceMessageReference
-
getSize
public int getSize()
- Specified by:
getSize
in interfaceMessageReference
-
getMinimumMessageSize
protected int getMinimumMessageSize()
-
isRecievedByDFBridge
public boolean isRecievedByDFBridge()
- Returns:
- Returns the recievedByDFBridge.
-
setRecievedByDFBridge
public void setRecievedByDFBridge(boolean recievedByDFBridge)
- Parameters:
recievedByDFBridge
- The recievedByDFBridge to set.
-
onMessageRolledBack
public void onMessageRolledBack()
-
isDroppable
public boolean isDroppable()
-
setDroppable
public void setDroppable(boolean droppable)
-
getCluster
public BrokerId[] getCluster()
If a message is stored in multiple nodes on a cluster, all the cluster members will be listed here. Otherwise, it will be null.
-
setCluster
public void setCluster(BrokerId[] cluster)
-
isMessage
public boolean isMessage()
- Specified by:
isMessage
in interfaceCommand
- Overrides:
isMessage
in classBaseCommand
-
getBrokerInTime
public long getBrokerInTime()
-
setBrokerInTime
public void setBrokerInTime(long brokerInTime)
-
getBrokerOutTime
public long getBrokerOutTime()
-
setBrokerOutTime
public void setBrokerOutTime(long brokerOutTime)
-
isDropped
public boolean isDropped()
Description copied from interface:MessageReference
Returns true if this message is dropped.- Specified by:
isDropped
in interfaceMessageReference
-
isJMSXGroupFirstForConsumer
public boolean isJMSXGroupFirstForConsumer()
-
setJMSXGroupFirstForConsumer
public void setJMSXGroupFirstForConsumer(boolean val)
-
compress
public void compress() throws IOException
- Throws:
IOException
-
doCompress
protected void doCompress() throws IOException
- Throws:
IOException
-
toString
public String toString()
- Overrides:
toString
in classBaseCommand
-
toString
public String toString(Map<String,Object> overrideFields)
- Overrides:
toString
in classBaseCommand
-
canProcessAsExpired
public boolean canProcessAsExpired()
- Specified by:
canProcessAsExpired
in interfaceMessageReference
-
-