tracker r1492 - in branches/indexer-split: . data data/services src/trackerd
- From: pvanhoof svn gnome org
- To: svn-commits-list gnome org
- Subject: tracker r1492 - in branches/indexer-split: . data data/services src/trackerd
- Date: Tue, 27 May 2008 09:13:19 +0000 (UTC)
Author: pvanhoof
Date: Tue May 27 09:13:19 2008
New Revision: 1492
URL: http://svn.gnome.org/viewvc/tracker?rev=1492&view=rev
Log:
2008-05-27 Philip Van Hoof <pvanhoof gnome org>
* Merged with indexer-split with xesam-support
svn merge -r 1487:1491 ../indexer-split
Added:
branches/indexer-split/src/trackerd/tracker-xesam-ontology.c
- copied unchanged from r1491, /branches/xesam-support/src/trackerd/tracker-xesam-ontology.c
branches/indexer-split/src/trackerd/tracker-xesam-ontology.h
- copied unchanged from r1491, /branches/xesam-support/src/trackerd/tracker-xesam-ontology.h
Modified:
branches/indexer-split/ChangeLog
branches/indexer-split/data/services/xesam-metadata.mmapping
branches/indexer-split/data/sqlite-cache.sql
branches/indexer-split/data/sqlite-tracker.sql
branches/indexer-split/src/trackerd/Makefile.am
branches/indexer-split/src/trackerd/tracker-db-manager.c
branches/indexer-split/src/trackerd/tracker-db-manager.h
branches/indexer-split/src/trackerd/tracker-db-sqlite.c
branches/indexer-split/src/trackerd/tracker-db-sqlite.h
branches/indexer-split/src/trackerd/tracker-dbus-xesam.c
branches/indexer-split/src/trackerd/tracker-dbus-xesam.h
branches/indexer-split/src/trackerd/tracker-dbus.c
branches/indexer-split/src/trackerd/tracker-dbus.h
branches/indexer-split/src/trackerd/tracker-main.c
branches/indexer-split/src/trackerd/tracker-xesam-live-search.c
branches/indexer-split/src/trackerd/tracker-xesam-session.c
branches/indexer-split/src/trackerd/tracker-xesam.c
Modified: branches/indexer-split/data/services/xesam-metadata.mmapping
==============================================================================
--- branches/indexer-split/data/services/xesam-metadata.mmapping (original)
+++ branches/indexer-split/data/services/xesam-metadata.mmapping Tue May 27 09:13:19 2008
@@ -27,7 +27,7 @@
MetaName=
[xesam:artist]
-MetaName=
+MetaName=Audio:Artist
[xesam:asText]
Modified: branches/indexer-split/data/sqlite-cache.sql
==============================================================================
--- branches/indexer-split/data/sqlite-cache.sql (original)
+++ branches/indexer-split/data/sqlite-cache.sql Tue May 27 09:13:19 2008
@@ -78,7 +78,8 @@
CREATE TABLE LiveSearches
(
- ID Integer primary key not null,
ServiceID Integer not null,
- SearchID Text
+ SearchID Text,
+
+ Unique (ServiceID, SearchID)
);
Modified: branches/indexer-split/data/sqlite-tracker.sql
==============================================================================
--- branches/indexer-split/data/sqlite-tracker.sql (original)
+++ branches/indexer-split/data/sqlite-tracker.sql Tue May 27 09:13:19 2008
@@ -21,9 +21,10 @@
/* This should become a TEMPORARY table */
CREATE TABLE LiveSearches
(
- ID Integer primary key not null,
ServiceID Integer not null,
- SearchID Text
+ SearchID Text,
+
+ Unique (ServiceID, SearchID)
);
/* store volume and HAL info here for files */
Modified: branches/indexer-split/src/trackerd/Makefile.am
==============================================================================
--- branches/indexer-split/src/trackerd/Makefile.am (original)
+++ branches/indexer-split/src/trackerd/Makefile.am Tue May 27 09:13:19 2008
@@ -136,6 +136,8 @@
tracker-status.h \
tracker-xesam.h \
tracker-xesam.c \
+ tracker-xesam-ontology.c \
+ tracker-xesam-ontology.h \
tracker-xesam-query.c \
tracker-xesam-query.h \
tracker-xesam-session.c \
Modified: branches/indexer-split/src/trackerd/tracker-db-manager.c
==============================================================================
--- branches/indexer-split/src/trackerd/tracker-db-manager.c (original)
+++ branches/indexer-split/src/trackerd/tracker-db-manager.c Tue May 27 09:13:19 2008
@@ -24,6 +24,8 @@
#define TRACKER_DB_MANAGER_FILE_META_FILENAME "file-meta.db"
#define TRACKER_DB_MANAGER_EMAIL_CONTENTS_FILENAME "email-contents.db"
#define TRACKER_DB_MANAGER_EMAIL_META_FILENAME "email-meta.db"
+#define TRACKER_DB_MANAGER_XESAM_FILENAME "xesam.db"
+
#define TRACKER_DB_MANAGER_COMMON_NAME "common"
#define TRACKER_DB_MANAGER_CACHE_NAME "cache"
@@ -31,6 +33,7 @@
#define TRACKER_DB_MANAGER_FILE_META_NAME NULL
#define TRACKER_DB_MANAGER_EMAIL_CONTENTS_NAME NULL
#define TRACKER_DB_MANAGER_EMAIL_META_NAME NULL
+#define TRACKER_DB_MANAGER_XESAM_NAME NULL
static gboolean initialized = FALSE;
@@ -108,6 +111,15 @@
512,
TRACKER_DB_PAGE_SIZE_DEFAULT,
FALSE},
+
+ {TRACKER_DB_XESAM,
+ TRACKER_DB_MANAGER_XESAM_FILENAME,
+ TRACKER_DB_LOC_DATA_DIR,
+ NULL,
+ NULL,
+ 512,
+ TRACKER_DB_PAGE_SIZE_DEFAULT,
+ TRUE},
};
TrackerDBDefinition *tracker_dbs [TRACKER_DB_END];
Modified: branches/indexer-split/src/trackerd/tracker-db-manager.h
==============================================================================
--- branches/indexer-split/src/trackerd/tracker-db-manager.h (original)
+++ branches/indexer-split/src/trackerd/tracker-db-manager.h Tue May 27 09:13:19 2008
@@ -33,6 +33,7 @@
TRACKER_DB_FILE_CONTENTS,
TRACKER_DB_EMAIL_META,
TRACKER_DB_EMAIL_CONTENTS,
+ TRACKER_DB_XESAM,
TRACKER_DB_END
} TrackerDatabase;
Modified: branches/indexer-split/src/trackerd/tracker-db-sqlite.c
==============================================================================
--- branches/indexer-split/src/trackerd/tracker-db-sqlite.c (original)
+++ branches/indexer-split/src/trackerd/tracker-db-sqlite.c Tue May 27 09:13:19 2008
@@ -49,6 +49,7 @@
#include "tracker-query-tree.h"
#include "tracker-xesam.h"
#include "tracker-main.h"
+#include "tracker-xesam-ontology.h"
#define MAX_INDEX_TEXT_LENGTH 1048576
#define MAX_TEXT_BUFFER 65567
@@ -971,46 +972,62 @@
DBConnection *
tracker_db_connect_xesam ()
{
-
DBConnection *db_con;
- DBConnection *blob_db_con = NULL;
- Indexer *word_index_db_con = NULL;
+ TrackerDBInterface *iface;
+ gboolean create_table = FALSE;
- DBConnection *common_db_con = NULL;
+ create_table = !tracker_db_manager_file_exists (TRACKER_DB_XESAM);
- DBConnection *emails_blob_db_con = NULL;
- DBConnection *emails_db_con= NULL;
- Indexer *email_word_index_db_con= NULL;
+ iface = open_db_interface (TRACKER_DB_XESAM);
- db_con = tracker_db_connect_file_meta ();
- emails_db_con = tracker_db_connect_email_meta ();
+ if (create_table) {
+ g_message ("Creating xesam database... %s",
+ tracker_db_manager_get_file (TRACKER_DB_XESAM));
- blob_db_con = tracker_db_connect_file_content ();
- emails_blob_db_con = tracker_db_connect_email_content ();
- common_db_con = tracker_db_connect_common ();
- word_index_db_con = tracker->file_index;
- email_word_index_db_con = tracker->email_index;
+ load_sql_file (iface, "sqlite-xesam.sql");
+
+ tracker_db_load_xesam_service_file (iface, "xesam.metadata");
+ tracker_db_load_xesam_service_file (iface, "xesam-convenience.metadata");
+ tracker_db_load_xesam_service_file (iface, "xesam-virtual.metadata");
+ tracker_db_load_xesam_service_file (iface, "xesam.service");
+ tracker_db_load_xesam_service_file (iface, "xesam-convenience.service");
+ tracker_db_load_xesam_service_file (iface, "xesam-service.smapping");
+ tracker_db_load_xesam_service_file (iface, "xesam-metadata.mmapping");
+
+ tracker_db_create_xesam_lookup(iface);
+ }
- db_con->cache = tracker_db_connect_cache ();
+ tracker_db_exec_no_reply (iface,
+ "ATTACH '%s' as %s",
+ tracker_db_manager_get_file (TRACKER_DB_FILE_META),
+ tracker_db_manager_get_name (TRACKER_DB_FILE_META));
- db_con->blob = blob_db_con;
- db_con->data = db_con;
- db_con->emails = emails_db_con;
- db_con->common = common_db_con;
- db_con->word_index = word_index_db_con;
+ tracker_db_exec_no_reply (iface,
+ "ATTACH '%s' as %s",
+ tracker_db_manager_get_file (TRACKER_DB_EMAIL_META),
+ tracker_db_manager_get_name (TRACKER_DB_EMAIL_META));
- emails_db_con->common = common_db_con;
- emails_db_con->blob = emails_blob_db_con;
- emails_db_con->data = db_con;
- emails_db_con->word_index = email_word_index_db_con;
- emails_db_con->cache = db_con->cache;
+ tracker_db_exec_no_reply (iface,
+ "ATTACH '%s' as %s",
+ tracker_db_manager_get_file (TRACKER_DB_COMMON),
+ tracker_db_manager_get_name (TRACKER_DB_COMMON));
- tracker_db_attach_db (db_con, TRACKER_DB_COMMON);
- tracker_db_attach_db (db_con, TRACKER_DB_CACHE);
-
- return db_con;
+ tracker_db_exec_no_reply (iface,
+ "ATTACH '%s' as %s",
+ tracker_db_manager_get_file (TRACKER_DB_CACHE),
+ tracker_db_manager_get_name (TRACKER_DB_CACHE));
+ // Create the static data (hashtables etc)
+
+
+
+ // FIXME This function should eventually return DB interface, not connection.
+
+ db_con = g_new0 (DBConnection, 1);
+ db_con->db = iface;
+
+ return db_con;
}
void
@@ -1137,18 +1154,6 @@
load_service_description_file (db_con->db, "image.metadata");
load_service_description_file (db_con->db, "video.metadata");
- load_sql_file (db_con->db, "sqlite-xesam.sql");
-
- tracker_db_load_xesam_service_file (db_con, "xesam.metadata");
- tracker_db_load_xesam_service_file (db_con, "xesam-convenience.metadata");
- tracker_db_load_xesam_service_file (db_con, "xesam-virtual.metadata");
- tracker_db_load_xesam_service_file (db_con, "xesam.service");
- tracker_db_load_xesam_service_file (db_con, "xesam-convenience.service");
- tracker_db_load_xesam_service_file (db_con, "xesam-service.smapping");
- tracker_db_load_xesam_service_file (db_con, "xesam-metadata.mmapping");
-
- tracker_db_create_xesam_lookup(db_con);
-
tracker_db_exec_no_reply (db_con->db, "ANALYZE");
}
@@ -1510,18 +1515,6 @@
load_service_description_file (db_con->db, "default.service");
- load_sql_file (db_con->db, "sqlite-xesam.sql");
-
- tracker_db_load_xesam_service_file (db_con, "xesam.metadata");
- tracker_db_load_xesam_service_file (db_con, "xesam-convenience.metadata");
- tracker_db_load_xesam_service_file (db_con, "xesam-virtual.metadata");
- tracker_db_load_xesam_service_file (db_con, "xesam.service");
- tracker_db_load_xesam_service_file (db_con, "xesam-convenience.service");
- tracker_db_load_xesam_service_file (db_con, "xesam-service.smapping");
- tracker_db_load_xesam_service_file (db_con, "xesam-metadata.mmapping");
-
- tracker_db_create_xesam_lookup(db_con);
-
tracker_db_exec_no_reply (db_con->db, "ANALYZE");
tracker_db_close (db_con->db);
@@ -3312,7 +3305,7 @@
* FROM LiveSearches
* WHERE SearchID = ? */
- return tracker_exec_proc (db_con->cache, "GetLiveSearchHitCount", search_id, NULL);
+ return tracker_db_exec_proc (db_con->db, "GetLiveSearchHitCount", search_id, NULL);
}
@@ -3325,7 +3318,7 @@
* AND X.SearchID = ?
* AND E.EventType IS 'Delete' */
- return tracker_exec_proc (db_con->cache, "GetLiveSearchDeletedIDs", search_id, NULL);
+ return tracker_db_exec_proc (db_con->db, "GetLiveSearchDeletedIDs", search_id, NULL);
}
void
@@ -3335,7 +3328,7 @@
* FROM LiveSearches as X
* WHERE E.SearchID = ? */
- tracker_exec_proc_no_reply (db_con->cache->db, "LiveSearchStopSearch", search_id, NULL);
+ tracker_exec_proc_no_reply (db_con->db, "LiveSearchStopSearch", search_id, NULL);
}
@@ -3346,9 +3339,13 @@
* INTO LiveSearches
* SELECT ID, SEARCH_ID FROM_QUERY WHERE_QUERY */
- tracker_db_exec_no_reply (db_con->db, NULL,
- "INSERT INTO LiveSearches SELECT ID, '%s' %s %s",
+ g_debug ("INSERT INTO LiveSearches SELECT S.ID, '%s' %s %s",
+ search_id, from_query, where_query);
+
+ tracker_db_exec_no_reply (db_con->db,
+ "INSERT INTO LiveSearches SELECT S.ID, '%s' %s %s",
search_id, from_query, where_query);
+
}
TrackerDBResultSet*
@@ -3370,6 +3367,8 @@
* OR X.EventType IS 'Update')
**/
+ g_debug("tracker_db_get_live_search_new_ids");
+
return tracker_db_exec (db_con->db,
/* COLUMNS */ "SELECT E.ServiceID, E.EventType%s%s "
/* FROM_QUERY */ "%s%s LiveSearches as X, Events as E "
@@ -3400,15 +3399,15 @@
TrackerDBResultSet*
tracker_db_get_events (DBConnection *db_con)
{
- tracker_exec_proc_no_reply (db_con->cache->db, "SetEventsBeingHandled", NULL);
- return tracker_exec_proc (db_con->cache, "GetEvents", NULL);
+ tracker_exec_proc_no_reply (db_con->db, "SetEventsBeingHandled", NULL);
+ return tracker_db_exec_proc (db_con->db, "GetEvents", NULL);
}
void
tracker_db_delete_handled_events (DBConnection *db_con)
{
- tracker_exec_proc_no_reply (db_con->cache->db, "DeleteHandledEvents", NULL);
+ tracker_exec_proc_no_reply (db_con->db, "DeleteHandledEvents", NULL);
}
static guint32
@@ -3419,7 +3418,9 @@
int i;
guint32 id = 0;
- result_set = tracker_exec_proc (db_con->common, "GetNewEventID", NULL);
+ // FIXME We now assume we get the standard db_con, not xesam one.
+
+ result_set = tracker_db_exec_proc (db_con->common->db, "GetNewEventID", NULL);
if (!result_set) {
g_critical ("Could not create event, GetNewEventID failed");
@@ -3432,13 +3433,13 @@
i++;
eid = tracker_int_to_string (i);
- result_set = tracker_exec_proc (db_con->common, "UpdateNewEventID", eid, NULL);
+ result_set = tracker_db_exec_proc (db_con->common->db, "UpdateNewEventID", eid, NULL);
if (result_set)
g_object_unref (result_set);
/* Uses the Events table */
- result_set = tracker_exec_proc (db_con->cache, "CreateEvent", eid, service_id_str, type, NULL);
- id = tracker_db_interface_sqlite_get_last_insert_id (TRACKER_DB_INTERFACE_SQLITE (db_con->db));
+ result_set = tracker_db_exec_proc (db_con->common->db, "CreateEvent", eid, service_id_str, type, NULL);
+ id = tracker_db_interface_sqlite_get_last_insert_id (TRACKER_DB_INTERFACE_SQLITE (db_con->common->db));
if (result_set)
g_object_unref (result_set);
@@ -4577,6 +4578,7 @@
tracker_field_set_id (field_def, tracker_int_to_string (id));
tracker_field_set_name (field_def, name);
+ tracker_field_set_data_type (field_def, field_type);
tracker_field_set_field_name (field_def, field_name);
tracker_field_set_weight (field_def, weight);
tracker_field_set_embedded (field_def, embedded);
@@ -4727,12 +4729,12 @@
// FIXME Do this in a non-retarded way
gboolean
-get_service_mapping (DBConnection *db_con, const char *type, GList **list)
+get_service_mapping(TrackerDBInterface *iface, const char *type, GList **list)
{
TrackerDBResultSet *result_set;
gboolean valid = TRUE;
- result_set = tracker_exec_proc (db_con, "GetXesamServiceMappings", type, NULL);
+ result_set = tracker_db_exec_proc (iface, "GetXesamServiceMappings", type, NULL);
if (result_set) {
while (valid) {
@@ -4750,7 +4752,7 @@
g_object_unref (result_set);
}
- result_set = tracker_exec_proc (db_con, "GetXesamServiceChildren", type, NULL);
+ result_set = tracker_db_exec_proc (iface, "GetXesamServiceChildren", type, NULL);
valid = TRUE;
if (result_set) {
@@ -4758,7 +4760,7 @@
gchar *st;
tracker_db_result_set_get (result_set, 0, &st, -1);
- get_service_mapping(db_con, st ,list);
+ get_service_mapping(iface, st ,list);
valid = tracker_db_result_set_iter_next (result_set);
g_free (st);
@@ -4771,12 +4773,12 @@
}
gboolean
-get_metadata_mapping(DBConnection *db_con, const char *type, GList **list)
+get_metadata_mapping(TrackerDBInterface *iface, const char *type, GList **list)
{
TrackerDBResultSet *result_set;
gboolean valid = TRUE;
- result_set = tracker_exec_proc (db_con, "GetXesamMetaDataMappings", type, NULL);
+ result_set = tracker_db_exec_proc (iface, "GetXesamMetaDataMappings", type, NULL);
if (result_set) {
while (valid) {
@@ -4794,7 +4796,7 @@
g_object_unref (result_set);
}
- result_set = tracker_exec_proc (db_con, "GetXesamMetaDataChildren", type, NULL);
+ result_set = tracker_db_exec_proc (iface, "GetXesamMetaDataChildren", type, NULL);
valid = TRUE;
if (result_set) {
@@ -4802,7 +4804,7 @@
gchar *st;
tracker_db_result_set_get (result_set, 0, &st, -1);
- get_service_mapping(db_con, st ,list);
+ get_service_mapping(iface, st ,list);
valid = tracker_db_result_set_iter_next (result_set);
g_free (st);
@@ -4816,12 +4818,12 @@
gboolean
-tracker_db_create_xesam_lookup (DBConnection *db_con)
+tracker_db_create_xesam_lookup (TrackerDBInterface *iface)
{
TrackerDBResultSet *result_set;
gboolean valid = TRUE;
- result_set = tracker_exec_proc (db_con, "GetXesamServiceTypes", NULL);
+ result_set = tracker_db_exec_proc (iface, "GetXesamServiceTypes", NULL);
if (result_set) {
while (valid) {
@@ -4830,11 +4832,11 @@
GList *iter = NULL;
tracker_db_result_set_get (result_set, 0, &st, -1);
- get_service_mapping(db_con, st, &list);
-
+ get_service_mapping(iface, st, &list);
+
iter = g_list_first(list);
while (iter) {
- tracker_exec_proc (db_con, "InsertXesamServiceLookup", st, iter->data, NULL);
+ tracker_db_exec_proc (iface, "InsertXesamServiceLookup", st, iter->data, NULL);
g_free(iter->data);
iter = g_list_next (iter);
@@ -4850,7 +4852,7 @@
g_object_unref (result_set);
valid = TRUE;
- result_set = tracker_exec_proc (db_con, "GetXesamMetaDataTypes", NULL);
+ result_set = tracker_db_exec_proc (iface, "GetXesamMetaDataTypes", NULL);
if (result_set) {
while (valid) {
@@ -4859,11 +4861,11 @@
GList *iter = NULL;
tracker_db_result_set_get (result_set, 0, &st, -1);
- get_metadata_mapping(db_con, st, &list);
-
+ get_metadata_mapping(iface, st, &list);
+
iter = g_list_first(list);
while (iter) {
- tracker_exec_proc (db_con, "InsertXesamMetaDataLookup", st, iter->data, NULL);
+ tracker_db_exec_proc (iface, "InsertXesamMetaDataLookup", st, iter->data, NULL);
g_free(iter->data);
iter = g_list_next (iter);
@@ -4882,7 +4884,7 @@
}
gboolean
-tracker_db_load_xesam_service_file (DBConnection *db_con, const char *filename)
+tracker_db_load_xesam_service_file (TrackerDBInterface *iface, const char *filename)
{
GKeyFile *key_file = NULL;
const char * const *locale_array;
@@ -4921,14 +4923,14 @@
for (array = groups; *array; array++) {
if (is_metadata) {
- tracker_exec_proc (db_con, "InsertXesamMetadataType", *array, NULL);
- id = tracker_db_interface_sqlite_get_last_insert_id (TRACKER_DB_INTERFACE_SQLITE (db_con->db));
+ tracker_db_exec_proc (iface, "InsertXesamMetadataType", *array, NULL);
+ id = tracker_db_interface_sqlite_get_last_insert_id (TRACKER_DB_INTERFACE_SQLITE (iface));
} else if (is_service) {
- tracker_exec_proc (db_con, "InsertXesamServiceType", *array, NULL);
- id = tracker_db_interface_sqlite_get_last_insert_id (TRACKER_DB_INTERFACE_SQLITE (db_con->db));
+ tracker_db_exec_proc (iface, "InsertXesamServiceType", *array, NULL);
+ id = tracker_db_interface_sqlite_get_last_insert_id (TRACKER_DB_INTERFACE_SQLITE (iface));
} else {
/* Nothing required */
@@ -4969,7 +4971,7 @@
if (parents) {
for (parents_p = parents; *parents_p; parents_p++) {
sql = g_strdup_printf ("INSERT INTO XesamMetadataChildren (Parent, Child) VALUES ('%s', '%s')", *parents_p, *array);
- tracker_db_exec_no_reply (db_con->db, sql);
+ tracker_db_exec_no_reply (iface, sql);
g_free(sql);
}
@@ -4981,7 +4983,7 @@
if (data_id != -1) {
sql = g_strdup_printf ("update XesamMetadataTypes set DataTypeID = %d where ID = %s", data_id, str_id);
- tracker_db_exec_no_reply (db_con->db, sql);
+ tracker_db_exec_no_reply (iface, sql);
g_free (sql);
}
@@ -4992,7 +4994,7 @@
sql = g_strdup_printf ("update XesamMetadataTypes set %s = '%s' where ID = %s", *array2, esc_value, str_id);
- tracker_db_exec_no_reply (db_con->db, sql);
+ tracker_db_exec_no_reply (iface, sql);
g_free (sql);
g_free (esc_value);
}
@@ -5007,7 +5009,7 @@
if (parents) {
for (parents_p = parents; *parents_p; parents_p++) {
sql = g_strdup_printf ("INSERT INTO XesamServiceChildren (Parent, Child) VALUES ('%s', '%s')", *parents_p, *array);
- tracker_db_exec_no_reply (db_con->db, sql);
+ tracker_db_exec_no_reply (iface, sql);
g_free(sql);
}
@@ -5015,7 +5017,7 @@
} else {
char *esc_value = tracker_escape_string (value);
sql = g_strdup_printf ("update XesamServiceTypes set %s = '%s' where typeID = %s", *array2, esc_value, str_id);
- tracker_db_exec_no_reply (db_con->db, sql);
+ tracker_db_exec_no_reply (iface, sql);
g_free (sql);
g_free (esc_value);
}
@@ -5028,7 +5030,7 @@
if (mappings) {
for (mappings_p = mappings; *mappings_p; mappings_p++) {
char *esc_value = tracker_escape_string (*mappings_p);
- tracker_exec_proc (db_con, "InsertXesamMetaDataMapping", *array, esc_value, NULL);
+ tracker_db_exec_proc (iface, "InsertXesamMetaDataMapping", *array, esc_value, NULL);
g_free (esc_value);
}
}
@@ -5041,7 +5043,7 @@
if (mappings) {
for (mappings_p = mappings; *mappings_p; mappings_p++) {
char *esc_value = tracker_escape_string (*mappings_p);
- tracker_exec_proc (db_con, "InsertXesamServiceMapping", *array, esc_value, NULL);
+ tracker_db_exec_proc (iface, "InsertXesamServiceMapping", *array, esc_value, NULL);
g_free (esc_value);
}
}
@@ -5107,6 +5109,8 @@
alias = g_strdup_printf ("M%d", field_count);
table_name = tracker_get_metadata_table (tracker_field_get_data_type (def));
+ g_debug("Field_name: %s :table_name is: %s for data_type: %i", field_name, table_name, tracker_field_get_data_type(def));
+
tracker_field_data_set_alias (field_data, alias);
tracker_field_data_set_table_name (field_data, table_name);
tracker_field_data_set_id_field (field_data, tracker_field_get_id (def));
Modified: branches/indexer-split/src/trackerd/tracker-db-sqlite.h
==============================================================================
--- branches/indexer-split/src/trackerd/tracker-db-sqlite.h (original)
+++ branches/indexer-split/src/trackerd/tracker-db-sqlite.h Tue May 27 09:13:19 2008
@@ -337,9 +337,9 @@
TrackerDBResultSet *tracker_get_xesam_service_names (DBConnection *db_con,
const char *name);
-gboolean tracker_db_load_xesam_service_file (DBConnection *db_con,
+gboolean tracker_db_load_xesam_service_file (TrackerDBInterface *iface,
const char *filename);
-gboolean tracker_db_create_xesam_lookup (DBConnection *db_con);
+gboolean tracker_db_create_xesam_lookup (TrackerDBInterface *iface);
void tracker_db_stop_live_search (DBConnection *db_con,
const gchar *search_id);
void tracker_db_start_live_search (DBConnection *db_con,
Modified: branches/indexer-split/src/trackerd/tracker-dbus-xesam.c
==============================================================================
--- branches/indexer-split/src/trackerd/tracker-dbus-xesam.c (original)
+++ branches/indexer-split/src/trackerd/tracker-dbus-xesam.c Tue May 27 09:13:19 2008
@@ -304,6 +304,8 @@
my_sessions);
dbus_g_method_return (context, session_id);
+
+ g_message ("Created new xesam session: %s", session_id);
}
g_free (session_id);
@@ -465,6 +467,8 @@
if (search)
g_object_unref (search);
+ g_debug("Created new xesam search: %s for session: %s", search_id, session_id);
+
g_free (search_id);
} else if (error) {
Modified: branches/indexer-split/src/trackerd/tracker-dbus-xesam.h
==============================================================================
--- branches/indexer-split/src/trackerd/tracker-dbus-xesam.h (original)
+++ branches/indexer-split/src/trackerd/tracker-dbus-xesam.h Tue May 27 09:13:19 2008
@@ -29,8 +29,8 @@
#include "tracker-db-sqlite.h"
#include "tracker-indexer.h"
-#define TRACKER_DBUS_XESAM_SERVICE "org.freedesktop.xesam"
-#define TRACKER_DBUS_XESAM_PATH "/org/freedesktop/xesam/Search"
+#define TRACKER_DBUS_XESAM_SERVICE "org.freedesktop.xesam.searcher"
+#define TRACKER_DBUS_XESAM_PATH "/org/freedesktop/xesam/searcher/main"
#define TRACKER_DBUS_XESAM_INTERFACE "org.freedesktop.xesam.Search"
G_BEGIN_DECLS
Modified: branches/indexer-split/src/trackerd/tracker-dbus.c
==============================================================================
--- branches/indexer-split/src/trackerd/tracker-dbus.c (original)
+++ branches/indexer-split/src/trackerd/tracker-dbus.c Tue May 27 09:13:19 2008
@@ -127,10 +127,11 @@
gboolean
tracker_dbus_preinit (Tracker *tracker,
DBusGConnection **connection_out,
- DBusGProxy **proxy_out)
+ DBusGProxy **proxy_out,
+ DBusGProxy **xesam_out)
{
DBusGConnection *connection;
- DBusGProxy *proxy;
+ DBusGProxy *proxy, *xesam;
GError *error = NULL;
g_return_val_if_fail (tracker != NULL, FALSE);
@@ -158,8 +159,22 @@
return FALSE;
}
+ /* The definitions below (DBUS_SERVICE_DBUS, etc) are
+ * predefined for us to just use.
+ */
+ xesam = dbus_g_proxy_new_for_name (connection,
+ DBUS_SERVICE_DBUS,
+ DBUS_PATH_DBUS,
+ DBUS_INTERFACE_DBUS);
+
+ /* Set up the main tracker service */
+ if (!dbus_register_service (xesam, TRACKER_DBUS_XESAM_SERVICE)) {
+ return FALSE;
+ }
+
*connection_out = connection;
*proxy_out = proxy;
+ *xesam_out = xesam;
return TRUE;
}
@@ -167,7 +182,8 @@
gboolean
tracker_dbus_init (Tracker *tracker,
DBusGConnection *connection,
- DBusGProxy *proxy)
+ DBusGProxy *proxy,
+ DBusGProxy *xesam)
{
GObject *object;
DBConnection *db_connection;
@@ -252,7 +268,7 @@
if (tracker_config_get_enable_xesam (tracker->config)) {
/* Add org.freedesktop.xesam.Search */
if (!(object = dbus_register_object (connection,
- proxy,
+ xesam,
TRACKER_TYPE_DBUS_XESAM,
&dbus_glib_tracker_dbus_xesam_object_info,
TRACKER_DBUS_XESAM_PATH))) {
Modified: branches/indexer-split/src/trackerd/tracker-dbus.h
==============================================================================
--- branches/indexer-split/src/trackerd/tracker-dbus.h (original)
+++ branches/indexer-split/src/trackerd/tracker-dbus.h Tue May 27 09:13:19 2008
@@ -80,10 +80,12 @@
gboolean tracker_dbus_preinit (Tracker *tracker,
DBusGConnection **connection_out,
- DBusGProxy **proxy_out);
+ DBusGProxy **proxy_out,
+ DBusGProxy **xesam_out);
gboolean tracker_dbus_init (Tracker *tracker,
DBusGConnection *connection,
- DBusGProxy *proxy);
+ DBusGProxy *proxy,
+ DBusGProxy *xesam);
void tracker_dbus_shutdown (void);
guint tracker_dbus_get_next_request_id (void);
GObject * tracker_dbus_get_object (GType type);
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 Tue May 27 09:13:19 2008
@@ -809,6 +809,7 @@
{
DBusGConnection *connection = NULL;
DBusGProxy *proxy = NULL;
+ DBusGProxy *xesam = NULL;
GOptionContext *context = NULL;
GError *error = NULL;
GThread *thread;
@@ -938,7 +939,7 @@
tracker_config_get_verbosity (tracker->config));
g_message ("Starting log");
- if (!tracker_dbus_preinit (tracker, &connection, &proxy))
+ if (!tracker_dbus_preinit (tracker, &connection, &proxy, &xesam))
return EXIT_FAILURE;
sanity_check_option_values ();
@@ -993,7 +994,7 @@
/* If we are already running, this should return some
* indication.
*/
- if (!tracker_dbus_init (tracker, connection, proxy)) {
+ if (!tracker_dbus_init (tracker, connection, proxy, xesam)) {
return EXIT_FAILURE;
}
Modified: branches/indexer-split/src/trackerd/tracker-xesam-live-search.c
==============================================================================
--- branches/indexer-split/src/trackerd/tracker-xesam-live-search.c (original)
+++ branches/indexer-split/src/trackerd/tracker-xesam-live-search.c Tue May 27 09:13:19 2008
@@ -489,6 +489,8 @@
g_object_get (proxy, "db-connection", &db_con, NULL);
+ g_debug ("live_search_get_hits");
+
// For ottela: fetch results for get_hits
result_set = tracker_db_get_live_search_get_hit_data (db_con,
@@ -665,10 +667,13 @@
TrackerDBusXesam *proxy = TRACKER_DBUS_XESAM (tracker_dbus_get_object (TRACKER_TYPE_DBUS_XESAM));
g_object_get (proxy, "db-connection", &db_con, NULL);
+
+ g_debug ("The from query for activate: %s",tracker_xesam_live_search_get_from_query (self));
+
tracker_db_start_live_search (db_con,
- tracker_xesam_live_search_get_id (self),
tracker_xesam_live_search_get_from_query (self),
- tracker_xesam_live_search_get_where_query (self));
+ tracker_xesam_live_search_get_where_query (self),
+ tracker_xesam_live_search_get_id (self));
}
priv->active = TRUE;
@@ -778,6 +783,8 @@
g_free (orig_where);
}
+ g_message ("Parsed to '%s' and '%s'", priv->from_sql, priv->where_sql);
+
return TRUE;
}
Modified: branches/indexer-split/src/trackerd/tracker-xesam-session.c
==============================================================================
--- branches/indexer-split/src/trackerd/tracker-xesam-session.c (original)
+++ branches/indexer-split/src/trackerd/tracker-xesam-session.c Tue May 27 09:13:19 2008
@@ -381,6 +381,8 @@
TrackerXesamLiveSearch *search;
TrackerXesamSessionPriv *priv = self->priv;
+ g_debug ("Creating search for xesam session: \n %s", query_xml);
+
search = tracker_xesam_live_search_new (query_xml);
tracker_xesam_live_search_set_session (search, self);
@@ -388,6 +390,7 @@
if (tracker_xesam_live_search_parse_query (search, error)) {
+ g_debug ("Xesam live search added");
g_hash_table_insert (priv->searches,
g_strdup (tracker_xesam_live_search_get_id (search)),
g_object_ref (search));
@@ -396,6 +399,7 @@
*search_id = g_strdup (tracker_xesam_live_search_get_id (search));
} else {
+ g_message ("Xesam search parse failed");
g_object_unref (search);
search = NULL;
}
Modified: branches/indexer-split/src/trackerd/tracker-xesam.c
==============================================================================
--- branches/indexer-split/src/trackerd/tracker-xesam.c (original)
+++ branches/indexer-split/src/trackerd/tracker-xesam.c Tue May 27 09:13:19 2008
@@ -210,6 +210,9 @@
while (sessions) {
GList *searches;
+
+ g_debug ("Session being handled, ID :%s", tracker_xesam_session_get_id (sessions->data));
+
searches = tracker_xesam_session_get_searches (sessions->data);
while (searches) {
@@ -217,6 +220,9 @@
GArray *added = NULL;
GArray *removed = NULL;
GArray *modified = NULL;
+
+ g_debug ("Search being handled, ID :%s", tracker_xesam_live_search_get_id (searches->data));
+
search = searches->data;
tracker_xesam_live_search_match_with_events (search,
&added,
@@ -284,6 +290,7 @@
* we didn't get a wakeup-call nor we had items to process this loop
*/
+
if (!live_search_handler_running) {
live_search_handler_running = TRUE;
g_timeout_add_full (G_PRIORITY_DEFAULT_IDLE,
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]