Ver Fonte

Support MatchAddressType in RouteMap API.

sdk-team há 4 anos atrás
pai
commit
6c572378d9

+ 3 - 0
CHANGELOG

@@ -1,3 +1,6 @@
+2022-07-19 Version: 1.36.1186
+- Support MatchAddressType in RouteMap API.
+
 2022-07-18 Version: 1.36.1185
 - Add Mutimedia Screen API Support.
 

+ 1 - 1
VERSION

@@ -1 +1 @@
-1.36.1185
+1.36.1186

+ 12 - 0
cbn/CMakeLists.txt

@@ -59,6 +59,8 @@ set(cbn_public_header_model
 	include/alibabacloud/cbn/model/CreateTransitRouterMulticastDomainResult.h
 	include/alibabacloud/cbn/model/CreateTransitRouterPeerAttachmentRequest.h
 	include/alibabacloud/cbn/model/CreateTransitRouterPeerAttachmentResult.h
+	include/alibabacloud/cbn/model/CreateTransitRouterPrefixListAssociationRequest.h
+	include/alibabacloud/cbn/model/CreateTransitRouterPrefixListAssociationResult.h
 	include/alibabacloud/cbn/model/CreateTransitRouterRouteEntryRequest.h
 	include/alibabacloud/cbn/model/CreateTransitRouterRouteEntryResult.h
 	include/alibabacloud/cbn/model/CreateTransitRouterRouteTableRequest.h
@@ -97,6 +99,8 @@ set(cbn_public_header_model
 	include/alibabacloud/cbn/model/DeleteTransitRouterMulticastDomainResult.h
 	include/alibabacloud/cbn/model/DeleteTransitRouterPeerAttachmentRequest.h
 	include/alibabacloud/cbn/model/DeleteTransitRouterPeerAttachmentResult.h
+	include/alibabacloud/cbn/model/DeleteTransitRouterPrefixListAssociationRequest.h
+	include/alibabacloud/cbn/model/DeleteTransitRouterPrefixListAssociationResult.h
 	include/alibabacloud/cbn/model/DeleteTransitRouterRouteEntryRequest.h
 	include/alibabacloud/cbn/model/DeleteTransitRouterRouteEntryResult.h
 	include/alibabacloud/cbn/model/DeleteTransitRouterRouteTableRequest.h
@@ -193,6 +197,8 @@ set(cbn_public_header_model
 	include/alibabacloud/cbn/model/ListTransitRouterMulticastGroupsResult.h
 	include/alibabacloud/cbn/model/ListTransitRouterPeerAttachmentsRequest.h
 	include/alibabacloud/cbn/model/ListTransitRouterPeerAttachmentsResult.h
+	include/alibabacloud/cbn/model/ListTransitRouterPrefixListAssociationRequest.h
+	include/alibabacloud/cbn/model/ListTransitRouterPrefixListAssociationResult.h
 	include/alibabacloud/cbn/model/ListTransitRouterRouteEntriesRequest.h
 	include/alibabacloud/cbn/model/ListTransitRouterRouteEntriesResult.h
 	include/alibabacloud/cbn/model/ListTransitRouterRouteTableAssociationsRequest.h
@@ -316,6 +322,8 @@ set(cbn_src
 	src/model/CreateTransitRouterMulticastDomainResult.cc
 	src/model/CreateTransitRouterPeerAttachmentRequest.cc
 	src/model/CreateTransitRouterPeerAttachmentResult.cc
+	src/model/CreateTransitRouterPrefixListAssociationRequest.cc
+	src/model/CreateTransitRouterPrefixListAssociationResult.cc
 	src/model/CreateTransitRouterRouteEntryRequest.cc
 	src/model/CreateTransitRouterRouteEntryResult.cc
 	src/model/CreateTransitRouterRouteTableRequest.cc
@@ -354,6 +362,8 @@ set(cbn_src
 	src/model/DeleteTransitRouterMulticastDomainResult.cc
 	src/model/DeleteTransitRouterPeerAttachmentRequest.cc
 	src/model/DeleteTransitRouterPeerAttachmentResult.cc
+	src/model/DeleteTransitRouterPrefixListAssociationRequest.cc
+	src/model/DeleteTransitRouterPrefixListAssociationResult.cc
 	src/model/DeleteTransitRouterRouteEntryRequest.cc
 	src/model/DeleteTransitRouterRouteEntryResult.cc
 	src/model/DeleteTransitRouterRouteTableRequest.cc
@@ -450,6 +460,8 @@ set(cbn_src
 	src/model/ListTransitRouterMulticastGroupsResult.cc
 	src/model/ListTransitRouterPeerAttachmentsRequest.cc
 	src/model/ListTransitRouterPeerAttachmentsResult.cc
+	src/model/ListTransitRouterPrefixListAssociationRequest.cc
+	src/model/ListTransitRouterPrefixListAssociationResult.cc
 	src/model/ListTransitRouterRouteEntriesRequest.cc
 	src/model/ListTransitRouterRouteEntriesResult.cc
 	src/model/ListTransitRouterRouteTableAssociationsRequest.cc

+ 24 - 0
cbn/include/alibabacloud/cbn/CbnClient.h

@@ -60,6 +60,8 @@
 #include "model/CreateTransitRouterMulticastDomainResult.h"
 #include "model/CreateTransitRouterPeerAttachmentRequest.h"
 #include "model/CreateTransitRouterPeerAttachmentResult.h"
+#include "model/CreateTransitRouterPrefixListAssociationRequest.h"
+#include "model/CreateTransitRouterPrefixListAssociationResult.h"
 #include "model/CreateTransitRouterRouteEntryRequest.h"
 #include "model/CreateTransitRouterRouteEntryResult.h"
 #include "model/CreateTransitRouterRouteTableRequest.h"
@@ -98,6 +100,8 @@
 #include "model/DeleteTransitRouterMulticastDomainResult.h"
 #include "model/DeleteTransitRouterPeerAttachmentRequest.h"
 #include "model/DeleteTransitRouterPeerAttachmentResult.h"
+#include "model/DeleteTransitRouterPrefixListAssociationRequest.h"
+#include "model/DeleteTransitRouterPrefixListAssociationResult.h"
 #include "model/DeleteTransitRouterRouteEntryRequest.h"
 #include "model/DeleteTransitRouterRouteEntryResult.h"
 #include "model/DeleteTransitRouterRouteTableRequest.h"
@@ -194,6 +198,8 @@
 #include "model/ListTransitRouterMulticastGroupsResult.h"
 #include "model/ListTransitRouterPeerAttachmentsRequest.h"
 #include "model/ListTransitRouterPeerAttachmentsResult.h"
+#include "model/ListTransitRouterPrefixListAssociationRequest.h"
+#include "model/ListTransitRouterPrefixListAssociationResult.h"
 #include "model/ListTransitRouterRouteEntriesRequest.h"
 #include "model/ListTransitRouterRouteEntriesResult.h"
 #include "model/ListTransitRouterRouteTableAssociationsRequest.h"
@@ -342,6 +348,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::CreateTransitRouterPeerAttachmentResult> CreateTransitRouterPeerAttachmentOutcome;
 			typedef std::future<CreateTransitRouterPeerAttachmentOutcome> CreateTransitRouterPeerAttachmentOutcomeCallable;
 			typedef std::function<void(const CbnClient*, const Model::CreateTransitRouterPeerAttachmentRequest&, const CreateTransitRouterPeerAttachmentOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateTransitRouterPeerAttachmentAsyncHandler;
+			typedef Outcome<Error, Model::CreateTransitRouterPrefixListAssociationResult> CreateTransitRouterPrefixListAssociationOutcome;
+			typedef std::future<CreateTransitRouterPrefixListAssociationOutcome> CreateTransitRouterPrefixListAssociationOutcomeCallable;
+			typedef std::function<void(const CbnClient*, const Model::CreateTransitRouterPrefixListAssociationRequest&, const CreateTransitRouterPrefixListAssociationOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateTransitRouterPrefixListAssociationAsyncHandler;
 			typedef Outcome<Error, Model::CreateTransitRouterRouteEntryResult> CreateTransitRouterRouteEntryOutcome;
 			typedef std::future<CreateTransitRouterRouteEntryOutcome> CreateTransitRouterRouteEntryOutcomeCallable;
 			typedef std::function<void(const CbnClient*, const Model::CreateTransitRouterRouteEntryRequest&, const CreateTransitRouterRouteEntryOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateTransitRouterRouteEntryAsyncHandler;
@@ -399,6 +408,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::DeleteTransitRouterPeerAttachmentResult> DeleteTransitRouterPeerAttachmentOutcome;
 			typedef std::future<DeleteTransitRouterPeerAttachmentOutcome> DeleteTransitRouterPeerAttachmentOutcomeCallable;
 			typedef std::function<void(const CbnClient*, const Model::DeleteTransitRouterPeerAttachmentRequest&, const DeleteTransitRouterPeerAttachmentOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteTransitRouterPeerAttachmentAsyncHandler;
+			typedef Outcome<Error, Model::DeleteTransitRouterPrefixListAssociationResult> DeleteTransitRouterPrefixListAssociationOutcome;
+			typedef std::future<DeleteTransitRouterPrefixListAssociationOutcome> DeleteTransitRouterPrefixListAssociationOutcomeCallable;
+			typedef std::function<void(const CbnClient*, const Model::DeleteTransitRouterPrefixListAssociationRequest&, const DeleteTransitRouterPrefixListAssociationOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteTransitRouterPrefixListAssociationAsyncHandler;
 			typedef Outcome<Error, Model::DeleteTransitRouterRouteEntryResult> DeleteTransitRouterRouteEntryOutcome;
 			typedef std::future<DeleteTransitRouterRouteEntryOutcome> DeleteTransitRouterRouteEntryOutcomeCallable;
 			typedef std::function<void(const CbnClient*, const Model::DeleteTransitRouterRouteEntryRequest&, const DeleteTransitRouterRouteEntryOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteTransitRouterRouteEntryAsyncHandler;
@@ -543,6 +555,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::ListTransitRouterPeerAttachmentsResult> ListTransitRouterPeerAttachmentsOutcome;
 			typedef std::future<ListTransitRouterPeerAttachmentsOutcome> ListTransitRouterPeerAttachmentsOutcomeCallable;
 			typedef std::function<void(const CbnClient*, const Model::ListTransitRouterPeerAttachmentsRequest&, const ListTransitRouterPeerAttachmentsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListTransitRouterPeerAttachmentsAsyncHandler;
+			typedef Outcome<Error, Model::ListTransitRouterPrefixListAssociationResult> ListTransitRouterPrefixListAssociationOutcome;
+			typedef std::future<ListTransitRouterPrefixListAssociationOutcome> ListTransitRouterPrefixListAssociationOutcomeCallable;
+			typedef std::function<void(const CbnClient*, const Model::ListTransitRouterPrefixListAssociationRequest&, const ListTransitRouterPrefixListAssociationOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListTransitRouterPrefixListAssociationAsyncHandler;
 			typedef Outcome<Error, Model::ListTransitRouterRouteEntriesResult> ListTransitRouterRouteEntriesOutcome;
 			typedef std::future<ListTransitRouterRouteEntriesOutcome> ListTransitRouterRouteEntriesOutcomeCallable;
 			typedef std::function<void(const CbnClient*, const Model::ListTransitRouterRouteEntriesRequest&, const ListTransitRouterRouteEntriesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListTransitRouterRouteEntriesAsyncHandler;
@@ -728,6 +743,9 @@ namespace AlibabaCloud
 			CreateTransitRouterPeerAttachmentOutcome createTransitRouterPeerAttachment(const Model::CreateTransitRouterPeerAttachmentRequest &request)const;
 			void createTransitRouterPeerAttachmentAsync(const Model::CreateTransitRouterPeerAttachmentRequest& request, const CreateTransitRouterPeerAttachmentAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			CreateTransitRouterPeerAttachmentOutcomeCallable createTransitRouterPeerAttachmentCallable(const Model::CreateTransitRouterPeerAttachmentRequest& request) const;
+			CreateTransitRouterPrefixListAssociationOutcome createTransitRouterPrefixListAssociation(const Model::CreateTransitRouterPrefixListAssociationRequest &request)const;
+			void createTransitRouterPrefixListAssociationAsync(const Model::CreateTransitRouterPrefixListAssociationRequest& request, const CreateTransitRouterPrefixListAssociationAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			CreateTransitRouterPrefixListAssociationOutcomeCallable createTransitRouterPrefixListAssociationCallable(const Model::CreateTransitRouterPrefixListAssociationRequest& request) const;
 			CreateTransitRouterRouteEntryOutcome createTransitRouterRouteEntry(const Model::CreateTransitRouterRouteEntryRequest &request)const;
 			void createTransitRouterRouteEntryAsync(const Model::CreateTransitRouterRouteEntryRequest& request, const CreateTransitRouterRouteEntryAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			CreateTransitRouterRouteEntryOutcomeCallable createTransitRouterRouteEntryCallable(const Model::CreateTransitRouterRouteEntryRequest& request) const;
@@ -785,6 +803,9 @@ namespace AlibabaCloud
 			DeleteTransitRouterPeerAttachmentOutcome deleteTransitRouterPeerAttachment(const Model::DeleteTransitRouterPeerAttachmentRequest &request)const;
 			void deleteTransitRouterPeerAttachmentAsync(const Model::DeleteTransitRouterPeerAttachmentRequest& request, const DeleteTransitRouterPeerAttachmentAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			DeleteTransitRouterPeerAttachmentOutcomeCallable deleteTransitRouterPeerAttachmentCallable(const Model::DeleteTransitRouterPeerAttachmentRequest& request) const;
+			DeleteTransitRouterPrefixListAssociationOutcome deleteTransitRouterPrefixListAssociation(const Model::DeleteTransitRouterPrefixListAssociationRequest &request)const;
+			void deleteTransitRouterPrefixListAssociationAsync(const Model::DeleteTransitRouterPrefixListAssociationRequest& request, const DeleteTransitRouterPrefixListAssociationAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DeleteTransitRouterPrefixListAssociationOutcomeCallable deleteTransitRouterPrefixListAssociationCallable(const Model::DeleteTransitRouterPrefixListAssociationRequest& request) const;
 			DeleteTransitRouterRouteEntryOutcome deleteTransitRouterRouteEntry(const Model::DeleteTransitRouterRouteEntryRequest &request)const;
 			void deleteTransitRouterRouteEntryAsync(const Model::DeleteTransitRouterRouteEntryRequest& request, const DeleteTransitRouterRouteEntryAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			DeleteTransitRouterRouteEntryOutcomeCallable deleteTransitRouterRouteEntryCallable(const Model::DeleteTransitRouterRouteEntryRequest& request) const;
@@ -929,6 +950,9 @@ namespace AlibabaCloud
 			ListTransitRouterPeerAttachmentsOutcome listTransitRouterPeerAttachments(const Model::ListTransitRouterPeerAttachmentsRequest &request)const;
 			void listTransitRouterPeerAttachmentsAsync(const Model::ListTransitRouterPeerAttachmentsRequest& request, const ListTransitRouterPeerAttachmentsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			ListTransitRouterPeerAttachmentsOutcomeCallable listTransitRouterPeerAttachmentsCallable(const Model::ListTransitRouterPeerAttachmentsRequest& request) const;
+			ListTransitRouterPrefixListAssociationOutcome listTransitRouterPrefixListAssociation(const Model::ListTransitRouterPrefixListAssociationRequest &request)const;
+			void listTransitRouterPrefixListAssociationAsync(const Model::ListTransitRouterPrefixListAssociationRequest& request, const ListTransitRouterPrefixListAssociationAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ListTransitRouterPrefixListAssociationOutcomeCallable listTransitRouterPrefixListAssociationCallable(const Model::ListTransitRouterPrefixListAssociationRequest& request) const;
 			ListTransitRouterRouteEntriesOutcome listTransitRouterRouteEntries(const Model::ListTransitRouterRouteEntriesRequest &request)const;
 			void listTransitRouterRouteEntriesAsync(const Model::ListTransitRouterRouteEntriesRequest& request, const ListTransitRouterRouteEntriesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			ListTransitRouterRouteEntriesOutcomeCallable listTransitRouterRouteEntriesCallable(const Model::ListTransitRouterRouteEntriesRequest& request) const;

+ 78 - 0
cbn/include/alibabacloud/cbn/model/CreateTransitRouterPrefixListAssociationRequest.h

@@ -0,0 +1,78 @@
+/*
+ * 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_CBN_MODEL_CREATETRANSITROUTERPREFIXLISTASSOCIATIONREQUEST_H_
+#define ALIBABACLOUD_CBN_MODEL_CREATETRANSITROUTERPREFIXLISTASSOCIATIONREQUEST_H_
+
+#include <alibabacloud/cbn/CbnExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Cbn {
+namespace Model {
+class ALIBABACLOUD_CBN_EXPORT CreateTransitRouterPrefixListAssociationRequest : public RpcServiceRequest {
+public:
+	CreateTransitRouterPrefixListAssociationRequest();
+	~CreateTransitRouterPrefixListAssociationRequest();
+	long getResourceOwnerId() const;
+	void setResourceOwnerId(long resourceOwnerId);
+	std::string getClientToken() const;
+	void setClientToken(const std::string &clientToken);
+	std::string getRegionId() const;
+	void setRegionId(const std::string &regionId);
+	std::string getPrefixListId() const;
+	void setPrefixListId(const std::string &prefixListId);
+	long getOwnerUid() const;
+	void setOwnerUid(long ownerUid);
+	std::string getNextHopType() const;
+	void setNextHopType(const std::string &nextHopType);
+	bool getDryRun() const;
+	void setDryRun(bool dryRun);
+	std::string getResourceOwnerAccount() const;
+	void setResourceOwnerAccount(const std::string &resourceOwnerAccount);
+	std::string getOwnerAccount() const;
+	void setOwnerAccount(const std::string &ownerAccount);
+	long getOwnerId() const;
+	void setOwnerId(long ownerId);
+	std::string getTransitRouterId() const;
+	void setTransitRouterId(const std::string &transitRouterId);
+	std::string getTransitRouterTableId() const;
+	void setTransitRouterTableId(const std::string &transitRouterTableId);
+	std::string getNextHop() const;
+	void setNextHop(const std::string &nextHop);
+
+private:
+	long resourceOwnerId_;
+	std::string clientToken_;
+	std::string regionId_;
+	std::string prefixListId_;
+	long ownerUid_;
+	std::string nextHopType_;
+	bool dryRun_;
+	std::string resourceOwnerAccount_;
+	std::string ownerAccount_;
+	long ownerId_;
+	std::string transitRouterId_;
+	std::string transitRouterTableId_;
+	std::string nextHop_;
+};
+} // namespace Model
+} // namespace Cbn
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_CBN_MODEL_CREATETRANSITROUTERPREFIXLISTASSOCIATIONREQUEST_H_

+ 49 - 0
cbn/include/alibabacloud/cbn/model/CreateTransitRouterPrefixListAssociationResult.h

@@ -0,0 +1,49 @@
+/*
+ * 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_CBN_MODEL_CREATETRANSITROUTERPREFIXLISTASSOCIATIONRESULT_H_
+#define ALIBABACLOUD_CBN_MODEL_CREATETRANSITROUTERPREFIXLISTASSOCIATIONRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/cbn/CbnExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Cbn
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CBN_EXPORT CreateTransitRouterPrefixListAssociationResult : public ServiceResult
+			{
+			public:
+
+
+				CreateTransitRouterPrefixListAssociationResult();
+				explicit CreateTransitRouterPrefixListAssociationResult(const std::string &payload);
+				~CreateTransitRouterPrefixListAssociationResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CBN_MODEL_CREATETRANSITROUTERPREFIXLISTASSOCIATIONRESULT_H_

+ 75 - 0
cbn/include/alibabacloud/cbn/model/DeleteTransitRouterPrefixListAssociationRequest.h

@@ -0,0 +1,75 @@
+/*
+ * 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_CBN_MODEL_DELETETRANSITROUTERPREFIXLISTASSOCIATIONREQUEST_H_
+#define ALIBABACLOUD_CBN_MODEL_DELETETRANSITROUTERPREFIXLISTASSOCIATIONREQUEST_H_
+
+#include <alibabacloud/cbn/CbnExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Cbn {
+namespace Model {
+class ALIBABACLOUD_CBN_EXPORT DeleteTransitRouterPrefixListAssociationRequest : public RpcServiceRequest {
+public:
+	DeleteTransitRouterPrefixListAssociationRequest();
+	~DeleteTransitRouterPrefixListAssociationRequest();
+	long getResourceOwnerId() const;
+	void setResourceOwnerId(long resourceOwnerId);
+	std::string getClientToken() const;
+	void setClientToken(const std::string &clientToken);
+	std::string getRegionId() const;
+	void setRegionId(const std::string &regionId);
+	std::string getPrefixListId() const;
+	void setPrefixListId(const std::string &prefixListId);
+	std::string getNextHopType() const;
+	void setNextHopType(const std::string &nextHopType);
+	bool getDryRun() const;
+	void setDryRun(bool dryRun);
+	std::string getResourceOwnerAccount() const;
+	void setResourceOwnerAccount(const std::string &resourceOwnerAccount);
+	std::string getOwnerAccount() const;
+	void setOwnerAccount(const std::string &ownerAccount);
+	long getOwnerId() const;
+	void setOwnerId(long ownerId);
+	std::string getTransitRouterId() const;
+	void setTransitRouterId(const std::string &transitRouterId);
+	std::string getTransitRouterTableId() const;
+	void setTransitRouterTableId(const std::string &transitRouterTableId);
+	std::string getNextHop() const;
+	void setNextHop(const std::string &nextHop);
+
+private:
+	long resourceOwnerId_;
+	std::string clientToken_;
+	std::string regionId_;
+	std::string prefixListId_;
+	std::string nextHopType_;
+	bool dryRun_;
+	std::string resourceOwnerAccount_;
+	std::string ownerAccount_;
+	long ownerId_;
+	std::string transitRouterId_;
+	std::string transitRouterTableId_;
+	std::string nextHop_;
+};
+} // namespace Model
+} // namespace Cbn
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_CBN_MODEL_DELETETRANSITROUTERPREFIXLISTASSOCIATIONREQUEST_H_

+ 49 - 0
cbn/include/alibabacloud/cbn/model/DeleteTransitRouterPrefixListAssociationResult.h

@@ -0,0 +1,49 @@
+/*
+ * 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_CBN_MODEL_DELETETRANSITROUTERPREFIXLISTASSOCIATIONRESULT_H_
+#define ALIBABACLOUD_CBN_MODEL_DELETETRANSITROUTERPREFIXLISTASSOCIATIONRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/cbn/CbnExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Cbn
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CBN_EXPORT DeleteTransitRouterPrefixListAssociationResult : public ServiceResult
+			{
+			public:
+
+
+				DeleteTransitRouterPrefixListAssociationResult();
+				explicit DeleteTransitRouterPrefixListAssociationResult(const std::string &payload);
+				~DeleteTransitRouterPrefixListAssociationResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CBN_MODEL_DELETETRANSITROUTERPREFIXLISTASSOCIATIONRESULT_H_

+ 72 - 0
cbn/include/alibabacloud/cbn/model/ListTransitRouterPrefixListAssociationRequest.h

@@ -0,0 +1,72 @@
+/*
+ * 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_CBN_MODEL_LISTTRANSITROUTERPREFIXLISTASSOCIATIONREQUEST_H_
+#define ALIBABACLOUD_CBN_MODEL_LISTTRANSITROUTERPREFIXLISTASSOCIATIONREQUEST_H_
+
+#include <alibabacloud/cbn/CbnExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Cbn {
+namespace Model {
+class ALIBABACLOUD_CBN_EXPORT ListTransitRouterPrefixListAssociationRequest : public RpcServiceRequest {
+public:
+	ListTransitRouterPrefixListAssociationRequest();
+	~ListTransitRouterPrefixListAssociationRequest();
+	long getResourceOwnerId() const;
+	void setResourceOwnerId(long resourceOwnerId);
+	int getPageNumber() const;
+	void setPageNumber(int pageNumber);
+	std::string getRegionId() const;
+	void setRegionId(const std::string &regionId);
+	std::string getPrefixListId() const;
+	void setPrefixListId(const std::string &prefixListId);
+	int getPageSize() const;
+	void setPageSize(int pageSize);
+	long getOwnerUid() const;
+	void setOwnerUid(long ownerUid);
+	std::string getResourceOwnerAccount() const;
+	void setResourceOwnerAccount(const std::string &resourceOwnerAccount);
+	std::string getOwnerAccount() const;
+	void setOwnerAccount(const std::string &ownerAccount);
+	long getOwnerId() const;
+	void setOwnerId(long ownerId);
+	std::string getTransitRouterId() const;
+	void setTransitRouterId(const std::string &transitRouterId);
+	std::string getTransitRouterTableId() const;
+	void setTransitRouterTableId(const std::string &transitRouterTableId);
+
+private:
+	long resourceOwnerId_;
+	int pageNumber_;
+	std::string regionId_;
+	std::string prefixListId_;
+	int pageSize_;
+	long ownerUid_;
+	std::string resourceOwnerAccount_;
+	std::string ownerAccount_;
+	long ownerId_;
+	std::string transitRouterId_;
+	std::string transitRouterTableId_;
+};
+} // namespace Model
+} // namespace Cbn
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_CBN_MODEL_LISTTRANSITROUTERPREFIXLISTASSOCIATIONREQUEST_H_

+ 67 - 0
cbn/include/alibabacloud/cbn/model/ListTransitRouterPrefixListAssociationResult.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_CBN_MODEL_LISTTRANSITROUTERPREFIXLISTASSOCIATIONRESULT_H_
+#define ALIBABACLOUD_CBN_MODEL_LISTTRANSITROUTERPREFIXLISTASSOCIATIONRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/cbn/CbnExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Cbn
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CBN_EXPORT ListTransitRouterPrefixListAssociationResult : public ServiceResult
+			{
+			public:
+				struct PrefixList
+				{
+					std::string status;
+					std::string transitRouterTableId;
+					std::string nextHopType;
+					std::string prefixListId;
+					long ownerUid;
+					std::string nextHop;
+					std::string nextHopInstanceId;
+				};
+
+
+				ListTransitRouterPrefixListAssociationResult();
+				explicit ListTransitRouterPrefixListAssociationResult(const std::string &payload);
+				~ListTransitRouterPrefixListAssociationResult();
+				int getTotalCount()const;
+				int getPageSize()const;
+				int getPageNumber()const;
+				std::vector<PrefixList> getPrefixLists()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				int totalCount_;
+				int pageSize_;
+				int pageNumber_;
+				std::vector<PrefixList> prefixLists_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CBN_MODEL_LISTTRANSITROUTERPREFIXLISTASSOCIATIONRESULT_H_

+ 108 - 0
cbn/src/CbnClient.cc

@@ -735,6 +735,42 @@ CbnClient::CreateTransitRouterPeerAttachmentOutcomeCallable CbnClient::createTra
 	return task->get_future();
 }
 
+CbnClient::CreateTransitRouterPrefixListAssociationOutcome CbnClient::createTransitRouterPrefixListAssociation(const CreateTransitRouterPrefixListAssociationRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return CreateTransitRouterPrefixListAssociationOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return CreateTransitRouterPrefixListAssociationOutcome(CreateTransitRouterPrefixListAssociationResult(outcome.result()));
+	else
+		return CreateTransitRouterPrefixListAssociationOutcome(outcome.error());
+}
+
+void CbnClient::createTransitRouterPrefixListAssociationAsync(const CreateTransitRouterPrefixListAssociationRequest& request, const CreateTransitRouterPrefixListAssociationAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, createTransitRouterPrefixListAssociation(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+CbnClient::CreateTransitRouterPrefixListAssociationOutcomeCallable CbnClient::createTransitRouterPrefixListAssociationCallable(const CreateTransitRouterPrefixListAssociationRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<CreateTransitRouterPrefixListAssociationOutcome()>>(
+			[this, request]()
+			{
+			return this->createTransitRouterPrefixListAssociation(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 CbnClient::CreateTransitRouterRouteEntryOutcome CbnClient::createTransitRouterRouteEntry(const CreateTransitRouterRouteEntryRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -1419,6 +1455,42 @@ CbnClient::DeleteTransitRouterPeerAttachmentOutcomeCallable CbnClient::deleteTra
 	return task->get_future();
 }
 
+CbnClient::DeleteTransitRouterPrefixListAssociationOutcome CbnClient::deleteTransitRouterPrefixListAssociation(const DeleteTransitRouterPrefixListAssociationRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return DeleteTransitRouterPrefixListAssociationOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DeleteTransitRouterPrefixListAssociationOutcome(DeleteTransitRouterPrefixListAssociationResult(outcome.result()));
+	else
+		return DeleteTransitRouterPrefixListAssociationOutcome(outcome.error());
+}
+
+void CbnClient::deleteTransitRouterPrefixListAssociationAsync(const DeleteTransitRouterPrefixListAssociationRequest& request, const DeleteTransitRouterPrefixListAssociationAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, deleteTransitRouterPrefixListAssociation(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+CbnClient::DeleteTransitRouterPrefixListAssociationOutcomeCallable CbnClient::deleteTransitRouterPrefixListAssociationCallable(const DeleteTransitRouterPrefixListAssociationRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DeleteTransitRouterPrefixListAssociationOutcome()>>(
+			[this, request]()
+			{
+			return this->deleteTransitRouterPrefixListAssociation(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 CbnClient::DeleteTransitRouterRouteEntryOutcome CbnClient::deleteTransitRouterRouteEntry(const DeleteTransitRouterRouteEntryRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -3147,6 +3219,42 @@ CbnClient::ListTransitRouterPeerAttachmentsOutcomeCallable CbnClient::listTransi
 	return task->get_future();
 }
 
+CbnClient::ListTransitRouterPrefixListAssociationOutcome CbnClient::listTransitRouterPrefixListAssociation(const ListTransitRouterPrefixListAssociationRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return ListTransitRouterPrefixListAssociationOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return ListTransitRouterPrefixListAssociationOutcome(ListTransitRouterPrefixListAssociationResult(outcome.result()));
+	else
+		return ListTransitRouterPrefixListAssociationOutcome(outcome.error());
+}
+
+void CbnClient::listTransitRouterPrefixListAssociationAsync(const ListTransitRouterPrefixListAssociationRequest& request, const ListTransitRouterPrefixListAssociationAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, listTransitRouterPrefixListAssociation(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+CbnClient::ListTransitRouterPrefixListAssociationOutcomeCallable CbnClient::listTransitRouterPrefixListAssociationCallable(const ListTransitRouterPrefixListAssociationRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<ListTransitRouterPrefixListAssociationOutcome()>>(
+			[this, request]()
+			{
+			return this->listTransitRouterPrefixListAssociation(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 CbnClient::ListTransitRouterRouteEntriesOutcome CbnClient::listTransitRouterRouteEntries(const ListTransitRouterRouteEntriesRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();

+ 144 - 0
cbn/src/model/CreateTransitRouterPrefixListAssociationRequest.cc

@@ -0,0 +1,144 @@
+/*
+ * 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/cbn/model/CreateTransitRouterPrefixListAssociationRequest.h>
+
+using AlibabaCloud::Cbn::Model::CreateTransitRouterPrefixListAssociationRequest;
+
+CreateTransitRouterPrefixListAssociationRequest::CreateTransitRouterPrefixListAssociationRequest()
+    : RpcServiceRequest("cbn", "2017-09-12", "CreateTransitRouterPrefixListAssociation") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+CreateTransitRouterPrefixListAssociationRequest::~CreateTransitRouterPrefixListAssociationRequest() {}
+
+long CreateTransitRouterPrefixListAssociationRequest::getResourceOwnerId() const {
+  return resourceOwnerId_;
+}
+
+void CreateTransitRouterPrefixListAssociationRequest::setResourceOwnerId(long resourceOwnerId) {
+  resourceOwnerId_ = resourceOwnerId;
+  setParameter(std::string("ResourceOwnerId"), std::to_string(resourceOwnerId));
+}
+
+std::string CreateTransitRouterPrefixListAssociationRequest::getClientToken() const {
+  return clientToken_;
+}
+
+void CreateTransitRouterPrefixListAssociationRequest::setClientToken(const std::string &clientToken) {
+  clientToken_ = clientToken;
+  setParameter(std::string("ClientToken"), clientToken);
+}
+
+std::string CreateTransitRouterPrefixListAssociationRequest::getRegionId() const {
+  return regionId_;
+}
+
+void CreateTransitRouterPrefixListAssociationRequest::setRegionId(const std::string &regionId) {
+  regionId_ = regionId;
+  setParameter(std::string("RegionId"), regionId);
+}
+
+std::string CreateTransitRouterPrefixListAssociationRequest::getPrefixListId() const {
+  return prefixListId_;
+}
+
+void CreateTransitRouterPrefixListAssociationRequest::setPrefixListId(const std::string &prefixListId) {
+  prefixListId_ = prefixListId;
+  setParameter(std::string("PrefixListId"), prefixListId);
+}
+
+long CreateTransitRouterPrefixListAssociationRequest::getOwnerUid() const {
+  return ownerUid_;
+}
+
+void CreateTransitRouterPrefixListAssociationRequest::setOwnerUid(long ownerUid) {
+  ownerUid_ = ownerUid;
+  setParameter(std::string("OwnerUid"), std::to_string(ownerUid));
+}
+
+std::string CreateTransitRouterPrefixListAssociationRequest::getNextHopType() const {
+  return nextHopType_;
+}
+
+void CreateTransitRouterPrefixListAssociationRequest::setNextHopType(const std::string &nextHopType) {
+  nextHopType_ = nextHopType;
+  setParameter(std::string("NextHopType"), nextHopType);
+}
+
+bool CreateTransitRouterPrefixListAssociationRequest::getDryRun() const {
+  return dryRun_;
+}
+
+void CreateTransitRouterPrefixListAssociationRequest::setDryRun(bool dryRun) {
+  dryRun_ = dryRun;
+  setParameter(std::string("DryRun"), dryRun ? "true" : "false");
+}
+
+std::string CreateTransitRouterPrefixListAssociationRequest::getResourceOwnerAccount() const {
+  return resourceOwnerAccount_;
+}
+
+void CreateTransitRouterPrefixListAssociationRequest::setResourceOwnerAccount(const std::string &resourceOwnerAccount) {
+  resourceOwnerAccount_ = resourceOwnerAccount;
+  setParameter(std::string("ResourceOwnerAccount"), resourceOwnerAccount);
+}
+
+std::string CreateTransitRouterPrefixListAssociationRequest::getOwnerAccount() const {
+  return ownerAccount_;
+}
+
+void CreateTransitRouterPrefixListAssociationRequest::setOwnerAccount(const std::string &ownerAccount) {
+  ownerAccount_ = ownerAccount;
+  setParameter(std::string("OwnerAccount"), ownerAccount);
+}
+
+long CreateTransitRouterPrefixListAssociationRequest::getOwnerId() const {
+  return ownerId_;
+}
+
+void CreateTransitRouterPrefixListAssociationRequest::setOwnerId(long ownerId) {
+  ownerId_ = ownerId;
+  setParameter(std::string("OwnerId"), std::to_string(ownerId));
+}
+
+std::string CreateTransitRouterPrefixListAssociationRequest::getTransitRouterId() const {
+  return transitRouterId_;
+}
+
+void CreateTransitRouterPrefixListAssociationRequest::setTransitRouterId(const std::string &transitRouterId) {
+  transitRouterId_ = transitRouterId;
+  setParameter(std::string("TransitRouterId"), transitRouterId);
+}
+
+std::string CreateTransitRouterPrefixListAssociationRequest::getTransitRouterTableId() const {
+  return transitRouterTableId_;
+}
+
+void CreateTransitRouterPrefixListAssociationRequest::setTransitRouterTableId(const std::string &transitRouterTableId) {
+  transitRouterTableId_ = transitRouterTableId;
+  setParameter(std::string("TransitRouterTableId"), transitRouterTableId);
+}
+
+std::string CreateTransitRouterPrefixListAssociationRequest::getNextHop() const {
+  return nextHop_;
+}
+
+void CreateTransitRouterPrefixListAssociationRequest::setNextHop(const std::string &nextHop) {
+  nextHop_ = nextHop;
+  setParameter(std::string("NextHop"), nextHop);
+}
+

+ 44 - 0
cbn/src/model/CreateTransitRouterPrefixListAssociationResult.cc

@@ -0,0 +1,44 @@
+/*
+ * 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/cbn/model/CreateTransitRouterPrefixListAssociationResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Cbn;
+using namespace AlibabaCloud::Cbn::Model;
+
+CreateTransitRouterPrefixListAssociationResult::CreateTransitRouterPrefixListAssociationResult() :
+	ServiceResult()
+{}
+
+CreateTransitRouterPrefixListAssociationResult::CreateTransitRouterPrefixListAssociationResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+CreateTransitRouterPrefixListAssociationResult::~CreateTransitRouterPrefixListAssociationResult()
+{}
+
+void CreateTransitRouterPrefixListAssociationResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+
+}
+

+ 135 - 0
cbn/src/model/DeleteTransitRouterPrefixListAssociationRequest.cc

@@ -0,0 +1,135 @@
+/*
+ * 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/cbn/model/DeleteTransitRouterPrefixListAssociationRequest.h>
+
+using AlibabaCloud::Cbn::Model::DeleteTransitRouterPrefixListAssociationRequest;
+
+DeleteTransitRouterPrefixListAssociationRequest::DeleteTransitRouterPrefixListAssociationRequest()
+    : RpcServiceRequest("cbn", "2017-09-12", "DeleteTransitRouterPrefixListAssociation") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+DeleteTransitRouterPrefixListAssociationRequest::~DeleteTransitRouterPrefixListAssociationRequest() {}
+
+long DeleteTransitRouterPrefixListAssociationRequest::getResourceOwnerId() const {
+  return resourceOwnerId_;
+}
+
+void DeleteTransitRouterPrefixListAssociationRequest::setResourceOwnerId(long resourceOwnerId) {
+  resourceOwnerId_ = resourceOwnerId;
+  setParameter(std::string("ResourceOwnerId"), std::to_string(resourceOwnerId));
+}
+
+std::string DeleteTransitRouterPrefixListAssociationRequest::getClientToken() const {
+  return clientToken_;
+}
+
+void DeleteTransitRouterPrefixListAssociationRequest::setClientToken(const std::string &clientToken) {
+  clientToken_ = clientToken;
+  setParameter(std::string("ClientToken"), clientToken);
+}
+
+std::string DeleteTransitRouterPrefixListAssociationRequest::getRegionId() const {
+  return regionId_;
+}
+
+void DeleteTransitRouterPrefixListAssociationRequest::setRegionId(const std::string &regionId) {
+  regionId_ = regionId;
+  setParameter(std::string("RegionId"), regionId);
+}
+
+std::string DeleteTransitRouterPrefixListAssociationRequest::getPrefixListId() const {
+  return prefixListId_;
+}
+
+void DeleteTransitRouterPrefixListAssociationRequest::setPrefixListId(const std::string &prefixListId) {
+  prefixListId_ = prefixListId;
+  setParameter(std::string("PrefixListId"), prefixListId);
+}
+
+std::string DeleteTransitRouterPrefixListAssociationRequest::getNextHopType() const {
+  return nextHopType_;
+}
+
+void DeleteTransitRouterPrefixListAssociationRequest::setNextHopType(const std::string &nextHopType) {
+  nextHopType_ = nextHopType;
+  setParameter(std::string("NextHopType"), nextHopType);
+}
+
+bool DeleteTransitRouterPrefixListAssociationRequest::getDryRun() const {
+  return dryRun_;
+}
+
+void DeleteTransitRouterPrefixListAssociationRequest::setDryRun(bool dryRun) {
+  dryRun_ = dryRun;
+  setParameter(std::string("DryRun"), dryRun ? "true" : "false");
+}
+
+std::string DeleteTransitRouterPrefixListAssociationRequest::getResourceOwnerAccount() const {
+  return resourceOwnerAccount_;
+}
+
+void DeleteTransitRouterPrefixListAssociationRequest::setResourceOwnerAccount(const std::string &resourceOwnerAccount) {
+  resourceOwnerAccount_ = resourceOwnerAccount;
+  setParameter(std::string("ResourceOwnerAccount"), resourceOwnerAccount);
+}
+
+std::string DeleteTransitRouterPrefixListAssociationRequest::getOwnerAccount() const {
+  return ownerAccount_;
+}
+
+void DeleteTransitRouterPrefixListAssociationRequest::setOwnerAccount(const std::string &ownerAccount) {
+  ownerAccount_ = ownerAccount;
+  setParameter(std::string("OwnerAccount"), ownerAccount);
+}
+
+long DeleteTransitRouterPrefixListAssociationRequest::getOwnerId() const {
+  return ownerId_;
+}
+
+void DeleteTransitRouterPrefixListAssociationRequest::setOwnerId(long ownerId) {
+  ownerId_ = ownerId;
+  setParameter(std::string("OwnerId"), std::to_string(ownerId));
+}
+
+std::string DeleteTransitRouterPrefixListAssociationRequest::getTransitRouterId() const {
+  return transitRouterId_;
+}
+
+void DeleteTransitRouterPrefixListAssociationRequest::setTransitRouterId(const std::string &transitRouterId) {
+  transitRouterId_ = transitRouterId;
+  setParameter(std::string("TransitRouterId"), transitRouterId);
+}
+
+std::string DeleteTransitRouterPrefixListAssociationRequest::getTransitRouterTableId() const {
+  return transitRouterTableId_;
+}
+
+void DeleteTransitRouterPrefixListAssociationRequest::setTransitRouterTableId(const std::string &transitRouterTableId) {
+  transitRouterTableId_ = transitRouterTableId;
+  setParameter(std::string("TransitRouterTableId"), transitRouterTableId);
+}
+
+std::string DeleteTransitRouterPrefixListAssociationRequest::getNextHop() const {
+  return nextHop_;
+}
+
+void DeleteTransitRouterPrefixListAssociationRequest::setNextHop(const std::string &nextHop) {
+  nextHop_ = nextHop;
+  setParameter(std::string("NextHop"), nextHop);
+}
+

+ 44 - 0
cbn/src/model/DeleteTransitRouterPrefixListAssociationResult.cc

@@ -0,0 +1,44 @@
+/*
+ * 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/cbn/model/DeleteTransitRouterPrefixListAssociationResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Cbn;
+using namespace AlibabaCloud::Cbn::Model;
+
+DeleteTransitRouterPrefixListAssociationResult::DeleteTransitRouterPrefixListAssociationResult() :
+	ServiceResult()
+{}
+
+DeleteTransitRouterPrefixListAssociationResult::DeleteTransitRouterPrefixListAssociationResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+DeleteTransitRouterPrefixListAssociationResult::~DeleteTransitRouterPrefixListAssociationResult()
+{}
+
+void DeleteTransitRouterPrefixListAssociationResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+
+}
+

+ 126 - 0
cbn/src/model/ListTransitRouterPrefixListAssociationRequest.cc

@@ -0,0 +1,126 @@
+/*
+ * 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/cbn/model/ListTransitRouterPrefixListAssociationRequest.h>
+
+using AlibabaCloud::Cbn::Model::ListTransitRouterPrefixListAssociationRequest;
+
+ListTransitRouterPrefixListAssociationRequest::ListTransitRouterPrefixListAssociationRequest()
+    : RpcServiceRequest("cbn", "2017-09-12", "ListTransitRouterPrefixListAssociation") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+ListTransitRouterPrefixListAssociationRequest::~ListTransitRouterPrefixListAssociationRequest() {}
+
+long ListTransitRouterPrefixListAssociationRequest::getResourceOwnerId() const {
+  return resourceOwnerId_;
+}
+
+void ListTransitRouterPrefixListAssociationRequest::setResourceOwnerId(long resourceOwnerId) {
+  resourceOwnerId_ = resourceOwnerId;
+  setParameter(std::string("ResourceOwnerId"), std::to_string(resourceOwnerId));
+}
+
+int ListTransitRouterPrefixListAssociationRequest::getPageNumber() const {
+  return pageNumber_;
+}
+
+void ListTransitRouterPrefixListAssociationRequest::setPageNumber(int pageNumber) {
+  pageNumber_ = pageNumber;
+  setParameter(std::string("PageNumber"), std::to_string(pageNumber));
+}
+
+std::string ListTransitRouterPrefixListAssociationRequest::getRegionId() const {
+  return regionId_;
+}
+
+void ListTransitRouterPrefixListAssociationRequest::setRegionId(const std::string &regionId) {
+  regionId_ = regionId;
+  setParameter(std::string("RegionId"), regionId);
+}
+
+std::string ListTransitRouterPrefixListAssociationRequest::getPrefixListId() const {
+  return prefixListId_;
+}
+
+void ListTransitRouterPrefixListAssociationRequest::setPrefixListId(const std::string &prefixListId) {
+  prefixListId_ = prefixListId;
+  setParameter(std::string("PrefixListId"), prefixListId);
+}
+
+int ListTransitRouterPrefixListAssociationRequest::getPageSize() const {
+  return pageSize_;
+}
+
+void ListTransitRouterPrefixListAssociationRequest::setPageSize(int pageSize) {
+  pageSize_ = pageSize;
+  setParameter(std::string("PageSize"), std::to_string(pageSize));
+}
+
+long ListTransitRouterPrefixListAssociationRequest::getOwnerUid() const {
+  return ownerUid_;
+}
+
+void ListTransitRouterPrefixListAssociationRequest::setOwnerUid(long ownerUid) {
+  ownerUid_ = ownerUid;
+  setParameter(std::string("OwnerUid"), std::to_string(ownerUid));
+}
+
+std::string ListTransitRouterPrefixListAssociationRequest::getResourceOwnerAccount() const {
+  return resourceOwnerAccount_;
+}
+
+void ListTransitRouterPrefixListAssociationRequest::setResourceOwnerAccount(const std::string &resourceOwnerAccount) {
+  resourceOwnerAccount_ = resourceOwnerAccount;
+  setParameter(std::string("ResourceOwnerAccount"), resourceOwnerAccount);
+}
+
+std::string ListTransitRouterPrefixListAssociationRequest::getOwnerAccount() const {
+  return ownerAccount_;
+}
+
+void ListTransitRouterPrefixListAssociationRequest::setOwnerAccount(const std::string &ownerAccount) {
+  ownerAccount_ = ownerAccount;
+  setParameter(std::string("OwnerAccount"), ownerAccount);
+}
+
+long ListTransitRouterPrefixListAssociationRequest::getOwnerId() const {
+  return ownerId_;
+}
+
+void ListTransitRouterPrefixListAssociationRequest::setOwnerId(long ownerId) {
+  ownerId_ = ownerId;
+  setParameter(std::string("OwnerId"), std::to_string(ownerId));
+}
+
+std::string ListTransitRouterPrefixListAssociationRequest::getTransitRouterId() const {
+  return transitRouterId_;
+}
+
+void ListTransitRouterPrefixListAssociationRequest::setTransitRouterId(const std::string &transitRouterId) {
+  transitRouterId_ = transitRouterId;
+  setParameter(std::string("TransitRouterId"), transitRouterId);
+}
+
+std::string ListTransitRouterPrefixListAssociationRequest::getTransitRouterTableId() const {
+  return transitRouterTableId_;
+}
+
+void ListTransitRouterPrefixListAssociationRequest::setTransitRouterTableId(const std::string &transitRouterTableId) {
+  transitRouterTableId_ = transitRouterTableId;
+  setParameter(std::string("TransitRouterTableId"), transitRouterTableId);
+}
+

+ 90 - 0
cbn/src/model/ListTransitRouterPrefixListAssociationResult.cc

@@ -0,0 +1,90 @@
+/*
+ * 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/cbn/model/ListTransitRouterPrefixListAssociationResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Cbn;
+using namespace AlibabaCloud::Cbn::Model;
+
+ListTransitRouterPrefixListAssociationResult::ListTransitRouterPrefixListAssociationResult() :
+	ServiceResult()
+{}
+
+ListTransitRouterPrefixListAssociationResult::ListTransitRouterPrefixListAssociationResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+ListTransitRouterPrefixListAssociationResult::~ListTransitRouterPrefixListAssociationResult()
+{}
+
+void ListTransitRouterPrefixListAssociationResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto allPrefixListsNode = value["PrefixLists"]["PrefixList"];
+	for (auto valuePrefixListsPrefixList : allPrefixListsNode)
+	{
+		PrefixList prefixListsObject;
+		if(!valuePrefixListsPrefixList["PrefixListId"].isNull())
+			prefixListsObject.prefixListId = valuePrefixListsPrefixList["PrefixListId"].asString();
+		if(!valuePrefixListsPrefixList["OwnerUid"].isNull())
+			prefixListsObject.ownerUid = std::stol(valuePrefixListsPrefixList["OwnerUid"].asString());
+		if(!valuePrefixListsPrefixList["Status"].isNull())
+			prefixListsObject.status = valuePrefixListsPrefixList["Status"].asString();
+		if(!valuePrefixListsPrefixList["NextHop"].isNull())
+			prefixListsObject.nextHop = valuePrefixListsPrefixList["NextHop"].asString();
+		if(!valuePrefixListsPrefixList["NextHopInstanceId"].isNull())
+			prefixListsObject.nextHopInstanceId = valuePrefixListsPrefixList["NextHopInstanceId"].asString();
+		if(!valuePrefixListsPrefixList["NextHopType"].isNull())
+			prefixListsObject.nextHopType = valuePrefixListsPrefixList["NextHopType"].asString();
+		if(!valuePrefixListsPrefixList["TransitRouterTableId"].isNull())
+			prefixListsObject.transitRouterTableId = valuePrefixListsPrefixList["TransitRouterTableId"].asString();
+		prefixLists_.push_back(prefixListsObject);
+	}
+	if(!value["TotalCount"].isNull())
+		totalCount_ = std::stoi(value["TotalCount"].asString());
+	if(!value["PageSize"].isNull())
+		pageSize_ = std::stoi(value["PageSize"].asString());
+	if(!value["PageNumber"].isNull())
+		pageNumber_ = std::stoi(value["PageNumber"].asString());
+
+}
+
+int ListTransitRouterPrefixListAssociationResult::getTotalCount()const
+{
+	return totalCount_;
+}
+
+int ListTransitRouterPrefixListAssociationResult::getPageSize()const
+{
+	return pageSize_;
+}
+
+int ListTransitRouterPrefixListAssociationResult::getPageNumber()const
+{
+	return pageNumber_;
+}
+
+std::vector<ListTransitRouterPrefixListAssociationResult::PrefixList> ListTransitRouterPrefixListAssociationResult::getPrefixLists()const
+{
+	return prefixLists_;
+}
+