aws-sdk-directconnect 1.39.0 → 1.43.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
  #
@@ -501,7 +584,13 @@ module Aws::DirectConnect
501
584
  # @return [String]
502
585
  #
503
586
  # @!attribute [rw] aws_device_v2
504
- # The Direct Connect endpoint on which the BGP peer terminates.
587
+ # The Direct Connect endpoint that terminates the BGP peer.
588
+ # @return [String]
589
+ #
590
+ # @!attribute [rw] aws_logical_device_id
591
+ # The Direct Connect endpoint that terminates the logical connection.
592
+ # This device might be different than the device that terminates the
593
+ # physical connection.
505
594
  # @return [String]
506
595
  #
507
596
  # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/BGPPeer AWS API Documentation
@@ -515,7 +604,8 @@ module Aws::DirectConnect
515
604
  :customer_address,
516
605
  :bgp_peer_state,
517
606
  :bgp_status,
518
- :aws_device_v2)
607
+ :aws_device_v2,
608
+ :aws_logical_device_id)
519
609
  SENSITIVE = []
520
610
  include Aws::Structure
521
611
  end
@@ -784,10 +874,10 @@ module Aws::DirectConnect
784
874
  include Aws::Structure
785
875
  end
786
876
 
787
- # Information about an AWS Direct Connect connection.
877
+ # Information about an Direct Connect connection.
788
878
  #
789
879
  # @!attribute [rw] owner_account
790
- # The ID of the AWS account that owns the connection.
880
+ # The ID of the account that owns the connection.
791
881
  # @return [String]
792
882
  #
793
883
  # @!attribute [rw] connection_id
@@ -829,7 +919,7 @@ module Aws::DirectConnect
829
919
  # @return [String]
830
920
  #
831
921
  # @!attribute [rw] region
832
- # The AWS Region where the connection is located.
922
+ # The Region where the connection is located.
833
923
  # @return [String]
834
924
  #
835
925
  # @!attribute [rw] location
@@ -845,8 +935,8 @@ module Aws::DirectConnect
845
935
  # @return [Integer]
846
936
  #
847
937
  # @!attribute [rw] partner_name
848
- # The name of the AWS Direct Connect service provider associated with
849
- # the connection.
938
+ # The name of the Direct Connect service provider associated with the
939
+ # connection.
850
940
  # @return [String]
851
941
  #
852
942
  # @!attribute [rw] loa_issue_time
@@ -867,8 +957,13 @@ module Aws::DirectConnect
867
957
  # @return [Boolean]
868
958
  #
869
959
  # @!attribute [rw] aws_device_v2
870
- # The Direct Connect endpoint on which the physical connection
871
- # terminates.
960
+ # The Direct Connect endpoint that terminates the physical connection.
961
+ # @return [String]
962
+ #
963
+ # @!attribute [rw] aws_logical_device_id
964
+ # The Direct Connect endpoint that terminates the logical connection.
965
+ # This device might be different than the device that terminates the
966
+ # physical connection.
872
967
  # @return [String]
873
968
  #
874
969
  # @!attribute [rw] has_logical_redundancy
@@ -884,6 +979,29 @@ module Aws::DirectConnect
884
979
  # The name of the service provider associated with the connection.
885
980
  # @return [String]
886
981
  #
982
+ # @!attribute [rw] mac_sec_capable
983
+ # Indicates whether the connection supports MAC Security (MACsec).
984
+ # @return [Boolean]
985
+ #
986
+ # @!attribute [rw] port_encryption_status
987
+ # The MAC Security (MACsec) port link status of the connection.
988
+ #
989
+ # The valid values are `Encryption Up`, which means that there is an
990
+ # active Connection Key Name, or `Encryption Down`.
991
+ # @return [String]
992
+ #
993
+ # @!attribute [rw] encryption_mode
994
+ # The MAC Security (MACsec) connection encryption mode.
995
+ #
996
+ # The valid values are `no_encrypt`, `should_encrypt`, and
997
+ # `must_encrypt`.
998
+ # @return [String]
999
+ #
1000
+ # @!attribute [rw] mac_sec_keys
1001
+ # The MAC Security (MACsec) security keys associated with the
1002
+ # connection.
1003
+ # @return [Array<Types::MacSecKey>]
1004
+ #
887
1005
  # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/Connection AWS API Documentation
888
1006
  #
889
1007
  class Connection < Struct.new(
@@ -901,9 +1019,14 @@ module Aws::DirectConnect
901
1019
  :aws_device,
902
1020
  :jumbo_frame_capable,
903
1021
  :aws_device_v2,
1022
+ :aws_logical_device_id,
904
1023
  :has_logical_redundancy,
905
1024
  :tags,
906
- :provider_name)
1025
+ :provider_name,
1026
+ :mac_sec_capable,
1027
+ :port_encryption_status,
1028
+ :encryption_mode,
1029
+ :mac_sec_keys)
907
1030
  SENSITIVE = []
908
1031
  include Aws::Structure
909
1032
  end
@@ -978,6 +1101,7 @@ module Aws::DirectConnect
978
1101
  # },
979
1102
  # ],
980
1103
  # provider_name: "ProviderName",
1104
+ # request_mac_sec: false,
981
1105
  # }
982
1106
  #
983
1107
  # @!attribute [rw] location
@@ -1005,6 +1129,19 @@ module Aws::DirectConnect
1005
1129
  # connection.
1006
1130
  # @return [String]
1007
1131
  #
1132
+ # @!attribute [rw] request_mac_sec
1133
+ # Indicates whether you want the connection to support MAC Security
1134
+ # (MACsec).
1135
+ #
1136
+ # MAC Security (MACsec) is only available on dedicated connections.
1137
+ # For information about MAC Security (MACsec) prerequisties, see
1138
+ # [MACsec prerequisties][1] in the *Direct Connect User Guide*.
1139
+ #
1140
+ #
1141
+ #
1142
+ # [1]: https://docs.aws.amazon.com/directconnect/latest/UserGuide/direct-connect-mac-sec-getting-started.html#mac-sec-prerequisites
1143
+ # @return [Boolean]
1144
+ #
1008
1145
  # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/CreateConnectionRequest AWS API Documentation
1009
1146
  #
1010
1147
  class CreateConnectionRequest < Struct.new(
@@ -1013,7 +1150,8 @@ module Aws::DirectConnect
1013
1150
  :connection_name,
1014
1151
  :lag_id,
1015
1152
  :tags,
1016
- :provider_name)
1153
+ :provider_name,
1154
+ :request_mac_sec)
1017
1155
  SENSITIVE = []
1018
1156
  include Aws::Structure
1019
1157
  end
@@ -1042,7 +1180,7 @@ module Aws::DirectConnect
1042
1180
  # @return [String]
1043
1181
  #
1044
1182
  # @!attribute [rw] direct_connect_gateway_owner_account
1045
- # The ID of the AWS account that owns the Direct Connect gateway.
1183
+ # The ID of the account that owns the Direct Connect gateway.
1046
1184
  # @return [String]
1047
1185
  #
1048
1186
  # @!attribute [rw] gateway_id
@@ -1111,7 +1249,7 @@ module Aws::DirectConnect
1111
1249
  # transit gateway.
1112
1250
  #
1113
1251
  # For information about how to set the prefixes, see [Allowed
1114
- # Prefixes][1] in the *AWS Direct Connect User Guide*.
1252
+ # Prefixes][1] in the *Direct Connect User Guide*.
1115
1253
  #
1116
1254
  #
1117
1255
  #
@@ -1261,6 +1399,7 @@ module Aws::DirectConnect
1261
1399
  # },
1262
1400
  # ],
1263
1401
  # provider_name: "ProviderName",
1402
+ # request_mac_sec: false,
1264
1403
  # }
1265
1404
  #
1266
1405
  # @!attribute [rw] number_of_connections
@@ -1297,6 +1436,21 @@ module Aws::DirectConnect
1297
1436
  # The name of the service provider associated with the LAG.
1298
1437
  # @return [String]
1299
1438
  #
1439
+ # @!attribute [rw] request_mac_sec
1440
+ # Indicates whether the connection will support MAC Security (MACsec).
1441
+ #
1442
+ # <note markdown="1"> All connections in the LAG must be capable of supporting MAC
1443
+ # Security (MACsec). For information about MAC Security (MACsec)
1444
+ # prerequisties, see [MACsec prerequisties][1] in the *Direct Connect
1445
+ # User Guide*.
1446
+ #
1447
+ # </note>
1448
+ #
1449
+ #
1450
+ #
1451
+ # [1]: https://docs.aws.amazon.com/directconnect/latest/UserGuide/direct-connect-mac-sec-getting-started.html#mac-sec-prerequisites
1452
+ # @return [Boolean]
1453
+ #
1300
1454
  # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/CreateLagRequest AWS API Documentation
1301
1455
  #
1302
1456
  class CreateLagRequest < Struct.new(
@@ -1307,7 +1461,8 @@ module Aws::DirectConnect
1307
1461
  :connection_id,
1308
1462
  :tags,
1309
1463
  :child_connection_tags,
1310
- :provider_name)
1464
+ :provider_name,
1465
+ :request_mac_sec)
1311
1466
  SENSITIVE = []
1312
1467
  include Aws::Structure
1313
1468
  end
@@ -2319,7 +2474,7 @@ module Aws::DirectConnect
2319
2474
  # @return [Integer]
2320
2475
  #
2321
2476
  # @!attribute [rw] owner_account
2322
- # The ID of the AWS account that owns the Direct Connect gateway.
2477
+ # The ID of the account that owns the Direct Connect gateway.
2323
2478
  # @return [String]
2324
2479
  #
2325
2480
  # @!attribute [rw] direct_connect_gateway_state
@@ -2363,7 +2518,7 @@ module Aws::DirectConnect
2363
2518
  # @return [String]
2364
2519
  #
2365
2520
  # @!attribute [rw] direct_connect_gateway_owner_account
2366
- # The ID of the AWS account that owns the associated gateway.
2521
+ # The ID of the account that owns the associated gateway.
2367
2522
  # @return [String]
2368
2523
  #
2369
2524
  # @!attribute [rw] association_state
@@ -2407,11 +2562,11 @@ module Aws::DirectConnect
2407
2562
  # @return [String]
2408
2563
  #
2409
2564
  # @!attribute [rw] virtual_gateway_region
2410
- # The AWS Region where the virtual private gateway is located.
2565
+ # The Region where the virtual private gateway is located.
2411
2566
  # @return [String]
2412
2567
  #
2413
2568
  # @!attribute [rw] virtual_gateway_owner_account
2414
- # The ID of the AWS account that owns the virtual private gateway.
2569
+ # The ID of the account that owns the virtual private gateway.
2415
2570
  # @return [String]
2416
2571
  #
2417
2572
  # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/DirectConnectGatewayAssociation AWS API Documentation
@@ -2443,7 +2598,7 @@ module Aws::DirectConnect
2443
2598
  # @return [String]
2444
2599
  #
2445
2600
  # @!attribute [rw] direct_connect_gateway_owner_account
2446
- # The ID of the AWS account that owns the Direct Connect gateway.
2601
+ # The ID of the account that owns the Direct Connect gateway.
2447
2602
  # @return [String]
2448
2603
  #
2449
2604
  # @!attribute [rw] proposal_state
@@ -2499,11 +2654,11 @@ module Aws::DirectConnect
2499
2654
  # @return [String]
2500
2655
  #
2501
2656
  # @!attribute [rw] virtual_interface_region
2502
- # The AWS Region where the virtual interface is located.
2657
+ # The Region where the virtual interface is located.
2503
2658
  # @return [String]
2504
2659
  #
2505
2660
  # @!attribute [rw] virtual_interface_owner_account
2506
- # The ID of the AWS account that owns the virtual interface.
2661
+ # The ID of the account that owns the virtual interface.
2507
2662
  # @return [String]
2508
2663
  #
2509
2664
  # @!attribute [rw] attachment_state
@@ -2583,6 +2738,58 @@ module Aws::DirectConnect
2583
2738
  include Aws::Structure
2584
2739
  end
2585
2740
 
2741
+ # @note When making an API call, you may pass DisassociateMacSecKeyRequest
2742
+ # data as a hash:
2743
+ #
2744
+ # {
2745
+ # connection_id: "ConnectionId", # required
2746
+ # secret_arn: "SecretARN", # required
2747
+ # }
2748
+ #
2749
+ # @!attribute [rw] connection_id
2750
+ # The ID of the dedicated connection (dxcon-xxxx), or the ID of the
2751
+ # LAG (dxlag-xxxx).
2752
+ #
2753
+ # You can use DescribeConnections or DescribeLags to retrieve
2754
+ # connection ID.
2755
+ # @return [String]
2756
+ #
2757
+ # @!attribute [rw] secret_arn
2758
+ # The Amazon Resource Name (ARN) of the MAC Security (MACsec) secret
2759
+ # key.
2760
+ #
2761
+ # You can use DescribeConnections to retrieve the ARN of the MAC
2762
+ # Security (MACsec) secret key.
2763
+ # @return [String]
2764
+ #
2765
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/DisassociateMacSecKeyRequest AWS API Documentation
2766
+ #
2767
+ class DisassociateMacSecKeyRequest < Struct.new(
2768
+ :connection_id,
2769
+ :secret_arn)
2770
+ SENSITIVE = []
2771
+ include Aws::Structure
2772
+ end
2773
+
2774
+ # @!attribute [rw] connection_id
2775
+ # The ID of the dedicated connection (dxcon-xxxx), or the ID of the
2776
+ # LAG (dxlag-xxxx).
2777
+ # @return [String]
2778
+ #
2779
+ # @!attribute [rw] mac_sec_keys
2780
+ # The MAC Security (MACsec) security keys no longer associated with
2781
+ # the dedicated connection.
2782
+ # @return [Array<Types::MacSecKey>]
2783
+ #
2784
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/DisassociateMacSecKeyResponse AWS API Documentation
2785
+ #
2786
+ class DisassociateMacSecKeyResponse < Struct.new(
2787
+ :connection_id,
2788
+ :mac_sec_keys)
2789
+ SENSITIVE = []
2790
+ include Aws::Structure
2791
+ end
2792
+
2586
2793
  # A tag key was specified more than once.
2587
2794
  #
2588
2795
  # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/DuplicateTagKeysException AWS API Documentation
@@ -2623,7 +2830,7 @@ module Aws::DirectConnect
2623
2830
  # @return [String]
2624
2831
  #
2625
2832
  # @!attribute [rw] region
2626
- # The AWS Region where the connection is located.
2833
+ # The Region where the connection is located.
2627
2834
  # @return [String]
2628
2835
  #
2629
2836
  # @!attribute [rw] location
@@ -2652,8 +2859,13 @@ module Aws::DirectConnect
2652
2859
  # @return [Boolean]
2653
2860
  #
2654
2861
  # @!attribute [rw] aws_device_v2
2655
- # The Direct Connect endpoint on which the physical connection
2656
- # terminates.
2862
+ # The Direct Connect endpoint that terminates the physical connection.
2863
+ # @return [String]
2864
+ #
2865
+ # @!attribute [rw] aws_logical_device_id
2866
+ # The Direct Connect endpoint that terminates the logical connection.
2867
+ # This device might be different than the device that terminates the
2868
+ # physical connection.
2657
2869
  # @return [String]
2658
2870
  #
2659
2871
  # @!attribute [rw] has_logical_redundancy
@@ -2683,6 +2895,7 @@ module Aws::DirectConnect
2683
2895
  :aws_device,
2684
2896
  :jumbo_frame_capable,
2685
2897
  :aws_device_v2,
2898
+ :aws_logical_device_id,
2686
2899
  :has_logical_redundancy,
2687
2900
  :tags,
2688
2901
  :provider_name)
@@ -2719,7 +2932,7 @@ module Aws::DirectConnect
2719
2932
  # @return [String]
2720
2933
  #
2721
2934
  # @!attribute [rw] owner_account
2722
- # The ID of the AWS account that owns the LAG.
2935
+ # The ID of the account that owns the LAG.
2723
2936
  # @return [String]
2724
2937
  #
2725
2938
  # @!attribute [rw] lag_name
@@ -2752,7 +2965,7 @@ module Aws::DirectConnect
2752
2965
  # @return [String]
2753
2966
  #
2754
2967
  # @!attribute [rw] region
2755
- # The AWS Region where the connection is located.
2968
+ # The Region where the connection is located.
2756
2969
  # @return [String]
2757
2970
  #
2758
2971
  # @!attribute [rw] minimum_links
@@ -2761,11 +2974,17 @@ module Aws::DirectConnect
2761
2974
  # @return [Integer]
2762
2975
  #
2763
2976
  # @!attribute [rw] aws_device
2764
- # The AWS Direct Connect endpoint that hosts the LAG.
2977
+ # The Direct Connect endpoint that hosts the LAG.
2765
2978
  # @return [String]
2766
2979
  #
2767
2980
  # @!attribute [rw] aws_device_v2
2768
- # The AWS Direct Connect endpoint that hosts the LAG.
2981
+ # The Direct Connect endpoint that hosts the LAG.
2982
+ # @return [String]
2983
+ #
2984
+ # @!attribute [rw] aws_logical_device_id
2985
+ # The Direct Connect endpoint that terminates the logical connection.
2986
+ # This device might be different than the device that terminates the
2987
+ # physical connection.
2769
2988
  # @return [String]
2770
2989
  #
2771
2990
  # @!attribute [rw] connections
@@ -2793,6 +3012,21 @@ module Aws::DirectConnect
2793
3012
  # The name of the service provider associated with the LAG.
2794
3013
  # @return [String]
2795
3014
  #
3015
+ # @!attribute [rw] mac_sec_capable
3016
+ # Indicates whether the LAG supports MAC Security (MACsec).
3017
+ # @return [Boolean]
3018
+ #
3019
+ # @!attribute [rw] encryption_mode
3020
+ # The LAG MAC Security (MACsec) encryption mode.
3021
+ #
3022
+ # The valid values are `no_encrypt`, `should_encrypt`, and
3023
+ # `must_encrypt`.
3024
+ # @return [String]
3025
+ #
3026
+ # @!attribute [rw] mac_sec_keys
3027
+ # The MAC Security (MACsec) security keys associated with the LAG.
3028
+ # @return [Array<Types::MacSecKey>]
3029
+ #
2796
3030
  # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/Lag AWS API Documentation
2797
3031
  #
2798
3032
  class Lag < Struct.new(
@@ -2807,12 +3041,16 @@ module Aws::DirectConnect
2807
3041
  :minimum_links,
2808
3042
  :aws_device,
2809
3043
  :aws_device_v2,
3044
+ :aws_logical_device_id,
2810
3045
  :connections,
2811
3046
  :allows_hosted_connections,
2812
3047
  :jumbo_frame_capable,
2813
3048
  :has_logical_redundancy,
2814
3049
  :tags,
2815
- :provider_name)
3050
+ :provider_name,
3051
+ :mac_sec_capable,
3052
+ :encryption_mode,
3053
+ :mac_sec_keys)
2816
3054
  SENSITIVE = []
2817
3055
  include Aws::Structure
2818
3056
  end
@@ -2923,7 +3161,7 @@ module Aws::DirectConnect
2923
3161
  include Aws::Structure
2924
3162
  end
2925
3163
 
2926
- # Information about an AWS Direct Connect location.
3164
+ # Information about an Direct Connect location.
2927
3165
  #
2928
3166
  # @!attribute [rw] location_code
2929
3167
  # The code for the location.
@@ -2935,7 +3173,7 @@ module Aws::DirectConnect
2935
3173
  # @return [String]
2936
3174
  #
2937
3175
  # @!attribute [rw] region
2938
- # The AWS Region for the location.
3176
+ # The Region for the location.
2939
3177
  # @return [String]
2940
3178
  #
2941
3179
  # @!attribute [rw] available_port_speeds
@@ -2946,6 +3184,10 @@ module Aws::DirectConnect
2946
3184
  # The name of the service provider for the location.
2947
3185
  # @return [Array<String>]
2948
3186
  #
3187
+ # @!attribute [rw] available_mac_sec_port_speeds
3188
+ # The available MAC Security (MACsec) port speeds for the location.
3189
+ # @return [Array<String>]
3190
+ #
2949
3191
  # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/Location AWS API Documentation
2950
3192
  #
2951
3193
  class Location < Struct.new(
@@ -2953,7 +3195,8 @@ module Aws::DirectConnect
2953
3195
  :location_name,
2954
3196
  :region,
2955
3197
  :available_port_speeds,
2956
- :available_providers)
3198
+ :available_providers,
3199
+ :available_mac_sec_port_speeds)
2957
3200
  SENSITIVE = []
2958
3201
  include Aws::Structure
2959
3202
  end
@@ -2970,6 +3213,51 @@ module Aws::DirectConnect
2970
3213
  include Aws::Structure
2971
3214
  end
2972
3215
 
3216
+ # Information about the MAC Security (MACsec) secret key.
3217
+ #
3218
+ # @!attribute [rw] secret_arn
3219
+ # The Amazon Resource Name (ARN) of the MAC Security (MACsec) secret
3220
+ # key.
3221
+ # @return [String]
3222
+ #
3223
+ # @!attribute [rw] ckn
3224
+ # The Connection Key Name (CKN) for the MAC Security secret key.
3225
+ # @return [String]
3226
+ #
3227
+ # @!attribute [rw] state
3228
+ # The state of the MAC Security (MACsec) secret key.
3229
+ #
3230
+ # The possible values are:
3231
+ #
3232
+ # * `associating`\: The MAC Security (MACsec) secret key is being
3233
+ # validated and not yet associated with the connection or LAG.
3234
+ #
3235
+ # * `associated`\: The MAC Security (MACsec) secret key is validated
3236
+ # and associated with the connection or LAG.
3237
+ #
3238
+ # * `disassociating`\: The MAC Security (MACsec) secret key is being
3239
+ # disassociated from the connection or LAG
3240
+ #
3241
+ # * `disassociated`\: The MAC Security (MACsec) secret key is no
3242
+ # longer associated with the connection or LAG.
3243
+ # @return [String]
3244
+ #
3245
+ # @!attribute [rw] start_on
3246
+ # The date that the MAC Security (MACsec) secret key takes effect. The
3247
+ # value is displayed in UTC format.
3248
+ # @return [String]
3249
+ #
3250
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/MacSecKey AWS API Documentation
3251
+ #
3252
+ class MacSecKey < Struct.new(
3253
+ :secret_arn,
3254
+ :ckn,
3255
+ :state,
3256
+ :start_on)
3257
+ SENSITIVE = []
3258
+ include Aws::Structure
3259
+ end
3260
+
2973
3261
  # Information about a new BGP peer.
2974
3262
  #
2975
3263
  # @note When making an API call, you may pass NewBGPPeer
@@ -3257,8 +3545,8 @@ module Aws::DirectConnect
3257
3545
  # @return [String]
3258
3546
  #
3259
3547
  # @!attribute [rw] route_filter_prefixes
3260
- # The routes to be advertised to the AWS network in this Region.
3261
- # Applies to public virtual interfaces.
3548
+ # The routes to be advertised to the Amazon Web Services network in
3549
+ # this Region. Applies to public virtual interfaces.
3262
3550
  # @return [Array<Types::RouteFilterPrefix>]
3263
3551
  #
3264
3552
  # @!attribute [rw] tags
@@ -3344,8 +3632,8 @@ module Aws::DirectConnect
3344
3632
  # @return [String]
3345
3633
  #
3346
3634
  # @!attribute [rw] route_filter_prefixes
3347
- # The routes to be advertised to the AWS network in this Region.
3348
- # Applies to public virtual interfaces.
3635
+ # The routes to be advertised to the Amazon Web Services network in
3636
+ # this Region. Applies to public virtual interfaces.
3349
3637
  # @return [Array<Types::RouteFilterPrefix>]
3350
3638
  #
3351
3639
  # @!attribute [rw] tags
@@ -3539,8 +3827,7 @@ module Aws::DirectConnect
3539
3827
  include Aws::Structure
3540
3828
  end
3541
3829
 
3542
- # Information about a tag associated with an AWS Direct Connect
3543
- # resource.
3830
+ # Information about a tag associated with an Direct Connect resource.
3544
3831
  #
3545
3832
  # @!attribute [rw] resource_arn
3546
3833
  # The Amazon Resource Name (ARN) of the resource.
@@ -3757,6 +4044,42 @@ module Aws::DirectConnect
3757
4044
  #
3758
4045
  class UntagResourceResponse < Aws::EmptyStructure; end
3759
4046
 
4047
+ # @note When making an API call, you may pass UpdateConnectionRequest
4048
+ # data as a hash:
4049
+ #
4050
+ # {
4051
+ # connection_id: "ConnectionId", # required
4052
+ # connection_name: "ConnectionName",
4053
+ # encryption_mode: "EncryptionMode",
4054
+ # }
4055
+ #
4056
+ # @!attribute [rw] connection_id
4057
+ # The ID of the dedicated connection.
4058
+ #
4059
+ # You can use DescribeConnections to retrieve the connection ID.
4060
+ # @return [String]
4061
+ #
4062
+ # @!attribute [rw] connection_name
4063
+ # The name of the connection.
4064
+ # @return [String]
4065
+ #
4066
+ # @!attribute [rw] encryption_mode
4067
+ # The connection MAC Security (MACsec) encryption mode.
4068
+ #
4069
+ # The valid values are `no_encrypt`, `should_encrypt`, and
4070
+ # `must_encrypt`.
4071
+ # @return [String]
4072
+ #
4073
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/UpdateConnectionRequest AWS API Documentation
4074
+ #
4075
+ class UpdateConnectionRequest < Struct.new(
4076
+ :connection_id,
4077
+ :connection_name,
4078
+ :encryption_mode)
4079
+ SENSITIVE = []
4080
+ include Aws::Structure
4081
+ end
4082
+
3760
4083
  # @note When making an API call, you may pass UpdateDirectConnectGatewayAssociationRequest
3761
4084
  # data as a hash:
3762
4085
  #
@@ -3817,6 +4140,7 @@ module Aws::DirectConnect
3817
4140
  # lag_id: "LagId", # required
3818
4141
  # lag_name: "LagName",
3819
4142
  # minimum_links: 1,
4143
+ # encryption_mode: "EncryptionMode",
3820
4144
  # }
3821
4145
  #
3822
4146
  # @!attribute [rw] lag_id
@@ -3832,12 +4156,20 @@ module Aws::DirectConnect
3832
4156
  # for the LAG itself to be operational.
3833
4157
  # @return [Integer]
3834
4158
  #
4159
+ # @!attribute [rw] encryption_mode
4160
+ # The LAG MAC Security (MACsec) encryption mode.
4161
+ #
4162
+ # Amazon Web Services applies the value to all connections which are
4163
+ # part of the LAG.
4164
+ # @return [String]
4165
+ #
3835
4166
  # @see http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/UpdateLagRequest AWS API Documentation
3836
4167
  #
3837
4168
  class UpdateLagRequest < Struct.new(
3838
4169
  :lag_id,
3839
4170
  :lag_name,
3840
- :minimum_links)
4171
+ :minimum_links,
4172
+ :encryption_mode)
3841
4173
  SENSITIVE = []
3842
4174
  include Aws::Structure
3843
4175
  end
@@ -3915,7 +4247,7 @@ module Aws::DirectConnect
3915
4247
  # Information about a virtual interface.
3916
4248
  #
3917
4249
  # @!attribute [rw] owner_account
3918
- # The ID of the AWS account that owns the virtual interface.
4250
+ # The ID of the account that owns the virtual interface.
3919
4251
  # @return [String]
3920
4252
  #
3921
4253
  # @!attribute [rw] virtual_interface_id
@@ -4034,8 +4366,8 @@ module Aws::DirectConnect
4034
4366
  # @return [String]
4035
4367
  #
4036
4368
  # @!attribute [rw] route_filter_prefixes
4037
- # The routes to be advertised to the AWS network in this Region.
4038
- # Applies to public virtual interfaces.
4369
+ # The routes to be advertised to the Amazon Web Services network in
4370
+ # this Region. Applies to public virtual interfaces.
4039
4371
  # @return [Array<Types::RouteFilterPrefix>]
4040
4372
  #
4041
4373
  # @!attribute [rw] bgp_peers
@@ -4043,12 +4375,17 @@ module Aws::DirectConnect
4043
4375
  # @return [Array<Types::BGPPeer>]
4044
4376
  #
4045
4377
  # @!attribute [rw] region
4046
- # The AWS Region where the virtual interface is located.
4378
+ # The Region where the virtual interface is located.
4047
4379
  # @return [String]
4048
4380
  #
4049
4381
  # @!attribute [rw] aws_device_v2
4050
- # The Direct Connect endpoint on which the virtual interface
4051
- # terminates.
4382
+ # The Direct Connect endpoint that terminates the physical connection.
4383
+ # @return [String]
4384
+ #
4385
+ # @!attribute [rw] aws_logical_device_id
4386
+ # The Direct Connect endpoint that terminates the logical connection.
4387
+ # This device might be different than the device that terminates the
4388
+ # physical connection.
4052
4389
  # @return [String]
4053
4390
  #
4054
4391
  # @!attribute [rw] tags
@@ -4081,6 +4418,7 @@ module Aws::DirectConnect
4081
4418
  :bgp_peers,
4082
4419
  :region,
4083
4420
  :aws_device_v2,
4421
+ :aws_logical_device_id,
4084
4422
  :tags)
4085
4423
  SENSITIVE = []
4086
4424
  include Aws::Structure