#include "convergence/convergence_channel_info.h"
#include "convergence/convergence_payload.h"
#include "convergence/convergence_client_info.h"
+#include "convergence/convergence_utils.h"
#include "common/logger.h"
namespace extension {
using common::TizenSuccess;
namespace {
+static const std::string kChannel = "channel";
+
// Payload data keys and some values
static const std::string kPayload = "payload"; // ---
-
-// Service connection status keys
-static const std::string kServiceConnectionStatus = "connect_status"; // ---
-static const std::string kServiceConnectionStatusConnected = "service_connected";
-static const std::string kServiceConnectionStatusNotConnected = "service_not_connected";
-
-// Service listener status keys
-static const std::string kServiceListenerStatus = "listener_status"; //---
-static const std::string kServiceListenerStatusOk = "listener_ok"; // ---
-static const std::string kServiceListenerStatusError = "listener_error"; //---
-static const std::string kServiceListenerError = "listener_error"; //---
} // namespace
ConvergenceAppCommunicationService::ConvergenceAppCommunicationService()
}
// Parse the payload
- const std::string result_type = ConvergencePayloadArray::ExtractPayloadString(result, "result_type"); // TODO extract to constant kResultType = "result_type";
+ const std::string result_type = ConvergencePayloadArray::ExtractPayloadString(result, kServiceResultType.c_str());
LoggerI("Callback type [%s]", result_type.c_str());
picojson::object param;
param[kServiceListenerStatus] = picojson::value(kServiceListenerStatusOk);
- param["channel"] = ConvergenceChannel::ToJson(channel_handle);
- param["result_type"] = picojson::value(result_type);
+ param[kChannel] = ConvergenceChannel::ToJson(channel_handle);
+ param[kServiceResultType] = picojson::value(result_type);
- if (("onStart" == result_type)
- || ("onPublish" == result_type)
- || ("onStop" == result_type)) {
+ if ((kServiceResultTypeOnStart == result_type)
+ || (kServiceResultTypeOnPublish == result_type)
+ || (kServiceResultTypeOnStop == result_type)) {
// The service doesn't send any callback with thie response
- } else if ("onMessage" == result_type) {
+ } else if (kServiceResultTypeOnMessage == result_type) {
param["senderId"] = picojson::value(
ConvergencePayloadArray::ExtractPayloadString(result, "from")); // Define the string as a constant
- param["payload"] = ConvergencePayloadArray::ToJson(result);
- } else if ("onConnect" == result_type) {
+ param[kPayload] = ConvergencePayloadArray::ToJson(result);
+ } else if (kServiceResultTypeOnConnect == result_type) {
//param["clientInfo"] = ConvergenceClientInfo(result).ToJson();
//callbackParam->plugin_->ReplyAsync(kAppCommunicationClientServiceConnectCallback,
// callbackParam->callback_id_, true, param);
return;
- } else if ("onClientConnect" == result_type) {
+ } else if (kServiceResultTypeOnClientConnect == result_type) {
// TODO the service doesn't send any callback with thie response
return; // TODO
- } else if ("onDisconnect" == result_type) {
+ } else if (kServiceResultTypeOnDisconnect == result_type) {
return; // TODO
- } else if ("onClientDisconnect" == result_type) {
+ } else if (kServiceResultTypeOnClientDisconnect == result_type) {
return; // TODO
- } else if ("onRead" == result_type) {
+ } else if (kServiceResultTypeOnRead == result_type) {
// TODO
} else {
// Unsupported payload type, ignoring it
// The object 'channel' will be deleted in the super::Start() so we should
// add its json before
- param["channel"] = ConvergenceChannel::ToJson(channel->GetHandle()); // Define string as constant
- param["result_type"] = picojson::value("onStart");
+ param[kChannel] = ConvergenceChannel::ToJson(channel->GetHandle()); // Define string as constant
+ param[kServiceResultType] = picojson::value(kServiceResultTypeOnStart);
common::TizenResult result = ConvergenceAppCommunicationService::Start(
channel, cur_listener_id);
// The object 'channel' will be deleted in the super::Start() so we should
// add its json before
- param["channel"] = ConvergenceChannel::ToJson(channel->GetHandle());
- param["result_type"] = picojson::value("onStop");
+ param[kChannel] = ConvergenceChannel::ToJson(channel->GetHandle());
+ param[kServiceResultType] = picojson::value(kServiceResultTypeOnStop);
common::TizenResult result = ConvergenceAppCommunicationService::Stop(
channel, cur_listener_id);
picojson::object param;
param[kPayload] = ConvergenceAppCommunicationService::PayloadToJson(result);
- param["result_type"] = picojson::value("Connected");
+ param[kServiceResultType] = picojson::value("Connected");
if (CONV_ERROR_NONE == error) {
param[kServiceConnectionStatus] = picojson::value(kServiceConnectionStatusConnected);
using common::TizenSuccess;
-// TODO check which fields are needed
-// TODO remove dublications, marked with //---
namespace {
-// Commonly used key words
-static const std::string kId = "id"; //---
-static const std::string kName = "name"; //--
-static const std::string kKey = "key";
-static const std::string kValue = "value";
-
-// Channel data keys
-static const std::string kChannel = "channel";
-static const std::string kChannelDataChannelId = "channel_id";
-static const std::string kChannelDataChannelOption = "option";
-static const std::string kChannelDataChannelOptions = "options";
-
-// Payload data keys and some values
-static const std::string kPayload = "payload"; // ---
-static const std::string kPayloadDataType = "type"; // String, bytes or app control
-static const std::string kTypeString = "STRING";
-static const std::string kTypeRawBytes = "RAW_BYTES";
-static const std::string kTypeAppControl = "APP_CONTROL";
-static const std::string kPayloadDataAppControlAppId = "appI";
-static const std::string kPayloadDataAppControlOperation = "operation";
-static const std::string kPayloadDataAppControlUri = "uri";
-static const std::string kPayloadDataAppControlMime = "mime";
-static const std::string kPayloadDataAppControlLaunchMode = "launch_mode";
-static const std::string kPayloadDataAppControlCategory = "category";
-
-// Service keys
-static const std::string kServiceType = "serviceType"; //---
-static const std::string kServiceConnectionState = "connectionState"; //---
-static const std::string kServiceProperties = "properties";
-
// Device keys
static const std::string kDevice = "device";
-static const std::string kDeviceType = "profile"; //---
-static const std::string kDeviceServices = "services"; //---
// Discovery keys
static const std::string kDiscoveryStatus = "discovery_status";
static const std::string kDiscoveryStatusFinished = "discovery_finished";
static const std::string kDiscoveryStatusError = "discovery_error";
static const std::string kDiscoveryError = "discovery_error";
-
-// Service connection status keys
-static const std::string kServiceConnectionStatus = "connect_status"; //---
-static const std::string kServiceConnectionStatusConnected = "service_connected"; //---
-static const std::string kServiceConnectionStatusNotConnected = "service_not_connected"; //---
-
-// Service listener status keys
-static const std::string kServiceListenerStatus = "listener_status"; //---
-static const std::string kServiceListenerStatusOk = "listener_ok"; // ---
-static const std::string kServiceListenerStatusError = "listener_error"; //---
-static const std::string kServiceListenerError = "listener_error"; //---
} // namespace
#include "convergence/convergence_instance.h"
#include "convergence/convergence_payload.h"
+#include "convergence/convergence_utils.h"
#include "common/logger.h"
namespace extension {
using common::TizenResult;
using common::TizenSuccess;
-namespace {
-// Payload data keys and some values
-static const std::string kPayload = "payload"; // ---
-
-// Service connection status keys
-static const std::string kServiceConnectionStatus = "connect_status"; // ---
-static const std::string kServiceConnectionStatusConnected = "service_connected";
-static const std::string kServiceConnectionStatusNotConnected = "service_not_connected";
-
-// Service listener status keys
-static const std::string kServiceListenerStatus = "listener_status"; //---
-static const std::string kServiceListenerStatusOk = "listener_ok"; // ---
-static const std::string kServiceListenerStatusError = "listener_error"; //---
-static const std::string kServiceListenerError = "listener_error"; //---
-} // namespace
-
ConvergenceRemoteAppControlService::ConvergenceRemoteAppControlService()
: ConvergenceService()
, started_(false) {
}
picojson::object param;
- param["result_type"] = picojson::value("Connected");
+ param[kServiceResultType] = picojson::value("Connected");
//param[kPayload] = ConvergenceRemoteAppControlService::PayloadToJson(result);
if (CONV_ERROR_NONE == error) {
// TODO parse the payload and fill the param
- const std::string result_type = ConvergencePayloadArray::ExtractPayloadString(result, "result_type"); // TODO extract to constant kResultType = "result_type";
- param["result_type"] = picojson::value(result_type);
+ const std::string result_type = ConvergencePayloadArray::ExtractPayloadString(result, kServiceResultType.c_str());
+ param[kServiceResultType] = picojson::value(result_type);
if (CONV_ERROR_NONE == error) {
class ConvergenceInstance;
+namespace {
+// Service result type
+static const std::string kServiceResultType = "result_type";
+static const std::string kServiceResultTypeOnStart = "onStart";
+static const std::string kServiceResultTypeOnStop = "onStop";
+static const std::string kServiceResultTypeOnConnect = "onConnect";
+static const std::string kServiceResultTypeOnDisconnect = "onDisconnect";
+static const std::string kServiceResultTypeOnClientConnect = "onClientConnect";
+static const std::string kServiceResultTypeOnClientDisconnect = "onClientDisconnect";
+static const std::string kServiceResultTypeOnPublish = "onPublish";
+static const std::string kServiceResultTypeOnMessage = "onMessage";
+static const std::string kServiceResultTypeOnRead = "onRead";
+
+// Service connection status keys
+static const std::string kServiceConnectionStatus = "connect_status";
+static const std::string kServiceConnectionStatusConnected = "service_connected";
+static const std::string kServiceConnectionStatusNotConnected = "service_not_connected";
+
+// Service listener status keys
+static const std::string kServiceListenerStatus = "listener_status";
+static const std::string kServiceListenerStatusOk = "listener_ok";
+static const std::string kServiceListenerStatusError = "listener_error";
+static const std::string kServiceListenerError = "listener_error";
+} // namespace
+
struct CallbackParam {
CallbackParam(ConvergenceInstance *plg, int cbId)
: plugin_(plg), callback_id_(cbId) {}