#include "OCPlatform.h"
#include "OCApi.h"
+#include "RDClient.h"
#include <functional>
#include <iostream>
using namespace std;
using namespace OC;
+static const char* SVR_DB_FILE_NAME = "./oic_svr_db_server.dat";
+
string rdAddress;
OCConnectivityType connectivityType = CT_ADAPTER_TCP;
m_resourceUri = resourceURI;
- OCPlatform::registerResource(m_resourceHandle, resourceURI, resourceTypeName,
- resourceInterface,
- nullptr,
- OC_DISCOVERABLE);
+ OCStackResult ret = OCPlatform::registerResource(m_resourceHandle,
+ resourceURI,
+ resourceTypeName,
+ resourceInterface,
+ nullptr,
+ OC_DISCOVERABLE);
+
+ if (OC_STACK_OK != ret)
+ {
+ cout << "Resource creation was unsuccessful\n";
+ return;
+ }
m_publishedResourceHandles.push_back(m_resourceHandle);
cout << "registerResource is called." << endl;
* Publish Resource of Resource-Server to RD.
*/
- OCStackResult result = OCPlatform::publishResourceToRD(rdAddress, connectivityType,
- m_publishedResourceHandles,
- &onPublish);
+ OCStackResult result = RDClient::Instance().publishResourceToRD(rdAddress, connectivityType,
+ m_publishedResourceHandles, &onPublish);
if (OC_STACK_OK != result)
{
cout << "Resource publish was unsuccessful\n";
* if resource-server want to delete all resources from RD.
* Ex.) OCPlatform::deleteResourceFromRD(rdAddress, connectivityType, &onDelete);
*/
- OCStackResult result = OCPlatform::deleteResourceFromRD(rdAddress, connectivityType,
- m_publishedResourceHandles,
- &onDelete);
+ OCStackResult result = RDClient::Instance().deleteResourceFromRD(rdAddress, connectivityType,
+ m_publishedResourceHandles, &onDelete);
if (OC_STACK_OK != result)
{
cout << "Resource delete was unsuccessful\n";
try
{
- if (OC_STACK_RESOURCE_CREATED == eCode)
+ if (OC_STACK_RESOURCE_CHANGED == eCode)
{
cout << "=========== Published Resource ===========" << endl;
if (rep.hasAttribute("di"))
std::cout<<"Usage: rdserver <coap+tcp://10.11.12.13:5683>\n";
}
+static FILE* client_open(const char* /*path*/, const char *mode)
+{
+ return fopen(SVR_DB_FILE_NAME, mode);
+}
+
int main(int argc, char* argv[])
{
ostringstream requestURI;
return -1;
}
+ OCPersistentStorage ps {client_open, fread, fwrite, fclose, unlink, NULL, NULL};
PlatformConfig config
- { OC::ServiceType::InProc, ModeType::Both, "0.0.0.0", 0, OC::QualityOfService::LowQos };
+ { OC::ServiceType::InProc, ModeType::Both, "0.0.0.0", 0, OC::QualityOfService::LowQos, &ps};
try
{
}
catch (OCException& e)
{
- oclog() << "Exception in main: "<< e.what();
+ cerr << "Exception in main: "<< e.what();
}
return 0;
}
-