Update a logic to check an availability of cloud server resource
authorJihun Ha <jihun.ha@samsung.com>
Mon, 17 Oct 2016 05:31:09 +0000 (14:31 +0900)
committerMadan Lanka <lanka.madan@samsung.com>
Mon, 17 Oct 2016 08:25:23 +0000 (08:25 +0000)
Rather than URI, resource type of the cloud server resource is more
confirmable to check the availability.

Change-Id: I61f3b63412b39fc56e993a3041ac007d0886368b
Signed-off-by: Jihun Ha <jihun.ha@samsung.com>
Reviewed-on: https://gerrit.iotivity.org/gerrit/13331
Tested-by: jenkins-iotivity <jenkins-iotivity@opendaylight.org>
Reviewed-by: Heewon Park <h_w.park@samsung.com>
Reviewed-by: Madan Lanka <lanka.madan@samsung.com>
service/easy-setup/enrollee/src/resourcehandler.c
service/easy-setup/mediator/richsdk/inc/ESRichCommon.h

index be8232b..c2ffa4a 100755 (executable)
@@ -502,6 +502,12 @@ OCRepPayload* constructResponseOfWiFi()
         return NULL;
     }
 
+    if(gWiFiResource.handle == NULL)
+    {
+        OIC_LOG(ERROR, ES_RH_TAG, "WiFi resource is not created");
+        return NULL;
+    }
+
     OIC_LOG(INFO, ES_RH_TAG, "constructResponse wifi res");
     OCRepPayloadSetUri(payload, OC_RSRVD_ES_URI_WIFI);
     OCRepPayloadAddInterface(payload, OC_RSRVD_INTERFACE_DEFAULT);
@@ -538,6 +544,12 @@ OCRepPayload* constructResponseOfCloud()
         return NULL;
     }
 
+    if(gCloudResource.handle == NULL)
+    {
+        OIC_LOG(ERROR, ES_RH_TAG, "CloudServer resource is not created");
+        return NULL;
+    }
+
     OIC_LOG(INFO, ES_RH_TAG, "constructResponse cloudserver res");
     OCRepPayloadSetUri(payload, OC_RSRVD_ES_URI_CLOUDSERVER);
     OCRepPayloadAddInterface(payload, OC_RSRVD_INTERFACE_DEFAULT);
@@ -564,6 +576,12 @@ OCRepPayload* constructResponseOfDevConf()
         return NULL;
     }
 
+    if(gDevConfResource.handle == NULL)
+    {
+        OIC_LOG(ERROR, ES_RH_TAG, "DevConf resource is not created");
+        return NULL;
+    }
+
     OIC_LOG(INFO, ES_RH_TAG, "constructResponse devconf res");
     OCRepPayloadSetUri(payload, OC_RSRVD_ES_URI_DEVCONF);
     OCRepPayloadAddInterface(payload, OC_RSRVD_INTERFACE_DEFAULT);
index 0eb7f36..9bafeae 100755 (executable)
@@ -616,9 +616,12 @@ namespace OIC
                 std::vector<OCRepresentation> children = m_ProvRep.getChildren();
                 for(auto child = children.begin(); child != children.end(); ++child)
                 {
-                    if(child->getUri().find(OC_RSRVD_ES_URI_CLOUDSERVER) != std::string::npos)
+                    for(auto rt : child->getResourceTypes())
                     {
-                        return true;
+                        if(0 == rt.compare(OC_RSRVD_ES_RES_TYPE_CLOUDSERVER))
+                        {
+                            return true;
+                        }
                     }
                 }
                 return false;