org.hornetq.api.core
Interface Message

All Known Subinterfaces:
ClientMessage

public interface Message

A Message is a routable instance that has a payload.
The payload (the "body") is opaque to the messaging system. A Message also has a fixed set of headers (required by the messaging system) and properties (defined by the users) that can be used by the messaging system to route the message (e.g. to ensure it matches a queue filter).

Message Properties

Message can contain properties specified by the users. It is possible to convert from some types to other types as specified by the following table:
 |        | boolean byte short int long float double String byte[]
 |----------------------------------------------------------------
 |boolean |    X                                      X
 |byte    |          X    X    X   X                  X
 |short   |               X    X   X                  X
 |int     |                    X   X                  X
 |long    |                        X                  X
 |float   |                              X     X      X
 |double  |                                    X      X
 |String  |    X     X    X    X   X     X     X      X
 |byte[]  |                                                   X
 |-----------------------------------------------------------------
 

If conversion is not allowed (for example calling getFloatProperty on a property set a boolean), a PropertyConversionException will be thrown.

Version:
$Revision: 3341 $ $Id: Message.java 3341 2007-11-19 14:34:57Z timfox $
Author:
Tim Fox, ClebertSuconic

Field Summary
static byte BYTES_TYPE
           
static byte DEFAULT_TYPE
           
static org.hornetq.api.core.SimpleString HDR_ACTUAL_EXPIRY_TIME
           
static org.hornetq.api.core.SimpleString HDR_DUPLICATE_DETECTION_ID
           
static org.hornetq.api.core.SimpleString HDR_GROUP_ID
           
static org.hornetq.api.core.SimpleString HDR_LARGE_BODY_SIZE
           
static org.hornetq.api.core.SimpleString HDR_LARGE_COMPRESSED
           
static org.hornetq.api.core.SimpleString HDR_LAST_VALUE_NAME
           
static org.hornetq.api.core.SimpleString HDR_ORIG_MESSAGE_ID
           
static org.hornetq.api.core.SimpleString HDR_ORIGINAL_ADDRESS
           
static org.hornetq.api.core.SimpleString HDR_SCHEDULED_DELIVERY_TIME
           
static byte MAP_TYPE
           
static byte OBJECT_TYPE
           
static byte STREAM_TYPE
           
static byte TEXT_TYPE
           
 
Method Summary
 boolean containsProperty(org.hornetq.api.core.SimpleString key)
          Returns true if this message contains a property with the given key, false else.
 boolean containsProperty(String key)
           
 org.hornetq.api.core.SimpleString getAddress()
          Returns the address this message is sent to.
 org.hornetq.api.core.HornetQBuffer getBodyBuffer()
          Returns the message body as a HornetQBuffer
 org.hornetq.api.core.HornetQBuffer getBodyBufferCopy()
          Returns a copy of the message body as a HornetQBuffer.
 Boolean getBooleanProperty(org.hornetq.api.core.SimpleString key)
          Returns the property corresponding to the specified key as a Boolean.
 Boolean getBooleanProperty(String key)
           
 Byte getByteProperty(org.hornetq.api.core.SimpleString key)
          Returns the property corresponding to the specified key as a Byte.
 Byte getByteProperty(String key)
           
 byte[] getBytesProperty(org.hornetq.api.core.SimpleString key)
          Returns the property corresponding to the specified key as a byte[].
 byte[] getBytesProperty(String key)
           
 Double getDoubleProperty(org.hornetq.api.core.SimpleString key)
          Returns the property corresponding to the specified key as a Double.
 Double getDoubleProperty(String key)
           
 int getEncodeSize()
          Returns the size of the encoded message.
 long getExpiration()
          Returns the expiration time of this message.
 Float getFloatProperty(org.hornetq.api.core.SimpleString key)
          Returns the property corresponding to the specified key as a Float.
 Float getFloatProperty(String key)
           
 Integer getIntProperty(org.hornetq.api.core.SimpleString key)
          Returns the property corresponding to the specified key as an Integer.
 Integer getIntProperty(String key)
           
 Long getLongProperty(org.hornetq.api.core.SimpleString key)
          Returns the property corresponding to the specified key as a Long.
 Long getLongProperty(String key)
           
 long getMessageID()
          Returns the messageID.
 Object getObjectProperty(org.hornetq.api.core.SimpleString key)
          Returns the property corresponding to the specified key
 Object getObjectProperty(String key)
           
 byte getPriority()
          Returns the message priority.
 Set<org.hornetq.api.core.SimpleString> getPropertyNames()
          Returns all the names of the properties for this message.
 Short getShortProperty(org.hornetq.api.core.SimpleString key)
          Returns the property corresponding to the specified key as a Short.
 Short getShortProperty(String key)
           
 org.hornetq.api.core.SimpleString getSimpleStringProperty(org.hornetq.api.core.SimpleString key)
          Returns the property corresponding to the specified key as a SimpleString.
 org.hornetq.api.core.SimpleString getSimpleStringProperty(String key)
           
 String getStringProperty(org.hornetq.api.core.SimpleString key)
          Returns the property corresponding to the specified key as a String.
 String getStringProperty(String key)
           
 long getTimestamp()
          Returns the message timestamp.
 byte getType()
          Returns this message type.
 org.hornetq.utils.UUID getUserID()
          Returns the userID - this is an optional user specified UUID that can be set to identify the message and will be passed around with the message
 boolean isDurable()
          Returns whether this message is durable or not.
 boolean isExpired()
          Returns whether this message is expired or not.
 boolean isLargeMessage()
          Returns whether this message is a large message or a regular message.
 void putBooleanProperty(org.hornetq.api.core.SimpleString key, boolean value)
          Puts a boolean property in this message.
 void putBooleanProperty(String key, boolean value)
           
 void putByteProperty(org.hornetq.api.core.SimpleString key, byte value)
          Puts a byte property in this message.
 void putByteProperty(String key, byte value)
           
 void putBytesProperty(org.hornetq.api.core.SimpleString key, byte[] value)
          Puts a byte[] property in this message.
 void putBytesProperty(String key, byte[] value)
           
 void putDoubleProperty(org.hornetq.api.core.SimpleString key, double value)
          Puts a double property in this message.
 void putDoubleProperty(String key, double value)
           
 void putFloatProperty(org.hornetq.api.core.SimpleString key, float value)
          Puts a float property in this message.
 void putFloatProperty(String key, float value)
           
 void putIntProperty(org.hornetq.api.core.SimpleString key, int value)
          Puts a int property in this message.
 void putIntProperty(String key, int value)
           
 void putLongProperty(org.hornetq.api.core.SimpleString key, long value)
          Puts a long property in this message.
 void putLongProperty(String key, long value)
           
 void putObjectProperty(org.hornetq.api.core.SimpleString key, Object value)
          Puts an Object property in this message.
 void putObjectProperty(String key, Object value)
           
 void putShortProperty(org.hornetq.api.core.SimpleString key, short value)
          Puts a short property in this message.
 void putShortProperty(String key, short value)
           
 void putStringProperty(org.hornetq.api.core.SimpleString key, org.hornetq.api.core.SimpleString value)
          Puts a SimpleString property in this message.
 void putStringProperty(String key, String value)
          Puts a String property in this message.
 Object removeProperty(org.hornetq.api.core.SimpleString key)
          Removes the property corresponding to the specified key.
 Object removeProperty(String key)
           
 void setAddress(org.hornetq.api.core.SimpleString address)
          Sets the address to send this message to.
 void setDurable(boolean durable)
          Sets whether this message is durable or not.
 void setExpiration(long expiration)
          Sets the expiration of this message.
 void setPriority(byte priority)
          Sets the message priority.
 void setTimestamp(long timestamp)
          Sets the message timestamp.
 void setUserID(org.hornetq.utils.UUID userID)
          Sets the user ID
 Map<String,Object> toMap()
           
 

Field Detail

HDR_ACTUAL_EXPIRY_TIME

static final org.hornetq.api.core.SimpleString HDR_ACTUAL_EXPIRY_TIME

HDR_ORIGINAL_ADDRESS

static final org.hornetq.api.core.SimpleString HDR_ORIGINAL_ADDRESS

HDR_ORIG_MESSAGE_ID

static final org.hornetq.api.core.SimpleString HDR_ORIG_MESSAGE_ID

HDR_GROUP_ID

static final org.hornetq.api.core.SimpleString HDR_GROUP_ID

HDR_LARGE_COMPRESSED

static final org.hornetq.api.core.SimpleString HDR_LARGE_COMPRESSED

HDR_LARGE_BODY_SIZE

static final org.hornetq.api.core.SimpleString HDR_LARGE_BODY_SIZE

HDR_SCHEDULED_DELIVERY_TIME

static final org.hornetq.api.core.SimpleString HDR_SCHEDULED_DELIVERY_TIME

HDR_DUPLICATE_DETECTION_ID

static final org.hornetq.api.core.SimpleString HDR_DUPLICATE_DETECTION_ID

HDR_LAST_VALUE_NAME

static final org.hornetq.api.core.SimpleString HDR_LAST_VALUE_NAME

DEFAULT_TYPE

static final byte DEFAULT_TYPE
See Also:
Constant Field Values

OBJECT_TYPE

static final byte OBJECT_TYPE
See Also:
Constant Field Values

TEXT_TYPE

static final byte TEXT_TYPE
See Also:
Constant Field Values

BYTES_TYPE

static final byte BYTES_TYPE
See Also:
Constant Field Values

MAP_TYPE

static final byte MAP_TYPE
See Also:
Constant Field Values

STREAM_TYPE

static final byte STREAM_TYPE
See Also:
Constant Field Values
Method Detail

getMessageID

long getMessageID()
Returns the messageID.
The messageID is set when the message is handled by the server.


getUserID

org.hornetq.utils.UUID getUserID()
Returns the userID - this is an optional user specified UUID that can be set to identify the message and will be passed around with the message

Returns:
the user id

setUserID

void setUserID(org.hornetq.utils.UUID userID)
Sets the user ID

Parameters:
userID -

getAddress

org.hornetq.api.core.SimpleString getAddress()
Returns the address this message is sent to.


setAddress

void setAddress(org.hornetq.api.core.SimpleString address)
Sets the address to send this message to.

Parameters:
address - address to send the message to

getType

byte getType()
Returns this message type.

See fields *_TYPE for possible values.


isDurable

boolean isDurable()
Returns whether this message is durable or not.


setDurable

void setDurable(boolean durable)
Sets whether this message is durable or not.

Parameters:
durable - true to flag this message as durable, false else

getExpiration

long getExpiration()
Returns the expiration time of this message.


isExpired

boolean isExpired()
Returns whether this message is expired or not.


setExpiration

void setExpiration(long expiration)
Sets the expiration of this message.

Parameters:
expiration - expiration time

getTimestamp

long getTimestamp()
Returns the message timestamp.
The timestamp corresponds to the time this message was handled by a HornetQ server.


setTimestamp

void setTimestamp(long timestamp)
Sets the message timestamp.

Parameters:
timestamp - timestamp

getPriority

byte getPriority()
Returns the message priority. Values range from 0 (less priority) to 9 (more priority) inclusive.


setPriority

void setPriority(byte priority)
Sets the message priority. Value must be between 0 and 9 inclusive.

Parameters:
priority - the new message priority

getEncodeSize

int getEncodeSize()
Returns the size of the encoded message.


isLargeMessage

boolean isLargeMessage()
Returns whether this message is a large message or a regular message.


getBodyBuffer

org.hornetq.api.core.HornetQBuffer getBodyBuffer()
Returns the message body as a HornetQBuffer


getBodyBufferCopy

org.hornetq.api.core.HornetQBuffer getBodyBufferCopy()
Returns a copy of the message body as a HornetQBuffer. Any modification of this buffer should not impact the underlying buffer.


putBooleanProperty

void putBooleanProperty(org.hornetq.api.core.SimpleString key,
                        boolean value)
Puts a boolean property in this message.

Parameters:
key - property name
value - property value

putBooleanProperty

void putBooleanProperty(String key,
                        boolean value)
See Also:
putBooleanProperty(SimpleString, boolean)

putByteProperty

void putByteProperty(org.hornetq.api.core.SimpleString key,
                     byte value)
Puts a byte property in this message.

Parameters:
key - property name
value - property value

putByteProperty

void putByteProperty(String key,
                     byte value)
See Also:
putByteProperty(SimpleString, byte)

putBytesProperty

void putBytesProperty(org.hornetq.api.core.SimpleString key,
                      byte[] value)
Puts a byte[] property in this message.

Parameters:
key - property name
value - property value

putBytesProperty

void putBytesProperty(String key,
                      byte[] value)
See Also:
putBytesProperty(SimpleString, byte[])

putShortProperty

void putShortProperty(org.hornetq.api.core.SimpleString key,
                      short value)
Puts a short property in this message.

Parameters:
key - property name
value - property value

putShortProperty

void putShortProperty(String key,
                      short value)
See Also:
putShortProperty(SimpleString, short)

putIntProperty

void putIntProperty(org.hornetq.api.core.SimpleString key,
                    int value)
Puts a int property in this message.

Parameters:
key - property name
value - property value

putIntProperty

void putIntProperty(String key,
                    int value)
See Also:
putIntProperty(SimpleString, int)

putLongProperty

void putLongProperty(org.hornetq.api.core.SimpleString key,
                     long value)
Puts a long property in this message.

Parameters:
key - property name
value - property value

putLongProperty

void putLongProperty(String key,
                     long value)
See Also:
putLongProperty(SimpleString, long)

putFloatProperty

void putFloatProperty(org.hornetq.api.core.SimpleString key,
                      float value)
Puts a float property in this message.

Parameters:
key - property name
value - property value

putFloatProperty

void putFloatProperty(String key,
                      float value)
See Also:
putFloatProperty(SimpleString, float)

putDoubleProperty

void putDoubleProperty(org.hornetq.api.core.SimpleString key,
                       double value)
Puts a double property in this message.

Parameters:
key - property name
value - property value

putDoubleProperty

void putDoubleProperty(String key,
                       double value)
See Also:
putDoubleProperty(SimpleString, double)

putStringProperty

void putStringProperty(org.hornetq.api.core.SimpleString key,
                       org.hornetq.api.core.SimpleString value)
Puts a SimpleString property in this message.

Parameters:
key - property name
value - property value

putStringProperty

void putStringProperty(String key,
                       String value)
Puts a String property in this message.

Parameters:
key - property name
value - property value

putObjectProperty

void putObjectProperty(org.hornetq.api.core.SimpleString key,
                       Object value)
                       throws org.hornetq.api.core.HornetQPropertyConversionException
Puts an Object property in this message.
Accepted types are: Using any other type will throw a PropertyConversionException.

Parameters:
key - property name
value - property value
Throws:
HornetQPropertyConversionException - if the value is not one of the accepted property types.

putObjectProperty

void putObjectProperty(String key,
                       Object value)
                       throws org.hornetq.api.core.HornetQPropertyConversionException
Throws:
org.hornetq.api.core.HornetQPropertyConversionException
See Also:
putObjectProperty(SimpleString, Object)

removeProperty

Object removeProperty(org.hornetq.api.core.SimpleString key)
Removes the property corresponding to the specified key.

Parameters:
key - property name
Returns:
the value corresponding to the specified key or @{code null}

removeProperty

Object removeProperty(String key)
See Also:
removeProperty(SimpleString)

containsProperty

boolean containsProperty(org.hornetq.api.core.SimpleString key)
Returns true if this message contains a property with the given key, false else.

Parameters:
key - property name

containsProperty

boolean containsProperty(String key)
See Also:
containsProperty(SimpleString)

getBooleanProperty

Boolean getBooleanProperty(org.hornetq.api.core.SimpleString key)
                           throws org.hornetq.api.core.HornetQPropertyConversionException
Returns the property corresponding to the specified key as a Boolean.

Throws:
HornetQPropertyConversionException - if the value can not be converted to a Boolean

getBooleanProperty

Boolean getBooleanProperty(String key)
                           throws org.hornetq.api.core.HornetQPropertyConversionException
Throws:
org.hornetq.api.core.HornetQPropertyConversionException
See Also:
getBooleanProperty(SimpleString)

getByteProperty

Byte getByteProperty(org.hornetq.api.core.SimpleString key)
                     throws org.hornetq.api.core.HornetQPropertyConversionException
Returns the property corresponding to the specified key as a Byte.

Throws:
HornetQPropertyConversionException - if the value can not be converted to a Byte

getByteProperty

Byte getByteProperty(String key)
                     throws org.hornetq.api.core.HornetQPropertyConversionException
Throws:
org.hornetq.api.core.HornetQPropertyConversionException
See Also:
getByteProperty(SimpleString)

getDoubleProperty

Double getDoubleProperty(org.hornetq.api.core.SimpleString key)
                         throws org.hornetq.api.core.HornetQPropertyConversionException
Returns the property corresponding to the specified key as a Double.

Throws:
HornetQPropertyConversionException - if the value can not be converted to a Double

getDoubleProperty

Double getDoubleProperty(String key)
                         throws org.hornetq.api.core.HornetQPropertyConversionException
Throws:
org.hornetq.api.core.HornetQPropertyConversionException
See Also:
getDoubleProperty(SimpleString)

getIntProperty

Integer getIntProperty(org.hornetq.api.core.SimpleString key)
                       throws org.hornetq.api.core.HornetQPropertyConversionException
Returns the property corresponding to the specified key as an Integer.

Throws:
HornetQPropertyConversionException - if the value can not be converted to an Integer

getIntProperty

Integer getIntProperty(String key)
                       throws org.hornetq.api.core.HornetQPropertyConversionException
Throws:
org.hornetq.api.core.HornetQPropertyConversionException
See Also:
getIntProperty(SimpleString)

getLongProperty

Long getLongProperty(org.hornetq.api.core.SimpleString key)
                     throws org.hornetq.api.core.HornetQPropertyConversionException
Returns the property corresponding to the specified key as a Long.

Throws:
HornetQPropertyConversionException - if the value can not be converted to a Long

getLongProperty

Long getLongProperty(String key)
                     throws org.hornetq.api.core.HornetQPropertyConversionException
Throws:
org.hornetq.api.core.HornetQPropertyConversionException
See Also:
getLongProperty(SimpleString)

getObjectProperty

Object getObjectProperty(org.hornetq.api.core.SimpleString key)
Returns the property corresponding to the specified key


getObjectProperty

Object getObjectProperty(String key)
See Also:
getBooleanProperty(SimpleString)

getShortProperty

Short getShortProperty(org.hornetq.api.core.SimpleString key)
                       throws org.hornetq.api.core.HornetQPropertyConversionException
Returns the property corresponding to the specified key as a Short.

Throws:
HornetQPropertyConversionException - if the value can not be converted to a Short

getShortProperty

Short getShortProperty(String key)
                       throws org.hornetq.api.core.HornetQPropertyConversionException
Throws:
org.hornetq.api.core.HornetQPropertyConversionException
See Also:
getShortProperty(SimpleString)

getFloatProperty

Float getFloatProperty(org.hornetq.api.core.SimpleString key)
                       throws org.hornetq.api.core.HornetQPropertyConversionException
Returns the property corresponding to the specified key as a Float.

Throws:
HornetQPropertyConversionException - if the value can not be converted to a Float

getFloatProperty

Float getFloatProperty(String key)
                       throws org.hornetq.api.core.HornetQPropertyConversionException
Throws:
org.hornetq.api.core.HornetQPropertyConversionException
See Also:
getFloatProperty(SimpleString)

getStringProperty

String getStringProperty(org.hornetq.api.core.SimpleString key)
                         throws org.hornetq.api.core.HornetQPropertyConversionException
Returns the property corresponding to the specified key as a String.

Throws:
HornetQPropertyConversionException - if the value can not be converted to a String

getStringProperty

String getStringProperty(String key)
                         throws org.hornetq.api.core.HornetQPropertyConversionException
Throws:
org.hornetq.api.core.HornetQPropertyConversionException
See Also:
getStringProperty(SimpleString)

getSimpleStringProperty

org.hornetq.api.core.SimpleString getSimpleStringProperty(org.hornetq.api.core.SimpleString key)
                                                          throws org.hornetq.api.core.HornetQPropertyConversionException
Returns the property corresponding to the specified key as a SimpleString.

Throws:
HornetQPropertyConversionException - if the value can not be converted to a SimpleString

getSimpleStringProperty

org.hornetq.api.core.SimpleString getSimpleStringProperty(String key)
                                                          throws org.hornetq.api.core.HornetQPropertyConversionException
Throws:
org.hornetq.api.core.HornetQPropertyConversionException
See Also:
getSimpleStringProperty(SimpleString)

getBytesProperty

byte[] getBytesProperty(org.hornetq.api.core.SimpleString key)
                        throws org.hornetq.api.core.HornetQPropertyConversionException
Returns the property corresponding to the specified key as a byte[].

Throws:
HornetQPropertyConversionException - if the value can not be converted to a byte[]

getBytesProperty

byte[] getBytesProperty(String key)
                        throws org.hornetq.api.core.HornetQPropertyConversionException
Throws:
org.hornetq.api.core.HornetQPropertyConversionException
See Also:
getBytesProperty(SimpleString)

getPropertyNames

Set<org.hornetq.api.core.SimpleString> getPropertyNames()
Returns all the names of the properties for this message.


toMap

Map<String,Object> toMap()
Returns:
Returns the message in Map form, useful when encoding to JSON


Copyright © 2012 JBoss, a division of Red Hat. All Rights Reserved.