libnm: replace _properties_override_add_dbus_only() with _properties_override_add_virt()

We have too many _properties_override_add*() variants. They basically are all the
same. Drop _properties_override_add_dbus_only() and use _properties_override_add_virt()
instead.

Also, I am always confused by the term "synth". We shouldn't treat
non-GObject-based properties as somehow odd that need to be synthesized.
This commit is contained in:
Thomas Haller
2019-09-22 14:30:41 +02:00
parent d534b6d07a
commit 0129954203
6 changed files with 54 additions and 75 deletions

View File

@@ -5207,11 +5207,13 @@ _nm_sett_info_property_override_create_array_ip_config (void)
* description: Array of dictionaries for routing rules.
* ---end---
*/
_properties_override_add_dbus_only (properties_override,
_properties_override_add_virt (properties_override,
NM_SETTING_IP_CONFIG_ROUTING_RULES,
NM_G_VARIANT_TYPE ("aa{sv}"),
_routing_rules_dbus_only_synth,
_routing_rules_dbus_only_set);
NM_SETT_INFO_PROPERT_TYPE (
.dbus_type = NM_G_VARIANT_TYPE ("aa{sv}"),
.to_dbus_fcn = _routing_rules_dbus_only_synth,
.from_dbus_fcn = _routing_rules_dbus_only_set,
));
return properties_override;
}

View File

@@ -825,12 +825,12 @@ nm_setting_ip4_config_class_init (NMSettingIP4ConfigClass *klass)
ip4_addresses_get,
ip4_addresses_set,
NULL);
_properties_override_add_dbus_only (properties_override,
_properties_override_add_virt (properties_override,
"address-labels",
G_VARIANT_TYPE_STRING_ARRAY,
ip4_address_labels_get,
NULL);
NM_SETT_INFO_PROPERT_TYPE (
.dbus_type = G_VARIANT_TYPE_STRING_ARRAY,
.to_dbus_fcn = ip4_address_labels_get,
));
/* ---dbus---
* property: address-data
@@ -841,11 +841,13 @@ nm_setting_ip4_config_class_init (NMSettingIP4ConfigClass *klass)
* also exist on some addresses.
* ---end---
*/
_properties_override_add_dbus_only (properties_override,
_properties_override_add_virt (properties_override,
"address-data",
NM_G_VARIANT_TYPE ("aa{sv}"),
ip4_address_data_get,
ip4_address_data_set);
NM_SETT_INFO_PROPERT_TYPE (
.dbus_type = NM_G_VARIANT_TYPE ("aa{sv}"),
.to_dbus_fcn = ip4_address_data_get,
.from_dbus_fcn = ip4_address_data_set,
));
/* ---dbus---
* property: routes
@@ -885,11 +887,13 @@ nm_setting_ip4_config_class_init (NMSettingIP4ConfigClass *klass)
* also exist on some routes.
* ---end---
*/
_properties_override_add_dbus_only (properties_override,
_properties_override_add_virt (properties_override,
"route-data",
NM_G_VARIANT_TYPE ("aa{sv}"),
ip4_route_data_get,
ip4_route_data_set);
NM_SETT_INFO_PROPERT_TYPE (
.dbus_type = NM_G_VARIANT_TYPE ("aa{sv}"),
.to_dbus_fcn = ip4_route_data_get,
.from_dbus_fcn = ip4_route_data_set,
));
g_object_class_install_properties (object_class, _PROPERTY_ENUMS_LAST, obj_properties);

View File

@@ -918,11 +918,13 @@ nm_setting_ip6_config_class_init (NMSettingIP6ConfigClass *klass)
* also exist on some addresses.
* ---end---
*/
_properties_override_add_dbus_only (properties_override,
_properties_override_add_virt (properties_override,
"address-data",
NM_G_VARIANT_TYPE ("aa{sv}"),
ip6_address_data_get,
ip6_address_data_set);
NM_SETT_INFO_PROPERT_TYPE (
.dbus_type = NM_G_VARIANT_TYPE ("aa{sv}"),
.to_dbus_fcn = ip6_address_data_get,
.from_dbus_fcn = ip6_address_data_set,
));
/* ---dbus---
* property: routes
@@ -959,11 +961,13 @@ nm_setting_ip6_config_class_init (NMSettingIP6ConfigClass *klass)
* also exist on some routes.
* ---end---
*/
_properties_override_add_dbus_only (properties_override,
_properties_override_add_virt (properties_override,
"route-data",
NM_G_VARIANT_TYPE ("aa{sv}"),
ip6_route_data_get,
ip6_route_data_set);
NM_SETT_INFO_PROPERT_TYPE (
.dbus_type = NM_G_VARIANT_TYPE ("aa{sv}"),
.to_dbus_fcn = ip6_route_data_get,
.from_dbus_fcn = ip6_route_data_set,
));
g_object_class_install_properties (object_class, _PROPERTY_ENUMS_LAST, obj_properties);

View File

@@ -171,40 +171,6 @@ void _properties_override_add_struct (GArray *properties_override,
#define _properties_override_add_virt(properties_override, p_name, p_property_type) \
_properties_override_add ((properties_override), .name = (p_name), .property_type = (p_property_type))
/**
* _properties_override_add_dbus_only:
* @properties_override: an array collecting the overrides
* @p_property_name: the name of the property to override
* @p_dbus_type: the type of the property (in its D-Bus representation)
* @p_to_dbus_fcn: (allow-none): function to call to synthesize a value for the property
* @p_from_dbus_fcn: (allow-none): function to call to set the value of the property
*
* Registers a property named @p_property_name, which will be used in the D-Bus
* serialization of objects of this setting type, but which does not correspond to
* a #GObject property.
*
* When serializing a setting to D-Bus, @p_to_dbus_fcn will be called to synthesize
* a value for the property. (If it returns %NULL, no value will be added to the
* serialization. If @p_to_dbus_fcn is %NULL, the property will always be omitted
* in the serialization.)
*
* When deserializing a D-Bus representation into a setting, if @p_property_name
* is present, then @p_from_dbus_fcn will be called to set it. (If @p_from_dbus_fcn is %NULL
* then the property will be ignored when deserializing.)
*/
#define _properties_override_add_dbus_only(properties_override, \
p_property_name, \
p_dbus_type, \
p_to_dbus_fcn, \
p_from_dbus_fcn) \
_properties_override_add ((properties_override), \
.name = (p_property_name), \
.property_type = NM_SETT_INFO_PROPERT_TYPE ( \
.dbus_type = (p_dbus_type), \
.to_dbus_fcn = (p_to_dbus_fcn), \
.from_dbus_fcn = (p_from_dbus_fcn), \
))
/**
* _properties_override_add_override:
* @properties_override: an array collecting the overrides

View File

@@ -2571,11 +2571,13 @@ nm_setting_wireguard_class_init (NMSettingWireGuardClass *klass)
* description: Array of dictionaries for the WireGuard peers.
* ---end---
*/
_properties_override_add_dbus_only (properties_override,
_properties_override_add_virt (properties_override,
NM_SETTING_WIREGUARD_PEERS,
NM_G_VARIANT_TYPE ("aa{sv}"),
_peers_dbus_only_synth,
_peers_dbus_only_set);
NM_SETT_INFO_PROPERT_TYPE (
.dbus_type = NM_G_VARIANT_TYPE ("aa{sv}"),
.to_dbus_fcn = _peers_dbus_only_synth,
.from_dbus_fcn = _peers_dbus_only_set,
));
g_object_class_install_properties (object_class, _PROPERTY_ENUMS_LAST, obj_properties);

View File

@@ -1735,11 +1735,12 @@ nm_setting_wireless_class_init (NMSettingWirelessClass *klass)
* NetworkManager daemons.
* ---end---
*/
_properties_override_add_dbus_only (properties_override,
_properties_override_add_virt (properties_override,
"security",
G_VARIANT_TYPE_STRING,
nm_setting_wireless_get_security,
NULL);
NM_SETT_INFO_PROPERT_TYPE (
.dbus_type = G_VARIANT_TYPE_STRING,
.to_dbus_fcn = nm_setting_wireless_get_security,
));
/**
* NMSettingWireless:wake-on-wlan: