> 
> I would strongly encourage using the proxy. For my taste a 
> Service should 
> nearly never give out this. That's because in my mind a 
> Service is not just 
> the implementation but the implementation plus the Interceptors (and 
> ServiceModel proxies) and the implementation does not know 
> about the other. 
> Think of an interceptor which never calls the actual Service 
> but has some 
> replacement etc.

I agree, which means nothing needs to be passed; if the core implementation needs to 
vend out the
proxy, it can use the BuilderFactory to assign the proxy to a property.  Perhaps 
another attribute
of <contruct> to specify which property it should be assigned to.

> 
> Concerning Threaded model: I'd rather see if 
> ServiceImplementations which 
> can be used for Threaded must implement a marker interface (as in old 
> Servlet-spec). There are just too many implementation 
> differences between 
> the Singleton and the Threaded. HiveMind should than check that such 
> Threaded marked ServiceImpl is never used as Singleton and 
> vice-versa. 

I think that's an interesting idea; threaded core impls must implement a Threadable 
marker
interface; pooled implementations must implement a Poolable interface.

Hm.  Marker interfaces as a precurser to JD 1.5 code attributes.

--
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