[nautilus-actions] Dump content of readen entries
- From: Pierre Wieser <pwieser src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [nautilus-actions] Dump content of readen entries
- Date: Fri, 9 Apr 2010 16:50:25 +0000 (UTC)
commit 5d435e95b654fe31a654e5441ada591781e74153
Author: Pierre Wieser <pwieser trychlos org>
Date: Fri Apr 9 14:27:24 2010 +0200
Dump content of readen entries
ChangeLog | 7 +++++
src/api/na-gconf-utils.h | 1 +
src/core/na-gconf-utils.c | 55 ++++++++++++++++++++++++++++++++++++++++++++
src/io-gconf/nagp-reader.c | 1 +
4 files changed, 64 insertions(+), 0 deletions(-)
---
diff --git a/ChangeLog b/ChangeLog
index 02a5d1d..cce509d 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,12 @@
2009-04-09 Pierre Wieser <pwieser trychlos org>
+ * src/api/na-gconf-utils.h:
+ * src/core/na-gconf-utils.c (na_gconf_utils_dump_entries):
+ New function.
+
+ * src/io-gconf/nagp-reader.c (read_item):
+ Dump content of readen entries.
+
* src/io-gconf/nagp-gconf-provider.c (install_monitors):
Also monitors schemas to be triggered when importing a schema.
diff --git a/src/api/na-gconf-utils.h b/src/api/na-gconf-utils.h
index 37984b8..2275121 100644
--- a/src/api/na-gconf-utils.h
+++ b/src/api/na-gconf-utils.h
@@ -49,6 +49,7 @@ GSList *na_gconf_utils_get_entries( GConfClient *gconf, const gchar *path );
gboolean na_gconf_utils_get_bool_from_entries ( GSList *entries, const gchar *entry, gboolean *value );
gboolean na_gconf_utils_get_string_from_entries ( GSList *entries, const gchar *entry, gchar **value );
gboolean na_gconf_utils_get_string_list_from_entries( GSList *entries, const gchar *entry, GSList **value );
+void na_gconf_utils_dump_entries ( GSList *entries );
void na_gconf_utils_free_entries ( GSList *entries );
gboolean na_gconf_utils_read_bool ( GConfClient *gconf, const gchar *path, gboolean use_schema, gboolean default_value );
diff --git a/src/core/na-gconf-utils.c b/src/core/na-gconf-utils.c
index bd8fdd6..e8dd566 100644
--- a/src/core/na-gconf-utils.c
+++ b/src/core/na-gconf-utils.c
@@ -37,6 +37,7 @@
#include <api/na-core-utils.h>
#include <api/na-gconf-utils.h>
+static void dump_entry( GConfEntry *entry, void *user_data );
static GConfValue *read_value( GConfClient *gconf, const gchar *path, gboolean use_schema, GConfValueType type );
static gboolean sync_gconf( GConfClient *gconf, gchar **message );
@@ -280,6 +281,60 @@ na_gconf_utils_get_string_list_from_entries( GSList *entries, const gchar *entry
}
/**
+ * na_gconf_utils_dump_entries:
+ * @list: a list of #GConfEntry as returned by na_gconf_utils_get_entries().
+ *
+ * Dumps the content of the entries.
+ */
+void
+na_gconf_utils_dump_entries( GSList *list )
+{
+ g_slist_foreach( list, ( GFunc ) dump_entry, NULL );
+}
+
+static void
+dump_entry( GConfEntry *entry, void *user_data )
+{
+ static const gchar *thisfn = "na_gconf_utils_dump_entry";
+
+ gchar *key = g_path_get_basename( gconf_entry_get_key( entry ));
+ GConfValue *value = gconf_entry_get_value( entry );
+ gchar *str;
+ gboolean str_free = FALSE;
+
+ switch( value->type ){
+ case GCONF_VALUE_STRING:
+ str = ( gchar * ) gconf_value_get_string( value );
+ break;
+
+ case GCONF_VALUE_INT:
+ str = g_strdup_printf( "%d", gconf_value_get_int( value ));
+ str_free = TRUE;
+ break;
+
+ case GCONF_VALUE_FLOAT:
+ str = g_strdup_printf( "%f", gconf_value_get_float( value ));
+ str_free = TRUE;
+ break;
+
+ case GCONF_VALUE_BOOL:
+ str = g_strdup_printf( "%s", gconf_value_get_bool( value ) ? "True":"False" );
+ str_free = TRUE;
+ break;
+
+ default:
+ str = g_strdup( "(undetermined value)" );
+ str_free = TRUE;
+ }
+ g_debug( "%s: key=%s, value=%s", thisfn, key, str );
+
+ if( str_free ){
+ g_free( str );
+ }
+ g_free( key );
+}
+
+/**
* na_gconf_utils_free_entries:
* @list: a list of #GConfEntry as returned by na_gconf_utils_get_entries().
*
diff --git a/src/io-gconf/nagp-reader.c b/src/io-gconf/nagp-reader.c
index 83d443f..793c086 100644
--- a/src/io-gconf/nagp-reader.c
+++ b/src/io-gconf/nagp-reader.c
@@ -149,6 +149,7 @@ read_item( NagpGConfProvider *provider, const gchar *path, GSList **messages )
data = g_new0( ReaderData, 1 );
data->path = ( gchar * ) path;
data->entries = na_gconf_utils_get_entries( provider->private->gconf, path );
+ na_gconf_utils_dump_entries( data->entries );
na_ifactory_provider_read_item(
NA_IFACTORY_PROVIDER( provider ),
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]