diff options
author | Tony Asleson <tasleson@redhat.com> | 2022-06-06 09:51:54 -0500 |
---|---|---|
committer | Tony Asleson <tasleson@redhat.com> | 2022-06-30 10:55:16 -0500 |
commit | eee89a941eb4e63865356cfe9e513c24cfa8e0f9 (patch) | |
tree | 5599fb9f3024d02df3a07fdac03f4f6cf30b64d7 | |
parent | 7a2090655d3ab5abde83b981594ed527e2a7f1f7 (diff) | |
download | lvm2-eee89a941eb4e63865356cfe9e513c24cfa8e0f9.tar.gz |
lvmdbusd: Job prop. Get/GetAll exec. immediately
This allows API user the ability to check on the status of a long running
job without blocking in the request queue.
-rw-r--r-- | daemons/lvmdbusd/job.py | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/daemons/lvmdbusd/job.py b/daemons/lvmdbusd/job.py index 988b1147a..7629cafc7 100644 --- a/daemons/lvmdbusd/job.py +++ b/daemons/lvmdbusd/job.py @@ -226,3 +226,21 @@ class Job(AutomatedProperties): def Uuid(self): import uuid return uuid.uuid1() + + # Override the property "getters" implementation for the job interface, so a user can query a job while the queue + # is processing items. Originally all the property get methods were this way, but we changed this in + # e53454d6de07de56736303dd2157c3859f6fa848 + + # Properties + # noinspection PyUnusedLocal + @dbus.service.method(dbus_interface=dbus.PROPERTIES_IFACE, + in_signature='ss', out_signature='v') + def Get(self, interface_name, property_name): + # Note: If we get an exception in this handler we won't know about it, + # only the side effect of no returned value! + return AutomatedProperties._get_prop(self, interface_name, property_name) + + @dbus.service.method(dbus_interface=dbus.PROPERTIES_IFACE, + in_signature='s', out_signature='a{sv}') + def GetAll(self, interface_name): + return AutomatedProperties._get_all_prop(self, interface_name) |