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



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?

The rest looks great to me
-- 
Rodrigo Moya <rodrigo novell com>




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