[Seasar-user:15809] Re: Componentの判定
"TAKEUCHI Shinichi / 竹
"TAKEUCHI Shinichi / 竹
2008年 9月 22日 (月) 17:29:59 JST
お世話になります、竹内です。
たとえばListの処理で、無用な干渉や、無用なThreadSafe機構を
断絶するために、
List list = new ArrayList(inputList);
のようにコピーしているのですが、ここに意図された拡張クラス
のObjectがきた場合にせっかく仕込んだIntercetorとかが意味なし
になってしまうため、S2で拡張された場合にはそのまま使用する
ようにしたいのです。
if (XXUtil.isS2Component(inputList)) {
list = inputList;
} else {
....
}
On Sat, 20 Sep 2008 00:00:11 +0900
Koichi Kobayashi <[E-MAIL ADDRESS DELETED]> wrote:
> 小林 (koichik) です.
>
> Date: Fri, 19 Sep 2008 22:31:55 +0900
> From: "TAKEUCHI Shinichi / 竹内 伸一" <[E-MAIL ADDRESS DELETED]>
> To: "S2ML" <[E-MAIL ADDRESS DELETED]>
> Subject: [Seasar-user:15794] Componentの判定
>
> > S2でDI/AOPされたオブジェクトかどうかを判定する
> > 簡単な方法はありますか? クラス名を取り出すと途中
> > に「$」が入ったりするのは目印なのでしょうが、確実
> > にAOPされていることを確認できる方法はないでしょうか?
>
> S2 が AOP を適用したクラスには確実に
> "$$EnhancedByS2AOP$$" というサフィックス
> (さらにこの後に hashCode 値が加えられる) が
> 付きますが,これが付いているからといって
> S2 が AOP を適用したクラスとは限りません.
> # 普通そんな名前のクラスを作るのは S2 だけだと
> # 思いますが.
>
> どういった理由で確認したいのでしょうか?
>
>
> --
> <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
>
--
TAKEUCHI Shinichi / 竹内 伸一 <[E-MAIL ADDRESS DELETED]>
Seasar-user メーリングリストの案内