Messageクラス
メッセージは、エンキューおよびデキューの単位です。Messageオブジェクトは、その内容またはペイロードと、プロパティを保持します。このクラスは、メッセージ・プロパティを取得および設定するメソッドを提供します。
表13-25 Messageクラスで使用される列挙値
| 属性 | オプション |
|---|---|
MessageState |
|
PayloadType |
|
表13-26 Messageメソッドの概要
| メソッド | 概要 |
|---|---|
|
|
|
|
メッセージの |
|
|
メッセージのデキュー試行回数を取り出します。 |
|
|
メッセージの |
|
|
識別文字列を取り出します。 |
|
|
メッセージのエンキュー時の遅延を取り出します。 |
|
|
処理できない |
|
|
メッセージの期限切れを取り出します。 |
|
|
メッセージのエンキュー時刻を取り出します。 |
|
|
エンキュー時のメッセージの状態を取り出します。 |
|
|
メッセージのオブジェクトのペイロードを取り出します。 |
|
|
最後のキューでこのメッセージを生成したメッセージのIDを取り出します。 |
|
|
ペイロードの型を取り出します。 |
|
|
メッセージの優先順位を取り出します。 |
|
|
|
|
|
|
|
|
|
|
|
メッセージの |
|
|
メッセージの |
|
|
識別文字列を指定します。 |
|
|
エンキューされた |
|
|
処理できない |
|
|
期限切れになるまでに |
|
|
|
|
|
メッセージのオブジェクトのペイロードを指定します。 |
|
|
|
|
|
|
|
|
メッセージの宛先であるエージェントのリストを指定します。 |
|
|
|
- Message()
- getAnyData()
- getAttemptsToDequeue()
- getBytes()
- getCorrelationId()
- getDelay()
- getExceptionQueueName()
- getExpiration()
- getMessageEnqueuedTime()
- getMessageState()
- getObject()
- getOriginalMessageId()
- getPayloadType()
- getPriority()
- getSenderId()
- isNull()
- operator=()
- setAnyData()
- setBytes()
- setCorrelationId()
- setDelay()
- setExceptionQueueName()
- setExpiration()
- setNull()
- setObject()
- setOriginalMessageId()
- setPriority()
- setRecipientList()
- setSenderId()
Message()
Messageクラスのコンストラクタです。
| 構文 | 説明 |
|---|---|
Message( const Environment *env); |
指定された |
Message( const Message& mes); |
コピー・コンストラクタです。 |
| パラメータ | 説明 |
|---|---|
env |
|
mes |
オリジナルの |
親トピック: Messageクラス
getAttemptsToDequeue()
メッセージのデキュー試行回数を取り出します。エンキュー時には、このプロパティを取り出せません。
構文
int getAttemptsToDequeue() const;
親トピック: Messageクラス
getExceptionQueueName()
Messageを正常に処理できない場合に、Messageの移動先となるキューの名前を取り出します。
構文
string getExceptionQueueName() const;
親トピック: Messageクラス
getExpiration()
Messageの有効期間(秒数)を取り出します。この期間中はメッセージをデキューできます。
構文
int getExpiration() const;
親トピック: Messageクラス
getMessageEnqueuedTime()
メッセージのエンキュー時刻をDate書式で取り出します。この値はシステムにより決定され、ユーザーは設定できません。
構文
Date getMessageEnqueuedTime() const;
親トピック: Messageクラス
getMessageState()
エンキュー時のメッセージの状態を取り出します。このパラメータではエンキュー時刻を設定できません。MessageStateの定義は、表13-25を参照してください。
構文
MessageState getMessageState() const;
親トピック: Messageクラス
getOriginalMessageId()
オリジナルのメッセージIDを取り出します。あるキューから別のキューにメッセージが伝播されたとき、伝播後のメッセージの生成元メッセージのIDを最後のキューに取得します。
構文
Bytes getOriginalMessageId() const;
親トピック: Messageクラス
isNull()
MessageオブジェクトがNULLかどうかをテストします。MessageオブジェクトがNULLの場合はTRUEを、それ以外の場合はFALSEを戻します。
構文
bool isNull() const;
親トピック: Messageクラス
operator=()
Messageの代入演算子です。
void operator=( const Message& mes);
| パラメータ | 説明 |
|---|---|
mes |
オリジナルのメッセージを指定します。 |
親トピック: Messageクラス
setAnyData()
MessageのAnyDataのペイロードを指定します。
構文
void setAnyData( const AnyData& anydata);
| パラメータ | 説明 |
|---|---|
anydata |
|
親トピック: Messageクラス
setBytes()
MessageのBytesのペイロードを指定します。
構文
void setBytes( const Bytes& bytes);
| パラメータ | 説明 |
|---|---|
bytes |
|
親トピック: Messageクラス
setCorrelationId()
識別文字列を指定します。このパラメータは、エンキュー時にProducerにより設定されます。メッセージは、このIDを使用してデキューできます。IDには、ワイルドカード文字を含めることができます。
構文
void setCorrelationId( const string& id);
| パラメータ | 説明 |
|---|---|
id |
IDを指定します。上限は |
親トピック: Messageクラス
setDelay()
エンキューされたMessageの遅延秒数を指定します。遅延終了後は、Messageをデキューできます。
msgidによりデキューする場合は、遅延指定がオーバーライドされます。遅延付きでエンキューされたMessageは、WAITING状態になります。遅延は、Messageのプロデューサにより設定されます。
構文
void setDelay( int delay);
| パラメータ | 説明 |
|---|---|
delay |
遅延を指定します。 |
親トピック: Messageクラス
setExceptionQueueName()
正常に処理できないMessageオブジェクトの移動先キューの名前を指定します。有効なキュー名を指定する必要があります。
移動時に例外キューが存在しなければ、Messageはキュー表に関連付けられているデフォルトの例外キューに移動し、アラート・ログに警告が記録されます。
また、デフォルトの例外キューが使用される場合、パラメータはエンキュー時にNULL値を戻します。属性では有効なキュー名を参照する必要があります。
構文
void setExceptionQueueName( const string& queue);
| パラメータ | 説明 |
|---|---|
queue |
例外キューの名前を指定します。 |
親トピック: Messageクラス
setExpiration()
Messageオブジェクトをデキューできる有効期間を秒単位で指定します。この期間をすぎると、Messageは期限切れになります。
構文
void setExpiration( int exp);
| パラメータ | 説明 |
|---|---|
exp |
有効期間を指定します。 |
親トピック: Messageクラス
setNull()
MessageオブジェクトをNULLに設定します。EnvironmentクラスのterminateConnection()のコールによりConnectionが破棄される前に、すべてのMessageオブジェクトをNULLに設定する必要があります。
構文
void setNull();
親トピック: Messageクラス
setObject()
Messageのオブジェクトのペイロードを指定します。
構文
void setObject( PObject& pobj);
| パラメータ | 説明 |
|---|---|
pobj |
データの内容を指定します。 |
親トピック: Messageクラス
setOriginalMessageId()
あるキューから別のキューにメッセージが伝播されたとき、伝播後のメッセージの生成元メッセージのIDを最後のキューに設定します。
構文
void setOriginalMessageId( const Bytes& queue);
| パラメータ | 説明 |
|---|---|
queue |
最後のキューを指定します。 |
親トピック: Messageクラス
setPriority()
Messageオブジェクトの優先順位を指定します。この優先順位はエンキュー時に設定され、負の値に設定できます。デフォルトは0です。
構文
void setPriority( int priority);
| パラメータ | 説明 |
|---|---|
priority |
|
親トピック: Messageクラス
setRecipientList()
Messageの宛先であるAgentのリストを指定します。これらの受信者は、キューのサブスクライバとは異なります。このプロパティはエンキュー時に設定されます。リスト内のAgentがすべて有効である必要があります。受信者リストによりデフォルトのサブスクライバ・リストがオーバーライドされます。
構文
void setRecipientList( vector<Agent>& agentList);
| パラメータ | 説明 |
|---|---|
agentList |
|
親トピック: Messageクラス
setSenderId()
Messageの送信者を指定します。
構文
void setSenderId( const Agent& sender);
| パラメータ | 説明 |
|---|---|
sender |
送信者IDを指定します。 |
親トピック: Messageクラス