SimulatorRemoteResourceSP selectResource()
{
std::lock_guard<std::recursive_mutex> lock(m_mutex);
- if (0 == m_resList.size())
+ if (m_resList.empty())
{
std::cout << "No resources!" << std::endl;
return nullptr;
*/
virtual void observe(ObserveType type, ObserveNotificationCallback callback) = 0;
+ /**
+ * API to send observe request to remote resource.
+ *
+ * @param type - Observe request type.
+ * @param queryParametersMap - Query parameters.
+ * @param callback - callback for receiving notifications from remote resource
+ * asynchronously.
+ */
+ virtual void observe(ObserveType type,
+ const std::map<std::string, std::string> &queryParams,
+ ObserveNotificationCallback callback) = 0;
+
/**
* API to send cancel observe request to remote resource.
*
}, std::placeholders::_1, std::placeholders::_2, std::placeholders::_3,
std::placeholders::_4, JniListenerHolder::create(env, jListener));
- resource->observe(ObserveType::OBSERVE, callback);
+ resource->observe(ObserveType::OBSERVE, queryParams, callback);
}
catch (InvalidArgsException &e)
{
}
static jobject createObserverInfoVector(JNIEnv *env,
- const std::vector<ObserverInfo> observersList)
+ const std::vector<ObserverInfo> &observersList)
{
jobject vectorObject = JniVector(env).toJava();
if (!vectorObject)
for ( YAML::const_iterator tt = (*iit).begin(); tt != (*iit).end(); ++tt )\r
{\r
std::string key = READ_NODE_AS_STRING(tt->first);\r
- std::pair<std::string, Schema> schema;\r
\r
IncludeResolver::FileType fileType = m_includeResolver->getFileType(tt->second);\r
if ((fileType == IncludeResolver::FileType::JSON) ||\r
{\r
return (m_parentUri + m_relativeUri);\r
}\r
- void RamlResource::readResource(const std::string resourceKey, const YAML::Node &yamlNode,\r
+\r
+ void RamlResource::readResource(const std::string &resourceKey, const YAML::Node &yamlNode,\r
const std::string &parentUri)\r
{\r
m_relativeUri = resourceKey;\r
* @param parentUri - Uri of the Parent to form the Absolute Uri\r
*\r
*/\r
- RamlResource(const std::string resourceKey, const YAML::Node &yamlNode ,\r
+ RamlResource(const std::string &resourceKey, const YAML::Node &yamlNode ,\r
const IncludeResolverPtr &includeResolver,\r
const std::string &parentUri) : m_includeResolver(includeResolver)\r
{\r
readResource(resourceKey, yamlNode, parentUri);\r
}\r
private:\r
- void readResource(const std::string resourceKey, const YAML::Node &yamlNode,\r
+ void readResource(const std::string &resourceKey, const YAML::Node &yamlNode,\r
const std::string &parentUri);\r
private:\r
std::string m_displayName;\r
* @param type - type of request response body\r
*\r
*/\r
- RequestResponseBody(const std::string type) : m_type(type), m_schema(NULL),\r
+ RequestResponseBody(const std::string &type) : m_type(type), m_schema(NULL),\r
m_includeResolver(NULL) {}\r
\r
/**\r
* @param includeResolver - Reference to IncludeResolver for reading external files\r
*\r
*/\r
- RequestResponseBody(const std::string type, const YAML::Node &yamlNode,\r
+ RequestResponseBody(const std::string &type, const YAML::Node &yamlNode,\r
const IncludeResolverPtr &includeResolver): m_schema(NULL),\r
m_includeResolver(includeResolver)\r
{ readRequestResponseBody(type, yamlNode); }\r
void SimulatorRemoteResourceImpl::observe(ObserveType type,
ObserveNotificationCallback callback)
+{
+ std::map<std::string, std::string> queryParams;
+ return observe(type, queryParams, callback);
+}
+
+void SimulatorRemoteResourceImpl::observe(ObserveType type,
+ const std::map<std::string, std::string> &queryParams,
+ ObserveNotificationCallback callback)
{
VALIDATE_CALLBACK(callback)
try
{
- OCStackResult ocResult = m_ocResource->observe(observeType, OC::QueryParamsMap(), observeCallback);
+ OCStackResult ocResult = m_ocResource->observe(observeType, queryParams, observeCallback);
if (OC_STACK_OK != ocResult)
throw SimulatorException(static_cast<SimulatorResult>(ocResult), OC::OCException::reason(ocResult));
bool isObservable() const;
void observe(ObserveType type, ObserveNotificationCallback callback);
+ void observe(ObserveType type, const std::map<std::string, std::string> &queryParams,
+ ObserveNotificationCallback callback);
void cancelObserve();
void get(const GetResponseCallback &callback);
const OC::OCRepresentation &rep)
{
std::ostringstream requestString;
- if (queryParams.size() > 0)
+ if (!queryParams.empty())
{
requestString << "qp: ";
for (auto &qp : queryParams)
std::string getRequestString(const std::map<std::string, std::string> &queryParams)
{
std::ostringstream requestString;
- if (queryParams.size() > 0)
+ if (!queryParams.empty())
{
requestString << "qp: ";
for (auto &qp : queryParams)