[Kde-pim] Query on Akonadi resource implementation

Volker Krause vkrause at kde.org
Sun Sep 23 14:31:42 BST 2007


On Friday 21 September 2007 21:51:08 Brad Hards wrote:
> As you may be aware, I'm working on an resource for OpenChange (aka the
> Microsoft Exchange RPC protocols). I'm having a problem with the concept
> though. Currently I fetch all the messages/contacts/appointments etc in
> synchronizeCollection().
>
> I've read the API docs, especially this part:
>
> To follow item changes in the backend, the following steps are necessary:
> - Implement synchronizeCollection() to synchronize all items in the given
> collection. You have to do item synchronization manually here, there are
> no convenience methods provided as for collections (yet).

Tobias is working on a nicer API for that.

> - Call collectionSynchronized() when done.
>
> To fetch item data on demand, the method requestItemDelivery() needs to be
> reimplemented. Fetch the requested data there, create an ItemStoreJob to
> store the data and call deliverItem().
>
> ...but I'm still confused. What does "synchronize all items in the given
> collection" mean in practice?
>
> The problem is that the OpenChange folder has a set of sub-folders, and
> they can contain folders or items. Is the Akonadi design meant to have
> synchronizeCollection() just get a reference to all the items, and
> requestItemDelivery() actually provide the content?

Yes, that's one valid scenario, similar to how online IMAP works. Another 
scenario would sync all data in synchronizeCollection() and 
requestItemDelivery() wouldn't be called at all, that's similar to the 
disconnected IMAP case. Resources probably want to support both ways, 
depending on the cache policy of a collection, but the cache policy stuff is 
not yet implemented on the client side.

> I've committed the basic code into kdepim/akonadi/resources/openchange/,
> and any advice would be most appreciated.
>
>
> As a separate issue, is there a good tool for working with appointments etc
> (i.e. KCal::Incidence) in Akonadi-land.

I don't think we have anything for handling KCal objects yet.

regards
Volker
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part.
URL: <http://mail.kde.org/pipermail/kde-pim/attachments/20070923/f19b2ad7/attachment.sig>
-------------- next part --------------
_______________________________________________
KDE PIM mailing list kde-pim at kde.org
https://mail.kde.org/mailman/listinfo/kde-pim
KDE PIM home page at http://pim.kde.org/


More information about the kde-pim mailing list