my comments inline
On Fri, Dec 4, 2009 at 1:49 PM, Marko Strukelj <marko.strukelj(a)gmail.com>wrote:
Hey,
So 'mvn install' on core, ws, and jcr is enough for fully testing jcr?
yes + gateIn ideally
I get BUILD SUCCESSFUL on all of them. And I made sure they all really used
my mc-integration artifacts.
I've been building the whole GateIn distribution by building portal and
doing the packaging with portal/packaging/pkg.
Last time I tried there were some test failures there, but not related to
any exo-kernel stuff ...
Are there any other tests that would be good to run?
How exactly do we proceed then ... You give the green light, and I do the
merge from mc-integration branch to trunk?
I'll be doing more commits in mc-integration so they'll have to be
periodically merged into trunk ...
ATM I'm looking into a possible solution for zero-args constructor
requirement. There might be a way to work around that.
That would be great as we wouldn't have to add dummy empty constructors to
some of exo/gatein services to make them viable for AOP.
Finish your current work if it is not too long, then check again your
updates against core/ws/jcr (and gateIn). Once done, please ping me for a
go, once you have my go, you can merge everything into the trunk.
This way to proceed, is ok with you?
Cheers,
- marko
On Fri, Dec 4, 2009 at 8:36 AM, Nicolas Filotto <nicolas.filotto(a)gmail.com
> wrote:
> Hi Makro,
>
> We would like to integrate your job in the next release of eXo JCR (i.e.
> JCR 1.12.0 beta 5), thus I would like to know if you could check locally in
> your machine, if all the unit tests of eXo JCR pass with your updates. The
> goal is to annoy the less we can the eXo JCR Team which is already
> overloaded. So please change locally the dependencies to eXo kernel and
> launch "mvn clean install" in first core, then ws and finally jcr. Ideally
I
> guess that you should do the same for GateIn in order to check the complete
> stack.
>
> If you don't meet any problem we will apply your changes asap, otherwise I
> expect from you to review your code in order to make it fully backward
> compatible as we agreed.
>
> Thank you in advance,
> BR,
> Nicolas
>
> On Tue, Dec 1, 2009 at 6:57 PM, Marko Strukelj
<marko.strukelj(a)gmail.com>wrote:
>
>> Hey,
>>
>> I've addressed the two issues regarding mc-integration:
>>
>> 1) Separate mc-integration code in its own module, so that container
>> module has no dependencies on mc-kernel artifacts.
>> 2) Add xml file configuration for marking certain components to use
>> mc-interception even though they are not marked as @InterceptMC
>>
>> Quick starter doc is here:
>>
http://anonsvn.jboss.org/repos/exo-jcr/kernel/branches/mc-int-branch/exo....
>>
>> There are full instructions for checking out, building, packaging jboss
>> or tomcat for integration tests, and running the integration tests.
>>
>> The AOP integration has some limitations:
>>
>> "Because proxy mechanism is used to do AOP, there is a requirement that a
>> class to be AOP-ed needs to have a public or protected zero-args
>> constructor.
>>
>> Service objects that make up exo-kernel and gatein mostly use
>> constructor based DI, and only have constructors that take some injected
>> parameters. In order to make these eligible for AOP, *we would have to
>> make sure they all have a protected zero-args constructor*."
>>
>> Any added noop zero-args constructor (let's call it 'fake
constructor')
>> would be there purely for technical reasons (proxy extends service
>> implementation type to keep type compatibility), and will only be invoked
>> during proxy object instantiation - when object state and semantics don't
>> matter. Proxy is a dummy object that delegates everything to the actual
>> service instance. Any other state that happens to be inherited by the proxy
>> instance is ignored, and unused.
>>
>>
>> "Also, when AOP is activated, field injection doesn't work even if
it's
>> turned on. This is again a limitation of proxy mechanism and inability to
>> intercept set-field operations in java."
>>
>> I'm still doing some code beautification - javadoc, some tests ...
>>
>> Julien maybe take a look if you can find some additional suggestions
>> about the build or something else.
>>
>> Cheers,
>>
>> - marko
>>
>>
>>
>> _______________________________________________
>> gatein-dev mailing list
>> gatein-dev(a)lists.jboss.org
>>
https://lists.jboss.org/mailman/listinfo/gatein-dev
>>
>>
>
>
> --
> Nicolas Filotto
> JCR Product Manager
> Project Manager
> eXo Platform SAS
> nicolas.filotto(a)exoplatform.com
> +33 (0)6 31 32 92 19
>
--
Nicolas Filotto
JCR Product Manager
Project Manager
eXo Platform SAS
nicolas.filotto(a)exoplatform.com
+33 (0)6 31 32 92 19