org.seasar.jms.core
インタフェース MessageSender

既知の実装クラスの一覧:
MessageSenderImpl

public interface MessageSender

JMSメッセージを送信するコンポーネントのインタフェースです。

送信するJMSメッセージを容易に作成するために次のメソッドを使用することができます。

これらのメソッドは対応するJMS標準メッセージ型を作成し、引数をペイロードに設定して送信します。

送信するJMSメッセージを詳細に設定するには次のメソッドを使用することができます。

引数またはコンポーネント実装クラスのプロパティに設定するMessageFactoryにより自由にJMSメッセージを作成することができます。

送信したメッセージはgetMessage()メソッドで取得することができます. 送信したメッセージにJMS実装が設定するJMSヘッダを以下のメソッドで取得することができます.

このコンポーネントはインスタンスモードPROTOTYPEで使われることを想定しており、スレッドセーフではありません。

作成者:
koichik

メソッドの概要
 MessageSender addProperties(Map<String,Object> properties)
          指定されたMapに含まれるマッピングを全てプロパティとして設定します。
 MessageSender addProperty(String name, Object value)
          指定された名前を持つプロパティ値を設定します。
 long getExpiration()
          送信したJMSメッセージのexpiration ヘッダの値を返します。
 Message getMessage()
          送信したJMSメッセージを返します。
 String getMessageID()
          送信したJMSメッセージのmessageID ヘッダの値を返します。
 long getTimestamp()
          送信したJMSメッセージのtimestamp ヘッダの値を返します。
 void send()
          実装クラスのプロパティに設定されたMessageFactoryが作成したJMSメッセージを送信します。
 void send(byte[] bytes)
          バイト配列をBytesMessageのペイロードに設定して送信します。
 void send(Map<String,Object> map)
          MapMapMessageのペイロードに設定して送信します。
<MSGTYPE extends Message>
void
send(MessageFactory<MSGTYPE> messageFactory)
          MessageFactoryが作成したJMSメッセージを送信します。
 void send(Serializable object)
          SerializableオブジェクトをObjectMessageのペイロードに設定して送信します。
 void send(String text)
          文字列をTextMessageのペイロードに設定して送信します。
 MessageSender setCorrelationID(String correlationID)
          JMSメッセージのヘッダに設定されるcorrelationIDを文字列で設定します。
 MessageSender setCorrelationIDAsBytes(byte[] correlationIDAsBytes)
          correlationIDをバイト列で設定します。
 MessageSender setDeliveryMode(int deliveryMode)
          送信するJMSメッセージの配信モードを設定します。
 MessageSender setDisableMessageID(boolean disableMessageID)
          送信するJMSメッセージのメッセージIDを無効化する場合にtrueを設定します。
 MessageSender setDisableMessageTimestamp(boolean disableMessageTimestamp)
          送信するJMSメッセージのタイムスタンプを無効化する場合にtrueを設定します。
 MessageSender setPriority(int priority)
          送信するJMSメッセージの優先度を指定します。
 MessageSender setReplyTo(Destination replyTo)
          replyToをバイト列で設定します。
 MessageSender setTimeToLive(long timeToLive)
          送信するJMSメッセージの生存時間をミリ秒単位で指定します。
 

メソッドの詳細

setDeliveryMode

MessageSender setDeliveryMode(int deliveryMode)
送信するJMSメッセージの配信モードを設定します。デフォルトはJMSメッセージのデフォルト配信モードに従います。

パラメータ:
deliveryMode - 送信するJMSメッセージの配信モード
戻り値:
このインスタンス自身

setPriority

MessageSender setPriority(int priority)
送信するJMSメッセージの優先度を指定します。デフォルトはJMSメッセージのデフォルト優先度に従います。

パラメータ:
priority - 送信するJMSメッセージの優先度
戻り値:
このインスタンス自身

setTimeToLive

MessageSender setTimeToLive(long timeToLive)
送信するJMSメッセージの生存時間をミリ秒単位で指定します。デフォルトはJMSメッセージのデフォルト生存時間に従います。

パラメータ:
timeToLive - 送信するJMSメッセージの生存時間(ミリ秒単位)
戻り値:
このインスタンス自身

setDisableMessageID

MessageSender setDisableMessageID(boolean disableMessageID)
送信するJMSメッセージのメッセージIDを無効化する場合にtrueを設定します。デフォルトはfalseです。

パラメータ:
disableMessageID - 送信するJMSメッセージのメッセージIDを無効化する場合はtrue、その他の場合はfalse
戻り値:
このインスタンス自身

setDisableMessageTimestamp

MessageSender setDisableMessageTimestamp(boolean disableMessageTimestamp)
送信するJMSメッセージのタイムスタンプを無効化する場合にtrueを設定します。デフォルトはfalseです。

パラメータ:
disableMessageTimestamp - 送信するJMSメッセージのタイムスタンプを無効化する場合はtrue、その他の場合はfalse
戻り値:
このインスタンス自身

setCorrelationID

MessageSender setCorrelationID(String correlationID)
JMSメッセージのヘッダに設定されるcorrelationIDを文字列で設定します。

設定された値は作成されたJMSメッセージのMessage.setJMSCorrelationID(String)でヘッダに設定されます。

パラメータ:
correlationID - JMSメッセージのヘッダに設定される correlationID
戻り値:
このインスタンス自身

setCorrelationIDAsBytes

MessageSender setCorrelationIDAsBytes(byte[] correlationIDAsBytes)
correlationIDをバイト列で設定します。

設定された値は作成されたJMSメッセージのMessage.setJMSCorrelationIDAsBytes(byte[])でヘッダに設定されます。

パラメータ:
correlationIDAsBytes - JMSメッセージのヘッダに設定されるcorrelationID
戻り値:
このインスタンス自身

setReplyTo

MessageSender setReplyTo(Destination replyTo)
replyToをバイト列で設定します。

設定された値は作成されたJMSメッセージのMessage.setJMSReplyTo(Destination)でヘッダに設定されます。

パラメータ:
replyTo - JMSメッセージのヘッダに設定されるreplyTo
戻り値:
このインスタンス自身

addProperty

MessageSender addProperty(String name,
                          Object value)
指定された名前を持つプロパティ値を設定します。

設定された値は作成されたJMSメッセージのMessage.setObjectProperty(java.lang.String, java.lang.Object)でプロパティに設定されます。

パラメータ:
name - プロパティ名
value - プロパティ値
戻り値:
このインスタンス自身

addProperties

MessageSender addProperties(Map<String,Object> properties)
指定されたMapに含まれるマッピングを全てプロパティとして設定します。

設定された値は作成されたJMSメッセージのMessage.setObjectProperty(java.lang.String, java.lang.Object)でプロパティに設定されます。

パラメータ:
properties - プロパティ
戻り値:
このインスタンス自身

send

void send(byte[] bytes)
バイト配列をBytesMessageのペイロードに設定して送信します。

パラメータ:
bytes - 送信するバイト配列

send

void send(String text)
文字列をTextMessageのペイロードに設定して送信します。

パラメータ:
text - 送信する文字列

send

void send(Serializable object)
SerializableオブジェクトをObjectMessageのペイロードに設定して送信します。

パラメータ:
object - 送信するオブジェクト

send

void send(Map<String,Object> map)
MapMapMessageのペイロードに設定して送信します。

パラメータ:
map - 送信するマップ

send

void send()
実装クラスのプロパティに設定されたMessageFactoryが作成したJMSメッセージを送信します。


send

<MSGTYPE extends Message> void send(MessageFactory<MSGTYPE> messageFactory)
MessageFactoryが作成したJMSメッセージを送信します。

型パラメータ:
MSGTYPE - JMSメッセージの型
パラメータ:
messageFactory - メッセージファクトリ

getMessage

Message getMessage()
送信したJMSメッセージを返します。

JMSメッセージが送信されていない場合はnullを返します.

戻り値:
送信したJMSメッセージ

getMessageID

String getMessageID()
送信したJMSメッセージのmessageID ヘッダの値を返します。

戻り値:
送信したJMSメッセージのmessageIDヘッダの値
例外:
SJMSRuntimeException - JMS実装で例外が発生した場合にスローされます
EmptyRuntimeException - JMSメッセージが送信されていない場合

getTimestamp

long getTimestamp()
送信したJMSメッセージのtimestamp ヘッダの値を返します。

戻り値:
送信したJMSメッセージのtimestampヘッダの値
例外:
SJMSRuntimeException - JMS実装で例外が発生した場合にスローされます
EmptyRuntimeException - JMSメッセージが送信されていない場合

getExpiration

long getExpiration()
送信したJMSメッセージのexpiration ヘッダの値を返します。

戻り値:
送信したJMSメッセージのexpirationヘッダの値
例外:
SJMSRuntimeException - JMS実装で例外が発生した場合にスローされます
EmptyRuntimeException - JMSメッセージが送信されていない場合


Copyright © 2005-2009 The Seasar Foundation. All Rights Reserved.