Association Aspects: 連想アスペクト
連想アスペクト(Association Aspects)はAspectJのアスペクトに対する拡張機構です。連想アスペクトによって特定のオブジェクトのグループに対する横断的関心事を記述することができます。AspectJを拡張したコンパイラ実装によって、アスペクトインスタンスを明示的に生成し、複数のオブジェクトに関連づけることができます。更に、関連づけられたオブジェクトから検索されるアスペクトインスタンスのもとで、アドバイスを実行することが可能です。
Members
Publications
- [SMU+04b]Kouhei Sakurai, Hidehiko Masuhara, Naoyasu Ubayashi, Saeko Matsuura, and Seiichi Komiya. Association aspects. In Karl Lieberherr, editor, Proceedings of the 3rd International Conference on Aspect-Oriented Software Development (AOSD’04), pp. 16–25, Lancaster, UK. ACM Press, March 2004. [ bib | DOI | .pdf ]
- [SMU+06]Kouhei Sakurai, Hidehiko Masuhara, Naoyasu Ubayashi, Saeko Matsuura, and Seiichi Komiya. Design and implementation of an aspect instantiation mechanism. LNCS Transactions on Aspect-Oriented Software Development, Vol. 3880/2006, pp. 259–292, 2006. Extended from [SMU+04b]. [ bib | DOI | .pdf ]
- [SMMK05] 櫻井孝平, 増原英彦, 松浦佐江子, 古宮誠一. 連想アスペクトによるアプリケーション連携の記述改善評価. コンピュータソフトウェア, Vol. 22, No. 3, pp. 222–228, August 2005. [SMMK04]として発表. [ bib | DOI | .pdf ]
Downloads
Compiler
AspectJ1.2 based (2005.1.29: updated)
- aspectj-aa.jar (currently unavailable)
Source code
- aa-compiler-src.zip (currently unavailable)
ソースコードはAspectJのコードのバージョンV1_2_0に対するパッチとして提供しています。
zipファイル中のweaver.patchとajdt.patchファイルがそれぞれ、AspectJのweaverとajdtプロジェクトに適用可能です。
IDE example
ide.zip (currently unavailable)
Installation
まず、aspectj-aa.jarを上のリンクからダウンロードして、次のように実行します。
java -jar aspectj-aa.jar
これにより、オリジナルのAspectJインストーラと同様にコンパイラとランタイムライブラリがインストールされます。
オリジナルのAspectJを持っている場合は、そのディレクトリを上書きしないように注意してください。
インストールのあとは、インストールされたディレクトリにあるajcコマンドで、連想アスペクトをコンパイルすることができます。
このコンパイラはオリジナルのajc 1.2コンパイラと同様のオプションをとることができます。
コンパイルされたコードはaspectjrt.jarを利用して実行することができます。連想アスペクトの実装はこのランタイムライブラリには手を入れていないため、オリジナルのAspectJ1.2のものがそのまま利用可能です。