tencentcloud-sdk-bmvpc 1.0.200

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,4121 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright (c) 2017-2018 THL A29 Limited, a Tencent company. All Rights Reserved.
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ module TencentCloud
18
+ module Bmvpc
19
+ module V20180625
20
+ # AcceptVpcPeerConnection请求参数结构体
21
+ class AcceptVpcPeerConnectionRequest < TencentCloud::Common::AbstractModel
22
+ # @param VpcPeerConnectionId: 黑石对等连接实例ID
23
+ # @type VpcPeerConnectionId: String
24
+
25
+ attr_accessor :VpcPeerConnectionId
26
+
27
+ def initialize(vpcpeerconnectionid=nil)
28
+ @VpcPeerConnectionId = vpcpeerconnectionid
29
+ end
30
+
31
+ def deserialize(params)
32
+ @VpcPeerConnectionId = params['VpcPeerConnectionId']
33
+ end
34
+ end
35
+
36
+ # AcceptVpcPeerConnection返回参数结构体
37
+ class AcceptVpcPeerConnectionResponse < TencentCloud::Common::AbstractModel
38
+ # @param TaskId: 任务ID
39
+ # @type TaskId: Integer
40
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
41
+ # @type RequestId: String
42
+
43
+ attr_accessor :TaskId, :RequestId
44
+
45
+ def initialize(taskid=nil, requestid=nil)
46
+ @TaskId = taskid
47
+ @RequestId = requestid
48
+ end
49
+
50
+ def deserialize(params)
51
+ @TaskId = params['TaskId']
52
+ @RequestId = params['RequestId']
53
+ end
54
+ end
55
+
56
+ # AsyncRegisterIps请求参数结构体
57
+ class AsyncRegisterIpsRequest < TencentCloud::Common::AbstractModel
58
+ # @param VpcId: 私有网络的唯一ID。
59
+ # @type VpcId: String
60
+ # @param SubnetId: 子网唯一ID。
61
+ # @type SubnetId: String
62
+ # @param Ips: 需要注册的IP列表。
63
+ # @type Ips: Array
64
+
65
+ attr_accessor :VpcId, :SubnetId, :Ips
66
+
67
+ def initialize(vpcid=nil, subnetid=nil, ips=nil)
68
+ @VpcId = vpcid
69
+ @SubnetId = subnetid
70
+ @Ips = ips
71
+ end
72
+
73
+ def deserialize(params)
74
+ @VpcId = params['VpcId']
75
+ @SubnetId = params['SubnetId']
76
+ @Ips = params['Ips']
77
+ end
78
+ end
79
+
80
+ # AsyncRegisterIps返回参数结构体
81
+ class AsyncRegisterIpsResponse < TencentCloud::Common::AbstractModel
82
+ # @param TaskId: 任务ID。
83
+ # @type TaskId: Integer
84
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
85
+ # @type RequestId: String
86
+
87
+ attr_accessor :TaskId, :RequestId
88
+
89
+ def initialize(taskid=nil, requestid=nil)
90
+ @TaskId = taskid
91
+ @RequestId = requestid
92
+ end
93
+
94
+ def deserialize(params)
95
+ @TaskId = params['TaskId']
96
+ @RequestId = params['RequestId']
97
+ end
98
+ end
99
+
100
+ # BindEipsToNatGateway请求参数结构体
101
+ class BindEipsToNatGatewayRequest < TencentCloud::Common::AbstractModel
102
+ # @param NatId: NAT网关ID,例如:nat-kdm476mp
103
+ # @type NatId: String
104
+ # @param VpcId: 私有网络ID,例如:vpc-kd7d06of
105
+ # @type VpcId: String
106
+ # @param AssignedEips: 已分配的EIP列表;AssignedEips和AutoAllocEipNum至少输入一个
107
+ # @type AssignedEips: Array
108
+ # @param AutoAllocEipNum: 新建EIP数目,系统将会按您的要求生产该数目个数EIP;AssignedEips和AutoAllocEipNum至少输入一个
109
+ # @type AutoAllocEipNum: Integer
110
+
111
+ attr_accessor :NatId, :VpcId, :AssignedEips, :AutoAllocEipNum
112
+
113
+ def initialize(natid=nil, vpcid=nil, assignedeips=nil, autoalloceipnum=nil)
114
+ @NatId = natid
115
+ @VpcId = vpcid
116
+ @AssignedEips = assignedeips
117
+ @AutoAllocEipNum = autoalloceipnum
118
+ end
119
+
120
+ def deserialize(params)
121
+ @NatId = params['NatId']
122
+ @VpcId = params['VpcId']
123
+ @AssignedEips = params['AssignedEips']
124
+ @AutoAllocEipNum = params['AutoAllocEipNum']
125
+ end
126
+ end
127
+
128
+ # BindEipsToNatGateway返回参数结构体
129
+ class BindEipsToNatGatewayResponse < TencentCloud::Common::AbstractModel
130
+ # @param TaskId: 任务ID
131
+ # @type TaskId: Integer
132
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
133
+ # @type RequestId: String
134
+
135
+ attr_accessor :TaskId, :RequestId
136
+
137
+ def initialize(taskid=nil, requestid=nil)
138
+ @TaskId = taskid
139
+ @RequestId = requestid
140
+ end
141
+
142
+ def deserialize(params)
143
+ @TaskId = params['TaskId']
144
+ @RequestId = params['RequestId']
145
+ end
146
+ end
147
+
148
+ # BindIpsToNatGateway请求参数结构体
149
+ class BindIpsToNatGatewayRequest < TencentCloud::Common::AbstractModel
150
+ # @param NatId: NAT网关ID,例如:nat-kdm476mp
151
+ # @type NatId: String
152
+ # @param VpcId: 私有网络ID,例如:vpc-kd7d06of
153
+ # @type VpcId: String
154
+ # @param IpInfoSet: 部分IP信息,子网下只有该部分IP将加入NAT,仅当网关转发模式为IP方式有效
155
+ # @type IpInfoSet: Array
156
+
157
+ attr_accessor :NatId, :VpcId, :IpInfoSet
158
+
159
+ def initialize(natid=nil, vpcid=nil, ipinfoset=nil)
160
+ @NatId = natid
161
+ @VpcId = vpcid
162
+ @IpInfoSet = ipinfoset
163
+ end
164
+
165
+ def deserialize(params)
166
+ @NatId = params['NatId']
167
+ @VpcId = params['VpcId']
168
+ unless params['IpInfoSet'].nil?
169
+ @IpInfoSet = []
170
+ params['IpInfoSet'].each do |i|
171
+ ipinfo_tmp = IpInfo.new
172
+ ipinfo_tmp.deserialize(i)
173
+ @IpInfoSet << ipinfo_tmp
174
+ end
175
+ end
176
+ end
177
+ end
178
+
179
+ # BindIpsToNatGateway返回参数结构体
180
+ class BindIpsToNatGatewayResponse < TencentCloud::Common::AbstractModel
181
+ # @param TaskId: 任务ID
182
+ # @type TaskId: Integer
183
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
184
+ # @type RequestId: String
185
+
186
+ attr_accessor :TaskId, :RequestId
187
+
188
+ def initialize(taskid=nil, requestid=nil)
189
+ @TaskId = taskid
190
+ @RequestId = requestid
191
+ end
192
+
193
+ def deserialize(params)
194
+ @TaskId = params['TaskId']
195
+ @RequestId = params['RequestId']
196
+ end
197
+ end
198
+
199
+ # BindSubnetsToNatGateway请求参数结构体
200
+ class BindSubnetsToNatGatewayRequest < TencentCloud::Common::AbstractModel
201
+ # @param NatId: NAT网关ID,例如:nat-kdm476mp
202
+ # @type NatId: String
203
+ # @param VpcId: 私有网络ID,例如:vpc-kd7d06of
204
+ # @type VpcId: String
205
+ # @param SubnetIds: 子网ID列表,子网下全部IP将加入NAT,不区分网关转发方式
206
+ # @type SubnetIds: Array
207
+
208
+ attr_accessor :NatId, :VpcId, :SubnetIds
209
+
210
+ def initialize(natid=nil, vpcid=nil, subnetids=nil)
211
+ @NatId = natid
212
+ @VpcId = vpcid
213
+ @SubnetIds = subnetids
214
+ end
215
+
216
+ def deserialize(params)
217
+ @NatId = params['NatId']
218
+ @VpcId = params['VpcId']
219
+ @SubnetIds = params['SubnetIds']
220
+ end
221
+ end
222
+
223
+ # BindSubnetsToNatGateway返回参数结构体
224
+ class BindSubnetsToNatGatewayResponse < TencentCloud::Common::AbstractModel
225
+ # @param TaskId: 任务ID
226
+ # @type TaskId: Integer
227
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
228
+ # @type RequestId: String
229
+
230
+ attr_accessor :TaskId, :RequestId
231
+
232
+ def initialize(taskid=nil, requestid=nil)
233
+ @TaskId = taskid
234
+ @RequestId = requestid
235
+ end
236
+
237
+ def deserialize(params)
238
+ @TaskId = params['TaskId']
239
+ @RequestId = params['RequestId']
240
+ end
241
+ end
242
+
243
+ # CreateCustomerGateway请求参数结构体
244
+ class CreateCustomerGatewayRequest < TencentCloud::Common::AbstractModel
245
+ # @param CustomerGatewayName: 对端网关名称,可任意命名,但不得超过60个字符。
246
+ # @type CustomerGatewayName: String
247
+ # @param IpAddress: 对端网关公网IP。
248
+ # @type IpAddress: String
249
+ # @param Zone: 可用区ID
250
+ # @type Zone: String
251
+
252
+ attr_accessor :CustomerGatewayName, :IpAddress, :Zone
253
+
254
+ def initialize(customergatewayname=nil, ipaddress=nil, zone=nil)
255
+ @CustomerGatewayName = customergatewayname
256
+ @IpAddress = ipaddress
257
+ @Zone = zone
258
+ end
259
+
260
+ def deserialize(params)
261
+ @CustomerGatewayName = params['CustomerGatewayName']
262
+ @IpAddress = params['IpAddress']
263
+ @Zone = params['Zone']
264
+ end
265
+ end
266
+
267
+ # CreateCustomerGateway返回参数结构体
268
+ class CreateCustomerGatewayResponse < TencentCloud::Common::AbstractModel
269
+ # @param CustomerGateway: 对端网关对象
270
+ # @type CustomerGateway: :class:`Tencentcloud::Bmvpc.v20180625.models.CustomerGateway`
271
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
272
+ # @type RequestId: String
273
+
274
+ attr_accessor :CustomerGateway, :RequestId
275
+
276
+ def initialize(customergateway=nil, requestid=nil)
277
+ @CustomerGateway = customergateway
278
+ @RequestId = requestid
279
+ end
280
+
281
+ def deserialize(params)
282
+ unless params['CustomerGateway'].nil?
283
+ @CustomerGateway = CustomerGateway.new
284
+ @CustomerGateway.deserialize(params['CustomerGateway'])
285
+ end
286
+ @RequestId = params['RequestId']
287
+ end
288
+ end
289
+
290
+ # CreateDockerSubnetWithVlan请求参数结构体
291
+ class CreateDockerSubnetWithVlanRequest < TencentCloud::Common::AbstractModel
292
+ # @param VpcId: 系统分配的私有网络ID,例如:vpc-kd7d06of
293
+ # @type VpcId: String
294
+ # @param SubnetSet: 子网信息
295
+ # @type SubnetSet: Array
296
+
297
+ attr_accessor :VpcId, :SubnetSet
298
+
299
+ def initialize(vpcid=nil, subnetset=nil)
300
+ @VpcId = vpcid
301
+ @SubnetSet = subnetset
302
+ end
303
+
304
+ def deserialize(params)
305
+ @VpcId = params['VpcId']
306
+ unless params['SubnetSet'].nil?
307
+ @SubnetSet = []
308
+ params['SubnetSet'].each do |i|
309
+ subnetcreateinputinfo_tmp = SubnetCreateInputInfo.new
310
+ subnetcreateinputinfo_tmp.deserialize(i)
311
+ @SubnetSet << subnetcreateinputinfo_tmp
312
+ end
313
+ end
314
+ end
315
+ end
316
+
317
+ # CreateDockerSubnetWithVlan返回参数结构体
318
+ class CreateDockerSubnetWithVlanResponse < TencentCloud::Common::AbstractModel
319
+ # @param TaskId: 任务ID
320
+ # @type TaskId: Integer
321
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
322
+ # @type RequestId: String
323
+
324
+ attr_accessor :TaskId, :RequestId
325
+
326
+ def initialize(taskid=nil, requestid=nil)
327
+ @TaskId = taskid
328
+ @RequestId = requestid
329
+ end
330
+
331
+ def deserialize(params)
332
+ @TaskId = params['TaskId']
333
+ @RequestId = params['RequestId']
334
+ end
335
+ end
336
+
337
+ # CreateHostedInterface请求参数结构体
338
+ class CreateHostedInterfaceRequest < TencentCloud::Common::AbstractModel
339
+ # @param InstanceIds: 托管机器唯一ID 数组
340
+ # @type InstanceIds: Array
341
+ # @param VpcId: 私有网络ID或者私有网络统一ID,建议使用统一ID
342
+ # @type VpcId: String
343
+ # @param SubnetId: 子网ID或者子网统一ID,建议使用统一ID
344
+ # @type SubnetId: String
345
+
346
+ attr_accessor :InstanceIds, :VpcId, :SubnetId
347
+
348
+ def initialize(instanceids=nil, vpcid=nil, subnetid=nil)
349
+ @InstanceIds = instanceids
350
+ @VpcId = vpcid
351
+ @SubnetId = subnetid
352
+ end
353
+
354
+ def deserialize(params)
355
+ @InstanceIds = params['InstanceIds']
356
+ @VpcId = params['VpcId']
357
+ @SubnetId = params['SubnetId']
358
+ end
359
+ end
360
+
361
+ # CreateHostedInterface返回参数结构体
362
+ class CreateHostedInterfaceResponse < TencentCloud::Common::AbstractModel
363
+ # @param TaskId: 异步任务ID
364
+ # @type TaskId: Integer
365
+ # @param ResourceIds: 黑石托管机器ID
366
+ # @type ResourceIds: Array
367
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
368
+ # @type RequestId: String
369
+
370
+ attr_accessor :TaskId, :ResourceIds, :RequestId
371
+
372
+ def initialize(taskid=nil, resourceids=nil, requestid=nil)
373
+ @TaskId = taskid
374
+ @ResourceIds = resourceids
375
+ @RequestId = requestid
376
+ end
377
+
378
+ def deserialize(params)
379
+ @TaskId = params['TaskId']
380
+ @ResourceIds = params['ResourceIds']
381
+ @RequestId = params['RequestId']
382
+ end
383
+ end
384
+
385
+ # CreateInterfaces请求参数结构体
386
+ class CreateInterfacesRequest < TencentCloud::Common::AbstractModel
387
+ # @param InstanceIds: 物理机实例ID列表
388
+ # @type InstanceIds: Array
389
+ # @param VpcId: 私有网络ID
390
+ # @type VpcId: String
391
+ # @param SubnetId: 子网ID
392
+ # @type SubnetId: String
393
+
394
+ attr_accessor :InstanceIds, :VpcId, :SubnetId
395
+
396
+ def initialize(instanceids=nil, vpcid=nil, subnetid=nil)
397
+ @InstanceIds = instanceids
398
+ @VpcId = vpcid
399
+ @SubnetId = subnetid
400
+ end
401
+
402
+ def deserialize(params)
403
+ @InstanceIds = params['InstanceIds']
404
+ @VpcId = params['VpcId']
405
+ @SubnetId = params['SubnetId']
406
+ end
407
+ end
408
+
409
+ # CreateInterfaces返回参数结构体
410
+ class CreateInterfacesResponse < TencentCloud::Common::AbstractModel
411
+ # @param TaskId: 任务ID
412
+ # @type TaskId: Integer
413
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
414
+ # @type RequestId: String
415
+
416
+ attr_accessor :TaskId, :RequestId
417
+
418
+ def initialize(taskid=nil, requestid=nil)
419
+ @TaskId = taskid
420
+ @RequestId = requestid
421
+ end
422
+
423
+ def deserialize(params)
424
+ @TaskId = params['TaskId']
425
+ @RequestId = params['RequestId']
426
+ end
427
+ end
428
+
429
+ # CreateNatGateway请求参数结构体
430
+ class CreateNatGatewayRequest < TencentCloud::Common::AbstractModel
431
+ # @param ForwardMode: 转发模式,其中0表示IP方式,1表示网段方式;通过cidr方式可支持更多的IP接入到NAT网关
432
+ # @type ForwardMode: String
433
+ # @param VpcId: 私有网络ID,例如:vpc-kd7d06of
434
+ # @type VpcId: String
435
+ # @param NatName: NAT名称
436
+ # @type NatName: String
437
+ # @param MaxConcurrent: 并发连接数规格;取值为1000000、3000000、10000000,分别对应小型、中型、大型NAT网关
438
+ # @type MaxConcurrent: Integer
439
+ # @param SubnetIds: 子网ID列表,子网下全部IP将加入NAT,不区分网关转发方式
440
+ # @type SubnetIds: Array
441
+ # @param IpInfoSet: 部分IP信息,子网下只有该部分IP将加入NAT,仅当网关转发模式为IP方式有效;IpInfoSet和SubnetIds中的子网ID不能同时存在
442
+ # @type IpInfoSet: Array
443
+ # @param AssignedEips: 已分配的EIP列表, AssignedEips和AutoAllocEipNum至少输入一个
444
+ # @type AssignedEips: Array
445
+ # @param AutoAllocEipNum: 新建EIP数目,系统将会按您的要求生产该数目个数EIP, AssignedEips和AutoAllocEipNum至少输入一个
446
+ # @type AutoAllocEipNum: Integer
447
+ # @param Exclusive: 独占标识,取值为0和1,默认值为0;0和1分别表示创建共享型NAT网关和独占NAT型网关;由于同一个VPC网络内,指向NAT集群的默认路由只有一条,因此VPC内只能创建一种类型NAT网关;创建独占型NAT网关时,需联系对应架构师进行独占NAT集群搭建,否则无法创建独占型NAT网关。
448
+ # @type Exclusive: Integer
449
+
450
+ attr_accessor :ForwardMode, :VpcId, :NatName, :MaxConcurrent, :SubnetIds, :IpInfoSet, :AssignedEips, :AutoAllocEipNum, :Exclusive
451
+
452
+ def initialize(forwardmode=nil, vpcid=nil, natname=nil, maxconcurrent=nil, subnetids=nil, ipinfoset=nil, assignedeips=nil, autoalloceipnum=nil, exclusive=nil)
453
+ @ForwardMode = forwardmode
454
+ @VpcId = vpcid
455
+ @NatName = natname
456
+ @MaxConcurrent = maxconcurrent
457
+ @SubnetIds = subnetids
458
+ @IpInfoSet = ipinfoset
459
+ @AssignedEips = assignedeips
460
+ @AutoAllocEipNum = autoalloceipnum
461
+ @Exclusive = exclusive
462
+ end
463
+
464
+ def deserialize(params)
465
+ @ForwardMode = params['ForwardMode']
466
+ @VpcId = params['VpcId']
467
+ @NatName = params['NatName']
468
+ @MaxConcurrent = params['MaxConcurrent']
469
+ @SubnetIds = params['SubnetIds']
470
+ unless params['IpInfoSet'].nil?
471
+ @IpInfoSet = []
472
+ params['IpInfoSet'].each do |i|
473
+ ipinfo_tmp = IpInfo.new
474
+ ipinfo_tmp.deserialize(i)
475
+ @IpInfoSet << ipinfo_tmp
476
+ end
477
+ end
478
+ @AssignedEips = params['AssignedEips']
479
+ @AutoAllocEipNum = params['AutoAllocEipNum']
480
+ @Exclusive = params['Exclusive']
481
+ end
482
+ end
483
+
484
+ # CreateNatGateway返回参数结构体
485
+ class CreateNatGatewayResponse < TencentCloud::Common::AbstractModel
486
+ # @param TaskId: 任务ID
487
+ # @type TaskId: Integer
488
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
489
+ # @type RequestId: String
490
+
491
+ attr_accessor :TaskId, :RequestId
492
+
493
+ def initialize(taskid=nil, requestid=nil)
494
+ @TaskId = taskid
495
+ @RequestId = requestid
496
+ end
497
+
498
+ def deserialize(params)
499
+ @TaskId = params['TaskId']
500
+ @RequestId = params['RequestId']
501
+ end
502
+ end
503
+
504
+ # CreateRoutePolicies请求参数结构体
505
+ class CreateRoutePoliciesRequest < TencentCloud::Common::AbstractModel
506
+ # @param RouteTableId: 路由表ID
507
+ # @type RouteTableId: String
508
+ # @param RoutePolicySet: 新增的路由
509
+ # @type RoutePolicySet: Array
510
+
511
+ attr_accessor :RouteTableId, :RoutePolicySet
512
+
513
+ def initialize(routetableid=nil, routepolicyset=nil)
514
+ @RouteTableId = routetableid
515
+ @RoutePolicySet = routepolicyset
516
+ end
517
+
518
+ def deserialize(params)
519
+ @RouteTableId = params['RouteTableId']
520
+ unless params['RoutePolicySet'].nil?
521
+ @RoutePolicySet = []
522
+ params['RoutePolicySet'].each do |i|
523
+ routepolicy_tmp = RoutePolicy.new
524
+ routepolicy_tmp.deserialize(i)
525
+ @RoutePolicySet << routepolicy_tmp
526
+ end
527
+ end
528
+ end
529
+ end
530
+
531
+ # CreateRoutePolicies返回参数结构体
532
+ class CreateRoutePoliciesResponse < TencentCloud::Common::AbstractModel
533
+ # @param TaskId: 异步任务ID
534
+ # @type TaskId: Integer
535
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
536
+ # @type RequestId: String
537
+
538
+ attr_accessor :TaskId, :RequestId
539
+
540
+ def initialize(taskid=nil, requestid=nil)
541
+ @TaskId = taskid
542
+ @RequestId = requestid
543
+ end
544
+
545
+ def deserialize(params)
546
+ @TaskId = params['TaskId']
547
+ @RequestId = params['RequestId']
548
+ end
549
+ end
550
+
551
+ # CreateSubnet请求参数结构体
552
+ class CreateSubnetRequest < TencentCloud::Common::AbstractModel
553
+ # @param VpcId: 系统分配的私有网络ID,例如:vpc-kd7d06of
554
+ # @type VpcId: String
555
+ # @param SubnetSet: 子网信息
556
+ # @type SubnetSet: Array
557
+
558
+ attr_accessor :VpcId, :SubnetSet
559
+
560
+ def initialize(vpcid=nil, subnetset=nil)
561
+ @VpcId = vpcid
562
+ @SubnetSet = subnetset
563
+ end
564
+
565
+ def deserialize(params)
566
+ @VpcId = params['VpcId']
567
+ unless params['SubnetSet'].nil?
568
+ @SubnetSet = []
569
+ params['SubnetSet'].each do |i|
570
+ subnetcreateinputinfo_tmp = SubnetCreateInputInfo.new
571
+ subnetcreateinputinfo_tmp.deserialize(i)
572
+ @SubnetSet << subnetcreateinputinfo_tmp
573
+ end
574
+ end
575
+ end
576
+ end
577
+
578
+ # CreateSubnet返回参数结构体
579
+ class CreateSubnetResponse < TencentCloud::Common::AbstractModel
580
+ # @param TaskId: 任务ID
581
+ # @type TaskId: Integer
582
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
583
+ # @type RequestId: String
584
+
585
+ attr_accessor :TaskId, :RequestId
586
+
587
+ def initialize(taskid=nil, requestid=nil)
588
+ @TaskId = taskid
589
+ @RequestId = requestid
590
+ end
591
+
592
+ def deserialize(params)
593
+ @TaskId = params['TaskId']
594
+ @RequestId = params['RequestId']
595
+ end
596
+ end
597
+
598
+ # CreateVirtualSubnetWithVlan请求参数结构体
599
+ class CreateVirtualSubnetWithVlanRequest < TencentCloud::Common::AbstractModel
600
+ # @param VpcId: 系统分配的私有网络ID,例如:vpc-kd7d06of
601
+ # @type VpcId: String
602
+ # @param SubnetSet: 子网信息
603
+ # @type SubnetSet: Array
604
+
605
+ attr_accessor :VpcId, :SubnetSet
606
+
607
+ def initialize(vpcid=nil, subnetset=nil)
608
+ @VpcId = vpcid
609
+ @SubnetSet = subnetset
610
+ end
611
+
612
+ def deserialize(params)
613
+ @VpcId = params['VpcId']
614
+ unless params['SubnetSet'].nil?
615
+ @SubnetSet = []
616
+ params['SubnetSet'].each do |i|
617
+ subnetcreateinputinfo_tmp = SubnetCreateInputInfo.new
618
+ subnetcreateinputinfo_tmp.deserialize(i)
619
+ @SubnetSet << subnetcreateinputinfo_tmp
620
+ end
621
+ end
622
+ end
623
+ end
624
+
625
+ # CreateVirtualSubnetWithVlan返回参数结构体
626
+ class CreateVirtualSubnetWithVlanResponse < TencentCloud::Common::AbstractModel
627
+ # @param TaskId: 任务ID
628
+ # @type TaskId: Integer
629
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
630
+ # @type RequestId: String
631
+
632
+ attr_accessor :TaskId, :RequestId
633
+
634
+ def initialize(taskid=nil, requestid=nil)
635
+ @TaskId = taskid
636
+ @RequestId = requestid
637
+ end
638
+
639
+ def deserialize(params)
640
+ @TaskId = params['TaskId']
641
+ @RequestId = params['RequestId']
642
+ end
643
+ end
644
+
645
+ # CreateVpcPeerConnection请求参数结构体
646
+ class CreateVpcPeerConnectionRequest < TencentCloud::Common::AbstractModel
647
+ # @param VpcId: 本端VPC唯一ID
648
+ # @type VpcId: String
649
+ # @param PeerVpcId: 对端VPC唯一ID
650
+ # @type PeerVpcId: String
651
+ # @param PeerRegion: 对端地域,取值范围为gz,sh,bj,hk,cd,de,sh_bm,gz_bm,bj_bm,cq_bm等
652
+ # @type PeerRegion: String
653
+ # @param VpcPeerConnectionName: 对等连接名称
654
+ # @type VpcPeerConnectionName: String
655
+ # @param PeerUin: 对端账户OwnerUin(默认值为本端账户)
656
+ # @type PeerUin: String
657
+ # @param Bandwidth: 跨地域必传,带宽上限值
658
+ # @type Bandwidth: Integer
659
+
660
+ attr_accessor :VpcId, :PeerVpcId, :PeerRegion, :VpcPeerConnectionName, :PeerUin, :Bandwidth
661
+
662
+ def initialize(vpcid=nil, peervpcid=nil, peerregion=nil, vpcpeerconnectionname=nil, peeruin=nil, bandwidth=nil)
663
+ @VpcId = vpcid
664
+ @PeerVpcId = peervpcid
665
+ @PeerRegion = peerregion
666
+ @VpcPeerConnectionName = vpcpeerconnectionname
667
+ @PeerUin = peeruin
668
+ @Bandwidth = bandwidth
669
+ end
670
+
671
+ def deserialize(params)
672
+ @VpcId = params['VpcId']
673
+ @PeerVpcId = params['PeerVpcId']
674
+ @PeerRegion = params['PeerRegion']
675
+ @VpcPeerConnectionName = params['VpcPeerConnectionName']
676
+ @PeerUin = params['PeerUin']
677
+ @Bandwidth = params['Bandwidth']
678
+ end
679
+ end
680
+
681
+ # CreateVpcPeerConnection返回参数结构体
682
+ class CreateVpcPeerConnectionResponse < TencentCloud::Common::AbstractModel
683
+ # @param TaskId: 任务ID
684
+ # @type TaskId: Integer
685
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
686
+ # @type RequestId: String
687
+
688
+ attr_accessor :TaskId, :RequestId
689
+
690
+ def initialize(taskid=nil, requestid=nil)
691
+ @TaskId = taskid
692
+ @RequestId = requestid
693
+ end
694
+
695
+ def deserialize(params)
696
+ @TaskId = params['TaskId']
697
+ @RequestId = params['RequestId']
698
+ end
699
+ end
700
+
701
+ # CreateVpc请求参数结构体
702
+ class CreateVpcRequest < TencentCloud::Common::AbstractModel
703
+ # @param VpcName: 私有网络的名称
704
+ # @type VpcName: String
705
+ # @param CidrBlock: 私有网络的CIDR
706
+ # @type CidrBlock: String
707
+ # @param Zone: 私有网络的可用区
708
+ # @type Zone: String
709
+ # @param SubnetSet: 子网信息
710
+ # @type SubnetSet: Array
711
+ # @param EnableMonitoring: 是否启用内网监控
712
+ # @type EnableMonitoring: Boolean
713
+
714
+ attr_accessor :VpcName, :CidrBlock, :Zone, :SubnetSet, :EnableMonitoring
715
+
716
+ def initialize(vpcname=nil, cidrblock=nil, zone=nil, subnetset=nil, enablemonitoring=nil)
717
+ @VpcName = vpcname
718
+ @CidrBlock = cidrblock
719
+ @Zone = zone
720
+ @SubnetSet = subnetset
721
+ @EnableMonitoring = enablemonitoring
722
+ end
723
+
724
+ def deserialize(params)
725
+ @VpcName = params['VpcName']
726
+ @CidrBlock = params['CidrBlock']
727
+ @Zone = params['Zone']
728
+ unless params['SubnetSet'].nil?
729
+ @SubnetSet = []
730
+ params['SubnetSet'].each do |i|
731
+ vpcsubnetcreateinfo_tmp = VpcSubnetCreateInfo.new
732
+ vpcsubnetcreateinfo_tmp.deserialize(i)
733
+ @SubnetSet << vpcsubnetcreateinfo_tmp
734
+ end
735
+ end
736
+ @EnableMonitoring = params['EnableMonitoring']
737
+ end
738
+ end
739
+
740
+ # CreateVpc返回参数结构体
741
+ class CreateVpcResponse < TencentCloud::Common::AbstractModel
742
+ # @param TaskId: 异步任务ID
743
+ # @type TaskId: Integer
744
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
745
+ # @type RequestId: String
746
+
747
+ attr_accessor :TaskId, :RequestId
748
+
749
+ def initialize(taskid=nil, requestid=nil)
750
+ @TaskId = taskid
751
+ @RequestId = requestid
752
+ end
753
+
754
+ def deserialize(params)
755
+ @TaskId = params['TaskId']
756
+ @RequestId = params['RequestId']
757
+ end
758
+ end
759
+
760
+ # 对端网关
761
+ class CustomerGateway < TencentCloud::Common::AbstractModel
762
+ # @param CustomerGatewayId: 用户网关唯一ID
763
+ # @type CustomerGatewayId: String
764
+ # @param CustomerGatewayName: 网关名称
765
+ # @type CustomerGatewayName: String
766
+ # @param IpAddress: 公网地址
767
+ # @type IpAddress: String
768
+ # @param CreateTime: 创建时间
769
+ # @type CreateTime: String
770
+ # @param VpnConnNum: VPN通道引用个数
771
+ # 注意:此字段可能返回 null,表示取不到有效值。
772
+ # @type VpnConnNum: Integer
773
+
774
+ attr_accessor :CustomerGatewayId, :CustomerGatewayName, :IpAddress, :CreateTime, :VpnConnNum
775
+
776
+ def initialize(customergatewayid=nil, customergatewayname=nil, ipaddress=nil, createtime=nil, vpnconnnum=nil)
777
+ @CustomerGatewayId = customergatewayid
778
+ @CustomerGatewayName = customergatewayname
779
+ @IpAddress = ipaddress
780
+ @CreateTime = createtime
781
+ @VpnConnNum = vpnconnnum
782
+ end
783
+
784
+ def deserialize(params)
785
+ @CustomerGatewayId = params['CustomerGatewayId']
786
+ @CustomerGatewayName = params['CustomerGatewayName']
787
+ @IpAddress = params['IpAddress']
788
+ @CreateTime = params['CreateTime']
789
+ @VpnConnNum = params['VpnConnNum']
790
+ end
791
+ end
792
+
793
+ # DeleteCustomerGateway请求参数结构体
794
+ class DeleteCustomerGatewayRequest < TencentCloud::Common::AbstractModel
795
+ # @param CustomerGatewayId: 对端网关ID,例如:bmcgw-2wqq41m9,可通过DescribeCustomerGateways接口查询对端网关。
796
+ # @type CustomerGatewayId: String
797
+
798
+ attr_accessor :CustomerGatewayId
799
+
800
+ def initialize(customergatewayid=nil)
801
+ @CustomerGatewayId = customergatewayid
802
+ end
803
+
804
+ def deserialize(params)
805
+ @CustomerGatewayId = params['CustomerGatewayId']
806
+ end
807
+ end
808
+
809
+ # DeleteCustomerGateway返回参数结构体
810
+ class DeleteCustomerGatewayResponse < TencentCloud::Common::AbstractModel
811
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
812
+ # @type RequestId: String
813
+
814
+ attr_accessor :RequestId
815
+
816
+ def initialize(requestid=nil)
817
+ @RequestId = requestid
818
+ end
819
+
820
+ def deserialize(params)
821
+ @RequestId = params['RequestId']
822
+ end
823
+ end
824
+
825
+ # DeleteHostedInterface请求参数结构体
826
+ class DeleteHostedInterfaceRequest < TencentCloud::Common::AbstractModel
827
+ # @param InstanceIds: 托管机器唯一ID 数组
828
+ # @type InstanceIds: Array
829
+ # @param VpcId: 私有网络ID或者私有网络统一ID,建议使用统一ID
830
+ # @type VpcId: String
831
+ # @param SubnetId: 子网ID或者子网统一ID,建议使用统一ID
832
+ # @type SubnetId: String
833
+
834
+ attr_accessor :InstanceIds, :VpcId, :SubnetId
835
+
836
+ def initialize(instanceids=nil, vpcid=nil, subnetid=nil)
837
+ @InstanceIds = instanceids
838
+ @VpcId = vpcid
839
+ @SubnetId = subnetid
840
+ end
841
+
842
+ def deserialize(params)
843
+ @InstanceIds = params['InstanceIds']
844
+ @VpcId = params['VpcId']
845
+ @SubnetId = params['SubnetId']
846
+ end
847
+ end
848
+
849
+ # DeleteHostedInterface返回参数结构体
850
+ class DeleteHostedInterfaceResponse < TencentCloud::Common::AbstractModel
851
+ # @param TaskId: 异步任务ID
852
+ # @type TaskId: Integer
853
+ # @param ResourceIds: 黑石托管机器ID
854
+ # @type ResourceIds: Array
855
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
856
+ # @type RequestId: String
857
+
858
+ attr_accessor :TaskId, :ResourceIds, :RequestId
859
+
860
+ def initialize(taskid=nil, resourceids=nil, requestid=nil)
861
+ @TaskId = taskid
862
+ @ResourceIds = resourceids
863
+ @RequestId = requestid
864
+ end
865
+
866
+ def deserialize(params)
867
+ @TaskId = params['TaskId']
868
+ @ResourceIds = params['ResourceIds']
869
+ @RequestId = params['RequestId']
870
+ end
871
+ end
872
+
873
+ # DeleteHostedInterfaces请求参数结构体
874
+ class DeleteHostedInterfacesRequest < TencentCloud::Common::AbstractModel
875
+ # @param InstanceId: 物理机ID
876
+ # @type InstanceId: String
877
+ # @param SubnetIds: 物理机ID
878
+ # @type SubnetIds: Array
879
+
880
+ attr_accessor :InstanceId, :SubnetIds
881
+
882
+ def initialize(instanceid=nil, subnetids=nil)
883
+ @InstanceId = instanceid
884
+ @SubnetIds = subnetids
885
+ end
886
+
887
+ def deserialize(params)
888
+ @InstanceId = params['InstanceId']
889
+ @SubnetIds = params['SubnetIds']
890
+ end
891
+ end
892
+
893
+ # DeleteHostedInterfaces返回参数结构体
894
+ class DeleteHostedInterfacesResponse < TencentCloud::Common::AbstractModel
895
+ # @param TaskId: 异步任务ID
896
+ # @type TaskId: Integer
897
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
898
+ # @type RequestId: String
899
+
900
+ attr_accessor :TaskId, :RequestId
901
+
902
+ def initialize(taskid=nil, requestid=nil)
903
+ @TaskId = taskid
904
+ @RequestId = requestid
905
+ end
906
+
907
+ def deserialize(params)
908
+ @TaskId = params['TaskId']
909
+ @RequestId = params['RequestId']
910
+ end
911
+ end
912
+
913
+ # DeleteInterfaces请求参数结构体
914
+ class DeleteInterfacesRequest < TencentCloud::Common::AbstractModel
915
+ # @param InstanceId: 物理机ID
916
+ # @type InstanceId: String
917
+ # @param SubnetIds: 子网的唯一ID列表
918
+ # @type SubnetIds: Array
919
+
920
+ attr_accessor :InstanceId, :SubnetIds
921
+
922
+ def initialize(instanceid=nil, subnetids=nil)
923
+ @InstanceId = instanceid
924
+ @SubnetIds = subnetids
925
+ end
926
+
927
+ def deserialize(params)
928
+ @InstanceId = params['InstanceId']
929
+ @SubnetIds = params['SubnetIds']
930
+ end
931
+ end
932
+
933
+ # DeleteInterfaces返回参数结构体
934
+ class DeleteInterfacesResponse < TencentCloud::Common::AbstractModel
935
+ # @param TaskId: 异步任务ID
936
+ # @type TaskId: Integer
937
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
938
+ # @type RequestId: String
939
+
940
+ attr_accessor :TaskId, :RequestId
941
+
942
+ def initialize(taskid=nil, requestid=nil)
943
+ @TaskId = taskid
944
+ @RequestId = requestid
945
+ end
946
+
947
+ def deserialize(params)
948
+ @TaskId = params['TaskId']
949
+ @RequestId = params['RequestId']
950
+ end
951
+ end
952
+
953
+ # DeleteNatGateway请求参数结构体
954
+ class DeleteNatGatewayRequest < TencentCloud::Common::AbstractModel
955
+ # @param NatId: NAT网关ID,例如:nat-kdm476mp
956
+ # @type NatId: String
957
+ # @param VpcId: 私有网络ID,例如:vpc-kd7d06of
958
+ # @type VpcId: String
959
+
960
+ attr_accessor :NatId, :VpcId
961
+
962
+ def initialize(natid=nil, vpcid=nil)
963
+ @NatId = natid
964
+ @VpcId = vpcid
965
+ end
966
+
967
+ def deserialize(params)
968
+ @NatId = params['NatId']
969
+ @VpcId = params['VpcId']
970
+ end
971
+ end
972
+
973
+ # DeleteNatGateway返回参数结构体
974
+ class DeleteNatGatewayResponse < TencentCloud::Common::AbstractModel
975
+ # @param TaskId: 任务ID
976
+ # @type TaskId: Integer
977
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
978
+ # @type RequestId: String
979
+
980
+ attr_accessor :TaskId, :RequestId
981
+
982
+ def initialize(taskid=nil, requestid=nil)
983
+ @TaskId = taskid
984
+ @RequestId = requestid
985
+ end
986
+
987
+ def deserialize(params)
988
+ @TaskId = params['TaskId']
989
+ @RequestId = params['RequestId']
990
+ end
991
+ end
992
+
993
+ # DeleteRoutePolicy请求参数结构体
994
+ class DeleteRoutePolicyRequest < TencentCloud::Common::AbstractModel
995
+ # @param RouteTableId: 路由表ID
996
+ # @type RouteTableId: String
997
+ # @param RoutePolicyId: 路由表策略ID
998
+ # @type RoutePolicyId: String
999
+
1000
+ attr_accessor :RouteTableId, :RoutePolicyId
1001
+
1002
+ def initialize(routetableid=nil, routepolicyid=nil)
1003
+ @RouteTableId = routetableid
1004
+ @RoutePolicyId = routepolicyid
1005
+ end
1006
+
1007
+ def deserialize(params)
1008
+ @RouteTableId = params['RouteTableId']
1009
+ @RoutePolicyId = params['RoutePolicyId']
1010
+ end
1011
+ end
1012
+
1013
+ # DeleteRoutePolicy返回参数结构体
1014
+ class DeleteRoutePolicyResponse < TencentCloud::Common::AbstractModel
1015
+ # @param TaskId: 异步任务ID
1016
+ # @type TaskId: Integer
1017
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1018
+ # @type RequestId: String
1019
+
1020
+ attr_accessor :TaskId, :RequestId
1021
+
1022
+ def initialize(taskid=nil, requestid=nil)
1023
+ @TaskId = taskid
1024
+ @RequestId = requestid
1025
+ end
1026
+
1027
+ def deserialize(params)
1028
+ @TaskId = params['TaskId']
1029
+ @RequestId = params['RequestId']
1030
+ end
1031
+ end
1032
+
1033
+ # DeleteSubnet请求参数结构体
1034
+ class DeleteSubnetRequest < TencentCloud::Common::AbstractModel
1035
+ # @param VpcId: 私有网络ID。可通过DescribeVpcs接口返回值中的VpcId获取。
1036
+ # @type VpcId: String
1037
+ # @param SubnetId: 子网实例ID。可通过DescribeSubnets接口返回值中的SubnetId获取。
1038
+ # @type SubnetId: String
1039
+
1040
+ attr_accessor :VpcId, :SubnetId
1041
+
1042
+ def initialize(vpcid=nil, subnetid=nil)
1043
+ @VpcId = vpcid
1044
+ @SubnetId = subnetid
1045
+ end
1046
+
1047
+ def deserialize(params)
1048
+ @VpcId = params['VpcId']
1049
+ @SubnetId = params['SubnetId']
1050
+ end
1051
+ end
1052
+
1053
+ # DeleteSubnet返回参数结构体
1054
+ class DeleteSubnetResponse < TencentCloud::Common::AbstractModel
1055
+ # @param TaskId: 异步任务ID。
1056
+ # @type TaskId: Integer
1057
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1058
+ # @type RequestId: String
1059
+
1060
+ attr_accessor :TaskId, :RequestId
1061
+
1062
+ def initialize(taskid=nil, requestid=nil)
1063
+ @TaskId = taskid
1064
+ @RequestId = requestid
1065
+ end
1066
+
1067
+ def deserialize(params)
1068
+ @TaskId = params['TaskId']
1069
+ @RequestId = params['RequestId']
1070
+ end
1071
+ end
1072
+
1073
+ # DeleteVirtualIp请求参数结构体
1074
+ class DeleteVirtualIpRequest < TencentCloud::Common::AbstractModel
1075
+ # @param VpcId: 私有网络唯一ID。
1076
+ # @type VpcId: String
1077
+ # @param Ips: 退还的IP列表。
1078
+ # @type Ips: Array
1079
+
1080
+ attr_accessor :VpcId, :Ips
1081
+
1082
+ def initialize(vpcid=nil, ips=nil)
1083
+ @VpcId = vpcid
1084
+ @Ips = ips
1085
+ end
1086
+
1087
+ def deserialize(params)
1088
+ @VpcId = params['VpcId']
1089
+ @Ips = params['Ips']
1090
+ end
1091
+ end
1092
+
1093
+ # DeleteVirtualIp返回参数结构体
1094
+ class DeleteVirtualIpResponse < TencentCloud::Common::AbstractModel
1095
+ # @param TaskId: 异步任务ID。
1096
+ # @type TaskId: Integer
1097
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1098
+ # @type RequestId: String
1099
+
1100
+ attr_accessor :TaskId, :RequestId
1101
+
1102
+ def initialize(taskid=nil, requestid=nil)
1103
+ @TaskId = taskid
1104
+ @RequestId = requestid
1105
+ end
1106
+
1107
+ def deserialize(params)
1108
+ @TaskId = params['TaskId']
1109
+ @RequestId = params['RequestId']
1110
+ end
1111
+ end
1112
+
1113
+ # DeleteVpcPeerConnection请求参数结构体
1114
+ class DeleteVpcPeerConnectionRequest < TencentCloud::Common::AbstractModel
1115
+ # @param VpcPeerConnectionId: 黑石对等连接实例ID
1116
+ # @type VpcPeerConnectionId: String
1117
+
1118
+ attr_accessor :VpcPeerConnectionId
1119
+
1120
+ def initialize(vpcpeerconnectionid=nil)
1121
+ @VpcPeerConnectionId = vpcpeerconnectionid
1122
+ end
1123
+
1124
+ def deserialize(params)
1125
+ @VpcPeerConnectionId = params['VpcPeerConnectionId']
1126
+ end
1127
+ end
1128
+
1129
+ # DeleteVpcPeerConnection返回参数结构体
1130
+ class DeleteVpcPeerConnectionResponse < TencentCloud::Common::AbstractModel
1131
+ # @param TaskId: 任务ID
1132
+ # @type TaskId: Integer
1133
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1134
+ # @type RequestId: String
1135
+
1136
+ attr_accessor :TaskId, :RequestId
1137
+
1138
+ def initialize(taskid=nil, requestid=nil)
1139
+ @TaskId = taskid
1140
+ @RequestId = requestid
1141
+ end
1142
+
1143
+ def deserialize(params)
1144
+ @TaskId = params['TaskId']
1145
+ @RequestId = params['RequestId']
1146
+ end
1147
+ end
1148
+
1149
+ # DeleteVpc请求参数结构体
1150
+ class DeleteVpcRequest < TencentCloud::Common::AbstractModel
1151
+ # @param VpcId: VPC实例ID。可通过DescribeVpcs接口返回值中的VpcId获取。
1152
+ # @type VpcId: String
1153
+
1154
+ attr_accessor :VpcId
1155
+
1156
+ def initialize(vpcid=nil)
1157
+ @VpcId = vpcid
1158
+ end
1159
+
1160
+ def deserialize(params)
1161
+ @VpcId = params['VpcId']
1162
+ end
1163
+ end
1164
+
1165
+ # DeleteVpc返回参数结构体
1166
+ class DeleteVpcResponse < TencentCloud::Common::AbstractModel
1167
+ # @param TaskId: 异步任务ID。
1168
+ # @type TaskId: Integer
1169
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1170
+ # @type RequestId: String
1171
+
1172
+ attr_accessor :TaskId, :RequestId
1173
+
1174
+ def initialize(taskid=nil, requestid=nil)
1175
+ @TaskId = taskid
1176
+ @RequestId = requestid
1177
+ end
1178
+
1179
+ def deserialize(params)
1180
+ @TaskId = params['TaskId']
1181
+ @RequestId = params['RequestId']
1182
+ end
1183
+ end
1184
+
1185
+ # DeleteVpnConnection请求参数结构体
1186
+ class DeleteVpnConnectionRequest < TencentCloud::Common::AbstractModel
1187
+ # @param VpnConnectionId: VPN通道实例ID。形如:bmvpnx-f49l6u0z。
1188
+ # @type VpnConnectionId: String
1189
+
1190
+ attr_accessor :VpnConnectionId
1191
+
1192
+ def initialize(vpnconnectionid=nil)
1193
+ @VpnConnectionId = vpnconnectionid
1194
+ end
1195
+
1196
+ def deserialize(params)
1197
+ @VpnConnectionId = params['VpnConnectionId']
1198
+ end
1199
+ end
1200
+
1201
+ # DeleteVpnConnection返回参数结构体
1202
+ class DeleteVpnConnectionResponse < TencentCloud::Common::AbstractModel
1203
+ # @param TaskId: 任务ID
1204
+ # @type TaskId: Integer
1205
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1206
+ # @type RequestId: String
1207
+
1208
+ attr_accessor :TaskId, :RequestId
1209
+
1210
+ def initialize(taskid=nil, requestid=nil)
1211
+ @TaskId = taskid
1212
+ @RequestId = requestid
1213
+ end
1214
+
1215
+ def deserialize(params)
1216
+ @TaskId = params['TaskId']
1217
+ @RequestId = params['RequestId']
1218
+ end
1219
+ end
1220
+
1221
+ # DeleteVpnGateway请求参数结构体
1222
+ class DeleteVpnGatewayRequest < TencentCloud::Common::AbstractModel
1223
+ # @param VpnGatewayId: VPN网关实例ID。
1224
+ # @type VpnGatewayId: String
1225
+
1226
+ attr_accessor :VpnGatewayId
1227
+
1228
+ def initialize(vpngatewayid=nil)
1229
+ @VpnGatewayId = vpngatewayid
1230
+ end
1231
+
1232
+ def deserialize(params)
1233
+ @VpnGatewayId = params['VpnGatewayId']
1234
+ end
1235
+ end
1236
+
1237
+ # DeleteVpnGateway返回参数结构体
1238
+ class DeleteVpnGatewayResponse < TencentCloud::Common::AbstractModel
1239
+ # @param TaskId: 任务ID
1240
+ # @type TaskId: Integer
1241
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1242
+ # @type RequestId: String
1243
+
1244
+ attr_accessor :TaskId, :RequestId
1245
+
1246
+ def initialize(taskid=nil, requestid=nil)
1247
+ @TaskId = taskid
1248
+ @RequestId = requestid
1249
+ end
1250
+
1251
+ def deserialize(params)
1252
+ @TaskId = params['TaskId']
1253
+ @RequestId = params['RequestId']
1254
+ end
1255
+ end
1256
+
1257
+ # DeregisterIps请求参数结构体
1258
+ class DeregisterIpsRequest < TencentCloud::Common::AbstractModel
1259
+ # @param VpcId: 私有网络ID
1260
+ # @type VpcId: String
1261
+ # @param IpSet: 注销指定IP的列表
1262
+ # @type IpSet: Array
1263
+ # @param SubnetId: 私有网络子网ID
1264
+ # @type SubnetId: String
1265
+
1266
+ attr_accessor :VpcId, :IpSet, :SubnetId
1267
+
1268
+ def initialize(vpcid=nil, ipset=nil, subnetid=nil)
1269
+ @VpcId = vpcid
1270
+ @IpSet = ipset
1271
+ @SubnetId = subnetid
1272
+ end
1273
+
1274
+ def deserialize(params)
1275
+ @VpcId = params['VpcId']
1276
+ @IpSet = params['IpSet']
1277
+ @SubnetId = params['SubnetId']
1278
+ end
1279
+ end
1280
+
1281
+ # DeregisterIps返回参数结构体
1282
+ class DeregisterIpsResponse < TencentCloud::Common::AbstractModel
1283
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1284
+ # @type RequestId: String
1285
+
1286
+ attr_accessor :RequestId
1287
+
1288
+ def initialize(requestid=nil)
1289
+ @RequestId = requestid
1290
+ end
1291
+
1292
+ def deserialize(params)
1293
+ @RequestId = params['RequestId']
1294
+ end
1295
+ end
1296
+
1297
+ # DescribeCustomerGateways请求参数结构体
1298
+ class DescribeCustomerGatewaysRequest < TencentCloud::Common::AbstractModel
1299
+ # @param CustomerGatewayIds: 对端网关ID,例如:bmcgw-2wqq41m9。每次请求的实例的上限为100。参数不支持同时指定CustomerGatewayIds和Filters。
1300
+ # @type CustomerGatewayIds: Array
1301
+ # @param Filters: 过滤条件,详见下表:实例过滤条件表。每次请求的Filters的上限为10,Filter.Values的上限为5。参数不支持同时指定CustomerGatewayIds和Filters。
1302
+ # <li>customergateway-name - String - (过滤条件)对端网关名称。</li>
1303
+ # <li>ip-address - String - (过滤条件)对端网关地址。</li>
1304
+ # <li>customergateway-id - String - (过滤条件)对端网关唯一ID。</li>
1305
+ # <li>zone - String - (过滤条件)对端所在可用区,形如:ap-guangzhou-2。</li>
1306
+ # @type Filters: Array
1307
+ # @param Offset: 偏移量,默认为0。关于Offset的更进一步介绍请参考 API 简介中的相关小节。
1308
+ # @type Offset: Integer
1309
+ # @param Limit: 返回数量,默认为20,最大值为100。
1310
+ # @type Limit: Integer
1311
+ # @param OrderField: 排序字段, 支持"CreateTime"排序
1312
+ # @type OrderField: String
1313
+ # @param OrderDirection: 排序方向, “asc”、“desc”
1314
+ # @type OrderDirection: String
1315
+
1316
+ attr_accessor :CustomerGatewayIds, :Filters, :Offset, :Limit, :OrderField, :OrderDirection
1317
+
1318
+ def initialize(customergatewayids=nil, filters=nil, offset=nil, limit=nil, orderfield=nil, orderdirection=nil)
1319
+ @CustomerGatewayIds = customergatewayids
1320
+ @Filters = filters
1321
+ @Offset = offset
1322
+ @Limit = limit
1323
+ @OrderField = orderfield
1324
+ @OrderDirection = orderdirection
1325
+ end
1326
+
1327
+ def deserialize(params)
1328
+ @CustomerGatewayIds = params['CustomerGatewayIds']
1329
+ unless params['Filters'].nil?
1330
+ @Filters = []
1331
+ params['Filters'].each do |i|
1332
+ filter_tmp = Filter.new
1333
+ filter_tmp.deserialize(i)
1334
+ @Filters << filter_tmp
1335
+ end
1336
+ end
1337
+ @Offset = params['Offset']
1338
+ @Limit = params['Limit']
1339
+ @OrderField = params['OrderField']
1340
+ @OrderDirection = params['OrderDirection']
1341
+ end
1342
+ end
1343
+
1344
+ # DescribeCustomerGateways返回参数结构体
1345
+ class DescribeCustomerGatewaysResponse < TencentCloud::Common::AbstractModel
1346
+ # @param CustomerGatewaySet: 对端网关对象列表
1347
+ # @type CustomerGatewaySet: Array
1348
+ # @param TotalCount: 符合条件的实例数量。
1349
+ # @type TotalCount: Integer
1350
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1351
+ # @type RequestId: String
1352
+
1353
+ attr_accessor :CustomerGatewaySet, :TotalCount, :RequestId
1354
+
1355
+ def initialize(customergatewayset=nil, totalcount=nil, requestid=nil)
1356
+ @CustomerGatewaySet = customergatewayset
1357
+ @TotalCount = totalcount
1358
+ @RequestId = requestid
1359
+ end
1360
+
1361
+ def deserialize(params)
1362
+ unless params['CustomerGatewaySet'].nil?
1363
+ @CustomerGatewaySet = []
1364
+ params['CustomerGatewaySet'].each do |i|
1365
+ customergateway_tmp = CustomerGateway.new
1366
+ customergateway_tmp.deserialize(i)
1367
+ @CustomerGatewaySet << customergateway_tmp
1368
+ end
1369
+ end
1370
+ @TotalCount = params['TotalCount']
1371
+ @RequestId = params['RequestId']
1372
+ end
1373
+ end
1374
+
1375
+ # DescribeNatGateways请求参数结构体
1376
+ class DescribeNatGatewaysRequest < TencentCloud::Common::AbstractModel
1377
+ # @param NatId: NAT网关ID,例如:nat-kdm476mp
1378
+ # @type NatId: String
1379
+ # @param NatName: NAT名称
1380
+ # @type NatName: String
1381
+ # @param SearchKey: 搜索字段
1382
+ # @type SearchKey: String
1383
+ # @param VpcId: 私有网络ID,例如:vpc-kd7d06of
1384
+ # @type VpcId: String
1385
+ # @param Offset: 起始值
1386
+ # @type Offset: Integer
1387
+ # @param Limit: 偏移值,默认值为 20
1388
+ # @type Limit: Integer
1389
+ # @param Zone: NAT所在可用区,形如:ap-guangzhou-2。
1390
+ # @type Zone: String
1391
+ # @param OrderField: 排序字段, 支持"CreateTime"排序
1392
+ # @type OrderField: String
1393
+ # @param OrderDirection: 排序方向, “asc”、“desc”
1394
+ # @type OrderDirection: String
1395
+
1396
+ attr_accessor :NatId, :NatName, :SearchKey, :VpcId, :Offset, :Limit, :Zone, :OrderField, :OrderDirection
1397
+
1398
+ def initialize(natid=nil, natname=nil, searchkey=nil, vpcid=nil, offset=nil, limit=nil, zone=nil, orderfield=nil, orderdirection=nil)
1399
+ @NatId = natid
1400
+ @NatName = natname
1401
+ @SearchKey = searchkey
1402
+ @VpcId = vpcid
1403
+ @Offset = offset
1404
+ @Limit = limit
1405
+ @Zone = zone
1406
+ @OrderField = orderfield
1407
+ @OrderDirection = orderdirection
1408
+ end
1409
+
1410
+ def deserialize(params)
1411
+ @NatId = params['NatId']
1412
+ @NatName = params['NatName']
1413
+ @SearchKey = params['SearchKey']
1414
+ @VpcId = params['VpcId']
1415
+ @Offset = params['Offset']
1416
+ @Limit = params['Limit']
1417
+ @Zone = params['Zone']
1418
+ @OrderField = params['OrderField']
1419
+ @OrderDirection = params['OrderDirection']
1420
+ end
1421
+ end
1422
+
1423
+ # DescribeNatGateways返回参数结构体
1424
+ class DescribeNatGatewaysResponse < TencentCloud::Common::AbstractModel
1425
+ # @param NatGatewayInfoSet: NAT网关信息列表
1426
+ # @type NatGatewayInfoSet: Array
1427
+ # @param TotalCount: 总数目
1428
+ # @type TotalCount: Integer
1429
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1430
+ # @type RequestId: String
1431
+
1432
+ attr_accessor :NatGatewayInfoSet, :TotalCount, :RequestId
1433
+
1434
+ def initialize(natgatewayinfoset=nil, totalcount=nil, requestid=nil)
1435
+ @NatGatewayInfoSet = natgatewayinfoset
1436
+ @TotalCount = totalcount
1437
+ @RequestId = requestid
1438
+ end
1439
+
1440
+ def deserialize(params)
1441
+ unless params['NatGatewayInfoSet'].nil?
1442
+ @NatGatewayInfoSet = []
1443
+ params['NatGatewayInfoSet'].each do |i|
1444
+ natgatewayinfo_tmp = NatGatewayInfo.new
1445
+ natgatewayinfo_tmp.deserialize(i)
1446
+ @NatGatewayInfoSet << natgatewayinfo_tmp
1447
+ end
1448
+ end
1449
+ @TotalCount = params['TotalCount']
1450
+ @RequestId = params['RequestId']
1451
+ end
1452
+ end
1453
+
1454
+ # DescribeNatSubnets请求参数结构体
1455
+ class DescribeNatSubnetsRequest < TencentCloud::Common::AbstractModel
1456
+ # @param NatId: NAT网关ID,例如:nat-kdm476mp
1457
+ # @type NatId: String
1458
+ # @param VpcId: 私有网络ID,例如:vpc-kd7d06of
1459
+ # @type VpcId: String
1460
+
1461
+ attr_accessor :NatId, :VpcId
1462
+
1463
+ def initialize(natid=nil, vpcid=nil)
1464
+ @NatId = natid
1465
+ @VpcId = vpcid
1466
+ end
1467
+
1468
+ def deserialize(params)
1469
+ @NatId = params['NatId']
1470
+ @VpcId = params['VpcId']
1471
+ end
1472
+ end
1473
+
1474
+ # DescribeNatSubnets返回参数结构体
1475
+ class DescribeNatSubnetsResponse < TencentCloud::Common::AbstractModel
1476
+ # @param NatSubnetInfoSet: NAT子网信息
1477
+ # @type NatSubnetInfoSet: Array
1478
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1479
+ # @type RequestId: String
1480
+
1481
+ attr_accessor :NatSubnetInfoSet, :RequestId
1482
+
1483
+ def initialize(natsubnetinfoset=nil, requestid=nil)
1484
+ @NatSubnetInfoSet = natsubnetinfoset
1485
+ @RequestId = requestid
1486
+ end
1487
+
1488
+ def deserialize(params)
1489
+ unless params['NatSubnetInfoSet'].nil?
1490
+ @NatSubnetInfoSet = []
1491
+ params['NatSubnetInfoSet'].each do |i|
1492
+ natsubnetinfo_tmp = NatSubnetInfo.new
1493
+ natsubnetinfo_tmp.deserialize(i)
1494
+ @NatSubnetInfoSet << natsubnetinfo_tmp
1495
+ end
1496
+ end
1497
+ @RequestId = params['RequestId']
1498
+ end
1499
+ end
1500
+
1501
+ # DescribeRoutePolicies请求参数结构体
1502
+ class DescribeRoutePoliciesRequest < TencentCloud::Common::AbstractModel
1503
+ # @param RouteTableId: 路由表实例ID,例如:rtb-afg8md3c。
1504
+ # @type RouteTableId: String
1505
+ # @param RoutePolicyIds: 路由策略实例ID,例如:rti-azd4dt1c。
1506
+ # @type RoutePolicyIds: Array
1507
+ # @param Filters: 过滤条件,参数不支持同时指定RoutePolicyIds和Filters。
1508
+ # route-table-id - String - (过滤条件)路由表实例ID。
1509
+ # vpc-id - String - (过滤条件)VPC实例ID,形如:vpc-f49l6u0z。
1510
+ # route-policy-id - String - (过滤条件)路由策略ID。
1511
+ # route-policy-description-like - String -(过滤条件)路由项备注。
1512
+ # route-policy-type - String - (过滤条件)路由项策略类型。
1513
+ # destination-cidr-like - String - (过滤条件)路由项目的地址。
1514
+ # gateway-id-like - String - (过滤条件)路由项下一跳网关。
1515
+ # gateway-type - String - (过滤条件)路由项下一条网关类型。
1516
+ # enable - Bool - (过滤条件)路由策略是否启用。
1517
+ # @type Filters: Array
1518
+ # @param Offset: 初始行的偏移量,默认为0。
1519
+ # @type Offset: Integer
1520
+ # @param Limit: 每页行数,默认为20。
1521
+ # @type Limit: Integer
1522
+
1523
+ attr_accessor :RouteTableId, :RoutePolicyIds, :Filters, :Offset, :Limit
1524
+
1525
+ def initialize(routetableid=nil, routepolicyids=nil, filters=nil, offset=nil, limit=nil)
1526
+ @RouteTableId = routetableid
1527
+ @RoutePolicyIds = routepolicyids
1528
+ @Filters = filters
1529
+ @Offset = offset
1530
+ @Limit = limit
1531
+ end
1532
+
1533
+ def deserialize(params)
1534
+ @RouteTableId = params['RouteTableId']
1535
+ @RoutePolicyIds = params['RoutePolicyIds']
1536
+ unless params['Filters'].nil?
1537
+ @Filters = []
1538
+ params['Filters'].each do |i|
1539
+ filter_tmp = Filter.new
1540
+ filter_tmp.deserialize(i)
1541
+ @Filters << filter_tmp
1542
+ end
1543
+ end
1544
+ @Offset = params['Offset']
1545
+ @Limit = params['Limit']
1546
+ end
1547
+ end
1548
+
1549
+ # DescribeRoutePolicies返回参数结构体
1550
+ class DescribeRoutePoliciesResponse < TencentCloud::Common::AbstractModel
1551
+ # @param TotalCount: 路由策略数
1552
+ # @type TotalCount: Integer
1553
+ # @param RoutePolicySet: 路由策略列表
1554
+ # @type RoutePolicySet: Array
1555
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1556
+ # @type RequestId: String
1557
+
1558
+ attr_accessor :TotalCount, :RoutePolicySet, :RequestId
1559
+
1560
+ def initialize(totalcount=nil, routepolicyset=nil, requestid=nil)
1561
+ @TotalCount = totalcount
1562
+ @RoutePolicySet = routepolicyset
1563
+ @RequestId = requestid
1564
+ end
1565
+
1566
+ def deserialize(params)
1567
+ @TotalCount = params['TotalCount']
1568
+ unless params['RoutePolicySet'].nil?
1569
+ @RoutePolicySet = []
1570
+ params['RoutePolicySet'].each do |i|
1571
+ routepolicy_tmp = RoutePolicy.new
1572
+ routepolicy_tmp.deserialize(i)
1573
+ @RoutePolicySet << routepolicy_tmp
1574
+ end
1575
+ end
1576
+ @RequestId = params['RequestId']
1577
+ end
1578
+ end
1579
+
1580
+ # DescribeRouteTables请求参数结构体
1581
+ class DescribeRouteTablesRequest < TencentCloud::Common::AbstractModel
1582
+ # @param RouteTableIds: 路由表实例ID,例如:rtb-azd4dt1c。
1583
+ # @type RouteTableIds: Array
1584
+ # @param Filters: 过滤条件,参数不支持同时指定RouteTableIds和Filters。
1585
+ # route-table-id - String - (过滤条件)路由表实例ID。
1586
+ # route-table-name - String - (过滤条件)路由表名称。
1587
+ # route-table-id-like - String - (模糊过滤条件)路由表实例ID。
1588
+ # route-table-name-like - String - (模糊过滤条件)路由表名称。
1589
+ # vpc-id - String - (过滤条件)VPC实例ID,形如:vpc-f49l6u0z。
1590
+ # zone - String - (过滤条件)可用区。
1591
+ # @type Filters: Array
1592
+ # @param Offset: 初始行的偏移量,默认为0。
1593
+ # @type Offset: Integer
1594
+ # @param Limit: 每页行数,默认为20。
1595
+ # @type Limit: Integer
1596
+ # @param OrderField: 排序字段, 支持按“RouteTableId”,“VpcId”, "RouteTableName", "CreateTime"
1597
+ # @type OrderField: String
1598
+ # @param OrderDirection: 排序方向, “asc”、“desc”
1599
+ # @type OrderDirection: String
1600
+
1601
+ attr_accessor :RouteTableIds, :Filters, :Offset, :Limit, :OrderField, :OrderDirection
1602
+
1603
+ def initialize(routetableids=nil, filters=nil, offset=nil, limit=nil, orderfield=nil, orderdirection=nil)
1604
+ @RouteTableIds = routetableids
1605
+ @Filters = filters
1606
+ @Offset = offset
1607
+ @Limit = limit
1608
+ @OrderField = orderfield
1609
+ @OrderDirection = orderdirection
1610
+ end
1611
+
1612
+ def deserialize(params)
1613
+ @RouteTableIds = params['RouteTableIds']
1614
+ unless params['Filters'].nil?
1615
+ @Filters = []
1616
+ params['Filters'].each do |i|
1617
+ filter_tmp = Filter.new
1618
+ filter_tmp.deserialize(i)
1619
+ @Filters << filter_tmp
1620
+ end
1621
+ end
1622
+ @Offset = params['Offset']
1623
+ @Limit = params['Limit']
1624
+ @OrderField = params['OrderField']
1625
+ @OrderDirection = params['OrderDirection']
1626
+ end
1627
+ end
1628
+
1629
+ # DescribeRouteTables返回参数结构体
1630
+ class DescribeRouteTablesResponse < TencentCloud::Common::AbstractModel
1631
+ # @param TotalCount: 路由表个数
1632
+ # @type TotalCount: Integer
1633
+ # @param RouteTableSet: 路由表列表
1634
+ # @type RouteTableSet: Array
1635
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1636
+ # @type RequestId: String
1637
+
1638
+ attr_accessor :TotalCount, :RouteTableSet, :RequestId
1639
+
1640
+ def initialize(totalcount=nil, routetableset=nil, requestid=nil)
1641
+ @TotalCount = totalcount
1642
+ @RouteTableSet = routetableset
1643
+ @RequestId = requestid
1644
+ end
1645
+
1646
+ def deserialize(params)
1647
+ @TotalCount = params['TotalCount']
1648
+ unless params['RouteTableSet'].nil?
1649
+ @RouteTableSet = []
1650
+ params['RouteTableSet'].each do |i|
1651
+ routetable_tmp = RouteTable.new
1652
+ routetable_tmp.deserialize(i)
1653
+ @RouteTableSet << routetable_tmp
1654
+ end
1655
+ end
1656
+ @RequestId = params['RequestId']
1657
+ end
1658
+ end
1659
+
1660
+ # DescribeSubnetAvailableIps请求参数结构体
1661
+ class DescribeSubnetAvailableIpsRequest < TencentCloud::Common::AbstractModel
1662
+ # @param SubnetId: 私有网络子网ID
1663
+ # @type SubnetId: String
1664
+ # @param Cidr: CIDR前缀,例如10.0.1
1665
+ # @type Cidr: String
1666
+
1667
+ attr_accessor :SubnetId, :Cidr
1668
+
1669
+ def initialize(subnetid=nil, cidr=nil)
1670
+ @SubnetId = subnetid
1671
+ @Cidr = cidr
1672
+ end
1673
+
1674
+ def deserialize(params)
1675
+ @SubnetId = params['SubnetId']
1676
+ @Cidr = params['Cidr']
1677
+ end
1678
+ end
1679
+
1680
+ # DescribeSubnetAvailableIps返回参数结构体
1681
+ class DescribeSubnetAvailableIpsResponse < TencentCloud::Common::AbstractModel
1682
+ # @param IpSet: 可用IP的范围列表
1683
+ # @type IpSet: Array
1684
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1685
+ # @type RequestId: String
1686
+
1687
+ attr_accessor :IpSet, :RequestId
1688
+
1689
+ def initialize(ipset=nil, requestid=nil)
1690
+ @IpSet = ipset
1691
+ @RequestId = requestid
1692
+ end
1693
+
1694
+ def deserialize(params)
1695
+ @IpSet = params['IpSet']
1696
+ @RequestId = params['RequestId']
1697
+ end
1698
+ end
1699
+
1700
+ # DescribeSubnetByDevice请求参数结构体
1701
+ class DescribeSubnetByDeviceRequest < TencentCloud::Common::AbstractModel
1702
+ # @param InstanceId: 物理机ID
1703
+ # @type InstanceId: String
1704
+ # @param Types: 子网类型。0: 物理机子网; 7: DOCKER子网 8: 虚拟子网
1705
+ # @type Types: Array
1706
+ # @param Offset: 查询的起始位置。
1707
+ # @type Offset: Integer
1708
+ # @param Limit: 查询的个数。
1709
+ # @type Limit: Integer
1710
+
1711
+ attr_accessor :InstanceId, :Types, :Offset, :Limit
1712
+
1713
+ def initialize(instanceid=nil, types=nil, offset=nil, limit=nil)
1714
+ @InstanceId = instanceid
1715
+ @Types = types
1716
+ @Offset = offset
1717
+ @Limit = limit
1718
+ end
1719
+
1720
+ def deserialize(params)
1721
+ @InstanceId = params['InstanceId']
1722
+ @Types = params['Types']
1723
+ @Offset = params['Offset']
1724
+ @Limit = params['Limit']
1725
+ end
1726
+ end
1727
+
1728
+ # DescribeSubnetByDevice返回参数结构体
1729
+ class DescribeSubnetByDeviceResponse < TencentCloud::Common::AbstractModel
1730
+ # @param TotalCount: 子网个数
1731
+ # @type TotalCount: Integer
1732
+ # @param Data: 子网列表
1733
+ # @type Data: Array
1734
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1735
+ # @type RequestId: String
1736
+
1737
+ attr_accessor :TotalCount, :Data, :RequestId
1738
+
1739
+ def initialize(totalcount=nil, data=nil, requestid=nil)
1740
+ @TotalCount = totalcount
1741
+ @Data = data
1742
+ @RequestId = requestid
1743
+ end
1744
+
1745
+ def deserialize(params)
1746
+ @TotalCount = params['TotalCount']
1747
+ unless params['Data'].nil?
1748
+ @Data = []
1749
+ params['Data'].each do |i|
1750
+ subnetinfo_tmp = SubnetInfo.new
1751
+ subnetinfo_tmp.deserialize(i)
1752
+ @Data << subnetinfo_tmp
1753
+ end
1754
+ end
1755
+ @RequestId = params['RequestId']
1756
+ end
1757
+ end
1758
+
1759
+ # DescribeSubnetByHostedDevice请求参数结构体
1760
+ class DescribeSubnetByHostedDeviceRequest < TencentCloud::Common::AbstractModel
1761
+ # @param InstanceId: 托管机器ID, 如chm-xasdfx2j
1762
+ # @type InstanceId: String
1763
+ # @param Types: 子网类型。0: 物理机子网; 7: DOCKER子网 8: 虚拟子网
1764
+ # @type Types: Array
1765
+ # @param Offset: 查询的起始位置。
1766
+ # @type Offset: Integer
1767
+ # @param Limit: 查询的个数。
1768
+ # @type Limit: Integer
1769
+
1770
+ attr_accessor :InstanceId, :Types, :Offset, :Limit
1771
+
1772
+ def initialize(instanceid=nil, types=nil, offset=nil, limit=nil)
1773
+ @InstanceId = instanceid
1774
+ @Types = types
1775
+ @Offset = offset
1776
+ @Limit = limit
1777
+ end
1778
+
1779
+ def deserialize(params)
1780
+ @InstanceId = params['InstanceId']
1781
+ @Types = params['Types']
1782
+ @Offset = params['Offset']
1783
+ @Limit = params['Limit']
1784
+ end
1785
+ end
1786
+
1787
+ # DescribeSubnetByHostedDevice返回参数结构体
1788
+ class DescribeSubnetByHostedDeviceResponse < TencentCloud::Common::AbstractModel
1789
+ # @param TotalCount: 子网个数
1790
+ # @type TotalCount: Integer
1791
+ # @param Data: 子网列表
1792
+ # @type Data: Array
1793
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1794
+ # @type RequestId: String
1795
+
1796
+ attr_accessor :TotalCount, :Data, :RequestId
1797
+
1798
+ def initialize(totalcount=nil, data=nil, requestid=nil)
1799
+ @TotalCount = totalcount
1800
+ @Data = data
1801
+ @RequestId = requestid
1802
+ end
1803
+
1804
+ def deserialize(params)
1805
+ @TotalCount = params['TotalCount']
1806
+ unless params['Data'].nil?
1807
+ @Data = []
1808
+ params['Data'].each do |i|
1809
+ subnetinfo_tmp = SubnetInfo.new
1810
+ subnetinfo_tmp.deserialize(i)
1811
+ @Data << subnetinfo_tmp
1812
+ end
1813
+ end
1814
+ @RequestId = params['RequestId']
1815
+ end
1816
+ end
1817
+
1818
+ # DescribeSubnets请求参数结构体
1819
+ class DescribeSubnetsRequest < TencentCloud::Common::AbstractModel
1820
+ # @param SubnetIds: 子网实例ID查询。形如:subnet-pxir56ns。参数不支持同时指定SubnetIds和Filters。
1821
+ # @type SubnetIds: Array
1822
+ # @param Filters: 过滤条件,参数不支持同时指定SubnetIds和Filters。
1823
+ # subnet-id - String - (过滤条件)Subnet实例名称。
1824
+ # vpc-id - String - (过滤条件)VPC实例ID,形如:vpc-f49l6u0z。
1825
+ # cidr-block - String - (过滤条件)vpc的cidr。
1826
+ # subnet-name - String - (过滤条件)子网名称。
1827
+ # zone - String - (过滤条件)可用区。
1828
+ # @type Filters: Array
1829
+ # @param Offset: 偏移量
1830
+ # @type Offset: Integer
1831
+ # @param Limit: 返回数量
1832
+ # @type Limit: Integer
1833
+ # @param OrderField: 排序字段, 支持按“CreateTime”,“VlanId”
1834
+ # @type OrderField: String
1835
+ # @param OrderDirection: 排序方向, “asc”、“desc”
1836
+ # @type OrderDirection: String
1837
+
1838
+ attr_accessor :SubnetIds, :Filters, :Offset, :Limit, :OrderField, :OrderDirection
1839
+
1840
+ def initialize(subnetids=nil, filters=nil, offset=nil, limit=nil, orderfield=nil, orderdirection=nil)
1841
+ @SubnetIds = subnetids
1842
+ @Filters = filters
1843
+ @Offset = offset
1844
+ @Limit = limit
1845
+ @OrderField = orderfield
1846
+ @OrderDirection = orderdirection
1847
+ end
1848
+
1849
+ def deserialize(params)
1850
+ @SubnetIds = params['SubnetIds']
1851
+ unless params['Filters'].nil?
1852
+ @Filters = []
1853
+ params['Filters'].each do |i|
1854
+ filter_tmp = Filter.new
1855
+ filter_tmp.deserialize(i)
1856
+ @Filters << filter_tmp
1857
+ end
1858
+ end
1859
+ @Offset = params['Offset']
1860
+ @Limit = params['Limit']
1861
+ @OrderField = params['OrderField']
1862
+ @OrderDirection = params['OrderDirection']
1863
+ end
1864
+ end
1865
+
1866
+ # DescribeSubnets返回参数结构体
1867
+ class DescribeSubnetsResponse < TencentCloud::Common::AbstractModel
1868
+ # @param SubnetSet: 子网列表信息
1869
+ # @type SubnetSet: Array
1870
+ # @param TotalCount: 返回的子网总数
1871
+ # @type TotalCount: Integer
1872
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1873
+ # @type RequestId: String
1874
+
1875
+ attr_accessor :SubnetSet, :TotalCount, :RequestId
1876
+
1877
+ def initialize(subnetset=nil, totalcount=nil, requestid=nil)
1878
+ @SubnetSet = subnetset
1879
+ @TotalCount = totalcount
1880
+ @RequestId = requestid
1881
+ end
1882
+
1883
+ def deserialize(params)
1884
+ unless params['SubnetSet'].nil?
1885
+ @SubnetSet = []
1886
+ params['SubnetSet'].each do |i|
1887
+ subnetinfo_tmp = SubnetInfo.new
1888
+ subnetinfo_tmp.deserialize(i)
1889
+ @SubnetSet << subnetinfo_tmp
1890
+ end
1891
+ end
1892
+ @TotalCount = params['TotalCount']
1893
+ @RequestId = params['RequestId']
1894
+ end
1895
+ end
1896
+
1897
+ # DescribeTaskStatus请求参数结构体
1898
+ class DescribeTaskStatusRequest < TencentCloud::Common::AbstractModel
1899
+ # @param TaskId: 任务ID
1900
+ # @type TaskId: Integer
1901
+
1902
+ attr_accessor :TaskId
1903
+
1904
+ def initialize(taskid=nil)
1905
+ @TaskId = taskid
1906
+ end
1907
+
1908
+ def deserialize(params)
1909
+ @TaskId = params['TaskId']
1910
+ end
1911
+ end
1912
+
1913
+ # DescribeTaskStatus返回参数结构体
1914
+ class DescribeTaskStatusResponse < TencentCloud::Common::AbstractModel
1915
+ # @param Status: 任务状态,其中0表示任务执行成功,1表示任务执行失败,2表示任务正在执行中
1916
+ # @type Status: Integer
1917
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1918
+ # @type RequestId: String
1919
+
1920
+ attr_accessor :Status, :RequestId
1921
+
1922
+ def initialize(status=nil, requestid=nil)
1923
+ @Status = status
1924
+ @RequestId = requestid
1925
+ end
1926
+
1927
+ def deserialize(params)
1928
+ @Status = params['Status']
1929
+ @RequestId = params['RequestId']
1930
+ end
1931
+ end
1932
+
1933
+ # DescribeVpcPeerConnections请求参数结构体
1934
+ class DescribeVpcPeerConnectionsRequest < TencentCloud::Common::AbstractModel
1935
+ # @param VpcPeerConnectionIds: 对等连接实例ID
1936
+ # @type VpcPeerConnectionIds: Array
1937
+ # @param Filters: 过滤条件,详见下表:实例过滤条件表。每次请求的Filters的上限为10,Filter.Values的上限为5。参数不支持同时指定VpcPeerConnectionIds和Filters。
1938
+ # 过滤条件,参数不支持同时指定VpcPeerConnectionIds和Filters。
1939
+ # <li>peer-name - String - (过滤条件)对等连接名称。</li>
1940
+ # @type Filters: Array
1941
+ # @param Offset: 偏移量,默认为0。关于Offset的更进一步介绍请参考 API 简介中的相关小节。
1942
+ # @type Offset: Integer
1943
+ # @param Limit: 返回数量,默认为20,最大值为100。
1944
+ # @type Limit: Integer
1945
+ # @param VpcId: 私有网络ID
1946
+ # @type VpcId: String
1947
+
1948
+ attr_accessor :VpcPeerConnectionIds, :Filters, :Offset, :Limit, :VpcId
1949
+
1950
+ def initialize(vpcpeerconnectionids=nil, filters=nil, offset=nil, limit=nil, vpcid=nil)
1951
+ @VpcPeerConnectionIds = vpcpeerconnectionids
1952
+ @Filters = filters
1953
+ @Offset = offset
1954
+ @Limit = limit
1955
+ @VpcId = vpcid
1956
+ end
1957
+
1958
+ def deserialize(params)
1959
+ @VpcPeerConnectionIds = params['VpcPeerConnectionIds']
1960
+ unless params['Filters'].nil?
1961
+ @Filters = []
1962
+ params['Filters'].each do |i|
1963
+ filter_tmp = Filter.new
1964
+ filter_tmp.deserialize(i)
1965
+ @Filters << filter_tmp
1966
+ end
1967
+ end
1968
+ @Offset = params['Offset']
1969
+ @Limit = params['Limit']
1970
+ @VpcId = params['VpcId']
1971
+ end
1972
+ end
1973
+
1974
+ # DescribeVpcPeerConnections返回参数结构体
1975
+ class DescribeVpcPeerConnectionsResponse < TencentCloud::Common::AbstractModel
1976
+ # @param TotalCount: 符合条件的实例数量。
1977
+ # @type TotalCount: Integer
1978
+ # @param VpcPeerConnectionSet: 对等连接实例。
1979
+ # @type VpcPeerConnectionSet: Array
1980
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1981
+ # @type RequestId: String
1982
+
1983
+ attr_accessor :TotalCount, :VpcPeerConnectionSet, :RequestId
1984
+
1985
+ def initialize(totalcount=nil, vpcpeerconnectionset=nil, requestid=nil)
1986
+ @TotalCount = totalcount
1987
+ @VpcPeerConnectionSet = vpcpeerconnectionset
1988
+ @RequestId = requestid
1989
+ end
1990
+
1991
+ def deserialize(params)
1992
+ @TotalCount = params['TotalCount']
1993
+ unless params['VpcPeerConnectionSet'].nil?
1994
+ @VpcPeerConnectionSet = []
1995
+ params['VpcPeerConnectionSet'].each do |i|
1996
+ vpcpeerconnection_tmp = VpcPeerConnection.new
1997
+ vpcpeerconnection_tmp.deserialize(i)
1998
+ @VpcPeerConnectionSet << vpcpeerconnection_tmp
1999
+ end
2000
+ end
2001
+ @RequestId = params['RequestId']
2002
+ end
2003
+ end
2004
+
2005
+ # DescribeVpcQuota请求参数结构体
2006
+ class DescribeVpcQuotaRequest < TencentCloud::Common::AbstractModel
2007
+ # @param TypeIds: 类型
2008
+ # @type TypeIds: Array
2009
+
2010
+ attr_accessor :TypeIds
2011
+
2012
+ def initialize(typeids=nil)
2013
+ @TypeIds = typeids
2014
+ end
2015
+
2016
+ def deserialize(params)
2017
+ @TypeIds = params['TypeIds']
2018
+ end
2019
+ end
2020
+
2021
+ # DescribeVpcQuota返回参数结构体
2022
+ class DescribeVpcQuotaResponse < TencentCloud::Common::AbstractModel
2023
+ # @param VpcQuotaSet: 配额信息
2024
+ # @type VpcQuotaSet: Array
2025
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
2026
+ # @type RequestId: String
2027
+
2028
+ attr_accessor :VpcQuotaSet, :RequestId
2029
+
2030
+ def initialize(vpcquotaset=nil, requestid=nil)
2031
+ @VpcQuotaSet = vpcquotaset
2032
+ @RequestId = requestid
2033
+ end
2034
+
2035
+ def deserialize(params)
2036
+ unless params['VpcQuotaSet'].nil?
2037
+ @VpcQuotaSet = []
2038
+ params['VpcQuotaSet'].each do |i|
2039
+ vpcquota_tmp = VpcQuota.new
2040
+ vpcquota_tmp.deserialize(i)
2041
+ @VpcQuotaSet << vpcquota_tmp
2042
+ end
2043
+ end
2044
+ @RequestId = params['RequestId']
2045
+ end
2046
+ end
2047
+
2048
+ # DescribeVpcResource请求参数结构体
2049
+ class DescribeVpcResourceRequest < TencentCloud::Common::AbstractModel
2050
+ # @param VpcIds: 私有网络实例ID
2051
+ # @type VpcIds: Array
2052
+ # @param Filters: 过滤条件,参数不支持同时指定SubnetIds和Filters。
2053
+ # vpc-id - String - (过滤条件)私有网络实例ID,形如:vpc-f49l6u0z。
2054
+ # vpc-name - String - (过滤条件)私有网络名称。
2055
+ # zone - String - (过滤条件)可用区。
2056
+ # state - String - (过滤条件)VPC状态。available: 运营中; pending: 创建中; failed: 创建失败; deleting: 删除中
2057
+ # @type Filters: Array
2058
+ # @param Offset: 偏移量
2059
+ # @type Offset: Integer
2060
+ # @param Limit: 返回数量
2061
+ # @type Limit: Integer
2062
+ # @param OrderField: 排序字段
2063
+ # @type OrderField: String
2064
+ # @param OrderDirection: 排序方向, “asc”、“desc”
2065
+ # @type OrderDirection: String
2066
+
2067
+ attr_accessor :VpcIds, :Filters, :Offset, :Limit, :OrderField, :OrderDirection
2068
+
2069
+ def initialize(vpcids=nil, filters=nil, offset=nil, limit=nil, orderfield=nil, orderdirection=nil)
2070
+ @VpcIds = vpcids
2071
+ @Filters = filters
2072
+ @Offset = offset
2073
+ @Limit = limit
2074
+ @OrderField = orderfield
2075
+ @OrderDirection = orderdirection
2076
+ end
2077
+
2078
+ def deserialize(params)
2079
+ @VpcIds = params['VpcIds']
2080
+ unless params['Filters'].nil?
2081
+ @Filters = []
2082
+ params['Filters'].each do |i|
2083
+ filter_tmp = Filter.new
2084
+ filter_tmp.deserialize(i)
2085
+ @Filters << filter_tmp
2086
+ end
2087
+ end
2088
+ @Offset = params['Offset']
2089
+ @Limit = params['Limit']
2090
+ @OrderField = params['OrderField']
2091
+ @OrderDirection = params['OrderDirection']
2092
+ end
2093
+ end
2094
+
2095
+ # DescribeVpcResource返回参数结构体
2096
+ class DescribeVpcResourceResponse < TencentCloud::Common::AbstractModel
2097
+ # @param VpcResourceSet: VPC数据
2098
+ # @type VpcResourceSet: Array
2099
+ # @param TotalCount: VPC个数
2100
+ # @type TotalCount: Integer
2101
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
2102
+ # @type RequestId: String
2103
+
2104
+ attr_accessor :VpcResourceSet, :TotalCount, :RequestId
2105
+
2106
+ def initialize(vpcresourceset=nil, totalcount=nil, requestid=nil)
2107
+ @VpcResourceSet = vpcresourceset
2108
+ @TotalCount = totalcount
2109
+ @RequestId = requestid
2110
+ end
2111
+
2112
+ def deserialize(params)
2113
+ unless params['VpcResourceSet'].nil?
2114
+ @VpcResourceSet = []
2115
+ params['VpcResourceSet'].each do |i|
2116
+ vpcresource_tmp = VpcResource.new
2117
+ vpcresource_tmp.deserialize(i)
2118
+ @VpcResourceSet << vpcresource_tmp
2119
+ end
2120
+ end
2121
+ @TotalCount = params['TotalCount']
2122
+ @RequestId = params['RequestId']
2123
+ end
2124
+ end
2125
+
2126
+ # DescribeVpcView请求参数结构体
2127
+ class DescribeVpcViewRequest < TencentCloud::Common::AbstractModel
2128
+ # @param VpcId: 私有网络唯一ID
2129
+ # @type VpcId: String
2130
+
2131
+ attr_accessor :VpcId
2132
+
2133
+ def initialize(vpcid=nil)
2134
+ @VpcId = vpcid
2135
+ end
2136
+
2137
+ def deserialize(params)
2138
+ @VpcId = params['VpcId']
2139
+ end
2140
+ end
2141
+
2142
+ # DescribeVpcView返回参数结构体
2143
+ class DescribeVpcViewResponse < TencentCloud::Common::AbstractModel
2144
+ # @param VpcView: VPC视图信息
2145
+ # @type VpcView: :class:`Tencentcloud::Bmvpc.v20180625.models.VpcViewInfo`
2146
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
2147
+ # @type RequestId: String
2148
+
2149
+ attr_accessor :VpcView, :RequestId
2150
+
2151
+ def initialize(vpcview=nil, requestid=nil)
2152
+ @VpcView = vpcview
2153
+ @RequestId = requestid
2154
+ end
2155
+
2156
+ def deserialize(params)
2157
+ unless params['VpcView'].nil?
2158
+ @VpcView = VpcViewInfo.new
2159
+ @VpcView.deserialize(params['VpcView'])
2160
+ end
2161
+ @RequestId = params['RequestId']
2162
+ end
2163
+ end
2164
+
2165
+ # DescribeVpcs请求参数结构体
2166
+ class DescribeVpcsRequest < TencentCloud::Common::AbstractModel
2167
+ # @param VpcIds: VPC实例ID。形如:vpc-f49l6u0z。每次请求的实例的上限为100。参数不支持同时指定VpcIds和Filters。
2168
+ # @type VpcIds: Array
2169
+ # @param Filters: 过滤条件,参数不支持同时指定VpcIds和Filters。
2170
+ # vpc-name - String - (过滤条件)VPC实例名称。
2171
+ # vpc-id - String - (过滤条件)VPC实例ID形如:vpc-f49l6u0z。
2172
+ # cidr-block - String - (过滤条件)vpc的cidr。
2173
+ # state - String - (过滤条件)VPC状态。(pending | available).
2174
+ # zone - String - (过滤条件)VPC的可用区。
2175
+ # @type Filters: Array
2176
+ # @param Offset: 初始行的偏移量,默认为0。
2177
+ # @type Offset: Integer
2178
+ # @param Limit: 每页行数,默认为20。
2179
+ # @type Limit: Integer
2180
+
2181
+ attr_accessor :VpcIds, :Filters, :Offset, :Limit
2182
+
2183
+ def initialize(vpcids=nil, filters=nil, offset=nil, limit=nil)
2184
+ @VpcIds = vpcids
2185
+ @Filters = filters
2186
+ @Offset = offset
2187
+ @Limit = limit
2188
+ end
2189
+
2190
+ def deserialize(params)
2191
+ @VpcIds = params['VpcIds']
2192
+ unless params['Filters'].nil?
2193
+ @Filters = []
2194
+ params['Filters'].each do |i|
2195
+ filter_tmp = Filter.new
2196
+ filter_tmp.deserialize(i)
2197
+ @Filters << filter_tmp
2198
+ end
2199
+ end
2200
+ @Offset = params['Offset']
2201
+ @Limit = params['Limit']
2202
+ end
2203
+ end
2204
+
2205
+ # DescribeVpcs返回参数结构体
2206
+ class DescribeVpcsResponse < TencentCloud::Common::AbstractModel
2207
+ # @param VpcSet: VPC列表
2208
+ # @type VpcSet: Array
2209
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
2210
+ # @type RequestId: String
2211
+
2212
+ attr_accessor :VpcSet, :RequestId
2213
+
2214
+ def initialize(vpcset=nil, requestid=nil)
2215
+ @VpcSet = vpcset
2216
+ @RequestId = requestid
2217
+ end
2218
+
2219
+ def deserialize(params)
2220
+ unless params['VpcSet'].nil?
2221
+ @VpcSet = []
2222
+ params['VpcSet'].each do |i|
2223
+ vpcinfo_tmp = VpcInfo.new
2224
+ vpcinfo_tmp.deserialize(i)
2225
+ @VpcSet << vpcinfo_tmp
2226
+ end
2227
+ end
2228
+ @RequestId = params['RequestId']
2229
+ end
2230
+ end
2231
+
2232
+ # DescribeVpnConnections请求参数结构体
2233
+ class DescribeVpnConnectionsRequest < TencentCloud::Common::AbstractModel
2234
+ # @param VpnConnectionIds: VPN通道实例ID。形如:bmvpnx-f49l6u0z。每次请求的实例的上限为100。参数不支持同时指定VpnConnectionIds和Filters。
2235
+ # @type VpnConnectionIds: Array
2236
+ # @param Filters: 过滤条件,详见下表:实例过滤条件表。每次请求的Filters的上限为10,Filter.Values的上限为5。参数不支持同时指定VpnConnectionIds和Filters。
2237
+ # <li>vpc-id - String - (过滤条件)VPC实例ID形如:vpc-f49l6u0z。</li>
2238
+ # <li>state - String - (过滤条件 VPN状态:creating,available,createfailed,changing,changefailed,deleting,deletefailed。</li>
2239
+ # <li>zone - String - (过滤条件)VPN所在可用区,形如:ap-guangzhou-2。</li>
2240
+ # @type Filters: Array
2241
+ # @param Offset: 偏移量,默认为0。关于Offset的更进一步介绍请参考 API 简介中的相关小节。
2242
+ # @type Offset: Integer
2243
+ # @param Limit: 返回数量,默认为20,最大值为100。
2244
+ # @type Limit: Integer
2245
+ # @param VpnGatewayId: VPN网关实例ID
2246
+ # @type VpnGatewayId: String
2247
+ # @param VpnConnectionName: VPN通道名称
2248
+ # @type VpnConnectionName: String
2249
+ # @param OrderField: 排序字段, 支持"CreateTime"排序
2250
+ # @type OrderField: String
2251
+ # @param OrderDirection: 排序方向, “asc”、“desc”
2252
+ # @type OrderDirection: String
2253
+
2254
+ attr_accessor :VpnConnectionIds, :Filters, :Offset, :Limit, :VpnGatewayId, :VpnConnectionName, :OrderField, :OrderDirection
2255
+
2256
+ def initialize(vpnconnectionids=nil, filters=nil, offset=nil, limit=nil, vpngatewayid=nil, vpnconnectionname=nil, orderfield=nil, orderdirection=nil)
2257
+ @VpnConnectionIds = vpnconnectionids
2258
+ @Filters = filters
2259
+ @Offset = offset
2260
+ @Limit = limit
2261
+ @VpnGatewayId = vpngatewayid
2262
+ @VpnConnectionName = vpnconnectionname
2263
+ @OrderField = orderfield
2264
+ @OrderDirection = orderdirection
2265
+ end
2266
+
2267
+ def deserialize(params)
2268
+ @VpnConnectionIds = params['VpnConnectionIds']
2269
+ unless params['Filters'].nil?
2270
+ @Filters = []
2271
+ params['Filters'].each do |i|
2272
+ filter_tmp = Filter.new
2273
+ filter_tmp.deserialize(i)
2274
+ @Filters << filter_tmp
2275
+ end
2276
+ end
2277
+ @Offset = params['Offset']
2278
+ @Limit = params['Limit']
2279
+ @VpnGatewayId = params['VpnGatewayId']
2280
+ @VpnConnectionName = params['VpnConnectionName']
2281
+ @OrderField = params['OrderField']
2282
+ @OrderDirection = params['OrderDirection']
2283
+ end
2284
+ end
2285
+
2286
+ # DescribeVpnConnections返回参数结构体
2287
+ class DescribeVpnConnectionsResponse < TencentCloud::Common::AbstractModel
2288
+ # @param TotalCount: 符合条件的实例数量。
2289
+ # @type TotalCount: Integer
2290
+ # @param VpnConnectionSet: VPN通道实例。
2291
+ # @type VpnConnectionSet: Array
2292
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
2293
+ # @type RequestId: String
2294
+
2295
+ attr_accessor :TotalCount, :VpnConnectionSet, :RequestId
2296
+
2297
+ def initialize(totalcount=nil, vpnconnectionset=nil, requestid=nil)
2298
+ @TotalCount = totalcount
2299
+ @VpnConnectionSet = vpnconnectionset
2300
+ @RequestId = requestid
2301
+ end
2302
+
2303
+ def deserialize(params)
2304
+ @TotalCount = params['TotalCount']
2305
+ unless params['VpnConnectionSet'].nil?
2306
+ @VpnConnectionSet = []
2307
+ params['VpnConnectionSet'].each do |i|
2308
+ vpnconnection_tmp = VpnConnection.new
2309
+ vpnconnection_tmp.deserialize(i)
2310
+ @VpnConnectionSet << vpnconnection_tmp
2311
+ end
2312
+ end
2313
+ @RequestId = params['RequestId']
2314
+ end
2315
+ end
2316
+
2317
+ # DescribeVpnGateways请求参数结构体
2318
+ class DescribeVpnGatewaysRequest < TencentCloud::Common::AbstractModel
2319
+ # @param VpnGatewayIds: VPN网关实例ID。形如:bmvpngw-f49l6u0z。每次请求的实例的上限为100。参数不支持同时指定VpnGatewayIds和Filters。
2320
+ # @type VpnGatewayIds: Array
2321
+ # @param Filters: 过滤条件,参数不支持同时指定VpnGatewayIds和Filters。
2322
+ # <li>vpc-id - String - (过滤条件)VPC实例ID形如:vpc-f49l6u0z。</li>
2323
+ # <li>state - String - (过滤条件 VPN状态:creating,available,createfailed,changing,changefailed,deleting,deletefailed。</li>
2324
+ # <li>zone - String - (过滤条件)VPN所在可用区,形如:ap-guangzhou-2。</li>
2325
+ # <li>vpngw-name - String - (过滤条件)vpn网关名称。</li>
2326
+ # @type Filters: Array
2327
+ # @param Offset: 偏移量
2328
+ # @type Offset: Integer
2329
+ # @param Limit: 请求对象个数
2330
+ # @type Limit: Integer
2331
+ # @param OrderField: 排序字段, 支持"CreateTime"排序
2332
+ # @type OrderField: String
2333
+ # @param OrderDirection: 排序方向, “asc”、“desc”
2334
+ # @type OrderDirection: String
2335
+
2336
+ attr_accessor :VpnGatewayIds, :Filters, :Offset, :Limit, :OrderField, :OrderDirection
2337
+
2338
+ def initialize(vpngatewayids=nil, filters=nil, offset=nil, limit=nil, orderfield=nil, orderdirection=nil)
2339
+ @VpnGatewayIds = vpngatewayids
2340
+ @Filters = filters
2341
+ @Offset = offset
2342
+ @Limit = limit
2343
+ @OrderField = orderfield
2344
+ @OrderDirection = orderdirection
2345
+ end
2346
+
2347
+ def deserialize(params)
2348
+ @VpnGatewayIds = params['VpnGatewayIds']
2349
+ unless params['Filters'].nil?
2350
+ @Filters = []
2351
+ params['Filters'].each do |i|
2352
+ filter_tmp = Filter.new
2353
+ filter_tmp.deserialize(i)
2354
+ @Filters << filter_tmp
2355
+ end
2356
+ end
2357
+ @Offset = params['Offset']
2358
+ @Limit = params['Limit']
2359
+ @OrderField = params['OrderField']
2360
+ @OrderDirection = params['OrderDirection']
2361
+ end
2362
+ end
2363
+
2364
+ # DescribeVpnGateways返回参数结构体
2365
+ class DescribeVpnGatewaysResponse < TencentCloud::Common::AbstractModel
2366
+ # @param TotalCount: 符合条件的实例数量。
2367
+ # @type TotalCount: Integer
2368
+ # @param VpnGatewaySet: VPN网关实例详细信息列表。
2369
+ # @type VpnGatewaySet: Array
2370
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
2371
+ # @type RequestId: String
2372
+
2373
+ attr_accessor :TotalCount, :VpnGatewaySet, :RequestId
2374
+
2375
+ def initialize(totalcount=nil, vpngatewayset=nil, requestid=nil)
2376
+ @TotalCount = totalcount
2377
+ @VpnGatewaySet = vpngatewayset
2378
+ @RequestId = requestid
2379
+ end
2380
+
2381
+ def deserialize(params)
2382
+ @TotalCount = params['TotalCount']
2383
+ unless params['VpnGatewaySet'].nil?
2384
+ @VpnGatewaySet = []
2385
+ params['VpnGatewaySet'].each do |i|
2386
+ vpngateway_tmp = VpnGateway.new
2387
+ vpngateway_tmp.deserialize(i)
2388
+ @VpnGatewaySet << vpngateway_tmp
2389
+ end
2390
+ end
2391
+ @RequestId = params['RequestId']
2392
+ end
2393
+ end
2394
+
2395
+ # DownloadCustomerGatewayConfiguration请求参数结构体
2396
+ class DownloadCustomerGatewayConfigurationRequest < TencentCloud::Common::AbstractModel
2397
+ # @param VpnConnectionId: VPN通道实例ID。形如:bmvpnx-f49l6u0z。
2398
+ # @type VpnConnectionId: String
2399
+ # @param VendorName: 厂商,取值 h3c,cisco
2400
+ # @type VendorName: String
2401
+
2402
+ attr_accessor :VpnConnectionId, :VendorName
2403
+
2404
+ def initialize(vpnconnectionid=nil, vendorname=nil)
2405
+ @VpnConnectionId = vpnconnectionid
2406
+ @VendorName = vendorname
2407
+ end
2408
+
2409
+ def deserialize(params)
2410
+ @VpnConnectionId = params['VpnConnectionId']
2411
+ @VendorName = params['VendorName']
2412
+ end
2413
+ end
2414
+
2415
+ # DownloadCustomerGatewayConfiguration返回参数结构体
2416
+ class DownloadCustomerGatewayConfigurationResponse < TencentCloud::Common::AbstractModel
2417
+ # @param CustomerGatewayConfiguration: 配置信息。
2418
+ # @type CustomerGatewayConfiguration: String
2419
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
2420
+ # @type RequestId: String
2421
+
2422
+ attr_accessor :CustomerGatewayConfiguration, :RequestId
2423
+
2424
+ def initialize(customergatewayconfiguration=nil, requestid=nil)
2425
+ @CustomerGatewayConfiguration = customergatewayconfiguration
2426
+ @RequestId = requestid
2427
+ end
2428
+
2429
+ def deserialize(params)
2430
+ @CustomerGatewayConfiguration = params['CustomerGatewayConfiguration']
2431
+ @RequestId = params['RequestId']
2432
+ end
2433
+ end
2434
+
2435
+ # 过滤器
2436
+ class Filter < TencentCloud::Common::AbstractModel
2437
+ # @param Name: 属性名称, 若存在多个Filter时,Filter间的关系为逻辑与(AND)关系。
2438
+ # @type Name: String
2439
+ # @param Values: 属性值, 若同一个Filter存在多个Values,同一Filter下Values间的关系为逻辑或(OR)关系。
2440
+ # @type Values: Array
2441
+
2442
+ attr_accessor :Name, :Values
2443
+
2444
+ def initialize(name=nil, values=nil)
2445
+ @Name = name
2446
+ @Values = values
2447
+ end
2448
+
2449
+ def deserialize(params)
2450
+ @Name = params['Name']
2451
+ @Values = params['Values']
2452
+ end
2453
+ end
2454
+
2455
+ # IKE配置(Internet Key Exchange,因特网密钥交换),IKE具有一套自我保护机制,用户配置网络安全协议
2456
+ class IKEOptionsSpecification < TencentCloud::Common::AbstractModel
2457
+ # @param PropoEncryAlgorithm: 加密算法,可选值:'3DES-CBC', 'AES-CBC-128', 'AES-CBC-192', 'AES-CBC-256', 'DES-CBC',默认为3DES-CBC
2458
+ # @type PropoEncryAlgorithm: String
2459
+ # @param PropoAuthenAlgorithm: 认证算法:可选值:'MD5', 'SHA1',默认为MD5
2460
+ # @type PropoAuthenAlgorithm: String
2461
+ # @param ExchangeMode: 协商模式:可选值:'AGGRESSIVE', 'MAIN',默认为MAIN
2462
+ # @type ExchangeMode: String
2463
+ # @param LocalIdentity: 本端标识类型:可选值:'ADDRESS', 'FQDN',默认为ADDRESS
2464
+ # @type LocalIdentity: String
2465
+ # @param RemoteIdentity: 对端标识类型:可选值:'ADDRESS', 'FQDN',默认为ADDRESS
2466
+ # @type RemoteIdentity: String
2467
+ # @param LocalAddress: 本端标识,当LocalIdentity选为ADDRESS时,LocalAddress必填。localAddress默认为vpn网关公网IP
2468
+ # @type LocalAddress: String
2469
+ # @param RemoteAddress: 对端标识,当RemoteIdentity选为ADDRESS时,RemoteAddress必填
2470
+ # @type RemoteAddress: String
2471
+ # @param LocalFqdnName: 本端标识,当LocalIdentity选为FQDN时,LocalFqdnName必填
2472
+ # @type LocalFqdnName: String
2473
+ # @param RemoteFqdnName: 对端标识,当remoteIdentity选为FQDN时,RemoteFqdnName必填
2474
+ # @type RemoteFqdnName: String
2475
+ # @param DhGroupName: DH group,指定IKE交换密钥时使用的DH组,可选值:'GROUP1', 'GROUP2', 'GROUP5', 'GROUP14', 'GROUP24',
2476
+ # @type DhGroupName: String
2477
+ # @param IKESaLifetimeSeconds: IKE SA Lifetime,单位:秒,设置IKE SA的生存周期,取值范围:60-604800
2478
+ # @type IKESaLifetimeSeconds: Integer
2479
+ # @param IKEVersion: IKE版本
2480
+ # @type IKEVersion: String
2481
+
2482
+ attr_accessor :PropoEncryAlgorithm, :PropoAuthenAlgorithm, :ExchangeMode, :LocalIdentity, :RemoteIdentity, :LocalAddress, :RemoteAddress, :LocalFqdnName, :RemoteFqdnName, :DhGroupName, :IKESaLifetimeSeconds, :IKEVersion
2483
+
2484
+ def initialize(propoencryalgorithm=nil, propoauthenalgorithm=nil, exchangemode=nil, localidentity=nil, remoteidentity=nil, localaddress=nil, remoteaddress=nil, localfqdnname=nil, remotefqdnname=nil, dhgroupname=nil, ikesalifetimeseconds=nil, ikeversion=nil)
2485
+ @PropoEncryAlgorithm = propoencryalgorithm
2486
+ @PropoAuthenAlgorithm = propoauthenalgorithm
2487
+ @ExchangeMode = exchangemode
2488
+ @LocalIdentity = localidentity
2489
+ @RemoteIdentity = remoteidentity
2490
+ @LocalAddress = localaddress
2491
+ @RemoteAddress = remoteaddress
2492
+ @LocalFqdnName = localfqdnname
2493
+ @RemoteFqdnName = remotefqdnname
2494
+ @DhGroupName = dhgroupname
2495
+ @IKESaLifetimeSeconds = ikesalifetimeseconds
2496
+ @IKEVersion = ikeversion
2497
+ end
2498
+
2499
+ def deserialize(params)
2500
+ @PropoEncryAlgorithm = params['PropoEncryAlgorithm']
2501
+ @PropoAuthenAlgorithm = params['PropoAuthenAlgorithm']
2502
+ @ExchangeMode = params['ExchangeMode']
2503
+ @LocalIdentity = params['LocalIdentity']
2504
+ @RemoteIdentity = params['RemoteIdentity']
2505
+ @LocalAddress = params['LocalAddress']
2506
+ @RemoteAddress = params['RemoteAddress']
2507
+ @LocalFqdnName = params['LocalFqdnName']
2508
+ @RemoteFqdnName = params['RemoteFqdnName']
2509
+ @DhGroupName = params['DhGroupName']
2510
+ @IKESaLifetimeSeconds = params['IKESaLifetimeSeconds']
2511
+ @IKEVersion = params['IKEVersion']
2512
+ end
2513
+ end
2514
+
2515
+ # IPSec配置,腾讯云提供IPSec安全会话设置
2516
+ class IPSECOptionsSpecification < TencentCloud::Common::AbstractModel
2517
+ # @param PfsDhGroup: PFS:可选值:'NULL', 'DH-GROUP1', 'DH-GROUP2', 'DH-GROUP5', 'DH-GROUP14', 'DH-GROUP24',默认为NULL
2518
+ # @type PfsDhGroup: String
2519
+ # @param IPSECSaLifetimeTraffic: IPsec SA lifetime(KB):单位KB,取值范围:2560-604800
2520
+ # @type IPSECSaLifetimeTraffic: Integer
2521
+ # @param EncryptAlgorithm: 加密算法,可选值:'3DES-CBC', 'AES-CBC-128', 'AES-CBC-192', 'AES-CBC-256', 'DES-CBC', 'NULL', 默认为AES-CBC-128
2522
+ # @type EncryptAlgorithm: String
2523
+ # @param IntegrityAlgorith: 认证算法:可选值:'MD5', 'SHA1',默认为
2524
+ # @type IntegrityAlgorith: String
2525
+ # @param IPSECSaLifetimeSeconds: IPsec SA lifetime(s):单位秒,取值范围:180-604800
2526
+ # @type IPSECSaLifetimeSeconds: Integer
2527
+ # @param SecurityProto: 安全协议,默认为ESP
2528
+ # @type SecurityProto: String
2529
+ # @param EncapMode: 报文封装模式:默认为Tunnel
2530
+ # @type EncapMode: String
2531
+
2532
+ attr_accessor :PfsDhGroup, :IPSECSaLifetimeTraffic, :EncryptAlgorithm, :IntegrityAlgorith, :IPSECSaLifetimeSeconds, :SecurityProto, :EncapMode
2533
+
2534
+ def initialize(pfsdhgroup=nil, ipsecsalifetimetraffic=nil, encryptalgorithm=nil, integrityalgorith=nil, ipsecsalifetimeseconds=nil, securityproto=nil, encapmode=nil)
2535
+ @PfsDhGroup = pfsdhgroup
2536
+ @IPSECSaLifetimeTraffic = ipsecsalifetimetraffic
2537
+ @EncryptAlgorithm = encryptalgorithm
2538
+ @IntegrityAlgorith = integrityalgorith
2539
+ @IPSECSaLifetimeSeconds = ipsecsalifetimeseconds
2540
+ @SecurityProto = securityproto
2541
+ @EncapMode = encapmode
2542
+ end
2543
+
2544
+ def deserialize(params)
2545
+ @PfsDhGroup = params['PfsDhGroup']
2546
+ @IPSECSaLifetimeTraffic = params['IPSECSaLifetimeTraffic']
2547
+ @EncryptAlgorithm = params['EncryptAlgorithm']
2548
+ @IntegrityAlgorith = params['IntegrityAlgorith']
2549
+ @IPSECSaLifetimeSeconds = params['IPSECSaLifetimeSeconds']
2550
+ @SecurityProto = params['SecurityProto']
2551
+ @EncapMode = params['EncapMode']
2552
+ end
2553
+ end
2554
+
2555
+ # NAT IP信息
2556
+ class IpInfo < TencentCloud::Common::AbstractModel
2557
+ # @param SubnetId: 子网ID
2558
+ # @type SubnetId: String
2559
+ # @param Ips: IP列表
2560
+ # @type Ips: Array
2561
+
2562
+ attr_accessor :SubnetId, :Ips
2563
+
2564
+ def initialize(subnetid=nil, ips=nil)
2565
+ @SubnetId = subnetid
2566
+ @Ips = ips
2567
+ end
2568
+
2569
+ def deserialize(params)
2570
+ @SubnetId = params['SubnetId']
2571
+ @Ips = params['Ips']
2572
+ end
2573
+ end
2574
+
2575
+ # ModifyCustomerGatewayAttribute请求参数结构体
2576
+ class ModifyCustomerGatewayAttributeRequest < TencentCloud::Common::AbstractModel
2577
+ # @param CustomerGatewayId: 对端网关ID,例如:bmcgw-2wqq41m9,可通过DescribeCustomerGateways接口查询对端网关。
2578
+ # @type CustomerGatewayId: String
2579
+ # @param CustomerGatewayName: 对端网关名称,可任意命名,但不得超过60个字符。
2580
+ # @type CustomerGatewayName: String
2581
+
2582
+ attr_accessor :CustomerGatewayId, :CustomerGatewayName
2583
+
2584
+ def initialize(customergatewayid=nil, customergatewayname=nil)
2585
+ @CustomerGatewayId = customergatewayid
2586
+ @CustomerGatewayName = customergatewayname
2587
+ end
2588
+
2589
+ def deserialize(params)
2590
+ @CustomerGatewayId = params['CustomerGatewayId']
2591
+ @CustomerGatewayName = params['CustomerGatewayName']
2592
+ end
2593
+ end
2594
+
2595
+ # ModifyCustomerGatewayAttribute返回参数结构体
2596
+ class ModifyCustomerGatewayAttributeResponse < TencentCloud::Common::AbstractModel
2597
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
2598
+ # @type RequestId: String
2599
+
2600
+ attr_accessor :RequestId
2601
+
2602
+ def initialize(requestid=nil)
2603
+ @RequestId = requestid
2604
+ end
2605
+
2606
+ def deserialize(params)
2607
+ @RequestId = params['RequestId']
2608
+ end
2609
+ end
2610
+
2611
+ # ModifyRoutePolicy请求参数结构体
2612
+ class ModifyRoutePolicyRequest < TencentCloud::Common::AbstractModel
2613
+ # @param RouteTableId: 路由表ID
2614
+ # @type RouteTableId: String
2615
+ # @param RoutePolicy: 修改的路由
2616
+ # @type RoutePolicy: :class:`Tencentcloud::Bmvpc.v20180625.models.RoutePolicy`
2617
+
2618
+ attr_accessor :RouteTableId, :RoutePolicy
2619
+
2620
+ def initialize(routetableid=nil, routepolicy=nil)
2621
+ @RouteTableId = routetableid
2622
+ @RoutePolicy = routepolicy
2623
+ end
2624
+
2625
+ def deserialize(params)
2626
+ @RouteTableId = params['RouteTableId']
2627
+ unless params['RoutePolicy'].nil?
2628
+ @RoutePolicy = RoutePolicy.new
2629
+ @RoutePolicy.deserialize(params['RoutePolicy'])
2630
+ end
2631
+ end
2632
+ end
2633
+
2634
+ # ModifyRoutePolicy返回参数结构体
2635
+ class ModifyRoutePolicyResponse < TencentCloud::Common::AbstractModel
2636
+ # @param TaskId: 异步任务ID
2637
+ # @type TaskId: Integer
2638
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
2639
+ # @type RequestId: String
2640
+
2641
+ attr_accessor :TaskId, :RequestId
2642
+
2643
+ def initialize(taskid=nil, requestid=nil)
2644
+ @TaskId = taskid
2645
+ @RequestId = requestid
2646
+ end
2647
+
2648
+ def deserialize(params)
2649
+ @TaskId = params['TaskId']
2650
+ @RequestId = params['RequestId']
2651
+ end
2652
+ end
2653
+
2654
+ # ModifyRouteTable请求参数结构体
2655
+ class ModifyRouteTableRequest < TencentCloud::Common::AbstractModel
2656
+ # @param RouteTableId: 路由表ID
2657
+ # @type RouteTableId: String
2658
+ # @param RouteTableName: 路由表名称
2659
+ # @type RouteTableName: String
2660
+
2661
+ attr_accessor :RouteTableId, :RouteTableName
2662
+
2663
+ def initialize(routetableid=nil, routetablename=nil)
2664
+ @RouteTableId = routetableid
2665
+ @RouteTableName = routetablename
2666
+ end
2667
+
2668
+ def deserialize(params)
2669
+ @RouteTableId = params['RouteTableId']
2670
+ @RouteTableName = params['RouteTableName']
2671
+ end
2672
+ end
2673
+
2674
+ # ModifyRouteTable返回参数结构体
2675
+ class ModifyRouteTableResponse < TencentCloud::Common::AbstractModel
2676
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
2677
+ # @type RequestId: String
2678
+
2679
+ attr_accessor :RequestId
2680
+
2681
+ def initialize(requestid=nil)
2682
+ @RequestId = requestid
2683
+ end
2684
+
2685
+ def deserialize(params)
2686
+ @RequestId = params['RequestId']
2687
+ end
2688
+ end
2689
+
2690
+ # ModifySubnetAttribute请求参数结构体
2691
+ class ModifySubnetAttributeRequest < TencentCloud::Common::AbstractModel
2692
+ # @param VpcId: 私有网络ID
2693
+ # @type VpcId: String
2694
+ # @param SubnetId: 子网ID
2695
+ # @type SubnetId: String
2696
+ # @param SubnetName: 子网名称
2697
+ # @type SubnetName: String
2698
+
2699
+ attr_accessor :VpcId, :SubnetId, :SubnetName
2700
+
2701
+ def initialize(vpcid=nil, subnetid=nil, subnetname=nil)
2702
+ @VpcId = vpcid
2703
+ @SubnetId = subnetid
2704
+ @SubnetName = subnetname
2705
+ end
2706
+
2707
+ def deserialize(params)
2708
+ @VpcId = params['VpcId']
2709
+ @SubnetId = params['SubnetId']
2710
+ @SubnetName = params['SubnetName']
2711
+ end
2712
+ end
2713
+
2714
+ # ModifySubnetAttribute返回参数结构体
2715
+ class ModifySubnetAttributeResponse < TencentCloud::Common::AbstractModel
2716
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
2717
+ # @type RequestId: String
2718
+
2719
+ attr_accessor :RequestId
2720
+
2721
+ def initialize(requestid=nil)
2722
+ @RequestId = requestid
2723
+ end
2724
+
2725
+ def deserialize(params)
2726
+ @RequestId = params['RequestId']
2727
+ end
2728
+ end
2729
+
2730
+ # ModifySubnetDHCPRelay请求参数结构体
2731
+ class ModifySubnetDHCPRelayRequest < TencentCloud::Common::AbstractModel
2732
+ # @param VpcId: 私有网络ID
2733
+ # @type VpcId: String
2734
+ # @param SubnetId: 子网ID
2735
+ # @type SubnetId: String
2736
+ # @param EnableDHCP: 是否开启DHCP Relay
2737
+ # @type EnableDHCP: Boolean
2738
+ # @param ServerIps: DHCP服务器IP
2739
+ # @type ServerIps: Array
2740
+ # @param ReservedIpCount: 预留IP个数
2741
+ # @type ReservedIpCount: Integer
2742
+
2743
+ attr_accessor :VpcId, :SubnetId, :EnableDHCP, :ServerIps, :ReservedIpCount
2744
+
2745
+ def initialize(vpcid=nil, subnetid=nil, enabledhcp=nil, serverips=nil, reservedipcount=nil)
2746
+ @VpcId = vpcid
2747
+ @SubnetId = subnetid
2748
+ @EnableDHCP = enabledhcp
2749
+ @ServerIps = serverips
2750
+ @ReservedIpCount = reservedipcount
2751
+ end
2752
+
2753
+ def deserialize(params)
2754
+ @VpcId = params['VpcId']
2755
+ @SubnetId = params['SubnetId']
2756
+ @EnableDHCP = params['EnableDHCP']
2757
+ @ServerIps = params['ServerIps']
2758
+ @ReservedIpCount = params['ReservedIpCount']
2759
+ end
2760
+ end
2761
+
2762
+ # ModifySubnetDHCPRelay返回参数结构体
2763
+ class ModifySubnetDHCPRelayResponse < TencentCloud::Common::AbstractModel
2764
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
2765
+ # @type RequestId: String
2766
+
2767
+ attr_accessor :RequestId
2768
+
2769
+ def initialize(requestid=nil)
2770
+ @RequestId = requestid
2771
+ end
2772
+
2773
+ def deserialize(params)
2774
+ @RequestId = params['RequestId']
2775
+ end
2776
+ end
2777
+
2778
+ # ModifyVpcAttribute请求参数结构体
2779
+ class ModifyVpcAttributeRequest < TencentCloud::Common::AbstractModel
2780
+ # @param VpcId: 私有网络ID
2781
+ # @type VpcId: String
2782
+ # @param VpcName: 私有网络名称
2783
+ # @type VpcName: String
2784
+ # @param EnableMonitor: 是否开启内网监控,0为关闭,1为开启
2785
+ # @type EnableMonitor: Boolean
2786
+
2787
+ attr_accessor :VpcId, :VpcName, :EnableMonitor
2788
+
2789
+ def initialize(vpcid=nil, vpcname=nil, enablemonitor=nil)
2790
+ @VpcId = vpcid
2791
+ @VpcName = vpcname
2792
+ @EnableMonitor = enablemonitor
2793
+ end
2794
+
2795
+ def deserialize(params)
2796
+ @VpcId = params['VpcId']
2797
+ @VpcName = params['VpcName']
2798
+ @EnableMonitor = params['EnableMonitor']
2799
+ end
2800
+ end
2801
+
2802
+ # ModifyVpcAttribute返回参数结构体
2803
+ class ModifyVpcAttributeResponse < TencentCloud::Common::AbstractModel
2804
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
2805
+ # @type RequestId: String
2806
+
2807
+ attr_accessor :RequestId
2808
+
2809
+ def initialize(requestid=nil)
2810
+ @RequestId = requestid
2811
+ end
2812
+
2813
+ def deserialize(params)
2814
+ @RequestId = params['RequestId']
2815
+ end
2816
+ end
2817
+
2818
+ # ModifyVpcPeerConnection请求参数结构体
2819
+ class ModifyVpcPeerConnectionRequest < TencentCloud::Common::AbstractModel
2820
+ # @param VpcPeerConnectionId: 黑石对等连接唯一ID
2821
+ # @type VpcPeerConnectionId: String
2822
+ # @param Bandwidth: 对等连接带宽
2823
+ # @type Bandwidth: Integer
2824
+ # @param VpcPeerConnectionName: 对等连接名称
2825
+ # @type VpcPeerConnectionName: String
2826
+
2827
+ attr_accessor :VpcPeerConnectionId, :Bandwidth, :VpcPeerConnectionName
2828
+
2829
+ def initialize(vpcpeerconnectionid=nil, bandwidth=nil, vpcpeerconnectionname=nil)
2830
+ @VpcPeerConnectionId = vpcpeerconnectionid
2831
+ @Bandwidth = bandwidth
2832
+ @VpcPeerConnectionName = vpcpeerconnectionname
2833
+ end
2834
+
2835
+ def deserialize(params)
2836
+ @VpcPeerConnectionId = params['VpcPeerConnectionId']
2837
+ @Bandwidth = params['Bandwidth']
2838
+ @VpcPeerConnectionName = params['VpcPeerConnectionName']
2839
+ end
2840
+ end
2841
+
2842
+ # ModifyVpcPeerConnection返回参数结构体
2843
+ class ModifyVpcPeerConnectionResponse < TencentCloud::Common::AbstractModel
2844
+ # @param TaskId: 任务ID
2845
+ # @type TaskId: Integer
2846
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
2847
+ # @type RequestId: String
2848
+
2849
+ attr_accessor :TaskId, :RequestId
2850
+
2851
+ def initialize(taskid=nil, requestid=nil)
2852
+ @TaskId = taskid
2853
+ @RequestId = requestid
2854
+ end
2855
+
2856
+ def deserialize(params)
2857
+ @TaskId = params['TaskId']
2858
+ @RequestId = params['RequestId']
2859
+ end
2860
+ end
2861
+
2862
+ # ModifyVpnConnectionAttribute请求参数结构体
2863
+ class ModifyVpnConnectionAttributeRequest < TencentCloud::Common::AbstractModel
2864
+ # @param VpnConnectionId: VPN通道实例ID。形如:bmvpnx-f49l6u0z。
2865
+ # @type VpnConnectionId: String
2866
+ # @param VpcId: VPC实例ID
2867
+ # @type VpcId: String
2868
+ # @param VpnConnectionName: VPN通道名称,可任意命名,但不得超过60个字符。
2869
+ # @type VpnConnectionName: String
2870
+ # @param PreShareKey: 预共享密钥。
2871
+ # @type PreShareKey: String
2872
+ # @param SecurityPolicyDatabases: SPD策略组,例如:{"10.0.0.5/24":["172.123.10.5/16"]},10.0.0.5/24是vpc内网段172.123.10.5/16是IDC网段。用户指定VPC内哪些网段可以和您IDC中哪些网段通信。
2873
+ # @type SecurityPolicyDatabases: Array
2874
+ # @param IKEOptionsSpecification: IKE配置(Internet Key Exchange,因特网密钥交换),IKE具有一套自我保护机制,用户配置网络安全协议。
2875
+ # @type IKEOptionsSpecification: :class:`Tencentcloud::Bmvpc.v20180625.models.IKEOptionsSpecification`
2876
+ # @param IPSECOptionsSpecification: IPSec配置,腾讯云提供IPSec安全会话设置。
2877
+ # @type IPSECOptionsSpecification: :class:`Tencentcloud::Bmvpc.v20180625.models.IPSECOptionsSpecification`
2878
+
2879
+ attr_accessor :VpnConnectionId, :VpcId, :VpnConnectionName, :PreShareKey, :SecurityPolicyDatabases, :IKEOptionsSpecification, :IPSECOptionsSpecification
2880
+
2881
+ def initialize(vpnconnectionid=nil, vpcid=nil, vpnconnectionname=nil, presharekey=nil, securitypolicydatabases=nil, ikeoptionsspecification=nil, ipsecoptionsspecification=nil)
2882
+ @VpnConnectionId = vpnconnectionid
2883
+ @VpcId = vpcid
2884
+ @VpnConnectionName = vpnconnectionname
2885
+ @PreShareKey = presharekey
2886
+ @SecurityPolicyDatabases = securitypolicydatabases
2887
+ @IKEOptionsSpecification = ikeoptionsspecification
2888
+ @IPSECOptionsSpecification = ipsecoptionsspecification
2889
+ end
2890
+
2891
+ def deserialize(params)
2892
+ @VpnConnectionId = params['VpnConnectionId']
2893
+ @VpcId = params['VpcId']
2894
+ @VpnConnectionName = params['VpnConnectionName']
2895
+ @PreShareKey = params['PreShareKey']
2896
+ unless params['SecurityPolicyDatabases'].nil?
2897
+ @SecurityPolicyDatabases = []
2898
+ params['SecurityPolicyDatabases'].each do |i|
2899
+ securitypolicydatabase_tmp = SecurityPolicyDatabase.new
2900
+ securitypolicydatabase_tmp.deserialize(i)
2901
+ @SecurityPolicyDatabases << securitypolicydatabase_tmp
2902
+ end
2903
+ end
2904
+ unless params['IKEOptionsSpecification'].nil?
2905
+ @IKEOptionsSpecification = IKEOptionsSpecification.new
2906
+ @IKEOptionsSpecification.deserialize(params['IKEOptionsSpecification'])
2907
+ end
2908
+ unless params['IPSECOptionsSpecification'].nil?
2909
+ @IPSECOptionsSpecification = IPSECOptionsSpecification.new
2910
+ @IPSECOptionsSpecification.deserialize(params['IPSECOptionsSpecification'])
2911
+ end
2912
+ end
2913
+ end
2914
+
2915
+ # ModifyVpnConnectionAttribute返回参数结构体
2916
+ class ModifyVpnConnectionAttributeResponse < TencentCloud::Common::AbstractModel
2917
+ # @param TaskId: 任务ID
2918
+ # @type TaskId: Integer
2919
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
2920
+ # @type RequestId: String
2921
+
2922
+ attr_accessor :TaskId, :RequestId
2923
+
2924
+ def initialize(taskid=nil, requestid=nil)
2925
+ @TaskId = taskid
2926
+ @RequestId = requestid
2927
+ end
2928
+
2929
+ def deserialize(params)
2930
+ @TaskId = params['TaskId']
2931
+ @RequestId = params['RequestId']
2932
+ end
2933
+ end
2934
+
2935
+ # ModifyVpnGatewayAttribute请求参数结构体
2936
+ class ModifyVpnGatewayAttributeRequest < TencentCloud::Common::AbstractModel
2937
+ # @param VpnGatewayId: VPN网关实例ID。
2938
+ # @type VpnGatewayId: String
2939
+ # @param VpnGatewayName: VPN网关名称,最大长度不能超过60个字节。
2940
+ # @type VpnGatewayName: String
2941
+
2942
+ attr_accessor :VpnGatewayId, :VpnGatewayName
2943
+
2944
+ def initialize(vpngatewayid=nil, vpngatewayname=nil)
2945
+ @VpnGatewayId = vpngatewayid
2946
+ @VpnGatewayName = vpngatewayname
2947
+ end
2948
+
2949
+ def deserialize(params)
2950
+ @VpnGatewayId = params['VpnGatewayId']
2951
+ @VpnGatewayName = params['VpnGatewayName']
2952
+ end
2953
+ end
2954
+
2955
+ # ModifyVpnGatewayAttribute返回参数结构体
2956
+ class ModifyVpnGatewayAttributeResponse < TencentCloud::Common::AbstractModel
2957
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
2958
+ # @type RequestId: String
2959
+
2960
+ attr_accessor :RequestId
2961
+
2962
+ def initialize(requestid=nil)
2963
+ @RequestId = requestid
2964
+ end
2965
+
2966
+ def deserialize(params)
2967
+ @RequestId = params['RequestId']
2968
+ end
2969
+ end
2970
+
2971
+ # NAT详情
2972
+ class NatGatewayInfo < TencentCloud::Common::AbstractModel
2973
+ # @param NatId: NAT网关ID
2974
+ # @type NatId: String
2975
+ # @param NatName: 网关名称
2976
+ # @type NatName: String
2977
+ # @param VpcId: 私有网络ID
2978
+ # @type VpcId: String
2979
+ # @param VpcName: 私有网络名称
2980
+ # @type VpcName: String
2981
+ # @param ProductionStatus: 网关创建状态,其中0表示创建中,1表示运行中,2表示创建失败
2982
+ # @type ProductionStatus: Integer
2983
+ # @param Eips: EIP列表
2984
+ # @type Eips: Array
2985
+ # @param MaxConcurrent: 并发连接数规格,取值为1000000, 3000000, 10000000
2986
+ # @type MaxConcurrent: Integer
2987
+ # @param Zone: 可用区
2988
+ # @type Zone: String
2989
+ # @param Exclusive: 独占标识,其中0表示共享,1表示独占,默认值为0
2990
+ # @type Exclusive: Integer
2991
+ # @param ForwardMode: 转发模式,其中0表示IP方式,1表示网段方式
2992
+ # @type ForwardMode: Integer
2993
+ # @param VpcCidrBlock: 私有网络网段
2994
+ # @type VpcCidrBlock: String
2995
+ # @param Type: 网关类型,取值为 small,middle,big,分别对应小型、中型、大型
2996
+ # @type Type: String
2997
+ # @param CreateTime: 创建时间
2998
+ # @type CreateTime: String
2999
+ # @param State: 网关启用状态,1为禁用,0为启用。
3000
+ # @type State: Integer
3001
+ # @param IntVpcId: 私有网络整型ID
3002
+ # @type IntVpcId: Integer
3003
+ # @param NatResourceId: NAT资源ID
3004
+ # @type NatResourceId: Integer
3005
+
3006
+ attr_accessor :NatId, :NatName, :VpcId, :VpcName, :ProductionStatus, :Eips, :MaxConcurrent, :Zone, :Exclusive, :ForwardMode, :VpcCidrBlock, :Type, :CreateTime, :State, :IntVpcId, :NatResourceId
3007
+
3008
+ def initialize(natid=nil, natname=nil, vpcid=nil, vpcname=nil, productionstatus=nil, eips=nil, maxconcurrent=nil, zone=nil, exclusive=nil, forwardmode=nil, vpccidrblock=nil, type=nil, createtime=nil, state=nil, intvpcid=nil, natresourceid=nil)
3009
+ @NatId = natid
3010
+ @NatName = natname
3011
+ @VpcId = vpcid
3012
+ @VpcName = vpcname
3013
+ @ProductionStatus = productionstatus
3014
+ @Eips = eips
3015
+ @MaxConcurrent = maxconcurrent
3016
+ @Zone = zone
3017
+ @Exclusive = exclusive
3018
+ @ForwardMode = forwardmode
3019
+ @VpcCidrBlock = vpccidrblock
3020
+ @Type = type
3021
+ @CreateTime = createtime
3022
+ @State = state
3023
+ @IntVpcId = intvpcid
3024
+ @NatResourceId = natresourceid
3025
+ end
3026
+
3027
+ def deserialize(params)
3028
+ @NatId = params['NatId']
3029
+ @NatName = params['NatName']
3030
+ @VpcId = params['VpcId']
3031
+ @VpcName = params['VpcName']
3032
+ @ProductionStatus = params['ProductionStatus']
3033
+ @Eips = params['Eips']
3034
+ @MaxConcurrent = params['MaxConcurrent']
3035
+ @Zone = params['Zone']
3036
+ @Exclusive = params['Exclusive']
3037
+ @ForwardMode = params['ForwardMode']
3038
+ @VpcCidrBlock = params['VpcCidrBlock']
3039
+ @Type = params['Type']
3040
+ @CreateTime = params['CreateTime']
3041
+ @State = params['State']
3042
+ @IntVpcId = params['IntVpcId']
3043
+ @NatResourceId = params['NatResourceId']
3044
+ end
3045
+ end
3046
+
3047
+ # NAT子网信息
3048
+ class NatSubnetInfo < TencentCloud::Common::AbstractModel
3049
+ # @param Name: 子网名称
3050
+ # @type Name: String
3051
+ # @param SubnetId: 子网ID
3052
+ # @type SubnetId: String
3053
+ # @param SubnetNatType: NAT子网类型,其中0表示绑定部分IP的NAT子网,1表示绑定全部IP的NAT子网,2表示绑定网关方式的NAT子网
3054
+ # @type SubnetNatType: Integer
3055
+ # @param CidrBlock: 子网网段
3056
+ # @type CidrBlock: String
3057
+
3058
+ attr_accessor :Name, :SubnetId, :SubnetNatType, :CidrBlock
3059
+
3060
+ def initialize(name=nil, subnetid=nil, subnetnattype=nil, cidrblock=nil)
3061
+ @Name = name
3062
+ @SubnetId = subnetid
3063
+ @SubnetNatType = subnetnattype
3064
+ @CidrBlock = cidrblock
3065
+ end
3066
+
3067
+ def deserialize(params)
3068
+ @Name = params['Name']
3069
+ @SubnetId = params['SubnetId']
3070
+ @SubnetNatType = params['SubnetNatType']
3071
+ @CidrBlock = params['CidrBlock']
3072
+ end
3073
+ end
3074
+
3075
+ # RejectVpcPeerConnection请求参数结构体
3076
+ class RejectVpcPeerConnectionRequest < TencentCloud::Common::AbstractModel
3077
+ # @param VpcPeerConnectionId: 黑石对等连接实例ID
3078
+ # @type VpcPeerConnectionId: String
3079
+
3080
+ attr_accessor :VpcPeerConnectionId
3081
+
3082
+ def initialize(vpcpeerconnectionid=nil)
3083
+ @VpcPeerConnectionId = vpcpeerconnectionid
3084
+ end
3085
+
3086
+ def deserialize(params)
3087
+ @VpcPeerConnectionId = params['VpcPeerConnectionId']
3088
+ end
3089
+ end
3090
+
3091
+ # RejectVpcPeerConnection返回参数结构体
3092
+ class RejectVpcPeerConnectionResponse < TencentCloud::Common::AbstractModel
3093
+ # @param TaskId: 任务ID
3094
+ # @type TaskId: Integer
3095
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
3096
+ # @type RequestId: String
3097
+
3098
+ attr_accessor :TaskId, :RequestId
3099
+
3100
+ def initialize(taskid=nil, requestid=nil)
3101
+ @TaskId = taskid
3102
+ @RequestId = requestid
3103
+ end
3104
+
3105
+ def deserialize(params)
3106
+ @TaskId = params['TaskId']
3107
+ @RequestId = params['RequestId']
3108
+ end
3109
+ end
3110
+
3111
+ # ResetVpnConnection请求参数结构体
3112
+ class ResetVpnConnectionRequest < TencentCloud::Common::AbstractModel
3113
+ # @param VpcId: VPC唯一ID
3114
+ # @type VpcId: String
3115
+ # @param VpnConnectionId: VPN通道实例ID。形如:bmvpnx-f49l6u0z。
3116
+ # @type VpnConnectionId: String
3117
+
3118
+ attr_accessor :VpcId, :VpnConnectionId
3119
+
3120
+ def initialize(vpcid=nil, vpnconnectionid=nil)
3121
+ @VpcId = vpcid
3122
+ @VpnConnectionId = vpnconnectionid
3123
+ end
3124
+
3125
+ def deserialize(params)
3126
+ @VpcId = params['VpcId']
3127
+ @VpnConnectionId = params['VpnConnectionId']
3128
+ end
3129
+ end
3130
+
3131
+ # ResetVpnConnection返回参数结构体
3132
+ class ResetVpnConnectionResponse < TencentCloud::Common::AbstractModel
3133
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
3134
+ # @type RequestId: String
3135
+
3136
+ attr_accessor :RequestId
3137
+
3138
+ def initialize(requestid=nil)
3139
+ @RequestId = requestid
3140
+ end
3141
+
3142
+ def deserialize(params)
3143
+ @RequestId = params['RequestId']
3144
+ end
3145
+ end
3146
+
3147
+ # 路由条目
3148
+ class RoutePolicy < TencentCloud::Common::AbstractModel
3149
+ # @param DestinationCidrBlock: 目的网段
3150
+ # @type DestinationCidrBlock: String
3151
+ # @param GatewayType: 下一跳类型,目前我们支持的类型有:
3152
+ # LOCAL:物理机默认路由;
3153
+ # VPN:VPN网关;
3154
+ # PEERCONNECTION:对等连接;
3155
+ # CPM:物理机自定义路由;
3156
+ # CCN:云联网;
3157
+ # TGW:公网默认路由;
3158
+ # SSLVPN : SSH SSL VPN网关。
3159
+ # @type GatewayType: String
3160
+ # @param GatewayId: 下一跳地址,这里只需要指定不同下一跳类型的网关ID,系统会自动匹配到下一跳地址。
3161
+ # @type GatewayId: String
3162
+ # @param RouteDescription: 路由策略描述。
3163
+ # @type RouteDescription: String
3164
+ # @param RoutePolicyId: 路由策略ID
3165
+ # @type RoutePolicyId: String
3166
+ # @param RoutePolicyType: 路由类型,目前我们支持的类型有:
3167
+ # USER:用户自定义路由;
3168
+ # NETD:网络探测路由,创建网络探测实例时,系统默认下发,不可编辑与删除;
3169
+ # CCN:云联网路由,系统默认下发,不可编辑与删除。
3170
+ # 用户只能添加和编辑USER 类型的路由。
3171
+ # @type RoutePolicyType: String
3172
+ # @param Enabled: 是否启用
3173
+ # @type Enabled: Boolean
3174
+
3175
+ attr_accessor :DestinationCidrBlock, :GatewayType, :GatewayId, :RouteDescription, :RoutePolicyId, :RoutePolicyType, :Enabled
3176
+
3177
+ def initialize(destinationcidrblock=nil, gatewaytype=nil, gatewayid=nil, routedescription=nil, routepolicyid=nil, routepolicytype=nil, enabled=nil)
3178
+ @DestinationCidrBlock = destinationcidrblock
3179
+ @GatewayType = gatewaytype
3180
+ @GatewayId = gatewayid
3181
+ @RouteDescription = routedescription
3182
+ @RoutePolicyId = routepolicyid
3183
+ @RoutePolicyType = routepolicytype
3184
+ @Enabled = enabled
3185
+ end
3186
+
3187
+ def deserialize(params)
3188
+ @DestinationCidrBlock = params['DestinationCidrBlock']
3189
+ @GatewayType = params['GatewayType']
3190
+ @GatewayId = params['GatewayId']
3191
+ @RouteDescription = params['RouteDescription']
3192
+ @RoutePolicyId = params['RoutePolicyId']
3193
+ @RoutePolicyType = params['RoutePolicyType']
3194
+ @Enabled = params['Enabled']
3195
+ end
3196
+ end
3197
+
3198
+ # 路由表对象
3199
+ class RouteTable < TencentCloud::Common::AbstractModel
3200
+ # @param VpcId: VPC实例ID。
3201
+ # @type VpcId: String
3202
+ # @param VpcName: VPC的名称
3203
+ # @type VpcName: String
3204
+ # @param VpcCidrBlock: VPC的CIDR
3205
+ # @type VpcCidrBlock: String
3206
+ # @param Zone: 可用区
3207
+ # @type Zone: String
3208
+ # @param RouteTableId: 路由表实例ID,例如:rtb-azd4dt1c。
3209
+ # @type RouteTableId: String
3210
+ # @param RouteTableName: 路由表名称。
3211
+ # @type RouteTableName: String
3212
+ # @param CreateTime: 创建时间。
3213
+ # @type CreateTime: String
3214
+
3215
+ attr_accessor :VpcId, :VpcName, :VpcCidrBlock, :Zone, :RouteTableId, :RouteTableName, :CreateTime
3216
+
3217
+ def initialize(vpcid=nil, vpcname=nil, vpccidrblock=nil, zone=nil, routetableid=nil, routetablename=nil, createtime=nil)
3218
+ @VpcId = vpcid
3219
+ @VpcName = vpcname
3220
+ @VpcCidrBlock = vpccidrblock
3221
+ @Zone = zone
3222
+ @RouteTableId = routetableid
3223
+ @RouteTableName = routetablename
3224
+ @CreateTime = createtime
3225
+ end
3226
+
3227
+ def deserialize(params)
3228
+ @VpcId = params['VpcId']
3229
+ @VpcName = params['VpcName']
3230
+ @VpcCidrBlock = params['VpcCidrBlock']
3231
+ @Zone = params['Zone']
3232
+ @RouteTableId = params['RouteTableId']
3233
+ @RouteTableName = params['RouteTableName']
3234
+ @CreateTime = params['CreateTime']
3235
+ end
3236
+ end
3237
+
3238
+ # SecurityPolicyDatabase策略
3239
+ class SecurityPolicyDatabase < TencentCloud::Common::AbstractModel
3240
+ # @param LocalCidrBlock: 本端网段
3241
+ # @type LocalCidrBlock: String
3242
+ # @param RemoteCidrBlock: 对端网段
3243
+ # @type RemoteCidrBlock: Array
3244
+
3245
+ attr_accessor :LocalCidrBlock, :RemoteCidrBlock
3246
+
3247
+ def initialize(localcidrblock=nil, remotecidrblock=nil)
3248
+ @LocalCidrBlock = localcidrblock
3249
+ @RemoteCidrBlock = remotecidrblock
3250
+ end
3251
+
3252
+ def deserialize(params)
3253
+ @LocalCidrBlock = params['LocalCidrBlock']
3254
+ @RemoteCidrBlock = params['RemoteCidrBlock']
3255
+ end
3256
+ end
3257
+
3258
+ # 创建子网时的子网类型
3259
+ class SubnetCreateInputInfo < TencentCloud::Common::AbstractModel
3260
+ # @param SubnetName: 子网名称,可任意命名,但不得超过60个字符
3261
+ # @type SubnetName: String
3262
+ # @param CidrBlock: 子网网段,子网网段必须在VPC网段内,相同VPC内子网网段不能重叠
3263
+ # @type CidrBlock: String
3264
+ # @param DistributedFlag: 是否开启子网分布式网关,默认传1,传0为关闭子网分布式网关。关闭分布式网关子网用于云服务器化子网,此子网中只能有一台物理机,同时此物理机及其上子机只能在此子网中
3265
+ # @type DistributedFlag: Integer
3266
+ # @param DhcpEnable: 是否开启dhcp relay ,关闭为0,开启为1。默认为0
3267
+ # @type DhcpEnable: Integer
3268
+ # @param DhcpServerIp: DHCP SERVER 的IP地址数组。IP地址为相同VPC的子网内分配的IP
3269
+ # @type DhcpServerIp: Array
3270
+ # @param IpReserve: 预留的IP个数。从该子网的最大可分配IP倒序分配N个IP 用于DHCP 动态分配使用的地址段
3271
+ # @type IpReserve: Integer
3272
+ # @param VlanId: 子网绑定的vlanId。VlanId取值范围为2000-2999。创建物理机子网,VlanId默认为5; 创建docker子网或者虚拟子网,VlanId默认会分配2000--2999未使用的数值。
3273
+ # @type VlanId: Integer
3274
+ # @param Zone: 黑石子网的可用区
3275
+ # @type Zone: String
3276
+ # @param IsSmartNic: 是否25G子网,1为是,0为否。
3277
+ # @type IsSmartNic: Integer
3278
+
3279
+ attr_accessor :SubnetName, :CidrBlock, :DistributedFlag, :DhcpEnable, :DhcpServerIp, :IpReserve, :VlanId, :Zone, :IsSmartNic
3280
+
3281
+ def initialize(subnetname=nil, cidrblock=nil, distributedflag=nil, dhcpenable=nil, dhcpserverip=nil, ipreserve=nil, vlanid=nil, zone=nil, issmartnic=nil)
3282
+ @SubnetName = subnetname
3283
+ @CidrBlock = cidrblock
3284
+ @DistributedFlag = distributedflag
3285
+ @DhcpEnable = dhcpenable
3286
+ @DhcpServerIp = dhcpserverip
3287
+ @IpReserve = ipreserve
3288
+ @VlanId = vlanid
3289
+ @Zone = zone
3290
+ @IsSmartNic = issmartnic
3291
+ end
3292
+
3293
+ def deserialize(params)
3294
+ @SubnetName = params['SubnetName']
3295
+ @CidrBlock = params['CidrBlock']
3296
+ @DistributedFlag = params['DistributedFlag']
3297
+ @DhcpEnable = params['DhcpEnable']
3298
+ @DhcpServerIp = params['DhcpServerIp']
3299
+ @IpReserve = params['IpReserve']
3300
+ @VlanId = params['VlanId']
3301
+ @Zone = params['Zone']
3302
+ @IsSmartNic = params['IsSmartNic']
3303
+ end
3304
+ end
3305
+
3306
+ # 黑石子网的信息
3307
+ class SubnetInfo < TencentCloud::Common::AbstractModel
3308
+ # @param VpcId: 私有网络的唯一ID。
3309
+ # @type VpcId: String
3310
+ # @param VpcName: VPC的名称。
3311
+ # @type VpcName: String
3312
+ # @param VpcCidrBlock: VPC的CIDR。
3313
+ # @type VpcCidrBlock: String
3314
+ # @param SubnetId: 私有网络的唯一ID
3315
+ # @type SubnetId: String
3316
+ # @param SubnetName: 子网名称。
3317
+ # @type SubnetName: String
3318
+ # @param CidrBlock: 子网CIDR。
3319
+ # @type CidrBlock: String
3320
+ # @param Type: 子网类型。0: 黑石物理机子网; 6: ccs子网; 7 Docker子网; 8: 虚拟机子网
3321
+ # @type Type: Integer
3322
+ # @param ZoneId: 子网可用区ID。
3323
+ # @type ZoneId: Integer
3324
+ # @param CpmNum: 子网物理机的个数
3325
+ # @type CpmNum: Integer
3326
+ # @param VlanId: 子网的VlanId。
3327
+ # @type VlanId: Integer
3328
+ # @param DistributedFlag: 是否开启分布式网关 ,关闭为0,开启为1。
3329
+ # @type DistributedFlag: Integer
3330
+ # @param DhcpEnable: 是否开启dhcp relay ,关闭为0,开启为1。默认为0。
3331
+ # @type DhcpEnable: Integer
3332
+ # @param DhcpServerIp: DHCP SERVER 的IP地址数组。IP地址为相同VPC的子网内分配的IP。
3333
+ # @type DhcpServerIp: Array
3334
+ # @param IpReserve: 预留的IP个数。从该子网的最大可分配IP倒序分配N个IP 用于DHCP 动态分配使用的地址段。
3335
+ # @type IpReserve: Integer
3336
+ # @param AvailableIpNum: 子网中可用的IP个数
3337
+ # @type AvailableIpNum: Integer
3338
+ # @param TotalIpNum: 子网中总共的IP个数
3339
+ # @type TotalIpNum: Integer
3340
+ # @param SubnetCreateTime: 子网创建时间
3341
+ # @type SubnetCreateTime: String
3342
+ # @param IsSmartNic: 25G子网标识
3343
+ # @type IsSmartNic: Integer
3344
+ # @param Zone: 子网可用区。
3345
+ # 注意:此字段可能返回 null,表示取不到有效值。
3346
+ # @type Zone: String
3347
+ # @param VpcZoneId: VPC所在可用区ID
3348
+ # @type VpcZoneId: Integer
3349
+ # @param VpcZone: VPC所在可用区
3350
+ # @type VpcZone: String
3351
+ # @param BroadcastFlag: 是否开启广播,关闭为0,开启为1。
3352
+ # @type BroadcastFlag: Integer
3353
+
3354
+ attr_accessor :VpcId, :VpcName, :VpcCidrBlock, :SubnetId, :SubnetName, :CidrBlock, :Type, :ZoneId, :CpmNum, :VlanId, :DistributedFlag, :DhcpEnable, :DhcpServerIp, :IpReserve, :AvailableIpNum, :TotalIpNum, :SubnetCreateTime, :IsSmartNic, :Zone, :VpcZoneId, :VpcZone, :BroadcastFlag
3355
+
3356
+ def initialize(vpcid=nil, vpcname=nil, vpccidrblock=nil, subnetid=nil, subnetname=nil, cidrblock=nil, type=nil, zoneid=nil, cpmnum=nil, vlanid=nil, distributedflag=nil, dhcpenable=nil, dhcpserverip=nil, ipreserve=nil, availableipnum=nil, totalipnum=nil, subnetcreatetime=nil, issmartnic=nil, zone=nil, vpczoneid=nil, vpczone=nil, broadcastflag=nil)
3357
+ @VpcId = vpcid
3358
+ @VpcName = vpcname
3359
+ @VpcCidrBlock = vpccidrblock
3360
+ @SubnetId = subnetid
3361
+ @SubnetName = subnetname
3362
+ @CidrBlock = cidrblock
3363
+ @Type = type
3364
+ @ZoneId = zoneid
3365
+ @CpmNum = cpmnum
3366
+ @VlanId = vlanid
3367
+ @DistributedFlag = distributedflag
3368
+ @DhcpEnable = dhcpenable
3369
+ @DhcpServerIp = dhcpserverip
3370
+ @IpReserve = ipreserve
3371
+ @AvailableIpNum = availableipnum
3372
+ @TotalIpNum = totalipnum
3373
+ @SubnetCreateTime = subnetcreatetime
3374
+ @IsSmartNic = issmartnic
3375
+ @Zone = zone
3376
+ @VpcZoneId = vpczoneid
3377
+ @VpcZone = vpczone
3378
+ @BroadcastFlag = broadcastflag
3379
+ end
3380
+
3381
+ def deserialize(params)
3382
+ @VpcId = params['VpcId']
3383
+ @VpcName = params['VpcName']
3384
+ @VpcCidrBlock = params['VpcCidrBlock']
3385
+ @SubnetId = params['SubnetId']
3386
+ @SubnetName = params['SubnetName']
3387
+ @CidrBlock = params['CidrBlock']
3388
+ @Type = params['Type']
3389
+ @ZoneId = params['ZoneId']
3390
+ @CpmNum = params['CpmNum']
3391
+ @VlanId = params['VlanId']
3392
+ @DistributedFlag = params['DistributedFlag']
3393
+ @DhcpEnable = params['DhcpEnable']
3394
+ @DhcpServerIp = params['DhcpServerIp']
3395
+ @IpReserve = params['IpReserve']
3396
+ @AvailableIpNum = params['AvailableIpNum']
3397
+ @TotalIpNum = params['TotalIpNum']
3398
+ @SubnetCreateTime = params['SubnetCreateTime']
3399
+ @IsSmartNic = params['IsSmartNic']
3400
+ @Zone = params['Zone']
3401
+ @VpcZoneId = params['VpcZoneId']
3402
+ @VpcZone = params['VpcZone']
3403
+ @BroadcastFlag = params['BroadcastFlag']
3404
+ end
3405
+ end
3406
+
3407
+ # UnbindEipsFromNatGateway请求参数结构体
3408
+ class UnbindEipsFromNatGatewayRequest < TencentCloud::Common::AbstractModel
3409
+ # @param NatId: NAT网关ID,例如:nat-kdm476mp
3410
+ # @type NatId: String
3411
+ # @param VpcId: 私有网络ID,例如:vpc-kd7d06of
3412
+ # @type VpcId: String
3413
+ # @param AssignedEips: 已分配的EIP列表
3414
+ # @type AssignedEips: Array
3415
+
3416
+ attr_accessor :NatId, :VpcId, :AssignedEips
3417
+
3418
+ def initialize(natid=nil, vpcid=nil, assignedeips=nil)
3419
+ @NatId = natid
3420
+ @VpcId = vpcid
3421
+ @AssignedEips = assignedeips
3422
+ end
3423
+
3424
+ def deserialize(params)
3425
+ @NatId = params['NatId']
3426
+ @VpcId = params['VpcId']
3427
+ @AssignedEips = params['AssignedEips']
3428
+ end
3429
+ end
3430
+
3431
+ # UnbindEipsFromNatGateway返回参数结构体
3432
+ class UnbindEipsFromNatGatewayResponse < TencentCloud::Common::AbstractModel
3433
+ # @param TaskId: 任务ID
3434
+ # @type TaskId: Integer
3435
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
3436
+ # @type RequestId: String
3437
+
3438
+ attr_accessor :TaskId, :RequestId
3439
+
3440
+ def initialize(taskid=nil, requestid=nil)
3441
+ @TaskId = taskid
3442
+ @RequestId = requestid
3443
+ end
3444
+
3445
+ def deserialize(params)
3446
+ @TaskId = params['TaskId']
3447
+ @RequestId = params['RequestId']
3448
+ end
3449
+ end
3450
+
3451
+ # UnbindIpsFromNatGateway请求参数结构体
3452
+ class UnbindIpsFromNatGatewayRequest < TencentCloud::Common::AbstractModel
3453
+ # @param NatId: NAT网关ID,例如:nat-kdm476mp
3454
+ # @type NatId: String
3455
+ # @param VpcId: 私有网络ID,例如:vpc-kd7d06of
3456
+ # @type VpcId: String
3457
+ # @param IpInfoSet: 部分IP信息;子网须以部分IP将加入NAT网关
3458
+ # @type IpInfoSet: Array
3459
+
3460
+ attr_accessor :NatId, :VpcId, :IpInfoSet
3461
+
3462
+ def initialize(natid=nil, vpcid=nil, ipinfoset=nil)
3463
+ @NatId = natid
3464
+ @VpcId = vpcid
3465
+ @IpInfoSet = ipinfoset
3466
+ end
3467
+
3468
+ def deserialize(params)
3469
+ @NatId = params['NatId']
3470
+ @VpcId = params['VpcId']
3471
+ unless params['IpInfoSet'].nil?
3472
+ @IpInfoSet = []
3473
+ params['IpInfoSet'].each do |i|
3474
+ ipinfo_tmp = IpInfo.new
3475
+ ipinfo_tmp.deserialize(i)
3476
+ @IpInfoSet << ipinfo_tmp
3477
+ end
3478
+ end
3479
+ end
3480
+ end
3481
+
3482
+ # UnbindIpsFromNatGateway返回参数结构体
3483
+ class UnbindIpsFromNatGatewayResponse < TencentCloud::Common::AbstractModel
3484
+ # @param TaskId: 任务ID
3485
+ # @type TaskId: Integer
3486
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
3487
+ # @type RequestId: String
3488
+
3489
+ attr_accessor :TaskId, :RequestId
3490
+
3491
+ def initialize(taskid=nil, requestid=nil)
3492
+ @TaskId = taskid
3493
+ @RequestId = requestid
3494
+ end
3495
+
3496
+ def deserialize(params)
3497
+ @TaskId = params['TaskId']
3498
+ @RequestId = params['RequestId']
3499
+ end
3500
+ end
3501
+
3502
+ # UnbindSubnetsFromNatGateway请求参数结构体
3503
+ class UnbindSubnetsFromNatGatewayRequest < TencentCloud::Common::AbstractModel
3504
+ # @param NatId: NAT网关ID,例如:nat-kdm476mp
3505
+ # @type NatId: String
3506
+ # @param VpcId: 私有网络ID,例如:vpc-kd7d06of
3507
+ # @type VpcId: String
3508
+ # @param SubnetIds: 子网ID列表,子网不区分加入NAT网关的转发方式
3509
+ # @type SubnetIds: Array
3510
+
3511
+ attr_accessor :NatId, :VpcId, :SubnetIds
3512
+
3513
+ def initialize(natid=nil, vpcid=nil, subnetids=nil)
3514
+ @NatId = natid
3515
+ @VpcId = vpcid
3516
+ @SubnetIds = subnetids
3517
+ end
3518
+
3519
+ def deserialize(params)
3520
+ @NatId = params['NatId']
3521
+ @VpcId = params['VpcId']
3522
+ @SubnetIds = params['SubnetIds']
3523
+ end
3524
+ end
3525
+
3526
+ # UnbindSubnetsFromNatGateway返回参数结构体
3527
+ class UnbindSubnetsFromNatGatewayResponse < TencentCloud::Common::AbstractModel
3528
+ # @param TaskId: 任务ID
3529
+ # @type TaskId: Integer
3530
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
3531
+ # @type RequestId: String
3532
+
3533
+ attr_accessor :TaskId, :RequestId
3534
+
3535
+ def initialize(taskid=nil, requestid=nil)
3536
+ @TaskId = taskid
3537
+ @RequestId = requestid
3538
+ end
3539
+
3540
+ def deserialize(params)
3541
+ @TaskId = params['TaskId']
3542
+ @RequestId = params['RequestId']
3543
+ end
3544
+ end
3545
+
3546
+ # UpgradeNatGateway请求参数结构体
3547
+ class UpgradeNatGatewayRequest < TencentCloud::Common::AbstractModel
3548
+ # @param NatId: NAT网关ID,例如:nat-kdm476mp
3549
+ # @type NatId: String
3550
+ # @param VpcId: 私有网络ID,例如:vpc-kd7d06of
3551
+ # @type VpcId: String
3552
+ # @param MaxConcurrent: 并发连接数规格;取值为1000000、3000000、10000000,分别对应小型、中型、大型NAT网关
3553
+ # @type MaxConcurrent: Integer
3554
+
3555
+ attr_accessor :NatId, :VpcId, :MaxConcurrent
3556
+
3557
+ def initialize(natid=nil, vpcid=nil, maxconcurrent=nil)
3558
+ @NatId = natid
3559
+ @VpcId = vpcid
3560
+ @MaxConcurrent = maxconcurrent
3561
+ end
3562
+
3563
+ def deserialize(params)
3564
+ @NatId = params['NatId']
3565
+ @VpcId = params['VpcId']
3566
+ @MaxConcurrent = params['MaxConcurrent']
3567
+ end
3568
+ end
3569
+
3570
+ # UpgradeNatGateway返回参数结构体
3571
+ class UpgradeNatGatewayResponse < TencentCloud::Common::AbstractModel
3572
+ # @param TaskId: 任务ID
3573
+ # @type TaskId: Integer
3574
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
3575
+ # @type RequestId: String
3576
+
3577
+ attr_accessor :TaskId, :RequestId
3578
+
3579
+ def initialize(taskid=nil, requestid=nil)
3580
+ @TaskId = taskid
3581
+ @RequestId = requestid
3582
+ end
3583
+
3584
+ def deserialize(params)
3585
+ @TaskId = params['TaskId']
3586
+ @RequestId = params['RequestId']
3587
+ end
3588
+ end
3589
+
3590
+ # VPC信息
3591
+ class VpcInfo < TencentCloud::Common::AbstractModel
3592
+ # @param VpcId: 私有网络的唯一ID。
3593
+ # @type VpcId: String
3594
+ # @param VpcName: VPC的名称。
3595
+ # @type VpcName: String
3596
+ # @param CidrBlock: VPC的CIDR。
3597
+ # @type CidrBlock: String
3598
+ # @param Zone: 可用区
3599
+ # @type Zone: String
3600
+ # @param State: VPC状态
3601
+ # @type State: String
3602
+ # @param CreateTime: 创建时间
3603
+ # @type CreateTime: String
3604
+ # @param IntVpcId: 整型私有网络ID。
3605
+ # @type IntVpcId: Integer
3606
+
3607
+ attr_accessor :VpcId, :VpcName, :CidrBlock, :Zone, :State, :CreateTime, :IntVpcId
3608
+
3609
+ def initialize(vpcid=nil, vpcname=nil, cidrblock=nil, zone=nil, state=nil, createtime=nil, intvpcid=nil)
3610
+ @VpcId = vpcid
3611
+ @VpcName = vpcname
3612
+ @CidrBlock = cidrblock
3613
+ @Zone = zone
3614
+ @State = state
3615
+ @CreateTime = createtime
3616
+ @IntVpcId = intvpcid
3617
+ end
3618
+
3619
+ def deserialize(params)
3620
+ @VpcId = params['VpcId']
3621
+ @VpcName = params['VpcName']
3622
+ @CidrBlock = params['CidrBlock']
3623
+ @Zone = params['Zone']
3624
+ @State = params['State']
3625
+ @CreateTime = params['CreateTime']
3626
+ @IntVpcId = params['IntVpcId']
3627
+ end
3628
+ end
3629
+
3630
+ # 对等连接对象
3631
+ class VpcPeerConnection < TencentCloud::Common::AbstractModel
3632
+ # @param VpcId: 本端VPC唯一ID
3633
+ # @type VpcId: String
3634
+ # @param PeerVpcId: 对端VPC唯一ID
3635
+ # @type PeerVpcId: String
3636
+ # @param AppId: 本端APPID
3637
+ # @type AppId: String
3638
+ # @param PeerAppId: 对端APPID
3639
+ # @type PeerAppId: String
3640
+ # @param VpcPeerConnectionId: 对等连接唯一ID
3641
+ # @type VpcPeerConnectionId: String
3642
+ # @param VpcPeerConnectionName: 对等连接名称
3643
+ # @type VpcPeerConnectionName: String
3644
+ # @param State: 对等连接状态。pending:申请中,available:运行中,expired:已过期,rejected:已拒绝,deleted:已删除
3645
+ # @type State: String
3646
+ # @param VpcZone: 本端VPC所属可用区
3647
+ # 注意:此字段可能返回 null,表示取不到有效值。
3648
+ # @type VpcZone: String
3649
+ # @param PeerVpcZone: 对端VPC所属可用区
3650
+ # 注意:此字段可能返回 null,表示取不到有效值。
3651
+ # @type PeerVpcZone: String
3652
+ # @param Uin: 本端Uin
3653
+ # @type Uin: Integer
3654
+ # @param PeerUin: 对端Uin
3655
+ # @type PeerUin: Integer
3656
+ # @param PeerType: 对等连接类型
3657
+ # @type PeerType: Integer
3658
+ # @param Bandwidth: 对等连接带宽
3659
+ # @type Bandwidth: Integer
3660
+ # @param Region: 本端VPC地域
3661
+ # @type Region: String
3662
+ # @param PeerRegion: 对端VPC地域
3663
+ # @type PeerRegion: String
3664
+ # @param DeleteFlag: 是否允许删除
3665
+ # 注意:此字段可能返回 null,表示取不到有效值。
3666
+ # @type DeleteFlag: Integer
3667
+ # @param CreateTime: 创建时间
3668
+ # @type CreateTime: String
3669
+
3670
+ attr_accessor :VpcId, :PeerVpcId, :AppId, :PeerAppId, :VpcPeerConnectionId, :VpcPeerConnectionName, :State, :VpcZone, :PeerVpcZone, :Uin, :PeerUin, :PeerType, :Bandwidth, :Region, :PeerRegion, :DeleteFlag, :CreateTime
3671
+
3672
+ def initialize(vpcid=nil, peervpcid=nil, appid=nil, peerappid=nil, vpcpeerconnectionid=nil, vpcpeerconnectionname=nil, state=nil, vpczone=nil, peervpczone=nil, uin=nil, peeruin=nil, peertype=nil, bandwidth=nil, region=nil, peerregion=nil, deleteflag=nil, createtime=nil)
3673
+ @VpcId = vpcid
3674
+ @PeerVpcId = peervpcid
3675
+ @AppId = appid
3676
+ @PeerAppId = peerappid
3677
+ @VpcPeerConnectionId = vpcpeerconnectionid
3678
+ @VpcPeerConnectionName = vpcpeerconnectionname
3679
+ @State = state
3680
+ @VpcZone = vpczone
3681
+ @PeerVpcZone = peervpczone
3682
+ @Uin = uin
3683
+ @PeerUin = peeruin
3684
+ @PeerType = peertype
3685
+ @Bandwidth = bandwidth
3686
+ @Region = region
3687
+ @PeerRegion = peerregion
3688
+ @DeleteFlag = deleteflag
3689
+ @CreateTime = createtime
3690
+ end
3691
+
3692
+ def deserialize(params)
3693
+ @VpcId = params['VpcId']
3694
+ @PeerVpcId = params['PeerVpcId']
3695
+ @AppId = params['AppId']
3696
+ @PeerAppId = params['PeerAppId']
3697
+ @VpcPeerConnectionId = params['VpcPeerConnectionId']
3698
+ @VpcPeerConnectionName = params['VpcPeerConnectionName']
3699
+ @State = params['State']
3700
+ @VpcZone = params['VpcZone']
3701
+ @PeerVpcZone = params['PeerVpcZone']
3702
+ @Uin = params['Uin']
3703
+ @PeerUin = params['PeerUin']
3704
+ @PeerType = params['PeerType']
3705
+ @Bandwidth = params['Bandwidth']
3706
+ @Region = params['Region']
3707
+ @PeerRegion = params['PeerRegion']
3708
+ @DeleteFlag = params['DeleteFlag']
3709
+ @CreateTime = params['CreateTime']
3710
+ end
3711
+ end
3712
+
3713
+ # VPC限额信息
3714
+ class VpcQuota < TencentCloud::Common::AbstractModel
3715
+ # @param TypeId: 配额类型ID
3716
+ # @type TypeId: Integer
3717
+ # @param Quota: 配额
3718
+ # @type Quota: Integer
3719
+
3720
+ attr_accessor :TypeId, :Quota
3721
+
3722
+ def initialize(typeid=nil, quota=nil)
3723
+ @TypeId = typeid
3724
+ @Quota = quota
3725
+ end
3726
+
3727
+ def deserialize(params)
3728
+ @TypeId = params['TypeId']
3729
+ @Quota = params['Quota']
3730
+ end
3731
+ end
3732
+
3733
+ # VPC占用资源
3734
+ class VpcResource < TencentCloud::Common::AbstractModel
3735
+ # @param VpcId: 私有网络ID
3736
+ # @type VpcId: String
3737
+ # @param VpcName: 私有网络名称
3738
+ # @type VpcName: String
3739
+ # @param CidrBlock: 私有网络的CIDR
3740
+ # @type CidrBlock: String
3741
+ # @param SubnetNum: 子网个数
3742
+ # @type SubnetNum: Integer
3743
+ # @param NatNum: NAT个数
3744
+ # @type NatNum: Integer
3745
+ # @param State: VPC状态
3746
+ # @type State: String
3747
+ # @param MonitorFlag: 是否开启监控
3748
+ # @type MonitorFlag: Boolean
3749
+ # @param CpmNum: 物理机个数
3750
+ # @type CpmNum: Integer
3751
+ # @param LeaveIpNum: 可用IP个数
3752
+ # @type LeaveIpNum: Integer
3753
+ # @param LbNum: 负载均衡个数
3754
+ # @type LbNum: Integer
3755
+ # @param TrafficMirrorNum: 流量镜像网关个数
3756
+ # @type TrafficMirrorNum: Integer
3757
+ # @param EipNum: 弹性IP个数
3758
+ # @type EipNum: Integer
3759
+ # @param PlgwNum: 专线网关个数
3760
+ # @type PlgwNum: Integer
3761
+ # @param PlvpNum: 专线通道个数
3762
+ # @type PlvpNum: Integer
3763
+ # @param SslVpnGwNum: ssl vpn网关个数
3764
+ # @type SslVpnGwNum: Integer
3765
+ # @param VpcPeerNum: 对等链接个数
3766
+ # @type VpcPeerNum: Integer
3767
+ # @param IpsecVpnGwNum: ipsec vpn网关个数
3768
+ # @type IpsecVpnGwNum: Integer
3769
+ # @param Zone: 可用区
3770
+ # @type Zone: String
3771
+ # @param CreateTime: 创建时间
3772
+ # @type CreateTime: String
3773
+ # @param IsOld: 是否老专区VPC
3774
+ # @type IsOld: Boolean
3775
+ # @param CcnServiceNum: 云联网服务个数
3776
+ # 注意:此字段可能返回 null,表示取不到有效值。
3777
+ # @type CcnServiceNum: Integer
3778
+ # @param VpcPeerLimitToAllRegion: VPC允许创建的对等连接个数
3779
+ # 注意:此字段可能返回 null,表示取不到有效值。
3780
+ # @type VpcPeerLimitToAllRegion: Integer
3781
+ # @param VpcPeerLimitToSameRegion: VPC允许创建的同地域的对等连接的个数
3782
+ # 注意:此字段可能返回 null,表示取不到有效值。
3783
+ # @type VpcPeerLimitToSameRegion: Integer
3784
+ # @param IntVpcId: 整型私有网络ID
3785
+ # @type IntVpcId: Integer
3786
+
3787
+ attr_accessor :VpcId, :VpcName, :CidrBlock, :SubnetNum, :NatNum, :State, :MonitorFlag, :CpmNum, :LeaveIpNum, :LbNum, :TrafficMirrorNum, :EipNum, :PlgwNum, :PlvpNum, :SslVpnGwNum, :VpcPeerNum, :IpsecVpnGwNum, :Zone, :CreateTime, :IsOld, :CcnServiceNum, :VpcPeerLimitToAllRegion, :VpcPeerLimitToSameRegion, :IntVpcId
3788
+
3789
+ def initialize(vpcid=nil, vpcname=nil, cidrblock=nil, subnetnum=nil, natnum=nil, state=nil, monitorflag=nil, cpmnum=nil, leaveipnum=nil, lbnum=nil, trafficmirrornum=nil, eipnum=nil, plgwnum=nil, plvpnum=nil, sslvpngwnum=nil, vpcpeernum=nil, ipsecvpngwnum=nil, zone=nil, createtime=nil, isold=nil, ccnservicenum=nil, vpcpeerlimittoallregion=nil, vpcpeerlimittosameregion=nil, intvpcid=nil)
3790
+ @VpcId = vpcid
3791
+ @VpcName = vpcname
3792
+ @CidrBlock = cidrblock
3793
+ @SubnetNum = subnetnum
3794
+ @NatNum = natnum
3795
+ @State = state
3796
+ @MonitorFlag = monitorflag
3797
+ @CpmNum = cpmnum
3798
+ @LeaveIpNum = leaveipnum
3799
+ @LbNum = lbnum
3800
+ @TrafficMirrorNum = trafficmirrornum
3801
+ @EipNum = eipnum
3802
+ @PlgwNum = plgwnum
3803
+ @PlvpNum = plvpnum
3804
+ @SslVpnGwNum = sslvpngwnum
3805
+ @VpcPeerNum = vpcpeernum
3806
+ @IpsecVpnGwNum = ipsecvpngwnum
3807
+ @Zone = zone
3808
+ @CreateTime = createtime
3809
+ @IsOld = isold
3810
+ @CcnServiceNum = ccnservicenum
3811
+ @VpcPeerLimitToAllRegion = vpcpeerlimittoallregion
3812
+ @VpcPeerLimitToSameRegion = vpcpeerlimittosameregion
3813
+ @IntVpcId = intvpcid
3814
+ end
3815
+
3816
+ def deserialize(params)
3817
+ @VpcId = params['VpcId']
3818
+ @VpcName = params['VpcName']
3819
+ @CidrBlock = params['CidrBlock']
3820
+ @SubnetNum = params['SubnetNum']
3821
+ @NatNum = params['NatNum']
3822
+ @State = params['State']
3823
+ @MonitorFlag = params['MonitorFlag']
3824
+ @CpmNum = params['CpmNum']
3825
+ @LeaveIpNum = params['LeaveIpNum']
3826
+ @LbNum = params['LbNum']
3827
+ @TrafficMirrorNum = params['TrafficMirrorNum']
3828
+ @EipNum = params['EipNum']
3829
+ @PlgwNum = params['PlgwNum']
3830
+ @PlvpNum = params['PlvpNum']
3831
+ @SslVpnGwNum = params['SslVpnGwNum']
3832
+ @VpcPeerNum = params['VpcPeerNum']
3833
+ @IpsecVpnGwNum = params['IpsecVpnGwNum']
3834
+ @Zone = params['Zone']
3835
+ @CreateTime = params['CreateTime']
3836
+ @IsOld = params['IsOld']
3837
+ @CcnServiceNum = params['CcnServiceNum']
3838
+ @VpcPeerLimitToAllRegion = params['VpcPeerLimitToAllRegion']
3839
+ @VpcPeerLimitToSameRegion = params['VpcPeerLimitToSameRegion']
3840
+ @IntVpcId = params['IntVpcId']
3841
+ end
3842
+ end
3843
+
3844
+ # 创建VPC下默认子网
3845
+ class VpcSubnetCreateInfo < TencentCloud::Common::AbstractModel
3846
+ # @param SubnetName: 子网名称
3847
+ # @type SubnetName: String
3848
+ # @param CidrBlock: 子网的CIDR
3849
+ # @type CidrBlock: String
3850
+ # @param Zone: 子网的可用区
3851
+ # @type Zone: String
3852
+
3853
+ attr_accessor :SubnetName, :CidrBlock, :Zone
3854
+
3855
+ def initialize(subnetname=nil, cidrblock=nil, zone=nil)
3856
+ @SubnetName = subnetname
3857
+ @CidrBlock = cidrblock
3858
+ @Zone = zone
3859
+ end
3860
+
3861
+ def deserialize(params)
3862
+ @SubnetName = params['SubnetName']
3863
+ @CidrBlock = params['CidrBlock']
3864
+ @Zone = params['Zone']
3865
+ end
3866
+ end
3867
+
3868
+ # VPC视图子网信息
3869
+ class VpcSubnetViewInfo < TencentCloud::Common::AbstractModel
3870
+ # @param SubnetId: 子网ID
3871
+ # @type SubnetId: String
3872
+ # @param SubnetName: 子网名称
3873
+ # @type SubnetName: String
3874
+ # @param CidrBlock: 子网CIDR
3875
+ # @type CidrBlock: String
3876
+ # @param CpmNum: 子网下设备个数
3877
+ # @type CpmNum: Integer
3878
+ # @param LbNum: 内网负载均衡个数
3879
+ # @type LbNum: Integer
3880
+ # @param Zone: 子网所在可用区
3881
+ # @type Zone: String
3882
+
3883
+ attr_accessor :SubnetId, :SubnetName, :CidrBlock, :CpmNum, :LbNum, :Zone
3884
+
3885
+ def initialize(subnetid=nil, subnetname=nil, cidrblock=nil, cpmnum=nil, lbnum=nil, zone=nil)
3886
+ @SubnetId = subnetid
3887
+ @SubnetName = subnetname
3888
+ @CidrBlock = cidrblock
3889
+ @CpmNum = cpmnum
3890
+ @LbNum = lbnum
3891
+ @Zone = zone
3892
+ end
3893
+
3894
+ def deserialize(params)
3895
+ @SubnetId = params['SubnetId']
3896
+ @SubnetName = params['SubnetName']
3897
+ @CidrBlock = params['CidrBlock']
3898
+ @CpmNum = params['CpmNum']
3899
+ @LbNum = params['LbNum']
3900
+ @Zone = params['Zone']
3901
+ end
3902
+ end
3903
+
3904
+ # VPC视图信息
3905
+ class VpcViewInfo < TencentCloud::Common::AbstractModel
3906
+ # @param VpcId: 私有网络ID
3907
+ # @type VpcId: String
3908
+ # @param VpcName: 私有网络名称
3909
+ # @type VpcName: String
3910
+ # @param CidrBlock: 私有网络CIDR
3911
+ # @type CidrBlock: String
3912
+ # @param Zone: 私有网络所在可用区
3913
+ # @type Zone: String
3914
+ # @param LbNum: 外网负载均衡个数
3915
+ # @type LbNum: Integer
3916
+ # @param EipNum: 弹性公网IP个数
3917
+ # @type EipNum: Integer
3918
+ # @param NatNum: NAT网关个数
3919
+ # @type NatNum: Integer
3920
+ # @param SubnetSet: 子网列表
3921
+ # @type SubnetSet: Array
3922
+
3923
+ attr_accessor :VpcId, :VpcName, :CidrBlock, :Zone, :LbNum, :EipNum, :NatNum, :SubnetSet
3924
+
3925
+ def initialize(vpcid=nil, vpcname=nil, cidrblock=nil, zone=nil, lbnum=nil, eipnum=nil, natnum=nil, subnetset=nil)
3926
+ @VpcId = vpcid
3927
+ @VpcName = vpcname
3928
+ @CidrBlock = cidrblock
3929
+ @Zone = zone
3930
+ @LbNum = lbnum
3931
+ @EipNum = eipnum
3932
+ @NatNum = natnum
3933
+ @SubnetSet = subnetset
3934
+ end
3935
+
3936
+ def deserialize(params)
3937
+ @VpcId = params['VpcId']
3938
+ @VpcName = params['VpcName']
3939
+ @CidrBlock = params['CidrBlock']
3940
+ @Zone = params['Zone']
3941
+ @LbNum = params['LbNum']
3942
+ @EipNum = params['EipNum']
3943
+ @NatNum = params['NatNum']
3944
+ unless params['SubnetSet'].nil?
3945
+ @SubnetSet = []
3946
+ params['SubnetSet'].each do |i|
3947
+ vpcsubnetviewinfo_tmp = VpcSubnetViewInfo.new
3948
+ vpcsubnetviewinfo_tmp.deserialize(i)
3949
+ @SubnetSet << vpcsubnetviewinfo_tmp
3950
+ end
3951
+ end
3952
+ end
3953
+ end
3954
+
3955
+ # VPN通道对象。
3956
+ class VpnConnection < TencentCloud::Common::AbstractModel
3957
+ # @param VpnConnectionId: 通道实例ID。
3958
+ # @type VpnConnectionId: String
3959
+ # @param VpnConnectionName: 通道名称。
3960
+ # @type VpnConnectionName: String
3961
+ # @param VpcId: VPC实例ID。
3962
+ # @type VpcId: String
3963
+ # @param VpnGatewayId: VPN网关实例ID。
3964
+ # @type VpnGatewayId: String
3965
+ # @param CustomerGatewayId: 对端网关实例ID。
3966
+ # @type CustomerGatewayId: String
3967
+ # @param PreShareKey: 预共享密钥。
3968
+ # @type PreShareKey: String
3969
+ # @param VpnProto: 通道传输协议。
3970
+ # @type VpnProto: String
3971
+ # @param CreateTime: 创建时间。
3972
+ # @type CreateTime: String
3973
+ # @param State: 通道的生产状态
3974
+ # @type State: String
3975
+ # @param NetStatus: 通道连接状态
3976
+ # @type NetStatus: String
3977
+ # @param SecurityPolicyDatabaseSet: SPD。
3978
+ # @type SecurityPolicyDatabaseSet: Array
3979
+ # @param IKEOptionsSpecification: IKE选项。
3980
+ # @type IKEOptionsSpecification: :class:`Tencentcloud::Bmvpc.v20180625.models.IKEOptionsSpecification`
3981
+ # @param IPSECOptionsSpecification: IPSEC选项。
3982
+ # @type IPSECOptionsSpecification: :class:`Tencentcloud::Bmvpc.v20180625.models.IPSECOptionsSpecification`
3983
+ # @param Zone: 可用区
3984
+ # @type Zone: String
3985
+ # @param VpcCidrBlock: VPC网段
3986
+ # @type VpcCidrBlock: String
3987
+ # @param VpcName: VPC名称
3988
+ # @type VpcName: String
3989
+ # @param VpnGatewayName: VPN网关名称
3990
+ # @type VpnGatewayName: String
3991
+ # @param CustomerGatewayName: 对端网关名称
3992
+ # @type CustomerGatewayName: String
3993
+ # @param DestinationCidr: IPSEC VPN通道路由策略目的端地址
3994
+ # 注意:此字段可能返回 null,表示取不到有效值。
3995
+ # @type DestinationCidr: Array
3996
+ # @param SourceCidr: IPSEC VPN通道路由策略源端地址
3997
+ # 注意:此字段可能返回 null,表示取不到有效值。
3998
+ # @type SourceCidr: Array
3999
+
4000
+ attr_accessor :VpnConnectionId, :VpnConnectionName, :VpcId, :VpnGatewayId, :CustomerGatewayId, :PreShareKey, :VpnProto, :CreateTime, :State, :NetStatus, :SecurityPolicyDatabaseSet, :IKEOptionsSpecification, :IPSECOptionsSpecification, :Zone, :VpcCidrBlock, :VpcName, :VpnGatewayName, :CustomerGatewayName, :DestinationCidr, :SourceCidr
4001
+
4002
+ def initialize(vpnconnectionid=nil, vpnconnectionname=nil, vpcid=nil, vpngatewayid=nil, customergatewayid=nil, presharekey=nil, vpnproto=nil, createtime=nil, state=nil, netstatus=nil, securitypolicydatabaseset=nil, ikeoptionsspecification=nil, ipsecoptionsspecification=nil, zone=nil, vpccidrblock=nil, vpcname=nil, vpngatewayname=nil, customergatewayname=nil, destinationcidr=nil, sourcecidr=nil)
4003
+ @VpnConnectionId = vpnconnectionid
4004
+ @VpnConnectionName = vpnconnectionname
4005
+ @VpcId = vpcid
4006
+ @VpnGatewayId = vpngatewayid
4007
+ @CustomerGatewayId = customergatewayid
4008
+ @PreShareKey = presharekey
4009
+ @VpnProto = vpnproto
4010
+ @CreateTime = createtime
4011
+ @State = state
4012
+ @NetStatus = netstatus
4013
+ @SecurityPolicyDatabaseSet = securitypolicydatabaseset
4014
+ @IKEOptionsSpecification = ikeoptionsspecification
4015
+ @IPSECOptionsSpecification = ipsecoptionsspecification
4016
+ @Zone = zone
4017
+ @VpcCidrBlock = vpccidrblock
4018
+ @VpcName = vpcname
4019
+ @VpnGatewayName = vpngatewayname
4020
+ @CustomerGatewayName = customergatewayname
4021
+ @DestinationCidr = destinationcidr
4022
+ @SourceCidr = sourcecidr
4023
+ end
4024
+
4025
+ def deserialize(params)
4026
+ @VpnConnectionId = params['VpnConnectionId']
4027
+ @VpnConnectionName = params['VpnConnectionName']
4028
+ @VpcId = params['VpcId']
4029
+ @VpnGatewayId = params['VpnGatewayId']
4030
+ @CustomerGatewayId = params['CustomerGatewayId']
4031
+ @PreShareKey = params['PreShareKey']
4032
+ @VpnProto = params['VpnProto']
4033
+ @CreateTime = params['CreateTime']
4034
+ @State = params['State']
4035
+ @NetStatus = params['NetStatus']
4036
+ unless params['SecurityPolicyDatabaseSet'].nil?
4037
+ @SecurityPolicyDatabaseSet = []
4038
+ params['SecurityPolicyDatabaseSet'].each do |i|
4039
+ securitypolicydatabase_tmp = SecurityPolicyDatabase.new
4040
+ securitypolicydatabase_tmp.deserialize(i)
4041
+ @SecurityPolicyDatabaseSet << securitypolicydatabase_tmp
4042
+ end
4043
+ end
4044
+ unless params['IKEOptionsSpecification'].nil?
4045
+ @IKEOptionsSpecification = IKEOptionsSpecification.new
4046
+ @IKEOptionsSpecification.deserialize(params['IKEOptionsSpecification'])
4047
+ end
4048
+ unless params['IPSECOptionsSpecification'].nil?
4049
+ @IPSECOptionsSpecification = IPSECOptionsSpecification.new
4050
+ @IPSECOptionsSpecification.deserialize(params['IPSECOptionsSpecification'])
4051
+ end
4052
+ @Zone = params['Zone']
4053
+ @VpcCidrBlock = params['VpcCidrBlock']
4054
+ @VpcName = params['VpcName']
4055
+ @VpnGatewayName = params['VpnGatewayName']
4056
+ @CustomerGatewayName = params['CustomerGatewayName']
4057
+ @DestinationCidr = params['DestinationCidr']
4058
+ @SourceCidr = params['SourceCidr']
4059
+ end
4060
+ end
4061
+
4062
+ # VPN网关对象。
4063
+ class VpnGateway < TencentCloud::Common::AbstractModel
4064
+ # @param VpnGatewayId: 网关实例ID。
4065
+ # @type VpnGatewayId: String
4066
+ # @param VpcId: VPC实例ID。
4067
+ # @type VpcId: String
4068
+ # @param VpnGatewayName: 网关实例名称。
4069
+ # @type VpnGatewayName: String
4070
+ # @param VpcCidrBlock: VPC网段
4071
+ # @type VpcCidrBlock: String
4072
+ # @param VpcName: VPC名称
4073
+ # @type VpcName: String
4074
+ # @param InternetMaxBandwidthOut: 网关出带宽。
4075
+ # @type InternetMaxBandwidthOut: Integer
4076
+ # @param State: 网关实例状态
4077
+ # @type State: String
4078
+ # @param PublicIpAddress: 网关公网IP。
4079
+ # @type PublicIpAddress: String
4080
+ # @param CreateTime: 创建时间。
4081
+ # @type CreateTime: String
4082
+ # @param Zone: 可用区,如:ap-guangzhou
4083
+ # @type Zone: String
4084
+ # @param VpnConnNum: VPN网关的通道数
4085
+ # @type VpnConnNum: Integer
4086
+
4087
+ attr_accessor :VpnGatewayId, :VpcId, :VpnGatewayName, :VpcCidrBlock, :VpcName, :InternetMaxBandwidthOut, :State, :PublicIpAddress, :CreateTime, :Zone, :VpnConnNum
4088
+
4089
+ def initialize(vpngatewayid=nil, vpcid=nil, vpngatewayname=nil, vpccidrblock=nil, vpcname=nil, internetmaxbandwidthout=nil, state=nil, publicipaddress=nil, createtime=nil, zone=nil, vpnconnnum=nil)
4090
+ @VpnGatewayId = vpngatewayid
4091
+ @VpcId = vpcid
4092
+ @VpnGatewayName = vpngatewayname
4093
+ @VpcCidrBlock = vpccidrblock
4094
+ @VpcName = vpcname
4095
+ @InternetMaxBandwidthOut = internetmaxbandwidthout
4096
+ @State = state
4097
+ @PublicIpAddress = publicipaddress
4098
+ @CreateTime = createtime
4099
+ @Zone = zone
4100
+ @VpnConnNum = vpnconnnum
4101
+ end
4102
+
4103
+ def deserialize(params)
4104
+ @VpnGatewayId = params['VpnGatewayId']
4105
+ @VpcId = params['VpcId']
4106
+ @VpnGatewayName = params['VpnGatewayName']
4107
+ @VpcCidrBlock = params['VpcCidrBlock']
4108
+ @VpcName = params['VpcName']
4109
+ @InternetMaxBandwidthOut = params['InternetMaxBandwidthOut']
4110
+ @State = params['State']
4111
+ @PublicIpAddress = params['PublicIpAddress']
4112
+ @CreateTime = params['CreateTime']
4113
+ @Zone = params['Zone']
4114
+ @VpnConnNum = params['VpnConnNum']
4115
+ end
4116
+ end
4117
+
4118
+ end
4119
+ end
4120
+ end
4121
+