don't emit unnecessary signals
Fix a number of places where DBus signals are emitted when they should
not be:
-Prior to claiming a well known DBus service name
-When using the map-of-properties sdbusplus interface constructor
On a system with ~175 inventory interfaces this eliminates 650
PropertiesChanged and ObjectManager signals on PIM startup.
Change-Id: I7b8fa6af69ca3553f5b2ea49e488a75a592a4d0b
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
diff --git a/gen_serialization.mako.hpp b/gen_serialization.mako.hpp
index f441670..bae2d33 100644
--- a/gen_serialization.mako.hpp
+++ b/gen_serialization.mako.hpp
@@ -16,6 +16,10 @@
CEREAL_CLASS_VERSION(${iface.namespace()}, CLASS_VERSION);
% endfor
+// Emitting signals prior to claiming a well known DBus service name causes
+// un-necessary DBus traffic and wakeups. De-serialization only happens prior
+// to claiming a well known name, so don't emit signals.
+static constexpr auto skipSignals = true;
namespace cereal
{
@@ -48,7 +52,7 @@
%>\
a(${props});
% for p in properties:
-<% t = "object." + p.camelCase + "(" + p.CamelCase + ")" %>\
+<% t = "object." + p.camelCase + "(" + p.CamelCase + ", skipSignals)" %>\
${t};
% endfor
}