Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[aspectj-users] Again Simple Question

     Hi Adrian,

        Thanks for your quick answer on my previous
question. It worked.

        I have another question. I hava a big Java API
and I want to "catch" all method calls serialize
method params&values at input, serialize method
params&values at output and also serialize the
returninc object&value of the method call. The params
& returning value can be any type from void, int,
double to String and also complex Class Types from my
API.

    What I had written

pointcut whenMethodIsCalled(StatefullParentBean bean):
this(bean) && execution (* *.* (..)) &&
!within(TestAPI); 
	
pointcut topLevelCalls(StatefullParentBean
bean):whenMethodIsCalled(bean) &&
!cflowbelow(whenMethodIsCalled(StatefullParentBean));
	
I have an 
before(StatefullParentBean bean): topLevelCalls(bean)
and also
after(StatefullParentBean bean) : topLevelCalls(bean)
	
in which I serialize input & output params.

But I want to serialize also the return value. For
this can I use after returning in place of after?
In after returning can I still get the values of the
parameters which the methods have? Or I need both
after & after returning 1 for parameters and the other
for return value? 
    AspectJ5 knows if I put Object for the returning
value to handle with all types of returning types no
metter if they are void, int, double, String or a
complex type from my API.

Thanks in advance,
Virgil

 
	
--- aspectj-users-request@xxxxxxxxxxx wrote:

> Send aspectj-users mailing list submissions to
> 	aspectj-users@xxxxxxxxxxx
> 
> To subscribe or unsubscribe via the World Wide Web,
> visit
> 
>
https://dev.eclipse.org/mailman/listinfo/aspectj-users
> or, via email, send a message with subject or body
> 'help' to
> 	aspectj-users-request@xxxxxxxxxxx
> 
> You can reach the person managing the list at
> 	aspectj-users-owner@xxxxxxxxxxx
> 
> When replying, please edit your Subject line so it
> is more specific
> than "Re: Contents of aspectj-users digest..."
> 
> 
> Today's Topics:
> 
>    1. Re: Need to enumerate all methods for selected
> advices of an
>       aspect (Andy Clement)
>    2. Re: Need to enumerate all methods for selected
> advices	of an
>       aspect (Wes Isberg)
>    3. Re: [NEWSDELIVER] Getting VerifyError with
> around	advice on
>       static method (Matthew Webster)
> 
> 
>
----------------------------------------------------------------------
> 
> Message: 1
> Date: Fri, 3 Mar 2006 08:12:19 +0000
> From: "Andy Clement" <andrew.clement@xxxxxxxxx>
> Subject: Re: [aspectj-users] Need to enumerate all
> methods for
> 	selected	advices of an aspect
> To: aspectj-users@xxxxxxxxxxx
> Message-ID:
> <689d61aa0603030012v16d0025ah@xxxxxxxxxxxxxx>
> Content-Type: text/plain; charset="iso-8859-1"
> 
> The new reflection support in AspectJ5 will allow
> you to query
> what the advice declarations are, but *not* where
> they are
> affecting (that may follow when we get some time...)
> 
> It is possible to use your own message handler which
> will
> then get callbacks for 'weave info' messages.  To
> see the kind
> of information you would get, turn on weave info
> messages
> in the AJDT options panel or pass -showWeaveInfo to
> the
> compiler.  If it looks like what you want, write an
> implementation
> of IMessageHolder and pass the class name with
> -messageHolder to the compiler ... I think that will
> work, although
> I've not tried it !!
> 
> Andy.
> 
> 
> On 03/03/06, András Imre <andras.imre@xxxxxxxxx>
> wrote:
> >
> > Hi,
> >
> > I have an aspect, which checks access permissions
> before
> > allowing execution of certain methods for the
> current user.
> > This is done with around advice.
> >
> > Now I'd like generate a file, in which each
> affected method
> > is listed for this aspect. In this way I'd have an
> automated
> > way to get an always up-to-date template which
> could be
> > used for creating an access permission
> configuration file.
> >
> > I see this info e.g. on the Cross References tab
> in Eclipse,
> > and as AspectJ markers, but cant export from
> either, and
> > would not be automatic.
> > Is there a way to generate this automatically,
> preferably in
> > similar format and structure to the
> thisJoinPoint.toString()
> > variations?
> >
> > I tried messing with reflection, but could not
> access
> > aspects this way... Can aspects be investigated
> runtime?
> >
> >
> > Thanks,
> >   András
> > _______________________________________________
> > aspectj-users mailing list
> > aspectj-users@xxxxxxxxxxx
> >
>
https://dev.eclipse.org/mailman/listinfo/aspectj-users
> >
> -------------- next part --------------
> An HTML attachment was scrubbed...
> URL:
>
http://eclipse.org/pipermail/aspectj-users/attachments/20060303/729a0f84/attachment.html
> 
> ------------------------------
> 
> Message: 2
> Date: Fri, 3 Mar 2006 00:43:38 -0800
> From: "Wes Isberg" <wes@xxxxxxxxxxxxxx>
> Subject: Re: [aspectj-users] Need to enumerate all
> methods for
> 	selected advices	of an aspect
> To: aspectj-users@xxxxxxxxxxx
> Message-ID:
> <20060303004338.1250926427.wes@xxxxxxxxxxxxxx>
> Content-Type: text/plain; charset="utf-8"
> 
> Another option is to post-process declare warning
> messages.  Given
> 
>   aspect A {
>       declare warning: Permissions.access() :
> "Access";
>   }
> 
> ajc will emit messages of the form
> ------------
> C:\src\C.java:44 [warning] Access
> class C { void m(){} }
> ^^^^^^^^^^^^^^^^^^^^^
>         method-execution(void M.m())
>         see also: C:\src\A.java:22::0
> ------------
> 
> Capture the messages from the command-line or by
> installing a 
> message handler (using iajc/Ant or the very new
> undocumented
> ajc flag -messageHolder) and munge them to produce a
> config file.
> 
> Not pretty!
> 
> Wes
> 
> ------------Original Message------------
> From: "Andy Clement" <andrew.clement@xxxxxxxxx>
> To: aspectj-users@xxxxxxxxxxx
> Date: Fri, Mar-3-2006 0:11 AM
> Subject: Re: [aspectj-users] Need to enumerate all
> methods for selected advices of an aspect
> The new reflection support in AspectJ5 will allow
> you to query
> what the advice declarations are, but *not* where
> they are
> affecting (that may follow when we get some time...)
> 
> It is possible to use your own message handler which
> will 
> then get callbacks for 'weave info' messages.  To
> see the kind
> of information you would get, turn on weave info
> messages
> in the AJDT options panel or pass -showWeaveInfo to
> the
> compiler.  If it looks like what you want, write an
> implementation 
> of IMessageHolder and pass the class name with 
> -messageHolder to the compiler ... I think that will
> work, although
> I've not tried it !!
> 
> Andy.
> 
> 
> 
> On 03/03/06, András Imre <andras.imre@xxxxxxxxx>
> wrote:
> Hi,
> 
> I have an aspect, which checks access permissions
> before
> allowing execution of certain methods for the
> current user.
> This is done with around advice.
> 
> 
=== message truncated ===



Back to the top