Package org.apache.activemq.command
Class ActiveMQMessage
- java.lang.Object
-
- org.apache.activemq.command.BaseCommand
-
- org.apache.activemq.command.Message
-
- org.apache.activemq.command.ActiveMQMessage
-
- All Implemented Interfaces:
javax.jms.Message,MessageReference,Command,DataStructure,MarshallAware,Message,ScheduledMessage
- Direct Known Subclasses:
ActiveMQBlobMessage,ActiveMQBytesMessage,ActiveMQMapMessage,ActiveMQObjectMessage,ActiveMQStreamMessage,ActiveMQTextMessage
public class ActiveMQMessage extends Message implements Message, ScheduledMessage
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.apache.activemq.command.Message
Message.MessageDestination
-
-
Field Summary
Fields Modifier and Type Field Description protected CallbackacknowledgeCallbackstatic StringBROKER_PATH_PROPERTYstatic byteDATA_STRUCTURE_TYPEstatic StringDLQ_DELIVERY_FAILURE_CAUSE_PROPERTY-
Fields inherited from class org.apache.activemq.command.Message
arrival, brokerInTime, brokerOutTime, compressed, content, correlationId, dataStructure, DEFAULT_MINIMUM_MESSAGE_SIZE, deliveryTime, destination, droppable, expiration, groupID, groupSequence, jmsXGroupFirstForConsumer, marshalledProperties, messageId, ORIGINAL_EXPIRATION, originalDestination, originalTransactionId, persistent, priority, producerId, properties, readOnlyBody, readOnlyProperties, recievedByDFBridge, redeliveryCounter, replyTo, size, targetConsumerId, timestamp, transactionId, type, userID
-
Fields inherited from class org.apache.activemq.command.BaseCommand
commandId, responseRequired
-
Fields inherited from interface javax.jms.Message
DEFAULT_DELIVERY_DELAY, DEFAULT_DELIVERY_MODE, DEFAULT_PRIORITY, DEFAULT_TIME_TO_LIVE
-
Fields inherited from interface org.apache.activemq.ScheduledMessage
AMQ_SCHEDULED_CRON, AMQ_SCHEDULED_DELAY, AMQ_SCHEDULED_ID, AMQ_SCHEDULED_PERIOD, AMQ_SCHEDULED_REPEAT, AMQ_SCHEDULER_ACTION, AMQ_SCHEDULER_ACTION_BROWSE, AMQ_SCHEDULER_ACTION_END_TIME, AMQ_SCHEDULER_ACTION_REMOVE, AMQ_SCHEDULER_ACTION_REMOVEALL, AMQ_SCHEDULER_ACTION_START_TIME, AMQ_SCHEDULER_MANAGEMENT_DESTINATION
-
-
Constructor Summary
Constructors Constructor Description ActiveMQMessage()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidacknowledge()protected voidcheckReadOnlyBody()protected voidcheckReadOnlyProperties()protected voidcheckValidObject(Object value)voidclearBody()voidclearProperties()protected ObjectconvertScheduled(String name, Object value)Messagecopy()protected voidcopy(ActiveMQMessage copy)protected static StringdecodeString(byte[] data)protected <T> TdoGetBody(Class<T> asType)protected static byte[]encodeString(String data)booleanequals(Object o)CallbackgetAcknowledgeCallback()EnumerationgetAllPropertyNames()return all property names, including standard JMS properties and JMSX properties<T> TgetBody(Class<T> asType)booleangetBooleanProperty(String name)bytegetByteProperty(String name)bytegetDataStructureType()doublegetDoubleProperty(String name)floatgetFloatProperty(String name)intgetIntProperty(String name)StringgetJMSCorrelationID()byte[]getJMSCorrelationIDAsBytes()intgetJMSDeliveryMode()longgetJMSDeliveryTime()javax.jms.DestinationgetJMSDestination()longgetJMSExpiration()StringgetJMSMessageID()intgetJMSPriority()booleangetJMSRedelivered()javax.jms.DestinationgetJMSReplyTo()longgetJMSTimestamp()StringgetJMSType()StringgetJMSXMimeType()Returns the MIME type of this mesage.longgetLongProperty(String name)ObjectgetObjectProperty(String name)EnumerationgetPropertyNames()shortgetShortProperty(String name)StringgetStringProperty(String name)inthashCode()booleanisBodyAssignableTo(Class c)protected booleanisContentMarshalled()voidonSend()Send operation event listener.booleanpropertyExists(String name)voidsetAcknowledgeCallback(Callback acknowledgeCallback)voidsetBooleanProperty(String name, boolean value)voidsetBooleanProperty(String name, boolean value, boolean checkReadOnly)voidsetByteProperty(String name, byte value)voidsetDoubleProperty(String name, double value)voidsetFloatProperty(String name, float value)voidsetIntProperty(String name, int value)voidsetJMSCorrelationID(String correlationId)voidsetJMSCorrelationIDAsBytes(byte[] correlationId)voidsetJMSDeliveryMode(int mode)voidsetJMSDeliveryTime(long deliveryTime)voidsetJMSDestination(javax.jms.Destination destination)voidsetJMSExpiration(long expiration)voidsetJMSMessageID(String value)Seems to be invalid because the parameter doesn't initialize MessageId instance variables ProducerId and ProducerSequenceIdvoidsetJMSMessageID(ProducerId producerId, long producerSequenceId)This will create an object of MessageId.voidsetJMSPriority(int priority)voidsetJMSRedelivered(boolean redelivered)voidsetJMSReplyTo(javax.jms.Destination destination)voidsetJMSTimestamp(long timestamp)voidsetJMSType(String type)voidsetLongProperty(String name, long value)voidsetObjectProperty(String name, Object value)voidsetObjectProperty(String name, Object value, boolean checkReadOnly)voidsetProperties(Map<String,?> properties)voidsetShortProperty(String name, short value)voidsetStringProperty(String name, String value)voidstoreContent()voidstoreContentAndClear()Responsevisit(CommandVisitor visitor)-
Methods inherited from class org.apache.activemq.command.Message
afterMarshall, afterUnmarshall, beforeMarshall, beforeUnmarshall, canProcessAsExpired, clearUnMarshalledState, compress, copy, decrementReferenceCount, doCompress, getArrival, getBrokerInTime, getBrokerOutTime, getBrokerPath, getCluster, getConnection, getContent, getCorrelationId, getDataStructure, getDestination, getExpiration, getGroupID, getGroupSequence, getMarshalledProperties, getMemoryUsage, getMessage, getMessageHardRef, getMessageId, getMinimumMessageSize, getOriginalDestination, getOriginalTransactionId, getPriority, getProducerId, getProperties, getProperty, getRedeliveryCounter, getReferenceCount, getRegionDestination, getReplyTo, getSize, getTargetConsumerId, getTimestamp, getTransactionId, getType, getUserID, incrementRedeliveryCounter, incrementReferenceCount, isAdvisory, isCompressed, isDroppable, isDropped, isExpired, isInTransaction, isJMSXGroupFirstForConsumer, isMarshallAware, isMarshalled, isMessage, isPersistent, isPropertiesMarshalled, isReadOnlyBody, isReadOnlyProperties, isRecievedByDFBridge, isRedelivered, lazyCreateProperties, onMessageRolledBack, readResolve, removeProperty, setArrival, setBrokerInTime, setBrokerOutTime, setBrokerPath, setCluster, setCompressed, setConnection, setContent, setCorrelationId, setDataStructure, setDestination, setDroppable, setExpiration, setGroupID, setGroupSequence, setJMSXGroupFirstForConsumer, setMarshalledProperties, setMemoryUsage, setMessageId, setOriginalDestination, setOriginalTransactionId, setPersistent, setPriority, setProducerId, setProperty, setReadOnlyBody, setReadOnlyProperties, setRecievedByDFBridge, setRedelivered, setRedeliveryCounter, setRegionDestination, setReplyTo, setTargetConsumerId, setTimestamp, setTransactionId, setType, setUserID, toString, toString
-
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
-
-
-
-
Field Detail
-
DATA_STRUCTURE_TYPE
public static final byte DATA_STRUCTURE_TYPE
- See Also:
- Constant Field Values
-
DLQ_DELIVERY_FAILURE_CAUSE_PROPERTY
public static final String DLQ_DELIVERY_FAILURE_CAUSE_PROPERTY
- See Also:
- Constant Field Values
-
BROKER_PATH_PROPERTY
public static final String BROKER_PATH_PROPERTY
- See Also:
- Constant Field Values
-
acknowledgeCallback
protected transient Callback acknowledgeCallback
-
-
Method Detail
-
getDataStructureType
public byte getDataStructureType()
- Specified by:
getDataStructureTypein interfaceDataStructure- Returns:
- The type of the data structure
-
copy
protected void copy(ActiveMQMessage copy)
-
acknowledge
public void acknowledge() throws javax.jms.JMSException- Specified by:
acknowledgein interfacejavax.jms.Message- Throws:
javax.jms.JMSException
-
clearBody
public void clearBody() throws javax.jms.JMSException
-
getJMSMessageID
public String getJMSMessageID()
- Specified by:
getJMSMessageIDin interfacejavax.jms.Message
-
setJMSMessageID
public void setJMSMessageID(String value) throws javax.jms.JMSException
Seems to be invalid because the parameter doesn't initialize MessageId instance variables ProducerId and ProducerSequenceId- Specified by:
setJMSMessageIDin interfacejavax.jms.Message- Parameters:
value-- Throws:
javax.jms.JMSException
-
setJMSMessageID
public void setJMSMessageID(ProducerId producerId, long producerSequenceId) throws javax.jms.JMSException
This will create an object of MessageId. For it to be valid, the instance variable ProducerId and producerSequenceId must be initialized.- Parameters:
producerId-producerSequenceId-- Throws:
javax.jms.JMSException
-
getJMSTimestamp
public long getJMSTimestamp()
- Specified by:
getJMSTimestampin interfacejavax.jms.Message
-
setJMSTimestamp
public void setJMSTimestamp(long timestamp)
- Specified by:
setJMSTimestampin interfacejavax.jms.Message
-
getJMSCorrelationID
public String getJMSCorrelationID()
- Specified by:
getJMSCorrelationIDin interfacejavax.jms.Message
-
setJMSCorrelationID
public void setJMSCorrelationID(String correlationId)
- Specified by:
setJMSCorrelationIDin interfacejavax.jms.Message
-
getJMSCorrelationIDAsBytes
public byte[] getJMSCorrelationIDAsBytes() throws javax.jms.JMSException- Specified by:
getJMSCorrelationIDAsBytesin interfacejavax.jms.Message- Throws:
javax.jms.JMSException
-
setJMSCorrelationIDAsBytes
public void setJMSCorrelationIDAsBytes(byte[] correlationId) throws javax.jms.JMSException- Specified by:
setJMSCorrelationIDAsBytesin interfacejavax.jms.Message- Throws:
javax.jms.JMSException
-
getJMSXMimeType
public String getJMSXMimeType()
Description copied from interface:MessageReturns the MIME type of this mesage. This can be used in selectors to filter on the MIME types of the different JMS messages, or in the case ofBlobMessageit allows you to create a selector on the MIME type of the BLOB body- Specified by:
getJMSXMimeTypein interfaceMessage
-
decodeString
protected static String decodeString(byte[] data) throws javax.jms.JMSException
- Throws:
javax.jms.JMSException
-
encodeString
protected static byte[] encodeString(String data) throws javax.jms.JMSException
- Throws:
javax.jms.JMSException
-
getJMSReplyTo
public javax.jms.Destination getJMSReplyTo()
- Specified by:
getJMSReplyToin interfacejavax.jms.Message
-
setJMSReplyTo
public void setJMSReplyTo(javax.jms.Destination destination) throws javax.jms.JMSException- Specified by:
setJMSReplyToin interfacejavax.jms.Message- Throws:
javax.jms.JMSException
-
getJMSDestination
public javax.jms.Destination getJMSDestination()
- Specified by:
getJMSDestinationin interfacejavax.jms.Message
-
setJMSDestination
public void setJMSDestination(javax.jms.Destination destination) throws javax.jms.JMSException- Specified by:
setJMSDestinationin interfacejavax.jms.Message- Throws:
javax.jms.JMSException
-
getJMSDeliveryMode
public int getJMSDeliveryMode()
- Specified by:
getJMSDeliveryModein interfacejavax.jms.Message
-
setJMSDeliveryMode
public void setJMSDeliveryMode(int mode)
- Specified by:
setJMSDeliveryModein interfacejavax.jms.Message
-
getJMSRedelivered
public boolean getJMSRedelivered()
- Specified by:
getJMSRedeliveredin interfacejavax.jms.Message
-
setJMSRedelivered
public void setJMSRedelivered(boolean redelivered)
- Specified by:
setJMSRedeliveredin interfacejavax.jms.Message
-
getJMSType
public String getJMSType()
- Specified by:
getJMSTypein interfacejavax.jms.Message
-
setJMSType
public void setJMSType(String type)
- Specified by:
setJMSTypein interfacejavax.jms.Message
-
getJMSExpiration
public long getJMSExpiration()
- Specified by:
getJMSExpirationin interfacejavax.jms.Message
-
setJMSExpiration
public void setJMSExpiration(long expiration)
- Specified by:
setJMSExpirationin interfacejavax.jms.Message
-
getJMSPriority
public int getJMSPriority()
- Specified by:
getJMSPriorityin interfacejavax.jms.Message
-
setJMSPriority
public void setJMSPriority(int priority)
- Specified by:
setJMSPriorityin interfacejavax.jms.Message
-
clearProperties
public void clearProperties()
- Specified by:
clearPropertiesin interfacejavax.jms.Message- Overrides:
clearPropertiesin classMessage
-
propertyExists
public boolean propertyExists(String name) throws javax.jms.JMSException
- Specified by:
propertyExistsin interfacejavax.jms.Message- Throws:
javax.jms.JMSException
-
getPropertyNames
public Enumeration getPropertyNames() throws javax.jms.JMSException
- Specified by:
getPropertyNamesin interfacejavax.jms.Message- Throws:
javax.jms.JMSException
-
getAllPropertyNames
public Enumeration getAllPropertyNames() throws javax.jms.JMSException
return all property names, including standard JMS properties and JMSX properties- Returns:
- Enumeration of all property names on this message
- Throws:
javax.jms.JMSException
-
setObjectProperty
public void setObjectProperty(String name, Object value) throws javax.jms.JMSException
- Specified by:
setObjectPropertyin interfacejavax.jms.Message- Throws:
javax.jms.JMSException
-
setObjectProperty
public void setObjectProperty(String name, Object value, boolean checkReadOnly) throws javax.jms.JMSException
- Throws:
javax.jms.JMSException
-
setProperties
public void setProperties(Map<String,?> properties) throws javax.jms.JMSException
- Throws:
javax.jms.JMSException
-
checkValidObject
protected void checkValidObject(Object value) throws javax.jms.MessageFormatException
- Throws:
javax.jms.MessageFormatException
-
convertScheduled
protected Object convertScheduled(String name, Object value) throws javax.jms.MessageFormatException
- Throws:
javax.jms.MessageFormatException
-
getObjectProperty
public Object getObjectProperty(String name) throws javax.jms.JMSException
- Specified by:
getObjectPropertyin interfacejavax.jms.Message- Throws:
javax.jms.JMSException
-
getBooleanProperty
public boolean getBooleanProperty(String name) throws javax.jms.JMSException
- Specified by:
getBooleanPropertyin interfacejavax.jms.Message- Throws:
javax.jms.JMSException
-
getByteProperty
public byte getByteProperty(String name) throws javax.jms.JMSException
- Specified by:
getBytePropertyin interfacejavax.jms.Message- Throws:
javax.jms.JMSException
-
getShortProperty
public short getShortProperty(String name) throws javax.jms.JMSException
- Specified by:
getShortPropertyin interfacejavax.jms.Message- Throws:
javax.jms.JMSException
-
getIntProperty
public int getIntProperty(String name) throws javax.jms.JMSException
- Specified by:
getIntPropertyin interfacejavax.jms.Message- Throws:
javax.jms.JMSException
-
getLongProperty
public long getLongProperty(String name) throws javax.jms.JMSException
- Specified by:
getLongPropertyin interfacejavax.jms.Message- Throws:
javax.jms.JMSException
-
getFloatProperty
public float getFloatProperty(String name) throws javax.jms.JMSException
- Specified by:
getFloatPropertyin interfacejavax.jms.Message- Throws:
javax.jms.JMSException
-
getDoubleProperty
public double getDoubleProperty(String name) throws javax.jms.JMSException
- Specified by:
getDoublePropertyin interfacejavax.jms.Message- Throws:
javax.jms.JMSException
-
getStringProperty
public String getStringProperty(String name) throws javax.jms.JMSException
- Specified by:
getStringPropertyin interfacejavax.jms.Message- Throws:
javax.jms.JMSException
-
setBooleanProperty
public void setBooleanProperty(String name, boolean value) throws javax.jms.JMSException
- Specified by:
setBooleanPropertyin interfacejavax.jms.Message- Throws:
javax.jms.JMSException
-
setBooleanProperty
public void setBooleanProperty(String name, boolean value, boolean checkReadOnly) throws javax.jms.JMSException
- Throws:
javax.jms.JMSException
-
setByteProperty
public void setByteProperty(String name, byte value) throws javax.jms.JMSException
- Specified by:
setBytePropertyin interfacejavax.jms.Message- Throws:
javax.jms.JMSException
-
setShortProperty
public void setShortProperty(String name, short value) throws javax.jms.JMSException
- Specified by:
setShortPropertyin interfacejavax.jms.Message- Throws:
javax.jms.JMSException
-
setIntProperty
public void setIntProperty(String name, int value) throws javax.jms.JMSException
- Specified by:
setIntPropertyin interfacejavax.jms.Message- Throws:
javax.jms.JMSException
-
setLongProperty
public void setLongProperty(String name, long value) throws javax.jms.JMSException
- Specified by:
setLongPropertyin interfacejavax.jms.Message- Throws:
javax.jms.JMSException
-
setFloatProperty
public void setFloatProperty(String name, float value) throws javax.jms.JMSException
- Specified by:
setFloatPropertyin interfacejavax.jms.Message- Throws:
javax.jms.JMSException
-
setDoubleProperty
public void setDoubleProperty(String name, double value) throws javax.jms.JMSException
- Specified by:
setDoublePropertyin interfacejavax.jms.Message- Throws:
javax.jms.JMSException
-
setStringProperty
public void setStringProperty(String name, String value) throws javax.jms.JMSException
- Specified by:
setStringPropertyin interfacejavax.jms.Message- Throws:
javax.jms.JMSException
-
checkReadOnlyProperties
protected void checkReadOnlyProperties() throws javax.jms.MessageNotWriteableException- Throws:
javax.jms.MessageNotWriteableException
-
checkReadOnlyBody
protected void checkReadOnlyBody() throws javax.jms.MessageNotWriteableException- Throws:
javax.jms.MessageNotWriteableException
-
getAcknowledgeCallback
public Callback getAcknowledgeCallback()
-
setAcknowledgeCallback
public void setAcknowledgeCallback(Callback acknowledgeCallback)
-
onSend
public void onSend() throws javax.jms.JMSExceptionSend operation event listener. Used to get the message ready to be sent.- Throws:
javax.jms.JMSException
-
visit
public Response visit(CommandVisitor visitor) throws Exception
-
storeContent
public void storeContent()
- Specified by:
storeContentin classMessage
-
storeContentAndClear
public void storeContentAndClear()
- Specified by:
storeContentAndClearin classMessage
-
isContentMarshalled
protected boolean isContentMarshalled()
- Overrides:
isContentMarshalledin classMessage
-
getJMSDeliveryTime
public long getJMSDeliveryTime() throws javax.jms.JMSException- Specified by:
getJMSDeliveryTimein interfacejavax.jms.Message- Throws:
javax.jms.JMSException
-
setJMSDeliveryTime
public void setJMSDeliveryTime(long deliveryTime) throws javax.jms.JMSException- Specified by:
setJMSDeliveryTimein interfacejavax.jms.Message- Throws:
javax.jms.JMSException
-
getBody
public final <T> T getBody(Class<T> asType) throws javax.jms.JMSException
- Specified by:
getBodyin interfacejavax.jms.Message- Throws:
javax.jms.JMSException
-
isBodyAssignableTo
public boolean isBodyAssignableTo(Class c) throws javax.jms.JMSException
- Specified by:
isBodyAssignableToin interfacejavax.jms.Message- Throws:
javax.jms.JMSException
-
doGetBody
protected <T> T doGetBody(Class<T> asType) throws javax.jms.JMSException
- Throws:
javax.jms.JMSException
-
-