|
From: deloptes <del...@ya...> - 2011-12-10 00:34:51
|
Chris Frey wrote: > On Fri, Dec 09, 2011 at 11:17:16PM +0100, deloptes wrote: >> No I have not implemented this yet. I was thinking DataSink should use >> the DB API and act as plugin to the synthesis engine, but reading the >> documentation I think the UI API is what we need as we are driving the >> engine. > > I believe we need both, if I'm understanding the DB API correctly. > > We need the UI API to run the engine, and do the sync. But we need the > DB API to provide something for the synthesis engine to sync to. > > i.e. somehow we need to get at the low level contact data, and I'm > guessing this is only available via the DB API. > > If so, then the DB API will be syncing into some database that we can read > for when opensync needs to sync to it. > > > osynctool -> Opensync engine -> your_plugin -> UI API -> libsynthesis > engine -> ??? -> DB API -> your_libsynthesis_plugin > > "your_plugin" has access to all of opensync's data. > "your_libsynthsis_plugin" > has access to the synthesis data. How to make these sets of data meet > is the challenge. > This was also my original plan, but after reading again from the beginning I understand either is possible, which means the UI API provides the necessary functions to access the data and put it somewhere, though now I think my original plan was still better So modified version of the previous plan: 1. initialize the plugin in the osync engine 2. start the synthesis engine (UI) 3. connect the phone or act as whatever SyncML client/server (DB? or UI?) 4. sync (get changes etc) - provide a syncml plugin (DB) 5. disconnect (DB? or UI?) 6. stop the engine (UI) 7. finalize the plugin in the osync engine I'll check this thanks |