replace : iotivity -> iotivity-sec
[platform/upstream/iotivity.git] / service / resource-container / src / RemoteResourceUnit.cpp
index 80d1523..6c7aeb3 100644 (file)
@@ -19,6 +19,9 @@
 //-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
 
 #include "RemoteResourceUnit.h"
+#include "InternalTypes.h"
+
+#include <exception>
 
 using namespace OIC::Service;
 
@@ -27,7 +30,7 @@ RemoteResourceUnit::RemoteResourceUnit()
     pStateChangedCB = std::bind(&RemoteResourceUnit::stateChangedCB, this,
                         std::placeholders::_1);
     pCacheUpdateCB = std::bind(&RemoteResourceUnit::cacheUpdateCB, this,
-                    std::placeholders::_1);
+                    std::placeholders::_1, std::placeholders::_2);
 }
 
 RemoteResourceUnit::~RemoteResourceUnit()
@@ -36,11 +39,25 @@ RemoteResourceUnit::~RemoteResourceUnit()
     {
         if(remoteObject->isCaching())
         {
-            remoteObject->stopCaching();
+            try
+            {
+                remoteObject->stopCaching();
+            }
+            catch(std::exception &e)
+            {
+                OIC_LOG_V(ERROR, CONTAINER_TAG, "%s", e.what());
+            }
         }
         if(remoteObject->isMonitoring())
         {
-            remoteObject->stopMonitoring();
+            try
+            {
+                remoteObject->stopMonitoring();
+            }
+            catch(std::exception &e)
+            {
+                OIC_LOG_V(ERROR, CONTAINER_TAG, "%s", e.what());
+            }
         }
     }
 }
@@ -55,19 +72,6 @@ RemoteResourceUnit::Ptr RemoteResourceUnit::createRemoteResourceInfo(
     return retRemoteResourceUnit;
 }
 
-RemoteResourceUnit::Ptr RemoteResourceUnit::createRemoteResourceInfoWithStateCB(
-    RCSRemoteResourceObject::Ptr ptr, UpdatedCBFromServer updatedCB,
-    RCSRemoteResourceObject::StateChangedCallback stateCB)
-{
-    RemoteResourceUnit::Ptr retRemoteResourceUnit = std::make_shared<RemoteResourceUnit>();
-    retRemoteResourceUnit->remoteObject = ptr;
-    retRemoteResourceUnit->pUpdatedCB = updatedCB;
-
-    retRemoteResourceUnit->pStateChangedCB = stateCB;
-
-    return retRemoteResourceUnit;
-}
-
 RemoteResourceUnit::Ptr RemoteResourceUnit::createRemoteResourceInfoWithCacheCB(
     RCSRemoteResourceObject::Ptr ptr, UpdatedCBFromServer updatedCB,
     RCSRemoteResourceObject::CacheUpdatedCallback cacheCB)
@@ -111,7 +115,7 @@ void RemoteResourceUnit::stateChangedCB(ResourceState changedState) const
     }
 }
 
-void RemoteResourceUnit::cacheUpdateCB(const RCSResourceAttributes & updatedAtt) const
+void RemoteResourceUnit::cacheUpdateCB(const RCSResourceAttributes & updatedAtt, int) const
 {
     std::lock_guard<std::mutex> lock(m_mutex);
     (void)updatedAtt;