james-server-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From echo <echo...@gmail.com>
Subject Re: requestRows() in MessageTableModel is invoked prior to onLoadMessagesEvent
Date Tue, 31 Jul 2012 09:16:17 GMT
Hi Manolo
Thanks for your explanation, same as what I'v figured out from the
code though. I believe the code have been very familiar with me very well ;)

I dont follow what your problem is, so let me explain how hupa loads the
> Messages table:
>
I use Eclipse's DEBUG to run both Hupa and Hupa Evo, while the execution
order is different with each other when stepping into
the MessageTableModel's breakpoints.
It looks that Hupa's order is right that it will fire onLoadMessagesEvent
before requestRows(), yet Hupa Evo's is just so different that it will
result in a wrong result.


> - Hupa is listening for the Login success event in two places:
> AppPresenter (Line 121) and MainPresenter (Line 480)
> - When the user logs in:
>   1- the AppPresenter loads the mainPresenter which fires the FetchFolders
> command in the revealDisplay call updating the folders tree (mainView).
>   2- at the same time  MainPresenter executes the showMessageTable for the
> Inbox folder, which loads the imapMessageListPresenter and in the
> revealDisplay will update the message list
> - At this point, the code of imapMessageList is very complex, as you can
> see the MessageTableModel is there to decouple the logic of the app from
> the view, but it is the imapMessageListView which is adding handlers etc.
> to that.
> - Another problem as I have said before, is that we use the revealDisplay
> for a lot of things, causing it to be called in parallel which have
> performance problems.
>
> Anyway, the MessageTableModel used in hupa depends on the gwt-incubator
> stuff, but in hupa-evo you have to get rid of that in favor of Cell tables
> in gwt. So dont spend time trying to reuse these components, I would create
> a new presenter for the east part.
>
Yep, I am not wasting my time in this issue, because I know we will replace
the gwt-incubator with new things. I am trying to use
"com.google.gwt.user.cellview.client.DataGrid" to replace the
"MessageTableModel" now.


>
> - Manolo
>
>
>
>
>
>
> On Thu, Jul 26, 2012 at 10:18 AM, echo <echowdx@gmail.com> wrote:
>
>> I also found that there is no code fire the FolderSelectionEvent in Hupa.
>>
>> On Thu, Jul 26, 2012 at 4:14 PM, echo <echowdx@gmail.com> wrote:
>>
>>> I also debugged to run Hupa, the order is different with Evo. It will
>>> invoke the  onLoadMessagesEvent at first, and then   requestRows().
>>>
>>>
>>> On Thu, Jul 26, 2012 at 3:31 PM, echo <echowdx@gmail.com> wrote:
>>>
>>>> Hi Manolo,
>>>> As the subject's situation, in Hupa Evo, requestRows() can not get the
>>>> folder in time after I click the folder on the west panel that will fire
>>>> the onLoadMessagesEvent. Because the folder is assigned after the event is
>>>> fired which is later than requestRows() method being invoked. (You might
>>>> check this simply from the attached file)
>>>> Do you know what I mean? But why Hupa is right.
>>>>
>>>>
>>>> --
>>>> *echo*
>>>>
>>>
>>>
>>>
>>> --
>>> *echo*
>>>
>>
>>
>>
>> --
>> *echo*
>>
>
>


-- 
*echo*

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message