[seasar-javadoc:230] Re: S2Container
Koichi Kobayashi
koichik @ improvement.jp
2006年 6月 15日 (木) 02:30:31 JST
小林 (koichik) です.
Date: Wed, 14 Jun 2006 01:35:34 +0900
From: "Makoto Yonezawa" <stratosphire @ gmail.com>
To: seasar-javadoc @ ml.seasar.org
Subject: [seasar-javadoc:227] Re: S2Container
> すいません、injectDependency()のあたりが理解できません。
これはあまり馴染みのない機能ですからねぇ.
> > 「インスタンス定義」や「outer」は {@link 〜} してください.
> これはどういう風に書いたらいいのでしょうか?
{@link InstanceDef インスタンス定義}
{@link InstanceDef#OUTER_NAME outer}
この場合,<code>〜</code> する必要はありません.
> それと、インジェクションの詳細な動きですが、
> * instanceモードが"outer"と定義されたコンポーネントのみ有効です。
> * 「コンポーネント instanceof 外部コンポーネント.getClass()」
> * を満たす外部コンポーネント定義を利用します。
> とありましたが、
> injectDependency(Object outerComponent)から、
> injectDependency(Object outerComponent, Class componentClass)を
> よんでいるのは分かりますが、なんと説明したらよいのか、悩んでいます。
> どのようにして理解していけばいいかご教授お願いします。
ここではコンポーネント定義を見つけるためのキーとして
渡されたオブジェクトのクラスを使うということです.
そのコンポーネント定義が outer でないといけないわけ.
なので,順番を変えて,
* <code>outerComponent</code>のクラスをキーとして登録された
* {@link ComponentDef コンポーネント定義}に従ってインジェクションを実行します。
* {@link ComponentDef コンポーネント定義}の{@link InstanceDef インスタンス定義}は
* {@link InstanceDef#OUTER_NAME outer}でなくてはなりません。
みたいな.
# 「インジェクション」単独で使うのって微妙かも.
# 「ディペンデンシー・インジェクション」の方がよくなくなくない?
> また、outerComponentなどで、【外部コンポーネント】という言葉は
> 使わない方がいいのでしょうか?
あんまり使わないんじゃないかなぁ?
って思ったけど,S2 のドキュメントで使ってたのですね.
それなら「外部コンポーネント」で揃えましょうか.
--
<signature>
<name>Koichi Kobayashi</name>
<e-mail>koichik @ improvement.jp</e-mail>
</signature>
seasar-javadoc メーリングリストの案内