About

ドキュメント

Javadoc

モジュール

プロジェクト文書

Built by Maven

概要

S2JMS-Coreは,JMSメッセージを容易に送受信するためのコンポーネントを提供します. 主なコンポーネントは次の二つです.

MessageSender
JMSメッセージを送信する場合に使用するコンポーネントです.
MessageReceiver
JMSメッセージを受信する場合に使用するコンポーネントです.

MessageSender

MessageSenderは、JMSメッセージを送信するコンポーネントです。

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

send(byte[] bytes)
引数で指定されたバイト列をペイロードデータとするBytesMessageを作成して送信します。
send(Map<String, Object> map)
引数で指定されたMapに含まれるマッピングをペイロードデータとするMapMessageを作成して送信します。
send(Serializable object)
引数で指定されたオブジェクトをペイロードデータとするObjectMessageを作成して送信します。
send(String text)
引数で指定された文字列をペイロードデータとするTextMessageを作成して送信します。

JMSメッセージのプロパティを指定するには、次のメソッドを使用します。

  • send(byte[] bytes, Map<String,Object> properties)
  • send(Map<String,Object> map, Map<String,Object> properties)
  • send(Serializable object, Map<String,Object> properties)
  • send(String text, Map<String,Object> properties)

JMSメッセージのヘッダなど、送信するJMSメッセージを詳細に設定するには次のメソッドを使用します。

send(MessageFactory)
引数で指定されたMessageFactoryが作成したJMSメッセージを送信します。
send()
MessageSenderのプロパティに設定されたMessageFactoryが作成したJMSメッセージを送信します。

MessageReceiver

MessageReceiverは、JMSメッセージを受信するコンポーネントです。

受信したメッセージを容易に処理するために次のメソッドを使用することができます。

receiveBytes()
受信したBytesMessageのペイロードデータであるバイト列を返します。
receiveMap()
受信したMapMessageのペイロードデータに含まれるマッピングを持つMapを返します。
receiveObject()
受信したObjectMessageのペイロードデータであるオブジェクトを返します。
receiveText()
受信したTextMessageのペイロードデータである文字列を返します。

受信したJMSメッセージを独自に処理するには次のメソッドを使用することができます。

receive(MessageHandler messageHandler)
引数で指定するMessageHandlerにより自由にJMSメッセージを処理することができます。 このメソッドはMessageHandler#handleMessage(Message)の戻り値をそのまま返します。

受信したJMSメッセージをそのまま取得するには次のメソッドを使用することができます。

  • receive()

いずれのメソッドも、 JMSメッセージを受信するまでMessageReceivertimeoutプロパティで指定された時間待機します。 timeoutプロパティに 正数が指定されると,JMSメッセージを受信するまで指定された時間待機します (ミリ秒単位)。 0が指定されると待機しません。 負数が指定されると無制限に待機します。 タイムアウトすると、MessageReceiverのメソッドはnullを返します。