• 検索結果がありません。

public class MailBox 標準仕様 メールボックスアタッチクラス。

ドキュメント内 JTRON 2.1仕様 (ページ 168-175)

ITRON メールボックスを操作するためのクラスである。

■クラス定義

package org.jtron.attach;

public class MailBox {

public MailBox(int mbxid);

public MailBox(int mbxid, T_CMBX pk_cmbx);

public MailBox(T_CMBX pk_cmbx);

public int getId();

public void delete();

public void send(ItronMemory pk_msg);

public ItronMemory receive(int length);

public ItronMemory pollReceive(int length);

public ItronMemory receive(int length, int tmout);

public T_RMBX refer(int length);

public static void seekNextToHeader(ItronMemory msg);

public static int readPriority(ItronMemory msg);

public static void writePriority(ItronMemory msg, int msgpri);

}

■コンストラクタ

 

public MailBox(int mbxid) throws JtronException;

【パラメータ】

int mbxid 既存の接続対象のメールボックスID 番号(★)

【例外】

JtronException JTRON 例外クラス(ITRON による例 外クラスまたはJTRONによる例外ク ラス)

【機能】

メールボックスIDを指定して、既存のメールボックスに接続するイン スタンスを生成する。

public MailBox(int mbxid, T_CMBX pk_cmbx)

throws ItronCauseException;

【パラメータ】

int mbxid 生成対象のメールボックスのID番号 (★)

T_CMBX pk_cmbx メールボックス生成情報クラス

【例外】

ItronCauseException ITRONによる例外クラス

【機能】

cre_mbxサービスコール呼び出しに相当する。

メールボックスを生成し、接続するインスタンスを生成する。

public MailBox(T_CMBX pk_cmbx)

throws ItronCauseException;

【パラメータ】

154 

T_CMBX pk_cmbx メールボックス生成情報クラス

【例外】

ItronCauseException ITRONによる例外クラス

【機能】

acre_mbxサービスコール呼び出しに相当する。

メールボックスを生成し、接続するインスタンスを生成する。

■メソッド

public int getId();

【戻り値】

int メールボックスID(★)

【機能】

接続しているメールボックスのメールボックスIDを返す。

public void delete() throws ItronCauseException;

【例外】

ItronCauseException ITRONによる例外クラス

【機能】

del_mbxサービスコール呼び出しに相当する。

public void send(ItronMemory pk_msg)

throws ItronCauseException;

【パラメータ】

ItronMemory pk_msg メールボックスへ送信するメッセー ジデータ

 

【例外】

ItronCauseException ITRONによる例外クラス

【機能】

snd_mbxサービスコール呼び出しに相当する。

public ItronMemory receive(int length)

throws JtronException;

【パラメータ】

int length 受信メッセージの長さ(★)

【戻り値】

ItronMemory 受信メッセージの ItronMemoryク ラス

【例外】

JtronException JTRON 例外クラス(ITRON による例 外クラスまたはJTRONによる例外ク ラス)

【機能】

rcv_mbxサービスコール呼び出しに相当する。

指定したlengthは、返されるItronMemoryの長さになる。

public ItronMemory pollReceive(int length)

throws JtronException;

【パラメータ】

int length 受信メッセージの長さ(★)

【戻り値】

ItronMemory 受信メッセージの ItronMemoryク ラス

156 

【例外】

JtronException JTRON 例外クラス(ITRON による例 外クラスまたはJTRONによる例外ク ラス)

【機能】

prcv_mbxサービスコール呼び出しに相当する。

指定したlengthは、返されるItronMemoryの長さになる。

public ItronMemory receive(int length, int tmout) throws JtronException;

【パラメータ】

int length 受信メッセージの長さ(★) int tmout タイムアウト指定(単位:ms)(★)

【戻り値】

ItronMemory 受信メッセージの ItronMemoryク ラス

【例外】

JtronException JTRON 例外クラス(ITRON による例 外クラスまたはJTRONによる例外ク ラス)

【機能】

trcv_mbxサービスコール呼び出しに相当する。

指定したlengthは、返されるItronMemoryの長さになる。

public T_RMBX refer(int length) throws JtronException;

【パラメータ】

int length 戻り値にて取得されるメッセージキ

ューの先頭のメッセージデータの長

  さ(★)

【戻り値】

T_RMBX メールボックス状態クラス

【例外】

JtronException JTRON 例外クラス(ITRON による例 外クラスまたはJTRONによる例外ク ラス)

【機能】

ref_mbxサービスコール呼び出しに相当する。

指定した length は、返される T_RMBX のインスタンス内メンバ pk_msgの長さになる。

static

メソッド

public static void seekNextToHeader(ItronMemory msg);

【パラメータ】

ItronMemory msg メッセージのItronMemoryクラス

【機能】

  メッセージのアクセス位置をメッセージヘッダの直後に移動する。

この位置は優先度付きメッセージの場合優先度値、そうでない場合メ ッセージ本体の位置である。つまりこのメソッドは、優先度無しメッ セージのメッセージ本体をアクセスする前に呼び出すためのものであ る。

public static int readPriority(ItronMemory msg);

【パラメータ】

ItronMemory msg メッセージのItronMemoryクラス

【戻り値】

158 

int メッセージ優先度(★)

【機能】

  優先度付きメッセージの優先度値を返す。このメソッドが呼び出さ れると、アクセス位置を優先度値の直後に移動する。これはメッセー ジ本体の位置である。つまり、このメソッドは優先度付きメッセージ のメッセージ本体を読み込む前に呼び出すためのものである。

public static void writePriority(ItronMemory msg, int msgpri);

【パラメータ】

ItronMemory msg メッセージのItronMemoryクラス int msgpri メッセージ優先度(★)

【機能】

  優先度付きメッセージの優先度値を設定する。このメソッドが呼び 出されると、アクセス位置を優先度値の直後に移動する。これはメッ セージ本体の位置である。つまり、このメソッドは優先度付きメッセ ージのメッセージ本体に書き込む前に呼び出すためのものである。

【JTRON1.0仕様との相違および仕様決定の理由】

・referStatus()は名称が冗長なのでrefer()に変更した。また返 される情報で必要なためメッセージ長を示す引数を追加した。詳しく はメールボックス状態クラスの項を参照。

・メッセージヘッダの多様性を考慮してユーティリティメソッドを3 つ追加した。これらを使うことによりメッセージヘッダの形式/サイ ズに依存しなくなり移植性が増す。seekNextToHeader( )の名称を seekToBody()にしなかったのは、メッセージが優先度付きかどうか が自動では判定できないためである。メールボックスをJavaから生成 した場合なら判定は可能だが、既存メールボックスにアタッチした場 合これは不可能である。

 

4.2.9.2 メールボックス生成情報クラス(T_CMBX)

java.lang.Object

org.jtron.attach.T_CMBX

public class T_CMBX

標準仕様

ドキュメント内 JTRON 2.1仕様 (ページ 168-175)