Support GetDataExportPreCheckDetail API.

This commit is contained in:
sdk-team
2023-04-27 08:32:21 +00:00
parent e9912734b2
commit 6e851fd163
10 changed files with 313 additions and 1 deletions

View File

@@ -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

View File

@@ -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;

View File

@@ -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_

View File

@@ -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_

View File

@@ -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

View File

@@ -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();

View File

@@ -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));
}

View File

@@ -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_;
}

View File

@@ -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);
}