Sync Services between Address Book and a web server
Sync Services between Address Book and a web server
- Subject: Sync Services between Address Book and a web server
- From: Dave Hersey <email@hidden>
- Date: Fri, 21 Mar 2008 10:42:37 -0400
Hi,
I've got an existing Cocoa application that's been around since 10.2
and syncs user data with a client's workgroup management server. The
app does everything directly via SSL to the server and works very well
from 10.2 through 10.5, but the client is considering converting it to
use Sync Services. He does not want to require .Mac, and he wants to
continue to sync with his non-Mac web server.
The server participates in syncing via XML requests and responses. The
app requests the current data from the server, compares that against
the local data, determines which side (if any) should make
modifications, deletions and additions, and tells the server of any
changes that it needs to process. On the local machine, the data
that's being changed is in the Address Book, but we may want to sync
iCal with the web server's calendar at some point too.
I'm not sure how to best adapt this application to Sync Services since
the web server behavior will (ideally) not be changing, and again the
server is not a Mac so it's not running Sync Services itself.
It seems like I'd need to make the same XML calls to the server to get
its current state and build a representation of that, then build a
similar representation of the current state of the local machine, then
call Sync Services to sync the two representations and create local
and server "diff" files. After that, the app would need to apply the
local diffs and send XML back to the server for any data that it needs
to change.
Is that correct? Do I need to act as a proxy for the real data sources
involved in this sync? It just doesn't seem like I'm gaining much from
going to Sync Services if that's the case, since I'd have to write
additional code for handling conversions to the "state
representations," write additional code for applying the sync
differences, the only code that would be removed would be the sync
logic, and I'd still need to apply some filtering to that.
Can anyone think of a better approach to doing this? The client was
hoping for a simpler solution with Sync Services being handed a schema
and handling most everything, but with the apples and oranges syncing
that's going on (e.g. Address Book data and responses to server calls)
I don't see how that's possible.
Thanks,
- d
_______________________________________________
Cocoa-dev mailing list (email@hidden)
Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden