Changeset 1765

Show
Ignore:
Timestamp:
02/19/07 18:11:34 (22 months ago)
Author:
dgollub
Message:

Removed OSyncKDEEnv.
Moved contact_sink in impl class.
Fixed wrong use of contact_sink.

Location:
plugins/kdepim/src
Files:
3 modified

Legend:

Unmodified
Added
Removed
  • plugins/kdepim/src/kdepim_impl.cpp

    r1764 r1765  
    8989                        initKDE(); 
    9090 
    91                         OSyncObjTypeSink *sink = osync_plugin_info_get_sink(info); 
     91                        contact_sink = osync_objtype_sink_new("contact", error); 
     92 
    9293                        QString tablepath = QString("%1/hashtable.db").arg(osync_plugin_info_get_configdir(info)); 
    93                         mHashtable = osync_hashtable_new(tablepath, osync_objtype_sink_get_name(sink), error); 
     94                        mHashtable = osync_hashtable_new(tablepath, osync_objtype_sink_get_name(contact_sink), error); 
    9495 
    9596                        mKaddrbook = new KContactDataSource(mHashtable); 
  • plugins/kdepim/src/kdepim_sync.cpp

    r1763 r1765  
    3333static void kde_finalize(void *userdata) 
    3434{ 
    35 //      osync_debug("kde", 3, "%s()", __FUNCTION__); 
    36  
     35        osync_trace(TRACE_ENTRY, "%s(%p)", __func__, userdata); 
    3736        KdePluginImplementationBase *impl_object = (KdePluginImplementationBase *)userdata; 
    3837        delete impl_object; 
     38        osync_trace(TRACE_EXIT, "%s(%p)", __func__, userdata); 
    3939} 
    4040 
    4141static void kde_connect(void *userdata, OSyncPluginInfo *info, OSyncContext *ctx) 
    4242{ 
     43        osync_trace(TRACE_ENTRY, "%s(%p, %p, %p)", __func__, userdata, info, ctx); 
    4344        KdePluginImplementationBase *impl_object = (KdePluginImplementationBase*)userdata; 
    4445        impl_object->connect(info, ctx); 
     46        osync_trace(TRACE_EXIT, "%s", __func__); 
    4547} 
    4648 
     
    9799static void *kde_initialize(OSyncPlugin *plugin, OSyncPluginInfo *info, OSyncError **error) 
    98100{ 
     101        osync_trace(TRACE_ENTRY, "%s(%p, %p, %p)", __func__, plugin, info, error); 
     102 
    99103        KdeImplInitFunc init_func; 
    100104        KdePluginImplementationBase *impl_object; 
     
    123127 
    124128        do { 
    125                 OSyncObjTypeSink *sink = osync_objtype_sink_new("contact", error); 
    126                 if (!sink) 
     129                impl_object->contact_sink = osync_objtype_sink_new("contact", error); 
     130                if (!impl_object->contact_sink) 
    127131                        goto error; 
    128132 
    129                 osync_objtype_sink_add_objformat(sink, "vcard30"); 
     133                osync_objtype_sink_add_objformat(impl_object->contact_sink, "vcard30"); 
    130134 
    131135                /* Every sink can have different functions ... */ 
     
    140144                /* We pass the OSyncFileDir object to the sink, so we dont have to look it up 
    141145                 * again once the functions are called */ 
    142                 osync_objtype_sink_set_functions(sink, functions, impl_object); 
    143                 osync_plugin_info_add_objtype(info, sink); 
     146                osync_objtype_sink_set_functions(impl_object->contact_sink, functions, impl_object); 
     147                osync_plugin_info_add_objtype(info, impl_object->contact_sink); 
    144148 
    145149        } while(0); 
     
    148152        /* Return the created object to the sync engine */ 
    149153        return (void*)impl_object; 
     154        osync_trace(TRACE_EXIT, "%s: %p", __func__, impl_object); 
     155 
    150156error: 
     157        osync_trace(TRACE_EXIT_ERROR,  "%s: NULL", __func__); 
    151158        return NULL; 
    152159} 
     
    157164/* Here we actually tell opensync which sinks are available. For this plugin, we 
    158165 * go through the list of directories and enable all, since all have been configured */ 
    159 static osync_bool kde_discover(void *data, OSyncPluginInfo *info, OSyncError **error) 
    160 { 
    161         osync_trace(TRACE_ENTRY, "%s(%p, %p, %p)", __func__, data, info, error); 
     166static osync_bool kde_discover(void *userdata, OSyncPluginInfo *info, OSyncError **error) 
     167{ 
     168        osync_trace(TRACE_ENTRY, "%s(%p, %p, %p)", __func__, userdata, info, error); 
    162169         
    163         OSyncKDEEnv *env = (OSyncKDEEnv *)data; 
    164  
    165         osync_objtype_sink_set_available(env->contact_sink, TRUE); 
     170        KdePluginImplementationBase *impl_object = (KdePluginImplementationBase *)userdata; 
     171 
     172        osync_objtype_sink_set_available(impl_object->contact_sink, TRUE); 
    166173 
    167174        osync_trace(TRACE_EXIT, "%s", __func__); 
  • plugins/kdepim/src/osyncbase.h

    r1764 r1765  
    1212} 
    1313 
    14 typedef struct OSyncKDEEnv { 
    15         char *change_id; 
    16         OSyncObjTypeSink *contact_sink; 
    17 } OSyncKDEEnv; 
    1814/** Base class to OpenSync plugin. 
    1915 * 
     
    4036                 */ 
    4137                virtual ~KdePluginImplementationBase() { }; 
     38 
     39                OSyncObjTypeSink *contact_sink; 
     40 
    4241}; 
    4342