From f1019bad48cf4a6b9158b6f7b316a26d8aff1eae Mon Sep 17 00:00:00 2001 From: "doil.kwon" Date: Fri, 18 Sep 2015 13:51:15 +0900 Subject: [PATCH] Modify empty parameter handling in RCSDiscoveryManager and tranfer "RCSDiscoveryTask"'s location into "RCSDiscoveryMananger". - if input value(relativeUri) is empty, will be discovered after be changed into "OC_RSRVD_WELL_KNOWN_URI". - delete white space. - According to move "RCSDiscoveryTask" into "RCSDiscoveryManager", changed name from "RCSDiscoveryTask" to "DiscoverTask". Change-Id: I544d001e5b3a2f0fda75452f86430aceee2b46e5 Signed-off-by: doil.kwon Reviewed-on: https://gerrit.iotivity.org/gerrit/2663 Reviewed-by: Madan Lanka Tested-by: Madan Lanka --- .../include/RCSDiscoveryManager.h | 57 +++++++++++----------- .../include/RCSDiscoveryManagerImpl.h | 3 +- .../src/resourceClient/RCSDiscoveryManager.cpp | 17 ++++--- .../src/resourceClient/RCSDiscoveryManagerImpl.cpp | 4 +- .../unittests/DiscoveryManagerTest.cpp | 20 ++++---- 5 files changed, 50 insertions(+), 51 deletions(-) diff --git a/service/resource-encapsulation/include/RCSDiscoveryManager.h b/service/resource-encapsulation/include/RCSDiscoveryManager.h index c0cd3c4..36a633a 100755 --- a/service/resource-encapsulation/include/RCSDiscoveryManager.h +++ b/service/resource-encapsulation/include/RCSDiscoveryManager.h @@ -40,38 +40,37 @@ namespace OIC class RCSRemoteResourceObject; class RCSAddress; - class RCSDiscoveryTask + /** + * This class contains the resource discovery methods. + * + * @see RCSRemoteResourceObject + */ + class RCSDiscoveryManager { public: + class DiscoveryTask + { + public: - void cancel(); - bool isCanceled(); - ~RCSDiscoveryTask(); - - public: + void cancel(); + bool isCanceled(); + ~DiscoveryTask(); - RCSDiscoveryTask(const RCSDiscoveryTask&) = delete; - RCSDiscoveryTask(RCSDiscoveryTask&&) = delete; - RCSDiscoveryTask& operator = (const RCSDiscoveryTask&) const = delete; - RCSDiscoveryTask& operator = (RCSDiscoveryTask&&) const = delete; + public: - private: + DiscoveryTask(const DiscoveryTask&) = delete; + DiscoveryTask(DiscoveryTask&&) = delete; + DiscoveryTask& operator = (const DiscoveryTask&) const = delete; + DiscoveryTask& operator = (DiscoveryTask&&) const = delete; - explicit RCSDiscoveryTask(unsigned int id) : m_id{ id } {}; - private: + private: - unsigned int m_id; - friend class RCSDiscoveryManager; - friend class RCSDiscoveryManagerImpl; - }; + explicit DiscoveryTask(unsigned int id) : m_id{ id } {}; + private: - /** - * This class contains the resource discovery methods. - * - * @see RCSRemoteResourceObject - */ - class RCSDiscoveryManager - { + unsigned int m_id; + friend class RCSDiscoveryManagerImpl; + }; public: /** @@ -101,7 +100,7 @@ namespace OIC * @see RCSAddress * */ - std::unique_ptr discoverResource(const RCSAddress& address, + std::unique_ptr discoverResource(const RCSAddress& address, ResourceDiscoveredCallback cb); /** @@ -118,7 +117,7 @@ namespace OIC * @see RCSAddress * */ - std::unique_ptr discoverResource(const RCSAddress& address, + std::unique_ptr discoverResource(const RCSAddress& address, const std::string& relativeURI, ResourceDiscoveredCallback cb); /** @@ -135,7 +134,7 @@ namespace OIC * @see RCSAddress * */ - std::unique_ptr discoverResourceByType(const RCSAddress& address, + std::unique_ptr discoverResourceByType(const RCSAddress& address, const std::string& resourceType, ResourceDiscoveredCallback cb); /** @@ -153,7 +152,7 @@ namespace OIC * @see RCSAddress * */ - std::unique_ptr discoverResourceByType(const RCSAddress& address, + std::unique_ptr discoverResourceByType(const RCSAddress& address, const std::string& relativeURI, const std::string& resourceType, ResourceDiscoveredCallback cb); @@ -162,7 +161,7 @@ namespace OIC RCSDiscoveryManager() = default; ~RCSDiscoveryManager()= default;; - friend class RCSDiscoveryTask; + friend class DiscoveryTask; }; } } diff --git a/service/resource-encapsulation/include/RCSDiscoveryManagerImpl.h b/service/resource-encapsulation/include/RCSDiscoveryManagerImpl.h index 64cdd75..9f0fac4 100755 --- a/service/resource-encapsulation/include/RCSDiscoveryManagerImpl.h +++ b/service/resource-encapsulation/include/RCSDiscoveryManagerImpl.h @@ -50,7 +50,6 @@ namespace OIC class RCSDiscoveryManager; class PrimitiveResource; class RCSAddress; - class RCSDiscoveryTask; class DiscoverRequestInfo { public: @@ -93,7 +92,7 @@ namespace OIC public: - std::unique_ptr startDiscovery(const RCSAddress& address, + std::unique_ptr startDiscovery(const RCSAddress& address, const std::string& relativeURI,const std::string& resourceType, RCSDiscoveryManager::ResourceDiscoveredCallback cb); diff --git a/service/resource-encapsulation/src/resourceClient/RCSDiscoveryManager.cpp b/service/resource-encapsulation/src/resourceClient/RCSDiscoveryManager.cpp index 979aef6..8565573 100755 --- a/service/resource-encapsulation/src/resourceClient/RCSDiscoveryManager.cpp +++ b/service/resource-encapsulation/src/resourceClient/RCSDiscoveryManager.cpp @@ -30,33 +30,34 @@ namespace OIC { return &instance; } - std::unique_ptr RCSDiscoveryManager::discoverResource(const RCSAddress& address, + std::unique_ptr RCSDiscoveryManager::discoverResource(const RCSAddress& address, ResourceDiscoveredCallback cb) { return discoverResourceByType(address, OC_RSRVD_WELL_KNOWN_URI, "", std::move(cb)); } - std::unique_ptr RCSDiscoveryManager::discoverResource(const RCSAddress& address, + std::unique_ptr RCSDiscoveryManager::discoverResource(const RCSAddress& address, const std::string& relativeURI, ResourceDiscoveredCallback cb) { return discoverResourceByType(address, relativeURI, "", std::move(cb)); } - std::unique_ptr RCSDiscoveryManager::discoverResourceByType( + std::unique_ptr RCSDiscoveryManager::discoverResourceByType( const RCSAddress& address, const std::string& resourceType, ResourceDiscoveredCallback cb) { return discoverResourceByType(address, OC_RSRVD_WELL_KNOWN_URI, resourceType, std::move(cb)); } - std::unique_ptr RCSDiscoveryManager::discoverResourceByType( + std::unique_ptr RCSDiscoveryManager::discoverResourceByType( const RCSAddress& address, const std::string& relativeURI, const std::string& resourceType, ResourceDiscoveredCallback cb) { return RCSDiscoveryManagerImpl::getInstance()->startDiscovery(address, - relativeURI, resourceType, std::move(cb)); + relativeURI.empty() ? OC_RSRVD_WELL_KNOWN_URI : relativeURI, + resourceType, std::move(cb)); } - RCSDiscoveryTask::~RCSDiscoveryTask(){ + RCSDiscoveryManager::DiscoveryTask::~DiscoveryTask(){ cancel(); } - bool RCSDiscoveryTask::isCanceled() { + bool RCSDiscoveryManager::DiscoveryTask::isCanceled() { auto it = RCSDiscoveryManagerImpl::getInstance(); if(it->m_discoveryMap.find(m_id) == it->m_discoveryMap.end()) @@ -66,7 +67,7 @@ namespace OIC { return false; } - void RCSDiscoveryTask::cancel(){ + void RCSDiscoveryManager::DiscoveryTask::cancel(){ RCSDiscoveryManagerImpl::getInstance()->m_discoveryMap.erase(m_id); } } diff --git a/service/resource-encapsulation/src/resourceClient/RCSDiscoveryManagerImpl.cpp b/service/resource-encapsulation/src/resourceClient/RCSDiscoveryManagerImpl.cpp index b55e557..a9a7e2d 100755 --- a/service/resource-encapsulation/src/resourceClient/RCSDiscoveryManagerImpl.cpp +++ b/service/resource-encapsulation/src/resourceClient/RCSDiscoveryManagerImpl.cpp @@ -73,7 +73,7 @@ namespace OIC } } - std::unique_ptr RCSDiscoveryManagerImpl::startDiscovery(const RCSAddress& address, + std::unique_ptr RCSDiscoveryManagerImpl::startDiscovery(const RCSAddress& address, const std::string& relativeURI, const std::string& resourceType, RCSDiscoveryManager::ResourceDiscoveredCallback cb) { @@ -98,7 +98,7 @@ namespace OIC discoveryItem.m_relativeUri + "?rt=" +discoveryItem.m_resourceType, OCConnectivityType::CT_DEFAULT, discoveryItem.m_findCB); - return std::unique_ptr(new RCSDiscoveryTask(discoverID)); + return std::unique_ptr(new RCSDiscoveryManager::DiscoveryTask(discoverID)); } void RCSDiscoveryManagerImpl::initializedDiscoveryEnvironment() diff --git a/service/resource-encapsulation/src/resourceClient/unittests/DiscoveryManagerTest.cpp b/service/resource-encapsulation/src/resourceClient/unittests/DiscoveryManagerTest.cpp index b28e2de..1a1e8b1 100644 --- a/service/resource-encapsulation/src/resourceClient/unittests/DiscoveryManagerTest.cpp +++ b/service/resource-encapsulation/src/resourceClient/unittests/DiscoveryManagerTest.cpp @@ -31,7 +31,7 @@ using namespace OC::OCPlatform; constexpr char RESOURCEURI[]{ "/a/TemperatureSensor" }; constexpr char RESOURCETYPE[]{ "Resource.Hosting" }; constexpr char RESOURCEINTERFACE[]{ "oic.if.baseline" }; -constexpr int RCSDiscoveryTaskDELAYTIME = 7; +constexpr int DiscoveryTaskDELAYTIME = 7; class DiscoveryManagerTest: public TestWithMock { @@ -39,7 +39,7 @@ public: RCSResourceObject::Ptr server; RCSRemoteResourceObject::Ptr object; - std::unique_ptr discoveryTask; + std::unique_ptr discoveryTask; public: @@ -61,9 +61,9 @@ public: server = RCSResourceObject::Builder(RESOURCEURI, RESOURCETYPE, RESOURCEINTERFACE).build(); } - void waitForRCSDiscoveryTask() + void waitForDiscoveryTask() { - sleep(RCSDiscoveryTaskDELAYTIME); + sleep(DiscoveryTaskDELAYTIME); } static void resourceDiscovered(std::shared_ptr< RCSRemoteResourceObject >) {} @@ -77,7 +77,7 @@ TEST_F(DiscoveryManagerTest, resourceIsNotSupportedPresenceBeforeDiscovering) mocks.ExpectCallFunc(resourceDiscovered); startDiscovery(); - waitForRCSDiscoveryTask(); + waitForDiscoveryTask(); } TEST_F(DiscoveryManagerTest, resourceIsSupportedPresenceBeforeDiscovering) @@ -88,7 +88,7 @@ TEST_F(DiscoveryManagerTest, resourceIsSupportedPresenceBeforeDiscovering) mocks.ExpectCallFunc(resourceDiscovered); startDiscovery(); - waitForRCSDiscoveryTask(); + waitForDiscoveryTask(); } TEST_F(DiscoveryManagerTest, resourceIsNotSupportedPresenceAfterDiscovering) @@ -97,7 +97,7 @@ TEST_F(DiscoveryManagerTest, resourceIsNotSupportedPresenceAfterDiscovering) startDiscovery(); createResource(); - waitForRCSDiscoveryTask(); + waitForDiscoveryTask(); } TEST_F(DiscoveryManagerTest, resourceIsSupportedPresenceAndAfterDiscovering) @@ -107,10 +107,10 @@ TEST_F(DiscoveryManagerTest, resourceIsSupportedPresenceAndAfterDiscovering) startPresence(10); startDiscovery(); createResource(); - waitForRCSDiscoveryTask(); + waitForDiscoveryTask(); } -TEST_F(DiscoveryManagerTest, cancelRCSDiscoveryTaskAfterDiscoveryResource) +TEST_F(DiscoveryManagerTest, cancelDiscoveryTaskAfterDiscoveryResource) { startDiscovery(); cancelDiscovery(); @@ -122,7 +122,7 @@ TEST_F(DiscoveryManagerTest, cancelRCSDiscoveryTaskAfterDiscoveryResource) } -TEST_F(DiscoveryManagerTest, cancelRCSDiscoveryTaskNotStartDiscoveryResource) +TEST_F(DiscoveryManagerTest, cancelDiscoveryTaskNotStartDiscoveryResource) { startDiscovery(); cancelDiscovery(); -- 2.7.4