treewide: Cleanup signal emission
Don't emit properties changed prior to interfaces added.
Change-Id: I7f88b8052a323ca49ce9f16fe446596213e3fdb5
Signed-off-by: William A. Kennington III <wak@google.com>
diff --git a/src/ethernet_interface.cpp b/src/ethernet_interface.cpp
index e3e7662..b57a24f 100644
--- a/src/ethernet_interface.cpp
+++ b/src/ethernet_interface.cpp
@@ -88,17 +88,27 @@
manager(manager), bus(bus), objPath(std::move(objPath)),
ifIdx(info.intf.idx)
{
- interfaceName(*info.intf.name);
+ interfaceName(*info.intf.name, true);
auto dhcpVal = getDHCPValue(config);
- EthernetInterfaceIntf::dhcp4(dhcpVal.v4);
- EthernetInterfaceIntf::dhcp6(dhcpVal.v6);
- EthernetInterfaceIntf::ipv6AcceptRA(getIPv6AcceptRA(config));
- EthernetInterfaceIntf::nicEnabled(enabled);
+ EthernetInterfaceIntf::dhcp4(dhcpVal.v4, true);
+ EthernetInterfaceIntf::dhcp6(dhcpVal.v6, true);
+ EthernetInterfaceIntf::ipv6AcceptRA(getIPv6AcceptRA(config), true);
+ EthernetInterfaceIntf::nicEnabled(enabled, true);
EthernetInterfaceIntf::ntpServers(
- config.map.getValueStrings("Network", "NTP"));
+ config.map.getValueStrings("Network", "NTP"), true);
- updateInfo(info.intf);
+ updateInfo(info.intf, true);
+
+ if (info.defgw4)
+ {
+ EthernetInterface::defaultGateway(std::to_string(*info.defgw4), true);
+ }
+ if (info.defgw6)
+ {
+ EthernetInterface::defaultGateway6(std::to_string(*info.defgw6), true);
+ }
+ emit_object_added();
if (info.intf.vlan_id)
{
@@ -108,14 +118,6 @@
}
vlan.emplace(bus, this->objPath.c_str(), info.intf, *this);
}
- if (info.defgw4)
- {
- EthernetInterface::defaultGateway(std::to_string(*info.defgw4));
- }
- if (info.defgw6)
- {
- EthernetInterface::defaultGateway6(std::to_string(*info.defgw6));
- }
for (const auto& [_, addr] : info.addrs)
{
addAddr(addr);
@@ -124,28 +126,26 @@
{
addStaticNeigh(neigh);
}
-
- this->emit_object_added();
}
-void EthernetInterface::updateInfo(const InterfaceInfo& info)
+void EthernetInterface::updateInfo(const InterfaceInfo& info, bool skipSignal)
{
- EthernetInterfaceIntf::linkUp(info.flags & IFF_RUNNING);
+ EthernetInterfaceIntf::linkUp(info.flags & IFF_RUNNING, skipSignal);
if (info.mac)
{
- MacAddressIntf::macAddress(std::to_string(*info.mac));
+ MacAddressIntf::macAddress(std::to_string(*info.mac), skipSignal);
}
if (info.mtu)
{
- EthernetInterfaceIntf::mtu(*info.mtu);
+ EthernetInterfaceIntf::mtu(*info.mtu, skipSignal);
}
if (ifIdx > 0)
{
auto ethInfo = ignoreError("GetEthInfo", *info.name, {}, [&] {
return system::getEthInfo(*info.name);
});
- EthernetInterfaceIntf::autoNeg(ethInfo.autoneg);
- EthernetInterfaceIntf::speed(ethInfo.speed);
+ EthernetInterfaceIntf::autoNeg(ethInfo.autoneg, skipSignal);
+ EthernetInterfaceIntf::speed(ethInfo.speed, skipSignal);
}
}
@@ -874,8 +874,8 @@
VlanIfaces(bus, objPath.c_str(), VlanIfaces::action::defer_emit),
parentIdx(*info.parent_idx), eth(eth)
{
- VlanIntf::id(*info.vlan_id);
- this->emit_object_added();
+ VlanIntf::id(*info.vlan_id, true);
+ emit_object_added();
}
void EthernetInterface::VlanProperties::delete_()