|
From: <svn...@op...> - 2009-03-30 03:28:38
|
Author: dgollub Date: Mon Mar 30 05:28:31 2009 New Revision: 5449 URL: http://www.opensync.org/changeset/5449 Log: Ported SyncML plugin to latest OpenSync API changes. (Dropped obsolate interface, ported slow-sync request to osync_context_report_slowsync()) Load the anchor in advanced already in the init function so a pointer can be retrieved via osync_objtype_sink_get_anchor(). refs #1085 Modified: plugins/syncml/src/syncml_callbacks.c plugins/syncml/src/syncml_common.c plugins/syncml/src/syncml_common.h Modified: plugins/syncml/src/syncml_callbacks.c ============================================================================== --- plugins/syncml/src/syncml_callbacks.c Mon Mar 30 05:08:09 2009 (r5448) +++ plugins/syncml/src/syncml_callbacks.c Mon Mar 30 05:28:31 2009 (r5449) @@ -200,7 +200,7 @@ if (recvType == SML_ALERT_SLOW_SYNC) { osync_trace(TRACE_INTERNAL, "%s: signal SLOW-SYNC", __func__); - osync_objtype_sink_set_slowsync(database->sink, TRUE); + osync_context_report_slowsync(database->connectCtx); } /* signal the connect event */ @@ -253,12 +253,10 @@ SmlError **error) { SmlPluginEnv *env = userdata; - OSyncObjTypeSink *sink = osync_plugin_info_get_sink(env->pluginInfo); - OSyncAnchor *anchor = osync_objtype_sink_get_anchor(sink); OSyncError *oerror = NULL; - osync_assert(anchor); - // TODO error handling - return osync_anchor_retrieve(anchor, &oerror); + osync_assert(env->anchor); + /* TODO: error report - via SmlError? */ + return osync_anchor_retrieve(env->anchor, &oerror); } SmlBool _set_anchor( @@ -269,12 +267,10 @@ SmlError **error) { SmlPluginEnv *env = userdata; - OSyncObjTypeSink *sink = osync_plugin_info_get_sink(env->pluginInfo); - OSyncAnchor *anchor = osync_objtype_sink_get_anchor(sink); OSyncError *oerror = NULL; - osync_assert(anchor); - // TODO error handling - return osync_anchor_update(anchor, value, &oerror); + osync_assert(env->anchor); + /* TODO: error reporting - via SmlError? */ + return osync_anchor_update(env->anchor, value, &oerror); } /* ************************************ */ Modified: plugins/syncml/src/syncml_common.c ============================================================================== --- plugins/syncml/src/syncml_common.c Mon Mar 30 05:08:09 2009 (r5448) +++ plugins/syncml/src/syncml_common.c Mon Mar 30 05:28:31 2009 (r5449) @@ -804,7 +804,13 @@ osync_objtype_sink_set_userdata(mainsink, env); + /* Prepare anchor */ osync_objtype_sink_enable_anchor(mainsink, TRUE); + if (!osync_objtype_sink_load_anchor(mainsink, info, oerror)) + goto error_free_env; + + env->anchor = osync_objtype_sink_get_anchor(mainsink); + osync_plugin_info_set_main_sink(info, mainsink); osync_objtype_sink_unref(mainsink); Modified: plugins/syncml/src/syncml_common.h ============================================================================== --- plugins/syncml/src/syncml_common.h Mon Mar 30 05:08:09 2009 (r5448) +++ plugins/syncml/src/syncml_common.h Mon Mar 30 05:28:31 2009 (r5449) @@ -99,6 +99,7 @@ /* environment data */ OSyncPluginInfo *pluginInfo; + OSyncAnchor *anchor; GSource *source; GSourceFuncs *source_functions; |