Procházet zdrojové kódy

Add CheckProductOpen.

sdk-team před 5 roky
rodič
revize
5ce3266e7f
35 změnil soubory, kde provedl 485 přidání a 149 odebrání
  1. 4 0
      CHANGELOG
  2. 1 1
      VERSION
  3. 4 0
      privatelink/CMakeLists.txt
  4. 8 0
      privatelink/include/alibabacloud/privatelink/PrivatelinkClient.h
  5. 3 3
      privatelink/include/alibabacloud/privatelink/model/AddUserToVpcEndpointServiceRequest.h
  6. 3 0
      privatelink/include/alibabacloud/privatelink/model/AddZoneToVpcEndpointRequest.h
  7. 48 0
      privatelink/include/alibabacloud/privatelink/model/CheckProductOpenRequest.h
  8. 51 0
      privatelink/include/alibabacloud/privatelink/model/CheckProductOpenResult.h
  9. 1 0
      privatelink/include/alibabacloud/privatelink/model/CreateVpcEndpointRequest.h
  10. 2 2
      privatelink/include/alibabacloud/privatelink/model/CreateVpcEndpointResult.h
  11. 4 1
      privatelink/include/alibabacloud/privatelink/model/CreateVpcEndpointServiceRequest.h
  12. 4 2
      privatelink/include/alibabacloud/privatelink/model/CreateVpcEndpointServiceResult.h
  13. 6 4
      privatelink/include/alibabacloud/privatelink/model/GetVpcEndpointAttributeResult.h
  14. 4 2
      privatelink/include/alibabacloud/privatelink/model/GetVpcEndpointServiceAttributeResult.h
  15. 3 0
      privatelink/include/alibabacloud/privatelink/model/ListVpcEndpointServicesRequest.h
  16. 4 3
      privatelink/include/alibabacloud/privatelink/model/ListVpcEndpointServicesResult.h
  17. 1 0
      privatelink/include/alibabacloud/privatelink/model/ListVpcEndpointZonesResult.h
  18. 2 1
      privatelink/include/alibabacloud/privatelink/model/ListVpcEndpointsResult.h
  19. 3 0
      privatelink/include/alibabacloud/privatelink/model/UpdateVpcEndpointServiceAttributeRequest.h
  20. 36 0
      privatelink/src/PrivatelinkClient.cc
  21. 3 3
      privatelink/src/model/AddUserToVpcEndpointServiceRequest.cc
  22. 11 0
      privatelink/src/model/AddZoneToVpcEndpointRequest.cc
  23. 40 0
      privatelink/src/model/CheckProductOpenRequest.cc
  24. 51 0
      privatelink/src/model/CheckProductOpenResult.cc
  25. 1 0
      privatelink/src/model/CreateVpcEndpointRequest.cc
  26. 18 18
      privatelink/src/model/CreateVpcEndpointResult.cc
  27. 12 1
      privatelink/src/model/CreateVpcEndpointServiceRequest.cc
  28. 19 12
      privatelink/src/model/CreateVpcEndpointServiceResult.cc
  29. 33 26
      privatelink/src/model/GetVpcEndpointAttributeResult.cc
  30. 27 20
      privatelink/src/model/GetVpcEndpointServiceAttributeResult.cc
  31. 11 0
      privatelink/src/model/ListVpcEndpointServicesRequest.cc
  32. 20 18
      privatelink/src/model/ListVpcEndpointServicesResult.cc
  33. 12 10
      privatelink/src/model/ListVpcEndpointZonesResult.cc
  34. 24 22
      privatelink/src/model/ListVpcEndpointsResult.cc
  35. 11 0
      privatelink/src/model/UpdateVpcEndpointServiceAttributeRequest.cc

+ 4 - 0
CHANGELOG

@@ -1,3 +1,7 @@
+2021-04-16 Version: 1.36.684
+- Add CheckProductOpen.
+- Add az routing policy.
+
 2021-04-16 Version: 1.36.683
 - Generated 2020-10-29 for `reid_cloud`.
 

+ 1 - 1
VERSION

@@ -1 +1 @@
-1.36.683
+1.36.684

+ 4 - 0
privatelink/CMakeLists.txt

@@ -29,6 +29,8 @@ set(privatelink_public_header_model
 	include/alibabacloud/privatelink/model/AttachResourceToVpcEndpointServiceResult.h
 	include/alibabacloud/privatelink/model/AttachSecurityGroupToVpcEndpointRequest.h
 	include/alibabacloud/privatelink/model/AttachSecurityGroupToVpcEndpointResult.h
+	include/alibabacloud/privatelink/model/CheckProductOpenRequest.h
+	include/alibabacloud/privatelink/model/CheckProductOpenResult.h
 	include/alibabacloud/privatelink/model/CreateVpcEndpointRequest.h
 	include/alibabacloud/privatelink/model/CreateVpcEndpointResult.h
 	include/alibabacloud/privatelink/model/CreateVpcEndpointServiceRequest.h
@@ -92,6 +94,8 @@ set(privatelink_src
 	src/model/AttachResourceToVpcEndpointServiceResult.cc
 	src/model/AttachSecurityGroupToVpcEndpointRequest.cc
 	src/model/AttachSecurityGroupToVpcEndpointResult.cc
+	src/model/CheckProductOpenRequest.cc
+	src/model/CheckProductOpenResult.cc
 	src/model/CreateVpcEndpointRequest.cc
 	src/model/CreateVpcEndpointResult.cc
 	src/model/CreateVpcEndpointServiceRequest.cc

+ 8 - 0
privatelink/include/alibabacloud/privatelink/PrivatelinkClient.h

@@ -30,6 +30,8 @@
 #include "model/AttachResourceToVpcEndpointServiceResult.h"
 #include "model/AttachSecurityGroupToVpcEndpointRequest.h"
 #include "model/AttachSecurityGroupToVpcEndpointResult.h"
+#include "model/CheckProductOpenRequest.h"
+#include "model/CheckProductOpenResult.h"
 #include "model/CreateVpcEndpointRequest.h"
 #include "model/CreateVpcEndpointResult.h"
 #include "model/CreateVpcEndpointServiceRequest.h"
@@ -103,6 +105,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::AttachSecurityGroupToVpcEndpointResult> AttachSecurityGroupToVpcEndpointOutcome;
 			typedef std::future<AttachSecurityGroupToVpcEndpointOutcome> AttachSecurityGroupToVpcEndpointOutcomeCallable;
 			typedef std::function<void(const PrivatelinkClient*, const Model::AttachSecurityGroupToVpcEndpointRequest&, const AttachSecurityGroupToVpcEndpointOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> AttachSecurityGroupToVpcEndpointAsyncHandler;
+			typedef Outcome<Error, Model::CheckProductOpenResult> CheckProductOpenOutcome;
+			typedef std::future<CheckProductOpenOutcome> CheckProductOpenOutcomeCallable;
+			typedef std::function<void(const PrivatelinkClient*, const Model::CheckProductOpenRequest&, const CheckProductOpenOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CheckProductOpenAsyncHandler;
 			typedef Outcome<Error, Model::CreateVpcEndpointResult> CreateVpcEndpointOutcome;
 			typedef std::future<CreateVpcEndpointOutcome> CreateVpcEndpointOutcomeCallable;
 			typedef std::function<void(const PrivatelinkClient*, const Model::CreateVpcEndpointRequest&, const CreateVpcEndpointOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateVpcEndpointAsyncHandler;
@@ -198,6 +203,9 @@ namespace AlibabaCloud
 			AttachSecurityGroupToVpcEndpointOutcome attachSecurityGroupToVpcEndpoint(const Model::AttachSecurityGroupToVpcEndpointRequest &request)const;
 			void attachSecurityGroupToVpcEndpointAsync(const Model::AttachSecurityGroupToVpcEndpointRequest& request, const AttachSecurityGroupToVpcEndpointAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			AttachSecurityGroupToVpcEndpointOutcomeCallable attachSecurityGroupToVpcEndpointCallable(const Model::AttachSecurityGroupToVpcEndpointRequest& request) const;
+			CheckProductOpenOutcome checkProductOpen(const Model::CheckProductOpenRequest &request)const;
+			void checkProductOpenAsync(const Model::CheckProductOpenRequest& request, const CheckProductOpenAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			CheckProductOpenOutcomeCallable checkProductOpenCallable(const Model::CheckProductOpenRequest& request) const;
 			CreateVpcEndpointOutcome createVpcEndpoint(const Model::CreateVpcEndpointRequest &request)const;
 			void createVpcEndpointAsync(const Model::CreateVpcEndpointRequest& request, const CreateVpcEndpointAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			CreateVpcEndpointOutcomeCallable createVpcEndpointCallable(const Model::CreateVpcEndpointRequest& request) const;

+ 3 - 3
privatelink/include/alibabacloud/privatelink/model/AddUserToVpcEndpointServiceRequest.h

@@ -37,8 +37,8 @@ namespace AlibabaCloud
 
 				std::string getClientToken()const;
 				void setClientToken(const std::string& clientToken);
-				std::string getUserId()const;
-				void setUserId(const std::string& userId);
+				long getUserId()const;
+				void setUserId(long userId);
 				std::string getRegionId()const;
 				void setRegionId(const std::string& regionId);
 				bool getDryRun()const;
@@ -48,7 +48,7 @@ namespace AlibabaCloud
 
             private:
 				std::string clientToken_;
-				std::string userId_;
+				long userId_;
 				std::string regionId_;
 				bool dryRun_;
 				std::string serviceId_;

+ 3 - 0
privatelink/include/alibabacloud/privatelink/model/AddZoneToVpcEndpointRequest.h

@@ -43,6 +43,8 @@ namespace AlibabaCloud
 				void setRegionId(const std::string& regionId);
 				bool getDryRun()const;
 				void setDryRun(bool dryRun);
+				std::string getIp()const;
+				void setIp(const std::string& ip);
 				std::string getVSwitchId()const;
 				void setVSwitchId(const std::string& vSwitchId);
 				std::string getZoneId()const;
@@ -53,6 +55,7 @@ namespace AlibabaCloud
 				std::string endpointId_;
 				std::string regionId_;
 				bool dryRun_;
+				std::string ip_;
 				std::string vSwitchId_;
 				std::string zoneId_;
 

+ 48 - 0
privatelink/include/alibabacloud/privatelink/model/CheckProductOpenRequest.h

@@ -0,0 +1,48 @@
+/*
+ * 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_PRIVATELINK_MODEL_CHECKPRODUCTOPENREQUEST_H_
+#define ALIBABACLOUD_PRIVATELINK_MODEL_CHECKPRODUCTOPENREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/privatelink/PrivatelinkExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Privatelink
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_PRIVATELINK_EXPORT CheckProductOpenRequest : public RpcServiceRequest
+			{
+
+			public:
+				CheckProductOpenRequest();
+				~CheckProductOpenRequest();
+
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+
+            private:
+				std::string regionId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_PRIVATELINK_MODEL_CHECKPRODUCTOPENREQUEST_H_

+ 51 - 0
privatelink/include/alibabacloud/privatelink/model/CheckProductOpenResult.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_PRIVATELINK_MODEL_CHECKPRODUCTOPENRESULT_H_
+#define ALIBABACLOUD_PRIVATELINK_MODEL_CHECKPRODUCTOPENRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/privatelink/PrivatelinkExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Privatelink
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_PRIVATELINK_EXPORT CheckProductOpenResult : public ServiceResult
+			{
+			public:
+
+
+				CheckProductOpenResult();
+				explicit CheckProductOpenResult(const std::string &payload);
+				~CheckProductOpenResult();
+				bool getSuccess()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				bool success_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_PRIVATELINK_MODEL_CHECKPRODUCTOPENRESULT_H_

+ 1 - 0
privatelink/include/alibabacloud/privatelink/model/CreateVpcEndpointRequest.h

@@ -35,6 +35,7 @@ namespace AlibabaCloud
 				{
 					std::string vSwitchId;
 					std::string zoneId;
+					std::string ip;
 				};
 
 			public:

+ 2 - 2
privatelink/include/alibabacloud/privatelink/model/CreateVpcEndpointResult.h

@@ -43,8 +43,8 @@ namespace AlibabaCloud
 				std::string getEndpointDomain()const;
 				std::string getServiceName()const;
 				std::string getEndpointId()const;
-				std::string getCreateTime()const;
 				long getBandwidth()const;
+				std::string getCreateTime()const;
 				std::string getEndpointBusinessStatus()const;
 				std::string getEndpointDescription()const;
 				std::string getConnectionStatus()const;
@@ -59,8 +59,8 @@ namespace AlibabaCloud
 				std::string endpointDomain_;
 				std::string serviceName_;
 				std::string endpointId_;
-				std::string createTime_;
 				long bandwidth_;
+				std::string createTime_;
 				std::string endpointBusinessStatus_;
 				std::string endpointDescription_;
 				std::string connectionStatus_;

+ 4 - 1
privatelink/include/alibabacloud/privatelink/model/CreateVpcEndpointServiceRequest.h

@@ -33,8 +33,8 @@ namespace AlibabaCloud
 			public:
 				struct Resource
 				{
-					std::string resourceId;
 					std::string resourceType;
+					std::string resourceId;
 				};
 
 			public:
@@ -49,6 +49,8 @@ namespace AlibabaCloud
 				void setPayer(const std::string& payer);
 				std::string getRegionId()const;
 				void setRegionId(const std::string& regionId);
+				bool getZoneAffinityEnabled()const;
+				void setZoneAffinityEnabled(bool zoneAffinityEnabled);
 				bool getDryRun()const;
 				void setDryRun(bool dryRun);
 				std::vector<Resource> getResource()const;
@@ -61,6 +63,7 @@ namespace AlibabaCloud
 				std::string clientToken_;
 				std::string payer_;
 				std::string regionId_;
+				bool zoneAffinityEnabled_;
 				bool dryRun_;
 				std::vector<Resource> resource_;
 				std::string serviceDescription_;

+ 4 - 2
privatelink/include/alibabacloud/privatelink/model/CreateVpcEndpointServiceResult.h

@@ -42,9 +42,10 @@ namespace AlibabaCloud
 				std::string getServiceDescription()const;
 				std::string getServiceStatus()const;
 				std::string getCreateTime()const;
+				bool getZoneAffinityEnabled()const;
 				std::string getServiceDomain()const;
-				bool getAutoAcceptEnabled()const;
 				std::string getServiceId()const;
+				bool getAutoAcceptEnabled()const;
 
 			protected:
 				void parse(const std::string &payload);
@@ -54,9 +55,10 @@ namespace AlibabaCloud
 				std::string serviceDescription_;
 				std::string serviceStatus_;
 				std::string createTime_;
+				bool zoneAffinityEnabled_;
 				std::string serviceDomain_;
-				bool autoAcceptEnabled_;
 				std::string serviceId_;
+				bool autoAcceptEnabled_;
 
 			};
 		}

+ 6 - 4
privatelink/include/alibabacloud/privatelink/model/GetVpcEndpointAttributeResult.h

@@ -39,8 +39,8 @@ namespace AlibabaCloud
 				~GetVpcEndpointAttributeResult();
 				std::string getPayer()const;
 				std::string getEndpointDomain()const;
-				std::string getCreateTime()const;
 				bool getResourceOwner()const;
+				std::string getCreateTime()const;
 				std::string getEndpointBusinessStatus()const;
 				std::string getEndpointDescription()const;
 				std::string getServiceId()const;
@@ -48,18 +48,19 @@ namespace AlibabaCloud
 				std::string getEndpointName()const;
 				std::string getVpcId()const;
 				std::string getServiceName()const;
-				int getBandwidth()const;
 				std::string getEndpointId()const;
+				int getBandwidth()const;
 				std::string getRegionId()const;
 				std::string getConnectionStatus()const;
+				bool getZoneAffinityEnabled()const;
 
 			protected:
 				void parse(const std::string &payload);
 			private:
 				std::string payer_;
 				std::string endpointDomain_;
-				std::string createTime_;
 				bool resourceOwner_;
+				std::string createTime_;
 				std::string endpointBusinessStatus_;
 				std::string endpointDescription_;
 				std::string serviceId_;
@@ -67,10 +68,11 @@ namespace AlibabaCloud
 				std::string endpointName_;
 				std::string vpcId_;
 				std::string serviceName_;
-				int bandwidth_;
 				std::string endpointId_;
+				int bandwidth_;
 				std::string regionId_;
 				std::string connectionStatus_;
+				bool zoneAffinityEnabled_;
 
 			};
 		}

+ 4 - 2
privatelink/include/alibabacloud/privatelink/model/GetVpcEndpointServiceAttributeResult.h

@@ -39,8 +39,8 @@ namespace AlibabaCloud
 				~GetVpcEndpointServiceAttributeResult();
 				std::string getPayer()const;
 				std::string getServiceDescription()const;
-				std::string getCreateTime()const;
 				int getMaxBandwidth()const;
+				std::string getCreateTime()const;
 				std::string getServiceDomain()const;
 				int getMinBandwidth()const;
 				std::vector<std::string> getZones()const;
@@ -51,14 +51,15 @@ namespace AlibabaCloud
 				std::string getServiceStatus()const;
 				int getConnectBandwidth()const;
 				std::string getRegionId()const;
+				bool getZoneAffinityEnabled()const;
 
 			protected:
 				void parse(const std::string &payload);
 			private:
 				std::string payer_;
 				std::string serviceDescription_;
-				std::string createTime_;
 				int maxBandwidth_;
+				std::string createTime_;
 				std::string serviceDomain_;
 				int minBandwidth_;
 				std::vector<std::string> zones_;
@@ -69,6 +70,7 @@ namespace AlibabaCloud
 				std::string serviceStatus_;
 				int connectBandwidth_;
 				std::string regionId_;
+				bool zoneAffinityEnabled_;
 
 			};
 		}

+ 3 - 0
privatelink/include/alibabacloud/privatelink/model/ListVpcEndpointServicesRequest.h

@@ -45,6 +45,8 @@ namespace AlibabaCloud
 				void setRegionId(const std::string& regionId);
 				std::string getNextToken()const;
 				void setNextToken(const std::string& nextToken);
+				bool getZoneAffinityEnabled()const;
+				void setZoneAffinityEnabled(bool zoneAffinityEnabled);
 				std::string getServiceName()const;
 				void setServiceName(const std::string& serviceName);
 				int getMaxResults()const;
@@ -58,6 +60,7 @@ namespace AlibabaCloud
 				std::string serviceStatus_;
 				std::string regionId_;
 				std::string nextToken_;
+				bool zoneAffinityEnabled_;
 				std::string serviceName_;
 				int maxResults_;
 				std::string serviceId_;

+ 4 - 3
privatelink/include/alibabacloud/privatelink/model/ListVpcEndpointServicesResult.h

@@ -36,17 +36,18 @@ namespace AlibabaCloud
 				{
 					std::string payer;
 					std::string serviceDescription;
-					std::string createTime;
 					int maxBandwidth;
-					int minBandwidth;
+					std::string createTime;
 					std::string serviceDomain;
-					bool autoAcceptEnabled;
+					int minBandwidth;
 					std::string serviceId;
+					bool autoAcceptEnabled;
 					std::string serviceBusinessStatus;
 					std::string serviceName;
 					std::string serviceStatus;
 					int connectBandwidth;
 					std::string regionId;
+					bool zoneAffinityEnabled;
 				};
 
 

+ 1 - 0
privatelink/include/alibabacloud/privatelink/model/ListVpcEndpointZonesResult.h

@@ -36,6 +36,7 @@ namespace AlibabaCloud
 				{
 					std::string eniId;
 					std::string zoneId;
+					std::string serviceStatus;
 					std::string vSwitchId;
 					std::string eniIp;
 					std::string zoneStatus;

+ 2 - 1
privatelink/include/alibabacloud/privatelink/model/ListVpcEndpointsResult.h

@@ -35,8 +35,8 @@ namespace AlibabaCloud
 				struct Endpoint
 				{
 					std::string endpointDomain;
-					std::string createTime;
 					bool resourceOwner;
+					std::string createTime;
 					std::string endpointBusinessStatus;
 					std::string endpointDescription;
 					std::string serviceId;
@@ -48,6 +48,7 @@ namespace AlibabaCloud
 					long bandwidth;
 					std::string regionId;
 					std::string connectionStatus;
+					bool zoneAffinityEnabled;
 				};
 
 

+ 3 - 0
privatelink/include/alibabacloud/privatelink/model/UpdateVpcEndpointServiceAttributeRequest.h

@@ -43,6 +43,8 @@ namespace AlibabaCloud
 				void setConnectBandwidth(int connectBandwidth);
 				std::string getRegionId()const;
 				void setRegionId(const std::string& regionId);
+				bool getZoneAffinityEnabled()const;
+				void setZoneAffinityEnabled(bool zoneAffinityEnabled);
 				bool getDryRun()const;
 				void setDryRun(bool dryRun);
 				std::string getServiceDescription()const;
@@ -55,6 +57,7 @@ namespace AlibabaCloud
 				std::string clientToken_;
 				int connectBandwidth_;
 				std::string regionId_;
+				bool zoneAffinityEnabled_;
 				bool dryRun_;
 				std::string serviceDescription_;
 				std::string serviceId_;

+ 36 - 0
privatelink/src/PrivatelinkClient.cc

@@ -195,6 +195,42 @@ PrivatelinkClient::AttachSecurityGroupToVpcEndpointOutcomeCallable PrivatelinkCl
 	return task->get_future();
 }
 
+PrivatelinkClient::CheckProductOpenOutcome PrivatelinkClient::checkProductOpen(const CheckProductOpenRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return CheckProductOpenOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return CheckProductOpenOutcome(CheckProductOpenResult(outcome.result()));
+	else
+		return CheckProductOpenOutcome(outcome.error());
+}
+
+void PrivatelinkClient::checkProductOpenAsync(const CheckProductOpenRequest& request, const CheckProductOpenAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, checkProductOpen(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+PrivatelinkClient::CheckProductOpenOutcomeCallable PrivatelinkClient::checkProductOpenCallable(const CheckProductOpenRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<CheckProductOpenOutcome()>>(
+			[this, request]()
+			{
+			return this->checkProductOpen(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 PrivatelinkClient::CreateVpcEndpointOutcome PrivatelinkClient::createVpcEndpoint(const CreateVpcEndpointRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();

+ 3 - 3
privatelink/src/model/AddUserToVpcEndpointServiceRequest.cc

@@ -38,15 +38,15 @@ void AddUserToVpcEndpointServiceRequest::setClientToken(const std::string& clien
 	setParameter("ClientToken", clientToken);
 }
 
-std::string AddUserToVpcEndpointServiceRequest::getUserId()const
+long AddUserToVpcEndpointServiceRequest::getUserId()const
 {
 	return userId_;
 }
 
-void AddUserToVpcEndpointServiceRequest::setUserId(const std::string& userId)
+void AddUserToVpcEndpointServiceRequest::setUserId(long userId)
 {
 	userId_ = userId;
-	setParameter("UserId", userId);
+	setParameter("UserId", std::to_string(userId));
 }
 
 std::string AddUserToVpcEndpointServiceRequest::getRegionId()const

+ 11 - 0
privatelink/src/model/AddZoneToVpcEndpointRequest.cc

@@ -71,6 +71,17 @@ void AddZoneToVpcEndpointRequest::setDryRun(bool dryRun)
 	setParameter("DryRun", dryRun ? "true" : "false");
 }
 
+std::string AddZoneToVpcEndpointRequest::getIp()const
+{
+	return ip_;
+}
+
+void AddZoneToVpcEndpointRequest::setIp(const std::string& ip)
+{
+	ip_ = ip;
+	setParameter("Ip", ip);
+}
+
 std::string AddZoneToVpcEndpointRequest::getVSwitchId()const
 {
 	return vSwitchId_;

+ 40 - 0
privatelink/src/model/CheckProductOpenRequest.cc

@@ -0,0 +1,40 @@
+/*
+ * 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/privatelink/model/CheckProductOpenRequest.h>
+
+using AlibabaCloud::Privatelink::Model::CheckProductOpenRequest;
+
+CheckProductOpenRequest::CheckProductOpenRequest() :
+	RpcServiceRequest("privatelink", "2020-04-15", "CheckProductOpen")
+{
+	setMethod(HttpRequest::Method::Post);
+}
+
+CheckProductOpenRequest::~CheckProductOpenRequest()
+{}
+
+std::string CheckProductOpenRequest::getRegionId()const
+{
+	return regionId_;
+}
+
+void CheckProductOpenRequest::setRegionId(const std::string& regionId)
+{
+	regionId_ = regionId;
+	setParameter("RegionId", regionId);
+}
+

+ 51 - 0
privatelink/src/model/CheckProductOpenResult.cc

@@ -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.
+ */
+
+#include <alibabacloud/privatelink/model/CheckProductOpenResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Privatelink;
+using namespace AlibabaCloud::Privatelink::Model;
+
+CheckProductOpenResult::CheckProductOpenResult() :
+	ServiceResult()
+{}
+
+CheckProductOpenResult::CheckProductOpenResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+CheckProductOpenResult::~CheckProductOpenResult()
+{}
+
+void CheckProductOpenResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	if(!value["Success"].isNull())
+		success_ = value["Success"].asString() == "true";
+
+}
+
+bool CheckProductOpenResult::getSuccess()const
+{
+	return success_;
+}
+

+ 1 - 0
privatelink/src/model/CreateVpcEndpointRequest.cc

@@ -75,6 +75,7 @@ void CreateVpcEndpointRequest::setZone(const std::vector<Zone>& zone)
 		std::string zoneObjStr = "Zone." + std::to_string(dep1 + 1);
 		setParameter(zoneObjStr + ".VSwitchId", zoneObj.vSwitchId);
 		setParameter(zoneObjStr + ".ZoneId", zoneObj.zoneId);
+		setParameter(zoneObjStr + ".Ip", zoneObj.ip);
 	}
 }
 

+ 18 - 18
privatelink/src/model/CreateVpcEndpointResult.cc

@@ -39,30 +39,30 @@ void CreateVpcEndpointResult::parse(const std::string &payload)
 	Json::Value value;
 	reader.parse(payload, value);
 	setRequestId(value["RequestId"].asString());
-	if(!value["EndpointId"].isNull())
-		endpointId_ = value["EndpointId"].asString();
-	if(!value["CreateTime"].isNull())
-		createTime_ = value["CreateTime"].asString();
+	if(!value["EndpointStatus"].isNull())
+		endpointStatus_ = value["EndpointStatus"].asString();
 	if(!value["EndpointName"].isNull())
 		endpointName_ = value["EndpointName"].asString();
 	if(!value["VpcId"].isNull())
 		vpcId_ = value["VpcId"].asString();
-	if(!value["EndpointDescription"].isNull())
-		endpointDescription_ = value["EndpointDescription"].asString();
-	if(!value["ServiceId"].isNull())
-		serviceId_ = value["ServiceId"].asString();
+	if(!value["EndpointDomain"].isNull())
+		endpointDomain_ = value["EndpointDomain"].asString();
 	if(!value["ServiceName"].isNull())
 		serviceName_ = value["ServiceName"].asString();
+	if(!value["EndpointId"].isNull())
+		endpointId_ = value["EndpointId"].asString();
+	if(!value["Bandwidth"].isNull())
+		bandwidth_ = std::stol(value["Bandwidth"].asString());
+	if(!value["CreateTime"].isNull())
+		createTime_ = value["CreateTime"].asString();
 	if(!value["EndpointBusinessStatus"].isNull())
 		endpointBusinessStatus_ = value["EndpointBusinessStatus"].asString();
-	if(!value["EndpointStatus"].isNull())
-		endpointStatus_ = value["EndpointStatus"].asString();
+	if(!value["EndpointDescription"].isNull())
+		endpointDescription_ = value["EndpointDescription"].asString();
 	if(!value["ConnectionStatus"].isNull())
 		connectionStatus_ = value["ConnectionStatus"].asString();
-	if(!value["EndpointDomain"].isNull())
-		endpointDomain_ = value["EndpointDomain"].asString();
-	if(!value["Bandwidth"].isNull())
-		bandwidth_ = std::stol(value["Bandwidth"].asString());
+	if(!value["ServiceId"].isNull())
+		serviceId_ = value["ServiceId"].asString();
 
 }
 
@@ -96,14 +96,14 @@ std::string CreateVpcEndpointResult::getEndpointId()const
 	return endpointId_;
 }
 
-std::string CreateVpcEndpointResult::getCreateTime()const
+long CreateVpcEndpointResult::getBandwidth()const
 {
-	return createTime_;
+	return bandwidth_;
 }
 
-long CreateVpcEndpointResult::getBandwidth()const
+std::string CreateVpcEndpointResult::getCreateTime()const
 {
-	return bandwidth_;
+	return createTime_;
 }
 
 std::string CreateVpcEndpointResult::getEndpointBusinessStatus()const

+ 12 - 1
privatelink/src/model/CreateVpcEndpointServiceRequest.cc

@@ -71,6 +71,17 @@ void CreateVpcEndpointServiceRequest::setRegionId(const std::string& regionId)
 	setParameter("RegionId", regionId);
 }
 
+bool CreateVpcEndpointServiceRequest::getZoneAffinityEnabled()const
+{
+	return zoneAffinityEnabled_;
+}
+
+void CreateVpcEndpointServiceRequest::setZoneAffinityEnabled(bool zoneAffinityEnabled)
+{
+	zoneAffinityEnabled_ = zoneAffinityEnabled;
+	setParameter("ZoneAffinityEnabled", zoneAffinityEnabled ? "true" : "false");
+}
+
 bool CreateVpcEndpointServiceRequest::getDryRun()const
 {
 	return dryRun_;
@@ -93,8 +104,8 @@ void CreateVpcEndpointServiceRequest::setResource(const std::vector<Resource>& r
 	for(int dep1 = 0; dep1!= resource.size(); dep1++) {
 		auto resourceObj = resource.at(dep1);
 		std::string resourceObjStr = "Resource." + std::to_string(dep1 + 1);
-		setParameter(resourceObjStr + ".ResourceId", resourceObj.resourceId);
 		setParameter(resourceObjStr + ".ResourceType", resourceObj.resourceType);
+		setParameter(resourceObjStr + ".ResourceId", resourceObj.resourceId);
 	}
 }
 

+ 19 - 12
privatelink/src/model/CreateVpcEndpointServiceResult.cc

@@ -39,22 +39,24 @@ void CreateVpcEndpointServiceResult::parse(const std::string &payload)
 	Json::Value value;
 	reader.parse(payload, value);
 	setRequestId(value["RequestId"].asString());
-	if(!value["AutoAcceptEnabled"].isNull())
-		autoAcceptEnabled_ = value["AutoAcceptEnabled"].asString() == "true";
-	if(!value["CreateTime"].isNull())
-		createTime_ = value["CreateTime"].asString();
 	if(!value["ServiceBusinessStatus"].isNull())
 		serviceBusinessStatus_ = value["ServiceBusinessStatus"].asString();
+	if(!value["ServiceName"].isNull())
+		serviceName_ = value["ServiceName"].asString();
 	if(!value["ServiceDescription"].isNull())
 		serviceDescription_ = value["ServiceDescription"].asString();
+	if(!value["ServiceStatus"].isNull())
+		serviceStatus_ = value["ServiceStatus"].asString();
+	if(!value["CreateTime"].isNull())
+		createTime_ = value["CreateTime"].asString();
+	if(!value["ZoneAffinityEnabled"].isNull())
+		zoneAffinityEnabled_ = value["ZoneAffinityEnabled"].asString() == "true";
 	if(!value["ServiceDomain"].isNull())
 		serviceDomain_ = value["ServiceDomain"].asString();
 	if(!value["ServiceId"].isNull())
 		serviceId_ = value["ServiceId"].asString();
-	if(!value["ServiceName"].isNull())
-		serviceName_ = value["ServiceName"].asString();
-	if(!value["ServiceStatus"].isNull())
-		serviceStatus_ = value["ServiceStatus"].asString();
+	if(!value["AutoAcceptEnabled"].isNull())
+		autoAcceptEnabled_ = value["AutoAcceptEnabled"].asString() == "true";
 
 }
 
@@ -83,14 +85,14 @@ std::string CreateVpcEndpointServiceResult::getCreateTime()const
 	return createTime_;
 }
 
-std::string CreateVpcEndpointServiceResult::getServiceDomain()const
+bool CreateVpcEndpointServiceResult::getZoneAffinityEnabled()const
 {
-	return serviceDomain_;
+	return zoneAffinityEnabled_;
 }
 
-bool CreateVpcEndpointServiceResult::getAutoAcceptEnabled()const
+std::string CreateVpcEndpointServiceResult::getServiceDomain()const
 {
-	return autoAcceptEnabled_;
+	return serviceDomain_;
 }
 
 std::string CreateVpcEndpointServiceResult::getServiceId()const
@@ -98,3 +100,8 @@ std::string CreateVpcEndpointServiceResult::getServiceId()const
 	return serviceId_;
 }
 
+bool CreateVpcEndpointServiceResult::getAutoAcceptEnabled()const
+{
+	return autoAcceptEnabled_;
+}
+

+ 33 - 26
privatelink/src/model/GetVpcEndpointAttributeResult.cc

@@ -39,36 +39,38 @@ void GetVpcEndpointAttributeResult::parse(const std::string &payload)
 	Json::Value value;
 	reader.parse(payload, value);
 	setRequestId(value["RequestId"].asString());
-	if(!value["Bandwidth"].isNull())
-		bandwidth_ = std::stoi(value["Bandwidth"].asString());
-	if(!value["ConnectionStatus"].isNull())
-		connectionStatus_ = value["ConnectionStatus"].asString();
+	if(!value["Payer"].isNull())
+		payer_ = value["Payer"].asString();
+	if(!value["EndpointDomain"].isNull())
+		endpointDomain_ = value["EndpointDomain"].asString();
+	if(!value["ResourceOwner"].isNull())
+		resourceOwner_ = value["ResourceOwner"].asString() == "true";
 	if(!value["CreateTime"].isNull())
 		createTime_ = value["CreateTime"].asString();
 	if(!value["EndpointBusinessStatus"].isNull())
 		endpointBusinessStatus_ = value["EndpointBusinessStatus"].asString();
 	if(!value["EndpointDescription"].isNull())
 		endpointDescription_ = value["EndpointDescription"].asString();
-	if(!value["EndpointDomain"].isNull())
-		endpointDomain_ = value["EndpointDomain"].asString();
-	if(!value["EndpointId"].isNull())
-		endpointId_ = value["EndpointId"].asString();
-	if(!value["EndpointName"].isNull())
-		endpointName_ = value["EndpointName"].asString();
-	if(!value["EndpointStatus"].isNull())
-		endpointStatus_ = value["EndpointStatus"].asString();
 	if(!value["ServiceId"].isNull())
 		serviceId_ = value["ServiceId"].asString();
-	if(!value["ServiceName"].isNull())
-		serviceName_ = value["ServiceName"].asString();
+	if(!value["EndpointStatus"].isNull())
+		endpointStatus_ = value["EndpointStatus"].asString();
+	if(!value["EndpointName"].isNull())
+		endpointName_ = value["EndpointName"].asString();
 	if(!value["VpcId"].isNull())
 		vpcId_ = value["VpcId"].asString();
+	if(!value["ServiceName"].isNull())
+		serviceName_ = value["ServiceName"].asString();
+	if(!value["EndpointId"].isNull())
+		endpointId_ = value["EndpointId"].asString();
+	if(!value["Bandwidth"].isNull())
+		bandwidth_ = std::stoi(value["Bandwidth"].asString());
 	if(!value["RegionId"].isNull())
 		regionId_ = value["RegionId"].asString();
-	if(!value["Payer"].isNull())
-		payer_ = value["Payer"].asString();
-	if(!value["ResourceOwner"].isNull())
-		resourceOwner_ = value["ResourceOwner"].asString() == "true";
+	if(!value["ConnectionStatus"].isNull())
+		connectionStatus_ = value["ConnectionStatus"].asString();
+	if(!value["ZoneAffinityEnabled"].isNull())
+		zoneAffinityEnabled_ = value["ZoneAffinityEnabled"].asString() == "true";
 
 }
 
@@ -82,14 +84,14 @@ std::string GetVpcEndpointAttributeResult::getEndpointDomain()const
 	return endpointDomain_;
 }
 
-std::string GetVpcEndpointAttributeResult::getCreateTime()const
+bool GetVpcEndpointAttributeResult::getResourceOwner()const
 {
-	return createTime_;
+	return resourceOwner_;
 }
 
-bool GetVpcEndpointAttributeResult::getResourceOwner()const
+std::string GetVpcEndpointAttributeResult::getCreateTime()const
 {
-	return resourceOwner_;
+	return createTime_;
 }
 
 std::string GetVpcEndpointAttributeResult::getEndpointBusinessStatus()const
@@ -127,14 +129,14 @@ std::string GetVpcEndpointAttributeResult::getServiceName()const
 	return serviceName_;
 }
 
-int GetVpcEndpointAttributeResult::getBandwidth()const
+std::string GetVpcEndpointAttributeResult::getEndpointId()const
 {
-	return bandwidth_;
+	return endpointId_;
 }
 
-std::string GetVpcEndpointAttributeResult::getEndpointId()const
+int GetVpcEndpointAttributeResult::getBandwidth()const
 {
-	return endpointId_;
+	return bandwidth_;
 }
 
 std::string GetVpcEndpointAttributeResult::getRegionId()const
@@ -147,3 +149,8 @@ std::string GetVpcEndpointAttributeResult::getConnectionStatus()const
 	return connectionStatus_;
 }
 
+bool GetVpcEndpointAttributeResult::getZoneAffinityEnabled()const
+{
+	return zoneAffinityEnabled_;
+}
+

+ 27 - 20
privatelink/src/model/GetVpcEndpointServiceAttributeResult.cc

@@ -42,32 +42,34 @@ void GetVpcEndpointServiceAttributeResult::parse(const std::string &payload)
 	auto allZones = value["Zones"]["Zone"];
 	for (const auto &item : allZones)
 		zones_.push_back(item.asString());
-	if(!value["ServiceId"].isNull())
-		serviceId_ = value["ServiceId"].asString();
-	if(!value["ServiceName"].isNull())
-		serviceName_ = value["ServiceName"].asString();
-	if(!value["ServiceDomain"].isNull())
-		serviceDomain_ = value["ServiceDomain"].asString();
+	if(!value["Payer"].isNull())
+		payer_ = value["Payer"].asString();
 	if(!value["ServiceDescription"].isNull())
 		serviceDescription_ = value["ServiceDescription"].asString();
-	if(!value["ServiceBusinessStatus"].isNull())
-		serviceBusinessStatus_ = value["ServiceBusinessStatus"].asString();
-	if(!value["ServiceStatus"].isNull())
-		serviceStatus_ = value["ServiceStatus"].asString();
-	if(!value["AutoAcceptEnabled"].isNull())
-		autoAcceptEnabled_ = value["AutoAcceptEnabled"].asString() == "true";
-	if(!value["CreateTime"].isNull())
-		createTime_ = value["CreateTime"].asString();
 	if(!value["MaxBandwidth"].isNull())
 		maxBandwidth_ = std::stoi(value["MaxBandwidth"].asString());
+	if(!value["CreateTime"].isNull())
+		createTime_ = value["CreateTime"].asString();
+	if(!value["ServiceDomain"].isNull())
+		serviceDomain_ = value["ServiceDomain"].asString();
 	if(!value["MinBandwidth"].isNull())
 		minBandwidth_ = std::stoi(value["MinBandwidth"].asString());
+	if(!value["ServiceId"].isNull())
+		serviceId_ = value["ServiceId"].asString();
+	if(!value["AutoAcceptEnabled"].isNull())
+		autoAcceptEnabled_ = value["AutoAcceptEnabled"].asString() == "true";
+	if(!value["ServiceBusinessStatus"].isNull())
+		serviceBusinessStatus_ = value["ServiceBusinessStatus"].asString();
+	if(!value["ServiceName"].isNull())
+		serviceName_ = value["ServiceName"].asString();
+	if(!value["ServiceStatus"].isNull())
+		serviceStatus_ = value["ServiceStatus"].asString();
 	if(!value["ConnectBandwidth"].isNull())
 		connectBandwidth_ = std::stoi(value["ConnectBandwidth"].asString());
 	if(!value["RegionId"].isNull())
 		regionId_ = value["RegionId"].asString();
-	if(!value["Payer"].isNull())
-		payer_ = value["Payer"].asString();
+	if(!value["ZoneAffinityEnabled"].isNull())
+		zoneAffinityEnabled_ = value["ZoneAffinityEnabled"].asString() == "true";
 
 }
 
@@ -81,14 +83,14 @@ std::string GetVpcEndpointServiceAttributeResult::getServiceDescription()const
 	return serviceDescription_;
 }
 
-std::string GetVpcEndpointServiceAttributeResult::getCreateTime()const
+int GetVpcEndpointServiceAttributeResult::getMaxBandwidth()const
 {
-	return createTime_;
+	return maxBandwidth_;
 }
 
-int GetVpcEndpointServiceAttributeResult::getMaxBandwidth()const
+std::string GetVpcEndpointServiceAttributeResult::getCreateTime()const
 {
-	return maxBandwidth_;
+	return createTime_;
 }
 
 std::string GetVpcEndpointServiceAttributeResult::getServiceDomain()const
@@ -141,3 +143,8 @@ std::string GetVpcEndpointServiceAttributeResult::getRegionId()const
 	return regionId_;
 }
 
+bool GetVpcEndpointServiceAttributeResult::getZoneAffinityEnabled()const
+{
+	return zoneAffinityEnabled_;
+}
+

+ 11 - 0
privatelink/src/model/ListVpcEndpointServicesRequest.cc

@@ -82,6 +82,17 @@ void ListVpcEndpointServicesRequest::setNextToken(const std::string& nextToken)
 	setParameter("NextToken", nextToken);
 }
 
+bool ListVpcEndpointServicesRequest::getZoneAffinityEnabled()const
+{
+	return zoneAffinityEnabled_;
+}
+
+void ListVpcEndpointServicesRequest::setZoneAffinityEnabled(bool zoneAffinityEnabled)
+{
+	zoneAffinityEnabled_ = zoneAffinityEnabled;
+	setParameter("ZoneAffinityEnabled", zoneAffinityEnabled ? "true" : "false");
+}
+
 std::string ListVpcEndpointServicesRequest::getServiceName()const
 {
 	return serviceName_;

+ 20 - 18
privatelink/src/model/ListVpcEndpointServicesResult.cc

@@ -43,38 +43,40 @@ void ListVpcEndpointServicesResult::parse(const std::string &payload)
 	for (auto valueServicesService : allServicesNode)
 	{
 		Service servicesObject;
-		if(!valueServicesService["AutoAcceptEnabled"].isNull())
-			servicesObject.autoAcceptEnabled = valueServicesService["AutoAcceptEnabled"].asString() == "true";
-		if(!valueServicesService["ConnectBandwidth"].isNull())
-			servicesObject.connectBandwidth = std::stoi(valueServicesService["ConnectBandwidth"].asString());
-		if(!valueServicesService["CreateTime"].isNull())
-			servicesObject.createTime = valueServicesService["CreateTime"].asString();
-		if(!valueServicesService["MaxBandwidth"].isNull())
-			servicesObject.maxBandwidth = std::stoi(valueServicesService["MaxBandwidth"].asString());
-		if(!valueServicesService["MinBandwidth"].isNull())
-			servicesObject.minBandwidth = std::stoi(valueServicesService["MinBandwidth"].asString());
-		if(!valueServicesService["RegionId"].isNull())
-			servicesObject.regionId = valueServicesService["RegionId"].asString();
-		if(!valueServicesService["ServiceBusinessStatus"].isNull())
-			servicesObject.serviceBusinessStatus = valueServicesService["ServiceBusinessStatus"].asString();
+		if(!valueServicesService["Payer"].isNull())
+			servicesObject.payer = valueServicesService["Payer"].asString();
 		if(!valueServicesService["ServiceDescription"].isNull())
 			servicesObject.serviceDescription = valueServicesService["ServiceDescription"].asString();
+		if(!valueServicesService["MaxBandwidth"].isNull())
+			servicesObject.maxBandwidth = std::stoi(valueServicesService["MaxBandwidth"].asString());
+		if(!valueServicesService["CreateTime"].isNull())
+			servicesObject.createTime = valueServicesService["CreateTime"].asString();
 		if(!valueServicesService["ServiceDomain"].isNull())
 			servicesObject.serviceDomain = valueServicesService["ServiceDomain"].asString();
+		if(!valueServicesService["MinBandwidth"].isNull())
+			servicesObject.minBandwidth = std::stoi(valueServicesService["MinBandwidth"].asString());
 		if(!valueServicesService["ServiceId"].isNull())
 			servicesObject.serviceId = valueServicesService["ServiceId"].asString();
+		if(!valueServicesService["AutoAcceptEnabled"].isNull())
+			servicesObject.autoAcceptEnabled = valueServicesService["AutoAcceptEnabled"].asString() == "true";
+		if(!valueServicesService["ServiceBusinessStatus"].isNull())
+			servicesObject.serviceBusinessStatus = valueServicesService["ServiceBusinessStatus"].asString();
 		if(!valueServicesService["ServiceName"].isNull())
 			servicesObject.serviceName = valueServicesService["ServiceName"].asString();
 		if(!valueServicesService["ServiceStatus"].isNull())
 			servicesObject.serviceStatus = valueServicesService["ServiceStatus"].asString();
-		if(!valueServicesService["Payer"].isNull())
-			servicesObject.payer = valueServicesService["Payer"].asString();
+		if(!valueServicesService["ConnectBandwidth"].isNull())
+			servicesObject.connectBandwidth = std::stoi(valueServicesService["ConnectBandwidth"].asString());
+		if(!valueServicesService["RegionId"].isNull())
+			servicesObject.regionId = valueServicesService["RegionId"].asString();
+		if(!valueServicesService["ZoneAffinityEnabled"].isNull())
+			servicesObject.zoneAffinityEnabled = valueServicesService["ZoneAffinityEnabled"].asString() == "true";
 		services_.push_back(servicesObject);
 	}
-	if(!value["MaxResults"].isNull())
-		maxResults_ = value["MaxResults"].asString();
 	if(!value["NextToken"].isNull())
 		nextToken_ = value["NextToken"].asString();
+	if(!value["MaxResults"].isNull())
+		maxResults_ = value["MaxResults"].asString();
 
 }
 

+ 12 - 10
privatelink/src/model/ListVpcEndpointZonesResult.cc

@@ -43,26 +43,28 @@ void ListVpcEndpointZonesResult::parse(const std::string &payload)
 	for (auto valueZonesZone : allZonesNode)
 	{
 		Zone zonesObject;
-		if(!valueZonesZone["ZoneDomain"].isNull())
-			zonesObject.zoneDomain = valueZonesZone["ZoneDomain"].asString();
-		if(!valueZonesZone["ZoneStatus"].isNull())
-			zonesObject.zoneStatus = valueZonesZone["ZoneStatus"].asString();
 		if(!valueZonesZone["EniId"].isNull())
 			zonesObject.eniId = valueZonesZone["EniId"].asString();
-		if(!valueZonesZone["EniIp"].isNull())
-			zonesObject.eniIp = valueZonesZone["EniIp"].asString();
-		if(!valueZonesZone["VSwitchId"].isNull())
-			zonesObject.vSwitchId = valueZonesZone["VSwitchId"].asString();
 		if(!valueZonesZone["ZoneId"].isNull())
 			zonesObject.zoneId = valueZonesZone["ZoneId"].asString();
+		if(!valueZonesZone["ServiceStatus"].isNull())
+			zonesObject.serviceStatus = valueZonesZone["ServiceStatus"].asString();
+		if(!valueZonesZone["VSwitchId"].isNull())
+			zonesObject.vSwitchId = valueZonesZone["VSwitchId"].asString();
+		if(!valueZonesZone["EniIp"].isNull())
+			zonesObject.eniIp = valueZonesZone["EniIp"].asString();
+		if(!valueZonesZone["ZoneStatus"].isNull())
+			zonesObject.zoneStatus = valueZonesZone["ZoneStatus"].asString();
 		if(!valueZonesZone["RegionId"].isNull())
 			zonesObject.regionId = valueZonesZone["RegionId"].asString();
+		if(!valueZonesZone["ZoneDomain"].isNull())
+			zonesObject.zoneDomain = valueZonesZone["ZoneDomain"].asString();
 		zones_.push_back(zonesObject);
 	}
-	if(!value["MaxResults"].isNull())
-		maxResults_ = value["MaxResults"].asString();
 	if(!value["NextToken"].isNull())
 		nextToken_ = value["NextToken"].asString();
+	if(!value["MaxResults"].isNull())
+		maxResults_ = value["MaxResults"].asString();
 
 }
 

+ 24 - 22
privatelink/src/model/ListVpcEndpointsResult.cc

@@ -43,40 +43,42 @@ void ListVpcEndpointsResult::parse(const std::string &payload)
 	for (auto valueEndpointsEndpoint : allEndpointsNode)
 	{
 		Endpoint endpointsObject;
-		if(!valueEndpointsEndpoint["EndpointId"].isNull())
-			endpointsObject.endpointId = valueEndpointsEndpoint["EndpointId"].asString();
-		if(!valueEndpointsEndpoint["EndpointName"].isNull())
-			endpointsObject.endpointName = valueEndpointsEndpoint["EndpointName"].asString();
-		if(!valueEndpointsEndpoint["EndpointDescription"].isNull())
-			endpointsObject.endpointDescription = valueEndpointsEndpoint["EndpointDescription"].asString();
-		if(!valueEndpointsEndpoint["EndpointStatus"].isNull())
-			endpointsObject.endpointStatus = valueEndpointsEndpoint["EndpointStatus"].asString();
-		if(!valueEndpointsEndpoint["EndpointBusinessStatus"].isNull())
-			endpointsObject.endpointBusinessStatus = valueEndpointsEndpoint["EndpointBusinessStatus"].asString();
 		if(!valueEndpointsEndpoint["EndpointDomain"].isNull())
 			endpointsObject.endpointDomain = valueEndpointsEndpoint["EndpointDomain"].asString();
-		if(!valueEndpointsEndpoint["Bandwidth"].isNull())
-			endpointsObject.bandwidth = std::stol(valueEndpointsEndpoint["Bandwidth"].asString());
-		if(!valueEndpointsEndpoint["ConnectionStatus"].isNull())
-			endpointsObject.connectionStatus = valueEndpointsEndpoint["ConnectionStatus"].asString();
+		if(!valueEndpointsEndpoint["ResourceOwner"].isNull())
+			endpointsObject.resourceOwner = valueEndpointsEndpoint["ResourceOwner"].asString() == "true";
+		if(!valueEndpointsEndpoint["CreateTime"].isNull())
+			endpointsObject.createTime = valueEndpointsEndpoint["CreateTime"].asString();
+		if(!valueEndpointsEndpoint["EndpointBusinessStatus"].isNull())
+			endpointsObject.endpointBusinessStatus = valueEndpointsEndpoint["EndpointBusinessStatus"].asString();
+		if(!valueEndpointsEndpoint["EndpointDescription"].isNull())
+			endpointsObject.endpointDescription = valueEndpointsEndpoint["EndpointDescription"].asString();
 		if(!valueEndpointsEndpoint["ServiceId"].isNull())
 			endpointsObject.serviceId = valueEndpointsEndpoint["ServiceId"].asString();
-		if(!valueEndpointsEndpoint["ServiceName"].isNull())
-			endpointsObject.serviceName = valueEndpointsEndpoint["ServiceName"].asString();
+		if(!valueEndpointsEndpoint["EndpointStatus"].isNull())
+			endpointsObject.endpointStatus = valueEndpointsEndpoint["EndpointStatus"].asString();
+		if(!valueEndpointsEndpoint["EndpointName"].isNull())
+			endpointsObject.endpointName = valueEndpointsEndpoint["EndpointName"].asString();
 		if(!valueEndpointsEndpoint["VpcId"].isNull())
 			endpointsObject.vpcId = valueEndpointsEndpoint["VpcId"].asString();
-		if(!valueEndpointsEndpoint["CreateTime"].isNull())
-			endpointsObject.createTime = valueEndpointsEndpoint["CreateTime"].asString();
+		if(!valueEndpointsEndpoint["ServiceName"].isNull())
+			endpointsObject.serviceName = valueEndpointsEndpoint["ServiceName"].asString();
+		if(!valueEndpointsEndpoint["EndpointId"].isNull())
+			endpointsObject.endpointId = valueEndpointsEndpoint["EndpointId"].asString();
+		if(!valueEndpointsEndpoint["Bandwidth"].isNull())
+			endpointsObject.bandwidth = std::stol(valueEndpointsEndpoint["Bandwidth"].asString());
 		if(!valueEndpointsEndpoint["RegionId"].isNull())
 			endpointsObject.regionId = valueEndpointsEndpoint["RegionId"].asString();
-		if(!valueEndpointsEndpoint["ResourceOwner"].isNull())
-			endpointsObject.resourceOwner = valueEndpointsEndpoint["ResourceOwner"].asString() == "true";
+		if(!valueEndpointsEndpoint["ConnectionStatus"].isNull())
+			endpointsObject.connectionStatus = valueEndpointsEndpoint["ConnectionStatus"].asString();
+		if(!valueEndpointsEndpoint["ZoneAffinityEnabled"].isNull())
+			endpointsObject.zoneAffinityEnabled = valueEndpointsEndpoint["ZoneAffinityEnabled"].asString() == "true";
 		endpoints_.push_back(endpointsObject);
 	}
-	if(!value["MaxResults"].isNull())
-		maxResults_ = value["MaxResults"].asString();
 	if(!value["NextToken"].isNull())
 		nextToken_ = value["NextToken"].asString();
+	if(!value["MaxResults"].isNull())
+		maxResults_ = value["MaxResults"].asString();
 
 }
 

+ 11 - 0
privatelink/src/model/UpdateVpcEndpointServiceAttributeRequest.cc

@@ -71,6 +71,17 @@ void UpdateVpcEndpointServiceAttributeRequest::setRegionId(const std::string& re
 	setParameter("RegionId", regionId);
 }
 
+bool UpdateVpcEndpointServiceAttributeRequest::getZoneAffinityEnabled()const
+{
+	return zoneAffinityEnabled_;
+}
+
+void UpdateVpcEndpointServiceAttributeRequest::setZoneAffinityEnabled(bool zoneAffinityEnabled)
+{
+	zoneAffinityEnabled_ = zoneAffinityEnabled;
+	setParameter("ZoneAffinityEnabled", zoneAffinityEnabled ? "true" : "false");
+}
+
 bool UpdateVpcEndpointServiceAttributeRequest::getDryRun()const
 {
 	return dryRun_;