[seasar-dev:318] Re: [S2JMS] S2JMS-Container

Koichi Kobayashi koichik @ improvement.jp
2006年 3月 12日 (日) 04:04:15 JST


小林 (koichik) です.

Date:    Sun, 12 Mar 2006 01:38:28 +0900
From:    KOMORI Yusuke <y-komori @ nifty.ne.jp>
To:      seasar-dev @ ml.seasar.org
Subject: [seasar-dev:317] Re: [S2JMS] S2JMS-Container

> ■JMSContainerの修正について
>      JMSContainerImpl を MessageHandlerSupport を利用するように修正して
>     コミットしました。
> 
>      ついでに、今日小林さんと話したように、S2Buriでの利用を睨んで複数の
>     MessageHandler(ターゲットの方)を登録できるように仕様変更しています。
>     (Dicon から addMessageHandler を呼び出して登録する使い方です)

ありがとうございます!!

>     # たしか、MessageHandlerSupport を Factory経由で取得するようにして欲
>     しいと聞いた気がしますが、あまり必要性が感じられなかったので、ひとま
>     ずそのまま new するようにしています。

単にインスタンスをキャッシュして欲しかっただけなので,
この実装でオッケーです.

> ■MessageHandlerSupportについて
>     また、MessageHandlerSupport ですが、setterを持たずにgetterだけが存在
>     するプロパティがあるとヌルポを吐いていたので修正しました。

失礼しました.m(__)m

> ■MessageBinderについて
>     最初に作っていたMessageBinder関連のクラスですが、今回の修正でお役ご
>     免になってしまいました。(^^; 特に問題なければ削除しておきます。

必要になればいつでも SVN から復元できるので,遠慮なく
削除しましょう.
っていうか,削除しました.(^^;

> ■MessageHandlerFactoryについて
>     Message の型から MessageHandler を取得するための 
>     MessageHandlerFactory というクラスを作りました。現在、
>     jms.container.impl 配下にありますが、jms.core.message パッケージに移
>     した方が良いかと思っています。どうでしょう?

移動しました.
ついでに,generics に関して若干修正しました.
JMSContainerImpl もちょっと修正しで警告が出ないようにしました.

> ■MessageHandlerの名前について
>     お気づきと思いますが、現在2種類のMessageHandlerが存在しています。
>     
>     1. JMS のメッセージからペイロードを取り出すための MessageHandler
>     2. JMSContaier からの呼び出し先の MessageHandler(POJO)
>     
>     利用者が意識するのは後者のみですが、ちょっと紛らわしいので、どちらか
>     (おそらく2の方)の名前を変えた方がよいかと思ってます。
>     ・・・が、すみません、今は案が浮かびません。
>     なにか良い案があれば教えてください。(^^;

これは悩ましいですねぇ...
とりあえず MessageListener にでもしておきますか.
これはこれで javax.jms.MessageListener と紛らわしいけど,
要はこのインタフェースを実装しているのに相当する
オブジェクトってことなので,まぁいいかな,と.
ついでに,リスナーメソッドに付けるアノテーションも
@MessageHandler から @OnMessage に変えてみました.
これも javax.jms.MessageListener のメソッド onMessage() に
直接インスパイヤ (死語?) されてます.


-- 
<signature>
    <name>Koichi Kobayashi</name>
    <e-mail>koichik @ improvement.jp</e-mail>
</signature>



Seasar-dev メーリングリストの案内