[aosd-discuss] "Around" advice

Pascal Costanza pc at p-cos.net
Wed May 23 14:55:57 EDT 2007


On 23 May 2007, at 15:52, Eric Bodden wrote:

> On 23/05/07, vamsidhar sharma <bvamsidhar at yahoo.com> wrote:
>> I found examples where the return value is being modified before   
>> sending it or pointcut excution is made conditional. Didn't find  
>> anything more real than these.
>
> Another way to us around-advice is to generate a closure that kind of
> holds the continuation of the execution and can then be invoked later
> on (see Laddad's book "AOP in action"):
>
> Object around(): pc()  {
>   runnables.add(new Runnable() {
>     public void run() {
>       return proceed();
>     }
>   });
>   return null;
> }
>
> I have used this technique in a similar way to implement a fault
> tolerance layer.

This indeed smells like a full continuation, but I can't imagine how  
this would work in a JVM. What am I missing?


Pascal

-- 
Pascal Costanza, mailto:pc at p-cos.net, http://p-cos.net
Vrije Universiteit Brussel, Programming Technology Lab
Pleinlaan 2, B-1050 Brussel, Belgium







More information about the discuss mailing list