예제 #1
0
bool NsSmartDeviceLink::NsJSONHandler::Formatters::CFormatterJsonSDLRPCv2::toString(
        const NsSmartDeviceLink::NsSmartObjects::SmartObject& obj,
        std::string& outStr)
{
    Json::Value root(Json::objectValue);

    NsSmartDeviceLink::NsSmartObjects::SmartObject formattedObj(obj);
    formattedObj.getSchema().unapplySchema(formattedObj);       // converts enums(as int) to strings

    objToJsonValue(formattedObj.getElement(NsSmartDeviceLink::NsJSONHandler::strings::S_MSG_PARAMS), root);

    outStr = root.toStyledString();

    return true;
}
bool CFormatterJsonSDLRPCv2::toString(const smart_objects_ns::SmartObject& obj,
                                      std::string& outStr) {
  bool result = true;
  try {
    utils::json::JsonValue root(utils::json::ValueType::OBJECT_VALUE);

    smart_objects_ns::SmartObject formattedObj(obj);
    formattedObj.getSchema().unapplySchema(
        formattedObj);  // converts enums(as int32_t) to strings

    objToJsonValue(formattedObj.getElement(strings::S_MSG_PARAMS), root);

    outStr = root.ToJson();

    result = true;
  } catch (...) {
    result = false;
  }

  return result;
}