Add float conversion for cpprest api client template. (#5387)

Signed-off-by: FILLAU Jean-Maxime <jean-maxime.fillau@mapotempo.com>
This commit is contained in:
Jean-Maxime Fillau 2017-04-13 11:30:20 +02:00 committed by wing328
parent 78c4928908
commit df1055fe38
4 changed files with 21 additions and 0 deletions

View File

@ -38,6 +38,7 @@ public:
static utility::string_t parameterToString(utility::string_t value); static utility::string_t parameterToString(utility::string_t value);
static utility::string_t parameterToString(int32_t value); static utility::string_t parameterToString(int32_t value);
static utility::string_t parameterToString(int64_t value); static utility::string_t parameterToString(int64_t value);
static utility::string_t parameterToString(float value);
static utility::string_t parameterToString(const utility::datetime &value); static utility::string_t parameterToString(const utility::datetime &value);
template<class T> template<class T>

View File

@ -40,6 +40,11 @@ utility::string_t ApiClient::parameterToString(int32_t value)
return utility::conversions::to_string_t(std::to_string(value)); return utility::conversions::to_string_t(std::to_string(value));
} }
utility::string_t ApiClient::parameterToString(float value)
{
return utility::conversions::to_string_t(std::to_string(value));
}
utility::string_t ApiClient::parameterToString(const utility::datetime &value) utility::string_t ApiClient::parameterToString(const utility::datetime &value)
{ {
return utility::conversions::to_string_t(value.to_string(utility::datetime::ISO_8601)); return utility::conversions::to_string_t(value.to_string(utility::datetime::ISO_8601));

View File

@ -43,6 +43,7 @@ public:
static int64_t int64_tFromJson(web::json::value& val); static int64_t int64_tFromJson(web::json::value& val);
static int32_t int32_tFromJson(web::json::value& val); static int32_t int32_tFromJson(web::json::value& val);
static float floatFromJson(web::json::value& val);
static utility::string_t stringFromJson(web::json::value& val); static utility::string_t stringFromJson(web::json::value& val);
static utility::datetime dateFromJson(web::json::value& val); static utility::datetime dateFromJson(web::json::value& val);
static double doubleFromJson(web::json::value& val); static double doubleFromJson(web::json::value& val);
@ -59,6 +60,7 @@ public:
static int64_t int64_tFromHttpContent(std::shared_ptr<HttpContent> val); static int64_t int64_tFromHttpContent(std::shared_ptr<HttpContent> val);
static int32_t int32_tFromHttpContent(std::shared_ptr<HttpContent> val); static int32_t int32_tFromHttpContent(std::shared_ptr<HttpContent> val);
static float floatFromHttpContent(std::shared_ptr<HttpContent> val);
static utility::string_t stringFromHttpContent(std::shared_ptr<HttpContent> val); static utility::string_t stringFromHttpContent(std::shared_ptr<HttpContent> val);
static utility::datetime dateFromHttpContent(std::shared_ptr<HttpContent> val); static utility::datetime dateFromHttpContent(std::shared_ptr<HttpContent> val);
static bool boolFromHttpContent(std::shared_ptr<HttpContent> val); static bool boolFromHttpContent(std::shared_ptr<HttpContent> val);

View File

@ -262,6 +262,10 @@ int32_t ModelBase::int32_tFromJson(web::json::value& val)
{ {
return val.as_integer(); return val.as_integer();
} }
float ModelBase::floatFromJson(web::json::value& val)
{
return val.as_double();
}
utility::string_t ModelBase::stringFromJson(web::json::value& val) utility::string_t ModelBase::stringFromJson(web::json::value& val)
{ {
return val.is_string() ? val.as_string() : U(""); return val.is_string() ? val.as_string() : U("");
@ -298,6 +302,15 @@ int32_t ModelBase::int32_tFromHttpContent(std::shared_ptr<HttpContent> val)
ss >> result; ss >> result;
return result; return result;
} }
float ModelBase::floatFromHttpContent(std::shared_ptr<HttpContent> val)
{
utility::string_t str = ModelBase::stringFromHttpContent(val);
utility::stringstream_t ss(str);
float result = 0;
ss >> result;
return result;
}
utility::string_t ModelBase::stringFromHttpContent(std::shared_ptr<HttpContent> val) utility::string_t ModelBase::stringFromHttpContent(std::shared_ptr<HttpContent> val)
{ {
std::shared_ptr<std::istream> data = val->getData(); std::shared_ptr<std::istream> data = val->getData();