Changeset 3510
- Timestamp:
- 08/06/08 08:50:37 (4 months ago)
- Location:
- plugins/syncml/src
- Files:
-
- 4 modified
-
syncml_common.c (modified) (3 diffs)
-
syncml_common.h (modified) (1 diff)
-
syncml_ds_client.c (modified) (2 diffs)
-
syncml_ds_server.c (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
plugins/syncml/src/syncml_common.c
r3509 r3510 238 238 } 239 239 240 SmlDatabase *syncml_config_parse_database(SmlPluginEnv *env, OSyncPlugin Resource *res, OSyncError **error)241 { 242 osync_trace(TRACE_ENTRY, "%s(%p, %p, %p )", __func__, env, res, error);240 SmlDatabase *syncml_config_parse_database(SmlPluginEnv *env, OSyncPluginInfo *info, OSyncObjTypeSink *sink, OSyncError **error) 241 { 242 osync_trace(TRACE_ENTRY, "%s(%p, %p, %p, %p)", __func__, env, info, sink, error); 243 243 g_assert(env); 244 g_assert(info); 245 g_assert(sink); 246 247 OSyncFormatEnv *formatenv = osync_plugin_info_get_format_env(info); 248 OSyncPluginConfig *config = osync_plugin_info_get_config(info); 249 const char *objtype = osync_objtype_sink_get_name(sink); 250 g_assert(objtype); 251 OSyncPluginResource *res = osync_plugin_config_find_active_resource(config, objtype); 244 252 g_assert(res); 245 253 … … 249 257 250 258 database->env = env; 259 database->sink = sink; 251 260 database->syncChanges = NULL; 252 261 database->syncContexts = NULL; … … 263 272 goto error_free_database; 264 273 } 274 275 /* TODO: Handle all available format sinks! */ 276 OSyncList *fs = osync_plugin_resource_get_objformat_sinks(res); 277 OSyncObjFormatSink *fmtsink = osync_list_nth_data(fs, 0); 278 const char *objformat = osync_objformat_sink_get_objformat(fmtsink); 279 280 database->objformat = osync_format_env_find_objformat(formatenv, objformat); 281 osync_objformat_ref(database->objformat); 282 283 g_assert(database->objformat); 284 285 env->databases = g_list_append(env->databases, database); 265 286 266 287 osync_trace(TRACE_EXIT, "%s: %p", __func__, database); -
plugins/syncml/src/syncml_common.h
r3509 r3510 205 205 SmlDatabase *syncml_config_parse_database( 206 206 SmlPluginEnv *env, 207 OSyncPluginResource *res, 207 OSyncPluginInfo *info, 208 OSyncObjTypeSink *sink, 208 209 OSyncError **error); 209 210 -
plugins/syncml/src/syncml_ds_client.c
r3509 r3510 2 2 #include "syncml_callbacks.h" 3 3 4 SmlBool ds_client_init_databases(SmlPluginEnv *env, OSyncPluginInfo *info, OSync Error **error)4 SmlBool ds_client_init_databases(SmlPluginEnv *env, OSyncPluginInfo *info, OSyncObjTypeSink *sink, OSyncError **error) 5 5 { 6 6 SmlDatabase *database = NULL; 7 7 OSyncPluginConfig *config = osync_plugin_info_get_config(info); 8 OSyncFormatEnv *formatenv = osync_plugin_info_get_format_env(info); 8 9 unsigned int i, num_objtypes = osync_plugin_info_num_objtypes(info); 9 10 … … 22 23 23 24 OSyncPluginResource *res = osync_plugin_config_find_active_resource(config, objtype); 24 if (! (database = syncml_config_parse_database(env, res, error)))25 if (!syncml_config_parse_database(env, formatenv, res, error)) 25 26 goto error; 26 27 -
plugins/syncml/src/syncml_ds_server.c
r3499 r3510 5 5 { 6 6 SmlDatabase *database = NULL; 7 OSyncPluginConfig *config = osync_plugin_info_get_config(info);8 OSyncFormatEnv *formatenv = osync_plugin_info_get_format_env(info);9 7 unsigned int i, num_objtypes = osync_plugin_info_num_objtypes(info); 10 8 … … 20 18 functions.batch_commit = ds_server_batch_commit; 21 19 22 OSyncPluginRessource *res = osync_plugin_config_find_active_ressource(config, objtype); 23 if (!(database = syncml_config_parse_database(env, res, error))) 20 if (!(database = syncml_config_parse_database(env, info, sink, error))) 24 21 goto error; 25 22 26 database->sink = sink;27 28 /* TODO: Handle all available format sinks! */29 OSyncList *fs = osync_plugin_ressource_get_objformat_sinks(res);30 OSyncObjFormatSink *fmtsink = osync_list_nth_data(fs, 0);31 const char *objformat = osync_objformat_sink_get_objformat(fmtsink);32 33 database->objformat = osync_format_env_find_objformat(formatenv, objformat);34 35 g_assert(database->objformat);36 37 23 osync_objtype_sink_set_functions(sink, functions, database); 38 39 env->databases = g_list_append(env->databases, database);40 24 } 41 25 return TRUE;
