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 [[email protected]]
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
([email protected])? 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
--
[email protected]
http://www.estamos.de/
_______________________________________________
SyncEvolution mailing list
[email protected]
http://lists.syncevolution.org/listinfo/syncevolution