Today we have four containers supported in Turbine! Without arguing semantics, I mean container as in something used to start something up. They are:
1) Turbine's own (and OLD!) old services implementation that implement the Service interface and typically extends TurbineBaseService. This was what Turbine prior to 2.2 was using, and is still there and ticking along. 2) Stratum, which was an evolution of the Turbine services. Shouldn't be used. 3) AvalonComponentService which used the Excalibur container from the Avalon project and was introduced in 2.3. 4) MerlinComponentService which is still under development and uses the Merlin container from the Avalon project and was introduced in 2.4. Now, the nice thing about using the Avalon based components is that they will run unchanged in both the Excalibur and Merlin containers. Additionally, since Avalon is an Apache project, using them follows the "Eat your own dog food" approach. We get great support from the Avalon mailing list, and many of the Fulcrum components run in either Excalibur or Merlin containers in their unit tests. Some even run in BOTH containers! Having said that though, Turbine is an open source project, and if you have an itch, scratch it.. I would be happy to see Pico/HiveMind/Spring/Name your container support added to Turbine. The components in Fulcrum (like Security) right now work just with Avalon containers. However, this is mainly an artifact of the principle developers using Avalon containers. If someone wanted to abstract out the container aspects of Fulcrum Security so it would run in multiple containers, as long as there where sufficient unit tests, I'd be happy to have that. Heck, someone wrote a SimpleContainerService which in turn looked components up from a chain of containers, returning the component the first time it resolved properly. That way the rest of the application doesn't know/care what container is being used. Turbine is an open source project, so please, send in patches and extensions for the changes you want! I can't promise they will all be committed, but they will at be reviewed. And, feel free to setup external projects that have components that work with Turbine. Antelope (http://zebra.tigris.org/nonav/antelopeZebraSample/) and Xingu (http://xingu.sourceforge.net/) are both good examples. Eric Pugh --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
