|
1. ResultEvent & FaultEvent events. I
disagree with this change, so have changed them back instead of of
using the * change for the Responder interface.
2. Command callbacks. Sometimes, there is a
legitimate need for a View to "know" when a Command is completed. In my
consulting, we've added an optional callback method that can be passed via
EventBroadcaster (Cairngorm 1). So, View's launching Commands have the
option of using a Callback (like flash.net.Responder) to have a result method
called when the Command is done. We extended Cairngorm's command to have
all of this plumbing hidden. The convention we have is, "If the View has
his onResult run, he can conclude that the Command succeeded in it's
operation." If a fault was fired in the Delegate, this means the app is
broken and needs to be fixed. There is no error handling, only error
fixing.
In my personal work, I've implemented both; result
and faults, via Event's. If an event extends my JXLEvent class (which
extends Cairngorm), it has the option of getting those callbacks. I should
probably do it like we do it at work, but for now, it works. I like
handling errors, so although fault and result are pretty low level, I can have
View's handle errors (or Commands obviously).
Both avoid ViewLocator via a nice convention.
It also makes it cake to have a chained command with visual feedback. You
can have your View fire off other commands in a particular order AND show visual
feedback the whole time. Could you do this by binding? Sure,
but I'd rather use functions vs. state variables.
3. Added 2 methods to ServiceLocator. He
doesn't support Producer or Consumer (MessageAgent) services, so with a new
method he does. He also doesn't support NetConnection; with the new
method, he does. Since Cairngorm was made for a more request response, it
feels like both of the above are halfway implemented, but for sending messages,
Cairngorm works great, including Acknowledge messages for Delegates that fire
the original message. In both cases, actual callbacks are handled by
totally different classes that basically act as Observers, and emit
events. The more specialized (for example, a channel in FDS created for
Text messages, and thus Chat only) is an extension of that ConsumerObserver
class, called ChatObsever, and he omits Chat specific events for those who
care. They, like Delegate's, utlize ServiceLocator.
I would, however, prefer you all either give me a
better idea(s), christen this idea as good for handling NetConnection / FDS'
consumer/producer model, and/or implement something that supports these push
based technologies into Cairngorm.
With the exclusion of #1, both #2, and #3 can be
done via extneding the Cairngorm base classes so you're not affecting the
original framework, only extending it. I'd prefer #3 be made official
though, by you all somehow, some way.
----- Original Message -----
From: Steven Webster
Sent: Monday, July 03, 2006 6:03 PM
Subject: RE: [flexcoders] Re: Cairngorm Responder interface
changes Jesse,
I'd love for you to share the modifications you're making
to Cairngorm, and to understand the rationale behind these changes. It's
not our intention that developers would typically need to change the
framework locally, and doing so certainly makes it more difficult for folks to
follow us on any upgrade paths as time rolls by. Different strokes for
different folks though.
But if you can share your motives for changes, and the
changes themselves, then we can consider rolling them into the framework if they
satisfy general concerns.
Best,
Steven
__._,_.___ -- Flexcoders Mailing List FAQ: http://groups.yahoo.com/group/flexcoders/files/flexcodersFAQ.txt Search Archives: http://www.mail-archive.com/flexcoders%40yahoogroups.com
SPONSORED LINKS
YAHOO! GROUPS LINKS
|
- Re: [flexcoders] Re: Cairngorm Responder interface cha... JesterXL
- Re: [flexcoders] Re: Cairngorm Responder interfac... Tom Chiverton
- Re: [flexcoders] Re: Cairngorm Responder inte... JesterXL
- Re: [flexcoders] Re: Cairngorm Responder ... Tom Chiverton
- RE: [flexcoders] Re: Cairngorm Respon... Steven Webster
- Re: [flexcoders] Re: Cairngorm R... JesterXL
- [flexcoders] Re: Cairngorm R... Tim Hoff
- RE: [flexcoders] Re: Cairngo... Steven Webster
- [flexcoders] Re: Cairngo... Tim Hoff
- Re: [flexcoders] Re: Cai... JesterXL
- RE: [flexcoders] Re: Cai... Dimitrios Gianninas


