#include <huaweicloud/kms/v2/KmsClient.h>
#include <huaweicloud/core/utils/MultipartFormData.h>
#include <unordered_set>
#include <boost/algorithm/string/replace.hpp>
template <typename T>
std::string toString(const T value)
{
std::ostringstream out;
out << std::setprecision(std::numeric_limits<T>::digits10) << std::fixed << value;
return out.str();
}
namespace HuaweiCloud {
namespace Sdk {
namespace Kms {
namespace V2 {
using namespace HuaweiCloud::Sdk::Kms::V2::Model;
KmsClient::KmsClient()
{
}
KmsClient::~KmsClient()
{
}
ClientBuilder<KmsClient> KmsClient::newBuilder()
{
return ClientBuilder<KmsClient>("");
}
std::shared_ptr<BatchCreateKmsTagsResponse> KmsClient::batchCreateKmsTags(BatchCreateKmsTagsRequest &request)
{
std::string localVarPath = "/v1.0/{project_id}/kms/{key_id}/tags/action";
std::map<std::string, std::string> localVarQueryParams;
std::map<std::string, std::string> localVarHeaderParams;
std::map<std::string, std::string> localVarFormParams;
std::map<std::string, std::string> localVarPathParams;
std::map<std::string, std::shared_ptr<HttpContent>> localVarFileParams;
localVarPathParams["key_id"] = parameterToString(request.getKeyId());
bool isJson = false;
bool isMultiPart = false;
std::string contentType = getContentType("application/json;charset=UTF-8", isJson, isMultiPart);
localVarHeaderParams["Content-Type"] = contentType;
std::string localVarHttpBody;
if (isJson) {
web::json::value localVarJson;
localVarJson = ModelBase::toJson(request.getBody());
localVarHttpBody = utility::conversions::to_utf8string(localVarJson.serialize());
}
std::unique_ptr<HttpResponse> res = callApi("POST", localVarPath, localVarPathParams, localVarQueryParams, localVarHeaderParams, localVarHttpBody);
std::shared_ptr<BatchCreateKmsTagsResponse> localVarResult = std::make_shared<BatchCreateKmsTagsResponse>();
if (!res->getHttpBody().empty()) {
utility::string_t localVarResponse = utility::conversions::to_string_t(res->getHttpBody());
web::json::value localVarJson = web::json::value::parse(localVarResponse);
localVarResult->fromJson(localVarJson);
}
localVarResult->setStatusCode(res->getStatusCode());
localVarResult->setHeaderParams(res->getHeaderParams());
localVarResult->setHttpBody(res->getHttpBody());
return localVarResult;
}
std::shared_ptr<CancelGrantResponse> KmsClient::cancelGrant(CancelGrantRequest &request)
{
std::string localVarPath = "/v1.0/{project_id}/kms/revoke-grant";
std::map<std::string, std::string> localVarQueryParams;
std::map<std::string, std::string> localVarHeaderParams;
std::map<std::string, std::string> localVarFormParams;
std::map<std::string, std::string> localVarPathParams;
std::map<std::string, std::shared_ptr<HttpContent>> localVarFileParams;
bool isJson = false;
bool isMultiPart = false;
std::string contentType = getContentType("application/json;charset=UTF-8", isJson, isMultiPart);
localVarHeaderParams["Content-Type"] = contentType;
std::string localVarHttpBody;
if (isJson) {
web::json::value localVarJson;
localVarJson = ModelBase::toJson(request.getBody());
localVarHttpBody = utility::conversions::to_utf8string(localVarJson.serialize());
}
std::unique_ptr<HttpResponse> res = callApi("POST", localVarPath, localVarPathParams, localVarQueryParams, localVarHeaderParams, localVarHttpBody);
std::shared_ptr<CancelGrantResponse> localVarResult = std::make_shared<CancelGrantResponse>();
if (!res->getHttpBody().empty()) {
utility::string_t localVarResponse = utility::conversions::to_string_t(res->getHttpBody());
web::json::value localVarJson = web::json::value::parse(localVarResponse);
localVarResult->fromJson(localVarJson);
}
localVarResult->setStatusCode(res->getStatusCode());
localVarResult->setHeaderParams(res->getHeaderParams());
localVarResult->setHttpBody(res->getHttpBody());
return localVarResult;
}
std::shared_ptr<CancelKeyDeletionResponse> KmsClient::cancelKeyDeletion(CancelKeyDeletionRequest &request)
{
std::string localVarPath = "/v1.0/{project_id}/kms/cancel-key-deletion";
std::map<std::string, std::string> localVarQueryParams;
std::map<std::string, std::string> localVarHeaderParams;
std::map<std::string, std::string> localVarFormParams;
std::map<std::string, std::string> localVarPathParams;
std::map<std::string, std::shared_ptr<HttpContent>> localVarFileParams;
bool isJson = false;
bool isMultiPart = false;
std::string contentType = getContentType("application/json;charset=UTF-8", isJson, isMultiPart);
localVarHeaderParams["Content-Type"] = contentType;
std::string localVarHttpBody;
if (isJson) {
web::json::value localVarJson;
localVarJson = ModelBase::toJson(request.getBody());
localVarHttpBody = utility::conversions::to_utf8string(localVarJson.serialize());
}
std::unique_ptr<HttpResponse> res = callApi("POST", localVarPath, localVarPathParams, localVarQueryParams, localVarHeaderParams, localVarHttpBody);
std::shared_ptr<CancelKeyDeletionResponse> localVarResult = std::make_shared<CancelKeyDeletionResponse>();
if (!res->getHttpBody().empty()) {
utility::string_t localVarResponse = utility::conversions::to_string_t(res->getHttpBody());
web::json::value localVarJson = web::json::value::parse(localVarResponse);
localVarResult->fromJson(localVarJson);
}
localVarResult->setStatusCode(res->getStatusCode());
localVarResult->setHeaderParams(res->getHeaderParams());
localVarResult->setHttpBody(res->getHttpBody());
return localVarResult;
}
std::shared_ptr<CancelSelfGrantResponse> KmsClient::cancelSelfGrant(CancelSelfGrantRequest &request)
{
std::string localVarPath = "/v1.0/{project_id}/kms/retire-grant";
std::map<std::string, std::string> localVarQueryParams;
std::map<std::string, std::string> localVarHeaderParams;
std::map<std::string, std::string> localVarFormParams;
std::map<std::string, std::string> localVarPathParams;
std::map<std::string, std::shared_ptr<HttpContent>> localVarFileParams;
bool isJson = false;
bool isMultiPart = false;
std::string contentType = getContentType("application/json;charset=UTF-8", isJson, isMultiPart);
localVarHeaderParams["Content-Type"] = contentType;
std::string localVarHttpBody;
if (isJson) {
web::json::value localVarJson;
localVarJson = ModelBase::toJson(request.getBody());
localVarHttpBody = utility::conversions::to_utf8string(localVarJson.serialize());
}
std::unique_ptr<HttpResponse> res = callApi("POST", localVarPath, localVarPathParams, localVarQueryParams, localVarHeaderParams, localVarHttpBody);
std::shared_ptr<CancelSelfGrantResponse> localVarResult = std::make_shared<CancelSelfGrantResponse>();
if (!res->getHttpBody().empty()) {
utility::string_t localVarResponse = utility::conversions::to_string_t(res->getHttpBody());
web::json::value localVarJson = web::json::value::parse(localVarResponse);
localVarResult->fromJson(localVarJson);
}
localVarResult->setStatusCode(res->getStatusCode());
localVarResult->setHeaderParams(res->getHeaderParams());
localVarResult->setHttpBody(res->getHttpBody());
return localVarResult;
}
std::shared_ptr<CreateDatakeyResponse> KmsClient::createDatakey(CreateDatakeyRequest &request)
{
std::string localVarPath = "/v1.0/{project_id}/kms/create-datakey";
std::map<std::string, std::string> localVarQueryParams;
std::map<std::string, std::string> localVarHeaderParams;
std::map<std::string, std::string> localVarFormParams;
std::map<std::string, std::string> localVarPathParams;
std::map<std::string, std::shared_ptr<HttpContent>> localVarFileParams;
bool isJson = false;
bool isMultiPart = false;
std::string contentType = getContentType("application/json;charset=UTF-8", isJson, isMultiPart);
localVarHeaderParams["Content-Type"] = contentType;
std::string localVarHttpBody;
if (isJson) {
web::json::value localVarJson;
localVarJson = ModelBase::toJson(request.getBody());
localVarHttpBody = utility::conversions::to_utf8string(localVarJson.serialize());
}
std::unique_ptr<HttpResponse> res = callApi("POST", localVarPath, localVarPathParams, localVarQueryParams, localVarHeaderParams, localVarHttpBody);
std::shared_ptr<CreateDatakeyResponse> localVarResult = std::make_shared<CreateDatakeyResponse>();
if (!res->getHttpBody().empty()) {
utility::string_t localVarResponse = utility::conversions::to_string_t(res->getHttpBody());
web::json::value localVarJson = web::json::value::parse(localVarResponse);
localVarResult->fromJson(localVarJson);
}
localVarResult->setStatusCode(res->getStatusCode());
localVarResult->setHeaderParams(res->getHeaderParams());
localVarResult->setHttpBody(res->getHttpBody());
return localVarResult;
}
std::shared_ptr<CreateDatakeyWithoutPlaintextResponse> KmsClient::createDatakeyWithoutPlaintext(CreateDatakeyWithoutPlaintextRequest &request)
{
std::string localVarPath = "/v1.0/{project_id}/kms/create-datakey-without-plaintext";
std::map<std::string, std::string> localVarQueryParams;
std::map<std::string, std::string> localVarHeaderParams;
std::map<std::string, std::string> localVarFormParams;
std::map<std::string, std::string> localVarPathParams;
std::map<std::string, std::shared_ptr<HttpContent>> localVarFileParams;
bool isJson = false;
bool isMultiPart = false;
std::string contentType = getContentType("application/json;charset=UTF-8", isJson, isMultiPart);
localVarHeaderParams["Content-Type"] = contentType;
std::string localVarHttpBody;
if (isJson) {
web::json::value localVarJson;
localVarJson = ModelBase::toJson(request.getBody());
localVarHttpBody = utility::conversions::to_utf8string(localVarJson.serialize());
}
std::unique_ptr<HttpResponse> res = callApi("POST", localVarPath, localVarPathParams, localVarQueryParams, localVarHeaderParams, localVarHttpBody);
std::shared_ptr<CreateDatakeyWithoutPlaintextResponse> localVarResult = std::make_shared<CreateDatakeyWithoutPlaintextResponse>();
if (!res->getHttpBody().empty()) {
utility::string_t localVarResponse = utility::conversions::to_string_t(res->getHttpBody());
web::json::value localVarJson = web::json::value::parse(localVarResponse);
localVarResult->fromJson(localVarJson);
}
localVarResult->setStatusCode(res->getStatusCode());
localVarResult->setHeaderParams(res->getHeaderParams());
localVarResult->setHttpBody(res->getHttpBody());
return localVarResult;
}
std::shared_ptr<CreateGrantResponse> KmsClient::createGrant(CreateGrantRequest &request)
{
std::string localVarPath = "/v1.0/{project_id}/kms/create-grant";
std::map<std::string, std::string> localVarQueryParams;
std::map<std::string, std::string> localVarHeaderParams;
std::map<std::string, std::string> localVarFormParams;
std::map<std::string, std::string> localVarPathParams;
std::map<std::string, std::shared_ptr<HttpContent>> localVarFileParams;
bool isJson = false;
bool isMultiPart = false;
std::string contentType = getContentType("application/json;charset=UTF-8", isJson, isMultiPart);
localVarHeaderParams["Content-Type"] = contentType;
std::string localVarHttpBody;
if (isJson) {
web::json::value localVarJson;
localVarJson = ModelBase::toJson(request.getBody());
localVarHttpBody = utility::conversions::to_utf8string(localVarJson.serialize());
}
std::unique_ptr<HttpResponse> res = callApi("POST", localVarPath, localVarPathParams, localVarQueryParams, localVarHeaderParams, localVarHttpBody);
std::shared_ptr<CreateGrantResponse> localVarResult = std::make_shared<CreateGrantResponse>();
if (!res->getHttpBody().empty()) {
utility::string_t localVarResponse = utility::conversions::to_string_t(res->getHttpBody());
web::json::value localVarJson = web::json::value::parse(localVarResponse);
localVarResult->fromJson(localVarJson);
}
localVarResult->setStatusCode(res->getStatusCode());
localVarResult->setHeaderParams(res->getHeaderParams());
localVarResult->setHttpBody(res->getHttpBody());
return localVarResult;
}
std::shared_ptr<CreateKeyResponse> KmsClient::createKey(CreateKeyRequest &request)
{
std::string localVarPath = "/v1.0/{project_id}/kms/create-key";
std::map<std::string, std::string> localVarQueryParams;
std::map<std::string, std::string> localVarHeaderParams;
std::map<std::string, std::string> localVarFormParams;
std::map<std::string, std::string> localVarPathParams;
std::map<std::string, std::shared_ptr<HttpContent>> localVarFileParams;
bool isJson = false;
bool isMultiPart = false;
std::string contentType = getContentType("application/json;charset=UTF-8", isJson, isMultiPart);
localVarHeaderParams["Content-Type"] = contentType;
std::string localVarHttpBody;
if (isJson) {
web::json::value localVarJson;
localVarJson = ModelBase::toJson(request.getBody());
localVarHttpBody = utility::conversions::to_utf8string(localVarJson.serialize());
}
std::unique_ptr<HttpResponse> res = callApi("POST", localVarPath, localVarPathParams, localVarQueryParams, localVarHeaderParams, localVarHttpBody);
std::shared_ptr<CreateKeyResponse> localVarResult = std::make_shared<CreateKeyResponse>();
if (!res->getHttpBody().empty()) {
utility::string_t localVarResponse = utility::conversions::to_string_t(res->getHttpBody());
web::json::value localVarJson = web::json::value::parse(localVarResponse);
localVarResult->fromJson(localVarJson);
}
localVarResult->setStatusCode(res->getStatusCode());
localVarResult->setHeaderParams(res->getHeaderParams());
localVarResult->setHttpBody(res->getHttpBody());
return localVarResult;
}
std::shared_ptr<CreateKeyStoreResponse> KmsClient::createKeyStore(CreateKeyStoreRequest &request)
{
std::string localVarPath = "/v1.0/{project_id}/keystores";
std::map<std::string, std::string> localVarQueryParams;
std::map<std::string, std::string> localVarHeaderParams;
std::map<std::string, std::string> localVarFormParams;
std::map<std::string, std::string> localVarPathParams;
std::map<std::string, std::shared_ptr<HttpContent>> localVarFileParams;
bool isJson = false;
bool isMultiPart = false;
std::string contentType = getContentType("application/json;charset=UTF-8", isJson, isMultiPart);
localVarHeaderParams["Content-Type"] = contentType;
std::string localVarHttpBody;
if (isJson) {
web::json::value localVarJson;
localVarJson = ModelBase::toJson(request.getBody());
localVarHttpBody = utility::conversions::to_utf8string(localVarJson.serialize());
}
std::unique_ptr<HttpResponse> res = callApi("POST", localVarPath, localVarPathParams, localVarQueryParams, localVarHeaderParams, localVarHttpBody);
std::shared_ptr<CreateKeyStoreResponse> localVarResult = std::make_shared<CreateKeyStoreResponse>();
if (!res->getHttpBody().empty()) {
utility::string_t localVarResponse = utility::conversions::to_string_t(res->getHttpBody());
web::json::value localVarJson = web::json::value::parse(localVarResponse);
localVarResult->fromJson(localVarJson);
}
localVarResult->setStatusCode(res->getStatusCode());
localVarResult->setHeaderParams(res->getHeaderParams());
localVarResult->setHttpBody(res->getHttpBody());
return localVarResult;
}
std::shared_ptr<CreateKmsTagResponse> KmsClient::createKmsTag(CreateKmsTagRequest &request)
{
std::string localVarPath = "/v1.0/{project_id}/kms/{key_id}/tags";
std::map<std::string, std::string> localVarQueryParams;
std::map<std::string, std::string> localVarHeaderParams;
std::map<std::string, std::string> localVarFormParams;
std::map<std::string, std::string> localVarPathParams;
std::map<std::string, std::shared_ptr<HttpContent>> localVarFileParams;
localVarPathParams["key_id"] = parameterToString(request.getKeyId());
bool isJson = false;
bool isMultiPart = false;
std::string contentType = getContentType("application/json;charset=UTF-8", isJson, isMultiPart);
localVarHeaderParams["Content-Type"] = contentType;
std::string localVarHttpBody;
if (isJson) {
web::json::value localVarJson;
localVarJson = ModelBase::toJson(request.getBody());
localVarHttpBody = utility::conversions::to_utf8string(localVarJson.serialize());
}
std::unique_ptr<HttpResponse> res = callApi("POST", localVarPath, localVarPathParams, localVarQueryParams, localVarHeaderParams, localVarHttpBody);
std::shared_ptr<CreateKmsTagResponse> localVarResult = std::make_shared<CreateKmsTagResponse>();
if (!res->getHttpBody().empty()) {
utility::string_t localVarResponse = utility::conversions::to_string_t(res->getHttpBody());
web::json::value localVarJson = web::json::value::parse(localVarResponse);
localVarResult->fromJson(localVarJson);
}
localVarResult->setStatusCode(res->getStatusCode());
localVarResult->setHeaderParams(res->getHeaderParams());
localVarResult->setHttpBody(res->getHttpBody());
return localVarResult;
}
std::shared_ptr<CreateParametersForImportResponse> KmsClient::createParametersForImport(CreateParametersForImportRequest &request)
{
std::string localVarPath = "/v1.0/{project_id}/kms/get-parameters-for-import";
std::map<std::string, std::string> localVarQueryParams;
std::map<std::string, std::string> localVarHeaderParams;
std::map<std::string, std::string> localVarFormParams;
std::map<std::string, std::string> localVarPathParams;
std::map<std::string, std::shared_ptr<HttpContent>> localVarFileParams;
bool isJson = false;
bool isMultiPart = false;
std::string contentType = getContentType("application/json;charset=UTF-8", isJson, isMultiPart);
localVarHeaderParams["Content-Type"] = contentType;
std::string localVarHttpBody;
if (isJson) {
web::json::value localVarJson;
localVarJson = ModelBase::toJson(request.getBody());
localVarHttpBody = utility::conversions::to_utf8string(localVarJson.serialize());
}
std::unique_ptr<HttpResponse> res = callApi("POST", localVarPath, localVarPathParams, localVarQueryParams, localVarHeaderParams, localVarHttpBody);
std::shared_ptr<CreateParametersForImportResponse> localVarResult = std::make_shared<CreateParametersForImportResponse>();
if (!res->getHttpBody().empty()) {
utility::string_t localVarResponse = utility::conversions::to_string_t(res->getHttpBody());
web::json::value localVarJson = web::json::value::parse(localVarResponse);
localVarResult->fromJson(localVarJson);
}
localVarResult->setStatusCode(res->getStatusCode());
localVarResult->setHeaderParams(res->getHeaderParams());
localVarResult->setHttpBody(res->getHttpBody());
return localVarResult;
}
std::shared_ptr<CreateRandomResponse> KmsClient::createRandom(CreateRandomRequest &request)
{
std::string localVarPath = "/v1.0/{project_id}/kms/gen-random";
std::map<std::string, std::string> localVarQueryParams;
std::map<std::string, std::string> localVarHeaderParams;
std::map<std::string, std::string> localVarFormParams;
std::map<std::string, std::string> localVarPathParams;
std::map<std::string, std::shared_ptr<HttpContent>> localVarFileParams;
bool isJson = false;
bool isMultiPart = false;
std::string contentType = getContentType("application/json;charset=UTF-8", isJson, isMultiPart);
localVarHeaderParams["Content-Type"] = contentType;
std::string localVarHttpBody;
if (isJson) {
web::json::value localVarJson;
localVarJson = ModelBase::toJson(request.getBody());
localVarHttpBody = utility::conversions::to_utf8string(localVarJson.serialize());
}
std::unique_ptr<HttpResponse> res = callApi("POST", localVarPath, localVarPathParams, localVarQueryParams, localVarHeaderParams, localVarHttpBody);
std::shared_ptr<CreateRandomResponse> localVarResult = std::make_shared<CreateRandomResponse>();
if (!res->getHttpBody().empty()) {
utility::string_t localVarResponse = utility::conversions::to_string_t(res->getHttpBody());
web::json::value localVarJson = web::json::value::parse(localVarResponse);
localVarResult->fromJson(localVarJson);
}
localVarResult->setStatusCode(res->getStatusCode());
localVarResult->setHeaderParams(res->getHeaderParams());
localVarResult->setHttpBody(res->getHttpBody());
return localVarResult;
}
std::shared_ptr<DecryptDataResponse> KmsClient::decryptData(DecryptDataRequest &request)
{
std::string localVarPath = "/v1.0/{project_id}/kms/decrypt-data";
std::map<std::string, std::string> localVarQueryParams;
std::map<std::string, std::string> localVarHeaderParams;
std::map<std::string, std::string> localVarFormParams;
std::map<std::string, std::string> localVarPathParams;
std::map<std::string, std::shared_ptr<HttpContent>> localVarFileParams;
bool isJson = false;
bool isMultiPart = false;
std::string contentType = getContentType("application/json;charset=UTF-8", isJson, isMultiPart);
localVarHeaderParams["Content-Type"] = contentType;
std::string localVarHttpBody;
if (isJson) {
web::json::value localVarJson;
localVarJson = ModelBase::toJson(request.getBody());
localVarHttpBody = utility::conversions::to_utf8string(localVarJson.serialize());
}
std::unique_ptr<HttpResponse> res = callApi("POST", localVarPath, localVarPathParams, localVarQueryParams, localVarHeaderParams, localVarHttpBody);
std::shared_ptr<DecryptDataResponse> localVarResult = std::make_shared<DecryptDataResponse>();
if (!res->getHttpBody().empty()) {
utility::string_t localVarResponse = utility::conversions::to_string_t(res->getHttpBody());
web::json::value localVarJson = web::json::value::parse(localVarResponse);
localVarResult->fromJson(localVarJson);
}
localVarResult->setStatusCode(res->getStatusCode());
localVarResult->setHeaderParams(res->getHeaderParams());
localVarResult->setHttpBody(res->getHttpBody());
return localVarResult;
}
std::shared_ptr<DecryptDatakeyResponse> KmsClient::decryptDatakey(DecryptDatakeyRequest &request)
{
std::string localVarPath = "/v1.0/{project_id}/kms/decrypt-datakey";
std::map<std::string, std::string> localVarQueryParams;
std::map<std::string, std::string> localVarHeaderParams;
std::map<std::string, std::string> localVarFormParams;
std::map<std::string, std::string> localVarPathParams;
std::map<std::string, std::shared_ptr<HttpContent>> localVarFileParams;
bool isJson = false;
bool isMultiPart = false;
std::string contentType = getContentType("application/json;charset=UTF-8", isJson, isMultiPart);
localVarHeaderParams["Content-Type"] = contentType;
std::string localVarHttpBody;
if (isJson) {
web::json::value localVarJson;
localVarJson = ModelBase::toJson(request.getBody());
localVarHttpBody = utility::conversions::to_utf8string(localVarJson.serialize());
}
std::unique_ptr<HttpResponse> res = callApi("POST", localVarPath, localVarPathParams, localVarQueryParams, localVarHeaderParams, localVarHttpBody);
std::shared_ptr<DecryptDatakeyResponse> localVarResult = std::make_shared<DecryptDatakeyResponse>();
if (!res->getHttpBody().empty()) {
utility::string_t localVarResponse = utility::conversions::to_string_t(res->getHttpBody());
web::json::value localVarJson = web::json::value::parse(localVarResponse);
localVarResult->fromJson(localVarJson);
}
localVarResult->setStatusCode(res->getStatusCode());
localVarResult->setHeaderParams(res->getHeaderParams());
localVarResult->setHttpBody(res->getHttpBody());
return localVarResult;
}
std::shared_ptr<DeleteImportedKeyMaterialResponse> KmsClient::deleteImportedKeyMaterial(DeleteImportedKeyMaterialRequest &request)
{
std::string localVarPath = "/v1.0/{project_id}/kms/delete-imported-key-material";
std::map<std::string, std::string> localVarQueryParams;
std::map<std::string, std::string> localVarHeaderParams;
std::map<std::string, std::string> localVarFormParams;
std::map<std::string, std::string> localVarPathParams;
std::map<std::string, std::shared_ptr<HttpContent>> localVarFileParams;
bool isJson = false;
bool isMultiPart = false;
std::string contentType = getContentType("application/json;charset=UTF-8", isJson, isMultiPart);
localVarHeaderParams["Content-Type"] = contentType;
std::string localVarHttpBody;
if (isJson) {
web::json::value localVarJson;
localVarJson = ModelBase::toJson(request.getBody());
localVarHttpBody = utility::conversions::to_utf8string(localVarJson.serialize());
}
std::unique_ptr<HttpResponse> res = callApi("POST", localVarPath, localVarPathParams, localVarQueryParams, localVarHeaderParams, localVarHttpBody);
std::shared_ptr<DeleteImportedKeyMaterialResponse> localVarResult = std::make_shared<DeleteImportedKeyMaterialResponse>();
if (!res->getHttpBody().empty()) {
utility::string_t localVarResponse = utility::conversions::to_string_t(res->getHttpBody());
web::json::value localVarJson = web::json::value::parse(localVarResponse);
localVarResult->fromJson(localVarJson);
}
localVarResult->setStatusCode(res->getStatusCode());
localVarResult->setHeaderParams(res->getHeaderParams());
localVarResult->setHttpBody(res->getHttpBody());
return localVarResult;
}
std::shared_ptr<DeleteKeyResponse> KmsClient::deleteKey(DeleteKeyRequest &request)
{
std::string localVarPath = "/v1.0/{project_id}/kms/schedule-key-deletion";
std::map<std::string, std::string> localVarQueryParams;
std::map<std::string, std::string> localVarHeaderParams;
std::map<std::string, std::string> localVarFormParams;
std::map<std::string, std::string> localVarPathParams;
std::map<std::string, std::shared_ptr<HttpContent>> localVarFileParams;
bool isJson = false;
bool isMultiPart = false;
std::string contentType = getContentType("application/json;charset=UTF-8", isJson, isMultiPart);
localVarHeaderParams["Content-Type"] = contentType;
std::string localVarHttpBody;
if (isJson) {
web::json::value localVarJson;
localVarJson = ModelBase::toJson(request.getBody());
localVarHttpBody = utility::conversions::to_utf8string(localVarJson.serialize());
}
std::unique_ptr<HttpResponse> res = callApi("POST", localVarPath, localVarPathParams, localVarQueryParams, localVarHeaderParams, localVarHttpBody);
std::shared_ptr<DeleteKeyResponse> localVarResult = std::make_shared<DeleteKeyResponse>();
if (!res->getHttpBody().empty()) {
utility::string_t localVarResponse = utility::conversions::to_string_t(res->getHttpBody());
web::json::value localVarJson = web::json::value::parse(localVarResponse);
localVarResult->fromJson(localVarJson);
}
localVarResult->setStatusCode(res->getStatusCode());
localVarResult->setHeaderParams(res->getHeaderParams());
localVarResult->setHttpBody(res->getHttpBody());
return localVarResult;
}
std::shared_ptr<DeleteKeyStoreResponse> KmsClient::deleteKeyStore(DeleteKeyStoreRequest &request)
{
std::string localVarPath = "/v1.0/{project_id}/keystores/{keystore_id}";
std::map<std::string, std::string> localVarQueryParams;
std::map<std::string, std::string> localVarHeaderParams;
std::map<std::string, std::string> localVarFormParams;
std::map<std::string, std::string> localVarPathParams;
std::map<std::string, std::shared_ptr<HttpContent>> localVarFileParams;
localVarPathParams["keystore_id"] = parameterToString(request.getKeystoreId());
bool isJson = false;
bool isMultiPart = false;
std::string contentType = getContentType("application/json", isJson, isMultiPart);
localVarHeaderParams["Content-Type"] = contentType;
std::string localVarHttpBody;
std::unique_ptr<HttpResponse> res = callApi("DELETE", localVarPath, localVarPathParams, localVarQueryParams, localVarHeaderParams, localVarHttpBody);
std::shared_ptr<DeleteKeyStoreResponse> localVarResult = std::make_shared<DeleteKeyStoreResponse>();
if (!res->getHttpBody().empty()) {
utility::string_t localVarResponse = utility::conversions::to_string_t(res->getHttpBody());
web::json::value localVarJson = web::json::value::parse(localVarResponse);
localVarResult->fromJson(localVarJson);
}
localVarResult->setStatusCode(res->getStatusCode());
localVarResult->setHeaderParams(res->getHeaderParams());
localVarResult->setHttpBody(res->getHttpBody());
return localVarResult;
}
std::shared_ptr<DeleteTagResponse> KmsClient::deleteTag(DeleteTagRequest &request)
{
std::string localVarPath = "/v1.0/{project_id}/kms/{key_id}/tags/{key}";
std::map<std::string, std::string> localVarQueryParams;
std::map<std::string, std::string> localVarHeaderParams;
std::map<std::string, std::string> localVarFormParams;
std::map<std::string, std::string> localVarPathParams;
std::map<std::string, std::shared_ptr<HttpContent>> localVarFileParams;
localVarPathParams["key_id"] = parameterToString(request.getKeyId());
localVarPathParams["key"] = parameterToString(request.getKey());
bool isJson = false;
bool isMultiPart = false;
std::string contentType = getContentType("application/json", isJson, isMultiPart);
localVarHeaderParams["Content-Type"] = contentType;
std::string localVarHttpBody;
std::unique_ptr<HttpResponse> res = callApi("DELETE", localVarPath, localVarPathParams, localVarQueryParams, localVarHeaderParams, localVarHttpBody);
std::shared_ptr<DeleteTagResponse> localVarResult = std::make_shared<DeleteTagResponse>();
if (!res->getHttpBody().empty()) {
utility::string_t localVarResponse = utility::conversions::to_string_t(res->getHttpBody());
web::json::value localVarJson = web::json::value::parse(localVarResponse);
localVarResult->fromJson(localVarJson);
}
localVarResult->setStatusCode(res->getStatusCode());
localVarResult->setHeaderParams(res->getHeaderParams());
localVarResult->setHttpBody(res->getHttpBody());
return localVarResult;
}
std::shared_ptr<DisableKeyResponse> KmsClient::disableKey(DisableKeyRequest &request)
{
std::string localVarPath = "/v1.0/{project_id}/kms/disable-key";
std::map<std::string, std::string> localVarQueryParams;
std::map<std::string, std::string> localVarHeaderParams;
std::map<std::string, std::string> localVarFormParams;
std::map<std::string, std::string> localVarPathParams;
std::map<std::string, std::shared_ptr<HttpContent>> localVarFileParams;
bool isJson = false;
bool isMultiPart = false;
std::string contentType = getContentType("application/json;charset=UTF-8", isJson, isMultiPart);
localVarHeaderParams["Content-Type"] = contentType;
std::string localVarHttpBody;
if (isJson) {
web::json::value localVarJson;
localVarJson = ModelBase::toJson(request.getBody());
localVarHttpBody = utility::conversions::to_utf8string(localVarJson.serialize());
}
std::unique_ptr<HttpResponse> res = callApi("POST", localVarPath, localVarPathParams, localVarQueryParams, localVarHeaderParams, localVarHttpBody);
std::shared_ptr<DisableKeyResponse> localVarResult = std::make_shared<DisableKeyResponse>();
if (!res->getHttpBody().empty()) {
utility::string_t localVarResponse = utility::conversions::to_string_t(res->getHttpBody());
web::json::value localVarJson = web::json::value::parse(localVarResponse);
localVarResult->fromJson(localVarJson);
}
localVarResult->setStatusCode(res->getStatusCode());
localVarResult->setHeaderParams(res->getHeaderParams());
localVarResult->setHttpBody(res->getHttpBody());
return localVarResult;
}
std::shared_ptr<DisableKeyRotationResponse> KmsClient::disableKeyRotation(DisableKeyRotationRequest &request)
{
std::string localVarPath = "/v1.0/{project_id}/kms/disable-key-rotation";
std::map<std::string, std::string> localVarQueryParams;
std::map<std::string, std::string> localVarHeaderParams;
std::map<std::string, std::string> localVarFormParams;
std::map<std::string, std::string> localVarPathParams;
std::map<std::string, std::shared_ptr<HttpContent>> localVarFileParams;
bool isJson = false;
bool isMultiPart = false;
std::string contentType = getContentType("application/json;charset=UTF-8", isJson, isMultiPart);
localVarHeaderParams["Content-Type"] = contentType;
std::string localVarHttpBody;
if (isJson) {
web::json::value localVarJson;
localVarJson = ModelBase::toJson(request.getBody());
localVarHttpBody = utility::conversions::to_utf8string(localVarJson.serialize());
}
std::unique_ptr<HttpResponse> res = callApi("POST", localVarPath, localVarPathParams, localVarQueryParams, localVarHeaderParams, localVarHttpBody);
std::shared_ptr<DisableKeyRotationResponse> localVarResult = std::make_shared<DisableKeyRotationResponse>();
if (!res->getHttpBody().empty()) {
utility::string_t localVarResponse = utility::conversions::to_string_t(res->getHttpBody());
web::json::value localVarJson = web::json::value::parse(localVarResponse);
localVarResult->fromJson(localVarJson);
}
localVarResult->setStatusCode(res->getStatusCode());
localVarResult->setHeaderParams(res->getHeaderParams());
localVarResult->setHttpBody(res->getHttpBody());
return localVarResult;
}
std::shared_ptr<DisableKeyStoreResponse> KmsClient::disableKeyStore(DisableKeyStoreRequest &request)
{
std::string localVarPath = "/v1.0/{project_id}/keystores/{keystore_id}/disable";
std::map<std::string, std::string> localVarQueryParams;
std::map<std::string, std::string> localVarHeaderParams;
std::map<std::string, std::string> localVarFormParams;
std::map<std::string, std::string> localVarPathParams;
std::map<std::string, std::shared_ptr<HttpContent>> localVarFileParams;
localVarPathParams["keystore_id"] = parameterToString(request.getKeystoreId());
bool isJson = false;
bool isMultiPart = false;
std::string contentType = getContentType("application/json", isJson, isMultiPart);
localVarHeaderParams["Content-Type"] = contentType;
std::string localVarHttpBody;
std::unique_ptr<HttpResponse> res = callApi("POST", localVarPath, localVarPathParams, localVarQueryParams, localVarHeaderParams, localVarHttpBody);
std::shared_ptr<DisableKeyStoreResponse> localVarResult = std::make_shared<DisableKeyStoreResponse>();
if (!res->getHttpBody().empty()) {
utility::string_t localVarResponse = utility::conversions::to_string_t(res->getHttpBody());
web::json::value localVarJson = web::json::value::parse(localVarResponse);
localVarResult->fromJson(localVarJson);
}
localVarResult->setStatusCode(res->getStatusCode());
localVarResult->setHeaderParams(res->getHeaderParams());
localVarResult->setHttpBody(res->getHttpBody());
return localVarResult;
}
std::shared_ptr<EnableKeyResponse> KmsClient::enableKey(EnableKeyRequest &request)
{
std::string localVarPath = "/v1.0/{project_id}/kms/enable-key";
std::map<std::string, std::string> localVarQueryParams;
std::map<std::string, std::string> localVarHeaderParams;
std::map<std::string, std::string> localVarFormParams;
std::map<std::string, std::string> localVarPathParams;
std::map<std::string, std::shared_ptr<HttpContent>> localVarFileParams;
bool isJson = false;
bool isMultiPart = false;
std::string contentType = getContentType("application/json;charset=UTF-8", isJson, isMultiPart);
localVarHeaderParams["Content-Type"] = contentType;
std::string localVarHttpBody;
if (isJson) {
web::json::value localVarJson;
localVarJson = ModelBase::toJson(request.getBody());
localVarHttpBody = utility::conversions::to_utf8string(localVarJson.serialize());
}
std::unique_ptr<HttpResponse> res = callApi("POST", localVarPath, localVarPathParams, localVarQueryParams, localVarHeaderParams, localVarHttpBody);
std::shared_ptr<EnableKeyResponse> localVarResult = std::make_shared<EnableKeyResponse>();
if (!res->getHttpBody().empty()) {
utility::string_t localVarResponse = utility::conversions::to_string_t(res->getHttpBody());
web::json::value localVarJson = web::json::value::parse(localVarResponse);
localVarResult->fromJson(localVarJson);
}
localVarResult->setStatusCode(res->getStatusCode());
localVarResult->setHeaderParams(res->getHeaderParams());
localVarResult->setHttpBody(res->getHttpBody());
return localVarResult;
}
std::shared_ptr<EnableKeyRotationResponse> KmsClient::enableKeyRotation(EnableKeyRotationRequest &request)
{
std::string localVarPath = "/v1.0/{project_id}/kms/enable-key-rotation";
std::map<std::string, std::string> localVarQueryParams;
std::map<std::string, std::string> localVarHeaderParams;
std::map<std::string, std::string> localVarFormParams;
std::map<std::string, std::string> localVarPathParams;
std::map<std::string, std::shared_ptr<HttpContent>> localVarFileParams;
bool isJson = false;
bool isMultiPart = false;
std::string contentType = getContentType("application/json;charset=UTF-8", isJson, isMultiPart);
localVarHeaderParams["Content-Type"] = contentType;
std::string localVarHttpBody;
if (isJson) {
web::json::value localVarJson;
localVarJson = ModelBase::toJson(request.getBody());
localVarHttpBody = utility::conversions::to_utf8string(localVarJson.serialize());
}
std::unique_ptr<HttpResponse> res = callApi("POST", localVarPath, localVarPathParams, localVarQueryParams, localVarHeaderParams, localVarHttpBody);
std::shared_ptr<EnableKeyRotationResponse> localVarResult = std::make_shared<EnableKeyRotationResponse>();
if (!res->getHttpBody().empty()) {
utility::string_t localVarResponse = utility::conversions::to_string_t(res->getHttpBody());
web::json::value localVarJson = web::json::value::parse(localVarResponse);
localVarResult->fromJson(localVarJson);
}
localVarResult->setStatusCode(res->getStatusCode());
localVarResult->setHeaderParams(res->getHeaderParams());
localVarResult->setHttpBody(res->getHttpBody());
return localVarResult;
}
std::shared_ptr<EnableKeyStoreResponse> KmsClient::enableKeyStore(EnableKeyStoreRequest &request)
{
std::string localVarPath = "/v1.0/{project_id}/keystores/{keystore_id}/enable";
std::map<std::string, std::string> localVarQueryParams;
std::map<std::string, std::string> localVarHeaderParams;
std::map<std::string, std::string> localVarFormParams;
std::map<std::string, std::string> localVarPathParams;
std::map<std::string, std::shared_ptr<HttpContent>> localVarFileParams;
localVarPathParams["keystore_id"] = parameterToString(request.getKeystoreId());
bool isJson = false;
bool isMultiPart = false;
std::string contentType = getContentType("application/json", isJson, isMultiPart);
localVarHeaderParams["Content-Type"] = contentType;
std::string localVarHttpBody;
std::unique_ptr<HttpResponse> res = callApi("POST", localVarPath, localVarPathParams, localVarQueryParams, localVarHeaderParams, localVarHttpBody);
std::shared_ptr<EnableKeyStoreResponse> localVarResult = std::make_shared<EnableKeyStoreResponse>();
if (!res->getHttpBody().empty()) {
utility::string_t localVarResponse = utility::conversions::to_string_t(res->getHttpBody());
web::json::value localVarJson = web::json::value::parse(localVarResponse);
localVarResult->fromJson(localVarJson);
}
localVarResult->setStatusCode(res->getStatusCode());
localVarResult->setHeaderParams(res->getHeaderParams());
localVarResult->setHttpBody(res->getHttpBody());
return localVarResult;
}
std::shared_ptr<EncryptDataResponse> KmsClient::encryptData(EncryptDataRequest &request)
{
std::string localVarPath = "/v1.0/{project_id}/kms/encrypt-data";
std::map<std::string, std::string> localVarQueryParams;
std::map<std::string, std::string> localVarHeaderParams;
std::map<std::string, std::string> localVarFormParams;
std::map<std::string, std::string> localVarPathParams;
std::map<std::string, std::shared_ptr<HttpContent>> localVarFileParams;
bool isJson = false;
bool isMultiPart = false;
std::string contentType = getContentType("application/json;charset=UTF-8", isJson, isMultiPart);
localVarHeaderParams["Content-Type"] = contentType;
std::string localVarHttpBody;
if (isJson) {
web::json::value localVarJson;
localVarJson = ModelBase::toJson(request.getBody());
localVarHttpBody = utility::conversions::to_utf8string(localVarJson.serialize());
}
std::unique_ptr<HttpResponse> res = callApi("POST", localVarPath, localVarPathParams, localVarQueryParams, localVarHeaderParams, localVarHttpBody);
std::shared_ptr<EncryptDataResponse> localVarResult = std::make_shared<EncryptDataResponse>();
if (!res->getHttpBody().empty()) {
utility::string_t localVarResponse = utility::conversions::to_string_t(res->getHttpBody());
web::json::value localVarJson = web::json::value::parse(localVarResponse);
localVarResult->fromJson(localVarJson);
}
localVarResult->setStatusCode(res->getStatusCode());
localVarResult->setHeaderParams(res->getHeaderParams());
localVarResult->setHttpBody(res->getHttpBody());
return localVarResult;
}
std::shared_ptr<EncryptDatakeyResponse> KmsClient::encryptDatakey(EncryptDatakeyRequest &request)
{
std::string localVarPath = "/v1.0/{project_id}/kms/encrypt-datakey";
std::map<std::string, std::string> localVarQueryParams;
std::map<std::string, std::string> localVarHeaderParams;
std::map<std::string, std::string> localVarFormParams;
std::map<std::string, std::string> localVarPathParams;
std::map<std::string, std::shared_ptr<HttpContent>> localVarFileParams;
bool isJson = false;
bool isMultiPart = false;
std::string contentType = getContentType("application/json;charset=UTF-8", isJson, isMultiPart);
localVarHeaderParams["Content-Type"] = contentType;
std::string localVarHttpBody;
if (isJson) {
web::json::value localVarJson;
localVarJson = ModelBase::toJson(request.getBody());
localVarHttpBody = utility::conversions::to_utf8string(localVarJson.serialize());
}
std::unique_ptr<HttpResponse> res = callApi("POST", localVarPath, localVarPathParams, localVarQueryParams, localVarHeaderParams, localVarHttpBody);
std::shared_ptr<EncryptDatakeyResponse> localVarResult = std::make_shared<EncryptDatakeyResponse>();
if (!res->getHttpBody().empty()) {
utility::string_t localVarResponse = utility::conversions::to_string_t(res->getHttpBody());
web::json::value localVarJson = web::json::value::parse(localVarResponse);
localVarResult->fromJson(localVarJson);
}
localVarResult->setStatusCode(res->getStatusCode());
localVarResult->setHeaderParams(res->getHeaderParams());
localVarResult->setHttpBody(res->getHttpBody());
return localVarResult;
}
std::shared_ptr<ImportKeyMaterialResponse> KmsClient::importKeyMaterial(ImportKeyMaterialRequest &request)
{
std::string localVarPath = "/v1.0/{project_id}/kms/import-key-material";
std::map<std::string, std::string> localVarQueryParams;
std::map<std::string, std::string> localVarHeaderParams;
std::map<std::string, std::string> localVarFormParams;
std::map<std::string, std::string> localVarPathParams;
std::map<std::string, std::shared_ptr<HttpContent>> localVarFileParams;
bool isJson = false;
bool isMultiPart = false;
std::string contentType = getContentType("application/json;charset=UTF-8", isJson, isMultiPart);
localVarHeaderParams["Content-Type"] = contentType;
std::string localVarHttpBody;
if (isJson) {
web::json::value localVarJson;
localVarJson = ModelBase::toJson(request.getBody());
localVarHttpBody = utility::conversions::to_utf8string(localVarJson.serialize());
}
std::unique_ptr<HttpResponse> res = callApi("POST", localVarPath, localVarPathParams, localVarQueryParams, localVarHeaderParams, localVarHttpBody);
std::shared_ptr<ImportKeyMaterialResponse> localVarResult = std::make_shared<ImportKeyMaterialResponse>();
if (!res->getHttpBody().empty()) {
utility::string_t localVarResponse = utility::conversions::to_string_t(res->getHttpBody());
web::json::value localVarJson = web::json::value::parse(localVarResponse);
localVarResult->fromJson(localVarJson);
}
localVarResult->setStatusCode(res->getStatusCode());
localVarResult->setHeaderParams(res->getHeaderParams());
localVarResult->setHttpBody(res->getHttpBody());
return localVarResult;
}
std::shared_ptr<ListGrantsResponse> KmsClient::listGrants(ListGrantsRequest &request)
{
std::string localVarPath = "/v1.0/{project_id}/kms/list-grants";
std::map<std::string, std::string> localVarQueryParams;
std::map<std::string, std::string> localVarHeaderParams;
std::map<std::string, std::string> localVarFormParams;
std::map<std::string, std::string> localVarPathParams;
std::map<std::string, std::shared_ptr<HttpContent>> localVarFileParams;
bool isJson = false;
bool isMultiPart = false;
std::string contentType = getContentType("application/json;charset=UTF-8", isJson, isMultiPart);
localVarHeaderParams["Content-Type"] = contentType;
std::string localVarHttpBody;
if (isJson) {
web::json::value localVarJson;
localVarJson = ModelBase::toJson(request.getBody());
localVarHttpBody = utility::conversions::to_utf8string(localVarJson.serialize());
}
std::unique_ptr<HttpResponse> res = callApi("POST", localVarPath, localVarPathParams, localVarQueryParams, localVarHeaderParams, localVarHttpBody);
std::shared_ptr<ListGrantsResponse> localVarResult = std::make_shared<ListGrantsResponse>();
if (!res->getHttpBody().empty()) {
utility::string_t localVarResponse = utility::conversions::to_string_t(res->getHttpBody());
web::json::value localVarJson = web::json::value::parse(localVarResponse);
localVarResult->fromJson(localVarJson);
}
localVarResult->setStatusCode(res->getStatusCode());
localVarResult->setHeaderParams(res->getHeaderParams());
localVarResult->setHttpBody(res->getHttpBody());
return localVarResult;
}
std::shared_ptr<ListKeyDetailResponse> KmsClient::listKeyDetail(ListKeyDetailRequest &request)
{
std::string localVarPath = "/v1.0/{project_id}/kms/describe-key";
std::map<std::string, std::string> localVarQueryParams;
std::map<std::string, std::string> localVarHeaderParams;
std::map<std::string, std::string> localVarFormParams;
std::map<std::string, std::string> localVarPathParams;
std::map<std::string, std::shared_ptr<HttpContent>> localVarFileParams;
bool isJson = false;
bool isMultiPart = false;
std::string contentType = getContentType("application/json;charset=UTF-8", isJson, isMultiPart);
localVarHeaderParams["Content-Type"] = contentType;
std::string localVarHttpBody;
if (isJson) {
web::json::value localVarJson;
localVarJson = ModelBase::toJson(request.getBody());
localVarHttpBody = utility::conversions::to_utf8string(localVarJson.serialize());
}
std::unique_ptr<HttpResponse> res = callApi("POST", localVarPath, localVarPathParams, localVarQueryParams, localVarHeaderParams, localVarHttpBody);
std::shared_ptr<ListKeyDetailResponse> localVarResult = std::make_shared<ListKeyDetailResponse>();
if (!res->getHttpBody().empty()) {
utility::string_t localVarResponse = utility::conversions::to_string_t(res->getHttpBody());
web::json::value localVarJson = web::json::value::parse(localVarResponse);
localVarResult->fromJson(localVarJson);
}
localVarResult->setStatusCode(res->getStatusCode());
localVarResult->setHeaderParams(res->getHeaderParams());
localVarResult->setHttpBody(res->getHttpBody());
return localVarResult;
}
std::shared_ptr<ListKeyStoresResponse> KmsClient::listKeyStores(ListKeyStoresRequest &request)
{
std::string localVarPath = "/v1.0/{project_id}/keystores";
std::map<std::string, std::string> localVarQueryParams;
std::map<std::string, std::string> localVarHeaderParams;
std::map<std::string, std::string> localVarFormParams;
std::map<std::string, std::string> localVarPathParams;
std::map<std::string, std::shared_ptr<HttpContent>> localVarFileParams;
bool isJson = false;
bool isMultiPart = false;
std::string contentType = getContentType("application/json", isJson, isMultiPart);
localVarHeaderParams["Content-Type"] = contentType;
if (request.limitIsSet()) {
localVarQueryParams["limit"] = parameterToString(request.getLimit());
}
if (request.offsetIsSet()) {
localVarQueryParams["offset"] = parameterToString(request.getOffset());
}
std::string localVarHttpBody;
std::unique_ptr<HttpResponse> res = callApi("GET", localVarPath, localVarPathParams, localVarQueryParams, localVarHeaderParams, localVarHttpBody);
std::shared_ptr<ListKeyStoresResponse> localVarResult = std::make_shared<ListKeyStoresResponse>();
if (!res->getHttpBody().empty()) {
utility::string_t localVarResponse = utility::conversions::to_string_t(res->getHttpBody());
web::json::value localVarJson = web::json::value::parse(localVarResponse);
localVarResult->fromJson(localVarJson);
}
localVarResult->setStatusCode(res->getStatusCode());
localVarResult->setHeaderParams(res->getHeaderParams());
localVarResult->setHttpBody(res->getHttpBody());
return localVarResult;
}
std::shared_ptr<ListKeysResponse> KmsClient::listKeys(ListKeysRequest &request)
{
std::string localVarPath = "/v1.0/{project_id}/kms/list-keys";
std::map<std::string, std::string> localVarQueryParams;
std::map<std::string, std::string> localVarHeaderParams;
std::map<std::string, std::string> localVarFormParams;
std::map<std::string, std::string> localVarPathParams;
std::map<std::string, std::shared_ptr<HttpContent>> localVarFileParams;
bool isJson = false;
bool isMultiPart = false;
std::string contentType = getContentType("application/json;charset=UTF-8", isJson, isMultiPart);
localVarHeaderParams["Content-Type"] = contentType;
std::string localVarHttpBody;
if (isJson) {
web::json::value localVarJson;
localVarJson = ModelBase::toJson(request.getBody());
localVarHttpBody = utility::conversions::to_utf8string(localVarJson.serialize());
}
std::unique_ptr<HttpResponse> res = callApi("POST", localVarPath, localVarPathParams, localVarQueryParams, localVarHeaderParams, localVarHttpBody);
std::shared_ptr<ListKeysResponse> localVarResult = std::make_shared<ListKeysResponse>();
if (!res->getHttpBody().empty()) {
utility::string_t localVarResponse = utility::conversions::to_string_t(res->getHttpBody());
web::json::value localVarJson = web::json::value::parse(localVarResponse);
localVarResult->fromJson(localVarJson);
}
localVarResult->setStatusCode(res->getStatusCode());
localVarResult->setHeaderParams(res->getHeaderParams());
localVarResult->setHttpBody(res->getHttpBody());
return localVarResult;
}
std::shared_ptr<ListKmsByTagsResponse> KmsClient::listKmsByTags(ListKmsByTagsRequest &request)
{
std::string localVarPath = "/v1.0/{project_id}/kms/{resource_instances}/action";
std::map<std::string, std::string> localVarQueryParams;
std::map<std::string, std::string> localVarHeaderParams;
std::map<std::string, std::string> localVarFormParams;
std::map<std::string, std::string> localVarPathParams;
std::map<std::string, std::shared_ptr<HttpContent>> localVarFileParams;
localVarPathParams["resource_instances"] = parameterToString(request.getResourceInstances());
bool isJson = false;
bool isMultiPart = false;
std::string contentType = getContentType("application/json;charset=UTF-8", isJson, isMultiPart);
localVarHeaderParams["Content-Type"] = contentType;
std::string localVarHttpBody;
if (isJson) {
web::json::value localVarJson;
localVarJson = ModelBase::toJson(request.getBody());
localVarHttpBody = utility::conversions::to_utf8string(localVarJson.serialize());
}
std::unique_ptr<HttpResponse> res = callApi("POST", localVarPath, localVarPathParams, localVarQueryParams, localVarHeaderParams, localVarHttpBody);
std::shared_ptr<ListKmsByTagsResponse> localVarResult = std::make_shared<ListKmsByTagsResponse>();
if (!res->getHttpBody().empty()) {
utility::string_t localVarResponse = utility::conversions::to_string_t(res->getHttpBody());
web::json::value localVarJson = web::json::value::parse(localVarResponse);
localVarResult->fromJson(localVarJson);
}
localVarResult->setStatusCode(res->getStatusCode());
localVarResult->setHeaderParams(res->getHeaderParams());
localVarResult->setHttpBody(res->getHttpBody());
return localVarResult;
}
std::shared_ptr<ListKmsTagsResponse> KmsClient::listKmsTags(ListKmsTagsRequest &request)
{
std::string localVarPath = "/v1.0/{project_id}/kms/tags";
std::map<std::string, std::string> localVarQueryParams;
std::map<std::string, std::string> localVarHeaderParams;
std::map<std::string, std::string> localVarFormParams;
std::map<std::string, std::string> localVarPathParams;
std::map<std::string, std::shared_ptr<HttpContent>> localVarFileParams;
bool isJson = false;
bool isMultiPart = false;
std::string contentType = getContentType("application/json", isJson, isMultiPart);
localVarHeaderParams["Content-Type"] = contentType;
std::string localVarHttpBody;
std::unique_ptr<HttpResponse> res = callApi("GET", localVarPath, localVarPathParams, localVarQueryParams, localVarHeaderParams, localVarHttpBody);
std::shared_ptr<ListKmsTagsResponse> localVarResult = std::make_shared<ListKmsTagsResponse>();
if (!res->getHttpBody().empty()) {
utility::string_t localVarResponse = utility::conversions::to_string_t(res->getHttpBody());
web::json::value localVarJson = web::json::value::parse(localVarResponse);
localVarResult->fromJson(localVarJson);
}
localVarResult->setStatusCode(res->getStatusCode());
localVarResult->setHeaderParams(res->getHeaderParams());
localVarResult->setHttpBody(res->getHttpBody());
return localVarResult;
}
std::shared_ptr<ListRetirableGrantsResponse> KmsClient::listRetirableGrants(ListRetirableGrantsRequest &request)
{
std::string localVarPath = "/v1.0/{project_id}/kms/list-retirable-grants";
std::map<std::string, std::string> localVarQueryParams;
std::map<std::string, std::string> localVarHeaderParams;
std::map<std::string, std::string> localVarFormParams;
std::map<std::string, std::string> localVarPathParams;
std::map<std::string, std::shared_ptr<HttpContent>> localVarFileParams;
bool isJson = false;
bool isMultiPart = false;
std::string contentType = getContentType("application/json;charset=UTF-8", isJson, isMultiPart);
localVarHeaderParams["Content-Type"] = contentType;
std::string localVarHttpBody;
if (isJson) {
web::json::value localVarJson;
localVarJson = ModelBase::toJson(request.getBody());
localVarHttpBody = utility::conversions::to_utf8string(localVarJson.serialize());
}
std::unique_ptr<HttpResponse> res = callApi("POST", localVarPath, localVarPathParams, localVarQueryParams, localVarHeaderParams, localVarHttpBody);
std::shared_ptr<ListRetirableGrantsResponse> localVarResult = std::make_shared<ListRetirableGrantsResponse>();
if (!res->getHttpBody().empty()) {
utility::string_t localVarResponse = utility::conversions::to_string_t(res->getHttpBody());
web::json::value localVarJson = web::json::value::parse(localVarResponse);
localVarResult->fromJson(localVarJson);
}
localVarResult->setStatusCode(res->getStatusCode());
localVarResult->setHeaderParams(res->getHeaderParams());
localVarResult->setHttpBody(res->getHttpBody());
return localVarResult;
}
std::shared_ptr<ShowKeyRotationStatusResponse> KmsClient::showKeyRotationStatus(ShowKeyRotationStatusRequest &request)
{
std::string localVarPath = "/v1.0/{project_id}/kms/get-key-rotation-status";
std::map<std::string, std::string> localVarQueryParams;
std::map<std::string, std::string> localVarHeaderParams;
std::map<std::string, std::string> localVarFormParams;
std::map<std::string, std::string> localVarPathParams;
std::map<std::string, std::shared_ptr<HttpContent>> localVarFileParams;
bool isJson = false;
bool isMultiPart = false;
std::string contentType = getContentType("application/json;charset=UTF-8", isJson, isMultiPart);
localVarHeaderParams["Content-Type"] = contentType;
std::string localVarHttpBody;
if (isJson) {
web::json::value localVarJson;
localVarJson = ModelBase::toJson(request.getBody());
localVarHttpBody = utility::conversions::to_utf8string(localVarJson.serialize());
}
std::unique_ptr<HttpResponse> res = callApi("POST", localVarPath, localVarPathParams, localVarQueryParams, localVarHeaderParams, localVarHttpBody);
std::shared_ptr<ShowKeyRotationStatusResponse> localVarResult = std::make_shared<ShowKeyRotationStatusResponse>();
if (!res->getHttpBody().empty()) {
utility::string_t localVarResponse = utility::conversions::to_string_t(res->getHttpBody());
web::json::value localVarJson = web::json::value::parse(localVarResponse);
localVarResult->fromJson(localVarJson);
}
localVarResult->setStatusCode(res->getStatusCode());
localVarResult->setHeaderParams(res->getHeaderParams());
localVarResult->setHttpBody(res->getHttpBody());
return localVarResult;
}
std::shared_ptr<ShowKeyStoreResponse> KmsClient::showKeyStore(ShowKeyStoreRequest &request)
{
std::string localVarPath = "/v1.0/{project_id}/keystores/{keystore_id}";
std::map<std::string, std::string> localVarQueryParams;
std::map<std::string, std::string> localVarHeaderParams;
std::map<std::string, std::string> localVarFormParams;
std::map<std::string, std::string> localVarPathParams;
std::map<std::string, std::shared_ptr<HttpContent>> localVarFileParams;
localVarPathParams["keystore_id"] = parameterToString(request.getKeystoreId());
bool isJson = false;
bool isMultiPart = false;
std::string contentType = getContentType("application/json", isJson, isMultiPart);
localVarHeaderParams["Content-Type"] = contentType;
std::string localVarHttpBody;
std::unique_ptr<HttpResponse> res = callApi("GET", localVarPath, localVarPathParams, localVarQueryParams, localVarHeaderParams, localVarHttpBody);
std::shared_ptr<ShowKeyStoreResponse> localVarResult = std::make_shared<ShowKeyStoreResponse>();
if (!res->getHttpBody().empty()) {
utility::string_t localVarResponse = utility::conversions::to_string_t(res->getHttpBody());
web::json::value localVarJson = web::json::value::parse(localVarResponse);
localVarResult->fromJson(localVarJson);
}
localVarResult->setStatusCode(res->getStatusCode());
localVarResult->setHeaderParams(res->getHeaderParams());
localVarResult->setHttpBody(res->getHttpBody());
return localVarResult;
}
std::shared_ptr<ShowKmsTagsResponse> KmsClient::showKmsTags(ShowKmsTagsRequest &request)
{
std::string localVarPath = "/v1.0/{project_id}/kms/{key_id}/tags";
std::map<std::string, std::string> localVarQueryParams;
std::map<std::string, std::string> localVarHeaderParams;
std::map<std::string, std::string> localVarFormParams;
std::map<std::string, std::string> localVarPathParams;
std::map<std::string, std::shared_ptr<HttpContent>> localVarFileParams;
localVarPathParams["key_id"] = parameterToString(request.getKeyId());
bool isJson = false;
bool isMultiPart = false;
std::string contentType = getContentType("application/json", isJson, isMultiPart);
localVarHeaderParams["Content-Type"] = contentType;
std::string localVarHttpBody;
std::unique_ptr<HttpResponse> res = callApi("GET", localVarPath, localVarPathParams, localVarQueryParams, localVarHeaderParams, localVarHttpBody);
std::shared_ptr<ShowKmsTagsResponse> localVarResult = std::make_shared<ShowKmsTagsResponse>();
if (!res->getHttpBody().empty()) {
utility::string_t localVarResponse = utility::conversions::to_string_t(res->getHttpBody());
web::json::value localVarJson = web::json::value::parse(localVarResponse);
localVarResult->fromJson(localVarJson);
}
localVarResult->setStatusCode(res->getStatusCode());
localVarResult->setHeaderParams(res->getHeaderParams());
localVarResult->setHttpBody(res->getHttpBody());
return localVarResult;
}
std::shared_ptr<ShowPublicKeyResponse> KmsClient::showPublicKey(ShowPublicKeyRequest &request)
{
std::string localVarPath = "/v1.0/{project_id}/kms/get-publickey";
std::map<std::string, std::string> localVarQueryParams;
std::map<std::string, std::string> localVarHeaderParams;
std::map<std::string, std::string> localVarFormParams;
std::map<std::string, std::string> localVarPathParams;
std::map<std::string, std::shared_ptr<HttpContent>> localVarFileParams;
bool isJson = false;
bool isMultiPart = false;
std::string contentType = getContentType("application/json;charset=UTF-8", isJson, isMultiPart);
localVarHeaderParams["Content-Type"] = contentType;
std::string localVarHttpBody;
if (isJson) {
web::json::value localVarJson;
localVarJson = ModelBase::toJson(request.getBody());
localVarHttpBody = utility::conversions::to_utf8string(localVarJson.serialize());
}
std::unique_ptr<HttpResponse> res = callApi("POST", localVarPath, localVarPathParams, localVarQueryParams, localVarHeaderParams, localVarHttpBody);
std::shared_ptr<ShowPublicKeyResponse> localVarResult = std::make_shared<ShowPublicKeyResponse>();
if (!res->getHttpBody().empty()) {
utility::string_t localVarResponse = utility::conversions::to_string_t(res->getHttpBody());
web::json::value localVarJson = web::json::value::parse(localVarResponse);
localVarResult->fromJson(localVarJson);
}
localVarResult->setStatusCode(res->getStatusCode());
localVarResult->setHeaderParams(res->getHeaderParams());
localVarResult->setHttpBody(res->getHttpBody());
return localVarResult;
}
std::shared_ptr<ShowUserInstancesResponse> KmsClient::showUserInstances(ShowUserInstancesRequest &request)
{
std::string localVarPath = "/v1.0/{project_id}/kms/user-instances";
std::map<std::string, std::string> localVarQueryParams;
std::map<std::string, std::string> localVarHeaderParams;
std::map<std::string, std::string> localVarFormParams;
std::map<std::string, std::string> localVarPathParams;
std::map<std::string, std::shared_ptr<HttpContent>> localVarFileParams;
bool isJson = false;
bool isMultiPart = false;
std::string contentType = getContentType("application/json", isJson, isMultiPart);
localVarHeaderParams["Content-Type"] = contentType;
std::string localVarHttpBody;
std::unique_ptr<HttpResponse> res = callApi("GET", localVarPath, localVarPathParams, localVarQueryParams, localVarHeaderParams, localVarHttpBody);
std::shared_ptr<ShowUserInstancesResponse> localVarResult = std::make_shared<ShowUserInstancesResponse>();
if (!res->getHttpBody().empty()) {
utility::string_t localVarResponse = utility::conversions::to_string_t(res->getHttpBody());
web::json::value localVarJson = web::json::value::parse(localVarResponse);
localVarResult->fromJson(localVarJson);
}
localVarResult->setStatusCode(res->getStatusCode());
localVarResult->setHeaderParams(res->getHeaderParams());
localVarResult->setHttpBody(res->getHttpBody());
return localVarResult;
}
std::shared_ptr<ShowUserQuotasResponse> KmsClient::showUserQuotas(ShowUserQuotasRequest &request)
{
std::string localVarPath = "/v1.0/{project_id}/kms/user-quotas";
std::map<std::string, std::string> localVarQueryParams;
std::map<std::string, std::string> localVarHeaderParams;
std::map<std::string, std::string> localVarFormParams;
std::map<std::string, std::string> localVarPathParams;
std::map<std::string, std::shared_ptr<HttpContent>> localVarFileParams;
bool isJson = false;
bool isMultiPart = false;
std::string contentType = getContentType("application/json", isJson, isMultiPart);
localVarHeaderParams["Content-Type"] = contentType;
std::string localVarHttpBody;
std::unique_ptr<HttpResponse> res = callApi("GET", localVarPath, localVarPathParams, localVarQueryParams, localVarHeaderParams, localVarHttpBody);
std::shared_ptr<ShowUserQuotasResponse> localVarResult = std::make_shared<ShowUserQuotasResponse>();
if (!res->getHttpBody().empty()) {
utility::string_t localVarResponse = utility::conversions::to_string_t(res->getHttpBody());
web::json::value localVarJson = web::json::value::parse(localVarResponse);
localVarResult->fromJson(localVarJson);
}
localVarResult->setStatusCode(res->getStatusCode());
localVarResult->setHeaderParams(res->getHeaderParams());
localVarResult->setHttpBody(res->getHttpBody());
return localVarResult;
}
std::shared_ptr<SignResponse> KmsClient::sign(SignRequest &request)
{
std::string localVarPath = "/v1.0/{project_id}/kms/sign";
std::map<std::string, std::string> localVarQueryParams;
std::map<std::string, std::string> localVarHeaderParams;
std::map<std::string, std::string> localVarFormParams;
std::map<std::string, std::string> localVarPathParams;
std::map<std::string, std::shared_ptr<HttpContent>> localVarFileParams;
bool isJson = false;
bool isMultiPart = false;
std::string contentType = getContentType("application/json;charset=UTF-8", isJson, isMultiPart);
localVarHeaderParams["Content-Type"] = contentType;
std::string localVarHttpBody;
if (isJson) {
web::json::value localVarJson;
localVarJson = ModelBase::toJson(request.getBody());
localVarHttpBody = utility::conversions::to_utf8string(localVarJson.serialize());
}
std::unique_ptr<HttpResponse> res = callApi("POST", localVarPath, localVarPathParams, localVarQueryParams, localVarHeaderParams, localVarHttpBody);
std::shared_ptr<SignResponse> localVarResult = std::make_shared<SignResponse>();
if (!res->getHttpBody().empty()) {
utility::string_t localVarResponse = utility::conversions::to_string_t(res->getHttpBody());
web::json::value localVarJson = web::json::value::parse(localVarResponse);
localVarResult->fromJson(localVarJson);
}
localVarResult->setStatusCode(res->getStatusCode());
localVarResult->setHeaderParams(res->getHeaderParams());
localVarResult->setHttpBody(res->getHttpBody());
return localVarResult;
}
std::shared_ptr<UpdateKeyAliasResponse> KmsClient::updateKeyAlias(UpdateKeyAliasRequest &request)
{
std::string localVarPath = "/v1.0/{project_id}/kms/update-key-alias";
std::map<std::string, std::string> localVarQueryParams;
std::map<std::string, std::string> localVarHeaderParams;
std::map<std::string, std::string> localVarFormParams;
std::map<std::string, std::string> localVarPathParams;
std::map<std::string, std::shared_ptr<HttpContent>> localVarFileParams;
bool isJson = false;
bool isMultiPart = false;
std::string contentType = getContentType("application/json;charset=UTF-8", isJson, isMultiPart);
localVarHeaderParams["Content-Type"] = contentType;
std::string localVarHttpBody;
if (isJson) {
web::json::value localVarJson;
localVarJson = ModelBase::toJson(request.getBody());
localVarHttpBody = utility::conversions::to_utf8string(localVarJson.serialize());
}
std::unique_ptr<HttpResponse> res = callApi("POST", localVarPath, localVarPathParams, localVarQueryParams, localVarHeaderParams, localVarHttpBody);
std::shared_ptr<UpdateKeyAliasResponse> localVarResult = std::make_shared<UpdateKeyAliasResponse>();
if (!res->getHttpBody().empty()) {
utility::string_t localVarResponse = utility::conversions::to_string_t(res->getHttpBody());
web::json::value localVarJson = web::json::value::parse(localVarResponse);
localVarResult->fromJson(localVarJson);
}
localVarResult->setStatusCode(res->getStatusCode());
localVarResult->setHeaderParams(res->getHeaderParams());
localVarResult->setHttpBody(res->getHttpBody());
return localVarResult;
}
std::shared_ptr<UpdateKeyDescriptionResponse> KmsClient::updateKeyDescription(UpdateKeyDescriptionRequest &request)
{
std::string localVarPath = "/v1.0/{project_id}/kms/update-key-description";
std::map<std::string, std::string> localVarQueryParams;
std::map<std::string, std::string> localVarHeaderParams;
std::map<std::string, std::string> localVarFormParams;
std::map<std::string, std::string> localVarPathParams;
std::map<std::string, std::shared_ptr<HttpContent>> localVarFileParams;
bool isJson = false;
bool isMultiPart = false;
std::string contentType = getContentType("application/json;charset=UTF-8", isJson, isMultiPart);
localVarHeaderParams["Content-Type"] = contentType;
std::string localVarHttpBody;
if (isJson) {
web::json::value localVarJson;
localVarJson = ModelBase::toJson(request.getBody());
localVarHttpBody = utility::conversions::to_utf8string(localVarJson.serialize());
}
std::unique_ptr<HttpResponse> res = callApi("POST", localVarPath, localVarPathParams, localVarQueryParams, localVarHeaderParams, localVarHttpBody);
std::shared_ptr<UpdateKeyDescriptionResponse> localVarResult = std::make_shared<UpdateKeyDescriptionResponse>();
if (!res->getHttpBody().empty()) {
utility::string_t localVarResponse = utility::conversions::to_string_t(res->getHttpBody());
web::json::value localVarJson = web::json::value::parse(localVarResponse);
localVarResult->fromJson(localVarJson);
}
localVarResult->setStatusCode(res->getStatusCode());
localVarResult->setHeaderParams(res->getHeaderParams());
localVarResult->setHttpBody(res->getHttpBody());
return localVarResult;
}
std::shared_ptr<UpdateKeyRotationIntervalResponse> KmsClient::updateKeyRotationInterval(UpdateKeyRotationIntervalRequest &request)
{
std::string localVarPath = "/v1.0/{project_id}/kms/update-key-rotation-interval";
std::map<std::string, std::string> localVarQueryParams;
std::map<std::string, std::string> localVarHeaderParams;
std::map<std::string, std::string> localVarFormParams;
std::map<std::string, std::string> localVarPathParams;
std::map<std::string, std::shared_ptr<HttpContent>> localVarFileParams;
bool isJson = false;
bool isMultiPart = false;
std::string contentType = getContentType("application/json;charset=UTF-8", isJson, isMultiPart);
localVarHeaderParams["Content-Type"] = contentType;
std::string localVarHttpBody;
if (isJson) {
web::json::value localVarJson;
localVarJson = ModelBase::toJson(request.getBody());
localVarHttpBody = utility::conversions::to_utf8string(localVarJson.serialize());
}
std::unique_ptr<HttpResponse> res = callApi("POST", localVarPath, localVarPathParams, localVarQueryParams, localVarHeaderParams, localVarHttpBody);
std::shared_ptr<UpdateKeyRotationIntervalResponse> localVarResult = std::make_shared<UpdateKeyRotationIntervalResponse>();
if (!res->getHttpBody().empty()) {
utility::string_t localVarResponse = utility::conversions::to_string_t(res->getHttpBody());
web::json::value localVarJson = web::json::value::parse(localVarResponse);
localVarResult->fromJson(localVarJson);
}
localVarResult->setStatusCode(res->getStatusCode());
localVarResult->setHeaderParams(res->getHeaderParams());
localVarResult->setHttpBody(res->getHttpBody());
return localVarResult;
}
std::shared_ptr<ValidateSignatureResponse> KmsClient::validateSignature(ValidateSignatureRequest &request)
{
std::string localVarPath = "/v1.0/{project_id}/kms/verify";
std::map<std::string, std::string> localVarQueryParams;
std::map<std::string, std::string> localVarHeaderParams;
std::map<std::string, std::string> localVarFormParams;
std::map<std::string, std::string> localVarPathParams;
std::map<std::string, std::shared_ptr<HttpContent>> localVarFileParams;
bool isJson = false;
bool isMultiPart = false;
std::string contentType = getContentType("application/json;charset=UTF-8", isJson, isMultiPart);
localVarHeaderParams["Content-Type"] = contentType;
std::string localVarHttpBody;
if (isJson) {
web::json::value localVarJson;
localVarJson = ModelBase::toJson(request.getBody());
localVarHttpBody = utility::conversions::to_utf8string(localVarJson.serialize());
}
std::unique_ptr<HttpResponse> res = callApi("POST", localVarPath, localVarPathParams, localVarQueryParams, localVarHeaderParams, localVarHttpBody);
std::shared_ptr<ValidateSignatureResponse> localVarResult = std::make_shared<ValidateSignatureResponse>();
if (!res->getHttpBody().empty()) {
utility::string_t localVarResponse = utility::conversions::to_string_t(res->getHttpBody());
web::json::value localVarJson = web::json::value::parse(localVarResponse);
localVarResult->fromJson(localVarJson);
}
localVarResult->setStatusCode(res->getStatusCode());
localVarResult->setHeaderParams(res->getHeaderParams());
localVarResult->setHttpBody(res->getHttpBody());
return localVarResult;
}
std::shared_ptr<ShowVersionResponse> KmsClient::showVersion(ShowVersionRequest &request)
{
std::string localVarPath = "/{version_id}";
std::map<std::string, std::string> localVarQueryParams;
std::map<std::string, std::string> localVarHeaderParams;
std::map<std::string, std::string> localVarFormParams;
std::map<std::string, std::string> localVarPathParams;
std::map<std::string, std::shared_ptr<HttpContent>> localVarFileParams;
localVarPathParams["version_id"] = parameterToString(request.getVersionId());
bool isJson = false;
bool isMultiPart = false;
std::string contentType = getContentType("application/json", isJson, isMultiPart);
localVarHeaderParams["Content-Type"] = contentType;
std::string localVarHttpBody;
std::unique_ptr<HttpResponse> res = callApi("GET", localVarPath, localVarPathParams, localVarQueryParams, localVarHeaderParams, localVarHttpBody);
std::shared_ptr<ShowVersionResponse> localVarResult = std::make_shared<ShowVersionResponse>();
if (!res->getHttpBody().empty()) {
utility::string_t localVarResponse = utility::conversions::to_string_t(res->getHttpBody());
web::json::value localVarJson = web::json::value::parse(localVarResponse);
localVarResult->fromJson(localVarJson);
}
localVarResult->setStatusCode(res->getStatusCode());
localVarResult->setHeaderParams(res->getHeaderParams());
localVarResult->setHttpBody(res->getHttpBody());
return localVarResult;
}
std::shared_ptr<ShowVersionsResponse> KmsClient::showVersions(ShowVersionsRequest &request)
{
std::string localVarPath = "/";
std::map<std::string, std::string> localVarQueryParams;
std::map<std::string, std::string> localVarHeaderParams;
std::map<std::string, std::string> localVarFormParams;
std::map<std::string, std::string> localVarPathParams;
std::map<std::string, std::shared_ptr<HttpContent>> localVarFileParams;
bool isJson = false;
bool isMultiPart = false;
std::string contentType = getContentType("application/json", isJson, isMultiPart);
localVarHeaderParams["Content-Type"] = contentType;
std::string localVarHttpBody;
std::unique_ptr<HttpResponse> res = callApi("GET", localVarPath, localVarPathParams, localVarQueryParams, localVarHeaderParams, localVarHttpBody);
std::shared_ptr<ShowVersionsResponse> localVarResult = std::make_shared<ShowVersionsResponse>();
if (!res->getHttpBody().empty()) {
utility::string_t localVarResponse = utility::conversions::to_string_t(res->getHttpBody());
web::json::value localVarJson = web::json::value::parse(localVarResponse);
localVarResult->fromJson(localVarJson);
}
localVarResult->setStatusCode(res->getStatusCode());
localVarResult->setHeaderParams(res->getHeaderParams());
localVarResult->setHttpBody(res->getHttpBody());
return localVarResult;
}
#if defined(WIN32) || defined(__WIN32__) || defined(_WIN32) || defined(_MSC_VER)
std::string KmsClient::parameterToString(utility::string_t value)
{
return utility::conversions::to_utf8string(value);
}
#endif
std::string KmsClient::parameterToString(std::string value)
{
return value;
}
std::string KmsClient::parameterToString(int64_t value)
{
std::stringstream valueAsStringStream;
valueAsStringStream << value;
return valueAsStringStream.str();
}
std::string KmsClient::parameterToString(int32_t value)
{
std::stringstream valueAsStringStream;
valueAsStringStream << value;
return valueAsStringStream.str();
}
std::string KmsClient::parameterToString(float value)
{
return toString(value);
}
std::string KmsClient::parameterToString(double value)
{
return toString(value);
}
std::string KmsClient::parameterToString(const Object& obj)
{
auto val = obj.toJson();
std::string value;
ModelBase::fromJson(val, value);
return value;
}
std::string KmsClient::parameterToString(const utility::datetime &value)
{
return utility::conversions::to_utf8string(value.to_string(utility::datetime::ISO_8601));
}
}
}
}
}