2009-05-01から1ヶ月間の記事一覧

[読Seasar] アスペクトの織り込み 以前の記事で、ComponentDeployer の初期化時に、デプロイ対象とするクラスにアスペクトを織り込むことが分かっています。AopProxyUtil#getConcreteClass(ComponentDef componentDef) で、アスペクトを織り込んだクラスを生…

アスペクトの読み込み

S2AOP は S2Container とセットになった機能になっています。アスペクト定義は ComponentDef に含まれているはずなので、まずはどのように ComponentDef に登録されるのか見てみましょう。以前の記事を踏まえるとアスペクトの読み込みを行っているのは Aspec…

S2Container の初期化

前回までで Seasar ではどのようにコンポーネントが生成されるのかが分かりました。まず、今回 Seasar のエントリ・ポイントは SingletonS2ContainerFactory#init() でした。ここで dicon ファイルの解析が行われて S2Container が生成され、 ComponentDef …

コンポーネントの生成

さて無事に生成された S2Container ですが、次はどのように S2Container に保持された ComponentDef からオブジェクトが生成されるのかを見てみたいと思います。 まず、S2Container に登録された ComponentDef は、抽象化されたインターフェース S2Container…

Container の組み立て

難しいところは省略していくよー。 S2ContainerFactory#createからProvider#build を呼び出す。お、S2ContainerBuilder という如何にもな名前のインターフェースを発見。SingletonS2ContainerFactory#init で、設定した configPath の dicon ファイルを解析…

SingletonS2ContainerFactory~S2Container

取り敢えず "S2Container 2.4.35" をダウンロードしてみました。エントリポイントは SingletonS2ContainerFactory だと思い込んで読む。 うん、何か S2Container を生成してるだけ。Singletonの意味は、S2ContainerがSingletonって意味ですね。Singletonじゃ…

今後の計画

気がつけば随分休んでしまいました。夏といえば海!海といえばサーフィン!の季節です。 少し勉強計画を修正しようと思います。まず、英語は当面優先度を下げます。ちょこちょこ単語を覚えていこうかなと。平日の朝はソースコードリーディングをしようと思い…