[Iotcon] get and set Timeout implementation
authorLukasz Bardeli <l.bardeli@samsung.com>
Fri, 5 Feb 2016 07:31:28 +0000 (08:31 +0100)
committerPawel Andruszkiewicz <p.andruszkie@samsung.com>
Fri, 5 Feb 2016 07:49:25 +0000 (16:49 +0900)
Change-Id: I11d76ecc958da4a5d1f948ad2af4fce6a7fb21b4
Signed-off-by: Lukasz Bardeli <l.bardeli@samsung.com>
src/iotcon/iotcon_instance.cc

index 49f2f03a3154a3ef76101eb138e5144a6de185c5..698d221720580ce07159a58ecca2f57fb75b8b1b 100644 (file)
@@ -376,11 +376,36 @@ void IotconInstance::IotconServerUpdateResource(const picojson::value& args,
 void IotconInstance::IotconGetTimeout(const picojson::value& args,
                                       picojson::object& out) {
   LoggerD("Enter");
+
+  picojson::value result = picojson::value(picojson::object());
+  picojson::object& result_obj = result.get<picojson::object>();
+
+  int timeout = 0;
+  int ret = iotcon_get_timeout(&timeout);
+
+  if (IOTCON_ERROR_NONE != ret) {
+    LogAndReportError(PlatformResult(ErrorCode::UNKNOWN_ERR, "Platform unknown error."), &out);
+    return;
+  }
+
+  result_obj.insert(std::make_pair("timeout", picojson::value(static_cast<double>(timeout))));
+  ReportSuccess(result, out);
 }
 
 void IotconInstance::IotconSetTimeout(const picojson::value& args,
                                       picojson::object& out) {
   LoggerD("Enter");
+  CHECK_EXIST(args, "timeout", out);
+
+  int timeout = static_cast<int>(args.get("timeout").get<double>());
+
+  int ret = iotcon_set_timeout(timeout);
+  if (IOTCON_ERROR_NONE != ret) {
+    LogAndReportError(PlatformResult(ErrorCode::UNKNOWN_ERR, "Platform unknown error."), &out);
+    return;
+  }
+
+  ReportSuccess(out);
 }
 
 }  // namespace iotcon