⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 streammessage.java

📁 JAVA 消息服务(JMS)定义了Java 中访问消息中间件的接口,里边有实现消息服务的基础源码,可以开发高级应用
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
/* * @(#)StreamMessage.java	1.40 02/04/09 * * Copyright 1997-2002 Sun Microsystems, Inc. All Rights Reserved. * *  SUN PROPRIETARY/CONFIDENTIAL. * This software is the proprietary information of Sun Microsystems, Inc.   * Use is subject to license terms. *  */package javax.jms;/** A <CODE>StreamMessage</CODE> object is used to send a stream of primitive  * types in the Java programming language. It is filled and read sequentially.  * It inherits from the <CODE>Message</CODE> interface  * and adds a stream message body. Its methods are based largely on those  * found in <CODE>java.io.DataInputStream</CODE> and  * <CODE>java.io.DataOutputStream</CODE>.  *  * <P>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 <CODE>StreamMessage.writeInt(6)</CODE> is  * equivalent to <CODE>StreamMessage.writeObject(new Integer(6))</CODE>.  * 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.  *  * <P>When the message is first created, and when <CODE>clearBody</CODE>  * is called, the body of the message is in write-only mode. After the   * first call to <CODE>reset</CODE> has been made, the message body is in   * read-only mode.   * After a message has been sent, the client that sent it can retain and   * modify it without affecting the message that has been sent. The same message  * object can be sent multiple times.  * When a message has been received, the provider has called   * <CODE>reset</CODE> so that the message body is in read-only mode for the client.  *   * <P>If <CODE>clearBody</CODE> is called on a message in read-only mode,   * the message body is cleared and the message body is in write-only mode.  *   * <P>If a client attempts to read a message in write-only mode, a   * <CODE>MessageNotReadableException</CODE> is thrown.  *   * <P>If a client attempts to write a message in read-only mode, a   * <CODE>MessageNotWriteableException</CODE> is thrown.  *  * <P><CODE>StreamMessage</CODE> objects support the following conversion   * table. The marked cases must be supported. The unmarked cases must throw a   * <CODE>JMSException</CODE>. The <CODE>String</CODE>-to-primitive conversions   * may throw a runtime exception if the primitive's <CODE>valueOf()</CODE>   * method does not accept it as a valid <CODE>String</CODE> representation of   * the primitive.  *  * <P>A value written as the row type can be read as the column type.  *  * <PRE>  * |        | 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  * |----------------------------------------------------------------------  * </PRE>  *  * <P>Attempting to read a null value as a primitive type must be treated  * as calling the primitive's corresponding <code>valueOf(String)</code>   * conversion method with a null value. Since <code>char</code> does not   * support a <code>String</code> conversion, attempting to read a null value   * as a <code>char</code> must throw a <code>NullPointerException</code>.  *  * @version     1.0 - 6 August 1998  * @author      Mark Hapner  * @author      Rich Burridge  *  * @see         javax.jms.Session#createStreamMessage()  * @see         javax.jms.BytesMessage  * @see         javax.jms.MapMessage  * @see         javax.jms.Message  * @see         javax.jms.ObjectMessage  * @see         javax.jms.TextMessage  */public interface StreamMessage extends Message {    /** Reads a <code>boolean</code> from the stream message.      *      * @return the <code>boolean</code> value read      *      * @exception JMSException if the JMS provider fails to read the message      *                         due to some internal error.      * @exception MessageEOFException if unexpected end of message stream has      *                                been reached.           * @exception MessageFormatException if this type conversion is invalid.      * @exception MessageNotReadableException if the message is in write-only       *                                        mode.      */    boolean     readBoolean() throws JMSException;    /** Reads a <code>byte</code> value from the stream message.      *      * @return the next byte from the stream message as a 8-bit      * <code>byte</code>      *      * @exception JMSException if the JMS provider fails to read the message      *                         due to some internal error.      * @exception MessageEOFException if unexpected end of message stream has      *                                been reached.           * @exception MessageFormatException if this type conversion is invalid.      * @exception MessageNotReadableException if the message is in write-only       *                                        mode.      */     byte     readByte() throws JMSException;    /** Reads a 16-bit integer from the stream message.      *      * @return a 16-bit integer from the stream message      *      * @exception JMSException if the JMS provider fails to read the message      *                         due to some internal error.      * @exception MessageEOFException if unexpected end of message stream has      *                                been reached.           * @exception MessageFormatException if this type conversion is invalid.      * @exception MessageNotReadableException if the message is in write-only       *                                        mode.      */     short     readShort() throws JMSException;    /** Reads a Unicode character value from the stream message.      *      * @return a Unicode character from the stream message      *      * @exception JMSException if the JMS provider fails to read the message      *                         due to some internal error.      * @exception MessageEOFException if unexpected end of message stream has      *                                been reached.           * @exception MessageFormatException if this type conversion is invalid            * @exception MessageNotReadableException if the message is in write-only       *                                        mode.      */     char     readChar() throws JMSException;    /** Reads a 32-bit integer from the stream message.      *      * @return a 32-bit integer value from the stream message, interpreted      * as an <code>int</code>      *      * @exception JMSException if the JMS provider fails to read the message      *                         due to some internal error.      * @exception MessageEOFException if unexpected end of message stream has      *                                been reached.           * @exception MessageFormatException if this type conversion is invalid.      * @exception MessageNotReadableException if the message is in write-only       *                                        mode.      */     int     readInt() throws JMSException;    /** Reads a 64-bit integer from the stream message.      *      * @return a 64-bit integer value from the stream message, interpreted as      * a <code>long</code>      *      * @exception JMSException if the JMS provider fails to read the message      *                         due to some internal error.      * @exception MessageEOFException if unexpected end of message stream has      *                                been reached.           * @exception MessageFormatException if this type conversion is invalid.      * @exception MessageNotReadableException if the message is in write-only       *                                        mode.      */     long     readLong() throws JMSException;    /** Reads a <code>float</code> from the stream message.      *      * @return a <code>float</code> value from the stream message      *      * @exception JMSException if the JMS provider fails to read the message      *                         due to some internal error.      * @exception MessageEOFException if unexpected end of message stream has      *                                been reached.           * @exception MessageFormatException if this type conversion is invalid.      * @exception MessageNotReadableException if the message is in write-only       *                                        mode.      */     float     readFloat() throws JMSException;    /** Reads a <code>double</code> from the stream message.      *      * @return a <code>double</code> value from the stream message      *      * @exception JMSException if the JMS provider fails to read the message      *                         due to some internal error.      * @exception MessageEOFException if unexpected end of message stream has      *                                been reached.           * @exception MessageFormatException if this type conversion is invalid.      * @exception MessageNotReadableException if the message is in write-only       *                                        mode.      */     double     readDouble() throws JMSException;    /** Reads a <CODE>String</CODE> from the stream message.      *      * @return a Unicode string from the stream message      *      * @exception JMSException if the JMS provider fails to read the message      *                         due to some internal error.      * @exception MessageEOFException if unexpected end of message stream has      *                                been reached.           * @exception MessageFormatException if this type conversion is invalid.      * @exception MessageNotReadableException if the message is in write-only       *                                        mode.      */     String     readString() throws JMSException;    /** Reads a byte array field from the stream message into the       * specified <CODE>byte[]</CODE> object (the read buffer).       *       * <P>To read the field value, <CODE>readBytes</CODE> 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.      *       * <P>If <CODE>readBytes</CODE> returns a value equal to the length of the       * buffer, a subsequent <CODE>readBytes</CODE> call must be made. If there       * are no more bytes to be read, this call returns -1.      *       * <P>If the byte array field value is null, <CODE>readBytes</CODE>       * returns -1.      *      * <P>If the byte array field value is empty, <CODE>readBytes</CODE>       * returns 0.      *       * <P>Once the first <CODE>readBytes</CODE> call on a <CODE>byte[]</CODE>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -