cocoon-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Sylvain Wallez <sylv...@apache.org>
Subject Re: svn commit: r156459 - in cocoon/trunk/src: blocks/xsp/java/org/apache/cocoon/components/language/programming/java/JavaProgram.java java/org/apache/cocoon/sitemap/ContentAggregator.java java/org/apache/cocoon/sitemap/DefaultContentAggregator.java
Date Wed, 09 Mar 2005 10:06:45 GMT
Carsten Ziegeler wrote:

>Sylvain Wallez wrote:
>  
>
>>Yes, of course. The new proxied-poolable feature recently added by 
>>Carsten prevents casting a looked-up component to a specific class, as 
>>the returned object is a proxy. That led to ClassCastExceptions.
>>
>>That's why I introduced an additional interface for ContentAggregator, 
>>as AggregateNode in TreeProcessor expects the generator used for 
>><map:aggregate> to be one to which the various <map:part> can be added.
>>
>>    
>>
>If you don't use the proxy but enable old pooling behaviour, you don't
>need the extra interface - this worked already for usual aggregation,
>see cocoon.roles:
>  <role name="org.apache.cocoon.generation.Generator/&lt;aggregator&gt;"
>        default-class="org.apache.cocoon.sitemap.DefaultContentAggregator"
>        model="non-thread-safe-pooled"/>
>  
>

I used "non-thread-safe-pooled" for XSP, as the class we cast to is very 
local to the XSP block, but preferred going the interface way for 
content-aggregator, as the component implementation and its use are in 
different locationq.

>But perhaps using interfaces is a better separation anyway :)
>  
>

Exactly!

Sylvain

-- 
Sylvain Wallez                                  Anyware Technologies
http://www.apache.org/~sylvain           http://www.anyware-tech.com
{ XML, Java, Cocoon, OpenSource }*{ Training, Consulting, Projects }


Mime
View raw message