Package com.swiftmq.jms
Class StreamMessageImpl
java.lang.Object
com.swiftmq.jms.MessageImpl
com.swiftmq.jms.StreamMessageImpl
- All Implemented Interfaces:
Serializable
,javax.jms.Message
,javax.jms.StreamMessage
Implementation of a StreamMessage.
- Author:
- IIT GmbH, Bremen/Germany, Copyright (c) 2000-2002, All Rights Reserved
- See Also:
-
Field Summary
Fields inherited from class com.swiftmq.jms.MessageImpl
DEFAULT_PRIORITY, MAX_PRIORITY, MIN_PRIORITY, PROP_CLIENT_ID, PROP_DELIVERY_COUNT, PROP_DOUBT_DUPLICATE, PROP_UNROUTABLE_REASON, PROP_USER_ID
Fields inherited from interface javax.jms.Message
DEFAULT_DELIVERY_MODE, DEFAULT_PRIORITY, DEFAULT_TIME_TO_LIVE
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
Clear out the message body.protected int
getType()
protected void
boolean
Read aboolean
from the stream message.byte
readByte()
Read a byte value from the stream message.int
readBytes
(byte[] value) Read a byte array from the stream message.char
readChar()
Read a Unicode character value from the stream message.double
Read adouble
from the stream message.float
Read afloat
from the stream message.int
readInt()
Read a 32-bit integer from the stream message.long
readLong()
Read a 64-bit integer from the stream message.Read a Java object from the stream message.short
Read a 16-bit number from the stream message.Read in a string from the stream message.void
reset()
Put the message in read-only mode, and reposition the stream to the beginning.toString()
protected void
writeBody
(DataOutput out) void
writeBoolean
(boolean value) Write aboolean
to the stream message.void
writeByte
(byte value) Write out abyte
to the stream message.void
writeBytes
(byte[] value) Write a byte array to the stream message.void
writeBytes
(byte[] value, int offset, int length) Write a portion of a byte array to the stream message.void
writeChar
(char value) Write achar
to the stream message.void
writeDouble
(double value) Write adouble
to the stream message.void
writeFloat
(float value) Write afloat
to the stream message.void
writeInt
(int value) Write anint
to the stream message.void
writeLong
(long value) Write along
to the stream message.void
writeObject
(Object value) Write a Java object to the stream message.void
writeShort
(short value) Write ashort
to the stream message.void
writeString
(String value) Write a string to the stream message.Methods inherited from class com.swiftmq.jms.MessageImpl
acknowledge, clearProperties, clearSwiftMQAllProps, clearSwiftMQProps, createInstance, getBooleanProperty, getByteProperty, getDestQueue, getDestRouter, getDoubleProperty, getDuplicateId, getField, getFloatProperty, getIntProperty, getJMSCorrelationID, getJMSCorrelationIDAsBytes, getJMSDeliveryMode, getJMSDestination, getJMSExpiration, getJMSMessageID, getJMSPriority, getJMSRedelivered, getJMSReplyTo, getJMSTimestamp, getJMSType, getLongProperty, getMessageIndex, getMessageLength, getObjectProperty, getPersistentKey, getPropertyNames, getShortProperty, getSourceRouter, getStreamPKey, getStringProperty, isCancelled, propertyExists, readContent, readContent, removeProperty, setBooleanProperty, setByteProperty, setDestQueue, setDestRouter, setDoubleProperty, setDuplicateId, setFloatProperty, setIntProperty, setJMSCorrelationID, setJMSCorrelationIDAsBytes, setJMSDeliveryMode, setJMSDestination, setJMSExpiration, setJMSMessageID, setJMSPriority, setJMSRedelivered, setJMSReplyTo, setJMSTimestamp, setJMSType, setLongProperty, setMessageConsumerImpl, setMessageIndex, setObjectProperty, setPersistentKey, setReadOnly, setSessionImpl, setShortProperty, setSourceRouter, setStreamPKey, setStringProperty, setUseThreadContextCL, unfoldBody, unfoldBuffers, writeContent, writeContent
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface javax.jms.Message
acknowledge, 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, setStringProperty
-
Constructor Details
-
StreamMessageImpl
public StreamMessageImpl()
-
-
Method Details
-
getType
protected int getType()- Overrides:
getType
in classMessageImpl
-
writeBody
- Overrides:
writeBody
in classMessageImpl
- Throws:
IOException
-
readBody
- Overrides:
readBody
in classMessageImpl
- Throws:
IOException
-
readBoolean
public boolean readBoolean() throws javax.jms.JMSExceptionRead aboolean
from the stream message.- Specified by:
readBoolean
in interfacejavax.jms.StreamMessage
- Returns:
- the
boolean
value read. - Throws:
javax.jms.JMSException
- if JMS fails to read message due to some internal JMS error.javax.jms.MessageEOFException
- if an end of message streamjavax.jms.MessageFormatException
- if this type conversion is invalidjavax.jms.MessageNotReadableException
- if message in write-only mode.
-
readByte
public byte readByte() throws javax.jms.JMSExceptionRead a byte value from the stream message.- Specified by:
readByte
in interfacejavax.jms.StreamMessage
- Returns:
- the next byte from the stream message as a 8-bit
byte
. - Throws:
javax.jms.JMSException
- if JMS fails to read message due to some internal JMS error.javax.jms.MessageEOFException
- if an end of message streamjavax.jms.MessageFormatException
- if this type conversion is invalidjavax.jms.MessageNotReadableException
- if message in write-only mode.
-
readShort
public short readShort() throws javax.jms.JMSExceptionRead a 16-bit number from the stream message.- Specified by:
readShort
in interfacejavax.jms.StreamMessage
- Returns:
- a 16-bit number from the stream message.
- Throws:
javax.jms.JMSException
- if JMS fails to read message due to some internal JMS error.javax.jms.MessageEOFException
- if an end of message streamjavax.jms.MessageFormatException
- if this type conversion is invalidjavax.jms.MessageNotReadableException
- if message in write-only mode.
-
readChar
public char readChar() throws javax.jms.JMSExceptionRead a Unicode character value from the stream message.- Specified by:
readChar
in interfacejavax.jms.StreamMessage
- Returns:
- a Unicode character from the stream message.
- Throws:
javax.jms.JMSException
- if JMS fails to read message due to some internal JMS error.javax.jms.MessageEOFException
- if an end of message streamjavax.jms.MessageFormatException
- if this type conversion is invalidjavax.jms.MessageNotReadableException
- if message in write-only mode.
-
readInt
public int readInt() throws javax.jms.JMSExceptionRead a 32-bit integer from the stream message.- Specified by:
readInt
in interfacejavax.jms.StreamMessage
- Returns:
- a 32-bit integer value from the stream message, interpreted
as a
int
. - Throws:
javax.jms.JMSException
- if JMS fails to read message due to some internal JMS error.javax.jms.MessageEOFException
- if an end of message streamjavax.jms.MessageFormatException
- if this type conversion is invalidjavax.jms.MessageNotReadableException
- if message in write-only mode.
-
readLong
public long readLong() throws javax.jms.JMSExceptionRead a 64-bit integer from the stream message.- Specified by:
readLong
in interfacejavax.jms.StreamMessage
- Returns:
- a 64-bit integer value from the stream message, interpreted as
a
long
. - Throws:
javax.jms.JMSException
- if JMS fails to read message due to some internal JMS error.javax.jms.MessageEOFException
- if an end of message streamjavax.jms.MessageFormatException
- if this type conversion is invalidjavax.jms.MessageNotReadableException
- if message in write-only mode.
-
readFloat
public float readFloat() throws javax.jms.JMSExceptionRead afloat
from the stream message.- Specified by:
readFloat
in interfacejavax.jms.StreamMessage
- Returns:
- a
float
value from the stream message. - Throws:
javax.jms.JMSException
- if JMS fails to read message due to some internal JMS error.javax.jms.MessageEOFException
- if an end of message streamjavax.jms.MessageFormatException
- if this type conversion is invalidjavax.jms.MessageNotReadableException
- if message in write-only mode.
-
readDouble
public double readDouble() throws javax.jms.JMSExceptionRead adouble
from the stream message.- Specified by:
readDouble
in interfacejavax.jms.StreamMessage
- Returns:
- a
double
value from the stream message. - Throws:
javax.jms.JMSException
- if JMS fails to read message due to some internal JMS error.javax.jms.MessageEOFException
- if an end of message streamjavax.jms.MessageFormatException
- if this type conversion is invalidjavax.jms.MessageNotReadableException
- if message in write-only mode.
-
readString
Read in a string from the stream message.- Specified by:
readString
in interfacejavax.jms.StreamMessage
- Returns:
- a Unicode string from the stream message.
- Throws:
javax.jms.JMSException
- if JMS fails to read message due to some internal JMS error.javax.jms.MessageEOFException
- if an end of message streamjavax.jms.MessageFormatException
- if this type conversion is invalidjavax.jms.MessageNotReadableException
- if message in write-only mode.
-
readBytes
public int readBytes(byte[] value) throws javax.jms.JMSException Read a byte array from the stream message.- Specified by:
readBytes
in interfacejavax.jms.StreamMessage
- Parameters:
value
- the buffer into which the data is read.- Returns:
- the total number of bytes read into the buffer, or -1 if there is no more data because the end of the stream has been reached.
- Throws:
javax.jms.JMSException
- if JMS fails to read message due to some internal JMS error.javax.jms.MessageEOFException
- if an end of message streamjavax.jms.MessageFormatException
- if this type conversion is invalidjavax.jms.MessageNotReadableException
- if message in write-only mode.
-
readObject
Read a Java object from the stream message.Note that this method can be used to return in objectified format, an object that had been written to the Stream with the equivalent
writeObject
method call, or it's equivalent primitive writemethod. - Specified by:
readObject
in interfacejavax.jms.StreamMessage
- Returns:
- a Java object from the stream message, in objectified format (ie. if it set as an int, then a Integer is returned).
- Throws:
javax.jms.JMSException
- if JMS fails to read message due to some internal JMS error.javax.jms.MessageEOFException
- if an end of message streamjavax.jms.MessageNotReadableException
- if message in write-only mode.
-
writeBoolean
public void writeBoolean(boolean value) throws javax.jms.JMSException Write aboolean
to the stream message. The valuetrue
is written out as the value(byte)1
; the valuefalse
is written out as the value(byte)0
.- Specified by:
writeBoolean
in interfacejavax.jms.StreamMessage
- Parameters:
value
- theboolean
value to be written.- Throws:
javax.jms.JMSException
- if JMS fails to read message due to some internal JMS error.javax.jms.MessageNotWriteableException
- if message in read-only mode.
-
writeByte
public void writeByte(byte value) throws javax.jms.JMSException Write out abyte
to the stream message.- Specified by:
writeByte
in interfacejavax.jms.StreamMessage
- Parameters:
value
- thebyte
value to be written.- Throws:
javax.jms.JMSException
- if JMS fails to write message due to some internal JMS error.javax.jms.MessageNotWriteableException
- if message in read-only mode.
-
writeShort
public void writeShort(short value) throws javax.jms.JMSException Write ashort
to the stream message.- Specified by:
writeShort
in interfacejavax.jms.StreamMessage
- Parameters:
value
- theshort
to be written.- Throws:
javax.jms.JMSException
- if JMS fails to write message due to some internal JMS error.javax.jms.MessageNotWriteableException
- if message in read-only mode.
-
writeChar
public void writeChar(char value) throws javax.jms.JMSException Write achar
to the stream message.- Specified by:
writeChar
in interfacejavax.jms.StreamMessage
- Parameters:
value
- thechar
value to be written.- Throws:
javax.jms.JMSException
- if JMS fails to write message due to some internal JMS error.javax.jms.MessageNotWriteableException
- if message in read-only mode.
-
writeInt
public void writeInt(int value) throws javax.jms.JMSException Write anint
to the stream message.- Specified by:
writeInt
in interfacejavax.jms.StreamMessage
- Parameters:
value
- theint
to be written.- Throws:
javax.jms.JMSException
- if JMS fails to write message due to some internal JMS error.javax.jms.MessageNotWriteableException
- if message in read-only mode.
-
writeLong
public void writeLong(long value) throws javax.jms.JMSException Write along
to the stream message.- Specified by:
writeLong
in interfacejavax.jms.StreamMessage
- Parameters:
value
- thelong
to be written.- Throws:
javax.jms.JMSException
- if JMS fails to write message due to some internal JMS error.javax.jms.MessageNotWriteableException
- if message in read-only mode.
-
writeFloat
public void writeFloat(float value) throws javax.jms.JMSException Write afloat
to the stream message.- Specified by:
writeFloat
in interfacejavax.jms.StreamMessage
- Parameters:
value
- thefloat
value to be written.- Throws:
javax.jms.JMSException
- if JMS fails to write message due to some internal JMS error.javax.jms.MessageNotWriteableException
- if message in read-only mode.
-
writeDouble
public void writeDouble(double value) throws javax.jms.JMSException Write adouble
to the stream message.- Specified by:
writeDouble
in interfacejavax.jms.StreamMessage
- Parameters:
value
- thedouble
value to be written.- Throws:
javax.jms.JMSException
- if JMS fails to write message due to some internal JMS error.javax.jms.MessageNotWriteableException
- if message in read-only mode.
-
writeString
Write a string to the stream message.- Specified by:
writeString
in interfacejavax.jms.StreamMessage
- Parameters:
value
- theString
value to be written.- Throws:
javax.jms.JMSException
- if JMS fails to write message due to some internal JMS error.javax.jms.MessageNotWriteableException
- if message in read-only mode.
-
writeBytes
public void writeBytes(byte[] value) throws javax.jms.JMSException Write a byte array to the stream message.- Specified by:
writeBytes
in interfacejavax.jms.StreamMessage
- Parameters:
value
- the byte array to be written.- Throws:
javax.jms.JMSException
- if JMS fails to write message due to some internal JMS error.javax.jms.MessageNotWriteableException
- if message in read-only mode.
-
writeBytes
public void writeBytes(byte[] value, int offset, int length) throws javax.jms.JMSException Write a portion of a byte array to the stream message.- Specified by:
writeBytes
in interfacejavax.jms.StreamMessage
- Parameters:
value
- the byte array value to be written.offset
- the initial offset within the byte array.length
- the number of bytes to use.- Throws:
javax.jms.JMSException
- if JMS fails to write message due to some internal JMS error.javax.jms.MessageNotWriteableException
- if message in read-only mode.
-
writeObject
Write a Java object to the stream message.Note that this method only works for the objectified primitive object types (Integer, Double, Long ...), String's and byte arrays.
- Specified by:
writeObject
in interfacejavax.jms.StreamMessage
- Parameters:
value
- the Java object to be written.- Throws:
javax.jms.JMSException
- if JMS fails to write message due to some internal JMS error.javax.jms.MessageNotWriteableException
- if message in read-only mode.javax.jms.MessageFormatException
- if the object is invalid
-
reset
public void reset() throws javax.jms.JMSExceptionPut the message in read-only mode, and reposition the stream to the beginning.- Specified by:
reset
in interfacejavax.jms.StreamMessage
- Overrides:
reset
in classMessageImpl
- Throws:
javax.jms.JMSException
- if JMS fails to reset the message due to some internal JMS error.javax.jms.MessageFormatException
- if message has an invalid format
-
clearBody
public void clearBody() throws javax.jms.JMSExceptionClear out the message body. All other parts of the message are left untouched.- Specified by:
clearBody
in interfacejavax.jms.Message
- Overrides:
clearBody
in classMessageImpl
- Throws:
javax.jms.JMSException
- if JMS fails to due to some internal JMS error.
-
toString
- Overrides:
toString
in classMessageImpl
-