Changeset 3518

Show
Ignore:
Timestamp:
08/07/08 17:46:40 (4 months ago)
Author:
dgollub
Message:

Do resource initializinon in ds_server_init_databases().
Update syncml-obex-client for Resource renaming.

Location:
plugins/syncml/src
Files:
5 modified

Legend:

Unmodified
Added
Removed
  • plugins/syncml/src/syncml-obex-client

    r3509 r3518  
    144144 
    145145    <!-- To be filed by UI or hand: 
    146   <Resources> 
    147     <Resource> 
     146  <Ressources> 
     147    <Ressource> 
    148148     <Enabled>1</Enabled> 
    149149     <Formats> 
     
    154154     <Name>Contacts</Name> 
    155155     <ObjType>contact</ObjType> 
    156     </Resource> 
    157   </Resources> 
     156    </Ressource> 
     157  </Ressources> 
    158158 
    159159    --> 
  • plugins/syncml/src/syncml_common.c

    r3510 r3518  
    238238} 
    239239 
    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); 
     240SmlDatabase *syncml_config_parse_database(SmlPluginEnv *env, OSyncPluginRessource *res, OSyncError **error) 
     241{ 
     242        osync_trace(TRACE_ENTRY, "%s(%p, %p, %p)", __func__, env, res, error); 
    243243        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);  
    252244        g_assert(res); 
    253245 
     
    257249 
    258250        database->env = env; 
    259         database->sink = sink; 
    260251        database->syncChanges = NULL; 
    261252        database->syncContexts = NULL; 
    262253 
    263         database->url = osync_plugin_resource_get_name(res); 
     254        database->url = osync_plugin_ressource_get_name(res); 
    264255        if (!database->url) { 
    265256                osync_error_set(error, OSYNC_ERROR_GENERIC, "Database name not set"); 
     
    267258        } 
    268259 
    269         database->objtype = osync_plugin_resource_get_objtype(res); 
     260        database->objtype = osync_plugin_ressource_get_objtype(res); 
    270261        if (!database->objtype) { 
    271262                osync_error_set(error, OSYNC_ERROR_GENERIC, "\"objtype\" of a database not set"); 
    272263                goto error_free_database; 
    273264        } 
    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); 
    286265 
    287266        osync_trace(TRACE_EXIT, "%s: %p", __func__, database); 
  • plugins/syncml/src/syncml_common.h

    r3510 r3518  
    205205SmlDatabase *syncml_config_parse_database( 
    206206                        SmlPluginEnv *env, 
    207                         OSyncPluginInfo *info, 
    208                         OSyncObjTypeSink *sink, 
     207                        OSyncPluginRessource *res, 
    209208                        OSyncError **error); 
    210209 
  • plugins/syncml/src/syncml_ds_client.c

    r3510 r3518  
    22#include "syncml_callbacks.h" 
    33 
    4 SmlBool ds_client_init_databases(SmlPluginEnv *env, OSyncPluginInfo *info, OSyncObjTypeSink *sink, OSyncError **error) 
     4SmlBool ds_client_init_databases(SmlPluginEnv *env, OSyncPluginInfo *info, OSyncError **error) 
    55{ 
    66        SmlDatabase *database = NULL; 
    77        OSyncPluginConfig *config = osync_plugin_info_get_config(info); 
    8         OSyncFormatEnv *formatenv = osync_plugin_info_get_format_env(info); 
    98        unsigned int i, num_objtypes = osync_plugin_info_num_objtypes(info); 
    109 
     
    2221                functions.batch_commit = ds_client_batch_commit; 
    2322 
    24                 OSyncPluginResource *res = osync_plugin_config_find_active_resource(config, objtype); 
    25                 if (!syncml_config_parse_database(env, formatenv, res, error)) 
     23                OSyncPluginRessource *res = osync_plugin_config_find_active_ressource(config, objtype); 
     24                if (!(database = syncml_config_parse_database(env, res, error))) 
    2625                        goto error; 
    2726                 
  • plugins/syncml/src/syncml_ds_server.c

    r3510 r3518  
    55{ 
    66        SmlDatabase *database = NULL; 
     7        OSyncPluginConfig *config = osync_plugin_info_get_config(info); 
     8        OSyncFormatEnv *formatenv = osync_plugin_info_get_format_env(info); 
    79        unsigned int i, num_objtypes = osync_plugin_info_num_objtypes(info); 
    810 
     
    1820                functions.batch_commit = ds_server_batch_commit; 
    1921 
    20                 if (!(database = syncml_config_parse_database(env, info, sink, error))) 
     22                OSyncPluginRessource *res = osync_plugin_config_find_active_ressource(config, objtype); 
     23                if (!(database = syncml_config_parse_database(env, res, error))) 
    2124                        goto error; 
    2225                 
     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 
    2337                osync_objtype_sink_set_functions(sink, functions, database); 
     38 
     39                env->databases = g_list_append(env->databases, database); 
    2440        } 
    2541        return TRUE;