[tracker] libtracker-miner: port to libnm
- From: Lubomir Rintel <lkundrak src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [tracker] libtracker-miner: port to libnm
- Date: Mon, 24 Jul 2017 12:47:23 +0000 (UTC)
commit 8c2b6951b666d24a4b1c0bad169cc725c01e7b9b
Author: Lubomir Rintel <lkundrak v3 sk>
Date: Thu Jan 12 16:27:24 2017 +0100
libtracker-miner: port to libnm
It's the perferred NetworkManager's library for a couple of years now
already. Keep compatibility with the older one, since it's reasonably
similar.
https://bugzilla.gnome.org/show_bug.cgi?id=777178
configure.ac | 6 ++--
meson.build | 2 +-
src/libtracker-miner/tracker-miner-online.c | 36 +++++++++------------------
3 files changed, 16 insertions(+), 28 deletions(-)
---
diff --git a/configure.ac b/configure.ac
index 4ccacc3..093dd7a 100644
--- a/configure.ac
+++ b/configure.ac
@@ -231,7 +231,6 @@ EDS_REQUIRED=2.32.0
CAMEL_REQUIRED=2.32.0
TAGLIB_REQUIRED=1.6
LIBGRSS_REQUIRED=0.7
-NETWORK_MANAGER_REQUIRED=0.8
GSTREAMER_REQUIRED=0.10.31
GUPNP_DLNA_REQUIRED=0.9.4
LIBPNG_REQUIRED=1.2
@@ -946,8 +945,9 @@ AC_ARG_ENABLE(network_manager,
[enable_network_manager=auto])
if test "x$enable_network_manager" != "xno"; then
+
PKG_CHECK_MODULES(NETWORK_MANAGER,
- [libnm-glib >= $NETWORK_MANAGER_REQUIRED],
+ [libnm],
[have_network_manager=yes],
[have_network_manager=no])
@@ -961,7 +961,7 @@ fi
if test "x$enable_network_manager" = "xyes"; then
if test "x$have_network_manager" != "xyes"; then
- AC_MSG_ERROR([Could not find libnm-glib >= $NETWORK_MANAGER_REQUIRED.])
+ AC_MSG_ERROR([Could not find libnm.])
fi
fi
diff --git a/meson.build b/meson.build
index c306bf0..ed930cf 100644
--- a/meson.build
+++ b/meson.build
@@ -53,7 +53,7 @@ libsoup = dependency('libsoup-2.4', version: '> 2.40', required: true)
libtiff = dependency('libtiff-4', required: false)
libxml2 = dependency('libxml-2.0', version: '> 2.6')
libvorbis = dependency('vorbisfile', version: '> 0.22')
-network_manager = dependency('libnm-glib', version: '> 0.8', required: false)
+network_manager = dependency('libnm')
poppler = dependency('poppler-glib', version: '> 0.16.0', required: false)
sqlite = dependency('sqlite3', version: '>' + sqlite_required)
taglib = dependency('taglib_c', version: '> 1.6', required: false)
diff --git a/src/libtracker-miner/tracker-miner-online.c b/src/libtracker-miner/tracker-miner-online.c
index b1f1a6e..9717f3a 100644
--- a/src/libtracker-miner/tracker-miner-online.c
+++ b/src/libtracker-miner/tracker-miner-online.c
@@ -26,21 +26,7 @@
#include <glib/gi18n.h>
#ifdef HAVE_NETWORK_MANAGER
-#include <libnm-glib/nm-client.h>
-
-#ifndef NM_CHECK_VERSION
-#define NM_CHECK_VERSION(x,y,z) (0)
-#endif /* NM_CHECK_VERSION */
-
-#include <libnm-glib/nm-device-ethernet.h>
-#include <libnm-glib/nm-device-wifi.h>
-#if (NM_CHECK_VERSION (0,8,992))
-#include <libnm-glib/nm-device-modem.h>
-#include <libnm-glib/nm-device-wimax.h>
-#else
-#include <libnm-glib/nm-gsm-device.h>
-#include <libnm-glib/nm-cdma-device.h>
-#endif
+#include <NetworkManager.h>
#endif /* HAVE_NETWORK_MANAGER */
/**
@@ -241,19 +227,17 @@ _nm_client_get_network_type (NMClient *nm_client)
NMActiveConnection *default_active_connection;
const GPtrArray *devices;
NMDevice *device;
+ NMState state;
- if (!nm_client_get_manager_running (nm_client)) {
+ if (!nm_client_get_nm_running (nm_client)) {
return TRACKER_NETWORK_TYPE_UNKNOWN;
}
- switch (nm_client_get_state (nm_client)) {
- case NM_STATE_UNKNOWN:
+ state = nm_client_get_state (nm_client);
+ if (state == NM_STATE_UNKNOWN)
+ return TRACKER_NETWORK_TYPE_UNKNOWN;
+ if (state <= NM_STATE_DISCONNECTING)
return TRACKER_NETWORK_TYPE_UNKNOWN;
- case NM_STATE_CONNECTED:
- break;
- default:
- return TRACKER_NETWORK_TYPE_NONE;
- }
default_active_connection = find_default_active_connection (nm_client);
@@ -379,7 +363,11 @@ miner_online_initable_init (GInitable *initable,
}
#ifdef HAVE_NETWORK_MANAGER
- priv->client = nm_client_new ();
+ priv->client = nm_client_new (NULL, error);
+ if (!priv->client) {
+ g_prefix_error (error, "Couldn't create NetworkManager client: ");
+ return FALSE;
+ }
g_signal_connect (priv->client, "notify::state",
G_CALLBACK (_nm_client_state_notify_cb), miner);
network_type = _nm_client_get_network_type (priv->client);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]