summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCosimo Cecchi <cosimoc@gnome.org>2015-01-27 16:30:18 +0000
committerCosimo Cecchi <cosimoc@gnome.org>2015-01-27 16:30:18 +0000
commitac58f18a6f085d5d79fc23d2a8abb73e0ee33701 (patch)
tree61f3cf7490a918b77ef20fdf933e2d9322ccd243
parentfe98c31338b606908f88551c8f5b8a727a24c68f (diff)
downloadtracker-ac58f18a6f085d5d79fc23d2a8abb73e0ee33701.tar.gz
Revert "libtracker-common: Moved TrackerStorage to tracker-miner-fs, not needed by others"
This reverts commit b78ae1d600f227bd4b77744648d5cde4e09d4640.
-rw-r--r--src/libtracker-common/Makefile.am2
-rw-r--r--src/libtracker-common/tracker-common.h1
-rw-r--r--src/libtracker-common/tracker-storage.c (renamed from src/miners/fs/tracker-storage.c)1
-rw-r--r--src/libtracker-common/tracker-storage.h (renamed from src/miners/fs/tracker-storage.h)0
-rw-r--r--src/libtracker-miner/tracker-decorator-fs.c59
-rw-r--r--src/miners/fs/Makefile.am2
-rw-r--r--src/miners/fs/tracker-miner-files.c1
-rw-r--r--src/tracker-writeback/tracker-writeback.c19
8 files changed, 31 insertions, 54 deletions
diff --git a/src/libtracker-common/Makefile.am b/src/libtracker-common/Makefile.am
index 9c3b4e2fe..396b953ad 100644
--- a/src/libtracker-common/Makefile.am
+++ b/src/libtracker-common/Makefile.am
@@ -17,6 +17,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 \
@@ -32,6 +33,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 1af7393f1..7d71182c5 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
index 9ec59dbfd..557d0027f 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
index f3101c08e..f3101c08e 100644
--- a/src/miners/fs/tracker-storage.h
+++ b/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 d2e4470b2..3e18822a2 100644
--- a/src/libtracker-miner/tracker-decorator-fs.c
+++ b/src/libtracker-miner/tracker-decorator-fs.c
@@ -42,7 +42,7 @@
typedef struct _TrackerDecoratorFSPrivate TrackerDecoratorFSPrivate;
struct _TrackerDecoratorFSPrivate {
- GVolumeMonitor *volume_monitor;
+ TrackerStorage *storage;
};
static GInitableIface *parent_initable_iface;
@@ -60,8 +60,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);
}
@@ -167,57 +167,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
@@ -228,12 +204,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 c766a6003..ac56c2e19 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 246e7dbc4..726ca3ff4 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 5bc2180b0..90e109afe 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);