tapestry-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Harish Krishnaswamy <hkrishnasw...@comcast.net>
Subject Re: HiveMind feedback/questions
Date Tue, 09 Sep 2003 04:44:00 GMT


Howard M. Lewis Ship wrote:

>--
>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
>
>  
>
>>-----Original Message-----
>>From: Harish Krishnaswamy [mailto:hkrishnaswamy@comcast.net] 
>>Sent: Monday, September 08, 2003 4:20 PM
>>To: Tapestry development
>>Subject: HiveMind feedback/questions
>>
>>
>>I put the Adder example together with a LoggingInterceptor in three 
>>modules and its pretty slick. Although the free form schema 
>>gets my head 
>>spinning ;). I think it'll take a little bit to get adjusted 
>>to living 
>>without constraints! I like the fact that it can support both IoC and 
>>SoC, nice! And the documentation is great.
>>
>>I have a few questions:
>>1. What is rationale behind the names <service...> and 
>><extension-point...>? That would probably clarify my 
>>confusion with the 
>>names. 
>>    
>>
>
>The naming is a bit tricky.  I eventually ended up with <extension-point> and <extension>
because
>that part of HiveMind is very close to Eclipse's plugin model; I decided that rather than
have
>competing names, I'd use the Eclipse names.
>
>To some degree, I wish I had gone with an earlier idea that I discarded (can't remember
why) where
>an extension point could be either a configuration extension point, a service extension
point, or
>both. 
>  
>
I had the same thought, but then I thought you might have differentiated 
them because of the special service contributions (create-instance, 
...). The other way would have definitely been much more simpler. Also, 
I had all along thought that the Hivemind service was analogous to the 
eclipse extension-point because they both provide behavioral extensions, 
while Hivemind extensions as such only provide objects that have to be 
manipulated by a service or something, am I at a loss here?

>
>  
>
>>It got me a little confused initially, 
>><service-extension-point...> and <config-extension-point...> is more 
>>intuitive to me.
>>2. How to debug deferred services when dynamic proxies are 
>>used?
>>    
>>
>
>Place your breakpoints inside your service implementation class.  Proxies and interceptors
shouldn't
>need to be debugged.  In some cases, there's a method in an abstract class you can place
breakpoints
>in.
>
I was actually trying to trace the call-chain from RegistryBuilder and 
couldn't proceed after I hit the proxy but I guess I can switch the 
service to Singleton for this purpose, right? I shall try this tomorrow.

>
>
> 3. In the BuilderFactory which service extension point 
>  
>
>>id gets stored in 
>>the point-id-property? 
>>    
>>
>
>If you use the BuilderFactory to construct service "foo.bar.Baz", then the point-id-property
is used
>to specify the property, of type String, to be set to "foo.bar.Baz".  Constructing and
configuring
>the core service implementation using the BuilderFactory is entirely seperate from the
interceptor
>stack.
>
>
>For example, if I use a 
>  
>
>>LoggingInterceptor like...
>>  <extend-service service-id="hivemind.examples.Adder">
>>    <interceptor service-id="hivemind.LoggingInterceptor" order="10"/>
>>  </extend-service>
>>    
>>
>
>Here, the property will be set to "hivemind.examples.Adder", regardless of what interceptor(s)
are
>contributed in.
>
>--
>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: tapestry-dev-unsubscribe@jakarta.apache.org
>For additional commands, e-mail: tapestry-dev-help@jakarta.apache.org
>
>
>  
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message