tencentcloud-sdk-bmvpc 1.0.200

Sign up to get free protection for your applications and to get access to all the features.
@@ -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
+