forked from loafle/openapi-generator-original
* Fix string types for cpprestsdk client generator * Regenerate the samples for restsdk-client
1029 lines
46 KiB
C++
1029 lines
46 KiB
C++
/**
|
|
* OpenAPI Petstore
|
|
* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters.
|
|
*
|
|
* OpenAPI spec version: 1.0.0
|
|
*
|
|
* NOTE: This class is auto generated by OpenAPI-Generator 3.3.4.
|
|
* https://openapi-generator.tech
|
|
* Do not edit the class manually.
|
|
*/
|
|
|
|
|
|
#include "PetApi.h"
|
|
#include "IHttpBody.h"
|
|
#include "JsonBody.h"
|
|
#include "MultipartFormData.h"
|
|
|
|
#include <unordered_set>
|
|
|
|
#include <boost/algorithm/string/replace.hpp>
|
|
|
|
namespace org {
|
|
namespace openapitools {
|
|
namespace client {
|
|
namespace api {
|
|
|
|
using namespace org::openapitools::client::model;
|
|
|
|
PetApi::PetApi( std::shared_ptr<ApiClient> apiClient )
|
|
: m_ApiClient(apiClient)
|
|
{
|
|
}
|
|
|
|
PetApi::~PetApi()
|
|
{
|
|
}
|
|
|
|
pplx::task<void> PetApi::addPet(std::shared_ptr<Pet> pet)
|
|
{
|
|
|
|
// verify the required parameter 'pet' is set
|
|
if (pet == nullptr)
|
|
{
|
|
throw ApiException(400, utility::conversions::to_string_t("Missing required parameter 'pet' when calling PetApi->addPet"));
|
|
}
|
|
|
|
|
|
std::shared_ptr<ApiConfiguration> localVarApiConfiguration( m_ApiClient->getConfiguration() );
|
|
utility::string_t localVarPath = utility::conversions::to_string_t("/pet");
|
|
|
|
std::map<utility::string_t, utility::string_t> localVarQueryParams;
|
|
std::map<utility::string_t, utility::string_t> localVarHeaderParams( localVarApiConfiguration->getDefaultHeaders() );
|
|
std::map<utility::string_t, utility::string_t> localVarFormParams;
|
|
std::map<utility::string_t, std::shared_ptr<HttpContent>> localVarFileParams;
|
|
|
|
std::unordered_set<utility::string_t> localVarResponseHttpContentTypes;
|
|
|
|
utility::string_t localVarResponseHttpContentType;
|
|
|
|
// use JSON if possible
|
|
if ( localVarResponseHttpContentTypes.size() == 0 )
|
|
{
|
|
localVarResponseHttpContentType = utility::conversions::to_string_t("application/json");
|
|
}
|
|
// JSON
|
|
else if ( localVarResponseHttpContentTypes.find(utility::conversions::to_string_t("application/json")) != localVarResponseHttpContentTypes.end() )
|
|
{
|
|
localVarResponseHttpContentType = utility::conversions::to_string_t("application/json");
|
|
}
|
|
// multipart formdata
|
|
else if( localVarResponseHttpContentTypes.find(utility::conversions::to_string_t("multipart/form-data")) != localVarResponseHttpContentTypes.end() )
|
|
{
|
|
localVarResponseHttpContentType = utility::conversions::to_string_t("multipart/form-data");
|
|
}
|
|
else
|
|
{
|
|
throw ApiException(400, utility::conversions::to_string_t("PetApi->addPet does not produce any supported media type"));
|
|
}
|
|
|
|
localVarHeaderParams[utility::conversions::to_string_t("Accept")] = localVarResponseHttpContentType;
|
|
|
|
std::unordered_set<utility::string_t> localVarConsumeHttpContentTypes;
|
|
localVarConsumeHttpContentTypes.insert( utility::conversions::to_string_t("application/json") );
|
|
localVarConsumeHttpContentTypes.insert( utility::conversions::to_string_t("application/xml") );
|
|
|
|
|
|
std::shared_ptr<IHttpBody> localVarHttpBody;
|
|
utility::string_t localVarRequestHttpContentType;
|
|
|
|
// use JSON if possible
|
|
if ( localVarConsumeHttpContentTypes.size() == 0 || localVarConsumeHttpContentTypes.find(utility::conversions::to_string_t("application/json")) != localVarConsumeHttpContentTypes.end() )
|
|
{
|
|
localVarRequestHttpContentType = utility::conversions::to_string_t("application/json");
|
|
web::json::value localVarJson;
|
|
|
|
localVarJson = ModelBase::toJson(pet);
|
|
|
|
|
|
localVarHttpBody = std::shared_ptr<IHttpBody>( new JsonBody( localVarJson ) );
|
|
}
|
|
// multipart formdata
|
|
else if( localVarConsumeHttpContentTypes.find(utility::conversions::to_string_t("multipart/form-data")) != localVarConsumeHttpContentTypes.end() )
|
|
{
|
|
localVarRequestHttpContentType = utility::conversions::to_string_t("multipart/form-data");
|
|
std::shared_ptr<MultipartFormData> localVarMultipart(new MultipartFormData);
|
|
|
|
if(pet.get())
|
|
{
|
|
pet->toMultipart(localVarMultipart, utility::conversions::to_string_t("pet"));
|
|
}
|
|
|
|
localVarHttpBody = localVarMultipart;
|
|
localVarRequestHttpContentType += utility::conversions::to_string_t("; boundary=") + localVarMultipart->getBoundary();
|
|
}
|
|
else
|
|
{
|
|
throw ApiException(415, utility::conversions::to_string_t("PetApi->addPet does not consume any supported media type"));
|
|
}
|
|
|
|
// authentication (petstore_auth) required
|
|
// oauth2 authentication is added automatically as part of the http_client_config
|
|
|
|
return m_ApiClient->callApi(localVarPath, utility::conversions::to_string_t("POST"), localVarQueryParams, localVarHttpBody, localVarHeaderParams, localVarFormParams, localVarFileParams, localVarRequestHttpContentType)
|
|
.then([=](web::http::http_response localVarResponse)
|
|
{
|
|
if (m_ApiClient->getResponseHandler())
|
|
{
|
|
m_ApiClient->getResponseHandler()(localVarResponse.status_code(), localVarResponse.headers());
|
|
}
|
|
|
|
// 1xx - informational : OK
|
|
// 2xx - successful : OK
|
|
// 3xx - redirection : OK
|
|
// 4xx - client error : not OK
|
|
// 5xx - client error : not OK
|
|
if (localVarResponse.status_code() >= 400)
|
|
{
|
|
throw ApiException(localVarResponse.status_code()
|
|
, utility::conversions::to_string_t("error calling addPet: ") + localVarResponse.reason_phrase()
|
|
, std::make_shared<std::stringstream>(localVarResponse.extract_utf8string(true).get()));
|
|
}
|
|
|
|
// check response content type
|
|
if(localVarResponse.headers().has(utility::conversions::to_string_t("Content-Type")))
|
|
{
|
|
utility::string_t localVarContentType = localVarResponse.headers()[utility::conversions::to_string_t("Content-Type")];
|
|
if( localVarContentType.find(localVarResponseHttpContentType) == std::string::npos )
|
|
{
|
|
throw ApiException(500
|
|
, utility::conversions::to_string_t("error calling addPet: unexpected response type: ") + localVarContentType
|
|
, std::make_shared<std::stringstream>(localVarResponse.extract_utf8string(true).get()));
|
|
}
|
|
}
|
|
|
|
return localVarResponse.extract_string();
|
|
})
|
|
.then([=](utility::string_t localVarResponse)
|
|
{
|
|
return void();
|
|
});
|
|
}
|
|
pplx::task<void> PetApi::deletePet(int64_t petId, boost::optional<utility::string_t> apiKey)
|
|
{
|
|
|
|
|
|
std::shared_ptr<ApiConfiguration> localVarApiConfiguration( m_ApiClient->getConfiguration() );
|
|
utility::string_t localVarPath = utility::conversions::to_string_t("/pet/{petId}");
|
|
boost::replace_all(localVarPath, utility::conversions::to_string_t("{") + utility::conversions::to_string_t("petId") + utility::conversions::to_string_t("}"), ApiClient::parameterToString(petId));
|
|
|
|
std::map<utility::string_t, utility::string_t> localVarQueryParams;
|
|
std::map<utility::string_t, utility::string_t> localVarHeaderParams( localVarApiConfiguration->getDefaultHeaders() );
|
|
std::map<utility::string_t, utility::string_t> localVarFormParams;
|
|
std::map<utility::string_t, std::shared_ptr<HttpContent>> localVarFileParams;
|
|
|
|
std::unordered_set<utility::string_t> localVarResponseHttpContentTypes;
|
|
|
|
utility::string_t localVarResponseHttpContentType;
|
|
|
|
// use JSON if possible
|
|
if ( localVarResponseHttpContentTypes.size() == 0 )
|
|
{
|
|
localVarResponseHttpContentType = utility::conversions::to_string_t("application/json");
|
|
}
|
|
// JSON
|
|
else if ( localVarResponseHttpContentTypes.find(utility::conversions::to_string_t("application/json")) != localVarResponseHttpContentTypes.end() )
|
|
{
|
|
localVarResponseHttpContentType = utility::conversions::to_string_t("application/json");
|
|
}
|
|
// multipart formdata
|
|
else if( localVarResponseHttpContentTypes.find(utility::conversions::to_string_t("multipart/form-data")) != localVarResponseHttpContentTypes.end() )
|
|
{
|
|
localVarResponseHttpContentType = utility::conversions::to_string_t("multipart/form-data");
|
|
}
|
|
else
|
|
{
|
|
throw ApiException(400, utility::conversions::to_string_t("PetApi->deletePet does not produce any supported media type"));
|
|
}
|
|
|
|
localVarHeaderParams[utility::conversions::to_string_t("Accept")] = localVarResponseHttpContentType;
|
|
|
|
std::unordered_set<utility::string_t> localVarConsumeHttpContentTypes;
|
|
|
|
if (apiKey)
|
|
{
|
|
localVarHeaderParams[utility::conversions::to_string_t("api_key")] = ApiClient::parameterToString(*apiKey);
|
|
}
|
|
|
|
std::shared_ptr<IHttpBody> localVarHttpBody;
|
|
utility::string_t localVarRequestHttpContentType;
|
|
|
|
// use JSON if possible
|
|
if ( localVarConsumeHttpContentTypes.size() == 0 || localVarConsumeHttpContentTypes.find(utility::conversions::to_string_t("application/json")) != localVarConsumeHttpContentTypes.end() )
|
|
{
|
|
localVarRequestHttpContentType = utility::conversions::to_string_t("application/json");
|
|
}
|
|
// multipart formdata
|
|
else if( localVarConsumeHttpContentTypes.find(utility::conversions::to_string_t("multipart/form-data")) != localVarConsumeHttpContentTypes.end() )
|
|
{
|
|
localVarRequestHttpContentType = utility::conversions::to_string_t("multipart/form-data");
|
|
}
|
|
else
|
|
{
|
|
throw ApiException(415, utility::conversions::to_string_t("PetApi->deletePet does not consume any supported media type"));
|
|
}
|
|
|
|
// authentication (petstore_auth) required
|
|
// oauth2 authentication is added automatically as part of the http_client_config
|
|
|
|
return m_ApiClient->callApi(localVarPath, utility::conversions::to_string_t("DELETE"), localVarQueryParams, localVarHttpBody, localVarHeaderParams, localVarFormParams, localVarFileParams, localVarRequestHttpContentType)
|
|
.then([=](web::http::http_response localVarResponse)
|
|
{
|
|
if (m_ApiClient->getResponseHandler())
|
|
{
|
|
m_ApiClient->getResponseHandler()(localVarResponse.status_code(), localVarResponse.headers());
|
|
}
|
|
|
|
// 1xx - informational : OK
|
|
// 2xx - successful : OK
|
|
// 3xx - redirection : OK
|
|
// 4xx - client error : not OK
|
|
// 5xx - client error : not OK
|
|
if (localVarResponse.status_code() >= 400)
|
|
{
|
|
throw ApiException(localVarResponse.status_code()
|
|
, utility::conversions::to_string_t("error calling deletePet: ") + localVarResponse.reason_phrase()
|
|
, std::make_shared<std::stringstream>(localVarResponse.extract_utf8string(true).get()));
|
|
}
|
|
|
|
// check response content type
|
|
if(localVarResponse.headers().has(utility::conversions::to_string_t("Content-Type")))
|
|
{
|
|
utility::string_t localVarContentType = localVarResponse.headers()[utility::conversions::to_string_t("Content-Type")];
|
|
if( localVarContentType.find(localVarResponseHttpContentType) == std::string::npos )
|
|
{
|
|
throw ApiException(500
|
|
, utility::conversions::to_string_t("error calling deletePet: unexpected response type: ") + localVarContentType
|
|
, std::make_shared<std::stringstream>(localVarResponse.extract_utf8string(true).get()));
|
|
}
|
|
}
|
|
|
|
return localVarResponse.extract_string();
|
|
})
|
|
.then([=](utility::string_t localVarResponse)
|
|
{
|
|
return void();
|
|
});
|
|
}
|
|
pplx::task<std::vector<std::shared_ptr<Pet>>> PetApi::findPetsByStatus(std::vector<utility::string_t> status)
|
|
{
|
|
|
|
|
|
std::shared_ptr<ApiConfiguration> localVarApiConfiguration( m_ApiClient->getConfiguration() );
|
|
utility::string_t localVarPath = utility::conversions::to_string_t("/pet/findByStatus");
|
|
|
|
std::map<utility::string_t, utility::string_t> localVarQueryParams;
|
|
std::map<utility::string_t, utility::string_t> localVarHeaderParams( localVarApiConfiguration->getDefaultHeaders() );
|
|
std::map<utility::string_t, utility::string_t> localVarFormParams;
|
|
std::map<utility::string_t, std::shared_ptr<HttpContent>> localVarFileParams;
|
|
|
|
std::unordered_set<utility::string_t> localVarResponseHttpContentTypes;
|
|
localVarResponseHttpContentTypes.insert( utility::conversions::to_string_t("application/xml") );
|
|
localVarResponseHttpContentTypes.insert( utility::conversions::to_string_t("application/json") );
|
|
|
|
utility::string_t localVarResponseHttpContentType;
|
|
|
|
// use JSON if possible
|
|
if ( localVarResponseHttpContentTypes.size() == 0 )
|
|
{
|
|
localVarResponseHttpContentType = utility::conversions::to_string_t("application/json");
|
|
}
|
|
// JSON
|
|
else if ( localVarResponseHttpContentTypes.find(utility::conversions::to_string_t("application/json")) != localVarResponseHttpContentTypes.end() )
|
|
{
|
|
localVarResponseHttpContentType = utility::conversions::to_string_t("application/json");
|
|
}
|
|
// multipart formdata
|
|
else if( localVarResponseHttpContentTypes.find(utility::conversions::to_string_t("multipart/form-data")) != localVarResponseHttpContentTypes.end() )
|
|
{
|
|
localVarResponseHttpContentType = utility::conversions::to_string_t("multipart/form-data");
|
|
}
|
|
else
|
|
{
|
|
throw ApiException(400, utility::conversions::to_string_t("PetApi->findPetsByStatus does not produce any supported media type"));
|
|
}
|
|
|
|
localVarHeaderParams[utility::conversions::to_string_t("Accept")] = localVarResponseHttpContentType;
|
|
|
|
std::unordered_set<utility::string_t> localVarConsumeHttpContentTypes;
|
|
|
|
{
|
|
localVarQueryParams[utility::conversions::to_string_t("status")] = ApiClient::parameterToString(status);
|
|
}
|
|
|
|
std::shared_ptr<IHttpBody> localVarHttpBody;
|
|
utility::string_t localVarRequestHttpContentType;
|
|
|
|
// use JSON if possible
|
|
if ( localVarConsumeHttpContentTypes.size() == 0 || localVarConsumeHttpContentTypes.find(utility::conversions::to_string_t("application/json")) != localVarConsumeHttpContentTypes.end() )
|
|
{
|
|
localVarRequestHttpContentType = utility::conversions::to_string_t("application/json");
|
|
}
|
|
// multipart formdata
|
|
else if( localVarConsumeHttpContentTypes.find(utility::conversions::to_string_t("multipart/form-data")) != localVarConsumeHttpContentTypes.end() )
|
|
{
|
|
localVarRequestHttpContentType = utility::conversions::to_string_t("multipart/form-data");
|
|
}
|
|
else
|
|
{
|
|
throw ApiException(415, utility::conversions::to_string_t("PetApi->findPetsByStatus does not consume any supported media type"));
|
|
}
|
|
|
|
// authentication (petstore_auth) required
|
|
// oauth2 authentication is added automatically as part of the http_client_config
|
|
|
|
return m_ApiClient->callApi(localVarPath, utility::conversions::to_string_t("GET"), localVarQueryParams, localVarHttpBody, localVarHeaderParams, localVarFormParams, localVarFileParams, localVarRequestHttpContentType)
|
|
.then([=](web::http::http_response localVarResponse)
|
|
{
|
|
if (m_ApiClient->getResponseHandler())
|
|
{
|
|
m_ApiClient->getResponseHandler()(localVarResponse.status_code(), localVarResponse.headers());
|
|
}
|
|
|
|
// 1xx - informational : OK
|
|
// 2xx - successful : OK
|
|
// 3xx - redirection : OK
|
|
// 4xx - client error : not OK
|
|
// 5xx - client error : not OK
|
|
if (localVarResponse.status_code() >= 400)
|
|
{
|
|
throw ApiException(localVarResponse.status_code()
|
|
, utility::conversions::to_string_t("error calling findPetsByStatus: ") + localVarResponse.reason_phrase()
|
|
, std::make_shared<std::stringstream>(localVarResponse.extract_utf8string(true).get()));
|
|
}
|
|
|
|
// check response content type
|
|
if(localVarResponse.headers().has(utility::conversions::to_string_t("Content-Type")))
|
|
{
|
|
utility::string_t localVarContentType = localVarResponse.headers()[utility::conversions::to_string_t("Content-Type")];
|
|
if( localVarContentType.find(localVarResponseHttpContentType) == std::string::npos )
|
|
{
|
|
throw ApiException(500
|
|
, utility::conversions::to_string_t("error calling findPetsByStatus: unexpected response type: ") + localVarContentType
|
|
, std::make_shared<std::stringstream>(localVarResponse.extract_utf8string(true).get()));
|
|
}
|
|
}
|
|
|
|
return localVarResponse.extract_string();
|
|
})
|
|
.then([=](utility::string_t localVarResponse)
|
|
{
|
|
std::vector<std::shared_ptr<Pet>> localVarResult;
|
|
|
|
if(localVarResponseHttpContentType == utility::conversions::to_string_t("application/json"))
|
|
{
|
|
web::json::value localVarJson = web::json::value::parse(localVarResponse);
|
|
|
|
for( auto& localVarItem : localVarJson.as_array() )
|
|
{
|
|
std::shared_ptr<Pet> localVarItemObj(new Pet());
|
|
localVarItemObj->fromJson(localVarItem);
|
|
localVarResult.push_back(localVarItemObj);
|
|
|
|
}
|
|
|
|
}
|
|
// else if(localVarResponseHttpContentType == utility::conversions::to_string_t("multipart/form-data"))
|
|
// {
|
|
// TODO multipart response parsing
|
|
// }
|
|
else
|
|
{
|
|
throw ApiException(500
|
|
, utility::conversions::to_string_t("error calling findPetsByStatus: unsupported response type"));
|
|
}
|
|
|
|
return localVarResult;
|
|
});
|
|
}
|
|
pplx::task<std::vector<std::shared_ptr<Pet>>> PetApi::findPetsByTags(std::vector<utility::string_t> tags)
|
|
{
|
|
|
|
|
|
std::shared_ptr<ApiConfiguration> localVarApiConfiguration( m_ApiClient->getConfiguration() );
|
|
utility::string_t localVarPath = utility::conversions::to_string_t("/pet/findByTags");
|
|
|
|
std::map<utility::string_t, utility::string_t> localVarQueryParams;
|
|
std::map<utility::string_t, utility::string_t> localVarHeaderParams( localVarApiConfiguration->getDefaultHeaders() );
|
|
std::map<utility::string_t, utility::string_t> localVarFormParams;
|
|
std::map<utility::string_t, std::shared_ptr<HttpContent>> localVarFileParams;
|
|
|
|
std::unordered_set<utility::string_t> localVarResponseHttpContentTypes;
|
|
localVarResponseHttpContentTypes.insert( utility::conversions::to_string_t("application/xml") );
|
|
localVarResponseHttpContentTypes.insert( utility::conversions::to_string_t("application/json") );
|
|
|
|
utility::string_t localVarResponseHttpContentType;
|
|
|
|
// use JSON if possible
|
|
if ( localVarResponseHttpContentTypes.size() == 0 )
|
|
{
|
|
localVarResponseHttpContentType = utility::conversions::to_string_t("application/json");
|
|
}
|
|
// JSON
|
|
else if ( localVarResponseHttpContentTypes.find(utility::conversions::to_string_t("application/json")) != localVarResponseHttpContentTypes.end() )
|
|
{
|
|
localVarResponseHttpContentType = utility::conversions::to_string_t("application/json");
|
|
}
|
|
// multipart formdata
|
|
else if( localVarResponseHttpContentTypes.find(utility::conversions::to_string_t("multipart/form-data")) != localVarResponseHttpContentTypes.end() )
|
|
{
|
|
localVarResponseHttpContentType = utility::conversions::to_string_t("multipart/form-data");
|
|
}
|
|
else
|
|
{
|
|
throw ApiException(400, utility::conversions::to_string_t("PetApi->findPetsByTags does not produce any supported media type"));
|
|
}
|
|
|
|
localVarHeaderParams[utility::conversions::to_string_t("Accept")] = localVarResponseHttpContentType;
|
|
|
|
std::unordered_set<utility::string_t> localVarConsumeHttpContentTypes;
|
|
|
|
{
|
|
localVarQueryParams[utility::conversions::to_string_t("tags")] = ApiClient::parameterToString(tags);
|
|
}
|
|
|
|
std::shared_ptr<IHttpBody> localVarHttpBody;
|
|
utility::string_t localVarRequestHttpContentType;
|
|
|
|
// use JSON if possible
|
|
if ( localVarConsumeHttpContentTypes.size() == 0 || localVarConsumeHttpContentTypes.find(utility::conversions::to_string_t("application/json")) != localVarConsumeHttpContentTypes.end() )
|
|
{
|
|
localVarRequestHttpContentType = utility::conversions::to_string_t("application/json");
|
|
}
|
|
// multipart formdata
|
|
else if( localVarConsumeHttpContentTypes.find(utility::conversions::to_string_t("multipart/form-data")) != localVarConsumeHttpContentTypes.end() )
|
|
{
|
|
localVarRequestHttpContentType = utility::conversions::to_string_t("multipart/form-data");
|
|
}
|
|
else
|
|
{
|
|
throw ApiException(415, utility::conversions::to_string_t("PetApi->findPetsByTags does not consume any supported media type"));
|
|
}
|
|
|
|
// authentication (petstore_auth) required
|
|
// oauth2 authentication is added automatically as part of the http_client_config
|
|
|
|
return m_ApiClient->callApi(localVarPath, utility::conversions::to_string_t("GET"), localVarQueryParams, localVarHttpBody, localVarHeaderParams, localVarFormParams, localVarFileParams, localVarRequestHttpContentType)
|
|
.then([=](web::http::http_response localVarResponse)
|
|
{
|
|
if (m_ApiClient->getResponseHandler())
|
|
{
|
|
m_ApiClient->getResponseHandler()(localVarResponse.status_code(), localVarResponse.headers());
|
|
}
|
|
|
|
// 1xx - informational : OK
|
|
// 2xx - successful : OK
|
|
// 3xx - redirection : OK
|
|
// 4xx - client error : not OK
|
|
// 5xx - client error : not OK
|
|
if (localVarResponse.status_code() >= 400)
|
|
{
|
|
throw ApiException(localVarResponse.status_code()
|
|
, utility::conversions::to_string_t("error calling findPetsByTags: ") + localVarResponse.reason_phrase()
|
|
, std::make_shared<std::stringstream>(localVarResponse.extract_utf8string(true).get()));
|
|
}
|
|
|
|
// check response content type
|
|
if(localVarResponse.headers().has(utility::conversions::to_string_t("Content-Type")))
|
|
{
|
|
utility::string_t localVarContentType = localVarResponse.headers()[utility::conversions::to_string_t("Content-Type")];
|
|
if( localVarContentType.find(localVarResponseHttpContentType) == std::string::npos )
|
|
{
|
|
throw ApiException(500
|
|
, utility::conversions::to_string_t("error calling findPetsByTags: unexpected response type: ") + localVarContentType
|
|
, std::make_shared<std::stringstream>(localVarResponse.extract_utf8string(true).get()));
|
|
}
|
|
}
|
|
|
|
return localVarResponse.extract_string();
|
|
})
|
|
.then([=](utility::string_t localVarResponse)
|
|
{
|
|
std::vector<std::shared_ptr<Pet>> localVarResult;
|
|
|
|
if(localVarResponseHttpContentType == utility::conversions::to_string_t("application/json"))
|
|
{
|
|
web::json::value localVarJson = web::json::value::parse(localVarResponse);
|
|
|
|
for( auto& localVarItem : localVarJson.as_array() )
|
|
{
|
|
std::shared_ptr<Pet> localVarItemObj(new Pet());
|
|
localVarItemObj->fromJson(localVarItem);
|
|
localVarResult.push_back(localVarItemObj);
|
|
|
|
}
|
|
|
|
}
|
|
// else if(localVarResponseHttpContentType == utility::conversions::to_string_t("multipart/form-data"))
|
|
// {
|
|
// TODO multipart response parsing
|
|
// }
|
|
else
|
|
{
|
|
throw ApiException(500
|
|
, utility::conversions::to_string_t("error calling findPetsByTags: unsupported response type"));
|
|
}
|
|
|
|
return localVarResult;
|
|
});
|
|
}
|
|
pplx::task<std::shared_ptr<Pet>> PetApi::getPetById(int64_t petId)
|
|
{
|
|
|
|
|
|
std::shared_ptr<ApiConfiguration> localVarApiConfiguration( m_ApiClient->getConfiguration() );
|
|
utility::string_t localVarPath = utility::conversions::to_string_t("/pet/{petId}");
|
|
boost::replace_all(localVarPath, utility::conversions::to_string_t("{") + utility::conversions::to_string_t("petId") + utility::conversions::to_string_t("}"), ApiClient::parameterToString(petId));
|
|
|
|
std::map<utility::string_t, utility::string_t> localVarQueryParams;
|
|
std::map<utility::string_t, utility::string_t> localVarHeaderParams( localVarApiConfiguration->getDefaultHeaders() );
|
|
std::map<utility::string_t, utility::string_t> localVarFormParams;
|
|
std::map<utility::string_t, std::shared_ptr<HttpContent>> localVarFileParams;
|
|
|
|
std::unordered_set<utility::string_t> localVarResponseHttpContentTypes;
|
|
localVarResponseHttpContentTypes.insert( utility::conversions::to_string_t("application/xml") );
|
|
localVarResponseHttpContentTypes.insert( utility::conversions::to_string_t("application/json") );
|
|
|
|
utility::string_t localVarResponseHttpContentType;
|
|
|
|
// use JSON if possible
|
|
if ( localVarResponseHttpContentTypes.size() == 0 )
|
|
{
|
|
localVarResponseHttpContentType = utility::conversions::to_string_t("application/json");
|
|
}
|
|
// JSON
|
|
else if ( localVarResponseHttpContentTypes.find(utility::conversions::to_string_t("application/json")) != localVarResponseHttpContentTypes.end() )
|
|
{
|
|
localVarResponseHttpContentType = utility::conversions::to_string_t("application/json");
|
|
}
|
|
// multipart formdata
|
|
else if( localVarResponseHttpContentTypes.find(utility::conversions::to_string_t("multipart/form-data")) != localVarResponseHttpContentTypes.end() )
|
|
{
|
|
localVarResponseHttpContentType = utility::conversions::to_string_t("multipart/form-data");
|
|
}
|
|
else
|
|
{
|
|
throw ApiException(400, utility::conversions::to_string_t("PetApi->getPetById does not produce any supported media type"));
|
|
}
|
|
|
|
localVarHeaderParams[utility::conversions::to_string_t("Accept")] = localVarResponseHttpContentType;
|
|
|
|
std::unordered_set<utility::string_t> localVarConsumeHttpContentTypes;
|
|
|
|
|
|
std::shared_ptr<IHttpBody> localVarHttpBody;
|
|
utility::string_t localVarRequestHttpContentType;
|
|
|
|
// use JSON if possible
|
|
if ( localVarConsumeHttpContentTypes.size() == 0 || localVarConsumeHttpContentTypes.find(utility::conversions::to_string_t("application/json")) != localVarConsumeHttpContentTypes.end() )
|
|
{
|
|
localVarRequestHttpContentType = utility::conversions::to_string_t("application/json");
|
|
}
|
|
// multipart formdata
|
|
else if( localVarConsumeHttpContentTypes.find(utility::conversions::to_string_t("multipart/form-data")) != localVarConsumeHttpContentTypes.end() )
|
|
{
|
|
localVarRequestHttpContentType = utility::conversions::to_string_t("multipart/form-data");
|
|
}
|
|
else
|
|
{
|
|
throw ApiException(415, utility::conversions::to_string_t("PetApi->getPetById does not consume any supported media type"));
|
|
}
|
|
|
|
// authentication (api_key) required
|
|
{
|
|
utility::string_t localVarApiKey = localVarApiConfiguration->getApiKey(utility::conversions::to_string_t("api_key"));
|
|
if ( localVarApiKey.size() > 0 )
|
|
{
|
|
localVarHeaderParams[utility::conversions::to_string_t("api_key")] = localVarApiKey;
|
|
}
|
|
}
|
|
|
|
return m_ApiClient->callApi(localVarPath, utility::conversions::to_string_t("GET"), localVarQueryParams, localVarHttpBody, localVarHeaderParams, localVarFormParams, localVarFileParams, localVarRequestHttpContentType)
|
|
.then([=](web::http::http_response localVarResponse)
|
|
{
|
|
if (m_ApiClient->getResponseHandler())
|
|
{
|
|
m_ApiClient->getResponseHandler()(localVarResponse.status_code(), localVarResponse.headers());
|
|
}
|
|
|
|
// 1xx - informational : OK
|
|
// 2xx - successful : OK
|
|
// 3xx - redirection : OK
|
|
// 4xx - client error : not OK
|
|
// 5xx - client error : not OK
|
|
if (localVarResponse.status_code() >= 400)
|
|
{
|
|
throw ApiException(localVarResponse.status_code()
|
|
, utility::conversions::to_string_t("error calling getPetById: ") + localVarResponse.reason_phrase()
|
|
, std::make_shared<std::stringstream>(localVarResponse.extract_utf8string(true).get()));
|
|
}
|
|
|
|
// check response content type
|
|
if(localVarResponse.headers().has(utility::conversions::to_string_t("Content-Type")))
|
|
{
|
|
utility::string_t localVarContentType = localVarResponse.headers()[utility::conversions::to_string_t("Content-Type")];
|
|
if( localVarContentType.find(localVarResponseHttpContentType) == std::string::npos )
|
|
{
|
|
throw ApiException(500
|
|
, utility::conversions::to_string_t("error calling getPetById: unexpected response type: ") + localVarContentType
|
|
, std::make_shared<std::stringstream>(localVarResponse.extract_utf8string(true).get()));
|
|
}
|
|
}
|
|
|
|
return localVarResponse.extract_string();
|
|
})
|
|
.then([=](utility::string_t localVarResponse)
|
|
{
|
|
std::shared_ptr<Pet> localVarResult(new Pet());
|
|
|
|
if(localVarResponseHttpContentType == utility::conversions::to_string_t("application/json"))
|
|
{
|
|
web::json::value localVarJson = web::json::value::parse(localVarResponse);
|
|
|
|
localVarResult->fromJson(localVarJson);
|
|
}
|
|
// else if(localVarResponseHttpContentType == utility::conversions::to_string_t("multipart/form-data"))
|
|
// {
|
|
// TODO multipart response parsing
|
|
// }
|
|
else
|
|
{
|
|
throw ApiException(500
|
|
, utility::conversions::to_string_t("error calling getPetById: unsupported response type"));
|
|
}
|
|
|
|
return localVarResult;
|
|
});
|
|
}
|
|
pplx::task<void> PetApi::updatePet(std::shared_ptr<Pet> pet)
|
|
{
|
|
|
|
// verify the required parameter 'pet' is set
|
|
if (pet == nullptr)
|
|
{
|
|
throw ApiException(400, utility::conversions::to_string_t("Missing required parameter 'pet' when calling PetApi->updatePet"));
|
|
}
|
|
|
|
|
|
std::shared_ptr<ApiConfiguration> localVarApiConfiguration( m_ApiClient->getConfiguration() );
|
|
utility::string_t localVarPath = utility::conversions::to_string_t("/pet");
|
|
|
|
std::map<utility::string_t, utility::string_t> localVarQueryParams;
|
|
std::map<utility::string_t, utility::string_t> localVarHeaderParams( localVarApiConfiguration->getDefaultHeaders() );
|
|
std::map<utility::string_t, utility::string_t> localVarFormParams;
|
|
std::map<utility::string_t, std::shared_ptr<HttpContent>> localVarFileParams;
|
|
|
|
std::unordered_set<utility::string_t> localVarResponseHttpContentTypes;
|
|
|
|
utility::string_t localVarResponseHttpContentType;
|
|
|
|
// use JSON if possible
|
|
if ( localVarResponseHttpContentTypes.size() == 0 )
|
|
{
|
|
localVarResponseHttpContentType = utility::conversions::to_string_t("application/json");
|
|
}
|
|
// JSON
|
|
else if ( localVarResponseHttpContentTypes.find(utility::conversions::to_string_t("application/json")) != localVarResponseHttpContentTypes.end() )
|
|
{
|
|
localVarResponseHttpContentType = utility::conversions::to_string_t("application/json");
|
|
}
|
|
// multipart formdata
|
|
else if( localVarResponseHttpContentTypes.find(utility::conversions::to_string_t("multipart/form-data")) != localVarResponseHttpContentTypes.end() )
|
|
{
|
|
localVarResponseHttpContentType = utility::conversions::to_string_t("multipart/form-data");
|
|
}
|
|
else
|
|
{
|
|
throw ApiException(400, utility::conversions::to_string_t("PetApi->updatePet does not produce any supported media type"));
|
|
}
|
|
|
|
localVarHeaderParams[utility::conversions::to_string_t("Accept")] = localVarResponseHttpContentType;
|
|
|
|
std::unordered_set<utility::string_t> localVarConsumeHttpContentTypes;
|
|
localVarConsumeHttpContentTypes.insert( utility::conversions::to_string_t("application/json") );
|
|
localVarConsumeHttpContentTypes.insert( utility::conversions::to_string_t("application/xml") );
|
|
|
|
|
|
std::shared_ptr<IHttpBody> localVarHttpBody;
|
|
utility::string_t localVarRequestHttpContentType;
|
|
|
|
// use JSON if possible
|
|
if ( localVarConsumeHttpContentTypes.size() == 0 || localVarConsumeHttpContentTypes.find(utility::conversions::to_string_t("application/json")) != localVarConsumeHttpContentTypes.end() )
|
|
{
|
|
localVarRequestHttpContentType = utility::conversions::to_string_t("application/json");
|
|
web::json::value localVarJson;
|
|
|
|
localVarJson = ModelBase::toJson(pet);
|
|
|
|
|
|
localVarHttpBody = std::shared_ptr<IHttpBody>( new JsonBody( localVarJson ) );
|
|
}
|
|
// multipart formdata
|
|
else if( localVarConsumeHttpContentTypes.find(utility::conversions::to_string_t("multipart/form-data")) != localVarConsumeHttpContentTypes.end() )
|
|
{
|
|
localVarRequestHttpContentType = utility::conversions::to_string_t("multipart/form-data");
|
|
std::shared_ptr<MultipartFormData> localVarMultipart(new MultipartFormData);
|
|
|
|
if(pet.get())
|
|
{
|
|
pet->toMultipart(localVarMultipart, utility::conversions::to_string_t("pet"));
|
|
}
|
|
|
|
localVarHttpBody = localVarMultipart;
|
|
localVarRequestHttpContentType += utility::conversions::to_string_t("; boundary=") + localVarMultipart->getBoundary();
|
|
}
|
|
else
|
|
{
|
|
throw ApiException(415, utility::conversions::to_string_t("PetApi->updatePet does not consume any supported media type"));
|
|
}
|
|
|
|
// authentication (petstore_auth) required
|
|
// oauth2 authentication is added automatically as part of the http_client_config
|
|
|
|
return m_ApiClient->callApi(localVarPath, utility::conversions::to_string_t("PUT"), localVarQueryParams, localVarHttpBody, localVarHeaderParams, localVarFormParams, localVarFileParams, localVarRequestHttpContentType)
|
|
.then([=](web::http::http_response localVarResponse)
|
|
{
|
|
if (m_ApiClient->getResponseHandler())
|
|
{
|
|
m_ApiClient->getResponseHandler()(localVarResponse.status_code(), localVarResponse.headers());
|
|
}
|
|
|
|
// 1xx - informational : OK
|
|
// 2xx - successful : OK
|
|
// 3xx - redirection : OK
|
|
// 4xx - client error : not OK
|
|
// 5xx - client error : not OK
|
|
if (localVarResponse.status_code() >= 400)
|
|
{
|
|
throw ApiException(localVarResponse.status_code()
|
|
, utility::conversions::to_string_t("error calling updatePet: ") + localVarResponse.reason_phrase()
|
|
, std::make_shared<std::stringstream>(localVarResponse.extract_utf8string(true).get()));
|
|
}
|
|
|
|
// check response content type
|
|
if(localVarResponse.headers().has(utility::conversions::to_string_t("Content-Type")))
|
|
{
|
|
utility::string_t localVarContentType = localVarResponse.headers()[utility::conversions::to_string_t("Content-Type")];
|
|
if( localVarContentType.find(localVarResponseHttpContentType) == std::string::npos )
|
|
{
|
|
throw ApiException(500
|
|
, utility::conversions::to_string_t("error calling updatePet: unexpected response type: ") + localVarContentType
|
|
, std::make_shared<std::stringstream>(localVarResponse.extract_utf8string(true).get()));
|
|
}
|
|
}
|
|
|
|
return localVarResponse.extract_string();
|
|
})
|
|
.then([=](utility::string_t localVarResponse)
|
|
{
|
|
return void();
|
|
});
|
|
}
|
|
pplx::task<void> PetApi::updatePetWithForm(int64_t petId, boost::optional<utility::string_t> name, boost::optional<utility::string_t> status)
|
|
{
|
|
|
|
|
|
std::shared_ptr<ApiConfiguration> localVarApiConfiguration( m_ApiClient->getConfiguration() );
|
|
utility::string_t localVarPath = utility::conversions::to_string_t("/pet/{petId}");
|
|
boost::replace_all(localVarPath, utility::conversions::to_string_t("{") + utility::conversions::to_string_t("petId") + utility::conversions::to_string_t("}"), ApiClient::parameterToString(petId));
|
|
|
|
std::map<utility::string_t, utility::string_t> localVarQueryParams;
|
|
std::map<utility::string_t, utility::string_t> localVarHeaderParams( localVarApiConfiguration->getDefaultHeaders() );
|
|
std::map<utility::string_t, utility::string_t> localVarFormParams;
|
|
std::map<utility::string_t, std::shared_ptr<HttpContent>> localVarFileParams;
|
|
|
|
std::unordered_set<utility::string_t> localVarResponseHttpContentTypes;
|
|
|
|
utility::string_t localVarResponseHttpContentType;
|
|
|
|
// use JSON if possible
|
|
if ( localVarResponseHttpContentTypes.size() == 0 )
|
|
{
|
|
localVarResponseHttpContentType = utility::conversions::to_string_t("application/json");
|
|
}
|
|
// JSON
|
|
else if ( localVarResponseHttpContentTypes.find(utility::conversions::to_string_t("application/json")) != localVarResponseHttpContentTypes.end() )
|
|
{
|
|
localVarResponseHttpContentType = utility::conversions::to_string_t("application/json");
|
|
}
|
|
// multipart formdata
|
|
else if( localVarResponseHttpContentTypes.find(utility::conversions::to_string_t("multipart/form-data")) != localVarResponseHttpContentTypes.end() )
|
|
{
|
|
localVarResponseHttpContentType = utility::conversions::to_string_t("multipart/form-data");
|
|
}
|
|
else
|
|
{
|
|
throw ApiException(400, utility::conversions::to_string_t("PetApi->updatePetWithForm does not produce any supported media type"));
|
|
}
|
|
|
|
localVarHeaderParams[utility::conversions::to_string_t("Accept")] = localVarResponseHttpContentType;
|
|
|
|
std::unordered_set<utility::string_t> localVarConsumeHttpContentTypes;
|
|
localVarConsumeHttpContentTypes.insert( utility::conversions::to_string_t("application/x-www-form-urlencoded") );
|
|
|
|
if (name)
|
|
{
|
|
localVarFormParams[ utility::conversions::to_string_t("name") ] = ApiClient::parameterToString(*name);
|
|
}
|
|
if (status)
|
|
{
|
|
localVarFormParams[ utility::conversions::to_string_t("status") ] = ApiClient::parameterToString(*status);
|
|
}
|
|
|
|
std::shared_ptr<IHttpBody> localVarHttpBody;
|
|
utility::string_t localVarRequestHttpContentType;
|
|
|
|
// use JSON if possible
|
|
if ( localVarConsumeHttpContentTypes.size() == 0 || localVarConsumeHttpContentTypes.find(utility::conversions::to_string_t("application/json")) != localVarConsumeHttpContentTypes.end() )
|
|
{
|
|
localVarRequestHttpContentType = utility::conversions::to_string_t("application/json");
|
|
}
|
|
// multipart formdata
|
|
else if( localVarConsumeHttpContentTypes.find(utility::conversions::to_string_t("multipart/form-data")) != localVarConsumeHttpContentTypes.end() )
|
|
{
|
|
localVarRequestHttpContentType = utility::conversions::to_string_t("multipart/form-data");
|
|
}
|
|
else
|
|
{
|
|
throw ApiException(415, utility::conversions::to_string_t("PetApi->updatePetWithForm does not consume any supported media type"));
|
|
}
|
|
|
|
// authentication (petstore_auth) required
|
|
// oauth2 authentication is added automatically as part of the http_client_config
|
|
|
|
return m_ApiClient->callApi(localVarPath, utility::conversions::to_string_t("POST"), localVarQueryParams, localVarHttpBody, localVarHeaderParams, localVarFormParams, localVarFileParams, localVarRequestHttpContentType)
|
|
.then([=](web::http::http_response localVarResponse)
|
|
{
|
|
if (m_ApiClient->getResponseHandler())
|
|
{
|
|
m_ApiClient->getResponseHandler()(localVarResponse.status_code(), localVarResponse.headers());
|
|
}
|
|
|
|
// 1xx - informational : OK
|
|
// 2xx - successful : OK
|
|
// 3xx - redirection : OK
|
|
// 4xx - client error : not OK
|
|
// 5xx - client error : not OK
|
|
if (localVarResponse.status_code() >= 400)
|
|
{
|
|
throw ApiException(localVarResponse.status_code()
|
|
, utility::conversions::to_string_t("error calling updatePetWithForm: ") + localVarResponse.reason_phrase()
|
|
, std::make_shared<std::stringstream>(localVarResponse.extract_utf8string(true).get()));
|
|
}
|
|
|
|
// check response content type
|
|
if(localVarResponse.headers().has(utility::conversions::to_string_t("Content-Type")))
|
|
{
|
|
utility::string_t localVarContentType = localVarResponse.headers()[utility::conversions::to_string_t("Content-Type")];
|
|
if( localVarContentType.find(localVarResponseHttpContentType) == std::string::npos )
|
|
{
|
|
throw ApiException(500
|
|
, utility::conversions::to_string_t("error calling updatePetWithForm: unexpected response type: ") + localVarContentType
|
|
, std::make_shared<std::stringstream>(localVarResponse.extract_utf8string(true).get()));
|
|
}
|
|
}
|
|
|
|
return localVarResponse.extract_string();
|
|
})
|
|
.then([=](utility::string_t localVarResponse)
|
|
{
|
|
return void();
|
|
});
|
|
}
|
|
pplx::task<std::shared_ptr<ApiResponse>> PetApi::uploadFile(int64_t petId, boost::optional<utility::string_t> additionalMetadata, boost::optional<std::shared_ptr<HttpContent>> file)
|
|
{
|
|
|
|
|
|
std::shared_ptr<ApiConfiguration> localVarApiConfiguration( m_ApiClient->getConfiguration() );
|
|
utility::string_t localVarPath = utility::conversions::to_string_t("/pet/{petId}/uploadImage");
|
|
boost::replace_all(localVarPath, utility::conversions::to_string_t("{") + utility::conversions::to_string_t("petId") + utility::conversions::to_string_t("}"), ApiClient::parameterToString(petId));
|
|
|
|
std::map<utility::string_t, utility::string_t> localVarQueryParams;
|
|
std::map<utility::string_t, utility::string_t> localVarHeaderParams( localVarApiConfiguration->getDefaultHeaders() );
|
|
std::map<utility::string_t, utility::string_t> localVarFormParams;
|
|
std::map<utility::string_t, std::shared_ptr<HttpContent>> localVarFileParams;
|
|
|
|
std::unordered_set<utility::string_t> localVarResponseHttpContentTypes;
|
|
localVarResponseHttpContentTypes.insert( utility::conversions::to_string_t("application/json") );
|
|
|
|
utility::string_t localVarResponseHttpContentType;
|
|
|
|
// use JSON if possible
|
|
if ( localVarResponseHttpContentTypes.size() == 0 )
|
|
{
|
|
localVarResponseHttpContentType = utility::conversions::to_string_t("application/json");
|
|
}
|
|
// JSON
|
|
else if ( localVarResponseHttpContentTypes.find(utility::conversions::to_string_t("application/json")) != localVarResponseHttpContentTypes.end() )
|
|
{
|
|
localVarResponseHttpContentType = utility::conversions::to_string_t("application/json");
|
|
}
|
|
// multipart formdata
|
|
else if( localVarResponseHttpContentTypes.find(utility::conversions::to_string_t("multipart/form-data")) != localVarResponseHttpContentTypes.end() )
|
|
{
|
|
localVarResponseHttpContentType = utility::conversions::to_string_t("multipart/form-data");
|
|
}
|
|
else
|
|
{
|
|
throw ApiException(400, utility::conversions::to_string_t("PetApi->uploadFile does not produce any supported media type"));
|
|
}
|
|
|
|
localVarHeaderParams[utility::conversions::to_string_t("Accept")] = localVarResponseHttpContentType;
|
|
|
|
std::unordered_set<utility::string_t> localVarConsumeHttpContentTypes;
|
|
localVarConsumeHttpContentTypes.insert( utility::conversions::to_string_t("multipart/form-data") );
|
|
|
|
if (additionalMetadata)
|
|
{
|
|
localVarFormParams[ utility::conversions::to_string_t("additionalMetadata") ] = ApiClient::parameterToString(*additionalMetadata);
|
|
}
|
|
if (file && *file != nullptr)
|
|
{
|
|
localVarFileParams[ utility::conversions::to_string_t("file") ] = *file;
|
|
}
|
|
|
|
std::shared_ptr<IHttpBody> localVarHttpBody;
|
|
utility::string_t localVarRequestHttpContentType;
|
|
|
|
// use JSON if possible
|
|
if ( localVarConsumeHttpContentTypes.size() == 0 || localVarConsumeHttpContentTypes.find(utility::conversions::to_string_t("application/json")) != localVarConsumeHttpContentTypes.end() )
|
|
{
|
|
localVarRequestHttpContentType = utility::conversions::to_string_t("application/json");
|
|
}
|
|
// multipart formdata
|
|
else if( localVarConsumeHttpContentTypes.find(utility::conversions::to_string_t("multipart/form-data")) != localVarConsumeHttpContentTypes.end() )
|
|
{
|
|
localVarRequestHttpContentType = utility::conversions::to_string_t("multipart/form-data");
|
|
}
|
|
else
|
|
{
|
|
throw ApiException(415, utility::conversions::to_string_t("PetApi->uploadFile does not consume any supported media type"));
|
|
}
|
|
|
|
// authentication (petstore_auth) required
|
|
// oauth2 authentication is added automatically as part of the http_client_config
|
|
|
|
return m_ApiClient->callApi(localVarPath, utility::conversions::to_string_t("POST"), localVarQueryParams, localVarHttpBody, localVarHeaderParams, localVarFormParams, localVarFileParams, localVarRequestHttpContentType)
|
|
.then([=](web::http::http_response localVarResponse)
|
|
{
|
|
if (m_ApiClient->getResponseHandler())
|
|
{
|
|
m_ApiClient->getResponseHandler()(localVarResponse.status_code(), localVarResponse.headers());
|
|
}
|
|
|
|
// 1xx - informational : OK
|
|
// 2xx - successful : OK
|
|
// 3xx - redirection : OK
|
|
// 4xx - client error : not OK
|
|
// 5xx - client error : not OK
|
|
if (localVarResponse.status_code() >= 400)
|
|
{
|
|
throw ApiException(localVarResponse.status_code()
|
|
, utility::conversions::to_string_t("error calling uploadFile: ") + localVarResponse.reason_phrase()
|
|
, std::make_shared<std::stringstream>(localVarResponse.extract_utf8string(true).get()));
|
|
}
|
|
|
|
// check response content type
|
|
if(localVarResponse.headers().has(utility::conversions::to_string_t("Content-Type")))
|
|
{
|
|
utility::string_t localVarContentType = localVarResponse.headers()[utility::conversions::to_string_t("Content-Type")];
|
|
if( localVarContentType.find(localVarResponseHttpContentType) == std::string::npos )
|
|
{
|
|
throw ApiException(500
|
|
, utility::conversions::to_string_t("error calling uploadFile: unexpected response type: ") + localVarContentType
|
|
, std::make_shared<std::stringstream>(localVarResponse.extract_utf8string(true).get()));
|
|
}
|
|
}
|
|
|
|
return localVarResponse.extract_string();
|
|
})
|
|
.then([=](utility::string_t localVarResponse)
|
|
{
|
|
std::shared_ptr<ApiResponse> localVarResult(new ApiResponse());
|
|
|
|
if(localVarResponseHttpContentType == utility::conversions::to_string_t("application/json"))
|
|
{
|
|
web::json::value localVarJson = web::json::value::parse(localVarResponse);
|
|
|
|
localVarResult->fromJson(localVarJson);
|
|
}
|
|
// else if(localVarResponseHttpContentType == utility::conversions::to_string_t("multipart/form-data"))
|
|
// {
|
|
// TODO multipart response parsing
|
|
// }
|
|
else
|
|
{
|
|
throw ApiException(500
|
|
, utility::conversions::to_string_t("error calling uploadFile: unsupported response type"));
|
|
}
|
|
|
|
return localVarResult;
|
|
});
|
|
}
|
|
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|