[nautilus-actions] Refactoring: update src/core/na-io-provider.{c,h}



commit f89a6affde953a1b64b9d350fbc5f56343497ade
Author: Pierre Wieser <pwieser trychlos org>
Date:   Mon Feb 15 20:15:51 2010 +0100

    Refactoring: update src/core/na-io-provider.{c,h}

 ChangeLog                 |    1 +
 src/core/na-io-provider.c |  167 +++++++++++++++++++++------------------------
 src/core/na-io-provider.h |   20 +++---
 3 files changed, 89 insertions(+), 99 deletions(-)
---
diff --git a/ChangeLog b/ChangeLog
index 2c86bf3..1727aec 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,6 @@
 2009-02-15 Pierre Wieser <pwieser trychlos org>
 
+	Update src/core/na-io-provider.{c,h}
 	Update src/core/na-iabout.{c,h}
 	Update src/utils.
 
diff --git a/src/core/na-io-provider.c b/src/core/na-io-provider.c
index a650588..c763ee2 100644
--- a/src/core/na-io-provider.c
+++ b/src/core/na-io-provider.c
@@ -36,11 +36,11 @@
 
 #include <api/na-iio-provider.h>
 #include <api/na-object-api.h>
+#include <api/na-core-utils.h>
+#include <api/na-gconf-utils.h>
 
-#include "na-gconf-utils.h"
 #include "na-io-provider.h"
-#include "na-iprefs.h"
-#include "na-utils.h"
+#include "na-updater.h"
 
 /* private class data
  */
@@ -62,11 +62,9 @@ struct NAIOProviderPrivate {
  */
 enum {
 	IO_PROVIDER_PROP_ID_ID = 1,
-	IO_PROVIDER_PROP_PROVIDER_ID,
 };
 
 #define IO_PROVIDER_PROP_ID				"na-io-provider-prop-id"
-#define IO_PROVIDER_PROP_PROVIDER		"na-io-provider-prop-provider"
 
 static GObjectClass *st_parent_class = NULL;
 static GList        *st_io_providers = NULL;
@@ -157,13 +155,6 @@ class_init( NAIOProviderClass *klass )
 			G_PARAM_STATIC_STRINGS | G_PARAM_READWRITE );
 	g_object_class_install_property( object_class, IO_PROVIDER_PROP_ID_ID, spec );
 
-	spec = g_param_spec_pointer(
-			IO_PROVIDER_PROP_PROVIDER,
-			"NAIIOProvider",
-			"A reference on the NAIIOProvider plugin module",
-			G_PARAM_STATIC_STRINGS | G_PARAM_READWRITE );
-	g_object_class_install_property( object_class, IO_PROVIDER_PROP_PROVIDER_ID, spec );
-
 	klass->private = g_new0( NAIOProviderClassPrivate, 1 );
 }
 
@@ -221,10 +212,6 @@ instance_get_property( GObject *object, guint property_id, GValue *value, GParam
 				g_value_set_string( value, self->private->id );
 				break;
 
-			case IO_PROVIDER_PROP_PROVIDER_ID:
-				g_value_set_pointer( value, self->private->provider );
-				break;
-
 			default:
 				G_OBJECT_WARN_INVALID_PROPERTY_ID( object, property_id, spec );
 				break;
@@ -247,10 +234,6 @@ instance_set_property( GObject *object, guint property_id, const GValue *value,
 				g_free( self->private->id );
 				self->private->id = g_value_dup_string( value );
 				break;
-
-			case IO_PROVIDER_PROP_PROVIDER_ID:
-				self->private->provider = g_value_get_pointer( value );
-				break;
 		}
 	}
 }
@@ -340,7 +323,7 @@ na_io_provider_get_providers_list( const NAPivot *pivot )
 
 		order = na_iprefs_read_string_list( NA_IPREFS( pivot ), IO_PROVIDER_KEY_ORDER, NULL );
 		setup_io_providers( pivot, order );
-		na_utils_free_string_list( order );
+		na_core_utils_slist_free( order );
 	}
 
 	return( st_io_providers );
@@ -456,7 +439,7 @@ io_provider_set_provider( const NAPivot *pivot, NAIOProvider *provider, NAIIOPro
 	provider->private->item_changed_handler =
 			g_signal_connect(
 					instance,
-					NA_PIVOT_SIGNAL_ACTION_CHANGED,
+					IIO_PROVIDER_SIGNAL_ITEM_CHANGED,
 					( GCallback ) na_pivot_item_changed_handler,
 					( gpointer ) pivot );
 }
@@ -471,13 +454,13 @@ add_io_providers_from_prefs( const NAPivot *pivot, GList *runtime_providers )
 	NAIOProvider *provider;
 
 	providers = runtime_providers;
-	path = gconf_concat_dir_and_key( NAUTILUS_ACTIONS_GCONF_BASEDIR, IO_PROVIDER_KEY_ROOT );
+	path = gconf_concat_dir_and_key( IPREFS_GCONF_BASEDIR, IO_PROVIDER_KEY_ROOT );
 	gconf = na_iprefs_get_gconf_client( NA_IPREFS( pivot ));
 
 	ids = na_gconf_utils_get_subdirs( gconf, path );
 
 	for( iid = ids ; iid ; iid = iid->next ){
-		id = na_utils_path_extract_last_dir(( const gchar * ) iid->data );
+		id = g_path_get_basename(( const gchar * ) iid->data );
 		provider = na_io_provider_find_provider_by_id( providers, id );
 
 		if( !provider ){
@@ -489,7 +472,6 @@ add_io_providers_from_prefs( const NAPivot *pivot, GList *runtime_providers )
 	}
 
 	na_gconf_utils_free_subdirs( ids );
-
 	g_free( path );
 
 	return( providers );
@@ -522,7 +504,7 @@ na_io_provider_reorder_providers_list( const NAPivot *pivot )
 
 	st_io_providers = g_list_reverse( new_list );
 
-	na_utils_free_string_list( order );
+	na_core_utils_slist_free( order );
 }
 
 /**
@@ -552,7 +534,7 @@ dump( const NAIOProvider *provider )
 	g_debug( "%s:                   id=%s", thisfn, provider->private->id );
 	g_debug( "%s:                 name=%s", thisfn, provider->private->name );
 	g_debug( "%s:             provider=%p", thisfn, ( void * ) provider->private->provider );
-	g_debug( "%s: item_changed_handler=%ld", thisfn, provider->private->item_changed_handler );
+	g_debug( "%s: item_changed_handler=%lu", thisfn, provider->private->item_changed_handler );
 }
 
 /**
@@ -585,6 +567,39 @@ na_io_provider_find_provider_by_id( GList *providers, const gchar *id )
 }
 
 /**
+ * na_io_provider_get_writable_provider:
+ * @iprefs: an implementor of the #NAIPrefs interface.
+ *
+ * Returns: the first willing and able to write I/O provider, or NULL.
+ *
+ * The returned provider should not be g_object_unref() by the caller.
+ */
+NAIOProvider *
+na_io_provider_get_writable_provider( const NAPivot *pivot )
+{
+	NAIOProvider *provider;
+	GList *providers, *ip;
+
+	providers = na_io_provider_get_providers_list( pivot );
+	provider = NULL;
+
+	for( ip = providers ; ip && !provider ; ip = ip->next ){
+
+		if( na_io_provider_is_willing_to_write( NA_IO_PROVIDER( ip->data )) &&
+			na_io_provider_is_able_to_write( NA_IO_PROVIDER( ip->data )) &&
+			na_io_provider_has_write_api( NA_IO_PROVIDER( ip->data )) &&
+			na_io_provider_is_user_writable( NA_IO_PROVIDER( ip->data ), NA_IPREFS( pivot )) &&
+			!na_io_provider_is_locked_by_admin( NA_IO_PROVIDER( ip->data ), NA_IPREFS( pivot )) &&
+			!na_pivot_is_configuration_locked_by_admin( pivot )){
+
+				provider = NA_IO_PROVIDER( ip->data );
+		}
+	}
+
+	return( provider );
+}
+
+/**
  * na_io_provider_read_items:
  * @pivot: the #NAPivot object which owns the list of registered I/O
  * storage providers.
@@ -615,7 +630,7 @@ na_io_provider_read_items( const NAPivot *pivot, GSList **messages )
 	providers = na_io_provider_get_providers_list( pivot );
 
 	merged = get_merged_items_list( pivot, providers, messages );
-	level_zero = na_iprefs_get_level_zero_items( NA_IPREFS( pivot ));
+	level_zero = na_iprefs_read_string_list( NA_IPREFS( pivot ), IPREFS_LEVEL_ZERO_ITEMS, NULL );
 	hierarchy = build_hierarchy( &merged, level_zero, TRUE );
 
 	/* items that stay left in the merged list are simply appended
@@ -628,19 +643,21 @@ na_io_provider_read_items( const NAPivot *pivot, GSList **messages )
 
 	if( merged || !level_zero || !g_slist_length( level_zero )){
 		g_debug( "%s: rewriting level-zero", thisfn );
-		na_pivot_write_level_zero( pivot, hierarchy );
+		if( !na_pivot_write_level_zero( pivot, hierarchy )){
+			g_warning( "%s: unable to update level-zero", thisfn );
+		}
 	}
 
-	na_utils_free_string_list( level_zero );
+	na_core_utils_slist_free( level_zero );
 
 	order_mode = na_iprefs_get_order_mode( NA_IPREFS( pivot ));
 	switch( order_mode ){
 		case IPREFS_ORDER_ALPHA_ASCENDING:
-			hierarchy = sort_tree( pivot, hierarchy, ( GCompareFunc ) na_pivot_sort_alpha_asc );
+			hierarchy = sort_tree( pivot, hierarchy, ( GCompareFunc ) na_object_id_sort_alpha_asc );
 			break;
 
 		case IPREFS_ORDER_ALPHA_DESCENDING:
-			hierarchy = sort_tree( pivot, hierarchy, ( GCompareFunc ) na_pivot_sort_alpha_desc );
+			hierarchy = sort_tree( pivot, hierarchy, ( GCompareFunc ) na_object_id_sort_alpha_desc );
 			break;
 
 		case IPREFS_ORDER_MANUAL:
@@ -671,7 +688,7 @@ get_merged_items_list( const NAPivot *pivot, GList *providers, GSList **messages
 
 	for( ip = providers ; ip ; ip = ip->next ){
 
-		if( na_io_provider_is_user_readable_at_startup( NA_IO_PROVIDER( ip->data ), pivot )){
+		if( na_io_provider_is_user_readable_at_startup( NA_IO_PROVIDER( ip->data ), NA_IPREFS( pivot ))){
 
 			instance = NA_IO_PROVIDER( ip->data )->private->provider;
 			if( instance ){
@@ -704,7 +721,7 @@ get_merged_items_list( const NAPivot *pivot, GList *providers, GSList **messages
 static GList *
 build_hierarchy( GList **tree, GSList *level_zero, gboolean list_if_empty )
 {
-	static const gchar *thisfn = "na_iio_provider_build_hierarchy";
+	static const gchar *thisfn = "na_io_provider_build_hierarchy";
 	GList *hierarchy, *it;
 	GSList *ilevel;
 	GSList *subitems_ids;
@@ -716,7 +733,9 @@ build_hierarchy( GList **tree, GSList *level_zero, gboolean list_if_empty )
 		for( ilevel = level_zero ; ilevel ; ilevel = ilevel->next ){
 			g_debug( "%s: uuid=%s", thisfn, ( gchar * ) ilevel->data );
 			it = g_list_find_custom( *tree, ilevel->data, ( GCompareFunc ) search_item );
+			g_debug( "un" );
 			if( it ){
+				g_debug( "deux" );
 				hierarchy = g_list_append( hierarchy, it->data );
 
 				g_debug( "%s: uuid=%s: %s (%p) appended to hierarchy %p",
@@ -725,10 +744,10 @@ build_hierarchy( GList **tree, GSList *level_zero, gboolean list_if_empty )
 				*tree = g_list_remove_link( *tree, it );
 
 				if( NA_IS_OBJECT_MENU( it->data )){
-					subitems_ids = na_object_item_get_items_string_list( NA_OBJECT_ITEM( it->data ));
+					subitems_ids = na_object_get_items_slist( NA_OBJECT_ITEM( it->data ));
 					subitems = build_hierarchy( tree, subitems_ids, FALSE );
-					na_object_set_items_list( it->data, subitems );
-					na_utils_free_string_list( subitems_ids );
+					na_object_set_items( it->data, subitems );
+					na_core_utils_slist_free( subitems_ids );
 				}
 			}
 		}
@@ -758,8 +777,10 @@ search_item( const NAObject *obj, const gchar *uuid )
 
 	if( NA_IS_OBJECT_ITEM( obj )){
 		obj_id = na_object_get_id( obj );
+		g_debug( "objid=%s", obj_id );
 		ret = strcmp( obj_id, uuid );
 		g_free( obj_id );
+		g_debug( "ret=%d", ret );
 	}
 
 	return( ret );
@@ -777,9 +798,9 @@ sort_tree( const NAPivot *pivot, GList *tree, GCompareFunc fn )
 	 */
 	for( it = sorted ; it ; it = it->next ){
 		if( NA_IS_OBJECT_MENU( it->data )){
-			items = na_object_get_items_list( it->data );
+			items = na_object_get_items( it->data );
 			items = sort_tree( pivot, items, fn );
-			na_object_set_items_list( it->data, items );
+			na_object_set_items( it->data, items );
 		}
 	}
 
@@ -838,9 +859,9 @@ filter_unwanted_items_rec( GList *hierarchy, gboolean load_disabled, gboolean lo
 			if(( na_object_is_enabled( it->data ) || load_disabled ) &&
 				( na_object_is_valid( it->data ) || load_invalid )){
 
-				subitems = na_object_get_items_list( it->data );
+				subitems = na_object_get_items( it->data );
 				subitems_f = filter_unwanted_items_rec( subitems, load_disabled, load_invalid );
-				na_object_set_items_list( it->data, subitems_f );
+				na_object_set_items( it->data, subitems_f );
 				filtered = g_list_append( filtered, it->data );
 				selected = TRUE;
 			}
@@ -900,6 +921,7 @@ na_io_provider_get_name( const NAIOProvider *provider )
 	if( !provider->private->dispose_has_run ){
 
 		if( provider->private->name ){
+
 			name = g_strdup( provider->private->name );
 		}
 	}
@@ -910,7 +932,7 @@ na_io_provider_get_name( const NAIOProvider *provider )
 /**
  * na_io_provider_is_user_readable_at_startup:
  * @provider: this #NAIOProvider.
- * @pivot: the #NAPivot of the application.
+ * @iprefs: an implementor of the #NAIPrefs interface.
  *
  * Returns: %TRUE is this I/O provider should be read at startup, and so
  * may participate to the global list of menus and actions.
@@ -922,7 +944,7 @@ na_io_provider_get_name( const NAIOProvider *provider )
  * the corresponding flag to %FALSE.
  */
 gboolean
-na_io_provider_is_user_readable_at_startup( const NAIOProvider *provider, const NAPivot *pivot )
+na_io_provider_is_user_readable_at_startup( const NAIOProvider *provider, const NAIPrefs *iprefs )
 {
 	gboolean to_be_read;
 	GConfClient *gconf;
@@ -930,13 +952,13 @@ na_io_provider_is_user_readable_at_startup( const NAIOProvider *provider, const
 
 	to_be_read = FALSE;
 	g_return_val_if_fail( NA_IS_IO_PROVIDER( provider ), FALSE );
-	g_return_val_if_fail( NA_IS_PIVOT( pivot ), FALSE );
+	g_return_val_if_fail( NA_IS_IPREFS( iprefs ), FALSE );
 
 	if( !provider->private->dispose_has_run ){
 
-		gconf = na_iprefs_get_gconf_client( NA_IPREFS( pivot ));
+		gconf = na_iprefs_get_gconf_client( iprefs );
 
-		path = gconf_concat_dir_and_key( NAUTILUS_ACTIONS_GCONF_BASEDIR, IO_PROVIDER_KEY_ROOT );
+		path = gconf_concat_dir_and_key( IPREFS_GCONF_BASEDIR, IO_PROVIDER_KEY_ROOT );
 		key = gconf_concat_dir_and_key( path, provider->private->id );
 		entry = gconf_concat_dir_and_key( key, IO_PROVIDER_KEY_READABLE );
 
@@ -953,7 +975,7 @@ na_io_provider_is_user_readable_at_startup( const NAIOProvider *provider, const
 /**
  * na_io_provider_is_user_writable:
  * @provider: this #NAIOProvider.
- * @pivot: the #NAPivot of the application.
+ * @iprefs: an implementor of the #NAIPrefs interface.
  *
  * Returns: %TRUE is this I/O provider is writable.
  *
@@ -961,7 +983,7 @@ na_io_provider_is_user_readable_at_startup( const NAIOProvider *provider, const
  * will actually be writable or not.
  */
 gboolean
-na_io_provider_is_user_writable( const NAIOProvider *provider, const NAPivot *pivot )
+na_io_provider_is_user_writable( const NAIOProvider *provider, const NAIPrefs *iprefs )
 {
 	gboolean writable;
 	GConfClient *gconf;
@@ -969,13 +991,13 @@ na_io_provider_is_user_writable( const NAIOProvider *provider, const NAPivot *pi
 
 	writable = FALSE;
 	g_return_val_if_fail( NA_IS_IO_PROVIDER( provider ), FALSE );
-	g_return_val_if_fail( NA_IS_PIVOT( pivot ), FALSE );
+	g_return_val_if_fail( NA_IS_IPREFS( iprefs ), FALSE );
 
 	if( !provider->private->dispose_has_run ){
 
-		gconf = na_iprefs_get_gconf_client( NA_IPREFS( pivot ));
+		gconf = na_iprefs_get_gconf_client( iprefs );
 
-		path = gconf_concat_dir_and_key( NAUTILUS_ACTIONS_GCONF_BASEDIR, IO_PROVIDER_KEY_ROOT );
+		path = gconf_concat_dir_and_key( IPREFS_GCONF_BASEDIR, IO_PROVIDER_KEY_ROOT );
 		key = gconf_concat_dir_and_key( path, provider->private->id );
 		entry = gconf_concat_dir_and_key( key, IO_PROVIDER_KEY_WRITABLE );
 
@@ -992,12 +1014,12 @@ na_io_provider_is_user_writable( const NAIOProvider *provider, const NAPivot *pi
 /**
  * na_io_provider_is_locked_by_admin:
  * @provider: this #NAIOProvider.
- * @pivot: the #NAPivot of the application.
+ * @iprefs: an implementor of the #NAIPrefs interface.
  *
  * Returns: %TRUE is this I/O provider has been locked by an admin.
  */
 gboolean
-na_io_provider_is_locked_by_admin( const NAIOProvider *provider, const NAPivot *pivot )
+na_io_provider_is_locked_by_admin( const NAIOProvider *provider, const NAIPrefs *iprefs )
 {
 	gboolean locked;
 	GConfClient *gconf;
@@ -1005,13 +1027,13 @@ na_io_provider_is_locked_by_admin( const NAIOProvider *provider, const NAPivot *
 
 	locked = FALSE;
 	g_return_val_if_fail( NA_IS_IO_PROVIDER( provider ), FALSE );
-	g_return_val_if_fail( NA_IS_PIVOT( pivot ), FALSE );
+	g_return_val_if_fail( NA_IS_IPREFS( iprefs ), FALSE );
 
 	if( !provider->private->dispose_has_run ){
 
-		gconf = na_iprefs_get_gconf_client( NA_IPREFS( pivot ));
+		gconf = na_iprefs_get_gconf_client( iprefs );
 
-		path = g_strdup_printf( "%s/mandatory/%s/locked", NAUTILUS_ACTIONS_GCONF_BASEDIR, provider->private->id );
+		path = g_strdup_printf( "%s/mandatory/%s/locked", IPREFS_GCONF_BASEDIR, provider->private->id );
 
 		locked = na_gconf_utils_read_bool( gconf, path, FALSE, FALSE );
 
@@ -1136,39 +1158,6 @@ na_io_provider_has_write_api( const NAIOProvider *provider )
 }
 
 /**
- * na_io_provider_get_writable_provider:
- * @pivot: the #NAPivot object.
- *
- * Returns: the first willing and able to write I/O provider, or NULL.
- *
- * The returned provider should not be g_object_unref() by the caller.
- */
-NAIOProvider *
-na_io_provider_get_writable_provider( const NAPivot *pivot )
-{
-	NAIOProvider *provider;
-	GList *providers, *ip;
-
-	providers = na_io_provider_get_providers_list( pivot );
-	provider = NULL;
-
-	for( ip = providers ; ip && !provider ; ip = ip->next ){
-
-		if( na_io_provider_is_willing_to_write( NA_IO_PROVIDER( ip->data )) &&
-			na_io_provider_is_able_to_write( NA_IO_PROVIDER( ip->data )) &&
-			na_io_provider_has_write_api( NA_IO_PROVIDER( ip->data )) &&
-			na_io_provider_is_user_writable( NA_IO_PROVIDER( ip->data ), pivot ) &&
-			!na_io_provider_is_locked_by_admin( NA_IO_PROVIDER( ip->data ), pivot ) &&
-			!na_pivot_is_configuration_locked_by_admin( pivot )){
-
-				provider = NA_IO_PROVIDER( ip->data );
-		}
-	}
-
-	return( provider );
-}
-
-/**
  * na_io_provider_write_item:
  * @provider: this #NAIOProvider object.
  * @item: a #NAObjectItem to be written to the storage subsystem.
diff --git a/src/core/na-io-provider.h b/src/core/na-io-provider.h
index 4942cb2..a390177 100644
--- a/src/core/na-io-provider.h
+++ b/src/core/na-io-provider.h
@@ -28,18 +28,19 @@
  *   ... and many others (see AUTHORS)
  */
 
-#ifndef __NA_RUNTIME_IO_PROVIDER_H__
-#define __NA_RUNTIME_IO_PROVIDER_H__
+#ifndef __CORE_NA_IO_PROVIDER_H__
+#define __CORE_NA_IO_PROVIDER_H__
 
 /**
  * SECTION: na_io_provider
  * @short_description: #NAIOProvider class definition.
- * @include: runtime/na-io-provider.h
+ * @include: core/na-io-provider.h
  *
  * NAIOProvider is the Nautilus-Actions class which is used to manage
  * external I/O Providers which implement NAIIOProvider interface.
  */
 
+#include "na-iprefs.h"
 #include "na-pivot.h"
 
 G_BEGIN_DECLS
@@ -51,7 +52,7 @@ G_BEGIN_DECLS
 #define NA_IS_IO_PROVIDER_CLASS( klass )	( G_TYPE_CHECK_CLASS_TYPE(( klass ), NA_IO_PROVIDER_TYPE ))
 #define NA_IO_PROVIDER_GET_CLASS( object )	( G_TYPE_INSTANCE_GET_CLASS(( object ), NA_IO_PROVIDER_TYPE, NAIOProviderClass ))
 
-typedef struct NAIOProviderPrivate NAIOProviderPrivate;
+typedef struct NAIOProviderPrivate      NAIOProviderPrivate;
 
 typedef struct {
 	GObject              parent;
@@ -83,24 +84,23 @@ void           na_io_provider_reorder_providers_list( const NAPivot *pivot );
 void           na_io_provider_dump_providers_list( GList *providers );
 
 NAIOProvider  *na_io_provider_find_provider_by_id( GList *providers, const gchar *id );
+NAIOProvider  *na_io_provider_get_writable_provider( const NAPivot *pivot );
 
 GList         *na_io_provider_read_items( const NAPivot *pivot, GSList **messages );
 
 gchar         *na_io_provider_get_id                     ( const NAIOProvider *provider );
 gchar         *na_io_provider_get_name                   ( const NAIOProvider *provider );
-gboolean       na_io_provider_is_user_readable_at_startup( const NAIOProvider *provider, const NAPivot *pivot );
-gboolean       na_io_provider_is_user_writable           ( const NAIOProvider *provider, const NAPivot *pivot );
-gboolean       na_io_provider_is_locked_by_admin         ( const NAIOProvider *provider, const NAPivot *pivot );
+gboolean       na_io_provider_is_user_readable_at_startup( const NAIOProvider *provider, const NAIPrefs *iprefs );
+gboolean       na_io_provider_is_user_writable           ( const NAIOProvider *provider, const NAIPrefs *iprefs );
+gboolean       na_io_provider_is_locked_by_admin         ( const NAIOProvider *provider, const NAIPrefs *iprefs );
 NAIIOProvider *na_io_provider_get_provider               ( const NAIOProvider *provider );
 gboolean       na_io_provider_is_willing_to_write        ( const NAIOProvider *provider );
 gboolean       na_io_provider_is_able_to_write           ( const NAIOProvider *provider );
 gboolean       na_io_provider_has_write_api              ( const NAIOProvider *provider );
 
-NAIOProvider  *na_io_provider_get_writable_provider( const NAPivot *pivot );
-
 guint          na_io_provider_write_item ( const NAIOProvider *provider, const NAObjectItem *item, GSList **messages );
 guint          na_io_provider_delete_item( const NAIOProvider *provider, const NAObjectItem *item, GSList **messages );
 
 G_END_DECLS
 
-#endif /* __NA_RUNTIME_IO_PROVIDER_H__ */
+#endif /* __CORE_NA_IO_PROVIDER_H__ */



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]