aws-sdk-directconnect 1.38.0 → 1.42.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -3,7 +3,7 @@
3
3
  # WARNING ABOUT GENERATED CODE
4
4
  #
5
5
  # This file is generated. See the contributing guide for more information:
6
- # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
7
  #
8
8
  # WARNING ABOUT GENERATED CODE
9
9
 
@@ -26,12 +26,16 @@ module Aws::DirectConnect
26
26
  AmazonAddress = Shapes::StringShape.new(name: 'AmazonAddress')
27
27
  AssociateConnectionWithLagRequest = Shapes::StructureShape.new(name: 'AssociateConnectionWithLagRequest')
28
28
  AssociateHostedConnectionRequest = Shapes::StructureShape.new(name: 'AssociateHostedConnectionRequest')
29
+ AssociateMacSecKeyRequest = Shapes::StructureShape.new(name: 'AssociateMacSecKeyRequest')
30
+ AssociateMacSecKeyResponse = Shapes::StructureShape.new(name: 'AssociateMacSecKeyResponse')
29
31
  AssociateVirtualInterfaceRequest = Shapes::StructureShape.new(name: 'AssociateVirtualInterfaceRequest')
30
32
  AssociatedGateway = Shapes::StructureShape.new(name: 'AssociatedGateway')
31
33
  AssociatedGatewayId = Shapes::StringShape.new(name: 'AssociatedGatewayId')
34
+ AvailableMacSecPortSpeeds = Shapes::ListShape.new(name: 'AvailableMacSecPortSpeeds')
32
35
  AvailablePortSpeeds = Shapes::ListShape.new(name: 'AvailablePortSpeeds')
33
36
  AwsDevice = Shapes::StringShape.new(name: 'AwsDevice')
34
37
  AwsDeviceV2 = Shapes::StringShape.new(name: 'AwsDeviceV2')
38
+ AwsLogicalDeviceId = Shapes::StringShape.new(name: 'AwsLogicalDeviceId')
35
39
  BGPAuthKey = Shapes::StringShape.new(name: 'BGPAuthKey')
36
40
  BGPPeer = Shapes::StructureShape.new(name: 'BGPPeer')
37
41
  BGPPeerId = Shapes::StringShape.new(name: 'BGPPeerId')
@@ -42,6 +46,8 @@ module Aws::DirectConnect
42
46
  Bandwidth = Shapes::StringShape.new(name: 'Bandwidth')
43
47
  BooleanFlag = Shapes::BooleanShape.new(name: 'BooleanFlag')
44
48
  CIDR = Shapes::StringShape.new(name: 'CIDR')
49
+ Cak = Shapes::StringShape.new(name: 'Cak')
50
+ Ckn = Shapes::StringShape.new(name: 'Ckn')
45
51
  ConfirmConnectionRequest = Shapes::StructureShape.new(name: 'ConfirmConnectionRequest')
46
52
  ConfirmConnectionResponse = Shapes::StructureShape.new(name: 'ConfirmConnectionResponse')
47
53
  ConfirmPrivateVirtualInterfaceRequest = Shapes::StructureShape.new(name: 'ConfirmPrivateVirtualInterfaceRequest')
@@ -128,7 +134,10 @@ module Aws::DirectConnect
128
134
  DirectConnectGatewayState = Shapes::StringShape.new(name: 'DirectConnectGatewayState')
129
135
  DirectConnectServerException = Shapes::StructureShape.new(name: 'DirectConnectServerException')
130
136
  DisassociateConnectionFromLagRequest = Shapes::StructureShape.new(name: 'DisassociateConnectionFromLagRequest')
137
+ DisassociateMacSecKeyRequest = Shapes::StructureShape.new(name: 'DisassociateMacSecKeyRequest')
138
+ DisassociateMacSecKeyResponse = Shapes::StructureShape.new(name: 'DisassociateMacSecKeyResponse')
131
139
  DuplicateTagKeysException = Shapes::StructureShape.new(name: 'DuplicateTagKeysException')
140
+ EncryptionMode = Shapes::StringShape.new(name: 'EncryptionMode')
132
141
  EndTime = Shapes::TimestampShape.new(name: 'EndTime')
133
142
  ErrorMessage = Shapes::StringShape.new(name: 'ErrorMessage')
134
143
  FailureTestHistoryStatus = Shapes::StringShape.new(name: 'FailureTestHistoryStatus')
@@ -162,6 +171,9 @@ module Aws::DirectConnect
162
171
  Locations = Shapes::StructureShape.new(name: 'Locations')
163
172
  LongAsn = Shapes::IntegerShape.new(name: 'LongAsn')
164
173
  MTU = Shapes::IntegerShape.new(name: 'MTU')
174
+ MacSecCapable = Shapes::BooleanShape.new(name: 'MacSecCapable')
175
+ MacSecKey = Shapes::StructureShape.new(name: 'MacSecKey')
176
+ MacSecKeyList = Shapes::ListShape.new(name: 'MacSecKeyList')
165
177
  MaxResultSetSize = Shapes::IntegerShape.new(name: 'MaxResultSetSize')
166
178
  NewBGPPeer = Shapes::StructureShape.new(name: 'NewBGPPeer')
167
179
  NewPrivateVirtualInterface = Shapes::StructureShape.new(name: 'NewPrivateVirtualInterface')
@@ -173,10 +185,12 @@ module Aws::DirectConnect
173
185
  OwnerAccount = Shapes::StringShape.new(name: 'OwnerAccount')
174
186
  PaginationToken = Shapes::StringShape.new(name: 'PaginationToken')
175
187
  PartnerName = Shapes::StringShape.new(name: 'PartnerName')
188
+ PortEncryptionStatus = Shapes::StringShape.new(name: 'PortEncryptionStatus')
176
189
  PortSpeed = Shapes::StringShape.new(name: 'PortSpeed')
177
190
  ProviderList = Shapes::ListShape.new(name: 'ProviderList')
178
191
  ProviderName = Shapes::StringShape.new(name: 'ProviderName')
179
192
  Region = Shapes::StringShape.new(name: 'Region')
193
+ RequestMACSec = Shapes::BooleanShape.new(name: 'RequestMACSec')
180
194
  ResourceArn = Shapes::StringShape.new(name: 'ResourceArn')
181
195
  ResourceArnList = Shapes::ListShape.new(name: 'ResourceArnList')
182
196
  ResourceTag = Shapes::StructureShape.new(name: 'ResourceTag')
@@ -184,9 +198,12 @@ module Aws::DirectConnect
184
198
  RouteFilterPrefix = Shapes::StructureShape.new(name: 'RouteFilterPrefix')
185
199
  RouteFilterPrefixList = Shapes::ListShape.new(name: 'RouteFilterPrefixList')
186
200
  RouterConfig = Shapes::StringShape.new(name: 'RouterConfig')
201
+ SecretARN = Shapes::StringShape.new(name: 'SecretARN')
187
202
  StartBgpFailoverTestRequest = Shapes::StructureShape.new(name: 'StartBgpFailoverTestRequest')
188
203
  StartBgpFailoverTestResponse = Shapes::StructureShape.new(name: 'StartBgpFailoverTestResponse')
204
+ StartOnDate = Shapes::StringShape.new(name: 'StartOnDate')
189
205
  StartTime = Shapes::TimestampShape.new(name: 'StartTime')
206
+ State = Shapes::StringShape.new(name: 'State')
190
207
  StateChangeError = Shapes::StringShape.new(name: 'StateChangeError')
191
208
  StopBgpFailoverTestRequest = Shapes::StructureShape.new(name: 'StopBgpFailoverTestRequest')
192
209
  StopBgpFailoverTestResponse = Shapes::StructureShape.new(name: 'StopBgpFailoverTestResponse')
@@ -202,6 +219,7 @@ module Aws::DirectConnect
202
219
  TooManyTagsException = Shapes::StructureShape.new(name: 'TooManyTagsException')
203
220
  UntagResourceRequest = Shapes::StructureShape.new(name: 'UntagResourceRequest')
204
221
  UntagResourceResponse = Shapes::StructureShape.new(name: 'UntagResourceResponse')
222
+ UpdateConnectionRequest = Shapes::StructureShape.new(name: 'UpdateConnectionRequest')
205
223
  UpdateDirectConnectGatewayAssociationRequest = Shapes::StructureShape.new(name: 'UpdateDirectConnectGatewayAssociationRequest')
206
224
  UpdateDirectConnectGatewayAssociationResult = Shapes::StructureShape.new(name: 'UpdateDirectConnectGatewayAssociationResult')
207
225
  UpdateLagRequest = Shapes::StructureShape.new(name: 'UpdateLagRequest')
@@ -274,6 +292,16 @@ module Aws::DirectConnect
274
292
  AssociateHostedConnectionRequest.add_member(:parent_connection_id, Shapes::ShapeRef.new(shape: ConnectionId, required: true, location_name: "parentConnectionId"))
275
293
  AssociateHostedConnectionRequest.struct_class = Types::AssociateHostedConnectionRequest
276
294
 
295
+ AssociateMacSecKeyRequest.add_member(:connection_id, Shapes::ShapeRef.new(shape: ConnectionId, required: true, location_name: "connectionId"))
296
+ AssociateMacSecKeyRequest.add_member(:secret_arn, Shapes::ShapeRef.new(shape: SecretARN, location_name: "secretARN"))
297
+ AssociateMacSecKeyRequest.add_member(:ckn, Shapes::ShapeRef.new(shape: Ckn, location_name: "ckn"))
298
+ AssociateMacSecKeyRequest.add_member(:cak, Shapes::ShapeRef.new(shape: Cak, location_name: "cak"))
299
+ AssociateMacSecKeyRequest.struct_class = Types::AssociateMacSecKeyRequest
300
+
301
+ AssociateMacSecKeyResponse.add_member(:connection_id, Shapes::ShapeRef.new(shape: ConnectionId, location_name: "connectionId"))
302
+ AssociateMacSecKeyResponse.add_member(:mac_sec_keys, Shapes::ShapeRef.new(shape: MacSecKeyList, location_name: "macSecKeys"))
303
+ AssociateMacSecKeyResponse.struct_class = Types::AssociateMacSecKeyResponse
304
+
277
305
  AssociateVirtualInterfaceRequest.add_member(:virtual_interface_id, Shapes::ShapeRef.new(shape: VirtualInterfaceId, required: true, location_name: "virtualInterfaceId"))
278
306
  AssociateVirtualInterfaceRequest.add_member(:connection_id, Shapes::ShapeRef.new(shape: ConnectionId, required: true, location_name: "connectionId"))
279
307
  AssociateVirtualInterfaceRequest.struct_class = Types::AssociateVirtualInterfaceRequest
@@ -284,6 +312,8 @@ module Aws::DirectConnect
284
312
  AssociatedGateway.add_member(:region, Shapes::ShapeRef.new(shape: Region, location_name: "region"))
285
313
  AssociatedGateway.struct_class = Types::AssociatedGateway
286
314
 
315
+ AvailableMacSecPortSpeeds.member = Shapes::ShapeRef.new(shape: PortSpeed)
316
+
287
317
  AvailablePortSpeeds.member = Shapes::ShapeRef.new(shape: PortSpeed)
288
318
 
289
319
  BGPPeer.add_member(:bgp_peer_id, Shapes::ShapeRef.new(shape: BGPPeerId, location_name: "bgpPeerId"))
@@ -295,6 +325,7 @@ module Aws::DirectConnect
295
325
  BGPPeer.add_member(:bgp_peer_state, Shapes::ShapeRef.new(shape: BGPPeerState, location_name: "bgpPeerState"))
296
326
  BGPPeer.add_member(:bgp_status, Shapes::ShapeRef.new(shape: BGPStatus, location_name: "bgpStatus"))
297
327
  BGPPeer.add_member(:aws_device_v2, Shapes::ShapeRef.new(shape: AwsDeviceV2, location_name: "awsDeviceV2"))
328
+ BGPPeer.add_member(:aws_logical_device_id, Shapes::ShapeRef.new(shape: AwsLogicalDeviceId, location_name: "awsLogicalDeviceId"))
298
329
  BGPPeer.struct_class = Types::BGPPeer
299
330
 
300
331
  BGPPeerIdList.member = Shapes::ShapeRef.new(shape: BGPPeerId)
@@ -342,9 +373,14 @@ module Aws::DirectConnect
342
373
  Connection.add_member(:aws_device, Shapes::ShapeRef.new(shape: AwsDevice, deprecated: true, location_name: "awsDevice"))
343
374
  Connection.add_member(:jumbo_frame_capable, Shapes::ShapeRef.new(shape: JumboFrameCapable, location_name: "jumboFrameCapable"))
344
375
  Connection.add_member(:aws_device_v2, Shapes::ShapeRef.new(shape: AwsDeviceV2, location_name: "awsDeviceV2"))
376
+ Connection.add_member(:aws_logical_device_id, Shapes::ShapeRef.new(shape: AwsLogicalDeviceId, location_name: "awsLogicalDeviceId"))
345
377
  Connection.add_member(:has_logical_redundancy, Shapes::ShapeRef.new(shape: HasLogicalRedundancy, location_name: "hasLogicalRedundancy"))
346
378
  Connection.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "tags"))
347
379
  Connection.add_member(:provider_name, Shapes::ShapeRef.new(shape: ProviderName, location_name: "providerName"))
380
+ Connection.add_member(:mac_sec_capable, Shapes::ShapeRef.new(shape: MacSecCapable, location_name: "macSecCapable"))
381
+ Connection.add_member(:port_encryption_status, Shapes::ShapeRef.new(shape: PortEncryptionStatus, location_name: "portEncryptionStatus"))
382
+ Connection.add_member(:encryption_mode, Shapes::ShapeRef.new(shape: EncryptionMode, location_name: "encryptionMode"))
383
+ Connection.add_member(:mac_sec_keys, Shapes::ShapeRef.new(shape: MacSecKeyList, location_name: "macSecKeys"))
348
384
  Connection.struct_class = Types::Connection
349
385
 
350
386
  ConnectionList.member = Shapes::ShapeRef.new(shape: Connection)
@@ -365,6 +401,7 @@ module Aws::DirectConnect
365
401
  CreateConnectionRequest.add_member(:lag_id, Shapes::ShapeRef.new(shape: LagId, location_name: "lagId"))
366
402
  CreateConnectionRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "tags"))
367
403
  CreateConnectionRequest.add_member(:provider_name, Shapes::ShapeRef.new(shape: ProviderName, location_name: "providerName"))
404
+ CreateConnectionRequest.add_member(:request_mac_sec, Shapes::ShapeRef.new(shape: RequestMACSec, location_name: "requestMACSec"))
368
405
  CreateConnectionRequest.struct_class = Types::CreateConnectionRequest
369
406
 
370
407
  CreateDirectConnectGatewayAssociationProposalRequest.add_member(:direct_connect_gateway_id, Shapes::ShapeRef.new(shape: DirectConnectGatewayId, required: true, location_name: "directConnectGatewayId"))
@@ -409,6 +446,7 @@ module Aws::DirectConnect
409
446
  CreateLagRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "tags"))
410
447
  CreateLagRequest.add_member(:child_connection_tags, Shapes::ShapeRef.new(shape: TagList, location_name: "childConnectionTags"))
411
448
  CreateLagRequest.add_member(:provider_name, Shapes::ShapeRef.new(shape: ProviderName, location_name: "providerName"))
449
+ CreateLagRequest.add_member(:request_mac_sec, Shapes::ShapeRef.new(shape: RequestMACSec, location_name: "requestMACSec"))
412
450
  CreateLagRequest.struct_class = Types::CreateLagRequest
413
451
 
414
452
  CreatePrivateVirtualInterfaceRequest.add_member(:connection_id, Shapes::ShapeRef.new(shape: ConnectionId, required: true, location_name: "connectionId"))
@@ -617,6 +655,14 @@ module Aws::DirectConnect
617
655
  DisassociateConnectionFromLagRequest.add_member(:lag_id, Shapes::ShapeRef.new(shape: LagId, required: true, location_name: "lagId"))
618
656
  DisassociateConnectionFromLagRequest.struct_class = Types::DisassociateConnectionFromLagRequest
619
657
 
658
+ DisassociateMacSecKeyRequest.add_member(:connection_id, Shapes::ShapeRef.new(shape: ConnectionId, required: true, location_name: "connectionId"))
659
+ DisassociateMacSecKeyRequest.add_member(:secret_arn, Shapes::ShapeRef.new(shape: SecretARN, required: true, location_name: "secretARN"))
660
+ DisassociateMacSecKeyRequest.struct_class = Types::DisassociateMacSecKeyRequest
661
+
662
+ DisassociateMacSecKeyResponse.add_member(:connection_id, Shapes::ShapeRef.new(shape: ConnectionId, location_name: "connectionId"))
663
+ DisassociateMacSecKeyResponse.add_member(:mac_sec_keys, Shapes::ShapeRef.new(shape: MacSecKeyList, location_name: "macSecKeys"))
664
+ DisassociateMacSecKeyResponse.struct_class = Types::DisassociateMacSecKeyResponse
665
+
620
666
  DuplicateTagKeysException.struct_class = Types::DuplicateTagKeysException
621
667
 
622
668
  Interconnect.add_member(:interconnect_id, Shapes::ShapeRef.new(shape: InterconnectId, location_name: "interconnectId"))
@@ -630,6 +676,7 @@ module Aws::DirectConnect
630
676
  Interconnect.add_member(:aws_device, Shapes::ShapeRef.new(shape: AwsDevice, deprecated: true, location_name: "awsDevice"))
631
677
  Interconnect.add_member(:jumbo_frame_capable, Shapes::ShapeRef.new(shape: JumboFrameCapable, location_name: "jumboFrameCapable"))
632
678
  Interconnect.add_member(:aws_device_v2, Shapes::ShapeRef.new(shape: AwsDeviceV2, location_name: "awsDeviceV2"))
679
+ Interconnect.add_member(:aws_logical_device_id, Shapes::ShapeRef.new(shape: AwsLogicalDeviceId, location_name: "awsLogicalDeviceId"))
633
680
  Interconnect.add_member(:has_logical_redundancy, Shapes::ShapeRef.new(shape: HasLogicalRedundancy, location_name: "hasLogicalRedundancy"))
634
681
  Interconnect.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "tags"))
635
682
  Interconnect.add_member(:provider_name, Shapes::ShapeRef.new(shape: ProviderName, location_name: "providerName"))
@@ -651,12 +698,16 @@ module Aws::DirectConnect
651
698
  Lag.add_member(:minimum_links, Shapes::ShapeRef.new(shape: Count, location_name: "minimumLinks"))
652
699
  Lag.add_member(:aws_device, Shapes::ShapeRef.new(shape: AwsDevice, deprecated: true, location_name: "awsDevice"))
653
700
  Lag.add_member(:aws_device_v2, Shapes::ShapeRef.new(shape: AwsDeviceV2, location_name: "awsDeviceV2"))
701
+ Lag.add_member(:aws_logical_device_id, Shapes::ShapeRef.new(shape: AwsLogicalDeviceId, location_name: "awsLogicalDeviceId"))
654
702
  Lag.add_member(:connections, Shapes::ShapeRef.new(shape: ConnectionList, location_name: "connections"))
655
703
  Lag.add_member(:allows_hosted_connections, Shapes::ShapeRef.new(shape: BooleanFlag, location_name: "allowsHostedConnections"))
656
704
  Lag.add_member(:jumbo_frame_capable, Shapes::ShapeRef.new(shape: JumboFrameCapable, location_name: "jumboFrameCapable"))
657
705
  Lag.add_member(:has_logical_redundancy, Shapes::ShapeRef.new(shape: HasLogicalRedundancy, location_name: "hasLogicalRedundancy"))
658
706
  Lag.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "tags"))
659
707
  Lag.add_member(:provider_name, Shapes::ShapeRef.new(shape: ProviderName, location_name: "providerName"))
708
+ Lag.add_member(:mac_sec_capable, Shapes::ShapeRef.new(shape: MacSecCapable, location_name: "macSecCapable"))
709
+ Lag.add_member(:encryption_mode, Shapes::ShapeRef.new(shape: EncryptionMode, location_name: "encryptionMode"))
710
+ Lag.add_member(:mac_sec_keys, Shapes::ShapeRef.new(shape: MacSecKeyList, location_name: "macSecKeys"))
660
711
  Lag.struct_class = Types::Lag
661
712
 
662
713
  LagList.member = Shapes::ShapeRef.new(shape: Lag)
@@ -685,6 +736,7 @@ module Aws::DirectConnect
685
736
  Location.add_member(:region, Shapes::ShapeRef.new(shape: Region, location_name: "region"))
686
737
  Location.add_member(:available_port_speeds, Shapes::ShapeRef.new(shape: AvailablePortSpeeds, location_name: "availablePortSpeeds"))
687
738
  Location.add_member(:available_providers, Shapes::ShapeRef.new(shape: ProviderList, location_name: "availableProviders"))
739
+ Location.add_member(:available_mac_sec_port_speeds, Shapes::ShapeRef.new(shape: AvailableMacSecPortSpeeds, location_name: "availableMacSecPortSpeeds"))
688
740
  Location.struct_class = Types::Location
689
741
 
690
742
  LocationList.member = Shapes::ShapeRef.new(shape: Location)
@@ -692,6 +744,14 @@ module Aws::DirectConnect
692
744
  Locations.add_member(:locations, Shapes::ShapeRef.new(shape: LocationList, location_name: "locations"))
693
745
  Locations.struct_class = Types::Locations
694
746
 
747
+ MacSecKey.add_member(:secret_arn, Shapes::ShapeRef.new(shape: SecretARN, location_name: "secretARN"))
748
+ MacSecKey.add_member(:ckn, Shapes::ShapeRef.new(shape: Ckn, location_name: "ckn"))
749
+ MacSecKey.add_member(:state, Shapes::ShapeRef.new(shape: State, location_name: "state"))
750
+ MacSecKey.add_member(:start_on, Shapes::ShapeRef.new(shape: StartOnDate, location_name: "startOn"))
751
+ MacSecKey.struct_class = Types::MacSecKey
752
+
753
+ MacSecKeyList.member = Shapes::ShapeRef.new(shape: MacSecKey)
754
+
695
755
  NewBGPPeer.add_member(:asn, Shapes::ShapeRef.new(shape: ASN, location_name: "asn"))
696
756
  NewBGPPeer.add_member(:auth_key, Shapes::ShapeRef.new(shape: BGPAuthKey, location_name: "authKey"))
697
757
  NewBGPPeer.add_member(:address_family, Shapes::ShapeRef.new(shape: AddressFamily, location_name: "addressFamily"))
@@ -819,6 +879,11 @@ module Aws::DirectConnect
819
879
 
820
880
  UntagResourceResponse.struct_class = Types::UntagResourceResponse
821
881
 
882
+ UpdateConnectionRequest.add_member(:connection_id, Shapes::ShapeRef.new(shape: ConnectionId, required: true, location_name: "connectionId"))
883
+ UpdateConnectionRequest.add_member(:connection_name, Shapes::ShapeRef.new(shape: ConnectionName, location_name: "connectionName"))
884
+ UpdateConnectionRequest.add_member(:encryption_mode, Shapes::ShapeRef.new(shape: EncryptionMode, location_name: "encryptionMode"))
885
+ UpdateConnectionRequest.struct_class = Types::UpdateConnectionRequest
886
+
822
887
  UpdateDirectConnectGatewayAssociationRequest.add_member(:association_id, Shapes::ShapeRef.new(shape: DirectConnectGatewayAssociationId, location_name: "associationId"))
823
888
  UpdateDirectConnectGatewayAssociationRequest.add_member(:add_allowed_prefixes_to_direct_connect_gateway, Shapes::ShapeRef.new(shape: RouteFilterPrefixList, location_name: "addAllowedPrefixesToDirectConnectGateway"))
824
889
  UpdateDirectConnectGatewayAssociationRequest.add_member(:remove_allowed_prefixes_to_direct_connect_gateway, Shapes::ShapeRef.new(shape: RouteFilterPrefixList, location_name: "removeAllowedPrefixesToDirectConnectGateway"))
@@ -830,6 +895,7 @@ module Aws::DirectConnect
830
895
  UpdateLagRequest.add_member(:lag_id, Shapes::ShapeRef.new(shape: LagId, required: true, location_name: "lagId"))
831
896
  UpdateLagRequest.add_member(:lag_name, Shapes::ShapeRef.new(shape: LagName, location_name: "lagName"))
832
897
  UpdateLagRequest.add_member(:minimum_links, Shapes::ShapeRef.new(shape: Count, location_name: "minimumLinks"))
898
+ UpdateLagRequest.add_member(:encryption_mode, Shapes::ShapeRef.new(shape: EncryptionMode, location_name: "encryptionMode"))
833
899
  UpdateLagRequest.struct_class = Types::UpdateLagRequest
834
900
 
835
901
  UpdateVirtualInterfaceAttributesRequest.add_member(:virtual_interface_id, Shapes::ShapeRef.new(shape: VirtualInterfaceId, required: true, location_name: "virtualInterfaceId"))
@@ -868,6 +934,7 @@ module Aws::DirectConnect
868
934
  VirtualInterface.add_member(:bgp_peers, Shapes::ShapeRef.new(shape: BGPPeerList, location_name: "bgpPeers"))
869
935
  VirtualInterface.add_member(:region, Shapes::ShapeRef.new(shape: Region, location_name: "region"))
870
936
  VirtualInterface.add_member(:aws_device_v2, Shapes::ShapeRef.new(shape: AwsDeviceV2, location_name: "awsDeviceV2"))
937
+ VirtualInterface.add_member(:aws_logical_device_id, Shapes::ShapeRef.new(shape: AwsLogicalDeviceId, location_name: "awsLogicalDeviceId"))
871
938
  VirtualInterface.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "tags"))
872
939
  VirtualInterface.struct_class = Types::VirtualInterface
873
940
 
@@ -995,6 +1062,16 @@ module Aws::DirectConnect
995
1062
  o.errors << Shapes::ShapeRef.new(shape: DirectConnectClientException)
996
1063
  end)
997
1064
 
1065
+ api.add_operation(:associate_mac_sec_key, Seahorse::Model::Operation.new.tap do |o|
1066
+ o.name = "AssociateMacSecKey"
1067
+ o.http_method = "POST"
1068
+ o.http_request_uri = "/"
1069
+ o.input = Shapes::ShapeRef.new(shape: AssociateMacSecKeyRequest)
1070
+ o.output = Shapes::ShapeRef.new(shape: AssociateMacSecKeyResponse)
1071
+ o.errors << Shapes::ShapeRef.new(shape: DirectConnectServerException)
1072
+ o.errors << Shapes::ShapeRef.new(shape: DirectConnectClientException)
1073
+ end)
1074
+
998
1075
  api.add_operation(:associate_virtual_interface, Seahorse::Model::Operation.new.tap do |o|
999
1076
  o.name = "AssociateVirtualInterface"
1000
1077
  o.http_method = "POST"
@@ -1410,6 +1487,16 @@ module Aws::DirectConnect
1410
1487
  o.errors << Shapes::ShapeRef.new(shape: DirectConnectClientException)
1411
1488
  end)
1412
1489
 
1490
+ api.add_operation(:disassociate_mac_sec_key, Seahorse::Model::Operation.new.tap do |o|
1491
+ o.name = "DisassociateMacSecKey"
1492
+ o.http_method = "POST"
1493
+ o.http_request_uri = "/"
1494
+ o.input = Shapes::ShapeRef.new(shape: DisassociateMacSecKeyRequest)
1495
+ o.output = Shapes::ShapeRef.new(shape: DisassociateMacSecKeyResponse)
1496
+ o.errors << Shapes::ShapeRef.new(shape: DirectConnectServerException)
1497
+ o.errors << Shapes::ShapeRef.new(shape: DirectConnectClientException)
1498
+ end)
1499
+
1413
1500
  api.add_operation(:list_virtual_interface_test_history, Seahorse::Model::Operation.new.tap do |o|
1414
1501
  o.name = "ListVirtualInterfaceTestHistory"
1415
1502
  o.http_method = "POST"
@@ -1462,6 +1549,16 @@ module Aws::DirectConnect
1462
1549
  o.errors << Shapes::ShapeRef.new(shape: DirectConnectClientException)
1463
1550
  end)
1464
1551
 
1552
+ api.add_operation(:update_connection, Seahorse::Model::Operation.new.tap do |o|
1553
+ o.name = "UpdateConnection"
1554
+ o.http_method = "POST"
1555
+ o.http_request_uri = "/"
1556
+ o.input = Shapes::ShapeRef.new(shape: UpdateConnectionRequest)
1557
+ o.output = Shapes::ShapeRef.new(shape: Connection)
1558
+ o.errors << Shapes::ShapeRef.new(shape: DirectConnectServerException)
1559
+ o.errors << Shapes::ShapeRef.new(shape: DirectConnectClientException)
1560
+ end)
1561
+
1465
1562
  api.add_operation(:update_direct_connect_gateway_association, Seahorse::Model::Operation.new.tap do |o|
1466
1563
  o.name = "UpdateDirectConnectGatewayAssociation"
1467
1564
  o.http_method = "POST"
@@ -2,7 +2,7 @@
2
2
  # WARNING ABOUT GENERATED CODE
3
3
  #
4
4
  # This file is generated. See the contributing for info on making contributions:
5
- # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
6
6
  #
7
7
  # WARNING ABOUT GENERATED CODE
8
8
 
@@ -3,7 +3,7 @@
3
3
  # WARNING ABOUT GENERATED CODE
4
4
  #
5
5
  # This file is generated. See the contributing guide for more information:
6
- # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
7
  #
8
8
  # WARNING ABOUT GENERATED CODE
9
9
 
@@ -3,7 +3,7 @@
3
3
  # WARNING ABOUT GENERATED CODE
4
4
  #
5
5
  # This file is generated. See the contributing guide for more information:
6
- # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
7
  #
8
8
  # WARNING ABOUT GENERATED CODE
9
9
 
@@ -3,7 +3,7 @@
3
3
  # WARNING ABOUT GENERATED CODE
4
4
  #
5
5
  # This file is generated. See the contributing guide for more information:
6
- # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
7
  #
8
8
  # WARNING ABOUT GENERATED CODE
9
9
 
@@ -33,7 +33,7 @@ module Aws::DirectConnect
33
33
  # @return [String]
34
34
  #
35
35
  # @!attribute [rw] associated_gateway_owner_account
36
- # The ID of the AWS account that owns the virtual private gateway or
36
+ # The ID of the account that owns the virtual private gateway or
37
37
  # transit gateway.
38
38
  # @return [String]
39
39
  #
@@ -42,7 +42,7 @@ module Aws::DirectConnect
42
42
  # gateway.
43
43
  #
44
44
  # For information about how to set the prefixes, see [Allowed
45
- # Prefixes][1] in the *AWS Direct Connect User Guide*.
45
+ # Prefixes][1] in the *Direct Connect User Guide*.
46
46
  #
47
47
  #
48
48
  #
@@ -87,8 +87,8 @@ module Aws::DirectConnect
87
87
  # @!attribute [rw] bandwidth
88
88
  # The bandwidth of the connection. The possible values are 50Mbps,
89
89
  # 100Mbps, 200Mbps, 300Mbps, 400Mbps, 500Mbps, 1Gbps, 2Gbps, 5Gbps,
90
- # and 10Gbps. Note that only those AWS Direct Connect Partners who
91
- # have met specific requirements are allowed to create a 1Gbps, 2Gbps,
90
+ # and 10Gbps. Note that only those Direct Connect Partners who have
91
+ # met specific requirements are allowed to create a 1Gbps, 2Gbps,
92
92
  # 5Gbps or 10Gbps hosted connection.
93
93
  # @return [String]
94
94
  #
@@ -97,8 +97,8 @@ module Aws::DirectConnect
97
97
  # @return [String]
98
98
  #
99
99
  # @!attribute [rw] owner_account
100
- # The ID of the AWS account of the customer for whom the connection
101
- # will be provisioned.
100
+ # The ID of the account of the customer for whom the connection will
101
+ # be provisioned.
102
102
  # @return [String]
103
103
  #
104
104
  # @!attribute [rw] interconnect_id
@@ -144,14 +144,14 @@ module Aws::DirectConnect
144
144
  # @return [String]
145
145
  #
146
146
  # @!attribute [rw] owner_account
147
- # The ID of the AWS account ID of the customer for the connection.
147
+ # The ID of the account ID of the customer for the connection.
148
148
  # @return [String]
149
149
  #
150
150
  # @!attribute [rw] bandwidth
151
151
  # The bandwidth of the connection. The possible values are 50Mbps,
152
152
  # 100Mbps, 200Mbps, 300Mbps, 400Mbps, 500Mbps, 1Gbps, 2Gbps, 5Gbps,
153
- # and 10Gbps. Note that only those AWS Direct Connect Partners who
154
- # have met specific requirements are allowed to create a 1Gbps, 2Gbps,
153
+ # and 10Gbps. Note that only those Direct Connect Partners who have
154
+ # met specific requirements are allowed to create a 1Gbps, 2Gbps,
155
155
  # 5Gbps or 10Gbps hosted connection.
156
156
  # @return [String]
157
157
  #
@@ -210,7 +210,7 @@ module Aws::DirectConnect
210
210
  # @return [String]
211
211
  #
212
212
  # @!attribute [rw] owner_account
213
- # The ID of the AWS account that owns the virtual private interface.
213
+ # The ID of the account that owns the virtual private interface.
214
214
  # @return [String]
215
215
  #
216
216
  # @!attribute [rw] new_private_virtual_interface_allocation
@@ -261,7 +261,7 @@ module Aws::DirectConnect
261
261
  # @return [String]
262
262
  #
263
263
  # @!attribute [rw] owner_account
264
- # The ID of the AWS account that owns the public virtual interface.
264
+ # The ID of the account that owns the public virtual interface.
265
265
  # @return [String]
266
266
  #
267
267
  # @!attribute [rw] new_public_virtual_interface_allocation
@@ -308,7 +308,7 @@ module Aws::DirectConnect
308
308
  # @return [String]
309
309
  #
310
310
  # @!attribute [rw] owner_account
311
- # The ID of the AWS account that owns the transit virtual interface.
311
+ # The ID of the account that owns the transit virtual interface.
312
312
  # @return [String]
313
313
  #
314
314
  # @!attribute [rw] new_transit_virtual_interface_allocation
@@ -387,6 +387,89 @@ module Aws::DirectConnect
387
387
  include Aws::Structure
388
388
  end
389
389
 
390
+ # @note When making an API call, you may pass AssociateMacSecKeyRequest
391
+ # data as a hash:
392
+ #
393
+ # {
394
+ # connection_id: "ConnectionId", # required
395
+ # secret_arn: "SecretARN",
396
+ # ckn: "Ckn",
397
+ # cak: "Cak",
398
+ # }
399
+ #
400
+ # @!attribute [rw] connection_id
401
+ # The ID of the dedicated connection (dxcon-xxxx), or the ID of the
402
+ # LAG (dxlag-xxxx).
403
+ #
404
+ # You can use DescribeConnections or DescribeLags to retrieve
405
+ # connection ID.
406
+ # @return [String]
407
+ #
408
+ # @!attribute [rw] secret_arn
409
+ # The Amazon Resource Name (ARN) of the MAC Security (MACsec) secret
410
+ # key to associate with the dedicated connection.
411
+ #
412
+ # You can use DescribeConnections or DescribeLags to retrieve the MAC
413
+ # Security (MACsec) secret key.
414
+ #
415
+ # If you use this request parameter, you do not use the `ckn` and
416
+ # `cak` request parameters.
417
+ # @return [String]
418
+ #
419
+ # @!attribute [rw] ckn
420
+ # The MAC Security (MACsec) CKN to associate with the dedicated
421
+ # connection.
422
+ #
423
+ # You can create the CKN/CAK pair using an industry standard tool.
424
+ #
425
+ # The valid values are 64 hexadecimal characters (0-9, A-E).
426
+ #
427
+ # If you use this request parameter, you must use the `cak` request
428
+ # parameter and not use the `secretARN` request parameter.
429
+ # @return [String]
430
+ #
431
+ # @!attribute [rw] cak
432
+ # The MAC Security (MACsec) CAK to associate with the dedicated
433
+ # connection.
434
+ #
435
+ # You can create the CKN/CAK pair using an industry standard tool.
436
+ #
437
+ # The valid values are 64 hexadecimal characters (0-9, A-E).
438
+ #
439
+ # If you use this request parameter, you must use the `ckn` request
440
+ # parameter and not use the `secretARN` request parameter.
441
+ # @return [String]
442
+ #
443
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/AssociateMacSecKeyRequest AWS API Documentation
444
+ #
445
+ class AssociateMacSecKeyRequest < Struct.new(
446
+ :connection_id,
447
+ :secret_arn,
448
+ :ckn,
449
+ :cak)
450
+ SENSITIVE = []
451
+ include Aws::Structure
452
+ end
453
+
454
+ # @!attribute [rw] connection_id
455
+ # The ID of the dedicated connection (dxcon-xxxx), or the ID of the
456
+ # LAG (dxlag-xxxx).
457
+ # @return [String]
458
+ #
459
+ # @!attribute [rw] mac_sec_keys
460
+ # The MAC Security (MACsec) security keys associated with the
461
+ # dedicated connection.
462
+ # @return [Array<Types::MacSecKey>]
463
+ #
464
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/AssociateMacSecKeyResponse AWS API Documentation
465
+ #
466
+ class AssociateMacSecKeyResponse < Struct.new(
467
+ :connection_id,
468
+ :mac_sec_keys)
469
+ SENSITIVE = []
470
+ include Aws::Structure
471
+ end
472
+
390
473
  # @note When making an API call, you may pass AssociateVirtualInterfaceRequest
391
474
  # data as a hash:
392
475
  #
@@ -423,7 +506,7 @@ module Aws::DirectConnect
423
506
  # @return [String]
424
507
  #
425
508
  # @!attribute [rw] owner_account
426
- # The ID of the AWS account that owns the associated virtual private
509
+ # The ID of the account that owns the associated virtual private
427
510
  # gateway or transit gateway.
428
511
  # @return [String]
429
512
  #
@@ -504,6 +587,9 @@ module Aws::DirectConnect
504
587
  # The Direct Connect endpoint on which the BGP peer terminates.
505
588
  # @return [String]
506
589
  #
590
+ # @!attribute [rw] aws_logical_device_id
591
+ # @return [String]
592
+ #
507
593
  # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/BGPPeer AWS API Documentation
508
594
  #
509
595
  class BGPPeer < Struct.new(
@@ -515,7 +601,8 @@ module Aws::DirectConnect
515
601
  :customer_address,
516
602
  :bgp_peer_state,
517
603
  :bgp_status,
518
- :aws_device_v2)
604
+ :aws_device_v2,
605
+ :aws_logical_device_id)
519
606
  SENSITIVE = []
520
607
  include Aws::Structure
521
608
  end
@@ -784,10 +871,10 @@ module Aws::DirectConnect
784
871
  include Aws::Structure
785
872
  end
786
873
 
787
- # Information about an AWS Direct Connect connection.
874
+ # Information about an Direct Connect connection.
788
875
  #
789
876
  # @!attribute [rw] owner_account
790
- # The ID of the AWS account that owns the connection.
877
+ # The ID of the account that owns the connection.
791
878
  # @return [String]
792
879
  #
793
880
  # @!attribute [rw] connection_id
@@ -829,7 +916,7 @@ module Aws::DirectConnect
829
916
  # @return [String]
830
917
  #
831
918
  # @!attribute [rw] region
832
- # The AWS Region where the connection is located.
919
+ # The Region where the connection is located.
833
920
  # @return [String]
834
921
  #
835
922
  # @!attribute [rw] location
@@ -845,8 +932,8 @@ module Aws::DirectConnect
845
932
  # @return [Integer]
846
933
  #
847
934
  # @!attribute [rw] partner_name
848
- # The name of the AWS Direct Connect service provider associated with
849
- # the connection.
935
+ # The name of the Direct Connect service provider associated with the
936
+ # connection.
850
937
  # @return [String]
851
938
  #
852
939
  # @!attribute [rw] loa_issue_time
@@ -871,6 +958,11 @@ module Aws::DirectConnect
871
958
  # terminates.
872
959
  # @return [String]
873
960
  #
961
+ # @!attribute [rw] aws_logical_device_id
962
+ # The Direct Connect endpoint that terminates a physical connection's
963
+ # BGP sessions.
964
+ # @return [String]
965
+ #
874
966
  # @!attribute [rw] has_logical_redundancy
875
967
  # Indicates whether the connection supports a secondary BGP peer in
876
968
  # the same address family (IPv4/IPv6).
@@ -884,6 +976,29 @@ module Aws::DirectConnect
884
976
  # The name of the service provider associated with the connection.
885
977
  # @return [String]
886
978
  #
979
+ # @!attribute [rw] mac_sec_capable
980
+ # Indicates whether the connection supports MAC Security (MACsec).
981
+ # @return [Boolean]
982
+ #
983
+ # @!attribute [rw] port_encryption_status
984
+ # The MAC Security (MACsec) port link status of the connection.
985
+ #
986
+ # The valid values are `Encryption Up`, which means that there is an
987
+ # active Connection Key Name, or `Encryption Down`.
988
+ # @return [String]
989
+ #
990
+ # @!attribute [rw] encryption_mode
991
+ # The MAC Security (MACsec) connection encryption mode.
992
+ #
993
+ # The valid values are `no_encrypt`, `should_encrypt`, and
994
+ # `must_encrypt`.
995
+ # @return [String]
996
+ #
997
+ # @!attribute [rw] mac_sec_keys
998
+ # The MAC Security (MACsec) security keys associated with the
999
+ # connection.
1000
+ # @return [Array<Types::MacSecKey>]
1001
+ #
887
1002
  # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/Connection AWS API Documentation
888
1003
  #
889
1004
  class Connection < Struct.new(
@@ -901,9 +1016,14 @@ module Aws::DirectConnect
901
1016
  :aws_device,
902
1017
  :jumbo_frame_capable,
903
1018
  :aws_device_v2,
1019
+ :aws_logical_device_id,
904
1020
  :has_logical_redundancy,
905
1021
  :tags,
906
- :provider_name)
1022
+ :provider_name,
1023
+ :mac_sec_capable,
1024
+ :port_encryption_status,
1025
+ :encryption_mode,
1026
+ :mac_sec_keys)
907
1027
  SENSITIVE = []
908
1028
  include Aws::Structure
909
1029
  end
@@ -978,6 +1098,7 @@ module Aws::DirectConnect
978
1098
  # },
979
1099
  # ],
980
1100
  # provider_name: "ProviderName",
1101
+ # request_mac_sec: false,
981
1102
  # }
982
1103
  #
983
1104
  # @!attribute [rw] location
@@ -1005,6 +1126,19 @@ module Aws::DirectConnect
1005
1126
  # connection.
1006
1127
  # @return [String]
1007
1128
  #
1129
+ # @!attribute [rw] request_mac_sec
1130
+ # Indicates whether you want the connection to support MAC Security
1131
+ # (MACsec).
1132
+ #
1133
+ # MAC Security (MACsec) is only available on dedicated connections.
1134
+ # For information about MAC Security (MACsec) prerequisties, see
1135
+ # [MACsec prerequisties][1] in the *Direct Connect User Guide*.
1136
+ #
1137
+ #
1138
+ #
1139
+ # [1]: https://docs.aws.amazon.com/directconnect/latest/UserGuide/direct-connect-mac-sec-getting-started.html#mac-sec-prerequisites
1140
+ # @return [Boolean]
1141
+ #
1008
1142
  # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/CreateConnectionRequest AWS API Documentation
1009
1143
  #
1010
1144
  class CreateConnectionRequest < Struct.new(
@@ -1013,7 +1147,8 @@ module Aws::DirectConnect
1013
1147
  :connection_name,
1014
1148
  :lag_id,
1015
1149
  :tags,
1016
- :provider_name)
1150
+ :provider_name,
1151
+ :request_mac_sec)
1017
1152
  SENSITIVE = []
1018
1153
  include Aws::Structure
1019
1154
  end
@@ -1042,7 +1177,7 @@ module Aws::DirectConnect
1042
1177
  # @return [String]
1043
1178
  #
1044
1179
  # @!attribute [rw] direct_connect_gateway_owner_account
1045
- # The ID of the AWS account that owns the Direct Connect gateway.
1180
+ # The ID of the account that owns the Direct Connect gateway.
1046
1181
  # @return [String]
1047
1182
  #
1048
1183
  # @!attribute [rw] gateway_id
@@ -1111,7 +1246,7 @@ module Aws::DirectConnect
1111
1246
  # transit gateway.
1112
1247
  #
1113
1248
  # For information about how to set the prefixes, see [Allowed
1114
- # Prefixes][1] in the *AWS Direct Connect User Guide*.
1249
+ # Prefixes][1] in the *Direct Connect User Guide*.
1115
1250
  #
1116
1251
  #
1117
1252
  #
@@ -1261,6 +1396,7 @@ module Aws::DirectConnect
1261
1396
  # },
1262
1397
  # ],
1263
1398
  # provider_name: "ProviderName",
1399
+ # request_mac_sec: false,
1264
1400
  # }
1265
1401
  #
1266
1402
  # @!attribute [rw] number_of_connections
@@ -1297,6 +1433,21 @@ module Aws::DirectConnect
1297
1433
  # The name of the service provider associated with the LAG.
1298
1434
  # @return [String]
1299
1435
  #
1436
+ # @!attribute [rw] request_mac_sec
1437
+ # Indicates whether the connection will support MAC Security (MACsec).
1438
+ #
1439
+ # <note markdown="1"> All connections in the LAG must be capable of supporting MAC
1440
+ # Security (MACsec). For information about MAC Security (MACsec)
1441
+ # prerequisties, see [MACsec prerequisties][1] in the *Direct Connect
1442
+ # User Guide*.
1443
+ #
1444
+ # </note>
1445
+ #
1446
+ #
1447
+ #
1448
+ # [1]: https://docs.aws.amazon.com/directconnect/latest/UserGuide/direct-connect-mac-sec-getting-started.html#mac-sec-prerequisites
1449
+ # @return [Boolean]
1450
+ #
1300
1451
  # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/CreateLagRequest AWS API Documentation
1301
1452
  #
1302
1453
  class CreateLagRequest < Struct.new(
@@ -1307,7 +1458,8 @@ module Aws::DirectConnect
1307
1458
  :connection_id,
1308
1459
  :tags,
1309
1460
  :child_connection_tags,
1310
- :provider_name)
1461
+ :provider_name,
1462
+ :request_mac_sec)
1311
1463
  SENSITIVE = []
1312
1464
  include Aws::Structure
1313
1465
  end
@@ -1947,7 +2099,7 @@ module Aws::DirectConnect
1947
2099
  # @return [String]
1948
2100
  #
1949
2101
  # @!attribute [rw] virtual_gateway_id
1950
- # The ID of the virtual private gateway.
2102
+ # The ID of the virtual private gateway or transit gateway.
1951
2103
  # @return [String]
1952
2104
  #
1953
2105
  # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/DescribeDirectConnectGatewayAssociationsRequest AWS API Documentation
@@ -2319,7 +2471,7 @@ module Aws::DirectConnect
2319
2471
  # @return [Integer]
2320
2472
  #
2321
2473
  # @!attribute [rw] owner_account
2322
- # The ID of the AWS account that owns the Direct Connect gateway.
2474
+ # The ID of the account that owns the Direct Connect gateway.
2323
2475
  # @return [String]
2324
2476
  #
2325
2477
  # @!attribute [rw] direct_connect_gateway_state
@@ -2363,7 +2515,7 @@ module Aws::DirectConnect
2363
2515
  # @return [String]
2364
2516
  #
2365
2517
  # @!attribute [rw] direct_connect_gateway_owner_account
2366
- # The ID of the AWS account that owns the associated gateway.
2518
+ # The ID of the account that owns the associated gateway.
2367
2519
  # @return [String]
2368
2520
  #
2369
2521
  # @!attribute [rw] association_state
@@ -2407,11 +2559,11 @@ module Aws::DirectConnect
2407
2559
  # @return [String]
2408
2560
  #
2409
2561
  # @!attribute [rw] virtual_gateway_region
2410
- # The AWS Region where the virtual private gateway is located.
2562
+ # The Region where the virtual private gateway is located.
2411
2563
  # @return [String]
2412
2564
  #
2413
2565
  # @!attribute [rw] virtual_gateway_owner_account
2414
- # The ID of the AWS account that owns the virtual private gateway.
2566
+ # The ID of the account that owns the virtual private gateway.
2415
2567
  # @return [String]
2416
2568
  #
2417
2569
  # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/DirectConnectGatewayAssociation AWS API Documentation
@@ -2443,7 +2595,7 @@ module Aws::DirectConnect
2443
2595
  # @return [String]
2444
2596
  #
2445
2597
  # @!attribute [rw] direct_connect_gateway_owner_account
2446
- # The ID of the AWS account that owns the Direct Connect gateway.
2598
+ # The ID of the account that owns the Direct Connect gateway.
2447
2599
  # @return [String]
2448
2600
  #
2449
2601
  # @!attribute [rw] proposal_state
@@ -2499,11 +2651,11 @@ module Aws::DirectConnect
2499
2651
  # @return [String]
2500
2652
  #
2501
2653
  # @!attribute [rw] virtual_interface_region
2502
- # The AWS Region where the virtual interface is located.
2654
+ # The Region where the virtual interface is located.
2503
2655
  # @return [String]
2504
2656
  #
2505
2657
  # @!attribute [rw] virtual_interface_owner_account
2506
- # The ID of the AWS account that owns the virtual interface.
2658
+ # The ID of the account that owns the virtual interface.
2507
2659
  # @return [String]
2508
2660
  #
2509
2661
  # @!attribute [rw] attachment_state
@@ -2583,6 +2735,58 @@ module Aws::DirectConnect
2583
2735
  include Aws::Structure
2584
2736
  end
2585
2737
 
2738
+ # @note When making an API call, you may pass DisassociateMacSecKeyRequest
2739
+ # data as a hash:
2740
+ #
2741
+ # {
2742
+ # connection_id: "ConnectionId", # required
2743
+ # secret_arn: "SecretARN", # required
2744
+ # }
2745
+ #
2746
+ # @!attribute [rw] connection_id
2747
+ # The ID of the dedicated connection (dxcon-xxxx), or the ID of the
2748
+ # LAG (dxlag-xxxx).
2749
+ #
2750
+ # You can use DescribeConnections or DescribeLags to retrieve
2751
+ # connection ID.
2752
+ # @return [String]
2753
+ #
2754
+ # @!attribute [rw] secret_arn
2755
+ # The Amazon Resource Name (ARN) of the MAC Security (MACsec) secret
2756
+ # key.
2757
+ #
2758
+ # You can use DescribeConnections to retrieve the ARN of the MAC
2759
+ # Security (MACsec) secret key.
2760
+ # @return [String]
2761
+ #
2762
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/DisassociateMacSecKeyRequest AWS API Documentation
2763
+ #
2764
+ class DisassociateMacSecKeyRequest < Struct.new(
2765
+ :connection_id,
2766
+ :secret_arn)
2767
+ SENSITIVE = []
2768
+ include Aws::Structure
2769
+ end
2770
+
2771
+ # @!attribute [rw] connection_id
2772
+ # The ID of the dedicated connection (dxcon-xxxx), or the ID of the
2773
+ # LAG (dxlag-xxxx).
2774
+ # @return [String]
2775
+ #
2776
+ # @!attribute [rw] mac_sec_keys
2777
+ # The MAC Security (MACsec) security keys no longer associated with
2778
+ # the dedicated connection.
2779
+ # @return [Array<Types::MacSecKey>]
2780
+ #
2781
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/DisassociateMacSecKeyResponse AWS API Documentation
2782
+ #
2783
+ class DisassociateMacSecKeyResponse < Struct.new(
2784
+ :connection_id,
2785
+ :mac_sec_keys)
2786
+ SENSITIVE = []
2787
+ include Aws::Structure
2788
+ end
2789
+
2586
2790
  # A tag key was specified more than once.
2587
2791
  #
2588
2792
  # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/DuplicateTagKeysException AWS API Documentation
@@ -2623,7 +2827,7 @@ module Aws::DirectConnect
2623
2827
  # @return [String]
2624
2828
  #
2625
2829
  # @!attribute [rw] region
2626
- # The AWS Region where the connection is located.
2830
+ # The Region where the connection is located.
2627
2831
  # @return [String]
2628
2832
  #
2629
2833
  # @!attribute [rw] location
@@ -2656,6 +2860,11 @@ module Aws::DirectConnect
2656
2860
  # terminates.
2657
2861
  # @return [String]
2658
2862
  #
2863
+ # @!attribute [rw] aws_logical_device_id
2864
+ # The Direct Connect endpoint that terminates a physical connection's
2865
+ # BGP sessions.
2866
+ # @return [String]
2867
+ #
2659
2868
  # @!attribute [rw] has_logical_redundancy
2660
2869
  # Indicates whether the interconnect supports a secondary BGP in the
2661
2870
  # same address family (IPv4/IPv6).
@@ -2683,6 +2892,7 @@ module Aws::DirectConnect
2683
2892
  :aws_device,
2684
2893
  :jumbo_frame_capable,
2685
2894
  :aws_device_v2,
2895
+ :aws_logical_device_id,
2686
2896
  :has_logical_redundancy,
2687
2897
  :tags,
2688
2898
  :provider_name)
@@ -2719,7 +2929,7 @@ module Aws::DirectConnect
2719
2929
  # @return [String]
2720
2930
  #
2721
2931
  # @!attribute [rw] owner_account
2722
- # The ID of the AWS account that owns the LAG.
2932
+ # The ID of the account that owns the LAG.
2723
2933
  # @return [String]
2724
2934
  #
2725
2935
  # @!attribute [rw] lag_name
@@ -2752,7 +2962,7 @@ module Aws::DirectConnect
2752
2962
  # @return [String]
2753
2963
  #
2754
2964
  # @!attribute [rw] region
2755
- # The AWS Region where the connection is located.
2965
+ # The Region where the connection is located.
2756
2966
  # @return [String]
2757
2967
  #
2758
2968
  # @!attribute [rw] minimum_links
@@ -2761,11 +2971,16 @@ module Aws::DirectConnect
2761
2971
  # @return [Integer]
2762
2972
  #
2763
2973
  # @!attribute [rw] aws_device
2764
- # The AWS Direct Connect endpoint that hosts the LAG.
2974
+ # The Direct Connect endpoint that hosts the LAG.
2765
2975
  # @return [String]
2766
2976
  #
2767
2977
  # @!attribute [rw] aws_device_v2
2768
- # The AWS Direct Connect endpoint that hosts the LAG.
2978
+ # The Direct Connect endpoint that hosts the LAG.
2979
+ # @return [String]
2980
+ #
2981
+ # @!attribute [rw] aws_logical_device_id
2982
+ # The Direct Connect endpoint that terminates a physical connection's
2983
+ # BGP sessions.
2769
2984
  # @return [String]
2770
2985
  #
2771
2986
  # @!attribute [rw] connections
@@ -2793,6 +3008,21 @@ module Aws::DirectConnect
2793
3008
  # The name of the service provider associated with the LAG.
2794
3009
  # @return [String]
2795
3010
  #
3011
+ # @!attribute [rw] mac_sec_capable
3012
+ # Indicates whether the LAG supports MAC Security (MACsec).
3013
+ # @return [Boolean]
3014
+ #
3015
+ # @!attribute [rw] encryption_mode
3016
+ # The LAG MAC Security (MACsec) encryption mode.
3017
+ #
3018
+ # The valid values are `no_encrypt`, `should_encrypt`, and
3019
+ # `must_encrypt`.
3020
+ # @return [String]
3021
+ #
3022
+ # @!attribute [rw] mac_sec_keys
3023
+ # The MAC Security (MACsec) security keys associated with the LAG.
3024
+ # @return [Array<Types::MacSecKey>]
3025
+ #
2796
3026
  # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/Lag AWS API Documentation
2797
3027
  #
2798
3028
  class Lag < Struct.new(
@@ -2807,12 +3037,16 @@ module Aws::DirectConnect
2807
3037
  :minimum_links,
2808
3038
  :aws_device,
2809
3039
  :aws_device_v2,
3040
+ :aws_logical_device_id,
2810
3041
  :connections,
2811
3042
  :allows_hosted_connections,
2812
3043
  :jumbo_frame_capable,
2813
3044
  :has_logical_redundancy,
2814
3045
  :tags,
2815
- :provider_name)
3046
+ :provider_name,
3047
+ :mac_sec_capable,
3048
+ :encryption_mode,
3049
+ :mac_sec_keys)
2816
3050
  SENSITIVE = []
2817
3051
  include Aws::Structure
2818
3052
  end
@@ -2923,7 +3157,7 @@ module Aws::DirectConnect
2923
3157
  include Aws::Structure
2924
3158
  end
2925
3159
 
2926
- # Information about an AWS Direct Connect location.
3160
+ # Information about an Direct Connect location.
2927
3161
  #
2928
3162
  # @!attribute [rw] location_code
2929
3163
  # The code for the location.
@@ -2935,7 +3169,7 @@ module Aws::DirectConnect
2935
3169
  # @return [String]
2936
3170
  #
2937
3171
  # @!attribute [rw] region
2938
- # The AWS Region for the location.
3172
+ # The Region for the location.
2939
3173
  # @return [String]
2940
3174
  #
2941
3175
  # @!attribute [rw] available_port_speeds
@@ -2946,6 +3180,10 @@ module Aws::DirectConnect
2946
3180
  # The name of the service provider for the location.
2947
3181
  # @return [Array<String>]
2948
3182
  #
3183
+ # @!attribute [rw] available_mac_sec_port_speeds
3184
+ # The available MAC Security (MACsec) port speeds for the location.
3185
+ # @return [Array<String>]
3186
+ #
2949
3187
  # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/Location AWS API Documentation
2950
3188
  #
2951
3189
  class Location < Struct.new(
@@ -2953,7 +3191,8 @@ module Aws::DirectConnect
2953
3191
  :location_name,
2954
3192
  :region,
2955
3193
  :available_port_speeds,
2956
- :available_providers)
3194
+ :available_providers,
3195
+ :available_mac_sec_port_speeds)
2957
3196
  SENSITIVE = []
2958
3197
  include Aws::Structure
2959
3198
  end
@@ -2970,6 +3209,51 @@ module Aws::DirectConnect
2970
3209
  include Aws::Structure
2971
3210
  end
2972
3211
 
3212
+ # Information about the MAC Security (MACsec) secret key.
3213
+ #
3214
+ # @!attribute [rw] secret_arn
3215
+ # The Amazon Resource Name (ARN) of the MAC Security (MACsec) secret
3216
+ # key.
3217
+ # @return [String]
3218
+ #
3219
+ # @!attribute [rw] ckn
3220
+ # The Connection Key Name (CKN) for the MAC Security secret key.
3221
+ # @return [String]
3222
+ #
3223
+ # @!attribute [rw] state
3224
+ # The state of the MAC Security (MACsec) secret key.
3225
+ #
3226
+ # The possible values are:
3227
+ #
3228
+ # * `associating`\: The MAC Security (MACsec) secret key is being
3229
+ # validated and not yet associated with the connection or LAG.
3230
+ #
3231
+ # * `associated`\: The MAC Security (MACsec) secret key is validated
3232
+ # and associated with the connection or LAG.
3233
+ #
3234
+ # * `disassociating`\: The MAC Security (MACsec) secret key is being
3235
+ # disassociated from the connection or LAG
3236
+ #
3237
+ # * `disassociated`\: The MAC Security (MACsec) secret key is no
3238
+ # longer associated with the connection or LAG.
3239
+ # @return [String]
3240
+ #
3241
+ # @!attribute [rw] start_on
3242
+ # The date that the MAC Security (MACsec) secret key takes effect. The
3243
+ # value is displayed in UTC format.
3244
+ # @return [String]
3245
+ #
3246
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/MacSecKey AWS API Documentation
3247
+ #
3248
+ class MacSecKey < Struct.new(
3249
+ :secret_arn,
3250
+ :ckn,
3251
+ :state,
3252
+ :start_on)
3253
+ SENSITIVE = []
3254
+ include Aws::Structure
3255
+ end
3256
+
2973
3257
  # Information about a new BGP peer.
2974
3258
  #
2975
3259
  # @note When making an API call, you may pass NewBGPPeer
@@ -3257,8 +3541,8 @@ module Aws::DirectConnect
3257
3541
  # @return [String]
3258
3542
  #
3259
3543
  # @!attribute [rw] route_filter_prefixes
3260
- # The routes to be advertised to the AWS network in this Region.
3261
- # Applies to public virtual interfaces.
3544
+ # The routes to be advertised to the Amazon Web Services network in
3545
+ # this Region. Applies to public virtual interfaces.
3262
3546
  # @return [Array<Types::RouteFilterPrefix>]
3263
3547
  #
3264
3548
  # @!attribute [rw] tags
@@ -3344,8 +3628,8 @@ module Aws::DirectConnect
3344
3628
  # @return [String]
3345
3629
  #
3346
3630
  # @!attribute [rw] route_filter_prefixes
3347
- # The routes to be advertised to the AWS network in this Region.
3348
- # Applies to public virtual interfaces.
3631
+ # The routes to be advertised to the Amazon Web Services network in
3632
+ # this Region. Applies to public virtual interfaces.
3349
3633
  # @return [Array<Types::RouteFilterPrefix>]
3350
3634
  #
3351
3635
  # @!attribute [rw] tags
@@ -3539,8 +3823,7 @@ module Aws::DirectConnect
3539
3823
  include Aws::Structure
3540
3824
  end
3541
3825
 
3542
- # Information about a tag associated with an AWS Direct Connect
3543
- # resource.
3826
+ # Information about a tag associated with an Direct Connect resource.
3544
3827
  #
3545
3828
  # @!attribute [rw] resource_arn
3546
3829
  # The Amazon Resource Name (ARN) of the resource.
@@ -3757,6 +4040,42 @@ module Aws::DirectConnect
3757
4040
  #
3758
4041
  class UntagResourceResponse < Aws::EmptyStructure; end
3759
4042
 
4043
+ # @note When making an API call, you may pass UpdateConnectionRequest
4044
+ # data as a hash:
4045
+ #
4046
+ # {
4047
+ # connection_id: "ConnectionId", # required
4048
+ # connection_name: "ConnectionName",
4049
+ # encryption_mode: "EncryptionMode",
4050
+ # }
4051
+ #
4052
+ # @!attribute [rw] connection_id
4053
+ # The ID of the dedicated connection.
4054
+ #
4055
+ # You can use DescribeConnections to retrieve the connection ID.
4056
+ # @return [String]
4057
+ #
4058
+ # @!attribute [rw] connection_name
4059
+ # The name of the connection.
4060
+ # @return [String]
4061
+ #
4062
+ # @!attribute [rw] encryption_mode
4063
+ # The connection MAC Security (MACsec) encryption mode.
4064
+ #
4065
+ # The valid values are `no_encrypt`, `should_encrypt`, and
4066
+ # `must_encrypt`.
4067
+ # @return [String]
4068
+ #
4069
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/UpdateConnectionRequest AWS API Documentation
4070
+ #
4071
+ class UpdateConnectionRequest < Struct.new(
4072
+ :connection_id,
4073
+ :connection_name,
4074
+ :encryption_mode)
4075
+ SENSITIVE = []
4076
+ include Aws::Structure
4077
+ end
4078
+
3760
4079
  # @note When making an API call, you may pass UpdateDirectConnectGatewayAssociationRequest
3761
4080
  # data as a hash:
3762
4081
  #
@@ -3817,6 +4136,7 @@ module Aws::DirectConnect
3817
4136
  # lag_id: "LagId", # required
3818
4137
  # lag_name: "LagName",
3819
4138
  # minimum_links: 1,
4139
+ # encryption_mode: "EncryptionMode",
3820
4140
  # }
3821
4141
  #
3822
4142
  # @!attribute [rw] lag_id
@@ -3832,12 +4152,20 @@ module Aws::DirectConnect
3832
4152
  # for the LAG itself to be operational.
3833
4153
  # @return [Integer]
3834
4154
  #
4155
+ # @!attribute [rw] encryption_mode
4156
+ # The LAG MAC Security (MACsec) encryption mode.
4157
+ #
4158
+ # Amazon Web Services applies the value to all connections which are
4159
+ # part of the LAG.
4160
+ # @return [String]
4161
+ #
3835
4162
  # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/UpdateLagRequest AWS API Documentation
3836
4163
  #
3837
4164
  class UpdateLagRequest < Struct.new(
3838
4165
  :lag_id,
3839
4166
  :lag_name,
3840
- :minimum_links)
4167
+ :minimum_links,
4168
+ :encryption_mode)
3841
4169
  SENSITIVE = []
3842
4170
  include Aws::Structure
3843
4171
  end
@@ -3915,7 +4243,7 @@ module Aws::DirectConnect
3915
4243
  # Information about a virtual interface.
3916
4244
  #
3917
4245
  # @!attribute [rw] owner_account
3918
- # The ID of the AWS account that owns the virtual interface.
4246
+ # The ID of the account that owns the virtual interface.
3919
4247
  # @return [String]
3920
4248
  #
3921
4249
  # @!attribute [rw] virtual_interface_id
@@ -4034,8 +4362,8 @@ module Aws::DirectConnect
4034
4362
  # @return [String]
4035
4363
  #
4036
4364
  # @!attribute [rw] route_filter_prefixes
4037
- # The routes to be advertised to the AWS network in this Region.
4038
- # Applies to public virtual interfaces.
4365
+ # The routes to be advertised to the Amazon Web Services network in
4366
+ # this Region. Applies to public virtual interfaces.
4039
4367
  # @return [Array<Types::RouteFilterPrefix>]
4040
4368
  #
4041
4369
  # @!attribute [rw] bgp_peers
@@ -4043,7 +4371,7 @@ module Aws::DirectConnect
4043
4371
  # @return [Array<Types::BGPPeer>]
4044
4372
  #
4045
4373
  # @!attribute [rw] region
4046
- # The AWS Region where the virtual interface is located.
4374
+ # The Region where the virtual interface is located.
4047
4375
  # @return [String]
4048
4376
  #
4049
4377
  # @!attribute [rw] aws_device_v2
@@ -4051,6 +4379,11 @@ module Aws::DirectConnect
4051
4379
  # terminates.
4052
4380
  # @return [String]
4053
4381
  #
4382
+ # @!attribute [rw] aws_logical_device_id
4383
+ # The Direct Connect endpoint that terminates a physical connection's
4384
+ # BGP sessions.
4385
+ # @return [String]
4386
+ #
4054
4387
  # @!attribute [rw] tags
4055
4388
  # The tags associated with the virtual interface.
4056
4389
  # @return [Array<Types::Tag>]
@@ -4081,6 +4414,7 @@ module Aws::DirectConnect
4081
4414
  :bgp_peers,
4082
4415
  :region,
4083
4416
  :aws_device_v2,
4417
+ :aws_logical_device_id,
4084
4418
  :tags)
4085
4419
  SENSITIVE = []
4086
4420
  include Aws::Structure