Re: [Evolution-hackers] online/offline in e-d-s



On Mon, 2004-11-08 at 18:41 +0100, Rodrigo Moya wrote:
> On Sun, 2004-11-07 at 21:29 -0700, Sivaiah Nallagatla wrote:
> > 
> > I am planning to implement a eds-offline-listner which listens to a
> > gconf key to get to know of online/offline changes (this gconf will a
> > desktop wide one if one gets implemented or if we resort to using some
> > gui element in evolution to set online/offline modes , it will be a
> > gconf key installed by e-d-s). This listner will be instantiated in
> > e-d-s main function (server.c). Whenever there is a change in gconf
> > setting,  this listner will set the online/offline modes (dependning
> > upon the setting value) on e-data-cal-factory and e-data-book-factory by
> > calling methods like e_data_(cal/book)_factory_set_backends_mode. Here
> > we can just set mode on the cal and address book factories created by
> > e-d-s or we can query bonobo to get references of all cal/book factories
> > created by other processes like exchange connector and set on all of
> > them.
> >
> I guess we'll have to do that, or have the exchange connector do it
> itself, or, maybe, have exchange's calendar and contacts backends be
> just loadable e-d-s modules?
>  
> > Evolution need to have  a account level setting to mark all the
> > (mail/contacts/calendar) folders for offline usuage and also per folder
> > level setting to mark per offline usuage. e-d-s caches contents of only
> > those folders which are marked for offline. Other folders can not be
> > user in offline mode.  
> > 
> how does e-d-s know that? Maybe we can set a property on the ESource's?
> 
> > 
> > There is a problem related to authenitcation when user starts evolution
> > in offline mode and then switches to online mode. Now backends need to
> > authenicate to servers but they do not have access to passwords.  Since
> > all the backends are already loaded in offline mode, evolution won't
> > call open methods on the backend again with passowrds. I am stil
> > thinking what to do here. 
> > 
> IIRC, we talked the other day about having a new notification from the
> backends to the clients (notify_needs_authentication, or notify_error
> with a specific error code that marks the NEEDS_AUTHENTICATION part),
> and so have the client re-call the _open method. How does that sound?
> any other idea you have came to?
> 

I am yet to try this, but it seems to work at first thought, only thing
i  am thinking about this is , currently e_(book/cal)_listeners have
notifications about only  status changes in backend, completion of
opeartions like item created, deleted etc by the backend. Notification
for auth is different from others  as in this backend is notifying
clients to get something back from them, i am not sure whehter it
properly fits into listner classes. 

Siva

> The rest looks great to me



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]