aws-sdk-directconnect 1.0.0 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -46,6 +46,10 @@ module Aws::DirectConnect
46
46
  CreateBGPPeerRequest = Shapes::StructureShape.new(name: 'CreateBGPPeerRequest')
47
47
  CreateBGPPeerResponse = Shapes::StructureShape.new(name: 'CreateBGPPeerResponse')
48
48
  CreateConnectionRequest = Shapes::StructureShape.new(name: 'CreateConnectionRequest')
49
+ CreateDirectConnectGatewayAssociationRequest = Shapes::StructureShape.new(name: 'CreateDirectConnectGatewayAssociationRequest')
50
+ CreateDirectConnectGatewayAssociationResult = Shapes::StructureShape.new(name: 'CreateDirectConnectGatewayAssociationResult')
51
+ CreateDirectConnectGatewayRequest = Shapes::StructureShape.new(name: 'CreateDirectConnectGatewayRequest')
52
+ CreateDirectConnectGatewayResult = Shapes::StructureShape.new(name: 'CreateDirectConnectGatewayResult')
49
53
  CreateInterconnectRequest = Shapes::StructureShape.new(name: 'CreateInterconnectRequest')
50
54
  CreateLagRequest = Shapes::StructureShape.new(name: 'CreateLagRequest')
51
55
  CreatePrivateVirtualInterfaceRequest = Shapes::StructureShape.new(name: 'CreatePrivateVirtualInterfaceRequest')
@@ -54,6 +58,10 @@ module Aws::DirectConnect
54
58
  DeleteBGPPeerRequest = Shapes::StructureShape.new(name: 'DeleteBGPPeerRequest')
55
59
  DeleteBGPPeerResponse = Shapes::StructureShape.new(name: 'DeleteBGPPeerResponse')
56
60
  DeleteConnectionRequest = Shapes::StructureShape.new(name: 'DeleteConnectionRequest')
61
+ DeleteDirectConnectGatewayAssociationRequest = Shapes::StructureShape.new(name: 'DeleteDirectConnectGatewayAssociationRequest')
62
+ DeleteDirectConnectGatewayAssociationResult = Shapes::StructureShape.new(name: 'DeleteDirectConnectGatewayAssociationResult')
63
+ DeleteDirectConnectGatewayRequest = Shapes::StructureShape.new(name: 'DeleteDirectConnectGatewayRequest')
64
+ DeleteDirectConnectGatewayResult = Shapes::StructureShape.new(name: 'DeleteDirectConnectGatewayResult')
57
65
  DeleteInterconnectRequest = Shapes::StructureShape.new(name: 'DeleteInterconnectRequest')
58
66
  DeleteInterconnectResponse = Shapes::StructureShape.new(name: 'DeleteInterconnectResponse')
59
67
  DeleteLagRequest = Shapes::StructureShape.new(name: 'DeleteLagRequest')
@@ -63,6 +71,12 @@ module Aws::DirectConnect
63
71
  DescribeConnectionLoaResponse = Shapes::StructureShape.new(name: 'DescribeConnectionLoaResponse')
64
72
  DescribeConnectionsOnInterconnectRequest = Shapes::StructureShape.new(name: 'DescribeConnectionsOnInterconnectRequest')
65
73
  DescribeConnectionsRequest = Shapes::StructureShape.new(name: 'DescribeConnectionsRequest')
74
+ DescribeDirectConnectGatewayAssociationsRequest = Shapes::StructureShape.new(name: 'DescribeDirectConnectGatewayAssociationsRequest')
75
+ DescribeDirectConnectGatewayAssociationsResult = Shapes::StructureShape.new(name: 'DescribeDirectConnectGatewayAssociationsResult')
76
+ DescribeDirectConnectGatewayAttachmentsRequest = Shapes::StructureShape.new(name: 'DescribeDirectConnectGatewayAttachmentsRequest')
77
+ DescribeDirectConnectGatewayAttachmentsResult = Shapes::StructureShape.new(name: 'DescribeDirectConnectGatewayAttachmentsResult')
78
+ DescribeDirectConnectGatewaysRequest = Shapes::StructureShape.new(name: 'DescribeDirectConnectGatewaysRequest')
79
+ DescribeDirectConnectGatewaysResult = Shapes::StructureShape.new(name: 'DescribeDirectConnectGatewaysResult')
66
80
  DescribeHostedConnectionsRequest = Shapes::StructureShape.new(name: 'DescribeHostedConnectionsRequest')
67
81
  DescribeInterconnectLoaRequest = Shapes::StructureShape.new(name: 'DescribeInterconnectLoaRequest')
68
82
  DescribeInterconnectLoaResponse = Shapes::StructureShape.new(name: 'DescribeInterconnectLoaResponse')
@@ -73,6 +87,17 @@ module Aws::DirectConnect
73
87
  DescribeTagsResponse = Shapes::StructureShape.new(name: 'DescribeTagsResponse')
74
88
  DescribeVirtualInterfacesRequest = Shapes::StructureShape.new(name: 'DescribeVirtualInterfacesRequest')
75
89
  DirectConnectClientException = Shapes::StructureShape.new(name: 'DirectConnectClientException')
90
+ DirectConnectGateway = Shapes::StructureShape.new(name: 'DirectConnectGateway')
91
+ DirectConnectGatewayAssociation = Shapes::StructureShape.new(name: 'DirectConnectGatewayAssociation')
92
+ DirectConnectGatewayAssociationList = Shapes::ListShape.new(name: 'DirectConnectGatewayAssociationList')
93
+ DirectConnectGatewayAssociationState = Shapes::StringShape.new(name: 'DirectConnectGatewayAssociationState')
94
+ DirectConnectGatewayAttachment = Shapes::StructureShape.new(name: 'DirectConnectGatewayAttachment')
95
+ DirectConnectGatewayAttachmentList = Shapes::ListShape.new(name: 'DirectConnectGatewayAttachmentList')
96
+ DirectConnectGatewayAttachmentState = Shapes::StringShape.new(name: 'DirectConnectGatewayAttachmentState')
97
+ DirectConnectGatewayId = Shapes::StringShape.new(name: 'DirectConnectGatewayId')
98
+ DirectConnectGatewayList = Shapes::ListShape.new(name: 'DirectConnectGatewayList')
99
+ DirectConnectGatewayName = Shapes::StringShape.new(name: 'DirectConnectGatewayName')
100
+ DirectConnectGatewayState = Shapes::StringShape.new(name: 'DirectConnectGatewayState')
76
101
  DirectConnectServerException = Shapes::StructureShape.new(name: 'DirectConnectServerException')
77
102
  DisassociateConnectionFromLagRequest = Shapes::StructureShape.new(name: 'DisassociateConnectionFromLagRequest')
78
103
  DuplicateTagKeysException = Shapes::StructureShape.new(name: 'DuplicateTagKeysException')
@@ -98,12 +123,15 @@ module Aws::DirectConnect
98
123
  LocationList = Shapes::ListShape.new(name: 'LocationList')
99
124
  LocationName = Shapes::StringShape.new(name: 'LocationName')
100
125
  Locations = Shapes::StructureShape.new(name: 'Locations')
126
+ LongAsn = Shapes::IntegerShape.new(name: 'LongAsn')
127
+ MaxResultSetSize = Shapes::IntegerShape.new(name: 'MaxResultSetSize')
101
128
  NewBGPPeer = Shapes::StructureShape.new(name: 'NewBGPPeer')
102
129
  NewPrivateVirtualInterface = Shapes::StructureShape.new(name: 'NewPrivateVirtualInterface')
103
130
  NewPrivateVirtualInterfaceAllocation = Shapes::StructureShape.new(name: 'NewPrivateVirtualInterfaceAllocation')
104
131
  NewPublicVirtualInterface = Shapes::StructureShape.new(name: 'NewPublicVirtualInterface')
105
132
  NewPublicVirtualInterfaceAllocation = Shapes::StructureShape.new(name: 'NewPublicVirtualInterfaceAllocation')
106
133
  OwnerAccount = Shapes::StringShape.new(name: 'OwnerAccount')
134
+ PaginationToken = Shapes::StringShape.new(name: 'PaginationToken')
107
135
  PartnerName = Shapes::StringShape.new(name: 'PartnerName')
108
136
  ProviderName = Shapes::StringShape.new(name: 'ProviderName')
109
137
  Region = Shapes::StringShape.new(name: 'Region')
@@ -114,6 +142,7 @@ module Aws::DirectConnect
114
142
  RouteFilterPrefix = Shapes::StructureShape.new(name: 'RouteFilterPrefix')
115
143
  RouteFilterPrefixList = Shapes::ListShape.new(name: 'RouteFilterPrefixList')
116
144
  RouterConfig = Shapes::StringShape.new(name: 'RouterConfig')
145
+ StateChangeError = Shapes::StringShape.new(name: 'StateChangeError')
117
146
  Tag = Shapes::StructureShape.new(name: 'Tag')
118
147
  TagKey = Shapes::StringShape.new(name: 'TagKey')
119
148
  TagKeyList = Shapes::ListShape.new(name: 'TagKeyList')
@@ -129,12 +158,14 @@ module Aws::DirectConnect
129
158
  VirtualGateway = Shapes::StructureShape.new(name: 'VirtualGateway')
130
159
  VirtualGatewayId = Shapes::StringShape.new(name: 'VirtualGatewayId')
131
160
  VirtualGatewayList = Shapes::ListShape.new(name: 'VirtualGatewayList')
161
+ VirtualGatewayRegion = Shapes::StringShape.new(name: 'VirtualGatewayRegion')
132
162
  VirtualGatewayState = Shapes::StringShape.new(name: 'VirtualGatewayState')
133
163
  VirtualGateways = Shapes::StructureShape.new(name: 'VirtualGateways')
134
164
  VirtualInterface = Shapes::StructureShape.new(name: 'VirtualInterface')
135
165
  VirtualInterfaceId = Shapes::StringShape.new(name: 'VirtualInterfaceId')
136
166
  VirtualInterfaceList = Shapes::ListShape.new(name: 'VirtualInterfaceList')
137
167
  VirtualInterfaceName = Shapes::StringShape.new(name: 'VirtualInterfaceName')
168
+ VirtualInterfaceRegion = Shapes::StringShape.new(name: 'VirtualInterfaceRegion')
138
169
  VirtualInterfaceState = Shapes::StringShape.new(name: 'VirtualInterfaceState')
139
170
  VirtualInterfaceType = Shapes::StringShape.new(name: 'VirtualInterfaceType')
140
171
  VirtualInterfaces = Shapes::StructureShape.new(name: 'VirtualInterfaces')
@@ -193,7 +224,8 @@ module Aws::DirectConnect
193
224
  ConfirmConnectionResponse.struct_class = Types::ConfirmConnectionResponse
194
225
 
195
226
  ConfirmPrivateVirtualInterfaceRequest.add_member(:virtual_interface_id, Shapes::ShapeRef.new(shape: VirtualInterfaceId, required: true, location_name: "virtualInterfaceId"))
196
- ConfirmPrivateVirtualInterfaceRequest.add_member(:virtual_gateway_id, Shapes::ShapeRef.new(shape: VirtualGatewayId, required: true, location_name: "virtualGatewayId"))
227
+ ConfirmPrivateVirtualInterfaceRequest.add_member(:virtual_gateway_id, Shapes::ShapeRef.new(shape: VirtualGatewayId, location_name: "virtualGatewayId"))
228
+ ConfirmPrivateVirtualInterfaceRequest.add_member(:direct_connect_gateway_id, Shapes::ShapeRef.new(shape: DirectConnectGatewayId, location_name: "directConnectGatewayId"))
197
229
  ConfirmPrivateVirtualInterfaceRequest.struct_class = Types::ConfirmPrivateVirtualInterfaceRequest
198
230
 
199
231
  ConfirmPrivateVirtualInterfaceResponse.add_member(:virtual_interface_state, Shapes::ShapeRef.new(shape: VirtualInterfaceState, location_name: "virtualInterfaceState"))
@@ -237,6 +269,20 @@ module Aws::DirectConnect
237
269
  CreateConnectionRequest.add_member(:lag_id, Shapes::ShapeRef.new(shape: LagId, location_name: "lagId"))
238
270
  CreateConnectionRequest.struct_class = Types::CreateConnectionRequest
239
271
 
272
+ CreateDirectConnectGatewayAssociationRequest.add_member(:direct_connect_gateway_id, Shapes::ShapeRef.new(shape: DirectConnectGatewayId, required: true, location_name: "directConnectGatewayId"))
273
+ CreateDirectConnectGatewayAssociationRequest.add_member(:virtual_gateway_id, Shapes::ShapeRef.new(shape: VirtualGatewayId, required: true, location_name: "virtualGatewayId"))
274
+ CreateDirectConnectGatewayAssociationRequest.struct_class = Types::CreateDirectConnectGatewayAssociationRequest
275
+
276
+ CreateDirectConnectGatewayAssociationResult.add_member(:direct_connect_gateway_association, Shapes::ShapeRef.new(shape: DirectConnectGatewayAssociation, location_name: "directConnectGatewayAssociation"))
277
+ CreateDirectConnectGatewayAssociationResult.struct_class = Types::CreateDirectConnectGatewayAssociationResult
278
+
279
+ CreateDirectConnectGatewayRequest.add_member(:direct_connect_gateway_name, Shapes::ShapeRef.new(shape: DirectConnectGatewayName, required: true, location_name: "directConnectGatewayName"))
280
+ CreateDirectConnectGatewayRequest.add_member(:amazon_side_asn, Shapes::ShapeRef.new(shape: LongAsn, location_name: "amazonSideAsn"))
281
+ CreateDirectConnectGatewayRequest.struct_class = Types::CreateDirectConnectGatewayRequest
282
+
283
+ CreateDirectConnectGatewayResult.add_member(:direct_connect_gateway, Shapes::ShapeRef.new(shape: DirectConnectGateway, location_name: "directConnectGateway"))
284
+ CreateDirectConnectGatewayResult.struct_class = Types::CreateDirectConnectGatewayResult
285
+
240
286
  CreateInterconnectRequest.add_member(:interconnect_name, Shapes::ShapeRef.new(shape: InterconnectName, required: true, location_name: "interconnectName"))
241
287
  CreateInterconnectRequest.add_member(:bandwidth, Shapes::ShapeRef.new(shape: Bandwidth, required: true, location_name: "bandwidth"))
242
288
  CreateInterconnectRequest.add_member(:location, Shapes::ShapeRef.new(shape: LocationCode, required: true, location_name: "location"))
@@ -269,6 +315,19 @@ module Aws::DirectConnect
269
315
  DeleteConnectionRequest.add_member(:connection_id, Shapes::ShapeRef.new(shape: ConnectionId, required: true, location_name: "connectionId"))
270
316
  DeleteConnectionRequest.struct_class = Types::DeleteConnectionRequest
271
317
 
318
+ DeleteDirectConnectGatewayAssociationRequest.add_member(:direct_connect_gateway_id, Shapes::ShapeRef.new(shape: DirectConnectGatewayId, required: true, location_name: "directConnectGatewayId"))
319
+ DeleteDirectConnectGatewayAssociationRequest.add_member(:virtual_gateway_id, Shapes::ShapeRef.new(shape: VirtualGatewayId, required: true, location_name: "virtualGatewayId"))
320
+ DeleteDirectConnectGatewayAssociationRequest.struct_class = Types::DeleteDirectConnectGatewayAssociationRequest
321
+
322
+ DeleteDirectConnectGatewayAssociationResult.add_member(:direct_connect_gateway_association, Shapes::ShapeRef.new(shape: DirectConnectGatewayAssociation, location_name: "directConnectGatewayAssociation"))
323
+ DeleteDirectConnectGatewayAssociationResult.struct_class = Types::DeleteDirectConnectGatewayAssociationResult
324
+
325
+ DeleteDirectConnectGatewayRequest.add_member(:direct_connect_gateway_id, Shapes::ShapeRef.new(shape: DirectConnectGatewayId, required: true, location_name: "directConnectGatewayId"))
326
+ DeleteDirectConnectGatewayRequest.struct_class = Types::DeleteDirectConnectGatewayRequest
327
+
328
+ DeleteDirectConnectGatewayResult.add_member(:direct_connect_gateway, Shapes::ShapeRef.new(shape: DirectConnectGateway, location_name: "directConnectGateway"))
329
+ DeleteDirectConnectGatewayResult.struct_class = Types::DeleteDirectConnectGatewayResult
330
+
272
331
  DeleteInterconnectRequest.add_member(:interconnect_id, Shapes::ShapeRef.new(shape: InterconnectId, required: true, location_name: "interconnectId"))
273
332
  DeleteInterconnectRequest.struct_class = Types::DeleteInterconnectRequest
274
333
 
@@ -298,6 +357,35 @@ module Aws::DirectConnect
298
357
  DescribeConnectionsRequest.add_member(:connection_id, Shapes::ShapeRef.new(shape: ConnectionId, location_name: "connectionId"))
299
358
  DescribeConnectionsRequest.struct_class = Types::DescribeConnectionsRequest
300
359
 
360
+ DescribeDirectConnectGatewayAssociationsRequest.add_member(:direct_connect_gateway_id, Shapes::ShapeRef.new(shape: DirectConnectGatewayId, location_name: "directConnectGatewayId"))
361
+ DescribeDirectConnectGatewayAssociationsRequest.add_member(:virtual_gateway_id, Shapes::ShapeRef.new(shape: VirtualGatewayId, location_name: "virtualGatewayId"))
362
+ DescribeDirectConnectGatewayAssociationsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResultSetSize, location_name: "maxResults"))
363
+ DescribeDirectConnectGatewayAssociationsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location_name: "nextToken"))
364
+ DescribeDirectConnectGatewayAssociationsRequest.struct_class = Types::DescribeDirectConnectGatewayAssociationsRequest
365
+
366
+ DescribeDirectConnectGatewayAssociationsResult.add_member(:direct_connect_gateway_associations, Shapes::ShapeRef.new(shape: DirectConnectGatewayAssociationList, location_name: "directConnectGatewayAssociations"))
367
+ DescribeDirectConnectGatewayAssociationsResult.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location_name: "nextToken"))
368
+ DescribeDirectConnectGatewayAssociationsResult.struct_class = Types::DescribeDirectConnectGatewayAssociationsResult
369
+
370
+ DescribeDirectConnectGatewayAttachmentsRequest.add_member(:direct_connect_gateway_id, Shapes::ShapeRef.new(shape: DirectConnectGatewayId, location_name: "directConnectGatewayId"))
371
+ DescribeDirectConnectGatewayAttachmentsRequest.add_member(:virtual_interface_id, Shapes::ShapeRef.new(shape: VirtualInterfaceId, location_name: "virtualInterfaceId"))
372
+ DescribeDirectConnectGatewayAttachmentsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResultSetSize, location_name: "maxResults"))
373
+ DescribeDirectConnectGatewayAttachmentsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location_name: "nextToken"))
374
+ DescribeDirectConnectGatewayAttachmentsRequest.struct_class = Types::DescribeDirectConnectGatewayAttachmentsRequest
375
+
376
+ DescribeDirectConnectGatewayAttachmentsResult.add_member(:direct_connect_gateway_attachments, Shapes::ShapeRef.new(shape: DirectConnectGatewayAttachmentList, location_name: "directConnectGatewayAttachments"))
377
+ DescribeDirectConnectGatewayAttachmentsResult.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location_name: "nextToken"))
378
+ DescribeDirectConnectGatewayAttachmentsResult.struct_class = Types::DescribeDirectConnectGatewayAttachmentsResult
379
+
380
+ DescribeDirectConnectGatewaysRequest.add_member(:direct_connect_gateway_id, Shapes::ShapeRef.new(shape: DirectConnectGatewayId, location_name: "directConnectGatewayId"))
381
+ DescribeDirectConnectGatewaysRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResultSetSize, location_name: "maxResults"))
382
+ DescribeDirectConnectGatewaysRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location_name: "nextToken"))
383
+ DescribeDirectConnectGatewaysRequest.struct_class = Types::DescribeDirectConnectGatewaysRequest
384
+
385
+ DescribeDirectConnectGatewaysResult.add_member(:direct_connect_gateways, Shapes::ShapeRef.new(shape: DirectConnectGatewayList, location_name: "directConnectGateways"))
386
+ DescribeDirectConnectGatewaysResult.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location_name: "nextToken"))
387
+ DescribeDirectConnectGatewaysResult.struct_class = Types::DescribeDirectConnectGatewaysResult
388
+
301
389
  DescribeHostedConnectionsRequest.add_member(:connection_id, Shapes::ShapeRef.new(shape: ConnectionId, required: true, location_name: "connectionId"))
302
390
  DescribeHostedConnectionsRequest.struct_class = Types::DescribeHostedConnectionsRequest
303
391
 
@@ -330,6 +418,36 @@ module Aws::DirectConnect
330
418
  DescribeVirtualInterfacesRequest.add_member(:virtual_interface_id, Shapes::ShapeRef.new(shape: VirtualInterfaceId, location_name: "virtualInterfaceId"))
331
419
  DescribeVirtualInterfacesRequest.struct_class = Types::DescribeVirtualInterfacesRequest
332
420
 
421
+ DirectConnectGateway.add_member(:direct_connect_gateway_id, Shapes::ShapeRef.new(shape: DirectConnectGatewayId, location_name: "directConnectGatewayId"))
422
+ DirectConnectGateway.add_member(:direct_connect_gateway_name, Shapes::ShapeRef.new(shape: DirectConnectGatewayName, location_name: "directConnectGatewayName"))
423
+ DirectConnectGateway.add_member(:amazon_side_asn, Shapes::ShapeRef.new(shape: LongAsn, location_name: "amazonSideAsn"))
424
+ DirectConnectGateway.add_member(:owner_account, Shapes::ShapeRef.new(shape: OwnerAccount, location_name: "ownerAccount"))
425
+ DirectConnectGateway.add_member(:direct_connect_gateway_state, Shapes::ShapeRef.new(shape: DirectConnectGatewayState, location_name: "directConnectGatewayState"))
426
+ DirectConnectGateway.add_member(:state_change_error, Shapes::ShapeRef.new(shape: StateChangeError, location_name: "stateChangeError"))
427
+ DirectConnectGateway.struct_class = Types::DirectConnectGateway
428
+
429
+ DirectConnectGatewayAssociation.add_member(:direct_connect_gateway_id, Shapes::ShapeRef.new(shape: DirectConnectGatewayId, location_name: "directConnectGatewayId"))
430
+ DirectConnectGatewayAssociation.add_member(:virtual_gateway_id, Shapes::ShapeRef.new(shape: VirtualGatewayId, location_name: "virtualGatewayId"))
431
+ DirectConnectGatewayAssociation.add_member(:virtual_gateway_region, Shapes::ShapeRef.new(shape: VirtualGatewayRegion, location_name: "virtualGatewayRegion"))
432
+ DirectConnectGatewayAssociation.add_member(:virtual_gateway_owner_account, Shapes::ShapeRef.new(shape: OwnerAccount, location_name: "virtualGatewayOwnerAccount"))
433
+ DirectConnectGatewayAssociation.add_member(:association_state, Shapes::ShapeRef.new(shape: DirectConnectGatewayAssociationState, location_name: "associationState"))
434
+ DirectConnectGatewayAssociation.add_member(:state_change_error, Shapes::ShapeRef.new(shape: StateChangeError, location_name: "stateChangeError"))
435
+ DirectConnectGatewayAssociation.struct_class = Types::DirectConnectGatewayAssociation
436
+
437
+ DirectConnectGatewayAssociationList.member = Shapes::ShapeRef.new(shape: DirectConnectGatewayAssociation)
438
+
439
+ DirectConnectGatewayAttachment.add_member(:direct_connect_gateway_id, Shapes::ShapeRef.new(shape: DirectConnectGatewayId, location_name: "directConnectGatewayId"))
440
+ DirectConnectGatewayAttachment.add_member(:virtual_interface_id, Shapes::ShapeRef.new(shape: VirtualInterfaceId, location_name: "virtualInterfaceId"))
441
+ DirectConnectGatewayAttachment.add_member(:virtual_interface_region, Shapes::ShapeRef.new(shape: VirtualInterfaceRegion, location_name: "virtualInterfaceRegion"))
442
+ DirectConnectGatewayAttachment.add_member(:virtual_interface_owner_account, Shapes::ShapeRef.new(shape: OwnerAccount, location_name: "virtualInterfaceOwnerAccount"))
443
+ DirectConnectGatewayAttachment.add_member(:attachment_state, Shapes::ShapeRef.new(shape: DirectConnectGatewayAttachmentState, location_name: "attachmentState"))
444
+ DirectConnectGatewayAttachment.add_member(:state_change_error, Shapes::ShapeRef.new(shape: StateChangeError, location_name: "stateChangeError"))
445
+ DirectConnectGatewayAttachment.struct_class = Types::DirectConnectGatewayAttachment
446
+
447
+ DirectConnectGatewayAttachmentList.member = Shapes::ShapeRef.new(shape: DirectConnectGatewayAttachment)
448
+
449
+ DirectConnectGatewayList.member = Shapes::ShapeRef.new(shape: DirectConnectGateway)
450
+
333
451
  DisassociateConnectionFromLagRequest.add_member(:connection_id, Shapes::ShapeRef.new(shape: ConnectionId, required: true, location_name: "connectionId"))
334
452
  DisassociateConnectionFromLagRequest.add_member(:lag_id, Shapes::ShapeRef.new(shape: LagId, required: true, location_name: "lagId"))
335
453
  DisassociateConnectionFromLagRequest.struct_class = Types::DisassociateConnectionFromLagRequest
@@ -396,7 +514,8 @@ module Aws::DirectConnect
396
514
  NewPrivateVirtualInterface.add_member(:amazon_address, Shapes::ShapeRef.new(shape: AmazonAddress, location_name: "amazonAddress"))
397
515
  NewPrivateVirtualInterface.add_member(:customer_address, Shapes::ShapeRef.new(shape: CustomerAddress, location_name: "customerAddress"))
398
516
  NewPrivateVirtualInterface.add_member(:address_family, Shapes::ShapeRef.new(shape: AddressFamily, location_name: "addressFamily"))
399
- NewPrivateVirtualInterface.add_member(:virtual_gateway_id, Shapes::ShapeRef.new(shape: VirtualGatewayId, required: true, location_name: "virtualGatewayId"))
517
+ NewPrivateVirtualInterface.add_member(:virtual_gateway_id, Shapes::ShapeRef.new(shape: VirtualGatewayId, location_name: "virtualGatewayId"))
518
+ NewPrivateVirtualInterface.add_member(:direct_connect_gateway_id, Shapes::ShapeRef.new(shape: DirectConnectGatewayId, location_name: "directConnectGatewayId"))
400
519
  NewPrivateVirtualInterface.struct_class = Types::NewPrivateVirtualInterface
401
520
 
402
521
  NewPrivateVirtualInterfaceAllocation.add_member(:virtual_interface_name, Shapes::ShapeRef.new(shape: VirtualInterfaceName, required: true, location_name: "virtualInterfaceName"))
@@ -483,6 +602,7 @@ module Aws::DirectConnect
483
602
  VirtualInterface.add_member(:virtual_interface_name, Shapes::ShapeRef.new(shape: VirtualInterfaceName, location_name: "virtualInterfaceName"))
484
603
  VirtualInterface.add_member(:vlan, Shapes::ShapeRef.new(shape: VLAN, location_name: "vlan"))
485
604
  VirtualInterface.add_member(:asn, Shapes::ShapeRef.new(shape: ASN, location_name: "asn"))
605
+ VirtualInterface.add_member(:amazon_side_asn, Shapes::ShapeRef.new(shape: LongAsn, location_name: "amazonSideAsn"))
486
606
  VirtualInterface.add_member(:auth_key, Shapes::ShapeRef.new(shape: BGPAuthKey, location_name: "authKey"))
487
607
  VirtualInterface.add_member(:amazon_address, Shapes::ShapeRef.new(shape: AmazonAddress, location_name: "amazonAddress"))
488
608
  VirtualInterface.add_member(:customer_address, Shapes::ShapeRef.new(shape: CustomerAddress, location_name: "customerAddress"))
@@ -490,6 +610,7 @@ module Aws::DirectConnect
490
610
  VirtualInterface.add_member(:virtual_interface_state, Shapes::ShapeRef.new(shape: VirtualInterfaceState, location_name: "virtualInterfaceState"))
491
611
  VirtualInterface.add_member(:customer_router_config, Shapes::ShapeRef.new(shape: RouterConfig, location_name: "customerRouterConfig"))
492
612
  VirtualInterface.add_member(:virtual_gateway_id, Shapes::ShapeRef.new(shape: VirtualGatewayId, location_name: "virtualGatewayId"))
613
+ VirtualInterface.add_member(:direct_connect_gateway_id, Shapes::ShapeRef.new(shape: DirectConnectGatewayId, location_name: "directConnectGatewayId"))
493
614
  VirtualInterface.add_member(:route_filter_prefixes, Shapes::ShapeRef.new(shape: RouteFilterPrefixList, location_name: "routeFilterPrefixes"))
494
615
  VirtualInterface.add_member(:bgp_peers, Shapes::ShapeRef.new(shape: BGPPeerList, location_name: "bgpPeers"))
495
616
  VirtualInterface.struct_class = Types::VirtualInterface
@@ -635,6 +756,26 @@ module Aws::DirectConnect
635
756
  o.errors << Shapes::ShapeRef.new(shape: DirectConnectClientException)
636
757
  end)
637
758
 
759
+ api.add_operation(:create_direct_connect_gateway, Seahorse::Model::Operation.new.tap do |o|
760
+ o.name = "CreateDirectConnectGateway"
761
+ o.http_method = "POST"
762
+ o.http_request_uri = "/"
763
+ o.input = Shapes::ShapeRef.new(shape: CreateDirectConnectGatewayRequest)
764
+ o.output = Shapes::ShapeRef.new(shape: CreateDirectConnectGatewayResult)
765
+ o.errors << Shapes::ShapeRef.new(shape: DirectConnectServerException)
766
+ o.errors << Shapes::ShapeRef.new(shape: DirectConnectClientException)
767
+ end)
768
+
769
+ api.add_operation(:create_direct_connect_gateway_association, Seahorse::Model::Operation.new.tap do |o|
770
+ o.name = "CreateDirectConnectGatewayAssociation"
771
+ o.http_method = "POST"
772
+ o.http_request_uri = "/"
773
+ o.input = Shapes::ShapeRef.new(shape: CreateDirectConnectGatewayAssociationRequest)
774
+ o.output = Shapes::ShapeRef.new(shape: CreateDirectConnectGatewayAssociationResult)
775
+ o.errors << Shapes::ShapeRef.new(shape: DirectConnectServerException)
776
+ o.errors << Shapes::ShapeRef.new(shape: DirectConnectClientException)
777
+ end)
778
+
638
779
  api.add_operation(:create_interconnect, Seahorse::Model::Operation.new.tap do |o|
639
780
  o.name = "CreateInterconnect"
640
781
  o.http_method = "POST"
@@ -695,6 +836,26 @@ module Aws::DirectConnect
695
836
  o.errors << Shapes::ShapeRef.new(shape: DirectConnectClientException)
696
837
  end)
697
838
 
839
+ api.add_operation(:delete_direct_connect_gateway, Seahorse::Model::Operation.new.tap do |o|
840
+ o.name = "DeleteDirectConnectGateway"
841
+ o.http_method = "POST"
842
+ o.http_request_uri = "/"
843
+ o.input = Shapes::ShapeRef.new(shape: DeleteDirectConnectGatewayRequest)
844
+ o.output = Shapes::ShapeRef.new(shape: DeleteDirectConnectGatewayResult)
845
+ o.errors << Shapes::ShapeRef.new(shape: DirectConnectServerException)
846
+ o.errors << Shapes::ShapeRef.new(shape: DirectConnectClientException)
847
+ end)
848
+
849
+ api.add_operation(:delete_direct_connect_gateway_association, Seahorse::Model::Operation.new.tap do |o|
850
+ o.name = "DeleteDirectConnectGatewayAssociation"
851
+ o.http_method = "POST"
852
+ o.http_request_uri = "/"
853
+ o.input = Shapes::ShapeRef.new(shape: DeleteDirectConnectGatewayAssociationRequest)
854
+ o.output = Shapes::ShapeRef.new(shape: DeleteDirectConnectGatewayAssociationResult)
855
+ o.errors << Shapes::ShapeRef.new(shape: DirectConnectServerException)
856
+ o.errors << Shapes::ShapeRef.new(shape: DirectConnectClientException)
857
+ end)
858
+
698
859
  api.add_operation(:delete_interconnect, Seahorse::Model::Operation.new.tap do |o|
699
860
  o.name = "DeleteInterconnect"
700
861
  o.http_method = "POST"
@@ -757,6 +918,36 @@ module Aws::DirectConnect
757
918
  o.errors << Shapes::ShapeRef.new(shape: DirectConnectClientException)
758
919
  end)
759
920
 
921
+ api.add_operation(:describe_direct_connect_gateway_associations, Seahorse::Model::Operation.new.tap do |o|
922
+ o.name = "DescribeDirectConnectGatewayAssociations"
923
+ o.http_method = "POST"
924
+ o.http_request_uri = "/"
925
+ o.input = Shapes::ShapeRef.new(shape: DescribeDirectConnectGatewayAssociationsRequest)
926
+ o.output = Shapes::ShapeRef.new(shape: DescribeDirectConnectGatewayAssociationsResult)
927
+ o.errors << Shapes::ShapeRef.new(shape: DirectConnectServerException)
928
+ o.errors << Shapes::ShapeRef.new(shape: DirectConnectClientException)
929
+ end)
930
+
931
+ api.add_operation(:describe_direct_connect_gateway_attachments, Seahorse::Model::Operation.new.tap do |o|
932
+ o.name = "DescribeDirectConnectGatewayAttachments"
933
+ o.http_method = "POST"
934
+ o.http_request_uri = "/"
935
+ o.input = Shapes::ShapeRef.new(shape: DescribeDirectConnectGatewayAttachmentsRequest)
936
+ o.output = Shapes::ShapeRef.new(shape: DescribeDirectConnectGatewayAttachmentsResult)
937
+ o.errors << Shapes::ShapeRef.new(shape: DirectConnectServerException)
938
+ o.errors << Shapes::ShapeRef.new(shape: DirectConnectClientException)
939
+ end)
940
+
941
+ api.add_operation(:describe_direct_connect_gateways, Seahorse::Model::Operation.new.tap do |o|
942
+ o.name = "DescribeDirectConnectGateways"
943
+ o.http_method = "POST"
944
+ o.http_request_uri = "/"
945
+ o.input = Shapes::ShapeRef.new(shape: DescribeDirectConnectGatewaysRequest)
946
+ o.output = Shapes::ShapeRef.new(shape: DescribeDirectConnectGatewaysResult)
947
+ o.errors << Shapes::ShapeRef.new(shape: DirectConnectServerException)
948
+ o.errors << Shapes::ShapeRef.new(shape: DirectConnectClientException)
949
+ end)
950
+
760
951
  api.add_operation(:describe_hosted_connections, Seahorse::Model::Operation.new.tap do |o|
761
952
  o.name = "DescribeHostedConnections"
762
953
  o.http_method = "POST"
@@ -498,7 +498,8 @@ module Aws::DirectConnect
498
498
  #
499
499
  # {
500
500
  # virtual_interface_id: "VirtualInterfaceId", # required
501
- # virtual_gateway_id: "VirtualGatewayId", # required
501
+ # virtual_gateway_id: "VirtualGatewayId",
502
+ # direct_connect_gateway_id: "DirectConnectGatewayId",
502
503
  # }
503
504
  #
504
505
  # @!attribute [rw] virtual_interface_id
@@ -523,11 +524,22 @@ module Aws::DirectConnect
523
524
  # [1]: http://docs.aws.amazon.com/AWSEC2/latest/APIReference/ApiReference-query-CreateVpnGateway.html
524
525
  # @return [String]
525
526
  #
527
+ # @!attribute [rw] direct_connect_gateway_id
528
+ # ID of the direct connect gateway that will be attached to the
529
+ # virtual interface.
530
+ #
531
+ # A direct connect gateway can be managed via the AWS Direct Connect
532
+ # console or the CreateDirectConnectGateway action.
533
+ #
534
+ # Default: None
535
+ # @return [String]
536
+ #
526
537
  # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/ConfirmPrivateVirtualInterfaceRequest AWS API Documentation
527
538
  #
528
539
  class ConfirmPrivateVirtualInterfaceRequest < Struct.new(
529
540
  :virtual_interface_id,
530
- :virtual_gateway_id)
541
+ :virtual_gateway_id,
542
+ :direct_connect_gateway_id)
531
543
  include Aws::Structure
532
544
  end
533
545
 
@@ -882,6 +894,107 @@ module Aws::DirectConnect
882
894
  include Aws::Structure
883
895
  end
884
896
 
897
+ # Container for the parameters to the
898
+ # CreateDirectConnectGatewayAssociation operation.
899
+ #
900
+ # @note When making an API call, you may pass CreateDirectConnectGatewayAssociationRequest
901
+ # data as a hash:
902
+ #
903
+ # {
904
+ # direct_connect_gateway_id: "DirectConnectGatewayId", # required
905
+ # virtual_gateway_id: "VirtualGatewayId", # required
906
+ # }
907
+ #
908
+ # @!attribute [rw] direct_connect_gateway_id
909
+ # The ID of the direct connect gateway.
910
+ #
911
+ # Example: "abcd1234-dcba-5678-be23-cdef9876ab45"
912
+ #
913
+ # Default: None
914
+ # @return [String]
915
+ #
916
+ # @!attribute [rw] virtual_gateway_id
917
+ # The ID of the virtual private gateway.
918
+ #
919
+ # Example: "vgw-abc123ef"
920
+ #
921
+ # Default: None
922
+ # @return [String]
923
+ #
924
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/CreateDirectConnectGatewayAssociationRequest AWS API Documentation
925
+ #
926
+ class CreateDirectConnectGatewayAssociationRequest < Struct.new(
927
+ :direct_connect_gateway_id,
928
+ :virtual_gateway_id)
929
+ include Aws::Structure
930
+ end
931
+
932
+ # Container for the response from the
933
+ # CreateDirectConnectGatewayAssociation API call
934
+ #
935
+ # @!attribute [rw] direct_connect_gateway_association
936
+ # The direct connect gateway association to be created.
937
+ # @return [Types::DirectConnectGatewayAssociation]
938
+ #
939
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/CreateDirectConnectGatewayAssociationResult AWS API Documentation
940
+ #
941
+ class CreateDirectConnectGatewayAssociationResult < Struct.new(
942
+ :direct_connect_gateway_association)
943
+ include Aws::Structure
944
+ end
945
+
946
+ # Container for the parameters to the CreateDirectConnectGateway
947
+ # operation.
948
+ #
949
+ # @note When making an API call, you may pass CreateDirectConnectGatewayRequest
950
+ # data as a hash:
951
+ #
952
+ # {
953
+ # direct_connect_gateway_name: "DirectConnectGatewayName", # required
954
+ # amazon_side_asn: 1,
955
+ # }
956
+ #
957
+ # @!attribute [rw] direct_connect_gateway_name
958
+ # The name of the direct connect gateway.
959
+ #
960
+ # Example: "My direct connect gateway"
961
+ #
962
+ # Default: None
963
+ # @return [String]
964
+ #
965
+ # @!attribute [rw] amazon_side_asn
966
+ # The autonomous system number (ASN) for Border Gateway Protocol (BGP)
967
+ # to be configured on the Amazon side of the connection. The ASN must
968
+ # be in the private range of 64,512 to 65,534 or 4,200,000,000 to
969
+ # 4,294,967,294
970
+ #
971
+ # Example: 65200
972
+ #
973
+ # Default: 64512
974
+ # @return [Integer]
975
+ #
976
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/CreateDirectConnectGatewayRequest AWS API Documentation
977
+ #
978
+ class CreateDirectConnectGatewayRequest < Struct.new(
979
+ :direct_connect_gateway_name,
980
+ :amazon_side_asn)
981
+ include Aws::Structure
982
+ end
983
+
984
+ # Container for the response from the CreateDirectConnectGateway API
985
+ # call
986
+ #
987
+ # @!attribute [rw] direct_connect_gateway
988
+ # The direct connect gateway to be created.
989
+ # @return [Types::DirectConnectGateway]
990
+ #
991
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/CreateDirectConnectGatewayResult AWS API Documentation
992
+ #
993
+ class CreateDirectConnectGatewayResult < Struct.new(
994
+ :direct_connect_gateway)
995
+ include Aws::Structure
996
+ end
997
+
885
998
  # Container for the parameters to the CreateInterconnect operation.
886
999
  #
887
1000
  # @note When making an API call, you may pass CreateInterconnectRequest
@@ -1015,7 +1128,8 @@ module Aws::DirectConnect
1015
1128
  # amazon_address: "AmazonAddress",
1016
1129
  # customer_address: "CustomerAddress",
1017
1130
  # address_family: "ipv4", # accepts ipv4, ipv6
1018
- # virtual_gateway_id: "VirtualGatewayId", # required
1131
+ # virtual_gateway_id: "VirtualGatewayId",
1132
+ # direct_connect_gateway_id: "DirectConnectGatewayId",
1019
1133
  # },
1020
1134
  # }
1021
1135
  #
@@ -1174,6 +1288,94 @@ module Aws::DirectConnect
1174
1288
  include Aws::Structure
1175
1289
  end
1176
1290
 
1291
+ # Container for the parameters to the
1292
+ # DeleteDirectConnectGatewayAssociation operation.
1293
+ #
1294
+ # @note When making an API call, you may pass DeleteDirectConnectGatewayAssociationRequest
1295
+ # data as a hash:
1296
+ #
1297
+ # {
1298
+ # direct_connect_gateway_id: "DirectConnectGatewayId", # required
1299
+ # virtual_gateway_id: "VirtualGatewayId", # required
1300
+ # }
1301
+ #
1302
+ # @!attribute [rw] direct_connect_gateway_id
1303
+ # The ID of the direct connect gateway.
1304
+ #
1305
+ # Example: "abcd1234-dcba-5678-be23-cdef9876ab45"
1306
+ #
1307
+ # Default: None
1308
+ # @return [String]
1309
+ #
1310
+ # @!attribute [rw] virtual_gateway_id
1311
+ # The ID of the virtual private gateway.
1312
+ #
1313
+ # Example: "vgw-abc123ef"
1314
+ #
1315
+ # Default: None
1316
+ # @return [String]
1317
+ #
1318
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/DeleteDirectConnectGatewayAssociationRequest AWS API Documentation
1319
+ #
1320
+ class DeleteDirectConnectGatewayAssociationRequest < Struct.new(
1321
+ :direct_connect_gateway_id,
1322
+ :virtual_gateway_id)
1323
+ include Aws::Structure
1324
+ end
1325
+
1326
+ # Container for the response from the
1327
+ # DeleteDirectConnectGatewayAssociation API call
1328
+ #
1329
+ # @!attribute [rw] direct_connect_gateway_association
1330
+ # The direct connect gateway association to be deleted.
1331
+ # @return [Types::DirectConnectGatewayAssociation]
1332
+ #
1333
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/DeleteDirectConnectGatewayAssociationResult AWS API Documentation
1334
+ #
1335
+ class DeleteDirectConnectGatewayAssociationResult < Struct.new(
1336
+ :direct_connect_gateway_association)
1337
+ include Aws::Structure
1338
+ end
1339
+
1340
+ # Container for the parameters to the DeleteDirectConnectGateway
1341
+ # operation.
1342
+ #
1343
+ # @note When making an API call, you may pass DeleteDirectConnectGatewayRequest
1344
+ # data as a hash:
1345
+ #
1346
+ # {
1347
+ # direct_connect_gateway_id: "DirectConnectGatewayId", # required
1348
+ # }
1349
+ #
1350
+ # @!attribute [rw] direct_connect_gateway_id
1351
+ # The ID of the direct connect gateway.
1352
+ #
1353
+ # Example: "abcd1234-dcba-5678-be23-cdef9876ab45"
1354
+ #
1355
+ # Default: None
1356
+ # @return [String]
1357
+ #
1358
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/DeleteDirectConnectGatewayRequest AWS API Documentation
1359
+ #
1360
+ class DeleteDirectConnectGatewayRequest < Struct.new(
1361
+ :direct_connect_gateway_id)
1362
+ include Aws::Structure
1363
+ end
1364
+
1365
+ # Container for the response from the DeleteDirectConnectGateway API
1366
+ # call
1367
+ #
1368
+ # @!attribute [rw] direct_connect_gateway
1369
+ # The direct connect gateway to be deleted.
1370
+ # @return [Types::DirectConnectGateway]
1371
+ #
1372
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/DeleteDirectConnectGatewayResult AWS API Documentation
1373
+ #
1374
+ class DeleteDirectConnectGatewayResult < Struct.new(
1375
+ :direct_connect_gateway)
1376
+ include Aws::Structure
1377
+ end
1378
+
1177
1379
  # Container for the parameters to the DeleteInterconnect operation.
1178
1380
  #
1179
1381
  # @note When making an API call, you may pass DeleteInterconnectRequest
@@ -1429,6 +1631,217 @@ module Aws::DirectConnect
1429
1631
  include Aws::Structure
1430
1632
  end
1431
1633
 
1634
+ # Container for the parameters to the
1635
+ # DescribeDirectConnectGatewayAssociations operation.
1636
+ #
1637
+ # @note When making an API call, you may pass DescribeDirectConnectGatewayAssociationsRequest
1638
+ # data as a hash:
1639
+ #
1640
+ # {
1641
+ # direct_connect_gateway_id: "DirectConnectGatewayId",
1642
+ # virtual_gateway_id: "VirtualGatewayId",
1643
+ # max_results: 1,
1644
+ # next_token: "PaginationToken",
1645
+ # }
1646
+ #
1647
+ # @!attribute [rw] direct_connect_gateway_id
1648
+ # The ID of the direct connect gateway.
1649
+ #
1650
+ # Example: "abcd1234-dcba-5678-be23-cdef9876ab45"
1651
+ #
1652
+ # Default: None
1653
+ # @return [String]
1654
+ #
1655
+ # @!attribute [rw] virtual_gateway_id
1656
+ # The ID of the virtual private gateway.
1657
+ #
1658
+ # Example: "vgw-abc123ef"
1659
+ #
1660
+ # Default: None
1661
+ # @return [String]
1662
+ #
1663
+ # @!attribute [rw] max_results
1664
+ # The maximum number of direct connect gateway associations to return
1665
+ # per page.
1666
+ #
1667
+ # Example: 15
1668
+ #
1669
+ # Default: None
1670
+ # @return [Integer]
1671
+ #
1672
+ # @!attribute [rw] next_token
1673
+ # The token provided in the previous describe result to retrieve the
1674
+ # next page of the result.
1675
+ #
1676
+ # Default: None
1677
+ # @return [String]
1678
+ #
1679
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/DescribeDirectConnectGatewayAssociationsRequest AWS API Documentation
1680
+ #
1681
+ class DescribeDirectConnectGatewayAssociationsRequest < Struct.new(
1682
+ :direct_connect_gateway_id,
1683
+ :virtual_gateway_id,
1684
+ :max_results,
1685
+ :next_token)
1686
+ include Aws::Structure
1687
+ end
1688
+
1689
+ # Container for the response from the
1690
+ # DescribeDirectConnectGatewayAssociations API call
1691
+ #
1692
+ # @!attribute [rw] direct_connect_gateway_associations
1693
+ # Information about the direct connect gateway associations.
1694
+ # @return [Array<Types::DirectConnectGatewayAssociation>]
1695
+ #
1696
+ # @!attribute [rw] next_token
1697
+ # Token to retrieve the next page of the result.
1698
+ # @return [String]
1699
+ #
1700
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/DescribeDirectConnectGatewayAssociationsResult AWS API Documentation
1701
+ #
1702
+ class DescribeDirectConnectGatewayAssociationsResult < Struct.new(
1703
+ :direct_connect_gateway_associations,
1704
+ :next_token)
1705
+ include Aws::Structure
1706
+ end
1707
+
1708
+ # Container for the parameters to the
1709
+ # DescribeDirectConnectGatewayAttachments operation.
1710
+ #
1711
+ # @note When making an API call, you may pass DescribeDirectConnectGatewayAttachmentsRequest
1712
+ # data as a hash:
1713
+ #
1714
+ # {
1715
+ # direct_connect_gateway_id: "DirectConnectGatewayId",
1716
+ # virtual_interface_id: "VirtualInterfaceId",
1717
+ # max_results: 1,
1718
+ # next_token: "PaginationToken",
1719
+ # }
1720
+ #
1721
+ # @!attribute [rw] direct_connect_gateway_id
1722
+ # The ID of the direct connect gateway.
1723
+ #
1724
+ # Example: "abcd1234-dcba-5678-be23-cdef9876ab45"
1725
+ #
1726
+ # Default: None
1727
+ # @return [String]
1728
+ #
1729
+ # @!attribute [rw] virtual_interface_id
1730
+ # The ID of the virtual interface.
1731
+ #
1732
+ # Example: "dxvif-abc123ef"
1733
+ #
1734
+ # Default: None
1735
+ # @return [String]
1736
+ #
1737
+ # @!attribute [rw] max_results
1738
+ # The maximum number of direct connect gateway attachments to return
1739
+ # per page.
1740
+ #
1741
+ # Example: 15
1742
+ #
1743
+ # Default: None
1744
+ # @return [Integer]
1745
+ #
1746
+ # @!attribute [rw] next_token
1747
+ # The token provided in the previous describe result to retrieve the
1748
+ # next page of the result.
1749
+ #
1750
+ # Default: None
1751
+ # @return [String]
1752
+ #
1753
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/DescribeDirectConnectGatewayAttachmentsRequest AWS API Documentation
1754
+ #
1755
+ class DescribeDirectConnectGatewayAttachmentsRequest < Struct.new(
1756
+ :direct_connect_gateway_id,
1757
+ :virtual_interface_id,
1758
+ :max_results,
1759
+ :next_token)
1760
+ include Aws::Structure
1761
+ end
1762
+
1763
+ # Container for the response from the
1764
+ # DescribeDirectConnectGatewayAttachments API call
1765
+ #
1766
+ # @!attribute [rw] direct_connect_gateway_attachments
1767
+ # Information about the direct connect gateway attachments.
1768
+ # @return [Array<Types::DirectConnectGatewayAttachment>]
1769
+ #
1770
+ # @!attribute [rw] next_token
1771
+ # Token to retrieve the next page of the result.
1772
+ # @return [String]
1773
+ #
1774
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/DescribeDirectConnectGatewayAttachmentsResult AWS API Documentation
1775
+ #
1776
+ class DescribeDirectConnectGatewayAttachmentsResult < Struct.new(
1777
+ :direct_connect_gateway_attachments,
1778
+ :next_token)
1779
+ include Aws::Structure
1780
+ end
1781
+
1782
+ # Container for the parameters to the DescribeDirectConnectGateways
1783
+ # operation.
1784
+ #
1785
+ # @note When making an API call, you may pass DescribeDirectConnectGatewaysRequest
1786
+ # data as a hash:
1787
+ #
1788
+ # {
1789
+ # direct_connect_gateway_id: "DirectConnectGatewayId",
1790
+ # max_results: 1,
1791
+ # next_token: "PaginationToken",
1792
+ # }
1793
+ #
1794
+ # @!attribute [rw] direct_connect_gateway_id
1795
+ # The ID of the direct connect gateway.
1796
+ #
1797
+ # Example: "abcd1234-dcba-5678-be23-cdef9876ab45"
1798
+ #
1799
+ # Default: None
1800
+ # @return [String]
1801
+ #
1802
+ # @!attribute [rw] max_results
1803
+ # The maximum number of direct connect gateways to return per page.
1804
+ #
1805
+ # Example: 15
1806
+ #
1807
+ # Default: None
1808
+ # @return [Integer]
1809
+ #
1810
+ # @!attribute [rw] next_token
1811
+ # The token provided in the previous describe result to retrieve the
1812
+ # next page of the result.
1813
+ #
1814
+ # Default: None
1815
+ # @return [String]
1816
+ #
1817
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/DescribeDirectConnectGatewaysRequest AWS API Documentation
1818
+ #
1819
+ class DescribeDirectConnectGatewaysRequest < Struct.new(
1820
+ :direct_connect_gateway_id,
1821
+ :max_results,
1822
+ :next_token)
1823
+ include Aws::Structure
1824
+ end
1825
+
1826
+ # Container for the response from the DescribeDirectConnectGateways API
1827
+ # call
1828
+ #
1829
+ # @!attribute [rw] direct_connect_gateways
1830
+ # Information about the direct connect gateways.
1831
+ # @return [Array<Types::DirectConnectGateway>]
1832
+ #
1833
+ # @!attribute [rw] next_token
1834
+ # Token to retrieve the next page of the result.
1835
+ # @return [String]
1836
+ #
1837
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/DescribeDirectConnectGatewaysResult AWS API Documentation
1838
+ #
1839
+ class DescribeDirectConnectGatewaysResult < Struct.new(
1840
+ :direct_connect_gateways,
1841
+ :next_token)
1842
+ include Aws::Structure
1843
+ end
1844
+
1432
1845
  # Container for the parameters to the DescribeHostedConnections
1433
1846
  # operation.
1434
1847
  #
@@ -1674,6 +2087,184 @@ module Aws::DirectConnect
1674
2087
  include Aws::Structure
1675
2088
  end
1676
2089
 
2090
+ # A direct connect gateway is an intermediate object that enables you to
2091
+ # connect virtual interfaces and virtual private gateways.
2092
+ #
2093
+ # @!attribute [rw] direct_connect_gateway_id
2094
+ # The ID of the direct connect gateway.
2095
+ #
2096
+ # Example: "abcd1234-dcba-5678-be23-cdef9876ab45"
2097
+ # @return [String]
2098
+ #
2099
+ # @!attribute [rw] direct_connect_gateway_name
2100
+ # The name of the direct connect gateway.
2101
+ #
2102
+ # Example: "My direct connect gateway"
2103
+ #
2104
+ # Default: None
2105
+ # @return [String]
2106
+ #
2107
+ # @!attribute [rw] amazon_side_asn
2108
+ # The autonomous system number (ASN) for the Amazon side of the
2109
+ # connection.
2110
+ # @return [Integer]
2111
+ #
2112
+ # @!attribute [rw] owner_account
2113
+ # The AWS account ID of the owner of the direct connect gateway.
2114
+ # @return [String]
2115
+ #
2116
+ # @!attribute [rw] direct_connect_gateway_state
2117
+ # State of the direct connect gateway.
2118
+ #
2119
+ # * **Pending**\: The initial state after calling
2120
+ # CreateDirectConnectGateway.
2121
+ #
2122
+ # * **Available**\: The direct connect gateway is ready for use.
2123
+ #
2124
+ # * **Deleting**\: The initial state after calling
2125
+ # DeleteDirectConnectGateway.
2126
+ #
2127
+ # * **Deleted**\: The direct connect gateway is deleted and cannot
2128
+ # pass traffic.
2129
+ # @return [String]
2130
+ #
2131
+ # @!attribute [rw] state_change_error
2132
+ # Error message when the state of an object fails to advance.
2133
+ # @return [String]
2134
+ #
2135
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/DirectConnectGateway AWS API Documentation
2136
+ #
2137
+ class DirectConnectGateway < Struct.new(
2138
+ :direct_connect_gateway_id,
2139
+ :direct_connect_gateway_name,
2140
+ :amazon_side_asn,
2141
+ :owner_account,
2142
+ :direct_connect_gateway_state,
2143
+ :state_change_error)
2144
+ include Aws::Structure
2145
+ end
2146
+
2147
+ # The association between a direct connect gateway and virtual private
2148
+ # gateway.
2149
+ #
2150
+ # @!attribute [rw] direct_connect_gateway_id
2151
+ # The ID of the direct connect gateway.
2152
+ #
2153
+ # Example: "abcd1234-dcba-5678-be23-cdef9876ab45"
2154
+ # @return [String]
2155
+ #
2156
+ # @!attribute [rw] virtual_gateway_id
2157
+ # The ID of the virtual private gateway to a VPC. This only applies to
2158
+ # private virtual interfaces.
2159
+ #
2160
+ # Example: vgw-123er56
2161
+ # @return [String]
2162
+ #
2163
+ # @!attribute [rw] virtual_gateway_region
2164
+ # The region in which the virtual private gateway is located.
2165
+ #
2166
+ # Example: us-east-1
2167
+ # @return [String]
2168
+ #
2169
+ # @!attribute [rw] virtual_gateway_owner_account
2170
+ # The AWS account ID of the owner of the virtual private gateway.
2171
+ # @return [String]
2172
+ #
2173
+ # @!attribute [rw] association_state
2174
+ # State of the direct connect gateway association.
2175
+ #
2176
+ # * **Associating**\: The initial state after calling
2177
+ # CreateDirectConnectGatewayAssociation.
2178
+ #
2179
+ # * **Associated**\: The direct connect gateway and virtual private
2180
+ # gateway are successfully associated and ready to pass traffic.
2181
+ #
2182
+ # * **Disassociating**\: The initial state after calling
2183
+ # DeleteDirectConnectGatewayAssociation.
2184
+ #
2185
+ # * **Disassociated**\: The virtual private gateway is successfully
2186
+ # disassociated from the direct connect gateway. Traffic flow
2187
+ # between the direct connect gateway and virtual private gateway
2188
+ # stops.
2189
+ # @return [String]
2190
+ #
2191
+ # @!attribute [rw] state_change_error
2192
+ # Error message when the state of an object fails to advance.
2193
+ # @return [String]
2194
+ #
2195
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/DirectConnectGatewayAssociation AWS API Documentation
2196
+ #
2197
+ class DirectConnectGatewayAssociation < Struct.new(
2198
+ :direct_connect_gateway_id,
2199
+ :virtual_gateway_id,
2200
+ :virtual_gateway_region,
2201
+ :virtual_gateway_owner_account,
2202
+ :association_state,
2203
+ :state_change_error)
2204
+ include Aws::Structure
2205
+ end
2206
+
2207
+ # The association between a direct connect gateway and virtual
2208
+ # interface.
2209
+ #
2210
+ # @!attribute [rw] direct_connect_gateway_id
2211
+ # The ID of the direct connect gateway.
2212
+ #
2213
+ # Example: "abcd1234-dcba-5678-be23-cdef9876ab45"
2214
+ # @return [String]
2215
+ #
2216
+ # @!attribute [rw] virtual_interface_id
2217
+ # The ID of the virtual interface.
2218
+ #
2219
+ # Example: dxvif-123dfg56
2220
+ #
2221
+ # Default: None
2222
+ # @return [String]
2223
+ #
2224
+ # @!attribute [rw] virtual_interface_region
2225
+ # The region in which the virtual interface is located.
2226
+ #
2227
+ # Example: us-east-1
2228
+ # @return [String]
2229
+ #
2230
+ # @!attribute [rw] virtual_interface_owner_account
2231
+ # The AWS account ID of the owner of the virtual interface.
2232
+ # @return [String]
2233
+ #
2234
+ # @!attribute [rw] attachment_state
2235
+ # State of the direct connect gateway attachment.
2236
+ #
2237
+ # * **Attaching**\: The initial state after a virtual interface is
2238
+ # created using the direct connect gateway.
2239
+ #
2240
+ # * **Attached**\: The direct connect gateway and virtual interface
2241
+ # are successfully attached and ready to pass traffic.
2242
+ #
2243
+ # * **Detaching**\: The initial state after calling
2244
+ # DeleteVirtualInterface on a virtual interface that is attached to
2245
+ # a direct connect gateway.
2246
+ #
2247
+ # * **Detached**\: The virtual interface is successfully detached from
2248
+ # the direct connect gateway. Traffic flow between the direct
2249
+ # connect gateway and virtual interface stops.
2250
+ # @return [String]
2251
+ #
2252
+ # @!attribute [rw] state_change_error
2253
+ # Error message when the state of an object fails to advance.
2254
+ # @return [String]
2255
+ #
2256
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/DirectConnectGatewayAttachment AWS API Documentation
2257
+ #
2258
+ class DirectConnectGatewayAttachment < Struct.new(
2259
+ :direct_connect_gateway_id,
2260
+ :virtual_interface_id,
2261
+ :virtual_interface_region,
2262
+ :virtual_interface_owner_account,
2263
+ :attachment_state,
2264
+ :state_change_error)
2265
+ include Aws::Structure
2266
+ end
2267
+
1677
2268
  # Container for the parameters to the DisassociateConnectionFromLag
1678
2269
  # operation.
1679
2270
  #
@@ -2079,7 +2670,8 @@ module Aws::DirectConnect
2079
2670
  # amazon_address: "AmazonAddress",
2080
2671
  # customer_address: "CustomerAddress",
2081
2672
  # address_family: "ipv4", # accepts ipv4, ipv6
2082
- # virtual_gateway_id: "VirtualGatewayId", # required
2673
+ # virtual_gateway_id: "VirtualGatewayId",
2674
+ # direct_connect_gateway_id: "DirectConnectGatewayId",
2083
2675
  # }
2084
2676
  #
2085
2677
  # @!attribute [rw] virtual_interface_name
@@ -2134,6 +2726,12 @@ module Aws::DirectConnect
2134
2726
  # Example: vgw-123er56
2135
2727
  # @return [String]
2136
2728
  #
2729
+ # @!attribute [rw] direct_connect_gateway_id
2730
+ # The ID of the direct connect gateway.
2731
+ #
2732
+ # Example: "abcd1234-dcba-5678-be23-cdef9876ab45"
2733
+ # @return [String]
2734
+ #
2137
2735
  # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/NewPrivateVirtualInterface AWS API Documentation
2138
2736
  #
2139
2737
  class NewPrivateVirtualInterface < Struct.new(
@@ -2144,7 +2742,8 @@ module Aws::DirectConnect
2144
2742
  :amazon_address,
2145
2743
  :customer_address,
2146
2744
  :address_family,
2147
- :virtual_gateway_id)
2745
+ :virtual_gateway_id,
2746
+ :direct_connect_gateway_id)
2148
2747
  include Aws::Structure
2149
2748
  end
2150
2749
 
@@ -2690,6 +3289,11 @@ module Aws::DirectConnect
2690
3289
  # Example: 65000
2691
3290
  # @return [Integer]
2692
3291
  #
3292
+ # @!attribute [rw] amazon_side_asn
3293
+ # The autonomous system number (ASN) for the Amazon side of the
3294
+ # connection.
3295
+ # @return [Integer]
3296
+ #
2693
3297
  # @!attribute [rw] auth_key
2694
3298
  # The authentication key for BGP configuration.
2695
3299
  #
@@ -2761,6 +3365,12 @@ module Aws::DirectConnect
2761
3365
  # Example: vgw-123er56
2762
3366
  # @return [String]
2763
3367
  #
3368
+ # @!attribute [rw] direct_connect_gateway_id
3369
+ # The ID of the direct connect gateway.
3370
+ #
3371
+ # Example: "abcd1234-dcba-5678-be23-cdef9876ab45"
3372
+ # @return [String]
3373
+ #
2764
3374
  # @!attribute [rw] route_filter_prefixes
2765
3375
  # A list of routes to be advertised to the AWS network in this region
2766
3376
  # (public virtual interface).
@@ -2781,6 +3391,7 @@ module Aws::DirectConnect
2781
3391
  :virtual_interface_name,
2782
3392
  :vlan,
2783
3393
  :asn,
3394
+ :amazon_side_asn,
2784
3395
  :auth_key,
2785
3396
  :amazon_address,
2786
3397
  :customer_address,
@@ -2788,6 +3399,7 @@ module Aws::DirectConnect
2788
3399
  :virtual_interface_state,
2789
3400
  :customer_router_config,
2790
3401
  :virtual_gateway_id,
3402
+ :direct_connect_gateway_id,
2791
3403
  :route_filter_prefixes,
2792
3404
  :bgp_peers)
2793
3405
  include Aws::Structure