[tracker/libtracker-miner] TrackerMinerApplications: add relevant directories on construction.



commit bb7d1bcf405e526291d0c4b19be162c157832ecc
Author: Carlos Garnacho <carlos lanedo com>
Date:   Wed Aug 26 13:24:15 2009 +0200

    TrackerMinerApplications: add relevant directories on construction.
    
    Also, added back /usr/share/desktop-directories to be handled by this miner.

 src/tracker-miner-fs/tracker-miner-applications.c |   19 +++++++++++++++++++
 src/tracker-miner-fs/tracker-miner-main.c         |    5 -----
 2 files changed, 19 insertions(+), 5 deletions(-)
---
diff --git a/src/tracker-miner-fs/tracker-miner-applications.c b/src/tracker-miner-fs/tracker-miner-applications.c
index 951a418..6fd6529 100644
--- a/src/tracker-miner-fs/tracker-miner-applications.c
+++ b/src/tracker-miner-fs/tracker-miner-applications.c
@@ -38,6 +38,8 @@
 #define THEME_ICON_URN_PREFIX	     "urn:theme-icon:"
 
 static void     miner_applications_finalize          (GObject              *object);
+static void     miner_applications_constructed       (GObject              *object);
+
 static gboolean miner_applications_check_file        (TrackerMinerFS       *fs,
 						      GFile                *file);
 static gboolean miner_applications_check_directory   (TrackerMinerFS       *fs,
@@ -57,6 +59,7 @@ tracker_miner_applications_class_init (TrackerMinerApplicationsClass *klass)
         TrackerMinerFSClass *miner_fs_class = TRACKER_MINER_FS_CLASS (klass);
 
         object_class->finalize = miner_applications_finalize;
+	object_class->constructed = miner_applications_constructed;
 
 	miner_fs_class->check_file = miner_applications_check_file;
 	miner_fs_class->check_directory = miner_applications_check_directory;
@@ -76,6 +79,22 @@ miner_applications_finalize (GObject *object)
 }
 
 static void
+miner_applications_constructed (GObject *object)
+{
+	GFile *file;
+
+	file = g_file_new_for_path ("/usr/share/applications/");
+        tracker_miner_fs_add_directory (TRACKER_MINER_FS (object), file, TRUE);
+	g_object_unref (file);
+
+	file = g_file_new_for_path ("/usr/share/desktop-directories/");
+        tracker_miner_fs_add_directory (TRACKER_MINER_FS (object), file, TRUE);
+	g_object_unref (file);
+
+	/* FIXME: Check XDG_DATA_DIRS and also process applications in there */
+}
+
+static void
 insert_data_from_desktop_file (TrackerSparqlBuilder *sparql,
 			       const gchar          *subject,
 			       const gchar          *metadata_key,
diff --git a/src/tracker-miner-fs/tracker-miner-main.c b/src/tracker-miner-fs/tracker-miner-main.c
index cd30abf..c1d099b 100644
--- a/src/tracker-miner-fs/tracker-miner-main.c
+++ b/src/tracker-miner-fs/tracker-miner-main.c
@@ -334,11 +334,6 @@ main (gint argc, gchar *argv[])
         miner_applications = tracker_miner_applications_new ();
         miners = g_slist_append (miners, miner_applications);
 
-        /* FIXME: use proper definition for applications dir */
-        tracker_miner_fs_add_directory (TRACKER_MINER_FS (miner_applications),
-                                        "/usr/share/applications/",
-                                        FALSE);
-
 	g_signal_connect (miner_applications, "finished",
 			  G_CALLBACK (miner_finished_cb),
 			  NULL);



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