Ver Fonte

Generated 2019-09-01 for OceanBasePro.

sdk-team há 1 ano atrás
pai
commit
0b56244443

+ 1 - 1
VERSION

@@ -1 +1 @@
-1.36.2096
+1.36.2097

+ 4 - 0
oceanbasepro/CMakeLists.txt

@@ -125,6 +125,8 @@ set(oceanbasepro_public_header_model
 	include/alibabacloud/oceanbasepro/model/DescribeInstancesResult.h
 	include/alibabacloud/oceanbasepro/model/DescribeMetricsDataRequest.h
 	include/alibabacloud/oceanbasepro/model/DescribeMetricsDataResult.h
+	include/alibabacloud/oceanbasepro/model/DescribeMetricsDataV2Request.h
+	include/alibabacloud/oceanbasepro/model/DescribeMetricsDataV2Result.h
 	include/alibabacloud/oceanbasepro/model/DescribeNodeMetricsRequest.h
 	include/alibabacloud/oceanbasepro/model/DescribeNodeMetricsResult.h
 	include/alibabacloud/oceanbasepro/model/DescribeOasAnomalySQLListRequest.h
@@ -406,6 +408,8 @@ set(oceanbasepro_src
 	src/model/DescribeInstancesResult.cc
 	src/model/DescribeMetricsDataRequest.cc
 	src/model/DescribeMetricsDataResult.cc
+	src/model/DescribeMetricsDataV2Request.cc
+	src/model/DescribeMetricsDataV2Result.cc
 	src/model/DescribeNodeMetricsRequest.cc
 	src/model/DescribeNodeMetricsResult.cc
 	src/model/DescribeOasAnomalySQLListRequest.cc

+ 8 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/OceanBaseProClient.h

@@ -126,6 +126,8 @@
 #include "model/DescribeInstancesResult.h"
 #include "model/DescribeMetricsDataRequest.h"
 #include "model/DescribeMetricsDataResult.h"
+#include "model/DescribeMetricsDataV2Request.h"
+#include "model/DescribeMetricsDataV2Result.h"
 #include "model/DescribeNodeMetricsRequest.h"
 #include "model/DescribeNodeMetricsResult.h"
 #include "model/DescribeOasAnomalySQLListRequest.h"
@@ -465,6 +467,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::DescribeMetricsDataResult> DescribeMetricsDataOutcome;
 			typedef std::future<DescribeMetricsDataOutcome> DescribeMetricsDataOutcomeCallable;
 			typedef std::function<void(const OceanBaseProClient*, const Model::DescribeMetricsDataRequest&, const DescribeMetricsDataOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeMetricsDataAsyncHandler;
+			typedef Outcome<Error, Model::DescribeMetricsDataV2Result> DescribeMetricsDataV2Outcome;
+			typedef std::future<DescribeMetricsDataV2Outcome> DescribeMetricsDataV2OutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DescribeMetricsDataV2Request&, const DescribeMetricsDataV2Outcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeMetricsDataV2AsyncHandler;
 			typedef Outcome<Error, Model::DescribeNodeMetricsResult> DescribeNodeMetricsOutcome;
 			typedef std::future<DescribeNodeMetricsOutcome> DescribeNodeMetricsOutcomeCallable;
 			typedef std::function<void(const OceanBaseProClient*, const Model::DescribeNodeMetricsRequest&, const DescribeNodeMetricsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeNodeMetricsAsyncHandler;
@@ -887,6 +892,9 @@ namespace AlibabaCloud
 			DescribeMetricsDataOutcome describeMetricsData(const Model::DescribeMetricsDataRequest &request)const;
 			void describeMetricsDataAsync(const Model::DescribeMetricsDataRequest& request, const DescribeMetricsDataAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			DescribeMetricsDataOutcomeCallable describeMetricsDataCallable(const Model::DescribeMetricsDataRequest& request) const;
+			DescribeMetricsDataV2Outcome describeMetricsDataV2(const Model::DescribeMetricsDataV2Request &request)const;
+			void describeMetricsDataV2Async(const Model::DescribeMetricsDataV2Request& request, const DescribeMetricsDataV2AsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeMetricsDataV2OutcomeCallable describeMetricsDataV2Callable(const Model::DescribeMetricsDataV2Request& request) const;
 			DescribeNodeMetricsOutcome describeNodeMetrics(const Model::DescribeNodeMetricsRequest &request)const;
 			void describeNodeMetricsAsync(const Model::DescribeNodeMetricsRequest& request, const DescribeNodeMetricsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			DescribeNodeMetricsOutcomeCallable describeNodeMetricsCallable(const Model::DescribeNodeMetricsRequest& request) const;

+ 6 - 2
oceanbasepro/include/alibabacloud/oceanbasepro/model/CreateBackupSetDownloadLinkResult.h

@@ -32,17 +32,21 @@ namespace AlibabaCloud
 			class ALIBABACLOUD_OCEANBASEPRO_EXPORT CreateBackupSetDownloadLinkResult : public ServiceResult
 			{
 			public:
+				struct Data
+				{
+					long downloadTaskId;
+				};
 
 
 				CreateBackupSetDownloadLinkResult();
 				explicit CreateBackupSetDownloadLinkResult(const std::string &payload);
 				~CreateBackupSetDownloadLinkResult();
-				long getDownloadTaskId()const;
+				Data getData()const;
 
 			protected:
 				void parse(const std::string &payload);
 			private:
-				long downloadTaskId_;
+				Data data_;
 
 			};
 		}

+ 1 - 1
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeInstanceResult.h

@@ -151,7 +151,7 @@ namespace AlibabaCloud
 					std::string deployType;
 					std::string proxyServiceStatus;
 					ReadOnlyResource readOnlyResource;
-					std::string nodeNum;
+					long nodeNum;
 					bool enableIsolationOptimization;
 					std::string dataMergeTime;
 					std::string specType;

+ 69 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeMetricsDataV2Request.h

@@ -0,0 +1,69 @@
+/*
+ * 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_OCEANBASEPRO_MODEL_DESCRIBEMETRICSDATAV2REQUEST_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEMETRICSDATAV2REQUEST_H_
+
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace OceanBasePro {
+namespace Model {
+class ALIBABACLOUD_OCEANBASEPRO_EXPORT DescribeMetricsDataV2Request : public RpcServiceRequest {
+public:
+	DescribeMetricsDataV2Request();
+	~DescribeMetricsDataV2Request();
+	std::string getGroupByLabels() const;
+	void setGroupByLabels(const std::string &groupByLabels);
+	std::string getStartTime() const;
+	void setStartTime(const std::string &startTime);
+	std::string getLimit() const;
+	void setLimit(const std::string &limit);
+	std::string getSortOrder() const;
+	void setSortOrder(const std::string &sortOrder);
+	std::string getSortMetricKey() const;
+	void setSortMetricKey(const std::string &sortMetricKey);
+	std::string getReplicaType() const;
+	void setReplicaType(const std::string &replicaType);
+	std::string getEndTime() const;
+	void setEndTime(const std::string &endTime);
+	std::string getLabels() const;
+	void setLabels(const std::string &labels);
+	std::string getInstanceId() const;
+	void setInstanceId(const std::string &instanceId);
+	std::string getMetrics() const;
+	void setMetrics(const std::string &metrics);
+
+private:
+	std::string groupByLabels_;
+	std::string startTime_;
+	std::string limit_;
+	std::string sortOrder_;
+	std::string sortMetricKey_;
+	std::string replicaType_;
+	std::string endTime_;
+	std::string labels_;
+	std::string instanceId_;
+	std::string metrics_;
+};
+} // namespace Model
+} // namespace OceanBasePro
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEMETRICSDATAV2REQUEST_H_

+ 61 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeMetricsDataV2Result.h

@@ -0,0 +1,61 @@
+/*
+ * 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_OCEANBASEPRO_MODEL_DESCRIBEMETRICSDATAV2RESULT_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEMETRICSDATAV2RESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+
+namespace AlibabaCloud
+{
+	namespace OceanBasePro
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_OCEANBASEPRO_EXPORT DescribeMetricsDataV2Result : public ServiceResult
+			{
+			public:
+				struct DataItem
+				{
+					struct DataItem2
+					{
+						std::string metricValue;
+						long timestamp;
+					};
+					std::string labels;
+					std::vector<DataItem::DataItem2> data1;
+				};
+
+
+				DescribeMetricsDataV2Result();
+				explicit DescribeMetricsDataV2Result(const std::string &payload);
+				~DescribeMetricsDataV2Result();
+				std::vector<DataItem> getData()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::vector<DataItem> data_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEMETRICSDATAV2RESULT_H_

+ 5 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeProxyServiceResult.h

@@ -38,11 +38,16 @@ namespace AlibabaCloud
 					long currentEndpointNum;
 					std::string zone;
 					long unitNum;
+					long exclusiveUnitNumLimit;
 					std::string createTime;
 					std::string proxyVersion;
 					std::string proxyClusterId;
 					long unitNumLimit;
+					long serverNumLimit;
+					bool allowModifyServerNum;
+					long sharedUnitNumLimit;
 					long endpointNumQuota;
+					std::string deployMode;
 					std::string unitSpec;
 					std::string expireTime;
 					std::string proxyServiceVersion;

+ 2 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeSQLSamplesResult.h

@@ -53,7 +53,9 @@ namespace AlibabaCloud
 					long requestId;
 					std::string requestTime;
 					std::string paramsValue;
+					std::string sqlId;
 					long ssstoreReadRows;
+					std::string sqlTextShort;
 					double scheduleTime;
 					long obUserId;
 					std::string traceId;

+ 3 - 1
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeTenantResult.h

@@ -119,6 +119,7 @@ namespace AlibabaCloud
 						std::string proxyClusterId;
 						int intranetPort;
 						long parallelQueryDegree;
+						std::string intranetAddressServiceType;
 						int internetSqlPort;
 						int internetRpcPort;
 						std::string connectionReplicaType;
@@ -131,6 +132,7 @@ namespace AlibabaCloud
 						long internetMaxConnectionLimit;
 						int intranetRpcPort;
 						std::string odpVersion;
+						std::string internetAddressServiceType;
 						std::string intranetAddress;
 						std::string vpcId;
 						std::vector<std::string> connectionLogicalZones;
@@ -193,7 +195,7 @@ namespace AlibabaCloud
 					std::string timeZone;
 					TenantResource tenantResource;
 					std::string vpcId;
-					std::string tenantMaxConnections;
+					long tenantMaxConnections;
 				};
 
 

+ 36 - 0
oceanbasepro/src/OceanBaseProClient.cc

@@ -1923,6 +1923,42 @@ OceanBaseProClient::DescribeMetricsDataOutcomeCallable OceanBaseProClient::descr
 	return task->get_future();
 }
 
+OceanBaseProClient::DescribeMetricsDataV2Outcome OceanBaseProClient::describeMetricsDataV2(const DescribeMetricsDataV2Request &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return DescribeMetricsDataV2Outcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DescribeMetricsDataV2Outcome(DescribeMetricsDataV2Result(outcome.result()));
+	else
+		return DescribeMetricsDataV2Outcome(outcome.error());
+}
+
+void OceanBaseProClient::describeMetricsDataV2Async(const DescribeMetricsDataV2Request& request, const DescribeMetricsDataV2AsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, describeMetricsDataV2(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+OceanBaseProClient::DescribeMetricsDataV2OutcomeCallable OceanBaseProClient::describeMetricsDataV2Callable(const DescribeMetricsDataV2Request &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DescribeMetricsDataV2Outcome()>>(
+			[this, request]()
+			{
+			return this->describeMetricsDataV2(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 OceanBaseProClient::DescribeNodeMetricsOutcome OceanBaseProClient::describeNodeMetrics(const DescribeNodeMetricsRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();

+ 5 - 4
oceanbasepro/src/model/CreateBackupSetDownloadLinkResult.cc

@@ -39,13 +39,14 @@ void CreateBackupSetDownloadLinkResult::parse(const std::string &payload)
 	Json::Value value;
 	reader.parse(payload, value);
 	setRequestId(value["RequestId"].asString());
-	if(!value["DownloadTaskId"].isNull())
-		downloadTaskId_ = std::stol(value["DownloadTaskId"].asString());
+	auto dataNode = value["Data"];
+	if(!dataNode["DownloadTaskId"].isNull())
+		data_.downloadTaskId = std::stol(dataNode["DownloadTaskId"].asString());
 
 }
 
-long CreateBackupSetDownloadLinkResult::getDownloadTaskId()const
+CreateBackupSetDownloadLinkResult::Data CreateBackupSetDownloadLinkResult::getData()const
 {
-	return downloadTaskId_;
+	return data_;
 }
 

+ 1 - 1
oceanbasepro/src/model/DescribeInstanceResult.cc

@@ -83,7 +83,7 @@ void DescribeInstanceResult::parse(const std::string &payload)
 	if(!instanceNode["InstanceRole"].isNull())
 		instance_.instanceRole = instanceNode["InstanceRole"].asString();
 	if(!instanceNode["NodeNum"].isNull())
-		instance_.nodeNum = instanceNode["NodeNum"].asString();
+		instance_.nodeNum = std::stol(instanceNode["NodeNum"].asString());
 	if(!instanceNode["ReplicaMode"].isNull())
 		instance_.replicaMode = instanceNode["ReplicaMode"].asString();
 	if(!instanceNode["IsolationOptimization"].isNull())

+ 117 - 0
oceanbasepro/src/model/DescribeMetricsDataV2Request.cc

@@ -0,0 +1,117 @@
+/*
+ * 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/oceanbasepro/model/DescribeMetricsDataV2Request.h>
+
+using AlibabaCloud::OceanBasePro::Model::DescribeMetricsDataV2Request;
+
+DescribeMetricsDataV2Request::DescribeMetricsDataV2Request()
+    : RpcServiceRequest("oceanbasepro", "2019-09-01", "DescribeMetricsDataV2") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+DescribeMetricsDataV2Request::~DescribeMetricsDataV2Request() {}
+
+std::string DescribeMetricsDataV2Request::getGroupByLabels() const {
+  return groupByLabels_;
+}
+
+void DescribeMetricsDataV2Request::setGroupByLabels(const std::string &groupByLabels) {
+  groupByLabels_ = groupByLabels;
+  setBodyParameter(std::string("GroupByLabels"), groupByLabels);
+}
+
+std::string DescribeMetricsDataV2Request::getStartTime() const {
+  return startTime_;
+}
+
+void DescribeMetricsDataV2Request::setStartTime(const std::string &startTime) {
+  startTime_ = startTime;
+  setBodyParameter(std::string("StartTime"), startTime);
+}
+
+std::string DescribeMetricsDataV2Request::getLimit() const {
+  return limit_;
+}
+
+void DescribeMetricsDataV2Request::setLimit(const std::string &limit) {
+  limit_ = limit;
+  setBodyParameter(std::string("Limit"), limit);
+}
+
+std::string DescribeMetricsDataV2Request::getSortOrder() const {
+  return sortOrder_;
+}
+
+void DescribeMetricsDataV2Request::setSortOrder(const std::string &sortOrder) {
+  sortOrder_ = sortOrder;
+  setBodyParameter(std::string("SortOrder"), sortOrder);
+}
+
+std::string DescribeMetricsDataV2Request::getSortMetricKey() const {
+  return sortMetricKey_;
+}
+
+void DescribeMetricsDataV2Request::setSortMetricKey(const std::string &sortMetricKey) {
+  sortMetricKey_ = sortMetricKey;
+  setBodyParameter(std::string("SortMetricKey"), sortMetricKey);
+}
+
+std::string DescribeMetricsDataV2Request::getReplicaType() const {
+  return replicaType_;
+}
+
+void DescribeMetricsDataV2Request::setReplicaType(const std::string &replicaType) {
+  replicaType_ = replicaType;
+  setBodyParameter(std::string("ReplicaType"), replicaType);
+}
+
+std::string DescribeMetricsDataV2Request::getEndTime() const {
+  return endTime_;
+}
+
+void DescribeMetricsDataV2Request::setEndTime(const std::string &endTime) {
+  endTime_ = endTime;
+  setBodyParameter(std::string("EndTime"), endTime);
+}
+
+std::string DescribeMetricsDataV2Request::getLabels() const {
+  return labels_;
+}
+
+void DescribeMetricsDataV2Request::setLabels(const std::string &labels) {
+  labels_ = labels;
+  setBodyParameter(std::string("Labels"), labels);
+}
+
+std::string DescribeMetricsDataV2Request::getInstanceId() const {
+  return instanceId_;
+}
+
+void DescribeMetricsDataV2Request::setInstanceId(const std::string &instanceId) {
+  instanceId_ = instanceId;
+  setBodyParameter(std::string("InstanceId"), instanceId);
+}
+
+std::string DescribeMetricsDataV2Request::getMetrics() const {
+  return metrics_;
+}
+
+void DescribeMetricsDataV2Request::setMetrics(const std::string &metrics) {
+  metrics_ = metrics;
+  setBodyParameter(std::string("Metrics"), metrics);
+}
+

+ 67 - 0
oceanbasepro/src/model/DescribeMetricsDataV2Result.cc

@@ -0,0 +1,67 @@
+/*
+ * 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/oceanbasepro/model/DescribeMetricsDataV2Result.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::OceanBasePro;
+using namespace AlibabaCloud::OceanBasePro::Model;
+
+DescribeMetricsDataV2Result::DescribeMetricsDataV2Result() :
+	ServiceResult()
+{}
+
+DescribeMetricsDataV2Result::DescribeMetricsDataV2Result(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+DescribeMetricsDataV2Result::~DescribeMetricsDataV2Result()
+{}
+
+void DescribeMetricsDataV2Result::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto allDataNode = value["Data"]["DataItem"];
+	for (auto valueDataDataItem : allDataNode)
+	{
+		DataItem dataObject;
+		if(!valueDataDataItem["Labels"].isNull())
+			dataObject.labels = valueDataDataItem["Labels"].asString();
+		auto allData1Node = valueDataDataItem["Data"]["DataItem"];
+		for (auto valueDataDataItemDataDataItem : allData1Node)
+		{
+			DataItem::DataItem2 data1Object;
+			if(!valueDataDataItemDataDataItem["MetricValue"].isNull())
+				data1Object.metricValue = valueDataDataItemDataDataItem["MetricValue"].asString();
+			if(!valueDataDataItemDataDataItem["Timestamp"].isNull())
+				data1Object.timestamp = std::stol(valueDataDataItemDataDataItem["Timestamp"].asString());
+			dataObject.data1.push_back(data1Object);
+		}
+		data_.push_back(dataObject);
+	}
+
+}
+
+std::vector<DescribeMetricsDataV2Result::DataItem> DescribeMetricsDataV2Result::getData()const
+{
+	return data_;
+}
+

+ 10 - 0
oceanbasepro/src/model/DescribeProxyServiceResult.cc

@@ -66,6 +66,16 @@ void DescribeProxyServiceResult::parse(const std::string &payload)
 		data_.unitNumLimit = std::stol(dataNode["UnitNumLimit"].asString());
 	if(!dataNode["ProxyVersion"].isNull())
 		data_.proxyVersion = dataNode["ProxyVersion"].asString();
+	if(!dataNode["DeployMode"].isNull())
+		data_.deployMode = dataNode["DeployMode"].asString();
+	if(!dataNode["ServerNumLimit"].isNull())
+		data_.serverNumLimit = std::stol(dataNode["ServerNumLimit"].asString());
+	if(!dataNode["AllowModifyServerNum"].isNull())
+		data_.allowModifyServerNum = dataNode["AllowModifyServerNum"].asString() == "true";
+	if(!dataNode["SharedUnitNumLimit"].isNull())
+		data_.sharedUnitNumLimit = std::stol(dataNode["SharedUnitNumLimit"].asString());
+	if(!dataNode["ExclusiveUnitNumLimit"].isNull())
+		data_.exclusiveUnitNumLimit = std::stol(dataNode["ExclusiveUnitNumLimit"].asString());
 
 }
 

+ 4 - 0
oceanbasepro/src/model/DescribeSQLSamplesResult.cc

@@ -151,6 +151,10 @@ void DescribeSQLSamplesResult::parse(const std::string &payload)
 			dataObject.sqlText = valueDataDataItem["SqlText"].asString();
 		if(!valueDataDataItem["ParamsValue"].isNull())
 			dataObject.paramsValue = valueDataDataItem["ParamsValue"].asString();
+		if(!valueDataDataItem["SqlId"].isNull())
+			dataObject.sqlId = valueDataDataItem["SqlId"].asString();
+		if(!valueDataDataItem["SqlTextShort"].isNull())
+			dataObject.sqlTextShort = valueDataDataItem["SqlTextShort"].asString();
 		data_.push_back(dataObject);
 	}
 

+ 5 - 1
oceanbasepro/src/model/DescribeTenantResult.cc

@@ -105,7 +105,7 @@ void DescribeTenantResult::parse(const std::string &payload)
 	if(!tenantNode["OdpVersion"].isNull())
 		tenant_.odpVersion = tenantNode["OdpVersion"].asString();
 	if(!tenantNode["TenantMaxConnections"].isNull())
-		tenant_.tenantMaxConnections = tenantNode["TenantMaxConnections"].asString();
+		tenant_.tenantMaxConnections = std::stol(tenantNode["TenantMaxConnections"].asString());
 	if(!tenantNode["ParameterTemplate"].isNull())
 		tenant_.parameterTemplate = tenantNode["ParameterTemplate"].asString();
 	if(!tenantNode["Iops"].isNull())
@@ -166,6 +166,10 @@ void DescribeTenantResult::parse(const std::string &payload)
 			tenantConnectionsItemObject.odpVersion = tenantNodeTenantConnectionsTenantConnectionsItem["OdpVersion"].asString();
 		if(!tenantNodeTenantConnectionsTenantConnectionsItem["InternetSqlPort"].isNull())
 			tenantConnectionsItemObject.internetSqlPort = std::stoi(tenantNodeTenantConnectionsTenantConnectionsItem["InternetSqlPort"].asString());
+		if(!tenantNodeTenantConnectionsTenantConnectionsItem["InternetAddressServiceType"].isNull())
+			tenantConnectionsItemObject.internetAddressServiceType = tenantNodeTenantConnectionsTenantConnectionsItem["InternetAddressServiceType"].asString();
+		if(!tenantNodeTenantConnectionsTenantConnectionsItem["IntranetAddressServiceType"].isNull())
+			tenantConnectionsItemObject.intranetAddressServiceType = tenantNodeTenantConnectionsTenantConnectionsItem["IntranetAddressServiceType"].asString();
 		auto allConnectionZones = value["ConnectionZones"]["ConnectionZones"];
 		for (auto value : allConnectionZones)
 			tenantConnectionsItemObject.connectionZones.push_back(value.asString());