Discussion:
[linux-lvm] How to get a list of all logical groups or volumes using dbus API
Michael Lipp
2018-06-21 07:26:33 UTC
Permalink
Hi,

I searched, but I cannot find the "root hook". Using the Manager
interface, I can lookup a LV if I have some id (LookUpByLvmId). But how
can I achieve the same results as vgs/lvs using the dbus API? I *could*
get the list of paths and pattern match them, but IMHO this would be a hack.

 - Michael
Marian Csontos
2018-06-21 09:51:41 UTC
Permalink
Post by Michael Lipp
Hi,
I searched, but I cannot find the "root hook". Using the Manager
interface, I can lookup a LV if I have some id (LookUpByLvmId). But how
can I achieve the same results as vgs/lvs using the dbus API? I *could*
get the list of paths and pattern match them, but IMHO this would be a hack.
I think `object_manager.GetManagedObjects()` is one of supported ways
(used by the test suite).

Not sure there is simpler way.
Post by Michael Lipp
 - Michael
_______________________________________________
linux-lvm mailing list
https://www.redhat.com/mailman/listinfo/linux-lvm
read the LVM HOW-TO at http://tldp.org/HOWTO/LVM-HOWTO/
Michael Lipp
2018-06-21 15:03:36 UTC
Permalink
Post by Marian Csontos
I think `object_manager.GetManagedObjects()` is one of supported ways
(used by the test suite).
Thanks! I didn't try this one. It's still a bit of a hack, though.
According to https://dbus.freedesktop.org/doc/dbus-api-design.html:

"The specification also defines the org.freedesktop.DBus.ObjectManager
<http://dbus.freedesktop.org/doc/dbus-specification.html#standard-interfaces-objectmanager>
interface, which should be used whenever a service needs to expose a
variable number of objects of the same class..."

The objects I get are not of the same class (Manager, LV, PV). I still
have to "pattern match", only on a higher level ("instance/type match").

But it's a way to go.

Loading...