[libvirt] [dbus PATCH 3/4] Annotate properties for which we will not emit changed signal

Pavel Hrdina posted 4 patches 7 years ago
[libvirt] [dbus PATCH 3/4] Annotate properties for which we will not emit changed signal
Posted by Pavel Hrdina 7 years ago
For some of these properties there is no libvirt event to detect the
change and for properties where we could somehow detect the change
let's annotate them as well.

We could change the properties to methods but with the annotation we
can keep them as properties in order to allow to get them by single
D-Bus call.

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
---
 data/org.libvirt.Connect.xml | 3 +++
 data/org.libvirt.Domain.xml  | 9 +++++++++
 data/org.libvirt.Network.xml | 3 +++
 3 files changed, 15 insertions(+)

diff --git a/data/org.libvirt.Connect.xml b/data/org.libvirt.Connect.xml
index ee7bfdc..3bddb89 100644
--- a/data/org.libvirt.Connect.xml
+++ b/data/org.libvirt.Connect.xml
@@ -11,10 +11,12 @@
     <property name="Hostname" type="s" access="read">
       <annotation name="org.gtk.GDBus.DocString"
         value="See https://libvirt.org/html/libvirt-libvirt-host.html#virConnectGetHostname"/>
+      <annotation name="org.freedesktop.DBus.Property.EmitsChangedSignal" value="false"/>
     </property>
     <property name="LibVersion" type="t" access="read">
       <annotation name="org.gtk.GDBus.DocString"
         value="See https://libvirt.org/html/libvirt-libvirt-host.html#virConnectGetLibVersion"/>
+      <annotation name="org.freedesktop.DBus.Property.EmitsChangedSignal" value="false"/>
     </property>
     <property name="Secure" type="b" access="read">
       <annotation name="org.gtk.GDBus.DocString"
@@ -24,6 +26,7 @@
     <property name="Version" type="t" access="read">
       <annotation name="org.gtk.GDBus.DocString"
         value="See https://libvirt.org/html/libvirt-libvirt-host.html#virConnectGetVersion"/>
+      <annotation name="org.freedesktop.DBus.Property.EmitsChangedSignal" value="false"/>
     </property>
     <method name="BaselineCPU">
       <annotation name="org.gtk.GDBus.DocString"
diff --git a/data/org.libvirt.Domain.xml b/data/org.libvirt.Domain.xml
index db43b1c..fcd3221 100644
--- a/data/org.libvirt.Domain.xml
+++ b/data/org.libvirt.Domain.xml
@@ -6,39 +6,48 @@
     <property name="Active" type="b" access="read">
       <annotation name="org.gtk.GDBus.DocString"
         value="See https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainIsActive"/>
+      <annotation name="org.freedesktop.DBus.Property.EmitsChangedSignal" value="false"/>
     </property>
     <property name="Autostart" type="b" access="readwrite">
       <annotation name="org.gtk.GDBus.DocString"
         value="See https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainGetAutostart and
                https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainSetAutostart"/>
+      <annotation name="org.freedesktop.DBus.Property.EmitsChangedSignal" value="false"/>
     </property>
     <property name="Id" type="u" access="read">
       <annotation name="org.gtk.GDBus.DocString"
         value="See https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainGetID"/>
+      <annotation name="org.freedesktop.DBus.Property.EmitsChangedSignal" value="false"/>
     </property>
     <property name="Name" type="s" access="read">
       <annotation name="org.gtk.GDBus.DocString"
         value="See https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainGetName"/>
+      <annotation name="org.freedesktop.DBus.Property.EmitsChangedSignal" value="false"/>
     </property>
     <property name="OSType" type="s" access="read">
       <annotation name="org.gtk.GDBus.DocString"
         value="See https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainGetOSType"/>
+      <annotation name="org.freedesktop.DBus.Property.EmitsChangedSignal" value="false"/>
     </property>
     <property name="Persistent" type="b" access="read">
       <annotation name="org.gtk.GDBus.DocString"
         value="See https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainIsPersistent"/>
+      <annotation name="org.freedesktop.DBus.Property.EmitsChangedSignal" value="false"/>
     </property>
     <property name="SchedulerType" type="(si)" access="read">
       <annotation name="org.gtk.GDBus.DocString"
         value="See https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainGetSchedulerType"/>
+      <annotation name="org.freedesktop.DBus.Property.EmitsChangedSignal" value="false"/>
     </property>
     <property name="State" type="s" access="read">
       <annotation name="org.gtk.GDBus.DocString"
         value="See https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainGetState"/>
+      <annotation name="org.freedesktop.DBus.Property.EmitsChangedSignal" value="false"/>
     </property>
     <property name="Updated" type="b" access="read">
       <annotation name="org.gtk.GDBus.DocString"
         value="See https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainIsUpdated"/>
+      <annotation name="org.freedesktop.DBus.Property.EmitsChangedSignal" value="false"/>
     </property>
     <property name="UUID" type="s" access="read">
       <annotation name="org.gtk.GDBus.DocString"
diff --git a/data/org.libvirt.Network.xml b/data/org.libvirt.Network.xml
index 81bf081..e31417c 100644
--- a/data/org.libvirt.Network.xml
+++ b/data/org.libvirt.Network.xml
@@ -6,11 +6,13 @@
     <property name="Active" type="b" access="read">
       <annotation name="org.gtk.GDBus.DocString"
         value="See https://libvirt.org/html/libvirt-libvirt-network.html#virNetworkIsActive"/>
+      <annotation name="org.freedesktop.DBus.Property.EmitsChangedSignal" value="false"/>
     </property>
     <property name="Autostart" type="b" access="readwrite">
       <annotation name="org.gtk.GDBus.DocString"
         value="See https://libvirt.org/html/libvirt-libvirt-network.html#virNetworkGetAutostart and
                https://libvirt.org/html/libvirt-libvirt-network.html#virNetworkSetAutostart"/>
+      <annotation name="org.freedesktop.DBus.Property.EmitsChangedSignal" value="false"/>
     </property>
     <property name="Name" type="s" access="read">
       <annotation name="org.gtk.GDBus.DocString"
@@ -19,6 +21,7 @@
     <property name="Persistent" type="b" access="read">
       <annotation name="org.gtk.GDBus.DocString"
         value="See https://libvirt.org/html/libvirt-libvirt-network.html#virNetworkIsPersistent"/>
+      <annotation name="org.freedesktop.DBus.Property.EmitsChangedSignal" value="false"/>
     </property>
     <property name="UUID" type="s" access="read">
       <annotation name="org.gtk.GDBus.DocString"
-- 
2.14.3

--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] [dbus PATCH 3/4] Annotate properties for which we will not emit changed signal
Posted by Katerina Koukiou 7 years ago
On Thu, 2018-05-03 at 14:46 +0200, Pavel Hrdina wrote:
> For some of these properties there is no libvirt event to detect the
> change and for properties where we could somehow detect the change
> let's annotate them as well.
> 
> We could change the properties to methods but with the annotation we
> can keep them as properties in order to allow to get them by single
> D-Bus call.
> 
> Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
> ---
>  data/org.libvirt.Connect.xml | 3 +++
>  data/org.libvirt.Domain.xml  | 9 +++++++++
>  data/org.libvirt.Network.xml | 3 +++
>  3 files changed, 15 insertions(+)
> 

Maybe it would be nicer to set `false` as the default annotation for
EmitsChangedSignal in the enclosing interface element and explicitly
mark the rest. But I am ok with this as well.

Reviewed-by: Katerina Koukiou <kkoukiou@redhat.com>

--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] [dbus PATCH 3/4] Annotate properties for which we will not emit changed signal
Posted by Pavel Hrdina 7 years ago
On Thu, May 03, 2018 at 03:21:01PM +0200, Katerina Koukiou wrote:
> On Thu, 2018-05-03 at 14:46 +0200, Pavel Hrdina wrote:
> > For some of these properties there is no libvirt event to detect the
> > change and for properties where we could somehow detect the change
> > let's annotate them as well.
> > 
> > We could change the properties to methods but with the annotation we
> > can keep them as properties in order to allow to get them by single
> > D-Bus call.
> > 
> > Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
> > ---
> >  data/org.libvirt.Connect.xml | 3 +++
> >  data/org.libvirt.Domain.xml  | 9 +++++++++
> >  data/org.libvirt.Network.xml | 3 +++
> >  3 files changed, 15 insertions(+)
> > 
> 
> Maybe it would be nicer to set `false` as the default annotation for
> EmitsChangedSignal in the enclosing interface element and explicitly
> mark the rest. But I am ok with this as well.

Good point, I missed that in D-Bus specification that the annotation can
be for the whole interface.  I'll sent v2.

Thanks,
Pavel
--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list