SyncEvolution

Bob Eggers Bob.Eggers at palm.com
Mon Aug 3 13:32:45 UTC 2009


Hi Patrick,

I have a few questions aimed at trying to understand what I see in the backend code samples. I've been looking at SyncEvolution 0.8, because I assumed it was more stable at this point in time. Anyway, my questions are a mix of my possibly false assumptions and actual questions:

1) In the backend, are all the uid parameters local UID's? Need we have any concern about mapping to remote ID? Is the engine handling that?

2) listAllItems(): the backend itemizes the entire local store and set revisions[<localUID>] with last revision stamp or modification time.

3)     a) createItem(): generate a sync item data blob to ship to the server, which could be for add or update and we don't need to know?
	 b) insertItem(): either update or add item to the local store depending on whether UID already exists locally?
	 c) deleteitem(): delete item from the local store
   Does the sync engine handle deleting items on server based on the results of listAllItems (UID's detected missing)?

4) Our contacts records do not have a last mod time
		a) we are able to get a list of records that changed  and another list of records deleted since last time we checked
		b) if my assumption that items not appearing in the listAllItems will be deleted remotely by the engine, we can ignore this deleted list
		c) with the changed records list, we could say last mod time is NOW (say, the start of sync), and set a custom field in the record to act as last mod time. (Will have to re-save the record locally.)
		d) with unchanged records, do nothing but extract that last mod time from the custom field

5) exportData walks through all records and create item data blobs - presumably this is called in the slow sync scenario?


I appreciate your help - maybe these questions have been answered somewhere already. :)

Bob Eggers

________________________________________
From: Patrick Ohly [patrick.ohly at gmx.de]
Sent: Sunday, August 02, 2009 7:26 AM
To: Bob Eggers
Subject: Re: SyncEvolution

On Fri, 2009-07-31 at 08:51 -0700, Bob Eggers wrote:
> I am looking at using the Posix build of SyncEvolution to support a
> contacts client on the Palm webOS. I've been getting familiar with
> SyncML concepts and have looked at a few engines. I like SyncEvolution
> because of the WBXML support in particular.

You've mentioned Funambol and WBXML support in the same email - just to
be sure that there are no misunderstandings, you are aware of
SyncEvolution 0.9 using the Synthesis SyncML Engine? It no longer
depends on Funambol source code or libraries at all.

> One thing I'm struggling with is "getting it". I know I'm not the
> first because I saw a just such a comment today in a Funambol slide
> slow. The docs are generally sketchy, as you know, and the naming
> conventions they used were not always the clearest.

I might have inherited some of that in SyncEvolution :-/

>  I have been studying backends that last couple of days trying to size
> up our task. I wonder if you might field a handful of questions from
> me? If so, let me know.

Sure, just go ahead. However, if you don't mind, can we have that
discussion on the SyncEvolution mailing list
(syncevolution at syncevolution.org)? Don't worry about subscribing (unless
you want to, of course), just mail me with that list on CC and I'll make
sure that all your emails get through.

That way answers will be available for others later on; the other
SyncEvolution developers might also be able to help.

--
Bye, Patrick Ohly
--
Patrick.Ohly at gmx.de
http://www.estamos.de/





More information about the SyncEvolution mailing list