I believe the Composable/ServiceManager interfaces should be used.

- Dan

Quinton McCombs wrote:
How are you providing access to components/services?


-----Original Message-----
From: Dan Diephouse [mailto:[EMAIL PROTECTED]] Sent: Sunday, January 26, 2003 8:02 PM
To: [EMAIL PROTECTED]
Subject: Re: Turbine, Fulcrum, and Avalon


One other thing. Everyone is in for a rude awakening on how much Fulcrum depends of TurbineServices and TurbineXXX being around.

For example, the Group class in Intake:

TurbineIntake.getGroup(name).init(oids[i], pp)

or the Intake class itself:

String inputKey = TurbineIntake.getGroupKey(groupName)

or DefaultParameterParser:

ArrayList items = TurbineUpload.parseRequest(req);

or TurbineAccessControlList:

return getRoles(TurbineSecurity.getGlobalGroup());

hopefully you get the idea.

- Dan

Dan Diephouse wrote:

Quinton et al,

I've already started the avalonization. I'm converting the rest of the
services and doing away with TurbineServices. I'm like
30-40% done. I
need to still write tests to test all the components and finish converting a component or two. It should be done in a few
days. I need
to be able to use it in other containers besides ECM (ie:
Plexus which
Jason is working on) along side my own components.

For the moment I'm using a seperate Torque properties file until the
Torque people get their thing going with avalon's
configuration or some
other solution is worked out. However, the rest of the
properties are
going to be in the XML file. A properties to XML converter
needs to be
written yet. Maybe someone could start? I won't get
around to it for a
couple days.

- Dan

Quinton McCombs wrote:


I would like to propose that we drop stop using the
strutum lifecyle
interfaces altogether in favor of Avalon's interfaces. Right now Turbine only using the component loader (Stratum based)
for loading
Torque and Fulcrum. To replace this, we should use ECM
for loading
of Torque and Fulcrum.

Torque would need to implement Avalon's lifecycle
interfaces instead
of Stratum's. A separate message was just posted to the
torque-dev
about this.

Turbine's core services could also be loaded as components. This would virtually do away with the current service loading
scheme. All
of the current logic in TurbineServices (and all related service management
code) would be handled by ECM (Avalon's component manager).

Fulcrum currently has it's own ECM that is used load load it's services. This can still remain in place. When a service
is loaded
from within Turbine, the request would go to Turbine's instance of the ECM. If there is no component loaded with Turbine's ECM that matched the role, the request would be passed to Fulcrum's ECM.

I think that this can be done without affecting the way
that services
are used within Turbine. We can still keep the abstract
classes with
static methods that we have in place right now. They will simply pass the request to obtain a reference to the service to Turbine's ECM. Since all of our current services are thread safe,
there is no
need to pass the component back to the ECM after each use.



The next issue is that of logging. Although ECM 4.1 will not make use of log4j, the latest development version does appear
to do so. I
have played around with this a little but I don't have
that working yet.



--
To unsubscribe, e-mail: <mailto:turbine-dev-> [EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>




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

Reply via email to