On Tue, 2004-11-09 at 12:16 -0700, Sivaiah Nallagatla wrote: > 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. > well, the listener can get a notifyAuthRequired, and the client, when getting that, could just call _open again, right? -- Rodrigo Moya <[EMAIL PROTECTED]>
_______________________________________________ evolution-hackers maillist - [EMAIL PROTECTED] http://lists.ximian.com/mailman/listinfo/evolution-hackers
