[Seaside] Is seaside supports calling subtask inside task?
Philippe Marschall
philippe.marschall at gmail.com
Sun Oct 7 20:59:42 UTC 2012
On Thu, Oct 4, 2012 at 8:00 PM, Julian Fitzell <jfitzell at gmail.com> wrote:
> Hmm... so if you return your sub-task in #children it will work.
>
> But we normally only insist that you return components that you are
> embedding, not calling, so this may be a bug.
>
> The problem is that by the time the WATaskVisitor has executed the task, the
> WAVisiblePresenterGuide has already visited the decoration chain, so we
> don't notice and execute the subtask. One possible fix is the following:
>
> WATaskVisitor>>visitTask: aTask
> super visitTask: aTask.
> aTask isExecuting ifFalse: [
> [ self halt. aTask execute ]
> on: WARenderNotification
> do: [ :n | (WAVisiblePresenterGuide client: (WATaskVisitor new))
> start: aTask ] ]
I assume the #halt is debug code.
> Probably it's fine, but I'm not sure if it's the best solution or not. We
> could grab the decorations before and after, look for a new decoration then
> just visit it. Or we could stop using WAVisiblePresenterGuide and use a
> subclass or some other visitor entirely to make sure that we execute tasks
> before visiting their decorations.
>
> What do other devs think?
Can you create an issue so that we don't forget this?
Cheers
Philippe
More information about the seaside
mailing list