[]
AspectWerkz 0.6.3 has been released
[ jonas ] 11:44, Friday, 20 June 2003
AspectWerkz version 0.6.3 has been released.

I have among other things rewritten the whole definition and weave model implementation to support a much more powerful join point model. The join point model now have the essence of the AspectJ model.

Here are some of the features/changes:

  • Completely new definition model. Aspects, advices, introductions and pointcuts are now completely orthogonal and the model now has the essence of the AspectJ model. See the documentation for details.
  • Abstract aspects definitions as well as pointcut expressions (e.g. ((pc1 OR pc2) AND !pc3) and similar).
  • Multiple weave models.
  • Multiple AspectWerkz system can run in the same JVM concurrently.
  • setField and getField now works for get and set java.util.* collection fields (e.g. add/get/remove/size and so on).
  • Advice and introduction container is now pluggable. I.e. the user can provide its own custom implementation (f.e. to enable persistence).
  • The transparent persistence of advices and introductions have been moved to the sandbox.
  • Many bug fixes.
Here is an example of the new definition:
<aspectwerkz>
    <!-- ============================================= -->
    <!--  Define the advices                           -->
    <!-- ============================================= -->
    <advice-def name="log"
                advice="advices.LoggingAdvice"
                deployment-model="perInstance"/>

    <advice-def name="cache"
                advice="advices.CachingAdvice"
                deployment-model="perClass"/>

    <advice-def name="persistent"
                advice="advices.PersistenceAdvice"
                deployment-model="perJVM"/>

    <advices-def name="log_and_cache">
        <advice-ref name="log"/>
        <advice-ref name="cache"/>
    </advices-def>

    <!-- ============================================= -->
    <!--  Define the introductions                     -->
    <!-- ============================================= -->
    <introduction-def name="serializable"
                      interface="java.io.Serializable"/>

    <introduction-def name="mixin"
                      interface="mixins.Mixin"
                      implementation="mixins.MixinImpl"
                      deployment-model="perInstance"/>

    <!-- ============================================= -->
    <!--  Define the abstract aspects                  -->
    <!-- ============================================= -->
    <abstract-aspect name="MyAbstractAspect">
        <advice pointcut="setters AND !getters">
            <advices-ref name="log_and_cache"/>
        </advice>

        <advice pointcut="persistentFields">
            <advice-ref name="persistent"/>
        </advice>
    </aspect>

    <!-- ============================================= -->
    <!--  Define the aspects                           -->
    <!-- ============================================= -->
    <aspect name="MyAspect" extends="MyAbstractAspect">
        <introduction class="domain.*">
            <introduction-ref name="serializable"/>
            <introduction-ref name="mixin"/>
        </introduction>

        <pointcut-def name="setters" type="method" pattern="String domain.*.set*(..)"/>
        <pointcut-def name="getters" type="method" pattern="String domain.*.get*(..)"/>
        <pointcut-def name="persistentFields" type="setField" pattern="* domain.*.*">
    </aspect>
</aspectwerkz>
You can download the new release from the releases page

Enjoy.


Comments

Wow... do you ever sleep?

Congratulations, Jonas!

--Cedric, June 20, 2003 07:26 PM

Wow... do you ever sleep?

Congratulations, Jonas!

--Cedric, June 20, 2003 07:26 PM

You might want to consider adding AspectWerkz to this list:

http://aosd.net/tools.html

--Chad, June 27, 2003 11:34 PM

I have already asked them to add AspectWerkz to the list, so we'll see what happens.

--Jonas Bonér, June 28, 2003 12:04 PM

Interesting website

--online roulette, December 21, 2003 11:46 AM


nice blog

--slots, December 29, 2003 11:42 AM

Excellent reading. Keep up the good work.

pissing dripping wet see through bikinis see throughwet t-shirt wet t-shirt contest t-shirts wet t-shirts t-shirt 70 t-shirts funny t-shirts caught wet pants underwear mens underwear men in underwear boys underwear mens underwear piss peeing girls peeing women peeing pee watersports wet t-shirt wet wet pussy wet t shirt wet see through bikinis wet t-shirt contest wet panties wet t-shirts wet t wet shirt wet tshirt wet girls wet t shirts wet t shirt contest wet pants

--som, August 13, 2004 12:06 PM

pissing dripping wet see through bikinis see throughwet t-shirt wet t-shirt contest t-shirts wet t-shirts t-shirt 70 t-shirts funny t-shirts caught wet pants underwear mens underwear men in underwear boys underwear mens underwear piss peeing girls peeing women peeing pee watersports wet t-shirt wet wet pussy wet t shirt wet see through bikinis wet t-shirt contest wet panties wet t-shirts wet t wet shirt wet tshirt wet girls wet t shirts wet t shirt contest wet pants

--roma, August 13, 2004 08:37 PM
Post a comment









Remember personal info?