Fixed a bug regarding the batch interface in RCSResourceObject.
authorcoderhyme <jhyo.kim@samsung.com>
Mon, 15 Feb 2016 05:00:51 +0000 (21:00 -0800)
committerUze Choi <uzchoi@samsung.com>
Tue, 16 Feb 2016 09:36:42 +0000 (09:36 +0000)
There was a problem that RCSResourceObject didn't handle the batch interface.
The response format also was wrong.

Change-Id: I9e55779ceec70fcb7d7140f5b21e03107e65e56b
Signed-off-by: coderhyme <jhyo.kim@samsung.com>
Reviewed-on: https://gerrit.iotivity.org/gerrit/4997
Tested-by: jenkins-iotivity <jenkins-iotivity@opendaylight.org>
Reviewed-by: Madan Lanka <lanka.madan@samsung.com>
Reviewed-by: Uze Choi <uzchoi@samsung.com>
service/resource-encapsulation/src/serverBuilder/src/RCSResourceObject.cpp

index feb2068..b93780b 100644 (file)
@@ -59,7 +59,11 @@ namespace
     inline bool requestContainsInterface(const std::shared_ptr< OC::OCResourceRequest >& request,
             const std::string& interface)
     {
-        return request->getQueryParameters().find(interface) != request->getQueryParameters().end();
+        auto it = request->getQueryParameters().find(OC::Key::INTERFACESKEY);
+
+        if (it == request->getQueryParameters().end()) return false;
+
+        return it->second == interface;
     }
 
     OCEntityHandlerResult sendResponse(const std::shared_ptr< OC::OCResourceRequest >& ocRequest,
@@ -140,7 +144,7 @@ namespace
             const std::shared_ptr< OC::OCResourceRequest >& request,
             const RCSResourceObject* resourceObject)
     {
-        auto rcsRep = resourceObject->toRepresentation();
+        RCSRepresentation rcsRep;
 
         for (const auto& bound : resourceObject->getBoundResources())
         {