Cosminexus V9 アプリケーションサーバ Cosminexus Reliable Messaging

[目次][用語][索引][前へ][次へ]

7.4.1 BytesMessageインタフェース

BytesMessageインタフェースはバイトストリームを含むメッセージを送受信するために使用します。BytesMessageインタフェースはMessageインタフェースを継承しているため,Messageインタフェースの機能を持っています。

<この項の構成>
(1) ペイロードの設定と取得
(2) 形式
(3) フィールド
(4) メソッド

(1) ペイロードの設定と取得

BytesMessageインタフェースを使用することによってペイロードを設定および取得できます。このペイロードはバイトストリームです。JMSメッセージの各要素については,「2.5.1 JMSメッセージの構成」を参照してください。

(2) 形式

 
public interface BytesMessage extends Message
{
  public boolean readBoolean() throws JMSException;
  public byte    readByte() throws JMSException;
  public int     readBytes(byte[] value) throws JMSException;
  public int     readBytes(byte[] value, int length)
                   throws JMSException;
  public char    readChar() throws JMSException;
  public double  readDouble() throws JMSException;
  public float   readFloat() throws JMSException;
  public int     readInt() throws JMSException;
  public long    readLong() throws JMSException;
  public short   readShort() throws JMSException;
  public int     readUnsignedByte() throws JMSException;
  public int     readUnsignedShort() throws JMSException;
  public java.lang.String
                 readUTF() throws JMSException;
  public void    reset() throws JMSException;
  public void    writeBoolean(boolean value) throws JMSException;
  public void    writeByte(byte value) throws JMSException;
  public void    writeBytes(byte[] value) throws JMSException;
  public void    writeBytes(byte[] value, int offset, int length)
                   throws JMSException;
  public void    writeChar(char value) throws JMSException;
  public void    writeDouble(double value) throws JMSException;
  public void    writeFloat(float value) throws JMSException;
  public void    writeInt(int value) throws JMSException;
  public void    writeLong(long value) throws JMSException;
  public void    writeObject(java.lang.Object value)
                   throws JMSException;
  public void    writeShort(short value) throws JMSException;
  public void    writeUTF(java.lang.String value) throws JMSException;
}
 

(3) フィールド

ありません。

(4) メソッド

「(2) 形式」に記載した順序で各メソッドを説明します。

(a) readBooleanメソッド
 
public boolean readBoolean() throws JMSException
 

バイトストリームからboolean型の値を読み取ります。

(b) readByteメソッド
 
public byte readByte() throws JMSException
 

バイトストリームから符号付き8ビット値を読み取ります。

(c) readBytesメソッド
 
public int readBytes(byte[] value) throws JMSException
 

バイトストリームからバイト配列を読み取ります。バイトストリームの長さより配列valueの長さが短い場合,配列valueの長さまでのバイトストリームを読み取ることができます。残りのバイトストリームも再度メソッドを発行することによって配列valueの長さまで読み取ることができます。バイトストリームの長さより配列valueの長さが長い場合,バイトストリームをすべて読み取ることができます。

このとき,読み取られる総バイト数を示す戻り値は,配列valueの長さよりも短くなり,バイトストリームから読み取るバイトが残っていないことを表します。バイトストリームからさらに読み取りを実行すると,-1を返します。

(d) readBytesメソッド
 
public int readBytes(byte[] value, int length) throws JMSException
 

バイトストリームの一部を読み取ります。

(e) readCharメソッド
 
public char readChar() throws JMSException
 

バイトストリームからUnicode文字値を読み取ります。

(f) readDoubleメソッド
 
public double readDouble() throws JMSException
 

バイトストリームからdouble値を読み取ります。

(g) readFloatメソッド
 
public float readFloat() throws JMSException
 

バイトストリームからfloat値を読み取ります。

(h) readIntメソッド
 
public int readInt() throws JMSException
 

バイトストリームから符号付き32ビット整数を読み取ります。

(i) readLongメソッド
 
public long readLong() throws JMSException
 

バイトストリームから符号付き64ビット整数を読み取ります。

(j) readShortメソッド
 
public short readShort() throws JMSException
 

バイトストリームから符号付き16ビット数を読み取ります。

(k) readUnsignedByteメソッド
 
public int readUnsignedByte() throws JMSException
 

バイトストリームから符号なし8ビット数を読み取ります。

(l) readUnsignedShortメソッド
 
public int readUnsignedShort() throws JMSException
 

バイトストリームから符号なし16ビット数を読み取ります。

(m) readUTFメソッド
 
public java.lang.String readUTF() throws JMSException
 

修正UTF-8形式を使用してエンコードされた文字列をバイトストリームから読み取ります。一度の発行で読み取られる文字列は65535バイトまでです。

(n) resetメソッド
 
public void reset() throws JMSException
 

ペイロードを書き込み専用モードから読み取り専用モードに移行してから,バイトストリームを先頭に再配置します。

(o) writeBooleanメソッド
 
public void writeBoolean(boolean value) throws JMSException
 

booleanをバイトストリームに1バイト値として書き込みます。

(p) writeByteメソッド
 
public void writeByte(byte value) throws JMSException
 

byteをバイトストリームに1バイト値として書き込みます。

(q) writeBytesメソッド
 
public void writeBytes(byte[] value) throws JMSException
 

バイト配列をバイトストリームに書き込みます。

(r) writeBytesメソッド
 
public void writeBytes(byte[] value, int offset, int length)
  throws JMSException
 

バイト配列の一部をバイトストリームに書き込みます。

(s) writeCharメソッド
 
public void writeChar(char value) throws JMSException
 

上位バイトを先頭とする2バイト値として,char型引数をバイトストリームに書き込みます。

(t) writeDoubleメソッド
 
public void writeDouble(double value) throws JMSException
 

Double.doubleToLongBits()メソッドを使用してdouble型引数をlongに変換し,上位バイトを先頭とする8バイトとして,long値をバイトストリームに書き込みます。

(u) writeFloatメソッド
 
public void writeFloat(float value) throws JMSException
 

Float.floatToIntBits()メソッドを使用してfloat型引数をintに変換し,上位バイトを先頭とする4バイトとして,int値をバイトストリームに書き込みます。

(v) writeIntメソッド
 
public void writeInt(int value) throws JMSException
 

上位バイトを先頭とする4バイト値として,int型引数をバイトストリームに書き込みます。

(w) writeLongメソッド
 
public void writeLong(long value) throws JMSException
 

上位バイトを先頭とする8バイト値として,long型引数をバイトストリームに書き込みます。

(x) writeObjectメソッド
 
public void writeObject(java.lang.Object value) throws JMSException
 

オブジェクトをバイトストリームに書き込みます。引数に設定できる型はオブジェクト化されたプリミティブオブジェクト型(Integer,DoubleおよびLongなど),Stringオブジェクトおよびバイト配列だけです。

(y) writeShortメソッド
 
public void writeShort(short value) throws JMSException
 

上位バイトを先頭とする2バイト値として,short型引数をバイトストリームに書き込みます。

(z) writeUTFメソッド
 
public void writeUTF(java.lang.String value) throws JMSException
 

マシンに依存しないUTF-8エンコーディング形式を使用して,文字列をバイトストリームに書き込みます。一度の発行で書き込まれる文字列は65535バイトまでです。