Quellcode durchsuchen

Supported API for DescribeInstanceDomains.

sdk-team vor 6 Jahren
Ursprung
Commit
f0971eaa34

+ 3 - 0
CHANGELOG

@@ -1,3 +1,6 @@
+2020-03-18 Version: 1.36.325
+- Supported API for DescribeInstanceDomains.
+
 2020-03-18 Version: 1.36.324
 - ACM POP SDK.
 

+ 1 - 1
VERSION

@@ -1 +1 @@
-1.36.324
+1.36.325

+ 4 - 0
alidns/CMakeLists.txt

@@ -127,6 +127,8 @@ set(alidns_public_header_model
 	include/alibabacloud/alidns/model/DescribeGtmRecoveryPlanAvailableConfigResult.h
 	include/alibabacloud/alidns/model/DescribeGtmRecoveryPlansRequest.h
 	include/alibabacloud/alidns/model/DescribeGtmRecoveryPlansResult.h
+	include/alibabacloud/alidns/model/DescribeInstanceDomainsRequest.h
+	include/alibabacloud/alidns/model/DescribeInstanceDomainsResult.h
 	include/alibabacloud/alidns/model/DescribeRecordLogsRequest.h
 	include/alibabacloud/alidns/model/DescribeRecordLogsResult.h
 	include/alibabacloud/alidns/model/DescribeRecordStatisticsRequest.h
@@ -300,6 +302,8 @@ set(alidns_src
 	src/model/DescribeGtmRecoveryPlanAvailableConfigResult.cc
 	src/model/DescribeGtmRecoveryPlansRequest.cc
 	src/model/DescribeGtmRecoveryPlansResult.cc
+	src/model/DescribeInstanceDomainsRequest.cc
+	src/model/DescribeInstanceDomainsResult.cc
 	src/model/DescribeRecordLogsRequest.cc
 	src/model/DescribeRecordLogsResult.cc
 	src/model/DescribeRecordStatisticsRequest.cc

+ 8 - 0
alidns/include/alibabacloud/alidns/AlidnsClient.h

@@ -128,6 +128,8 @@
 #include "model/DescribeGtmRecoveryPlanAvailableConfigResult.h"
 #include "model/DescribeGtmRecoveryPlansRequest.h"
 #include "model/DescribeGtmRecoveryPlansResult.h"
+#include "model/DescribeInstanceDomainsRequest.h"
+#include "model/DescribeInstanceDomainsResult.h"
 #include "model/DescribeRecordLogsRequest.h"
 #include "model/DescribeRecordLogsResult.h"
 #include "model/DescribeRecordStatisticsRequest.h"
@@ -360,6 +362,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::DescribeGtmRecoveryPlansResult> DescribeGtmRecoveryPlansOutcome;
 			typedef std::future<DescribeGtmRecoveryPlansOutcome> DescribeGtmRecoveryPlansOutcomeCallable;
 			typedef std::function<void(const AlidnsClient*, const Model::DescribeGtmRecoveryPlansRequest&, const DescribeGtmRecoveryPlansOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeGtmRecoveryPlansAsyncHandler;
+			typedef Outcome<Error, Model::DescribeInstanceDomainsResult> DescribeInstanceDomainsOutcome;
+			typedef std::future<DescribeInstanceDomainsOutcome> DescribeInstanceDomainsOutcomeCallable;
+			typedef std::function<void(const AlidnsClient*, const Model::DescribeInstanceDomainsRequest&, const DescribeInstanceDomainsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeInstanceDomainsAsyncHandler;
 			typedef Outcome<Error, Model::DescribeRecordLogsResult> DescribeRecordLogsOutcome;
 			typedef std::future<DescribeRecordLogsOutcome> DescribeRecordLogsOutcomeCallable;
 			typedef std::function<void(const AlidnsClient*, const Model::DescribeRecordLogsRequest&, const DescribeRecordLogsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeRecordLogsAsyncHandler;
@@ -620,6 +625,9 @@ namespace AlibabaCloud
 			DescribeGtmRecoveryPlansOutcome describeGtmRecoveryPlans(const Model::DescribeGtmRecoveryPlansRequest &request)const;
 			void describeGtmRecoveryPlansAsync(const Model::DescribeGtmRecoveryPlansRequest& request, const DescribeGtmRecoveryPlansAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			DescribeGtmRecoveryPlansOutcomeCallable describeGtmRecoveryPlansCallable(const Model::DescribeGtmRecoveryPlansRequest& request) const;
+			DescribeInstanceDomainsOutcome describeInstanceDomains(const Model::DescribeInstanceDomainsRequest &request)const;
+			void describeInstanceDomainsAsync(const Model::DescribeInstanceDomainsRequest& request, const DescribeInstanceDomainsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeInstanceDomainsOutcomeCallable describeInstanceDomainsCallable(const Model::DescribeInstanceDomainsRequest& request) const;
 			DescribeRecordLogsOutcome describeRecordLogs(const Model::DescribeRecordLogsRequest &request)const;
 			void describeRecordLogsAsync(const Model::DescribeRecordLogsRequest& request, const DescribeRecordLogsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			DescribeRecordLogsOutcomeCallable describeRecordLogsCallable(const Model::DescribeRecordLogsRequest& request) const;

+ 60 - 0
alidns/include/alibabacloud/alidns/model/DescribeInstanceDomainsRequest.h

@@ -0,0 +1,60 @@
+/*
+ * 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_ALIDNS_MODEL_DESCRIBEINSTANCEDOMAINSREQUEST_H_
+#define ALIBABACLOUD_ALIDNS_MODEL_DESCRIBEINSTANCEDOMAINSREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/alidns/AlidnsExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Alidns
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_ALIDNS_EXPORT DescribeInstanceDomainsRequest : public RpcServiceRequest
+			{
+
+			public:
+				DescribeInstanceDomainsRequest();
+				~DescribeInstanceDomainsRequest();
+
+				long getPageNumber()const;
+				void setPageNumber(long pageNumber);
+				std::string getInstanceId()const;
+				void setInstanceId(const std::string& instanceId);
+				std::string getUserClientIp()const;
+				void setUserClientIp(const std::string& userClientIp);
+				long getPageSize()const;
+				void setPageSize(long pageSize);
+				std::string getLang()const;
+				void setLang(const std::string& lang);
+
+            private:
+				long pageNumber_;
+				std::string instanceId_;
+				std::string userClientIp_;
+				long pageSize_;
+				std::string lang_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_ALIDNS_MODEL_DESCRIBEINSTANCEDOMAINSREQUEST_H_

+ 65 - 0
alidns/include/alibabacloud/alidns/model/DescribeInstanceDomainsResult.h

@@ -0,0 +1,65 @@
+/*
+ * 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_ALIDNS_MODEL_DESCRIBEINSTANCEDOMAINSRESULT_H_
+#define ALIBABACLOUD_ALIDNS_MODEL_DESCRIBEINSTANCEDOMAINSRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/alidns/AlidnsExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Alidns
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_ALIDNS_EXPORT DescribeInstanceDomainsResult : public ServiceResult
+			{
+			public:
+				struct InstanceDomain
+				{
+					std::string domainName;
+					std::string createTime;
+					long createTimestamp;
+				};
+
+
+				DescribeInstanceDomainsResult();
+				explicit DescribeInstanceDomainsResult(const std::string &payload);
+				~DescribeInstanceDomainsResult();
+				int getPageSize()const;
+				int getPageNumber()const;
+				std::vector<InstanceDomain> getInstanceDomains()const;
+				int getTotalPages()const;
+				int getTotalItems()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				int pageSize_;
+				int pageNumber_;
+				std::vector<InstanceDomain> instanceDomains_;
+				int totalPages_;
+				int totalItems_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_ALIDNS_MODEL_DESCRIBEINSTANCEDOMAINSRESULT_H_

+ 36 - 0
alidns/src/AlidnsClient.cc

@@ -1959,6 +1959,42 @@ AlidnsClient::DescribeGtmRecoveryPlansOutcomeCallable AlidnsClient::describeGtmR
 	return task->get_future();
 }
 
+AlidnsClient::DescribeInstanceDomainsOutcome AlidnsClient::describeInstanceDomains(const DescribeInstanceDomainsRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return DescribeInstanceDomainsOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DescribeInstanceDomainsOutcome(DescribeInstanceDomainsResult(outcome.result()));
+	else
+		return DescribeInstanceDomainsOutcome(outcome.error());
+}
+
+void AlidnsClient::describeInstanceDomainsAsync(const DescribeInstanceDomainsRequest& request, const DescribeInstanceDomainsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, describeInstanceDomains(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+AlidnsClient::DescribeInstanceDomainsOutcomeCallable AlidnsClient::describeInstanceDomainsCallable(const DescribeInstanceDomainsRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DescribeInstanceDomainsOutcome()>>(
+			[this, request]()
+			{
+			return this->describeInstanceDomains(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 AlidnsClient::DescribeRecordLogsOutcome AlidnsClient::describeRecordLogs(const DescribeRecordLogsRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();

+ 84 - 0
alidns/src/model/DescribeInstanceDomainsRequest.cc

@@ -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.
+ */
+
+#include <alibabacloud/alidns/model/DescribeInstanceDomainsRequest.h>
+
+using AlibabaCloud::Alidns::Model::DescribeInstanceDomainsRequest;
+
+DescribeInstanceDomainsRequest::DescribeInstanceDomainsRequest() :
+	RpcServiceRequest("alidns", "2015-01-09", "DescribeInstanceDomains")
+{
+	setMethod(HttpRequest::Method::Post);
+}
+
+DescribeInstanceDomainsRequest::~DescribeInstanceDomainsRequest()
+{}
+
+long DescribeInstanceDomainsRequest::getPageNumber()const
+{
+	return pageNumber_;
+}
+
+void DescribeInstanceDomainsRequest::setPageNumber(long pageNumber)
+{
+	pageNumber_ = pageNumber;
+	setParameter("PageNumber", std::to_string(pageNumber));
+}
+
+std::string DescribeInstanceDomainsRequest::getInstanceId()const
+{
+	return instanceId_;
+}
+
+void DescribeInstanceDomainsRequest::setInstanceId(const std::string& instanceId)
+{
+	instanceId_ = instanceId;
+	setParameter("InstanceId", instanceId);
+}
+
+std::string DescribeInstanceDomainsRequest::getUserClientIp()const
+{
+	return userClientIp_;
+}
+
+void DescribeInstanceDomainsRequest::setUserClientIp(const std::string& userClientIp)
+{
+	userClientIp_ = userClientIp;
+	setParameter("UserClientIp", userClientIp);
+}
+
+long DescribeInstanceDomainsRequest::getPageSize()const
+{
+	return pageSize_;
+}
+
+void DescribeInstanceDomainsRequest::setPageSize(long pageSize)
+{
+	pageSize_ = pageSize;
+	setParameter("PageSize", std::to_string(pageSize));
+}
+
+std::string DescribeInstanceDomainsRequest::getLang()const
+{
+	return lang_;
+}
+
+void DescribeInstanceDomainsRequest::setLang(const std::string& lang)
+{
+	lang_ = lang;
+	setParameter("Lang", lang);
+}
+

+ 89 - 0
alidns/src/model/DescribeInstanceDomainsResult.cc

@@ -0,0 +1,89 @@
+/*
+ * 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/alidns/model/DescribeInstanceDomainsResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Alidns;
+using namespace AlibabaCloud::Alidns::Model;
+
+DescribeInstanceDomainsResult::DescribeInstanceDomainsResult() :
+	ServiceResult()
+{}
+
+DescribeInstanceDomainsResult::DescribeInstanceDomainsResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+DescribeInstanceDomainsResult::~DescribeInstanceDomainsResult()
+{}
+
+void DescribeInstanceDomainsResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto allInstanceDomainsNode = value["InstanceDomains"]["InstanceDomain"];
+	for (auto valueInstanceDomainsInstanceDomain : allInstanceDomainsNode)
+	{
+		InstanceDomain instanceDomainsObject;
+		if(!valueInstanceDomainsInstanceDomain["DomainName"].isNull())
+			instanceDomainsObject.domainName = valueInstanceDomainsInstanceDomain["DomainName"].asString();
+		if(!valueInstanceDomainsInstanceDomain["CreateTime"].isNull())
+			instanceDomainsObject.createTime = valueInstanceDomainsInstanceDomain["CreateTime"].asString();
+		if(!valueInstanceDomainsInstanceDomain["CreateTimestamp"].isNull())
+			instanceDomainsObject.createTimestamp = std::stol(valueInstanceDomainsInstanceDomain["CreateTimestamp"].asString());
+		instanceDomains_.push_back(instanceDomainsObject);
+	}
+	if(!value["TotalItems"].isNull())
+		totalItems_ = std::stoi(value["TotalItems"].asString());
+	if(!value["PageNumber"].isNull())
+		pageNumber_ = std::stoi(value["PageNumber"].asString());
+	if(!value["PageSize"].isNull())
+		pageSize_ = std::stoi(value["PageSize"].asString());
+	if(!value["TotalPages"].isNull())
+		totalPages_ = std::stoi(value["TotalPages"].asString());
+
+}
+
+int DescribeInstanceDomainsResult::getPageSize()const
+{
+	return pageSize_;
+}
+
+int DescribeInstanceDomainsResult::getPageNumber()const
+{
+	return pageNumber_;
+}
+
+std::vector<DescribeInstanceDomainsResult::InstanceDomain> DescribeInstanceDomainsResult::getInstanceDomains()const
+{
+	return instanceDomains_;
+}
+
+int DescribeInstanceDomainsResult::getTotalPages()const
+{
+	return totalPages_;
+}
+
+int DescribeInstanceDomainsResult::getTotalItems()const
+{
+	return totalItems_;
+}
+