Was thinking about this as well; currently, the instantiated service is passed as a 
parameter to the
initializeService() method.

I'm thinking of stripping this out.

It makes a kind of sense for the singleton and deferred service models ... in case 
they want to,
say, register with some other service and have the invocation go through the service 
methods
(including interceptors, such as logging).

However ... adding in the thread-related service models (threaded and pooled), I can't 
decide what
object they should get ... the service implementation or the proxy?

The more I thought about it, the more I thought the proxy was right; all connections 
between
services should go through the right proxies, or you run the risk of either (a) 
invoking a method on
a discarded threaded service impl or (b) invoking a method on a pooled service impl.

A service can simply use the BuilderFactory to assign its "serviceThis" to a property, 
if it wants
to hook itself to another service; it simply won't be hooking any particular instance 
of the service
that way.  Otherwise, the service impl may want to hook a specific instance to the 
other serivce ...
in which case, it can pass "this".

--
Howard M. Lewis Ship
Creator, Tapestry: Java Web Components
http://jakarta.apache.org/tapestry
http://jakarta.apache.org/commons/sandbox/hivemind/
http://javatapestry.blogspot.com


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

Reply via email to