|
jBroker® MQ 2.1 | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
A MapMessage
object is used to send a set of name-value pairs.
The names are String
objects, and the values are primitive
data types in the Java programming language. The entries can be accessed
sequentially or randomly by name. The order of the entries is undefined.
MapMessage
inherits from the Message
interface
and adds a message body that contains a Map.
The primitive types can be read or written explicitly using methods
for each type. They may also be read or written generically as objects.
For instance, a call to MapMessage.setInt("foo", 6)
is
equivalent to MapMessage.setObject("foo", new Integer(6))
.
Both forms are provided, because the explicit form is convenient for
static programming, and the object form is needed when types are not known
at compile time.
When a client receives a MapMessage
, it is in read-only
mode. If a client attempts to write to the message at this point, a
MessageNotWriteableException
is thrown. If
clearBody
is called, the message can now be both read from and
written to.
MapMessage
objects support the following conversion table.
The marked cases must be supported. The unmarked cases must throw a
JMSException
. The String
-to-primitive conversions
may throw a runtime exception if the primitive's valueOf()
method does not accept it as a valid String
representation of
the primitive.
A value written as the row type can be read as the column type.
| | boolean byte short char int long float double String byte[] |---------------------------------------------------------------------- |boolean | X X |byte | X X X X X |short | X X X X |char | 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 |----------------------------------------------------------------------
Attempting to read a null value as a primitive type must be treated
as calling the primitive's corresponding valueOf(String)
conversion method with a null value. Since char
does not
support a String
conversion, attempting to read a null value
as a char
must throw a NullPointerException
.
Session.createMapMessage()
,
BytesMessage
,
Message
,
ObjectMessage
,
StreamMessage
,
TextMessage
Fields inherited from interface javax.jms.Message |
DEFAULT_DELIVERY_MODE, DEFAULT_PRIORITY, DEFAULT_TIME_TO_LIVE |
Method Summary | |
boolean |
getBoolean(String name)
Returns the boolean value with the specified name. |
byte |
getByte(String name)
Returns the byte value with the specified name. |
byte[] |
getBytes(String name)
Returns the byte array value with the specified name. |
char |
getChar(String name)
Returns the Unicode character value with the specified name. |
double |
getDouble(String name)
Returns the double value with the specified name. |
float |
getFloat(String name)
Returns the float value with the specified name. |
int |
getInt(String name)
Returns the int value with the specified name. |
long |
getLong(String name)
Returns the long value with the specified name. |
Enumeration |
getMapNames()
Returns an Enumeration of all the names in the
MapMessage object. |
Object |
getObject(String name)
Returns the value of the object with the specified name. |
short |
getShort(String name)
Returns the short value with the specified name. |
String |
getString(String name)
Returns the String value with the specified name. |
boolean |
itemExists(String name)
Indicates whether an item exists in this MapMessage object. |
void |
setBoolean(String name,
boolean value)
Sets a boolean value with the specified name into the Map. |
void |
setByte(String name,
byte value)
Sets a byte value with the specified name into the Map. |
void |
setBytes(String name,
byte[] value)
Sets a byte array value with the specified name into the Map. |
void |
setBytes(String name,
byte[] value,
int offset,
int length)
Sets a portion of the byte array value with the specified name into the Map. |
void |
setChar(String name,
char value)
Sets a Unicode character value with the specified name into the Map. |
void |
setDouble(String name,
double value)
Sets a double value with the specified name into the Map. |
void |
setFloat(String name,
float value)
Sets a float value with the specified name into the Map. |
void |
setInt(String name,
int value)
Sets an int value with the specified name into the Map. |
void |
setLong(String name,
long value)
Sets a long value with the specified name into the Map. |
void |
setObject(String name,
Object value)
Sets an object value with the specified name into the Map. |
void |
setShort(String name,
short value)
Sets a short value with the specified name into the Map. |
void |
setString(String name,
String value)
Sets a String value with the specified name into the Map. |
Methods inherited from interface javax.jms.Message | |||||||||||||||
acknowledge, clearBody, clearProperties, getBooleanProperty, getByteProperty, getDoubleProperty, getFloatProperty, getIntProperty, getJMSCorrelationID, getJMSCorrelationIDAsBytes, getJMSDeliveryMode, getJMSDestination, getJMSExpiration, getJMSMessageID, getJMSPriority, getJMSRedelivered, getJMSReplyTo, getJMSTimestamp, getJMSType, getLongProperty, getObjectProperty, getPropertyNames, getShortProperty, getStringProperty, propertyExists, setBooleanProperty, setByteProperty, setDoubleProperty, setFloatProperty, setIntProperty, setJMSCorrelationID, setJMSCorrelationIDAsBytes, setJMSDeliveryMode, setJMSDestination, setJMSExpiration, setJMSMessageID, setJMSPriority, setJMSRedelivered, setJMSReplyTo, setJMSTimestamp, setJMSType, setLongProperty, setObjectProperty, setShortProperty,
|