//
//-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
-#include <RCSRequest.h>
+#include "RCSRequest.h"
+
+#include "OCResourceRequest.h"
namespace OIC
{
namespace Service
{
+ RCSRequest::RCSRequest(const std::shared_ptr< RCSResourceObject >& resourceObject,
+ const std::shared_ptr< OC::OCResourceRequest >& ocRequest) :
+ m_resourceObject{ resourceObject },
+ m_ocRequest{ ocRequest }
+ {
+ }
+
RCSRequest::RCSRequest(const std::string& resourceUri) :
- m_resourceUri{ resourceUri }
+ m_ocRequest{ std::make_shared< OC::OCResourceRequest >() }
+ {
+ m_ocRequest->setResourceUri(resourceUri);
+ }
+
+
+ std::weak_ptr< RCSResourceObject > RCSRequest::getResourceObject() const noexcept
{
+ return m_resourceObject;
}
std::string RCSRequest::getResourceUri() const
{
- return m_resourceUri;
+ return m_ocRequest->getResourceUri();
+ }
+
+ std::shared_ptr< OC::OCResourceRequest > RCSRequest::getOCRequest() const noexcept
+ {
+ return m_ocRequest;
+ }
+
+ const std::map< std::string, std::string >& RCSRequest::getQueryParams() const
+ {
+ return m_ocRequest->getQueryParameters();
+ }
+
+ std::string RCSRequest::getInterface() const
+ {
+ const auto& params = m_ocRequest->getQueryParameters();
+
+ auto it = params.find(OC::Key::INTERFACESKEY);
+
+ if (it == params.end()) return "";
+
+ return it->second;
}
}