Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## net.sf.dropboxmq.messages
Class StreamMessageImpl

    java.lang.Object
      net.sf.dropboxmq.messages.MessageImpl
          net.sf.dropboxmq.messages.StreamMessageImpl

All Implemented Interfaces:
  Message, StreamMessage

    public class StreamMessageImpl

extends MessageImpl
implements StreamMessage

Created: 02 Feb 2006

Version:
  $Revision: 231 $, $Date: 2011-08-12 21:50:47 -0600 (Fri, 12 Aug 2011) $
Author:
  Dwayne Schultz

Field Summary

Fields inherited from interface javax.jms.Message
`DEFAULT_DELIVERY_MODE, DEFAULT_PRIORITY, DEFAULT_TIME_TO_LIVE`

Constructor Summary
`StreamMessageImpl(SessionImpl session)`
`StreamMessageImpl(StreamMessage foreignMessage, SessionImpl session)`

Method Summary
`protected void` | `checkWrite()`
`void` | `clearBody()` Clears out the message body.
`void` | `read(File newMessageFile, FileSystem fileSystem)`
`boolean` | `readBoolean()` Reads a `boolean` from the stream message.
`byte` | `readByte()` Reads a `byte` value from the stream message.
`int` | `readBytes(byte[] value)` Reads a byte array field from the stream message into the specified `byte[]` object (the read buffer).
`char` | `readChar()` Reads a Unicode character value from the stream message.
`double` | `readDouble()` Reads a `double` from the stream message.
`float` | `readFloat()` Reads a `float` from the stream message.
`int` | `readInt()` Reads a 32-bit integer from the stream message.
`long` | `readLong()` Reads a 64-bit integer from the stream message.
`Object` | `readObject()` Reads an object from the stream message.
`short` | `readShort()` Reads a 16-bit integer from the stream message.
`String` | `readString()` Reads a `String` from the stream message.
`void` | `reset()` Puts the message body in read-only mode and repositions the stream to the beginning.
`void` | `setReceived(boolean received)`
`String` | `toString()`
`void` | `write(File newMessageFile, FileSystem fileSystem)`
`void` | `writeBoolean(boolean value)` Writes a `boolean` to the stream message.
`void` | `writeByte(byte value)` Writes a `byte` to the stream message.
`void` | `writeBytes(byte[] value)` Writes a byte array field to the stream message.
`void` | `writeBytes(byte[] value, int offset, int length)` Writes a portion of a byte array as a byte array field to the stream message.
`void` | `writeChar(char value)` Writes a `char` to the stream message.
`void` | `writeDouble(double value)` Writes a `double` to the stream message.
`void` | `writeFloat(float value)` Writes a `float` to the stream message.
`void` | `writeInt(int value)` Writes an `int` to the stream message.
`void` | `writeLong(long value)` Writes a `long` to the stream message.
`void` | `writeObject(Object value)` Writes an object to the stream message.
`void` | `writeShort(short value)` Writes a `short` to the stream message.
`void` | `writeString(String value)` Writes a `String` to the stream message.

Methods inherited from class net.sf.dropboxmq.messages.MessageImpl
`acknowledge, clearProperties, convertForeignMessage, getBooleanProperty, getByteProperty, getDoubleProperty, getFloatProperty, getIntProperty, getJMSCorrelationID, getJMSCorrelationIDAsBytes, getJMSDeliveryMode, getJMSDestination, getJMSExpiration, getJMSMessageID, getJMSPriority, getJMSRedelivered, getJMSReplyTo, getJMSTimestamp, getJMSType, getLongProperty, getObjectProperty, getPropertyNames, getReadMessageFile, getSequence, getSession, getShortProperty, getStringProperty, isBodyReadOnly, isExpired, isReceived, propertyExists, setBooleanProperty, setByteProperty, setDoubleProperty, setFloatProperty, setIntProperty, setJMSCorrelationID, setJMSCorrelationIDAsBytes, setJMSDeliveryMode, setJMSDestination, setJMSExpiration, setJMSMessageID, setJMSPriority, setJMSRedelivered, setJMSReplyTo, setJMSTimestamp, setJMSType, setLongProperty, setObjectProperty, setSequence, setSession, setShortProperty, setStringProperty, toObjectString`

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 Detail

### StreamMessageImpl

    public StreamMessageImpl(SessionImpl session)

### StreamMessageImpl

    StreamMessageImpl(StreamMessage foreignMessage,
                      SessionImpl session)
                throws JMSException

Throws:
  `JMSException`

Method Detail

### read

    public void read(File newMessageFile,
                     FileSystem fileSystem)
              throws JMSException,
                     IOException,
                     FileSystem.FileSystemException

  Overrides:
    `read` in class `MessageImpl`
  Throws:
    `JMSException`
    `IOException`
    `FileSystem.FileSystemException`

### write

    public void write(File newMessageFile,
                      FileSystem fileSystem)
               throws IOException,
                      JMSException,
                      FileSystem.FileSystemException

  Overrides:
    `write` in class `MessageImpl`
  Throws:
    `IOException`
    `JMSException`
    `FileSystem.FileSystemException`

### clearBody

    public void clearBody()
                   throws JMSException

  Description copied from interface: `javax.jms.Message`
  Clears out the message body. Clearing a message's body does not clear its header values or property entries.

  If this message body was read-only, calling this method leaves the message body in the same state as an empty body in a newly created message.

  Specified by:
    `clearBody` in interface `Message`
  Overrides:
    `clearBody` in class `MessageImpl`
  Throws:
    `JMSException` - if the JMS provider fails to clear the message body due to some internal error.

### readBoolean

    public boolean readBoolean()
                        throws JMSException

  Description copied from interface: `javax.jms.StreamMessage`
  Reads a `boolean` from the stream message.

  Specified by:
    `readBoolean` in interface `StreamMessage`
  Returns:
    the `boolean` value read
  Throws:
    `JMSException` - if the JMS provider fails to read the message due to some internal error.
    `MessageEOFException` - if unexpected end of message stream has been reached.
    `MessageFormatException` - if this type conversion is invalid.
    `MessageNotReadableException` - if the message is in write-only mode.

### readByte

    public byte readByte()
                  throws JMSException

  Description copied from interface: `javax.jms.StreamMessage`
  Reads a `byte` value from the stream message.

  Specified by:
    `readByte` in interface `StreamMessage`
  Returns:
    the next byte from the stream message as a 8-bit `byte`
  Throws:
    `JMSException` - if the JMS provider fails to read the message due to some internal error.
    `MessageEOFException` - if unexpected end of message stream has been reached.
    `MessageFormatException` - if this type conversion is invalid.
    `MessageNotReadableException` - if the message is in write-only mode.

### readShort

    public short readShort()
                    throws JMSException

  Description copied from interface: `javax.jms.StreamMessage`
  Reads a 16-bit integer from the stream message.

  Specified by:
    `readShort` in interface `StreamMessage`
  Returns:
    a 16-bit integer from the stream message
  Throws:
    `JMSException` - if the JMS provider fails to read the message due to some internal error.
    `MessageEOFException` - if unexpected end of message stream has been reached.
    `MessageFormatException` - if this type conversion is invalid.
    `MessageNotReadableException` - if the message is in write-only mode.

### readChar

    public char readChar()
                  throws JMSException

  Description copied from interface: `javax.jms.StreamMessage`
  Reads a Unicode character value from the stream message.

  Specified by:
    `readChar` in interface `StreamMessage`
  Returns:
    a Unicode character from the stream message
  Throws:
    `JMSException` - if the JMS provider fails to read the message due to some internal error.
    `MessageEOFException` - if unexpected end of message stream has been reached.
    `MessageFormatException` - if this type conversion is invalid
    `MessageNotReadableException` - if the message is in write-only mode.

### readInt

    public int readInt()
                throws JMSException

  Description copied from interface: `javax.jms.StreamMessage`
  Reads a 32-bit integer from the stream message.

  Specified by:
    `readInt` in interface `StreamMessage`
  Returns:
    a 32-bit integer value from the stream message, interpreted as an `int`
  Throws:
    `JMSException` - if the JMS provider fails to read the message due to some internal error.
    `MessageEOFException` - if unexpected end of message stream has been reached.
    `MessageFormatException` - if this type conversion is invalid.
    `MessageNotReadableException` - if the message is in write-only mode.

### readLong

    public long readLong()
                  throws JMSException

  Description copied from interface: `javax.jms.StreamMessage`
  Reads a 64-bit integer from the stream message.

  Specified by:
    `readLong` in interface `StreamMessage`
  Returns:
    a 64-bit integer value from the stream message, interpreted as a `long`
  Throws:
    `JMSException` - if the JMS provider fails to read the message due to some internal error.
    `MessageEOFException` - if unexpected end of message stream has been reached.
    `MessageFormatException` - if this type conversion is invalid.
    `MessageNotReadableException` - if the message is in write-only mode.

### readFloat

    public float readFloat()
                    throws JMSException

  Description copied from interface: `javax.jms.StreamMessage`
  Reads a `float` from the stream message.

  Specified by:
    `readFloat` in interface `StreamMessage`
  Returns:
    a `float` value from the stream message
  Throws:
    `JMSException` - if the JMS provider fails to read the message due to some internal error.
    `MessageEOFException` - if unexpected end of message stream has been reached.
    `MessageFormatException` - if this type conversion is invalid.
    `MessageNotReadableException` - if the message is in write-only mode.

### readDouble

    public double readDouble()
                      throws JMSException

  Description copied from interface: `javax.jms.StreamMessage`
  Reads a `double` from the stream message.

  Specified by:
    `readDouble` in interface `StreamMessage`
  Returns:
    a `double` value from the stream message
  Throws:
    `JMSException` - if the JMS provider fails to read the message due to some internal error.
    `MessageEOFException` - if unexpected end of message stream has been reached.
    `MessageFormatException` - if this type conversion is invalid.
    `MessageNotReadableException` - if the message is in write-only mode.

### readBytes

    public int readBytes(byte[] value)
                  throws JMSException

  Description copied from interface: `javax.jms.StreamMessage`
  Reads a byte array field from the stream message into the specified `byte[]` object (the read buffer).

  To read the field value, `readBytes` should be successively called until it returns a value less than the length of the read buffer. The value of the bytes in the buffer following the last byte read is undefined.

  If `readBytes` returns a value equal to the length of the buffer, a subsequent `readBytes` call must be made. If there are no more bytes to be read, this call returns -1.

  If the byte array field value is null, `readBytes` returns -1.

  If the byte array field value is empty, `readBytes` returns 0.

  Once the first `readBytes` call on a `byte[]` field value has been made, the full value of the field must be read before it is valid to read the next field. An attempt to read the next field before that has been done will throw a `MessageFormatException`.

  To read the byte field value into a new `byte[]` object, use the `readObject` method.

  Specified by:
    `readBytes` in interface `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 byte field has been reached
  Throws:
    `JMSException` - if the JMS provider fails to read the message due to some internal error.
    `MessageEOFException` - if unexpected end of message stream has been reached.
    `MessageFormatException` - if this type conversion is invalid.
    `MessageNotReadableException` - if the message is in write-only mode.
  See Also:
    `StreamMessage.readObject()`

### readString

    public String readString()
                      throws JMSException

  Description copied from interface: `javax.jms.StreamMessage`
  Reads a `String` from the stream message.

  Specified by:
    `readString` in interface `StreamMessage`
  Returns:
    a Unicode string from the stream message
  Throws:
    `JMSException` - if the JMS provider fails to read the message due to some internal error.
    `MessageEOFException` - if unexpected end of message stream has been reached.
    `MessageFormatException` - if this type conversion is invalid.
    `MessageNotReadableException` - if the message is in write-only mode.

### readObject

    public Object readObject()
                      throws JMSException

  Description copied from interface: `javax.jms.StreamMessage`
  Reads an object from the stream message.

  This method can be used to return, in objectified format, an object in the Java programming language ("Java object") that has been written to the stream with the equivalent `writeObject` method call, or its equivalent primitive `writetype` method.

  Note that byte values are returned as `byte[]`, not `Byte[]`.

  An attempt to call `readObject` to read a byte field value into a new `byte[]` object before the full value of the byte field has been read will throw a `MessageFormatException`.

  Specified by:
    `readObject` in interface `StreamMessage`
  Returns:
    a Java object from the stream message, in objectified format (for example, if the object was written as an `int`, an `Integer` is returned)
  Throws:
    `JMSException` - if the JMS provider fails to read the message due to some internal error.
    `MessageEOFException` - if unexpected end of message stream has been reached.
    `MessageFormatException` - if this type conversion is invalid.
    `MessageNotReadableException` - if the message is in write-only mode.
  See Also:
    `StreamMessage.readBytes(byte[] value)`

### writeBoolean

    public void writeBoolean(boolean value)
                      throws JMSException

  Description copied from interface: `javax.jms.StreamMessage`
  Writes a `boolean` to the stream message. The value `true` is written as the value `(byte)1`; the value `false` is written as the value `(byte)0`.

  Specified by:
    `writeBoolean` in interface `StreamMessage`
  Parameters:
    `value` - the `boolean` value to be written
  Throws:
    `JMSException` - if the JMS provider fails to write the message due to some internal error.
    `MessageNotWriteableException` - if the message is in read-only mode.

### writeByte

    public void writeByte(byte value)
                   throws JMSException

  Description copied from interface: `javax.jms.StreamMessage`
  Writes a `byte` to the stream message.

  Specified by:
    `writeByte` in interface `StreamMessage`
  Parameters:
    `value` - the `byte` value to be written
  Throws:
    `JMSException` - if the JMS provider fails to write the message due to some internal error.
    `MessageNotWriteableException` - if the message is in read-only mode.

### writeShort

    public void writeShort(short value)
                    throws JMSException

  Description copied from interface: `javax.jms.StreamMessage`
  Writes a `short` to the stream message.

  Specified by:
    `writeShort` in interface `StreamMessage`
  Parameters:
    `value` - the `short` value to be written
  Throws:
    `JMSException` - if the JMS provider fails to write the message due to some internal error.
    `MessageNotWriteableException` - if the message is in read-only mode.

### writeChar

    public void writeChar(char value)
                   throws JMSException

  Description copied from interface: `javax.jms.StreamMessage`
  Writes a `char` to the stream message.

  Specified by:
    `writeChar` in interface `StreamMessage`
  Parameters:
    `value` - the `char` value to be written
  Throws:
    `JMSException` - if the JMS provider fails to write the message due to some internal error.
    `MessageNotWriteableException` - if the message is in read-only mode.

### writeInt

    public void writeInt(int value)
                  throws JMSException

  Description copied from interface: `javax.jms.StreamMessage`
  Writes an `int` to the stream message.

  Specified by:
    `writeInt` in interface `StreamMessage`
  Parameters:
    `value` - the `int` value to be written
  Throws:
    `JMSException` - if the JMS provider fails to write the message due to some internal error.
    `MessageNotWriteableException` - if the message is in read-only mode.

### writeLong

    public void writeLong(long value)
                   throws JMSException

  Description copied from interface: `javax.jms.StreamMessage`
  Writes a `long` to the stream message.

  Specified by:
    `writeLong` in interface `StreamMessage`
  Parameters:
    `value` - the `long` value to be written
  Throws:
    `JMSException` - if the JMS provider fails to write the message due to some internal error.
    `MessageNotWriteableException` - if the message is in read-only mode.

### writeFloat

    public void writeFloat(float value)
                    throws JMSException

  Description copied from interface: `javax.jms.StreamMessage`
  Writes a `float` to the stream message.

  Specified by:
    `writeFloat` in interface `StreamMessage`
  Parameters:
    `value` - the `float` value to be written
  Throws:
    `JMSException` - if the JMS provider fails to write the message due to some internal error.
    `MessageNotWriteableException` - if the message is in read-only mode.

### writeDouble

    public void writeDouble(double value)
                     throws JMSException

  Description copied from interface: `javax.jms.StreamMessage`
  Writes a `double` to the stream message.

  Specified by:
    `writeDouble` in interface `StreamMessage`
  Parameters:
    `value` - the `double` value to be written
  Throws:
    `JMSException` - if the JMS provider fails to write the message due to some internal error.
    `MessageNotWriteableException` - if the message is in read-only mode.

### writeBytes

    public void writeBytes(byte[] value)
                    throws JMSException

  Description copied from interface: `javax.jms.StreamMessage`
  Writes a byte array field to the stream message.

  The byte array `value` is written to the message as a byte array field. Consecutively written byte array fields are treated as two distinct fields when the fields are read.

  Specified by:
    `writeBytes` in interface `StreamMessage`
  Parameters:
    `value` - the byte array value to be written
  Throws:
    `JMSException` - if the JMS provider fails to write the message due to some internal error.
    `MessageNotWriteableException` - if the message is in read-only mode.

### writeBytes

    public final void writeBytes(byte[] value,
                                 int offset,
                                 int length)
                          throws JMSException

  Description copied from interface: `javax.jms.StreamMessage`
  Writes a portion of a byte array as a byte array field to the stream message.

  The a portion of the byte array `value` is written to the message as a byte array field. Consecutively written byte array fields are treated as two distinct fields when the fields are read.

  Specified by:
    `writeBytes` in interface `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:
    `JMSException` - if the JMS provider fails to write the message due to some internal error.
    `MessageNotWriteableException` - if the message is in read-only mode.

### writeString

    public void writeString(String value)
                     throws JMSException

  Description copied from interface: `javax.jms.StreamMessage`
  Writes a `String` to the stream message.

  Specified by:
    `writeString` in interface `StreamMessage`
  Parameters:
    `value` - the `String` value to be written
  Throws:
    `JMSException` - if the JMS provider fails to write the message due to some internal error.
    `MessageNotWriteableException` - if the message is in read-only mode.

### writeObject

    public final void writeObject(Object value)
                           throws JMSException

  Description copied from interface: `javax.jms.StreamMessage`
  Writes an object to the stream message.

  This method works only for the objectified primitive object types (`Integer`, `Double`, `Long` ...), `String` objects, and byte arrays.

  Specified by:
    `writeObject` in interface `StreamMessage`
  Parameters:
    `value` - the Java object to be written
  Throws:
    `JMSException` - if the JMS provider fails to write the message due to some internal error.
    `MessageFormatException` - if the object is invalid.
    `MessageNotWriteableException` - if the message is in read-only mode.

### reset

    public final void reset()
                     throws JMSException

  Description copied from interface: `javax.jms.StreamMessage`
  Puts the message body in read-only mode and repositions the stream to the beginning.

  Specified by:
    `reset` in interface `StreamMessage`
  Throws:
    `JMSException` - if the JMS provider fails to reset the message due to some internal error.
    `MessageFormatException` - if the message has an invalid format.

### setReceived

    public void setReceived(boolean received)
                     throws JMSException

  Overrides:
    `setReceived` in class `MessageImpl`
  Throws:
    `JMSException`

### checkWrite

    protected void checkWrite()
                       throws JMSException

  Overrides:
    `checkWrite` in class `MessageImpl`
  Throws:
    `JMSException`

### toString

    public String toString()

  Overrides:
    `toString` in class `MessageImpl`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD