On Saturday 02 February 2013 22:04:16 Graham Cobb wrote: > I will probably post the patch for the ActiveSync backend getDatabases > code, using this new function, tomorrow.
I have posted the patch in https://bugs.freedesktop.org/show_bug.cgi?id=60235. Note that I posted the wrong patch first, please use the updated patch. Of course it is dependent on the patch in bug 60204. I am no C++ programmer so you may want to review the patch before applying. It seems to work fine in my testing but you might want to check I haven't introduced memory leaks or similar issues. Note I have only tested against a MS Exchange 2010 server (all I have access to). By the way, I decided that getDatabases would force a FolderSync, even though activesyncd keeps a folder cache. FolderSyncs are not particularly expensive if nothing has changed (the server just says nothing has changed, it doesn't resend the whole list). I anticipate that getDatabases is a fairly rare event (compared with syncs, for example) and is most likely to be requested exactly when something has changed. It also, conveniently, provides a way for the user to force a FolderSync if they need to (I still haven't been able to reproduce the problem of the server insisting on a FolderSync). I considered not doing the FolderSync if the folder list is already in memory but I decided that this doesn't help the most common use case (separate "syncevolution --print-databases username= backend=" commands for each backend) and could be a problem if syncevolution was running as a long-lived server process. Adding timers seemed unnecessarily complicated. Graham _______________________________________________ SyncEvolution mailing list [email protected] http://lists.syncevolution.org/listinfo/syncevolution
