Hitachi

Hitachi Microservices Platform - Paxos Commit Transaction Orchestrator ユーザーズガイド


7.3.14 PctoInputStreamクラス(SQL-Participant限定)

説明

バイト入力ストリームを表現するクラスです。

メソッド

PctoInputStreamクラスのメソッドの一覧を次の表に示します。

表7‒24 PctoInputStreamクラスのメソッドの一覧

メソッド

説明

available()

この入力ストリームのメソッドの次の呼び出しによって、ブロックをしないでこの入力ストリームから読み込むことができる(またはスキップできる)データの推定バイト数を返します。

close()

この入力ストリームを閉じて、そのストリームに関連するすべてのシステム・リソースを解放します。

mark(int readlimit)

この入力ストリームの現在位置にマークを設定します。

markSupported()

この入力ストリームが、markおよびresetメソッドをサポートしているかどうかを判定します。

read()

入力ストリームから最初の1バイトのデータを読み込み、0 - 255の範囲のintでバイト値を返します。

read(byte[] b)

入力ストリームから数バイトのデータを読み込み、それを引数bに指定したバッファ配列に読み込みます。また、実際に読み込んだバイト数を整数で返します。

read(byte[] b, int off, int len)

引数lenに指定したバイト数のデータを、入力ストリームからbyte配列に読み込みます。

reset()

このストリームを、この入力ストリームで最後にmarkメソッドが呼び出されたときの位置に再配置します。

skip(long n)

この入力ストリームから、引数nに指定したバイト数のデータをスキップして破棄します。

パッケージ名称
jp.co.Hitachi.soft.hmppcto.jdbc.client
〈この項の構成〉

(1) available()

説明

この入力ストリームのメソッドの次の呼び出しによって、ブロックをしないでこの入力ストリームから読み込むことができる(またはスキップできる)データの推定バイト数を返します。次の呼び出しは、同じスレッドのときもあれば、別のスレッドのときもあります。大きなデータを1回で読み込んだり、スキップしたりすることでブロックされることはありませんが、読み込むデータまたはスキップするデータのバイト数が少なくなることはあります。

形式
public int available() throws java.io.IOException
引数

なし。

戻り値

ブロックをしないでこの入力ストリームから読み込むことができる(またはスキップできる)データの推定バイト数を返します。入力ストリームの終わりに達した場合は、0を返します。

例外

PctoIOCommunicationFailureException例外とPctoIOInternalContradictionException例外以外は、Participantが送出した例外を送出します。

java.io.IOException:

入出力エラーが発生した場合に送出します。

PctoIOCommunicationFailureException:

Entity-ServiceとParticipant間の通信に失敗した場合に送出します。

PctoIOInternalContradictionException:

Participantの内部で障害が発生した場合に送出します。

PctoIOTransactionStartException:

トランザクションの範囲外で実行されたためトランザクションブランチの開始に失敗した場合に送出します。

(2) close()

説明

この入力ストリームを閉じて、ストリームに関連するすべてのシステム・リソースを解放します。

形式
public void close() throws java.io.IOException
引数

なし。

戻り値

なし。

例外

PctoIOCommunicationFailureException例外とPctoIOInternalContradictionException例外以外は、Participantが送出した例外を送出します。

java.io.IOException:

入出力エラーが発生した場合に送出します。

PctoIOCommunicationFailureException:

Entity-ServiceとParticipant間の通信に失敗した場合に送出します。

PctoIOInternalContradictionException:

Participantの内部で障害が発生した場合に送出します。

PctoIOTransactionStartException:

トランザクションの範囲外で実行されたためトランザクションブランチの開始に失敗した場合に送出します。

(3) mark(int readlimit)

説明

この入力ストリームの現在位置にマークを設定します。これに続いてresetメソッドを呼び出すと、最後にマークされた位置にこのストリームが再配置されます。以降の読み込みでは、同じバイト数のデータが再度読み込まれます。

引数readlimitでは、この入力ストリームに対してマーク位置が無効になる前にこの引数が指定するバイト数を読み込むように指示します。

形式
public void mark(int readlimit)
引数
int readlimit:

マーク位置が無効になる前に読み込み可能なバイト数の上限を指定します。

戻り値

なし。

例外
java.lang.RuntimeException:

次の例外をcauseに設定したjava.lang.RuntimeExceptionを送出します。

  • PctoIOCommunicationFailureException

    Entity-ServiceとParticipant間の通信に失敗した場合

  • PctoIOInternalContradictionException

    Participantの内部で障害が発生した場合

  • PctoIOTransactionStartException

    トランザクションの範囲外で実行されたためトランザクションブランチの開始に失敗した場合

(4) markSupported()

説明

この入力ストリームが、markメソッドおよびresetメソッドをサポートしているかどうかを判定します。markメソッドおよびresetがサポートされているかどうかは、入力ストリーム・インスタンスごとに異なります。

形式
public boolean markSupported()
引数

なし。

戻り値

このストリーム・インスタンスがmarkメソッドおよびresetメソッドをサポートしている場合はtrueを、それ以外の場合はfalseを返します。

例外
java.lang.RuntimeException:

次の例外をcauseに設定したjava.lang.RuntimeExceptionを送出します。

  • PctoIOCommunicationFailureException

    Entity-ServiceとParticipant間の通信に失敗した場合

  • PctoIOInternalContradictionException

    Participantの内部で障害が発生した場合

  • PctoIOTransactionStartException

    トランザクションの範囲外で実行されたためトランザクションブランチの開始に失敗した場合

(5) read()

説明

入力ストリームから最初の1バイトのデータを読み込み、0 - 255の範囲のintでバイト値を返します。入力ストリームの終わりに達したために読み込むデータがない場合は、-1が返されます。

このメソッドは、入力データが読み込めるようになるか、入力ストリームの終わりが検出されるか、または例外がスローされるまでブロックされます。

形式
public int read() throws java.io.IOException
引数

なし。

戻り値

入力ストリームの最初の1バイトのデータを、0 - 255の範囲のintで返します。ストリームの終わりに達した場合は、-1を返します。

例外

PctoIOCommunicationFailureException例外とPctoIOInternalContradictionException例外以外は、Participantが送出した例外を送出します。

java.io.IOException:

入出力エラーが発生した場合に送出します。

PctoIOCommunicationFailureException:

Entity-ServiceとParticipant間の通信に失敗した場合に送出します。

PctoIOInternalContradictionException:

Participantの内部で障害が発生した場合に送出します。

PctoIOTransactionStartException:

トランザクションの範囲外で実行されたためトランザクションブランチの開始に失敗した場合に送出します。

(6) read(byte[] b)

説明

入力ストリームから数バイトのデータを読み込み、それを引数bに指定したバッファ配列に読み込みます。また、実際に読み込んだバイト数を整数で返します。

このメソッドは、入力データが読み込めるようになるか、入力ストリームの終わりが検出されるか、または例外がスローされるまでブロックされます。

なお、引数bの値が0の場合、データは読み込まれません。このとき、戻り値には0が返されます。

形式
public int read(byte[] b) throws java.io.IOException
引数
byte[] b:

データの読み込み先のバッファを指定します。

戻り値

バッファに格納されたデータのバイト数の合計値を返します。ストリームの終わりに達してデータがない場合は、-1を返します。

例外

PctoIOCommunicationFailureException例外とPctoIOInternalContradictionException例外以外は、Participantが送出した例外を送出します。

java.io.IOException:

次の場合に例外を送出します。

  • ファイルの終わりに達していること以外の理由で最初のバイトを読み込めない場合

  • 入力ストリームが閉じられた場合

  • そのほかの入出力エラーが発生した場合

java.lang.NullPointerException:

引数bがnullである場合に送出します。

PctoIOCommunicationFailureException:

Entity-ServiceとParticipant間の通信に失敗した場合に送出します。

PctoIOInternalContradictionException:

Participantの内部で障害が発生した場合に送出します。

PctoIOTransactionStartException:

トランザクションの範囲外で実行されたためトランザクションブランチの開始に失敗した場合に送出します。

(7) read(byte[] b, int off, int len)

説明

引数lenに指定したバイト数のデータを、入力ストリームからbyte配列に読み込みます。

なお、引数lenに指定したバイト数は、読み込みをする際の最大バイト数のため、実際に読み込まれるバイト数は引数lenの値より少ないこともあります。戻り値には、実際にバッファに読み込まれたデータのバイト数の合計値を整数で返します。

このメソッドは、入力データが読み込めるようになるか、入力ストリームの終わりが検出されるか、または例外がスローされるまでブロックされます。

なお、引数lenの値が0の場合、データは読み込まれません。このとき、戻り値には0が返されます。入力ストリームの終わりに達したために読み込むデータがない場合は、-1が返されます。

形式
public int read(byte[] b, int off, int len) throws java.io.IOException
引数
byte[] b:

データの読み込み先のバッファを指定します。

int off:

データが書き込まれる配列bの開始オフセットを指定します。

int len:

読み込む最大バイト数を指定します。

戻り値

バッファに読み込まれたデータのバイト数の合計値を返します。ストリームの終わりに達してデータがない場合は、-1を返します。

例外

PctoIOCommunicationFailureException例外とPctoIOInternalContradictionException例外以外は、Participantが送出した例外を送出します。

java.io.IOException:

次の場合に例外を送出します。

  • ファイルの終わりに達していること以外の理由で最初のバイトを読み込めない場合

  • 入力ストリームが閉じられた場合

  • そのほかの入出力エラーが発生した場合

java.lang.NullPointerException:

引数bがnullである場合に送出します。

java.lang.IndexOutOfBoundsException:

次の場合に例外を送出します。

  • 引数offが負の値の場合

  • 引数lenが負の値の場合

  • 引数lenがb.length - offより大きい場合

PctoIOCommunicationFailureException:

Entity-ServiceとParticipant間の通信に失敗した場合に送出します。

PctoIOInternalContradictionException:

Participantの内部で障害が発生した場合に送出します。

PctoIOTransactionStartException:

トランザクションの範囲外で実行されたためトランザクションブランチの開始に失敗した場合に送出します。

(8) reset()

説明

このストリームを、この入力ストリームで最後にmarkメソッドが呼び出されたときの位置に再配置します。

形式
public void reset() throws java.io.IOException
引数

なし。

戻り値

なし。

例外

PctoIOCommunicationFailureException例外とPctoIOInternalContradictionException例外以外は、Participantが送出した例外を送出します。

java.io.IOException:

次の場合に例外を送出します。

  • ストリームにマークが設定されていない場合

  • マークが無効の場合

PctoIOCommunicationFailureException:

Entity-ServiceとParticipant間の通信に失敗した場合に送出します。

PctoIOInternalContradictionException:

Participantの内部で障害が発生した場合に送出します。

PctoIOTransactionStartException:

トランザクションの範囲外で実行されたためトランザクションブランチの開始に失敗した場合に送出します。

(9) skip(long n)

説明

この入力ストリームから、引数nに指定したバイト数のデータをスキップして破棄します。

なお、引数nに指定したバイト数のデータをスキップする際に入力ストリームの終わりに達した場合、スキップされるデータは引数nに指定したバイト数よりも少なくなります。戻り値には、実際にスキップされたデータのバイト数が返されます。

形式
public long skip(long n) throws java.io.IOException
引数
long n:

スキップするバイト数を指定します。

戻り値

実際にスキップされたデータのバイト数を返します。

例外

PctoIOCommunicationFailureException例外とPctoIOInternalContradictionException例外以外は、Participantが送出した例外を送出します。

java.io.IOException:

次の場合に例外を送出します。

  • ストリームがシークをサポートしない場合

  • そのほかの入出力エラーが発生した場合

PctoIOCommunicationFailureException:

Entity-ServiceとParticipant間の通信に失敗した場合に送出します。

PctoIOInternalContradictionException:

Participantの内部で障害が発生した場合に送出します。

PctoIOTransactionStartException:

トランザクションの範囲外で実行されたためトランザクションブランチの開始に失敗した場合に送出します。