فهرست منبع

Support GetDataExportPreCheckDetail API.

sdk-team 3 سال پیش
والد
کامیت
6e851fd163

+ 1 - 1
VERSION

@@ -1 +1 @@
-1.36.1544
+1.36.1545

+ 4 - 0
dms-enterprise/CMakeLists.txt

@@ -153,6 +153,8 @@ set(dms-enterprise_public_header_model
 	include/alibabacloud/dms-enterprise/model/GetDataExportDownloadURLResult.h
 	include/alibabacloud/dms-enterprise/model/GetDataExportOrderDetailRequest.h
 	include/alibabacloud/dms-enterprise/model/GetDataExportOrderDetailResult.h
+	include/alibabacloud/dms-enterprise/model/GetDataExportPreCheckDetailRequest.h
+	include/alibabacloud/dms-enterprise/model/GetDataExportPreCheckDetailResult.h
 	include/alibabacloud/dms-enterprise/model/GetDataImportSQLRequest.h
 	include/alibabacloud/dms-enterprise/model/GetDataImportSQLResult.h
 	include/alibabacloud/dms-enterprise/model/GetDataTrackJobDegreeRequest.h
@@ -560,6 +562,8 @@ set(dms-enterprise_src
 	src/model/GetDataExportDownloadURLResult.cc
 	src/model/GetDataExportOrderDetailRequest.cc
 	src/model/GetDataExportOrderDetailResult.cc
+	src/model/GetDataExportPreCheckDetailRequest.cc
+	src/model/GetDataExportPreCheckDetailResult.cc
 	src/model/GetDataImportSQLRequest.cc
 	src/model/GetDataImportSQLResult.cc
 	src/model/GetDataTrackJobDegreeRequest.cc

+ 8 - 0
dms-enterprise/include/alibabacloud/dms-enterprise/Dms_enterpriseClient.h

@@ -154,6 +154,8 @@
 #include "model/GetDataExportDownloadURLResult.h"
 #include "model/GetDataExportOrderDetailRequest.h"
 #include "model/GetDataExportOrderDetailResult.h"
+#include "model/GetDataExportPreCheckDetailRequest.h"
+#include "model/GetDataExportPreCheckDetailResult.h"
 #include "model/GetDataImportSQLRequest.h"
 #include "model/GetDataImportSQLResult.h"
 #include "model/GetDataTrackJobDegreeRequest.h"
@@ -633,6 +635,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::GetDataExportOrderDetailResult> GetDataExportOrderDetailOutcome;
 			typedef std::future<GetDataExportOrderDetailOutcome> GetDataExportOrderDetailOutcomeCallable;
 			typedef std::function<void(const Dms_enterpriseClient*, const Model::GetDataExportOrderDetailRequest&, const GetDataExportOrderDetailOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetDataExportOrderDetailAsyncHandler;
+			typedef Outcome<Error, Model::GetDataExportPreCheckDetailResult> GetDataExportPreCheckDetailOutcome;
+			typedef std::future<GetDataExportPreCheckDetailOutcome> GetDataExportPreCheckDetailOutcomeCallable;
+			typedef std::function<void(const Dms_enterpriseClient*, const Model::GetDataExportPreCheckDetailRequest&, const GetDataExportPreCheckDetailOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetDataExportPreCheckDetailAsyncHandler;
 			typedef Outcome<Error, Model::GetDataImportSQLResult> GetDataImportSQLOutcome;
 			typedef std::future<GetDataImportSQLOutcome> GetDataImportSQLOutcomeCallable;
 			typedef std::function<void(const Dms_enterpriseClient*, const Model::GetDataImportSQLRequest&, const GetDataImportSQLOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetDataImportSQLAsyncHandler;
@@ -1244,6 +1249,9 @@ namespace AlibabaCloud
 			GetDataExportOrderDetailOutcome getDataExportOrderDetail(const Model::GetDataExportOrderDetailRequest &request)const;
 			void getDataExportOrderDetailAsync(const Model::GetDataExportOrderDetailRequest& request, const GetDataExportOrderDetailAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			GetDataExportOrderDetailOutcomeCallable getDataExportOrderDetailCallable(const Model::GetDataExportOrderDetailRequest& request) const;
+			GetDataExportPreCheckDetailOutcome getDataExportPreCheckDetail(const Model::GetDataExportPreCheckDetailRequest &request)const;
+			void getDataExportPreCheckDetailAsync(const Model::GetDataExportPreCheckDetailRequest& request, const GetDataExportPreCheckDetailAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			GetDataExportPreCheckDetailOutcomeCallable getDataExportPreCheckDetailCallable(const Model::GetDataExportPreCheckDetailRequest& request) const;
 			GetDataImportSQLOutcome getDataImportSQL(const Model::GetDataImportSQLRequest &request)const;
 			void getDataImportSQLAsync(const Model::GetDataImportSQLRequest& request, const GetDataImportSQLAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			GetDataImportSQLOutcomeCallable getDataImportSQLCallable(const Model::GetDataImportSQLRequest& request) const;

+ 45 - 0
dms-enterprise/include/alibabacloud/dms-enterprise/model/GetDataExportPreCheckDetailRequest.h

@@ -0,0 +1,45 @@
+/*
+ * 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_DMS_ENTERPRISE_MODEL_GETDATAEXPORTPRECHECKDETAILREQUEST_H_
+#define ALIBABACLOUD_DMS_ENTERPRISE_MODEL_GETDATAEXPORTPRECHECKDETAILREQUEST_H_
+
+#include <alibabacloud/dms-enterprise/Dms_enterpriseExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Dms_enterprise {
+namespace Model {
+class ALIBABACLOUD_DMS_ENTERPRISE_EXPORT GetDataExportPreCheckDetailRequest : public RpcServiceRequest {
+public:
+	GetDataExportPreCheckDetailRequest();
+	~GetDataExportPreCheckDetailRequest();
+	long getTid() const;
+	void setTid(long tid);
+	long getOrderId() const;
+	void setOrderId(long orderId);
+
+private:
+	long tid_;
+	long orderId_;
+};
+} // namespace Model
+} // namespace Dms_enterprise
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_DMS_ENTERPRISE_MODEL_GETDATAEXPORTPRECHECKDETAILREQUEST_H_

+ 67 - 0
dms-enterprise/include/alibabacloud/dms-enterprise/model/GetDataExportPreCheckDetailResult.h

@@ -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.
+ */
+
+#ifndef ALIBABACLOUD_DMS_ENTERPRISE_MODEL_GETDATAEXPORTPRECHECKDETAILRESULT_H_
+#define ALIBABACLOUD_DMS_ENTERPRISE_MODEL_GETDATAEXPORTPRECHECKDETAILRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/dms-enterprise/Dms_enterpriseExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Dms_enterprise
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_DMS_ENTERPRISE_EXPORT GetDataExportPreCheckDetailResult : public ServiceResult
+			{
+			public:
+				struct PreCheckResult
+				{
+					struct PreCheckDetailListItem
+					{
+						long affectRows;
+						std::string sQL;
+					};
+					bool ignoreAffectRows;
+					std::vector<PreCheckDetailListItem> preCheckDetailList;
+				};
+
+
+				GetDataExportPreCheckDetailResult();
+				explicit GetDataExportPreCheckDetailResult(const std::string &payload);
+				~GetDataExportPreCheckDetailResult();
+				PreCheckResult getPreCheckResult()const;
+				std::string getErrorCode()const;
+				std::string getErrorMessage()const;
+				bool getSuccess()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				PreCheckResult preCheckResult_;
+				std::string errorCode_;
+				std::string errorMessage_;
+				bool success_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_DMS_ENTERPRISE_MODEL_GETDATAEXPORTPRECHECKDETAILRESULT_H_

+ 6 - 0
dms-enterprise/include/alibabacloud/dms-enterprise/model/GetOpLogRequest.h

@@ -30,6 +30,8 @@ class ALIBABACLOUD_DMS_ENTERPRISE_EXPORT GetOpLogRequest : public RpcServiceRequ
 public:
 	GetOpLogRequest();
 	~GetOpLogRequest();
+	std::string getUserNick() const;
+	void setUserNick(const std::string &userNick);
 	std::string getStartTime() const;
 	void setStartTime(const std::string &startTime);
 	long getTid() const;
@@ -42,14 +44,18 @@ public:
 	void setModule(const std::string &module);
 	std::string getEndTime() const;
 	void setEndTime(const std::string &endTime);
+	std::string getDatabaseName() const;
+	void setDatabaseName(const std::string &databaseName);
 
 private:
+	std::string userNick_;
 	std::string startTime_;
 	long tid_;
 	int pageNumber_;
 	int pageSize_;
 	std::string module_;
 	std::string endTime_;
+	std::string databaseName_;
 };
 } // namespace Model
 } // namespace Dms_enterprise

+ 36 - 0
dms-enterprise/src/Dms-enterpriseClient.cc

@@ -2427,6 +2427,42 @@ Dms_enterpriseClient::GetDataExportOrderDetailOutcomeCallable Dms_enterpriseClie
 	return task->get_future();
 }
 
+Dms_enterpriseClient::GetDataExportPreCheckDetailOutcome Dms_enterpriseClient::getDataExportPreCheckDetail(const GetDataExportPreCheckDetailRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return GetDataExportPreCheckDetailOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return GetDataExportPreCheckDetailOutcome(GetDataExportPreCheckDetailResult(outcome.result()));
+	else
+		return GetDataExportPreCheckDetailOutcome(outcome.error());
+}
+
+void Dms_enterpriseClient::getDataExportPreCheckDetailAsync(const GetDataExportPreCheckDetailRequest& request, const GetDataExportPreCheckDetailAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, getDataExportPreCheckDetail(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+Dms_enterpriseClient::GetDataExportPreCheckDetailOutcomeCallable Dms_enterpriseClient::getDataExportPreCheckDetailCallable(const GetDataExportPreCheckDetailRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<GetDataExportPreCheckDetailOutcome()>>(
+			[this, request]()
+			{
+			return this->getDataExportPreCheckDetail(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 Dms_enterpriseClient::GetDataImportSQLOutcome Dms_enterpriseClient::getDataImportSQL(const GetDataImportSQLRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();

+ 45 - 0
dms-enterprise/src/model/GetDataExportPreCheckDetailRequest.cc

@@ -0,0 +1,45 @@
+/*
+ * 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/dms-enterprise/model/GetDataExportPreCheckDetailRequest.h>
+
+using AlibabaCloud::Dms_enterprise::Model::GetDataExportPreCheckDetailRequest;
+
+GetDataExportPreCheckDetailRequest::GetDataExportPreCheckDetailRequest()
+    : RpcServiceRequest("dms-enterprise", "2018-11-01", "GetDataExportPreCheckDetail") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+GetDataExportPreCheckDetailRequest::~GetDataExportPreCheckDetailRequest() {}
+
+long GetDataExportPreCheckDetailRequest::getTid() const {
+  return tid_;
+}
+
+void GetDataExportPreCheckDetailRequest::setTid(long tid) {
+  tid_ = tid;
+  setParameter(std::string("Tid"), std::to_string(tid));
+}
+
+long GetDataExportPreCheckDetailRequest::getOrderId() const {
+  return orderId_;
+}
+
+void GetDataExportPreCheckDetailRequest::setOrderId(long orderId) {
+  orderId_ = orderId;
+  setParameter(std::string("OrderId"), std::to_string(orderId));
+}
+

+ 83 - 0
dms-enterprise/src/model/GetDataExportPreCheckDetailResult.cc

@@ -0,0 +1,83 @@
+/*
+ * 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/dms-enterprise/model/GetDataExportPreCheckDetailResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Dms_enterprise;
+using namespace AlibabaCloud::Dms_enterprise::Model;
+
+GetDataExportPreCheckDetailResult::GetDataExportPreCheckDetailResult() :
+	ServiceResult()
+{}
+
+GetDataExportPreCheckDetailResult::GetDataExportPreCheckDetailResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+GetDataExportPreCheckDetailResult::~GetDataExportPreCheckDetailResult()
+{}
+
+void GetDataExportPreCheckDetailResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto preCheckResultNode = value["PreCheckResult"];
+	if(!preCheckResultNode["IgnoreAffectRows"].isNull())
+		preCheckResult_.ignoreAffectRows = preCheckResultNode["IgnoreAffectRows"].asString() == "true";
+	auto allPreCheckDetailListNode = preCheckResultNode["PreCheckDetailList"]["PreCheckDetailListItem"];
+	for (auto preCheckResultNodePreCheckDetailListPreCheckDetailListItem : allPreCheckDetailListNode)
+	{
+		PreCheckResult::PreCheckDetailListItem preCheckDetailListItemObject;
+		if(!preCheckResultNodePreCheckDetailListPreCheckDetailListItem["AffectRows"].isNull())
+			preCheckDetailListItemObject.affectRows = std::stol(preCheckResultNodePreCheckDetailListPreCheckDetailListItem["AffectRows"].asString());
+		if(!preCheckResultNodePreCheckDetailListPreCheckDetailListItem["SQL"].isNull())
+			preCheckDetailListItemObject.sQL = preCheckResultNodePreCheckDetailListPreCheckDetailListItem["SQL"].asString();
+		preCheckResult_.preCheckDetailList.push_back(preCheckDetailListItemObject);
+	}
+	if(!value["ErrorCode"].isNull())
+		errorCode_ = value["ErrorCode"].asString();
+	if(!value["ErrorMessage"].isNull())
+		errorMessage_ = value["ErrorMessage"].asString();
+	if(!value["Success"].isNull())
+		success_ = value["Success"].asString() == "true";
+
+}
+
+GetDataExportPreCheckDetailResult::PreCheckResult GetDataExportPreCheckDetailResult::getPreCheckResult()const
+{
+	return preCheckResult_;
+}
+
+std::string GetDataExportPreCheckDetailResult::getErrorCode()const
+{
+	return errorCode_;
+}
+
+std::string GetDataExportPreCheckDetailResult::getErrorMessage()const
+{
+	return errorMessage_;
+}
+
+bool GetDataExportPreCheckDetailResult::getSuccess()const
+{
+	return success_;
+}
+

+ 18 - 0
dms-enterprise/src/model/GetOpLogRequest.cc

@@ -25,6 +25,15 @@ GetOpLogRequest::GetOpLogRequest()
 
 GetOpLogRequest::~GetOpLogRequest() {}
 
+std::string GetOpLogRequest::getUserNick() const {
+  return userNick_;
+}
+
+void GetOpLogRequest::setUserNick(const std::string &userNick) {
+  userNick_ = userNick;
+  setParameter(std::string("UserNick"), userNick);
+}
+
 std::string GetOpLogRequest::getStartTime() const {
   return startTime_;
 }
@@ -79,3 +88,12 @@ void GetOpLogRequest::setEndTime(const std::string &endTime) {
   setParameter(std::string("EndTime"), endTime);
 }
 
+std::string GetOpLogRequest::getDatabaseName() const {
+  return databaseName_;
+}
+
+void GetOpLogRequest::setDatabaseName(const std::string &databaseName) {
+  databaseName_ = databaseName;
+  setParameter(std::string("DatabaseName"), databaseName);
+}
+