[tracker/sam/index-mount-points: 5/11] Revert "libtracker-common: Moved TrackerStorage to tracker-miner-fs, not needed by others"



commit 0a7b78267f11ea5d13b08a002d9f58c67758c725
Author: Cosimo Cecchi <cosimoc gnome org>
Date:   Tue Jan 27 16:30:18 2015 +0000

    Revert "libtracker-common: Moved TrackerStorage to tracker-miner-fs, not needed by others"
    
    This reverts commit b78ae1d600f227bd4b77744648d5cde4e09d4640.

 src/libtracker-common/Makefile.am                  |    2 +
 src/libtracker-common/tracker-common.h             |    1 +
 .../fs => libtracker-common}/tracker-storage.c     |    1 +
 .../fs => libtracker-common}/tracker-storage.h     |    0
 src/libtracker-miner/tracker-decorator-fs.c        |   59 ++++++--------------
 src/miners/fs/Makefile.am                          |    2 -
 src/miners/fs/tracker-miner-files.c                |    1 -
 src/tracker-writeback/tracker-writeback.c          |   19 +++---
 8 files changed, 31 insertions(+), 54 deletions(-)
---
diff --git a/src/libtracker-common/Makefile.am b/src/libtracker-common/Makefile.am
index 3991531..fdc2b67 100644
--- a/src/libtracker-common/Makefile.am
+++ b/src/libtracker-common/Makefile.am
@@ -27,6 +27,7 @@ libtracker_common_la_SOURCES = \
        tracker-ioprio.c \
        tracker-log.c \
        tracker-sched.c \
+       tracker-storage.c \
        tracker-type-utils.c \
        tracker-utils.c \
        tracker-locale.c \
@@ -42,6 +43,7 @@ noinst_HEADERS = \
        tracker-date-time.h \
        tracker-file-utils.h \
        tracker-sched.h \
+       tracker-storage.h \
        tracker-type-utils.h \
        tracker-utils.h \
        tracker-locale.h \
diff --git a/src/libtracker-common/tracker-common.h b/src/libtracker-common/tracker-common.h
index 1af7393..7d71182 100644
--- a/src/libtracker-common/tracker-common.h
+++ b/src/libtracker-common/tracker-common.h
@@ -36,6 +36,7 @@
 #include "tracker-log.h"
 #include "tracker-parser.h"
 #include "tracker-sched.h"
+#include "tracker-storage.h"
 #include "tracker-type-utils.h"
 #include "tracker-utils.h"
 #include "tracker-locale.h"
diff --git a/src/miners/fs/tracker-storage.c b/src/libtracker-common/tracker-storage.c
similarity index 99%
rename from src/miners/fs/tracker-storage.c
rename to src/libtracker-common/tracker-storage.c
index 9ec59db..557d002 100644
--- a/src/miners/fs/tracker-storage.c
+++ b/src/libtracker-common/tracker-storage.c
@@ -27,6 +27,7 @@
 #include <libtracker-common/tracker-log.h>
 
 #include "tracker-storage.h"
+#include "tracker-utils.h"
 
 /**
  * SECTION:tracker-storage
diff --git a/src/miners/fs/tracker-storage.h b/src/libtracker-common/tracker-storage.h
similarity index 100%
rename from src/miners/fs/tracker-storage.h
rename to src/libtracker-common/tracker-storage.h
diff --git a/src/libtracker-miner/tracker-decorator-fs.c b/src/libtracker-miner/tracker-decorator-fs.c
index 7ed097e..f4d333a 100644
--- a/src/libtracker-miner/tracker-decorator-fs.c
+++ b/src/libtracker-miner/tracker-decorator-fs.c
@@ -41,7 +41,7 @@
 typedef struct _TrackerDecoratorFSPrivate TrackerDecoratorFSPrivate;
 
 struct _TrackerDecoratorFSPrivate {
-       GVolumeMonitor *volume_monitor;
+       TrackerStorage *storage;
 };
 
 static GInitableIface *parent_initable_iface;
@@ -59,8 +59,8 @@ tracker_decorator_fs_finalize (GObject *object)
 
        priv = TRACKER_DECORATOR_FS (object)->priv;
 
-       if (priv->volume_monitor)
-               g_object_unref (priv->volume_monitor);
+       if (priv->storage)
+               g_object_unref (priv->storage);
 
        G_OBJECT_CLASS (tracker_decorator_fs_parent_class)->finalize (object);
 }
@@ -191,57 +191,33 @@ check_files (TrackerDecorator    *decorator,
        g_string_free (query, TRUE);
 }
 
-static inline gchar *
-mount_point_get_uuid (GMount *mount)
-{
-       GVolume *volume;
-       gchar *uuid = NULL;
-
-       volume = g_mount_get_volume (mount);
-       if (volume) {
-               uuid = g_volume_get_identifier (volume, G_VOLUME_IDENTIFIER_KIND_UUID);
-               if (!uuid) {
-                       gchar *mount_name;
-
-                       mount_name = g_mount_get_name (mount);
-                       uuid = g_compute_checksum_for_string (G_CHECKSUM_MD5, mount_name, -1);
-                       g_free (mount_name);
-               }
-
-               g_object_unref (volume);
-       }
-
-       return uuid;
-}
-
 static void
-mount_point_added_cb (GVolumeMonitor *monitor,
-                      GMount         *mount,
+mount_point_added_cb (TrackerStorage *storage,
+                      const gchar    *uuid,
+                      const gchar    *mount_point,
+                      const gchar    *mount_name,
+                      gboolean        removable,
+                      gboolean        optical,
                       gpointer        user_data)
 {
-       gchar *uuid;
        gchar *urn;
 
-       uuid = mount_point_get_uuid (mount);
        urn = g_strdup_printf (TRACKER_PREFIX_DATASOURCE_URN "%s", uuid);
        check_files (user_data, urn, TRUE, process_files_cb);
        g_free (urn);
-       g_free (uuid);
 }
 
 static void
-mount_point_removed_cb (GVolumeMonitor *monitor,
-                        GMount         *mount,
+mount_point_removed_cb (TrackerStorage *storage,
+                        const gchar    *uuid,
+                        const gchar    *mount_point,
                         gpointer        user_data)
 {
-       gchar *uuid;
        gchar *urn;
 
-       uuid = mount_point_get_uuid (mount);
        urn = g_strdup_printf (TRACKER_PREFIX_DATASOURCE_URN "%s", uuid);
        check_files (user_data, urn, FALSE, remove_files_cb);
        g_free (urn);
-       g_free (uuid);
 }
 
 static gboolean
@@ -252,12 +228,13 @@ tracker_decorator_fs_iface_init (GInitable     *initable,
        TrackerDecoratorFSPrivate *priv;
 
        priv = TRACKER_DECORATOR_FS (initable)->priv;
+       priv->storage = tracker_storage_new ();
+
+       g_signal_connect (priv->storage, "mount-point-added",
+                         G_CALLBACK (mount_point_added_cb), initable);
 
-       priv->volume_monitor = g_volume_monitor_get ();
-       g_signal_connect_object (priv->volume_monitor, "mount-added",
-                                G_CALLBACK (mount_point_added_cb), initable, 0);
-       g_signal_connect_object (priv->volume_monitor, "mount-removed",
-                                G_CALLBACK (mount_point_removed_cb), initable, 0);
+       g_signal_connect (priv->storage, "mount-point-removed",
+                         G_CALLBACK (mount_point_removed_cb), initable);
 
        return parent_initable_iface->init (initable, cancellable, error);
 }
diff --git a/src/miners/fs/Makefile.am b/src/miners/fs/Makefile.am
index c766a60..ac56c2e 100644
--- a/src/miners/fs/Makefile.am
+++ b/src/miners/fs/Makefile.am
@@ -34,8 +34,6 @@ tracker_miner_fs_SOURCES =                             \
        tracker-miner-files.h                          \
        tracker-miner-files-index.c                    \
        tracker-miner-files-index.h                    \
-       tracker-storage.c                              \
-       tracker-storage.h                              \
        tracker-writeback-listener.c                   \
        tracker-writeback-listener.h                   \
        tracker-writeback-dispatcher.c                 \
diff --git a/src/miners/fs/tracker-miner-files.c b/src/miners/fs/tracker-miner-files.c
index fb7445f..bd97dff 100644
--- a/src/miners/fs/tracker-miner-files.c
+++ b/src/miners/fs/tracker-miner-files.c
@@ -43,7 +43,6 @@
 #include "tracker-power.h"
 #include "tracker-miner-files.h"
 #include "tracker-config.h"
-#include "tracker-storage.h"
 
 #define DISK_SPACE_CHECK_FREQUENCY 10
 #define SECONDS_PER_DAY 86400
diff --git a/src/tracker-writeback/tracker-writeback.c b/src/tracker-writeback/tracker-writeback.c
index 5bc2180..90e109a 100644
--- a/src/tracker-writeback/tracker-writeback.c
+++ b/src/tracker-writeback/tracker-writeback.c
@@ -17,8 +17,6 @@
  * Boston, MA  02110-1301, USA.
  */
 
-#include "config.h"
-
 #include "tracker-writeback.h"
 #include "tracker-writeback-module.h"
 
@@ -53,7 +51,7 @@ typedef struct {
        GMainContext *context;
        GMainLoop *main_loop;
 
-       GVolumeMonitor *volume_monitor;
+       TrackerStorage *storage;
 
        GDBusConnection *d_connection;
        GDBusNodeInfo *introspection_data;
@@ -143,7 +141,7 @@ tracker_controller_finalize (GObject *object)
 
        tracker_controller_dbus_stop (controller);
 
-       g_object_unref (priv->volume_monitor);
+       g_object_unref (priv->storage);
        g_hash_table_unref (priv->modules);
 
        g_main_loop_unref (priv->main_loop);
@@ -317,13 +315,14 @@ cancel_tasks (TrackerController *controller,
 }
 
 static void
-mount_point_removed_cb (GVolumeMonitor *monitor,
-                        GMount         *mount,
+mount_point_removed_cb (TrackerStorage *storage,
+                        const gchar    *uuid,
+                        const gchar    *mount_point,
                         gpointer        user_data)
 {
        GFile *mount_file;
 
-       mount_file = g_mount_get_root (mount);
+       mount_file = g_file_new_for_path (mount_point);
        cancel_tasks (TRACKER_CONTROLLER (user_data), NULL, mount_file);
        g_object_unref (mount_file);
 }
@@ -387,9 +386,9 @@ tracker_controller_init (TrackerController *controller)
        priv->context = g_main_context_new ();
        priv->main_loop = g_main_loop_new (priv->context, FALSE);
 
-       priv->volume_monitor = g_volume_monitor_get ();
-       g_signal_connect_object (priv->volume_monitor, "mount-removed",
-                                G_CALLBACK (mount_point_removed_cb), controller, 0);
+       priv->storage = tracker_storage_new ();
+       g_signal_connect (priv->storage, "mount-point-removed",
+                         G_CALLBACK (mount_point_removed_cb), controller);
 
        g_cond_init (&priv->initialization_cond);
        g_mutex_init (&priv->initialization_mutex);


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