[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [aspectj-users] aspectj configuration question

 
<aspect name="A" scope="com.foo.A AND org.x.B"/>
AND ? I would expect an OR statement
I will test it ...

Cordialement / Best regards

Jean-Louis Pasturel


-----Message d'origine-----
De : aspectj-users-bounces@xxxxxxxxxxx
[mailto:aspectj-users-bounces@xxxxxxxxxxx] De la part de Andy Clement
Envoyé : mardi 26 octobre 2010 18:32
À : aspectj-users@xxxxxxxxxxx
Objet : Re: [aspectj-users] aspectj configuration question

I believe they are type patterns

<aspect name="A" scope="com.foo.A AND org.x.B"/>

not sure i have any testcases for that though...

Andy

On 25 October 2010 10:57, yohan chandra <yohan.chandra@xxxxxxxxx> wrote:
> Thanks for the answer, I will try the aspect scoping mechanism as
mentioned.
>
> One question: Suppose If i have multiple classes in scope for an 
> aspect, how would i define it?
>
> Will I have to define it twice?
> <aspect name="A" scope="com.foo.A">
> <aspect name="A" scope="org.x.B">
>
> or does scope have any delimiter? comma for example:
> <aspect name="A" scope="com.foo.A, org.x.B">
>
> Regards,
> - yohan chandra -
>
> On Fri, Oct 22, 2010 at 2:34 PM, Andy Clement 
> <andrew.clement@xxxxxxxxx>
> wrote:
>>
>> Few points:
>>
>> > 2.is there any way to configure specific aspect to weave only 
>> > specific class(es), example: AspectA weaves only servicesA?
>>
>> You can do this actually, in the XML.  See the AOP Scoping section in 
>> the 1.6.9 readme:
>> http://www.eclipse.org/aspectj/doc/released/README-169.html
>>
>> The options Andrew referenced are actually on by default for loadtime 
>> weaving, they are only experimental (and so you have to actively turn 
>> them on) if you are working in AJDT with compile time weaving.
>>
>> > Thanks for the answer. I actually have applied the 1st approach, 
>> > the pointcuts and advices defined in aspectA are applied to 
>> > serviceA only and it's working well. However the issue is with 
>> > memory I believe even though only specific pointcut is applied, the 
>> > class has been woven by other unrelated aspects and this consumes 
>> > memory.
>> > I monitored my app and I noticed a large increase of memory usage 
>> > since AspectJ got implemented. I took the heap dump and significant 
>> > portion of it are AspectJ related instances.
>>
>> The classes wont be woven by other unrelated aspects unless they 
>> matched the classes in some way.
>>
>> > My app has lots of aspects and lots of "include within" classes. As 
>> > I watch from the log, each of this "include within" class is woven 
>> > with number of aspects that I have, even though only specific 
>> > aspect will be applied later by the pointcut.
>>
>> Perhaps you mean 'matched' rather than 'woven'?  Every class will be 
>> matched against every aspect, but only those that match the type will 
>> affect it.  If you are seeing aspects that don't match a type being 
>> woven into it, that would be an AspectJ bug?
>>
>> > Suppose If i have 20 aspects and 30 "include within" classes the 
>> > total number will be 600. I am trying to reduce the memory usage of 
>> > my AspectJ implementation as much as i can so it can go into 
>> > production but currently I am blocked.
>>
>> Yes, 20 aspects, 30 classes.  each class will be matched against all 
>> 20 aspects, but if your pointcuts dont match it, the type will not be 
>> woven by an aspect.
>>
>> How about just trying the aop scoping mechanism I mentioned ?
>>
>> Andy
>> _______________________________________________
>> aspectj-users mailing list
>> aspectj-users@xxxxxxxxxxx
>> https://dev.eclipse.org/mailman/listinfo/aspectj-users
>
>
> _______________________________________________
> aspectj-users mailing list
> aspectj-users@xxxxxxxxxxx
> https://dev.eclipse.org/mailman/listinfo/aspectj-users
>
>
_______________________________________________
aspectj-users mailing list
aspectj-users@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/aspectj-users



*********************************
This message and any attachments (the "message") are confidential and intended solely for the addressees. 
Any unauthorised use or dissemination is prohibited.
Messages are susceptible to alteration. 
France Telecom Group shall not be liable for the message if altered, changed or falsified.
If you are not the intended addressee of this message, please cancel it immediately and inform the sender.
********************************