about summary refs log tree commit diff
path: root/examples/python/gi/get-devices.py
diff options
context:
space:
mode:
authorMichael Biebl <biebl@debian.org>2022-10-04 00:56:46 +0200
committerMichael Biebl <biebl@debian.org>2022-10-04 00:56:46 +0200
commit3612e6355f3f40d264ec4657547761069baa5430 (patch)
tree768e4f5b37b66f540dd7030aa2eaff2ac7bb0168 /examples/python/gi/get-devices.py
parent7e9f00a3be8f65535e6620b344443ec4d403212b (diff)
parent6f7fcde10e47d8af865af336becf1fd8a446e62e (diff)
Merge tag 'debian/1.40.0-1' into debian/bullseye-backports
network-manager Debian release 1.40.0-1
Diffstat (limited to 'examples/python/gi/get-devices.py')
-rwxr-xr-xexamples/python/gi/get-devices.py42
1 files changed, 42 insertions, 0 deletions
diff --git a/examples/python/gi/get-devices.py b/examples/python/gi/get-devices.py
new file mode 100755
index 00000000..43fd9343
--- /dev/null
+++ b/examples/python/gi/get-devices.py
@@ -0,0 +1,42 @@
+#!/usr/bin/env python
+# SPDX-License-Identifier: GPL-2.0-or-later
+#
+# Copyright (C) 2014 Red Hat, Inc.
+#
+
+# This example lists all devices, both real and placeholder ones
+
+import gi
+
+gi.require_version("NM", "1.0")
+from gi.repository import NM
+
+if __name__ == "__main__":
+    client = NM.Client.new(None)
+    devices = client.get_all_devices()
+
+    print("Real devices")
+    print("------------")
+    for d in devices:
+        if d.is_real():
+            print(
+                "%s (%s): %s"
+                % (
+                    d.get_iface(),
+                    d.get_type_description(),
+                    d.get_state(),
+                )
+            )
+
+    print("\nUnrealized/placeholder devices")
+    print("------------------------------")
+    for d in devices:
+        if not d.is_real():
+            print(
+                "%s (%s): %s"
+                % (
+                    d.get_iface(),
+                    d.get_type_description(),
+                    d.get_state(),
+                )
+            )