The AspectWerkz 0.5 release is a huge improvement compared to previous versions. Apart from many bug fixes it is also packed with new features.
You can download the new release from the releases page.
Caller side pointcuts. I.e. the possibility to advise a
method invocation (caller side) apart from method
execution (callee side).
- Fine-grained pattern language for picking out pointcuts. It is now possible to pick out method pointcuts by method name, parameter types and return type as well as field pointcuts by field name and field type. All these support regular expressions.
- Runtime attributes for advices (method/field/throws). I.e. add meta-data to your methods/field/classes as JavaDoc tags which are picked up by the weaver and used as rule set when doing the transformations.
- Class selectors for aspects. I.e. pick out classes using regular expressions.
- Advising of static fields.
- Parameters to advices. The possibility to pass parameters to advices through the XML definition.
- Advice stacks. The possibility to define stacks/chains of advices that can be reused throughout the XML definition.
- MethodAdvice has been renamed to AroundAdvice and the FieldAdvices has been renamed to PreAdvice and PostAdvice.
- Creation and registration of new advices at runtime (in previous releases you could only add/remove/reorder existing advices).
- Ant task for offline post-processing.
- More flexible startup and definition handling process.
- Multiple pattern declarations for pointcuts.
- More documentation and examples.
- Many many bugfixes.