On Fri, 2009-09-25 at 17:30 +0100, Lukas Zeller wrote:
On Sep 25, 2009, at 16:29 , Patrick Ohly wrote:
> Profiles are gone in the server. How do I control the sync modes
> used by
> the server for specific datastores? I'm using
> <plugin_module>[SDK_textdb]</plugin_module>
> <plugin_sessionauth>yes</plugin_sessionauth>
> <plugin_deviceadmin>yes</plugin_deviceadmin>
> for the server and my own plugin for each datastore.
The client controls the sync modes. The server just executes what the
client wants.
There may be cases where our datastore cannot execute an incremental
sync. What is the best way to force a slow sync? Erasing the admin data
(possible now that it is under our control)?
> A related question: I was using the "dbname" in a
target to find the
> datastore name related to a progress event. The code looked like this
> (with wrapper classes around the underlying handles):
> SharedKey targets = m_engine.OpenKeyByPath(profile, "targets");
> SharedKey target;
> target = m_engine.OpenSubkey(targets, progressInfo.targetID);
> std::string name = m_engine.GetStrValue(target, "dbname");
>
> Is there a better way that works in both client and server?
Note that the server does not have progress events at this time at
all. Could be added, but requires some work, and would require to re-
architect the progress events to some degree as these are all global
(engine level) now, and would need to be made separate per session.
That would be very worthwhile for our use case ("personal SyncML
server"). When initiating a sync with a phone connected via Bluetooth,
we would do that using our sync GUI on the desktop. It would be useful
if the GUI could display progress also for such a sync, ideally the same
way as when it runs as client.
--
Best Regards, Patrick Ohly
The content of this message is my personal opinion only and although
I am an employee of Intel, the statements I make here in no way
represent Intel's position on the issue, nor am I authorized to speak
on behalf of Intel on this matter.