[rygel] lms: Get db path over dbus from LMS
- From: Jens Georg <jensgeorg src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [rygel] lms: Get db path over dbus from LMS
- Date: Sun, 17 Jan 2016 21:32:33 +0000 (UTC)
commit 0b9f73df6582988b8ca5e406099c60483f8a2afa
Author: Alexander Kanavin <alex kanavin gmail com>
Date: Mon Mar 24 17:49:19 2014 +0200
lms: Get db path over dbus from LMS
src/plugins/lms/Makefile.am | 3 +-
src/plugins/lms/rygel-lms-dbus-interfaces.vala | 28 ++++++++++++++++++++++++
src/plugins/lms/rygel-lms-root-container.vala | 14 ++++++++---
3 files changed, 40 insertions(+), 5 deletions(-)
---
diff --git a/src/plugins/lms/Makefile.am b/src/plugins/lms/Makefile.am
index 1e777dd..f96a2ab 100644
--- a/src/plugins/lms/Makefile.am
+++ b/src/plugins/lms/Makefile.am
@@ -22,7 +22,8 @@ librygel_lms_la_SOURCES = \
rygel-lms-image-year.vala \
rygel-lms-sql-function.vala \
rygel-lms-sql-operator.vala \
- rygel-lms-collate.c
+ rygel-lms-collate.c \
+ rygel-lms-dbus-interfaces.vala
librygel_lms_la_VALAFLAGS = \
--enable-experimental \
diff --git a/src/plugins/lms/rygel-lms-dbus-interfaces.vala b/src/plugins/lms/rygel-lms-dbus-interfaces.vala
new file mode 100644
index 0000000..6c14f5b
--- /dev/null
+++ b/src/plugins/lms/rygel-lms-dbus-interfaces.vala
@@ -0,0 +1,28 @@
+/*
+ * Copyright (C) 2014 Intel Corporation.
+ *
+ * Author: Alexander Kanavin <alex kanavin gmail com>
+ *
+ * This file is part of Rygel.
+ *
+ * Rygel is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * Rygel is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+[DBus (name = "org.lightmediascanner.Scanner1")]
+interface Rygel.LMS.DBus : Object {
+ public abstract string data_base_path { owned get; }
+
+ //TODO: add all the other API items which are currently unused
+}
\ No newline at end of file
diff --git a/src/plugins/lms/rygel-lms-root-container.vala b/src/plugins/lms/rygel-lms-root-container.vala
index d7307be..a7a7f98 100644
--- a/src/plugins/lms/rygel-lms-root-container.vala
+++ b/src/plugins/lms/rygel-lms-root-container.vala
@@ -38,11 +38,17 @@ public class Rygel.LMS.RootContainer : Rygel.SimpleContainer {
base.root(title);
- string db_path;
+ string db_path = null;
try {
- db_path = config.get_string ("LightMediaScanner", "db-path");
- debug ("Using sqlite database location '%s'", db_path);
- } catch (GLib.Error error) {
+ LMS.DBus lms_proxy = Bus.get_proxy_sync (BusType.SESSION,
+ "org.lightmediascanner",
+ "/org/lightmediascanner/Scanner1");
+ db_path = lms_proxy.data_base_path;
+ debug ("Got db path %s from LMS over dbus", db_path);
+ } catch (Error e) {
+ warning("Using dbus to get db location failed: %s", e.message);
+ }
+ if (db_path == null) {
db_path = Environment.get_user_config_dir() +
"/lightmediascannerd/db.sqlite3";
debug ("Using default sqlite database location %s", db_path);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]