sounds like you're reinventing the place service, with event bus, with
local cache rpc service, but doing it in a new, innovative, complex
and if the code grows on you perhaps unintelligible way. if you're the
only one who will support this ever, that may work. otherwise i would
seriously look into a bunch of mvp-like frameworks out there and look
at how place services/managers, local caches, and event buses are
implemented. you don't need to use the framework, but the concepts are
very helpful to organize the code. they're straightforward and most
people understand the design.

On Jun 16, 5:46 am, Thomas Broyer <t.bro...@gmail.com> wrote:
> On Jun 16, 3:52 am, Sky <myonceinalifet...@gmail.com> wrote:
>
>
>
>
>
> > Well, I don't know about the event bus and I have yet to watch that
> > GWT best practices video (but I really should!) and I haven't done MVP
> > with GWT, BUT I'm super creative so here's what I would do with your
> > situation! :D
>
> > I would have an object that is rather more aware of the all
> > recoverPanelFromHistory async actions going on. This object would
> > store a copy of each other object that is performing the
> > recoverPanelFromHistory for a specific panel. (in other words a list
> > of objects that have the method(s) controlling all that async
> > goodness) The code inside recoverPanelFromHistory() that does the
> > async data retrieval from the server would talk back to this object,
> > which is the "owner". It tells the Owner that it's finished getting
> > the data (even when it already had the data cached). Every time the
> > owner gets told that one of it's "subjects" finished getting data it
> > checks to see if that was the last "subject" to get it's data, and if
> > so it talks to the mainContentPanel and gets it to do it's view change
> > (clear and add). Inside the recoverPanelFromHistory code you can do
> > your repeatedly trying to obtain the data and even if you don't get
> > the data until a day later when the user finally reconnects your code
> > will be able to continue on no prob.
>
> > Did that make sense? It makes sense in my head, so if it doesn't make
> > perfect sense to you ask me to clarify things and I'll do my best!
>
> Totally makes sense. In other words: make recoverPanelFromHistory
> async, with a callback passed as an argument rather than returning a
> value; and if data is cached, then just use the callback synchronously
> (of call it from a Scheduler.scheduleFinally if it makes you nervous
> to have your async call actually be synchronous)

-- 
You received this message because you are subscribed to the Google Groups 
"Google Web Toolkit" group.
To post to this group, send email to google-web-tool...@googlegroups.com.
To unsubscribe from this group, send email to 
google-web-toolkit+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-web-toolkit?hl=en.

Reply via email to