メッセージキューイングアクセス機能 TP1/Message Queue - Access 使用の手引
MessageProducerインタフェース・QueueSenderインタフェース(JMS)
QueueSenderインタフェースは,クライアントがキューにメッセージを送るために使用します。
形式
public interface MessageProducer { public void close() throws JMSException; public int getDeliveryMode() throws JMSException; public boolean getDisableMessageID() throws JMSException; public boolean getDisableMessageTimestamp() throws JMSException; public int getPriority() throws JMSException; public long getTimeToLive() throws JMSException; public void setDeliveryMode(int deliveryMode) throws JMSException; public void setDisableMessageID(boolean value) throws JMSException; public void setDisableMessageTimestamp(boolean value) throws JMSException; public void setPriority(int defaultPriority) throws JMSException; public void setTimeToLive(long timeToLive) throws JMSException; } public interface QueueSender extends MessageProducer { public Queue getQueue() throws JMSException; public void send(Message message) throws JMSException; public void send(Message message, int deliveryMode, int priority, long timeToLive) throws JMSException; public void send(Queue queue, Message message) throws JMSException; public void send(Queue queue, Message message, int deliveryMode, int priority, long timeToLive) throws JMSException; }
メソッド
● public void close() throws JMSException
TP1/Message Queueが確保した資源を解放するために,資源(キュー)をクローズします。
● public int getDeliveryMode() throws JMSException
キュー内のメッセージに対する省略時の永続性を取得します。
● public boolean getDisableMessageID() throws JMSException
メッセージ識別子が使用不可であるかどうかを取得します。ただし,このメソッドで取得した値に関係なく,TP1/Message Queueでは常にメッセージ識別子は使用可能です。
● public boolean getDisableMessageTimestamp() throws JMSException
登録日時が使用不可であるかどうかを取得します。ただし,このメソッドで取得した値に関係なく,TP1/Message Queueでは常に登録日時は使用可能です。
● public int getPriority() throws JMSException
キュー内のメッセージに対する省略時の優先度を取得します。
JMSでは,0〜9の10段階の優先度を定義しています。TP1/Message Queueでは,0〜MaxPriorityの値をとります。MaxPriorityは,キューマネジャで定義されています。
● public long getTimeToLive() throws JMSException
キュー内のメッセージに対する省略時のメッセージの保持時間を取得します。
● public void setDeliveryMode(int deliveryMode) throws JMSException
キュー内のメッセージに対する省略時の永続性を設定します。デフォルト値はDeliveryMode.PERSISTENT(永続)です。
● public void setDisableMessageID(boolean value) throws JMSException
メッセージ識別子を使用不可にするかどうかを設定します。デフォルト値は使用可能です。
このメソッドで設定した値に関係なく,TP1/Message Queueでは常にメッセージ識別子は使用可能です。
● public void setDisableMessageTimestamp(boolean value) throws JMSException
登録日時を使用不可にするかどうかを設定します。デフォルト値は使用可能です。
このメソッドで設定した値に関係なく,TP1/Message Queueでは常に登録日時は使用可能です。
● public void setPriority(int defaultPriority) throws JMSException
キュー内のメッセージに対する省略時の優先度を設定します。
JMSでは,0〜9の10段階の優先度を定義しています。TP1/Message Queueでは,0〜MaxPriorityの値をとります。MaxPriorityは,キューマネジャで定義されています。デフォルト値は4です。
● public void setTimeToLive(long timeToLive) throws JMSException
キュー内のメッセージに対する省略時のメッセージの保持時間を設定します。デフォルト値は0です。
● public Queue getQueue() throws JMSException
該当するキューセンダに関連づけられたキューのオブジェクトを返します。
● public void send(Message message) throws JMSException
キューにメッセージを登録します。
このとき,QueueSenderの省略時のメッセージの永続性,メッセージの優先度,およびメッセージの保持時間が使用されます。
QueueSenderの生成時にキューが指定されていない場合にこのメソッドを実行すると,例外JMSExceptionがスローされます。
キューにメッセージを登録する際,Messageオブジェクトのプロパティが「JMSメッセージのヘッダとプロパティ」の表7-6に示すプロパティ名と一致する場合,対応するMQMD構造体のフィールドに格納されます。プロパティ名が一致していてプロパティの型が不一致の場合は,表7-6に示す型に変換されたあとで,対応するMQMD構造体のフィールドに格納されます。この変換に失敗すると,例外MessageFormatExceptionがスローされます。Messageオブジェクトのプロパティが表7-6に示す名称ではない場合は,プロパティの値はMQMD構造体のフィールドに格納されません。
● public void send(Message message, int deliveryMode, int priority, long timeToLive) throws JMSException
メッセージの永続性,メッセージの優先度,およびメッセージの保持時間を指定して,キューにメッセージを登録します。
QueueSenderの生成時にキューが指定されていない場合にこのメソッドを実行すると,例外JMSExceptionがスローされます。
キューにメッセージを登録する際,Messageオブジェクトのプロパティが「JMSメッセージのヘッダとプロパティ」の表7-6に示すプロパティ名と一致する場合,対応するMQMD構造体のフィールドに格納されます。プロパティ名が一致していてプロパティの型が不一致の場合は,表7-6に示す型に変換されたあとで,対応するMQMD構造体のフィールドに格納されます。この変換に失敗すると,例外MessageFormatExceptionがスローされます。Messageオブジェクトのプロパティが表7-6に示す名称ではない場合は,プロパティの値はMQMD構造体のフィールドに格納されません。
● public void send(Queue queue, Message message) throws JMSException
指定したキューにメッセージを登録します。
このとき,QueueSenderの省略時のメッセージの永続性,メッセージの優先度,およびメッセージの保持時間が使用されます。
一般に,QueueSenderの生成時には登録先のキューが指定されますが,nullを指定して,つまりキューを指定しないでQueueSenderを生成することもできます。QueueSenderの生成時にキューが指定されていない場合は,このメソッドを実行できます。QueueSenderの生成時にキューが指定されている場合にこのメソッドを実行すると,例外JMSExceptionがスローされます。
キューにメッセージを登録する際,Messageオブジェクトのプロパティが「JMSメッセージのヘッダとプロパティ」の表7-6に示すプロパティ名と一致する場合,対応するMQMD構造体のフィールドに格納されます。プロパティ名が一致していてプロパティの型が不一致の場合は,表7-6に示す型に変換されたあとで,対応するMQMD構造体のフィールドに格納されます。この変換に失敗すると,例外MessageFormatExceptionがスローされます。Messageオブジェクトのプロパティが表7-6に示す名称ではない場合は,プロパティの値はMQMD構造体のフィールドに格納されません。
● public void send(Queue queue, Message message, int deliveryMode, int priority, long timeToLive) throws JMSException
キュー,メッセージの永続性,メッセージの優先度,およびメッセージの保持時間を指定して,キューにメッセージを登録します。
一般に,QueueSenderの生成時には登録先のキューが指定されますが,nullを指定して,つまりキューを指定しないでQueueSenderを生成することもできます。QueueSenderの生成時にキューが指定されていない場合は,このメソッドを実行できます。QueueSenderの生成時にキューが指定されている場合にこのメソッドを実行すると,例外JMSExceptionがスローされます。
キューにメッセージを登録する際,Messageオブジェクトのプロパティが「JMSメッセージのヘッダとプロパティ」の表7-6に示すプロパティ名と一致する場合,対応するMQMD構造体のフィールドに格納されます。プロパティ名が一致していてプロパティの型が不一致の場合は,表7-6に示す型に変換されたあとで,対応するMQMD構造体のフィールドに格納されます。この変換に失敗すると,例外MessageFormatExceptionがスローされます。Messageオブジェクトのプロパティが表7-6に示す名称ではない場合は,プロパティの値はMQMD構造体のフィールドに格納されません。
All Rights Reserved. Copyright (C) 2006, 2007, Hitachi, Ltd.
(C) Copyright International Business Machines Corporation 1994, 1999. All rights reserved.