AspectWerkz
Home Page
Categories: AOP
Latest version: 2.0
Added 2005-01-20Updated 2005-03-14
Dynamic AOP framework for Java.
AspectWerkz utilizes bytecode modification to weave your classes at project build-time, class load time or runtime. It hooks in using standardized JVM level APIs. Aspects, advices and introductions are written in plain Java and your target classes can be regular POJOs. You have the possibility to add, remove and re-structure advice as well as swapping the implementation of your introductions at runtime. Your aspects can be defined using either Java 5 annotations, Java 1.3/1.4 custom doclets or an XML definition file.
AspectWerkz provides an API to use the same aspects for proxies allowing a smooth transition for users familiar with proxies.
Features include: Annotation support; Aspects, advices and introductions are written in plain old Java code; The target classes can be regular POJOs; Weaving (bytecode modification) at compile time, load time and runtime; The join point model supports: method execution and call, constructor execution and call, field access, field modification, catch handlers, cflow, within and withincode, hasmethod and hasfield; Introductions/Inter type declarations (also called Mixins).
The AspectJ and AspectWerkz projects have agreed to work together as one team to produce a single aspect-oriented programming platform building on their complementary strengths and expertise. The first release from this collaboration will be AspectJ 5, which extends the AspectJ language to support an annotation-based development style in addition to the familiar AspectJ code-based style. AspectJ 5 will also provide full AOP support for the new Java 5 language features.
 Built for Java |
 Free or free version available |
 Source code provided |