I've just closed JIRA
CDV-144 Support for matching on subtypes for
class includes
What it means is that now you can use more advanced expressions to
include classes for instrumentation and to declare locks (both auto and
named). So, in the tc-config.xml it would look like this:
<locks>
<autolock>
<method-expression>*
wicket.IClusterable+.*(..)</method-expression>
</autolock>
</locks>
<instrumented-classes>
<include>
<class-expression>wicket.IClusterable+</class-expression>
<honor-transient>true</honor-transient>
</include>
</instrumented-classes>
The above mean that all implementors (or subclasses) of
wicket.IClusterable will be included into the instrumentation (honor
transient will be respected in the subclasses) and all methods of those
classes will be autolocked.
This bring DSO's method and class expressions closer to expressions
allowed by AspectWerkz and AspectJ. However, for historical reasons
there is one difference that you may need to know about. So, in order to
explicitly specify expression for constructor you should use something
like "* boo.Foo.__INIT__(..)", while in AJ it would be
"boo.Foo.new(..)", note no "*" and "new" as the name.
Orion, Taylor, can you please stick this somewhere on the wiki or
appropriate place in the product documentation?
Thanks
Eugene