On Dain's side it's all in the XBean repository, which a sub-project in geronimo. The changes to Plexus need to be made. Dain is still working on that. But the DI api which is the interesting thing is all in XBean.

On 13-Mar-08, at 9:08 PM, Rahul Thakur wrote:

Hi Jason,

Is this hosted somewhere where we can take a look or start poking around?

Cheers,
Rahul




Jason van Zyl wrote:

On 28-Feb-08, at 3:00 PM, Barrie Treloar wrote:

Jason, do you want to talk some more about XBean, DI, & Maven/ Plexus etc?


XBean Reflect (XBR) is really something more akin to Guice. XBR is more complete then what I have in Plexus and I honestly only ever cared about
private field injection and Plexus only does constructor and setter
injection now. XBR does private field, constructor, bean factory, and
setter injections. Dain and I chatted and decided to come up with an
interface for DI that XBR would provide and that Plexus could consume.
Dain has done the XBR side and is now going to remove Plexus' DI in
favor of XBR. XBR is currently used in OpenEJB and David Jencks might be
interested in it for Geronimo. So that would be the first step of
collapsing out the DI code in Plexus and using XBR as a library.

I have also been talking with the Pico folks and if we could then
abstract some container features I would be happy to chop out another
huge chunk of Plexus and use Pico. So I'm hoping that we can arrive at
the interface for DI which Pico and Plexus can use, and then take the
bottom out of Plexus and use Pico in there. Ultimately the features I
have in Plexus that I like are specifically for plugin systems like
Maven. I have mechanisms for component configuration, configuration
sources which can configure multiple components (like an application
specific configuration being mapped on to components, this is what is
done in Nexus), dynamic metadata translation (maven plugins are plexus
components which are flipped on the fly), dynamic component discovery
(maven plugins don't exist anywhere in the system until they are
downloaded and wired up in the container), and runtime nature of a
component system. Really this is what I am interested in and if Dain,
Paul, Mauro, Peter want to do the DI and base container stuff that's
great. We have all made containers and while it's very interesting we
all go to bed at 10pm now, have lives (well some of us) and if we want
any traction we know we have to work together. Dain, Paul and myself
have been trying to hash this out for 4 years while things like Spring
just took over, and things like Juice popped up. We're trying to take
our personalities out of the equation (and that is very, very, very hard as we're all territorial which is good and bad) and make a better system.

The other interesting thing is that Dain sees JAXB as being an almost
complete DI system itself. So if we create this interface and we can get Kohsuke to mess around with JAXB then maybe we can throw all our stuff
away and let JAXB do the DI. That's where we're headed and it finally
looks like we're making some headway. Dain will probably be done the
first pass next week sometime and then we'll spend a week finding all
the problems by running the Maven ITs. None of us are interested in
using Spring but we're interested in running Spring applications which
there are chunks of code lying around. And none of us are really
interested in using OSGi but definitely want to interoperate (I actually
had a good chat with Jeff McAffer and we actually talked about what
would need to be done to run Maven on OSGi). We all like containers and
want to continue working on them and we realize we can work on more
interesting problems if we work together. This may seem perfectly
obviously but it's been nearly impossible to get this point. Dain, Paul,
and myself are very similar and in the past many of the conversation
would go something like "Hmm, that's nice. My container can do this, my container can do that ... yada yada yada." Meanwhile many other systems have cropped up and served people better. I'm not a big fan of Spring's
internals or architecture but absolutely no one can argue with their
dedication to users, good documentation, helpful community and we
realize we've done a disservice to people using our stuff because we
can't cooperate. The merger of XBR into Plexus will be the first step
away from this pattern and it's almost done.

I've had a brief look at http://geronimo.apache.org/xbean/index.html
but some of the pages are thin and the diagrams are coming up with
exceptions.

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Thanks,

Jason

----------------------------------------------------------
Jason van Zyl
Founder, Apache Maven
jason at sonatype dot com
----------------------------------------------------------

We know what we are, but know not what we may be.

-- Shakespeare



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Thanks,

Jason

----------------------------------------------------------
Jason van Zyl
Founder,  Apache Maven
jason at sonatype dot com
----------------------------------------------------------

believe nothing, no matter where you read it,
or who has said it,
not even if i have said it,
unless it agrees with your own reason
and your own common sense.

-- Buddha



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to