[Seasar-user:13518] Re: [S2Container]インターフェースなしクラスの自動インジェクション要望

kubo [E-MAIL ADDRESS DELETED]
2008年 4月 2日 (水) 00:31:44 JST


久保です。

小林さん

ありがとうございます。
確認しました。インターフェースなしのクラスが、
型だけでインジェクションされました。

isAutoBindable()の引数にPropertyTypeもあるので、
これで判定すれば、限定的な対応(Behaviorだけとか)
とかもできそうです。

2008/4/1 Koichi Kobayashi <[E-MAIL ADDRESS DELETED]>:
> 小林 (koichik) です.
>
>  Date:    Tue, 1 Apr 2008 10:31:24 +0900
>
> From:    kubo <[E-MAIL ADDRESS DELETED]>
>  To:      [E-MAIL ADDRESS DELETED]
>  Subject: [Seasar-user:13505] Re: [S2Container]インターフェースなしクラスの自動インジェクション要望
>
>
>  > >  具体的には,BindingTypeShouldDef 等のサブクラスを
>  > >  作成して bindAuto() メソッドをオーバーライド,
>  > >  s2container.dicon に定義すればそれが使われるように
>  > >  なるという感じ.
>  >
>  > おおお、そうして頂けるととても助かります。
>
>  対応しました.
>
>  public class MyBindingTypeShouldDef extends BindingTypeShouldDef {
>   public BindingTypeShouldDef() {
>     super(BindingTypeDef.SHOULD_NAME);
>   }
>
>   protected boolean isAutoBindable(PropertyDef pd, ComponentDef cd) {
>     return true;
>   }
>  }
>
>  なんてクラスを用意して,
>  # MUST,MAY も同様に.
>
>  s2container.dicon に
>
>  <compoent class="MyBindingTypeShouldDef">
>   <initMethod>
>     @[E-MAIL ADDRESS DELETED](#self)
>   </initMethod>
>  </component>
>
>  なんてすればよいかと.
>  # MUST,MAY も同様に.
>
>  SNAPSHOT をデプロイしたのでご確認ください.
>  # 今回変更したのは s2-framework のみ.
>
>  http://maven.seasar.org/maven2-snapshot/org/seasar/container/s2-framework/2.4.25-SNAPSHOT/s2-framework-2.4.25-20080401.092235-2.jar
>  http://maven.seasar.org/maven2-snapshot/org/seasar/container/s2-extension/2.4.25-SNAPSHOT/s2-extension-2.4.25-20080401.092235-1.jar
>  http://maven.seasar.org/maven2-snapshot/org/seasar/container/s2-tiger/2.4.25-SNAPSHOT/s2-tiger-2.4.25-20080401.093027-1.jar
>
>
>  --
>
> <component name="koichik">
>     <property name="fullName">"Koichi Kobayashi"</property>
>     <property name="email">"[E-MAIL ADDRESS DELETED]"</property>
>
>
>     <property name="blog">"http://d.hatena.ne.jp/koichik"</property>
>  </component>
>
>  _______________________________________________
>  Seasar-user mailing list
>  [E-MAIL ADDRESS DELETED]
>  https://ml.seasar.org/mailman/listinfo/seasar-user
>


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