Revision 9376636...

Go back to digest for 27th April 2014

Features in KDE-PIM

Christian Mollekopf committed changes in [kdepim-runtime] /imap:

IMAP-Resource: Refactoring of retrieveitemstask

This introduces the following changes:
* Batch wise fetch to not overload akonadi
* Proper progress reporting through setTotalItems
* Make it clear that incremental/non-incremental is a mode of the task that
cannot be changed.
* Removed the processed mailbox hack
* Introduced a check for inconsistent local cache state (since we rely on this to be correct)
* Made sure the local collection is actually cleared when empty on the server
* Made sure changesince is only used in inremental mode
* Some minor refactorings for code clarity
* Fixed "retrieve items without body" mode, which just worked by chance
and would delete all your local mail if it once didn't end up in
incremental model.
* Disabled "retrieve items without body" mode. This should be called
explicitly by the resource when required. It's very expensive and certainly
shouldn't be executed on every sync. The only reason it's still in the
same job is for codesharing (it's really entirely unrelated otherwise).

File Changes

Modified 11 files
  • /imap
  •   resourcesresource.cpp
  •   resources/resourcestate.cpp
  •   resources/resourcestate.h
  •   resources/resourcestateinterface.h
  •   resources/resourcetask.cpp
  •   resources/resourcetask.h
  •   resources/retrieveitemstask.cpp
  •   resources/retrieveitemstask.h
  •   resources/tests/dummyresourcestate.cpp
  •   resources/tests/dummyresourcestate.h
  •   resources/tests/testretrieveitemstask.cpp
11 files changed in total