Parcourir la source

Support describe price.

sdk-team il y a 4 ans
Parent
commit
f5a4f56f2c

+ 3 - 0
CHANGELOG

@@ -1,3 +1,6 @@
+2022-01-18 Version: 1.36.1029
+- Support describe price.
+
 2022-01-14 Version: 1.36.1028
 - Supported more query conditions when searching resource group.
 

+ 1 - 1
VERSION

@@ -1 +1 @@
-1.36.1028
+1.36.1029

+ 4 - 0
sae/CMakeLists.txt

@@ -83,6 +83,8 @@ set(sae_public_header_model
 	include/alibabacloud/sae/model/DescribeComponentsResult.h
 	include/alibabacloud/sae/model/DescribeConfigMapRequest.h
 	include/alibabacloud/sae/model/DescribeConfigMapResult.h
+	include/alibabacloud/sae/model/DescribeConfigurationPriceRequest.h
+	include/alibabacloud/sae/model/DescribeConfigurationPriceResult.h
 	include/alibabacloud/sae/model/DescribeEdasContainersRequest.h
 	include/alibabacloud/sae/model/DescribeEdasContainersResult.h
 	include/alibabacloud/sae/model/DescribeGreyTagRouteRequest.h
@@ -244,6 +246,8 @@ set(sae_src
 	src/model/DescribeComponentsResult.cc
 	src/model/DescribeConfigMapRequest.cc
 	src/model/DescribeConfigMapResult.cc
+	src/model/DescribeConfigurationPriceRequest.cc
+	src/model/DescribeConfigurationPriceResult.cc
 	src/model/DescribeEdasContainersRequest.cc
 	src/model/DescribeEdasContainersResult.cc
 	src/model/DescribeGreyTagRouteRequest.cc

+ 8 - 0
sae/include/alibabacloud/sae/SaeClient.h

@@ -84,6 +84,8 @@
 #include "model/DescribeComponentsResult.h"
 #include "model/DescribeConfigMapRequest.h"
 #include "model/DescribeConfigMapResult.h"
+#include "model/DescribeConfigurationPriceRequest.h"
+#include "model/DescribeConfigurationPriceResult.h"
 #include "model/DescribeEdasContainersRequest.h"
 #include "model/DescribeEdasContainersResult.h"
 #include "model/DescribeGreyTagRouteRequest.h"
@@ -282,6 +284,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::DescribeConfigMapResult> DescribeConfigMapOutcome;
 			typedef std::future<DescribeConfigMapOutcome> DescribeConfigMapOutcomeCallable;
 			typedef std::function<void(const SaeClient*, const Model::DescribeConfigMapRequest&, const DescribeConfigMapOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeConfigMapAsyncHandler;
+			typedef Outcome<Error, Model::DescribeConfigurationPriceResult> DescribeConfigurationPriceOutcome;
+			typedef std::future<DescribeConfigurationPriceOutcome> DescribeConfigurationPriceOutcomeCallable;
+			typedef std::function<void(const SaeClient*, const Model::DescribeConfigurationPriceRequest&, const DescribeConfigurationPriceOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeConfigurationPriceAsyncHandler;
 			typedef Outcome<Error, Model::DescribeEdasContainersResult> DescribeEdasContainersOutcome;
 			typedef std::future<DescribeEdasContainersOutcome> DescribeEdasContainersOutcomeCallable;
 			typedef std::function<void(const SaeClient*, const Model::DescribeEdasContainersRequest&, const DescribeEdasContainersOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeEdasContainersAsyncHandler;
@@ -524,6 +529,9 @@ namespace AlibabaCloud
 			DescribeConfigMapOutcome describeConfigMap(const Model::DescribeConfigMapRequest &request)const;
 			void describeConfigMapAsync(const Model::DescribeConfigMapRequest& request, const DescribeConfigMapAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			DescribeConfigMapOutcomeCallable describeConfigMapCallable(const Model::DescribeConfigMapRequest& request) const;
+			DescribeConfigurationPriceOutcome describeConfigurationPrice(const Model::DescribeConfigurationPriceRequest &request)const;
+			void describeConfigurationPriceAsync(const Model::DescribeConfigurationPriceRequest& request, const DescribeConfigurationPriceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeConfigurationPriceOutcomeCallable describeConfigurationPriceCallable(const Model::DescribeConfigurationPriceRequest& request) const;
 			DescribeEdasContainersOutcome describeEdasContainers(const Model::DescribeEdasContainersRequest &request)const;
 			void describeEdasContainersAsync(const Model::DescribeEdasContainersRequest& request, const DescribeEdasContainersAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			DescribeEdasContainersOutcomeCallable describeEdasContainersCallable(const Model::DescribeEdasContainersRequest& request) const;

+ 3 - 0
sae/include/alibabacloud/sae/model/DescribeApplicationInstancesRequest.h

@@ -35,6 +35,8 @@ namespace AlibabaCloud
 				DescribeApplicationInstancesRequest();
 				~DescribeApplicationInstancesRequest();
 
+				std::string getJobId()const;
+				void setJobId(const std::string& jobId);
 				std::string getAppId()const;
 				void setAppId(const std::string& appId);
 				std::string getGroupId()const;
@@ -47,6 +49,7 @@ namespace AlibabaCloud
 				void setReverse(bool reverse);
 
             private:
+				std::string jobId_;
 				std::string appId_;
 				std::string groupId_;
 				int pageSize_;

+ 51 - 0
sae/include/alibabacloud/sae/model/DescribeConfigurationPriceRequest.h

@@ -0,0 +1,51 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_SAE_MODEL_DESCRIBECONFIGURATIONPRICEREQUEST_H_
+#define ALIBABACLOUD_SAE_MODEL_DESCRIBECONFIGURATIONPRICEREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <alibabacloud/sae/SaeExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Sae
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_SAE_EXPORT DescribeConfigurationPriceRequest : public RoaServiceRequest
+			{
+
+			public:
+				DescribeConfigurationPriceRequest();
+				~DescribeConfigurationPriceRequest();
+
+				int getMemory()const;
+				void setMemory(int memory);
+				int getCpu()const;
+				void setCpu(int cpu);
+
+            private:
+				int memory_;
+				int cpu_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_SAE_MODEL_DESCRIBECONFIGURATIONPRICEREQUEST_H_

+ 84 - 0
sae/include/alibabacloud/sae/model/DescribeConfigurationPriceResult.h

@@ -0,0 +1,84 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_SAE_MODEL_DESCRIBECONFIGURATIONPRICERESULT_H_
+#define ALIBABACLOUD_SAE_MODEL_DESCRIBECONFIGURATIONPRICERESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/sae/SaeExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Sae
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_SAE_EXPORT DescribeConfigurationPriceResult : public ServiceResult
+			{
+			public:
+				struct Data
+				{
+					struct BagUsage
+					{
+						float mem;
+						float cpu;
+					};
+					struct Order
+					{
+						std::vector<std::string> ruleIds;
+						float tradeAmount;
+						float originalAmount;
+						float discountAmount;
+					};
+					struct Rule
+					{
+						long ruleDescId;
+						std::string name;
+					};
+					Order order;
+					BagUsage bagUsage;
+					std::vector<Rule> rules;
+				};
+
+
+				DescribeConfigurationPriceResult();
+				explicit DescribeConfigurationPriceResult(const std::string &payload);
+				~DescribeConfigurationPriceResult();
+				std::string getMessage()const;
+				std::string getTraceId()const;
+				Data getData()const;
+				std::string getErrorCode()const;
+				std::string getCode()const;
+				bool getSuccess()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string message_;
+				std::string traceId_;
+				Data data_;
+				std::string errorCode_;
+				std::string code_;
+				bool success_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_SAE_MODEL_DESCRIBECONFIGURATIONPRICERESULT_H_

+ 3 - 2
sae/include/alibabacloud/sae/model/QueryResourceStaticsResult.h

@@ -34,18 +34,19 @@ namespace AlibabaCloud
 			public:
 				struct Data
 				{
-					struct RealTimeRes
+					struct Summary
 					{
 						float memory;
 						float cpu;
 					};
-					struct Summary
+					struct RealTimeRes
 					{
 						float memory;
 						float cpu;
 					};
 					Summary summary;
 					RealTimeRes realTimeRes;
+					std::string workload;
 				};
 
 

+ 36 - 0
sae/src/SaeClient.cc

@@ -1167,6 +1167,42 @@ SaeClient::DescribeConfigMapOutcomeCallable SaeClient::describeConfigMapCallable
 	return task->get_future();
 }
 
+SaeClient::DescribeConfigurationPriceOutcome SaeClient::describeConfigurationPrice(const DescribeConfigurationPriceRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return DescribeConfigurationPriceOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DescribeConfigurationPriceOutcome(DescribeConfigurationPriceResult(outcome.result()));
+	else
+		return DescribeConfigurationPriceOutcome(outcome.error());
+}
+
+void SaeClient::describeConfigurationPriceAsync(const DescribeConfigurationPriceRequest& request, const DescribeConfigurationPriceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, describeConfigurationPrice(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+SaeClient::DescribeConfigurationPriceOutcomeCallable SaeClient::describeConfigurationPriceCallable(const DescribeConfigurationPriceRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DescribeConfigurationPriceOutcome()>>(
+			[this, request]()
+			{
+			return this->describeConfigurationPrice(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 SaeClient::DescribeEdasContainersOutcome SaeClient::describeEdasContainers(const DescribeEdasContainersRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();

+ 11 - 0
sae/src/model/DescribeApplicationInstancesRequest.cc

@@ -28,6 +28,17 @@ DescribeApplicationInstancesRequest::DescribeApplicationInstancesRequest() :
 DescribeApplicationInstancesRequest::~DescribeApplicationInstancesRequest()
 {}
 
+std::string DescribeApplicationInstancesRequest::getJobId()const
+{
+	return jobId_;
+}
+
+void DescribeApplicationInstancesRequest::setJobId(const std::string& jobId)
+{
+	jobId_ = jobId;
+	setParameter("JobId", jobId);
+}
+
 std::string DescribeApplicationInstancesRequest::getAppId()const
 {
 	return appId_;

+ 52 - 0
sae/src/model/DescribeConfigurationPriceRequest.cc

@@ -0,0 +1,52 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/sae/model/DescribeConfigurationPriceRequest.h>
+
+using AlibabaCloud::Sae::Model::DescribeConfigurationPriceRequest;
+
+DescribeConfigurationPriceRequest::DescribeConfigurationPriceRequest() :
+	RoaServiceRequest("sae", "2019-05-06")
+{
+	setResourcePath("/pop/v1/paas/configurationPrice");
+	setMethod(HttpRequest::Method::Get);
+}
+
+DescribeConfigurationPriceRequest::~DescribeConfigurationPriceRequest()
+{}
+
+int DescribeConfigurationPriceRequest::getMemory()const
+{
+	return memory_;
+}
+
+void DescribeConfigurationPriceRequest::setMemory(int memory)
+{
+	memory_ = memory;
+	setParameter("Memory", std::to_string(memory));
+}
+
+int DescribeConfigurationPriceRequest::getCpu()const
+{
+	return cpu_;
+}
+
+void DescribeConfigurationPriceRequest::setCpu(int cpu)
+{
+	cpu_ = cpu;
+	setParameter("Cpu", std::to_string(cpu));
+}
+

+ 110 - 0
sae/src/model/DescribeConfigurationPriceResult.cc

@@ -0,0 +1,110 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/sae/model/DescribeConfigurationPriceResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Sae;
+using namespace AlibabaCloud::Sae::Model;
+
+DescribeConfigurationPriceResult::DescribeConfigurationPriceResult() :
+	ServiceResult()
+{}
+
+DescribeConfigurationPriceResult::DescribeConfigurationPriceResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+DescribeConfigurationPriceResult::~DescribeConfigurationPriceResult()
+{}
+
+void DescribeConfigurationPriceResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto dataNode = value["Data"];
+	auto allRulesNode = dataNode["Rules"]["Rule"];
+	for (auto dataNodeRulesRule : allRulesNode)
+	{
+		Data::Rule ruleObject;
+		if(!dataNodeRulesRule["RuleDescId"].isNull())
+			ruleObject.ruleDescId = std::stol(dataNodeRulesRule["RuleDescId"].asString());
+		if(!dataNodeRulesRule["Name"].isNull())
+			ruleObject.name = dataNodeRulesRule["Name"].asString();
+		data_.rules.push_back(ruleObject);
+	}
+	auto bagUsageNode = dataNode["BagUsage"];
+	if(!bagUsageNode["Cpu"].isNull())
+		data_.bagUsage.cpu = std::stof(bagUsageNode["Cpu"].asString());
+	if(!bagUsageNode["Mem"].isNull())
+		data_.bagUsage.mem = std::stof(bagUsageNode["Mem"].asString());
+	auto orderNode = dataNode["Order"];
+	if(!orderNode["OriginalAmount"].isNull())
+		data_.order.originalAmount = std::stof(orderNode["OriginalAmount"].asString());
+	if(!orderNode["DiscountAmount"].isNull())
+		data_.order.discountAmount = std::stof(orderNode["DiscountAmount"].asString());
+	if(!orderNode["TradeAmount"].isNull())
+		data_.order.tradeAmount = std::stof(orderNode["TradeAmount"].asString());
+		auto allRuleIds = orderNode["RuleIds"]["RuleId"];
+		for (auto value : allRuleIds)
+			data_.order.ruleIds.push_back(value.asString());
+	if(!value["Message"].isNull())
+		message_ = value["Message"].asString();
+	if(!value["TraceId"].isNull())
+		traceId_ = value["TraceId"].asString();
+	if(!value["ErrorCode"].isNull())
+		errorCode_ = value["ErrorCode"].asString();
+	if(!value["Code"].isNull())
+		code_ = value["Code"].asString();
+	if(!value["Success"].isNull())
+		success_ = value["Success"].asString() == "true";
+
+}
+
+std::string DescribeConfigurationPriceResult::getMessage()const
+{
+	return message_;
+}
+
+std::string DescribeConfigurationPriceResult::getTraceId()const
+{
+	return traceId_;
+}
+
+DescribeConfigurationPriceResult::Data DescribeConfigurationPriceResult::getData()const
+{
+	return data_;
+}
+
+std::string DescribeConfigurationPriceResult::getErrorCode()const
+{
+	return errorCode_;
+}
+
+std::string DescribeConfigurationPriceResult::getCode()const
+{
+	return code_;
+}
+
+bool DescribeConfigurationPriceResult::getSuccess()const
+{
+	return success_;
+}
+

+ 10 - 10
sae/src/model/ListTagResourcesResult.cc

@@ -46,26 +46,26 @@ void ListTagResourcesResult::parse(const std::string &payload)
 	for (auto dataNodeTagResourcesTagResource : allTagResourcesNode)
 	{
 		Data::TagResource tagResourceObject;
-		if(!dataNodeTagResourcesTagResource["TagKey"].isNull())
-			tagResourceObject.tagKey = dataNodeTagResourcesTagResource["TagKey"].asString();
+		if(!dataNodeTagResourcesTagResource["ResourceType"].isNull())
+			tagResourceObject.resourceType = dataNodeTagResourcesTagResource["ResourceType"].asString();
 		if(!dataNodeTagResourcesTagResource["TagValue"].isNull())
 			tagResourceObject.tagValue = dataNodeTagResourcesTagResource["TagValue"].asString();
 		if(!dataNodeTagResourcesTagResource["ResourceId"].isNull())
 			tagResourceObject.resourceId = dataNodeTagResourcesTagResource["ResourceId"].asString();
-		if(!dataNodeTagResourcesTagResource["ResourceType"].isNull())
-			tagResourceObject.resourceType = dataNodeTagResourcesTagResource["ResourceType"].asString();
+		if(!dataNodeTagResourcesTagResource["TagKey"].isNull())
+			tagResourceObject.tagKey = dataNodeTagResourcesTagResource["TagKey"].asString();
 		data_.tagResources.push_back(tagResourceObject);
 	}
-	if(!value["Code"].isNull())
-		code_ = value["Code"].asString();
-	if(!value["ErrorCode"].isNull())
-		errorCode_ = value["ErrorCode"].asString();
 	if(!value["Message"].isNull())
 		message_ = value["Message"].asString();
-	if(!value["Success"].isNull())
-		success_ = value["Success"].asString() == "true";
 	if(!value["TraceId"].isNull())
 		traceId_ = value["TraceId"].asString();
+	if(!value["ErrorCode"].isNull())
+		errorCode_ = value["ErrorCode"].asString();
+	if(!value["Code"].isNull())
+		code_ = value["Code"].asString();
+	if(!value["Success"].isNull())
+		success_ = value["Success"].asString() == "true";
 
 }
 

+ 13 - 11
sae/src/model/QueryResourceStaticsResult.cc

@@ -40,26 +40,28 @@ void QueryResourceStaticsResult::parse(const std::string &payload)
 	reader.parse(payload, value);
 	setRequestId(value["RequestId"].asString());
 	auto dataNode = value["Data"];
-	auto realTimeResNode = dataNode["RealTimeRes"];
-	if(!realTimeResNode["Cpu"].isNull())
-		data_.realTimeRes.cpu = std::stof(realTimeResNode["Cpu"].asString());
-	if(!realTimeResNode["Memory"].isNull())
-		data_.realTimeRes.memory = std::stof(realTimeResNode["Memory"].asString());
+	if(!dataNode["Workload"].isNull())
+		data_.workload = dataNode["Workload"].asString();
 	auto summaryNode = dataNode["Summary"];
 	if(!summaryNode["Cpu"].isNull())
 		data_.summary.cpu = std::stof(summaryNode["Cpu"].asString());
 	if(!summaryNode["Memory"].isNull())
 		data_.summary.memory = std::stof(summaryNode["Memory"].asString());
-	if(!value["Code"].isNull())
-		code_ = value["Code"].asString();
-	if(!value["ErrorCode"].isNull())
-		errorCode_ = value["ErrorCode"].asString();
+	auto realTimeResNode = dataNode["RealTimeRes"];
+	if(!realTimeResNode["Cpu"].isNull())
+		data_.realTimeRes.cpu = std::stof(realTimeResNode["Cpu"].asString());
+	if(!realTimeResNode["Memory"].isNull())
+		data_.realTimeRes.memory = std::stof(realTimeResNode["Memory"].asString());
 	if(!value["Message"].isNull())
 		message_ = value["Message"].asString();
-	if(!value["Success"].isNull())
-		success_ = value["Success"].asString() == "true";
 	if(!value["TraceId"].isNull())
 		traceId_ = value["TraceId"].asString();
+	if(!value["ErrorCode"].isNull())
+		errorCode_ = value["ErrorCode"].asString();
+	if(!value["Code"].isNull())
+		code_ = value["Code"].asString();
+	if(!value["Success"].isNull())
+		success_ = value["Success"].asString() == "true";
 
 }
 

+ 6 - 6
sae/src/model/TagResourcesResult.cc

@@ -39,18 +39,18 @@ void TagResourcesResult::parse(const std::string &payload)
 	Json::Value value;
 	reader.parse(payload, value);
 	setRequestId(value["RequestId"].asString());
-	if(!value["Code"].isNull())
-		code_ = value["Code"].asString();
+	if(!value["Message"].isNull())
+		message_ = value["Message"].asString();
+	if(!value["TraceId"].isNull())
+		traceId_ = value["TraceId"].asString();
 	if(!value["Data"].isNull())
 		data_ = value["Data"].asString() == "true";
 	if(!value["ErrorCode"].isNull())
 		errorCode_ = value["ErrorCode"].asString();
-	if(!value["Message"].isNull())
-		message_ = value["Message"].asString();
+	if(!value["Code"].isNull())
+		code_ = value["Code"].asString();
 	if(!value["Success"].isNull())
 		success_ = value["Success"].asString() == "true";
-	if(!value["TraceId"].isNull())
-		traceId_ = value["TraceId"].asString();
 
 }
 

+ 6 - 6
sae/src/model/UntagResourcesResult.cc

@@ -39,18 +39,18 @@ void UntagResourcesResult::parse(const std::string &payload)
 	Json::Value value;
 	reader.parse(payload, value);
 	setRequestId(value["RequestId"].asString());
-	if(!value["Code"].isNull())
-		code_ = value["Code"].asString();
+	if(!value["Message"].isNull())
+		message_ = value["Message"].asString();
+	if(!value["TraceId"].isNull())
+		traceId_ = value["TraceId"].asString();
 	if(!value["Data"].isNull())
 		data_ = value["Data"].asString() == "true";
 	if(!value["ErrorCode"].isNull())
 		errorCode_ = value["ErrorCode"].asString();
-	if(!value["Message"].isNull())
-		message_ = value["Message"].asString();
+	if(!value["Code"].isNull())
+		code_ = value["Code"].asString();
 	if(!value["Success"].isNull())
 		success_ = value["Success"].asString() == "true";
-	if(!value["TraceId"].isNull())
-		traceId_ = value["TraceId"].asString();
 
 }