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);