Stefano Mazzocchi <[EMAIL PROTECTED]> wrote:

> 
> Ugo Cei wrote:
> > Sylvain Wallez wrote:
> > 
> > 
> > I'm using the flow and I'm using sessions too. The applications I'm
> > currently developing with the flow are composed of many independent 
> > "flows", each with its own entry point. Consider the case of an 
> > e-commerce site. These entry points might be:
> > 
> > - search for an item
> > - add item to cart
> > - show cart
> > - delete item from cart
> > - proceed to checkout
> > 
> > I don't think I can combine all of these (and many more) in 
> as single
> > flow, held toghether with continuations. But I still have 
> the need to 
> > have a user session spanning those operations, and I do this with 
> > per-session global variables in the flow. As you might know, global 
> > variables in a flowscript are associated with a session 
> when you call 
> > cocoon.createSession(). In the above example, the cart, or 
> the user's 
> > profile, would be associated with the session.
> > 
> > I am somehow aware that I am abusing sessions here, and 
> that there is 
> > a
> > better way, but it's not that easy to follow, probably. If 
> you can show 
> > it to me, I'd be glad to abandon sessions, but if you take 
> them away 
> > right now, I'm going to be in trouble ;-).
> 
> Great, integration between different not-all-flowable parts 
> is a *real* 
> need for sessions in the FOM.

This is a long term issue I have to solve also. I think what is happening
here is that Ugo is looking for Work flow as opposed to presentation flow;
IE; he needs yet another flow layer on top of flow.  You can think of
graphing out the work flow dependency graph the same way you have a
presentation dependency graph.  You can solve the problem the same way.
It's an abstraction running over another abstraction, but I think we're
going to keep running into this as a requirement... 

> 
> So +1 to add it.
> 
> Anybody against it?

Well, no, but I think the real solution is to allow flow layers to be
stacked on top of each other as needed, each providing continuations for a
particular level of abstraction. However, I haven't yet had the time to
start playing with the existing flow so I'm having a hard time coming up
with any kind of concrete proposal on how it would be implemented; it's also
one of those things that can be done in a 2.2 or 2.3 type time frame if you
don't mind having to keep session around for legacy support.

> 
> Stefano.
> 

Reply via email to