Add support for individual property update
SNMP Manager D-Bus object doesn't have support
for individual D-Bus property update.
This commit adds the support for the same.
Resolves openbmc/phosphor-snmp#2
Change-Id: Ic72366b6b18190e66e23d400a5f2c95037947809
Signed-off-by: Ratan Gupta <ratagupt@linux.vnet.ibm.com>
diff --git a/snmp_client.cpp b/snmp_client.cpp
index 2d2e1d5..52eb744 100644
--- a/snmp_client.cpp
+++ b/snmp_client.cpp
@@ -1,5 +1,6 @@
#include "snmp_client.hpp"
#include "snmp_conf_manager.hpp"
+#include "snmp_serialize.hpp"
namespace phosphor
{
@@ -21,6 +22,34 @@
emit_object_added();
}
+std::string Client::address(std::string value)
+{
+ if (value == Ifaces::address())
+ {
+ return value;
+ }
+
+ parent.checkClientConfigured(value, port());
+
+ auto addr = Ifaces::address(value);
+ serialize(id, *this, parent.dbusPersistentLocation);
+ return addr;
+}
+
+uint16_t Client::port(uint16_t value)
+{
+ if (value == Ifaces::port())
+ {
+ return value;
+ }
+
+ parent.checkClientConfigured(address(), value);
+
+ auto port = Ifaces::port(value);
+ serialize(id, *this, parent.dbusPersistentLocation);
+ return port;
+}
+
void Client::delete_()
{
parent.deleteSNMPClient(id);