cocoon-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Joerg Heinicke <>
Subject Re: Pipeline components and Object Model issues
Date Sun, 19 Aug 2007 21:50:40 GMT
On 17.08.2007 2:45 Uhr, Grzegorz Kossakowski wrote:

> Not entirely true. ObjectModel can be modified during component's 
> execution at random times, really. It happens all the time in template 
> generator where Object Model is passed almost everywhere and it depends 
> on incoming SAX events if OM will be modified. So it's predictable 
> during setup phase but not during execution.

What I meant was that this modification of the OM happens in a 
predictable way (though potentially overly complex to predict). You can 
interrupt the processing at let's say the 100th SAX event and you know 
exactly how it looks like. Doing exactly the same on a second request 
there will be no difference.

Thread execution is not predictable at all.

> I could agree with you that introduction of scope does not make sense in 
> 1:1-relationship but since component can make internal requests and if 
> we want to provide some environment forwarding/sharing (see 
> COCOON-2050[1] and [RT] The big picture of Servlet Service Framework 
> e-mail[2] for examples where it could be needed) we will need to obtain 
> OM and we should get exactly the same OM component making a request have.

I can't see how the environment changer approach is different than the 
simple wrapper in this regard. Somewhere you have to put the logic for 
environment forwarding/sharing anyway.

>> Actually this whole problem reminds me of session attributes in 
>> portlet environment.
>  From my purist point of view I would say: just don't even think about 
> it! ;)

That was just an idea. In the wrapper approach the difference is just 
about making the parent OM access read-only or also writeable.

It won't take much time until the first user is asking for this 
requirement though I bet ;)


View raw message