cocoon-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Reinhard Pötz <>
Subject Finishing FOM
Date Mon, 16 Jun 2003 15:23:51 GMT
> From: Stefano Mazzocchi


> Chris suggests we release 2.1 without bothering the FOM because it 
> will need time to adjust anyway. I agree, but what really worries me 
> is the fact that we *already* know it's going to change radically and 
> releasing such a bad contract is not going to be good publicity for 
> cocoon in general from contract solidity perspective.
> you can mark it as beta as much as you like, but people are going to 
> discover it, fall in love with it, use it for testing, then pressured 
> by their bosses, put it in production, then ask support for it, or at 
> least a back compatibility layer.
> Do you really want to force our users to go thru this? I don't.

That's exactly the point! The flow needs users that implement it in many
real life projects to make it stable from an implementation point of
view (altough I think it _is_ already very stable.). But this needs a
stable interface (FOM) because otherwise many users will hesitate to use
it in production and I learned in the past that only real life problems
can really challange a new concept or technology.

And additionally I'm +1 for the evolutionary approach small to big
because it makes it easier to maintain your application in the future.

                                       - o -

So let's try to finish the FOM! 

First I summarized the agreed points here:


And after looking through the latest discussion of the FOM the open
points are:

 - Component loading 
   Object getComponent(id) -> obtains the component indicated by the
given ID
   Stefano wrote:  "Obviously, the flow will not have access to *all*
   but only to components that will be 'flow-available'."

   Stefano, could you elaborate on this? 
   How would you make a component flow-available? How does this avoid
   possible abuse of the control flow?

 - stateful components -> how to release them?

   There have been two mails:

   Are there any more thoughts about this?

 - Should the flow _always_ be associated with a Session?

 - void callAction(name,map) -> invoques the action indicated by the
given name 
                                and pass the given map as model

   Is there anybody against removing it? Is there a real need for it?
   I would say we should remove it and point people asking for
   it to
   And if we want we can decide to add it to the FOM at every time ...

 - Context
   Which methods are available? Especially do we need setAttribute(
name, value )?


And here some points that have not been discussed yet (or overlooked by

 - What has happened with the continuation object? Don't we need it any

 - Do we need access to the modules? Or is the prefered way using
   getComponent( id ) in the future?

Are there any other open points?

PS: My time is very limited at the moment but I'm willing to help as
much as (and if) I can!

View raw message