tracker r1927 - in branches/indexer-split: . src/libtracker-common src/trackerd



Author: mr
Date: Thu Jul 24 13:20:40 2008
New Revision: 1927
URL: http://svn.gnome.org/viewvc/tracker?rev=1927&view=rev

Log:
	* src/libtracker-common/tracker-config.[ch]:
	* src/trackerd/tracker-main.c: Make it possible to disable modules
	on the command line.


Modified:
   branches/indexer-split/ChangeLog
   branches/indexer-split/src/libtracker-common/tracker-config.c
   branches/indexer-split/src/libtracker-common/tracker-config.h
   branches/indexer-split/src/trackerd/tracker-main.c

Modified: branches/indexer-split/src/libtracker-common/tracker-config.c
==============================================================================
--- branches/indexer-split/src/libtracker-common/tracker-config.c	(original)
+++ branches/indexer-split/src/libtracker-common/tracker-config.c	Thu Jul 24 13:20:40 2008
@@ -2099,3 +2099,34 @@
 
 	g_object_notify (G_OBJECT (config), "no-watch-directory-roots");
 }
+
+void
+tracker_config_add_disabled_modules (TrackerConfig *config,
+				     gchar * const *modules)
+{
+	TrackerConfigPriv *priv;
+	GSList            *new_modules;
+	gchar * const	  *p;
+
+	g_return_if_fail (TRACKER_IS_CONFIG (config));
+	g_return_if_fail (modules != NULL);
+
+	priv = GET_PRIV (config);
+
+	new_modules = NULL;
+
+	for (p = modules; *p; p++) {
+		if (g_slist_find_custom (priv->disabled_modules,
+					 *p,
+					 (GCompareFunc) strcmp)) {
+			continue;
+		}
+		
+		new_modules = g_slist_append (new_modules, g_strdup (*p));
+	}
+
+	priv->disabled_modules = g_slist_concat (priv->disabled_modules, 
+						 new_modules);
+
+	g_object_notify (G_OBJECT (config), "disabled-modules");
+}

Modified: branches/indexer-split/src/libtracker-common/tracker-config.h
==============================================================================
--- branches/indexer-split/src/libtracker-common/tracker-config.h	(original)
+++ branches/indexer-split/src/libtracker-common/tracker-config.h	Thu Jul 24 13:20:40 2008
@@ -135,7 +135,8 @@
 								    gchar * const *roots);
 void           tracker_config_add_no_watch_directory_roots         (TrackerConfig *config,
 								    gchar * const *roots);
-
+void           tracker_config_add_disabled_modules                 (TrackerConfig *config,
+								    gchar * const *modules);
 
 G_END_DECLS
 

Modified: branches/indexer-split/src/trackerd/tracker-main.c
==============================================================================
--- branches/indexer-split/src/trackerd/tracker-main.c	(original)
+++ branches/indexer-split/src/trackerd/tracker-main.c	Thu Jul 24 13:20:40 2008
@@ -105,6 +105,7 @@
 static gchar        **monitors_to_exclude;
 static gchar        **monitors_to_include;
 static gchar        **crawl_dirs;
+static gchar        **disable_modules;
 
 static gboolean       force_reindex;
 static gboolean       disable_indexing;
@@ -136,6 +137,10 @@
 	  G_OPTION_ARG_STRING_ARRAY, &crawl_dirs, 
 	  N_("Directories to crawl to index files (you can do -c <path> -c <path>)"), 
 	  NULL },
+	{ "disable-modules", 'd', 0, 
+	  G_OPTION_ARG_STRING_ARRAY, &disable_modules, 
+	  N_("Disable modules from being processed (you can do -d <module> -d <module)"), 
+	  NULL },
 	{ NULL }
 };
 
@@ -296,6 +301,8 @@
 			 "Crawling directories");
 	log_option_list (tracker_config_get_no_index_file_types (config),
 			 "File types excluded from indexing");
+	log_option_list (tracker_config_get_disabled_modules (config),
+			 "Disabled modules");
 }
 
 static gboolean 
@@ -643,6 +650,10 @@
                 tracker_config_add_crawl_directory_roots (config, crawl_dirs);
 	}
 
+	if (disable_modules) {
+                tracker_config_add_disabled_modules (config, disable_modules);
+	}
+
 	/* Indexer command line arguments */
 	if (disable_indexing) {
 		tracker_config_set_enable_indexing (config, FALSE);



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