[jboss-dev] jbossas -beans.xml opt

Kabir Khan kabir.khan at jboss.com
Fri May 15 05:19:46 EDT 2009


AOPDependencyBuilder:
1) Checks for any dependencies from "normal" aspects requiring a proxy  
or weaving
2) Checks for dependencies from aop lifecycle callbacks, and also puts  
those in the KernelControllerContext's DependencyInfo. These do not  
require a proxy orweaving

AOPConstructorJoinpoint:
Checks for "normal" aspects (1 above) and creates an aop proxy if  
those exist

As I mentioned here http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4230773#4230773 
, this can be made more fine-grained. We could only check for aop  
lifecycle things like JMX in AOPDependencyBuilder and not bother with  
all the rest of the "normal" bindings.

On 14 May 2009, at 21:04, Ales Justin wrote:

> No, I think we're still at the level where you agree. :-)
>
> As this "not" can only be applied to AOPDependencyBuilder,
> not on the AOPConstructorJoinpoint.
> Or I think it's just the other way around. Kabir would know better.
>
> Somewhere AOP does kick in, as it knows how to add AOP's lifecycle  
> callbacks to ControllerContext.
>
> Brian Stansberry wrote:
>> If not, that re-opens the discussion as to whether @DisableAOP  
>> should be required, or should be default behavior with an  
>> @EnableAOP. Since AFAICT the thing that made me thing enabling it  
>> was required for the common case was @JMX.
>> Ales Justin wrote:
>>> I don't think we need AOPBD for this. Kabir?
>>>
>>> Hmmm, perhaps something like this should be on the @DisableAOP:
>>> @DisableAOP(allow={INSTANTIATE})
>>> which would mean we don't use AOPDB - since the aspect we expect  
>>> with this bean don't have any dependencies,
>>> but we do want AOP proxy instantiation, since we *do* expect the  
>>> bean to be aspectized.
>>>
>>> Jason T. Greene wrote:
>>>> Ok, so then, why do we need AOPDependencyBuilder to use @JMX? Yes  
>>>> I know the dep builder allows for users to add aspects after the  
>>>> fact, but this is a near *useless* feature, especially for our  
>>>> core components.
>>>>
>>>> Brian Stansberry wrote:
>>>>> The registration of the @JMX handling is in the bootstrap, in  
>>>>> bootstrap/jmx.xml.
>>>>>
>>>>> Jason T. Greene wrote:
>>>>>> Ales Justin wrote:
>>>>>>> (2) @org.jboss.aop.microcontainer.annotations.DisableAOP
>>>>>>>
>>>>>>> This one instructs MC to ignore transparent AOP usage when  
>>>>>>> handling your bean.
>>>>>>> It will not look for aspect dependencies or try to create an  
>>>>>>> AOP proxy.
>>>>>>> It will simply fall back to plain POJO handling.
>>>>>>>
>>>>>>> If you use @JMX or anything similar, this should then *not* be  
>>>>>>> used.
>>>>>>> But for anything else it should be good to use it.
>>>>>>
>>>>>> Can we fix the @JMX (and other known cases) by deploying them  
>>>>>> sooner, as part of the bootstrap for example?
>>>>>> _______________________________________________
>>>>>> jboss-development mailing list
>>>>>> jboss-development at lists.jboss.org
>>>>>> https://lists.jboss.org/mailman/listinfo/jboss-development
>>>>>
>>>>>
>>>>
>>>> _______________________________________________
>>>> jboss-development mailing list
>>>> jboss-development at lists.jboss.org
>>>> https://lists.jboss.org/mailman/listinfo/jboss-development
>>>>
>>> _______________________________________________
>>> jboss-development mailing list
>>> jboss-development at lists.jboss.org
>>> https://lists.jboss.org/mailman/listinfo/jboss-development
> _______________________________________________
> jboss-development mailing list
> jboss-development at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/jboss-development




More information about the jboss-development mailing list