aws-sdk-mediaconnect 1.17.0 → 1.22.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -14,6 +14,10 @@ module Aws::MediaConnect
14
14
  AddFlowOutputs420Exception = Shapes::StructureShape.new(name: 'AddFlowOutputs420Exception')
15
15
  AddFlowOutputsRequest = Shapes::StructureShape.new(name: 'AddFlowOutputsRequest')
16
16
  AddFlowOutputsResponse = Shapes::StructureShape.new(name: 'AddFlowOutputsResponse')
17
+ AddFlowSourcesRequest = Shapes::StructureShape.new(name: 'AddFlowSourcesRequest')
18
+ AddFlowSourcesResponse = Shapes::StructureShape.new(name: 'AddFlowSourcesResponse')
19
+ AddFlowVpcInterfacesRequest = Shapes::StructureShape.new(name: 'AddFlowVpcInterfacesRequest')
20
+ AddFlowVpcInterfacesResponse = Shapes::StructureShape.new(name: 'AddFlowVpcInterfacesResponse')
17
21
  AddOutputRequest = Shapes::StructureShape.new(name: 'AddOutputRequest')
18
22
  Algorithm = Shapes::StringShape.new(name: 'Algorithm')
19
23
  BadRequestException = Shapes::StructureShape.new(name: 'BadRequestException')
@@ -26,6 +30,7 @@ module Aws::MediaConnect
26
30
  DescribeFlowResponse = Shapes::StructureShape.new(name: 'DescribeFlowResponse')
27
31
  Encryption = Shapes::StructureShape.new(name: 'Encryption')
28
32
  Entitlement = Shapes::StructureShape.new(name: 'Entitlement')
33
+ FailoverConfig = Shapes::StructureShape.new(name: 'FailoverConfig')
29
34
  Flow = Shapes::StructureShape.new(name: 'Flow')
30
35
  ForbiddenException = Shapes::StructureShape.new(name: 'ForbiddenException')
31
36
  GrantEntitlementRequest = Shapes::StructureShape.new(name: 'GrantEntitlementRequest')
@@ -49,6 +54,10 @@ module Aws::MediaConnect
49
54
  Protocol = Shapes::StringShape.new(name: 'Protocol')
50
55
  RemoveFlowOutputRequest = Shapes::StructureShape.new(name: 'RemoveFlowOutputRequest')
51
56
  RemoveFlowOutputResponse = Shapes::StructureShape.new(name: 'RemoveFlowOutputResponse')
57
+ RemoveFlowSourceRequest = Shapes::StructureShape.new(name: 'RemoveFlowSourceRequest')
58
+ RemoveFlowSourceResponse = Shapes::StructureShape.new(name: 'RemoveFlowSourceResponse')
59
+ RemoveFlowVpcInterfaceRequest = Shapes::StructureShape.new(name: 'RemoveFlowVpcInterfaceRequest')
60
+ RemoveFlowVpcInterfaceResponse = Shapes::StructureShape.new(name: 'RemoveFlowVpcInterfaceResponse')
52
61
  ResponseError = Shapes::StructureShape.new(name: 'ResponseError')
53
62
  RevokeFlowEntitlementRequest = Shapes::StructureShape.new(name: 'RevokeFlowEntitlementRequest')
54
63
  RevokeFlowEntitlementResponse = Shapes::StructureShape.new(name: 'RevokeFlowEntitlementResponse')
@@ -58,6 +67,7 @@ module Aws::MediaConnect
58
67
  SourceType = Shapes::StringShape.new(name: 'SourceType')
59
68
  StartFlowRequest = Shapes::StructureShape.new(name: 'StartFlowRequest')
60
69
  StartFlowResponse = Shapes::StructureShape.new(name: 'StartFlowResponse')
70
+ State = Shapes::StringShape.new(name: 'State')
61
71
  Status = Shapes::StringShape.new(name: 'Status')
62
72
  StopFlowRequest = Shapes::StructureShape.new(name: 'StopFlowRequest')
63
73
  StopFlowResponse = Shapes::StructureShape.new(name: 'StopFlowResponse')
@@ -66,12 +76,18 @@ module Aws::MediaConnect
66
76
  Transport = Shapes::StructureShape.new(name: 'Transport')
67
77
  UntagResourceRequest = Shapes::StructureShape.new(name: 'UntagResourceRequest')
68
78
  UpdateEncryption = Shapes::StructureShape.new(name: 'UpdateEncryption')
79
+ UpdateFailoverConfig = Shapes::StructureShape.new(name: 'UpdateFailoverConfig')
69
80
  UpdateFlowEntitlementRequest = Shapes::StructureShape.new(name: 'UpdateFlowEntitlementRequest')
70
81
  UpdateFlowEntitlementResponse = Shapes::StructureShape.new(name: 'UpdateFlowEntitlementResponse')
71
82
  UpdateFlowOutputRequest = Shapes::StructureShape.new(name: 'UpdateFlowOutputRequest')
72
83
  UpdateFlowOutputResponse = Shapes::StructureShape.new(name: 'UpdateFlowOutputResponse')
84
+ UpdateFlowRequest = Shapes::StructureShape.new(name: 'UpdateFlowRequest')
85
+ UpdateFlowResponse = Shapes::StructureShape.new(name: 'UpdateFlowResponse')
73
86
  UpdateFlowSourceRequest = Shapes::StructureShape.new(name: 'UpdateFlowSourceRequest')
74
87
  UpdateFlowSourceResponse = Shapes::StructureShape.new(name: 'UpdateFlowSourceResponse')
88
+ VpcInterface = Shapes::StructureShape.new(name: 'VpcInterface')
89
+ VpcInterfaceAttachment = Shapes::StructureShape.new(name: 'VpcInterfaceAttachment')
90
+ VpcInterfaceRequest = Shapes::StructureShape.new(name: 'VpcInterfaceRequest')
75
91
  __boolean = Shapes::BooleanShape.new(name: '__boolean')
76
92
  __double = Shapes::FloatShape.new(name: '__double')
77
93
  __integer = Shapes::IntegerShape.new(name: '__integer')
@@ -81,6 +97,11 @@ module Aws::MediaConnect
81
97
  __listOfListedEntitlement = Shapes::ListShape.new(name: '__listOfListedEntitlement')
82
98
  __listOfListedFlow = Shapes::ListShape.new(name: '__listOfListedFlow')
83
99
  __listOfOutput = Shapes::ListShape.new(name: '__listOfOutput')
100
+ __listOfSetSourceRequest = Shapes::ListShape.new(name: '__listOfSetSourceRequest')
101
+ __listOfSource = Shapes::ListShape.new(name: '__listOfSource')
102
+ __listOfVpcInterface = Shapes::ListShape.new(name: '__listOfVpcInterface')
103
+ __listOfVpcInterfaceRequest = Shapes::ListShape.new(name: '__listOfVpcInterfaceRequest')
104
+ __listOf__integer = Shapes::ListShape.new(name: '__listOf__integer')
84
105
  __listOf__string = Shapes::ListShape.new(name: '__listOf__string')
85
106
  __long = Shapes::IntegerShape.new(name: '__long')
86
107
  __mapOf__string = Shapes::MapShape.new(name: '__mapOf__string')
@@ -99,6 +120,22 @@ module Aws::MediaConnect
99
120
  AddFlowOutputsResponse.add_member(:outputs, Shapes::ShapeRef.new(shape: __listOfOutput, location_name: "outputs"))
100
121
  AddFlowOutputsResponse.struct_class = Types::AddFlowOutputsResponse
101
122
 
123
+ AddFlowSourcesRequest.add_member(:flow_arn, Shapes::ShapeRef.new(shape: __string, required: true, location: "uri", location_name: "flowArn"))
124
+ AddFlowSourcesRequest.add_member(:sources, Shapes::ShapeRef.new(shape: __listOfSetSourceRequest, required: true, location_name: "sources"))
125
+ AddFlowSourcesRequest.struct_class = Types::AddFlowSourcesRequest
126
+
127
+ AddFlowSourcesResponse.add_member(:flow_arn, Shapes::ShapeRef.new(shape: __string, location_name: "flowArn"))
128
+ AddFlowSourcesResponse.add_member(:sources, Shapes::ShapeRef.new(shape: __listOfSource, location_name: "sources"))
129
+ AddFlowSourcesResponse.struct_class = Types::AddFlowSourcesResponse
130
+
131
+ AddFlowVpcInterfacesRequest.add_member(:flow_arn, Shapes::ShapeRef.new(shape: __string, required: true, location: "uri", location_name: "flowArn"))
132
+ AddFlowVpcInterfacesRequest.add_member(:vpc_interfaces, Shapes::ShapeRef.new(shape: __listOfVpcInterfaceRequest, required: true, location_name: "vpcInterfaces"))
133
+ AddFlowVpcInterfacesRequest.struct_class = Types::AddFlowVpcInterfacesRequest
134
+
135
+ AddFlowVpcInterfacesResponse.add_member(:flow_arn, Shapes::ShapeRef.new(shape: __string, location_name: "flowArn"))
136
+ AddFlowVpcInterfacesResponse.add_member(:vpc_interfaces, Shapes::ShapeRef.new(shape: __listOfVpcInterface, location_name: "vpcInterfaces"))
137
+ AddFlowVpcInterfacesResponse.struct_class = Types::AddFlowVpcInterfacesResponse
138
+
102
139
  AddOutputRequest.add_member(:cidr_allow_list, Shapes::ShapeRef.new(shape: __listOf__string, location_name: "cidrAllowList"))
103
140
  AddOutputRequest.add_member(:description, Shapes::ShapeRef.new(shape: __string, location_name: "description"))
104
141
  AddOutputRequest.add_member(:destination, Shapes::ShapeRef.new(shape: __string, location_name: "destination"))
@@ -110,6 +147,7 @@ module Aws::MediaConnect
110
147
  AddOutputRequest.add_member(:remote_id, Shapes::ShapeRef.new(shape: __string, location_name: "remoteId"))
111
148
  AddOutputRequest.add_member(:smoothing_latency, Shapes::ShapeRef.new(shape: __integer, location_name: "smoothingLatency"))
112
149
  AddOutputRequest.add_member(:stream_id, Shapes::ShapeRef.new(shape: __string, location_name: "streamId"))
150
+ AddOutputRequest.add_member(:vpc_interface_attachment, Shapes::ShapeRef.new(shape: VpcInterfaceAttachment, location_name: "vpcInterfaceAttachment"))
113
151
  AddOutputRequest.struct_class = Types::AddOutputRequest
114
152
 
115
153
  BadRequestException.add_member(:message, Shapes::ShapeRef.new(shape: __string, required: true, location_name: "message"))
@@ -122,7 +160,10 @@ module Aws::MediaConnect
122
160
  CreateFlowRequest.add_member(:entitlements, Shapes::ShapeRef.new(shape: __listOfGrantEntitlementRequest, location_name: "entitlements"))
123
161
  CreateFlowRequest.add_member(:name, Shapes::ShapeRef.new(shape: __string, required: true, location_name: "name"))
124
162
  CreateFlowRequest.add_member(:outputs, Shapes::ShapeRef.new(shape: __listOfAddOutputRequest, location_name: "outputs"))
125
- CreateFlowRequest.add_member(:source, Shapes::ShapeRef.new(shape: SetSourceRequest, required: true, location_name: "source"))
163
+ CreateFlowRequest.add_member(:source, Shapes::ShapeRef.new(shape: SetSourceRequest, location_name: "source"))
164
+ CreateFlowRequest.add_member(:source_failover_config, Shapes::ShapeRef.new(shape: FailoverConfig, location_name: "sourceFailoverConfig"))
165
+ CreateFlowRequest.add_member(:sources, Shapes::ShapeRef.new(shape: __listOfSetSourceRequest, location_name: "sources"))
166
+ CreateFlowRequest.add_member(:vpc_interfaces, Shapes::ShapeRef.new(shape: __listOfVpcInterfaceRequest, location_name: "vpcInterfaces"))
126
167
  CreateFlowRequest.struct_class = Types::CreateFlowRequest
127
168
 
128
169
  CreateFlowResponse.add_member(:flow, Shapes::ShapeRef.new(shape: Flow, location_name: "flow"))
@@ -161,6 +202,10 @@ module Aws::MediaConnect
161
202
  Entitlement.add_member(:subscribers, Shapes::ShapeRef.new(shape: __listOf__string, required: true, location_name: "subscribers"))
162
203
  Entitlement.struct_class = Types::Entitlement
163
204
 
205
+ FailoverConfig.add_member(:recovery_window, Shapes::ShapeRef.new(shape: __integer, location_name: "recoveryWindow"))
206
+ FailoverConfig.add_member(:state, Shapes::ShapeRef.new(shape: State, location_name: "state"))
207
+ FailoverConfig.struct_class = Types::FailoverConfig
208
+
164
209
  Flow.add_member(:availability_zone, Shapes::ShapeRef.new(shape: __string, required: true, location_name: "availabilityZone"))
165
210
  Flow.add_member(:description, Shapes::ShapeRef.new(shape: __string, location_name: "description"))
166
211
  Flow.add_member(:egress_ip, Shapes::ShapeRef.new(shape: __string, location_name: "egressIp"))
@@ -169,7 +214,10 @@ module Aws::MediaConnect
169
214
  Flow.add_member(:name, Shapes::ShapeRef.new(shape: __string, required: true, location_name: "name"))
170
215
  Flow.add_member(:outputs, Shapes::ShapeRef.new(shape: __listOfOutput, required: true, location_name: "outputs"))
171
216
  Flow.add_member(:source, Shapes::ShapeRef.new(shape: Source, required: true, location_name: "source"))
217
+ Flow.add_member(:source_failover_config, Shapes::ShapeRef.new(shape: FailoverConfig, location_name: "sourceFailoverConfig"))
218
+ Flow.add_member(:sources, Shapes::ShapeRef.new(shape: __listOfSource, location_name: "sources"))
172
219
  Flow.add_member(:status, Shapes::ShapeRef.new(shape: Status, required: true, location_name: "status"))
220
+ Flow.add_member(:vpc_interfaces, Shapes::ShapeRef.new(shape: __listOfVpcInterface, location_name: "vpcInterfaces"))
173
221
  Flow.struct_class = Types::Flow
174
222
 
175
223
  ForbiddenException.add_member(:message, Shapes::ShapeRef.new(shape: __string, required: true, location_name: "message"))
@@ -247,6 +295,7 @@ module Aws::MediaConnect
247
295
  Output.add_member(:output_arn, Shapes::ShapeRef.new(shape: __string, required: true, location_name: "outputArn"))
248
296
  Output.add_member(:port, Shapes::ShapeRef.new(shape: __integer, location_name: "port"))
249
297
  Output.add_member(:transport, Shapes::ShapeRef.new(shape: Transport, location_name: "transport"))
298
+ Output.add_member(:vpc_interface_attachment, Shapes::ShapeRef.new(shape: VpcInterfaceAttachment, location_name: "vpcInterfaceAttachment"))
250
299
  Output.struct_class = Types::Output
251
300
 
252
301
  RemoveFlowOutputRequest.add_member(:flow_arn, Shapes::ShapeRef.new(shape: __string, required: true, location: "uri", location_name: "flowArn"))
@@ -257,6 +306,23 @@ module Aws::MediaConnect
257
306
  RemoveFlowOutputResponse.add_member(:output_arn, Shapes::ShapeRef.new(shape: __string, location_name: "outputArn"))
258
307
  RemoveFlowOutputResponse.struct_class = Types::RemoveFlowOutputResponse
259
308
 
309
+ RemoveFlowSourceRequest.add_member(:flow_arn, Shapes::ShapeRef.new(shape: __string, required: true, location: "uri", location_name: "flowArn"))
310
+ RemoveFlowSourceRequest.add_member(:source_arn, Shapes::ShapeRef.new(shape: __string, required: true, location: "uri", location_name: "sourceArn"))
311
+ RemoveFlowSourceRequest.struct_class = Types::RemoveFlowSourceRequest
312
+
313
+ RemoveFlowSourceResponse.add_member(:flow_arn, Shapes::ShapeRef.new(shape: __string, location_name: "flowArn"))
314
+ RemoveFlowSourceResponse.add_member(:source_arn, Shapes::ShapeRef.new(shape: __string, location_name: "sourceArn"))
315
+ RemoveFlowSourceResponse.struct_class = Types::RemoveFlowSourceResponse
316
+
317
+ RemoveFlowVpcInterfaceRequest.add_member(:flow_arn, Shapes::ShapeRef.new(shape: __string, required: true, location: "uri", location_name: "flowArn"))
318
+ RemoveFlowVpcInterfaceRequest.add_member(:vpc_interface_name, Shapes::ShapeRef.new(shape: __string, required: true, location: "uri", location_name: "vpcInterfaceName"))
319
+ RemoveFlowVpcInterfaceRequest.struct_class = Types::RemoveFlowVpcInterfaceRequest
320
+
321
+ RemoveFlowVpcInterfaceResponse.add_member(:flow_arn, Shapes::ShapeRef.new(shape: __string, location_name: "flowArn"))
322
+ RemoveFlowVpcInterfaceResponse.add_member(:non_deleted_network_interface_ids, Shapes::ShapeRef.new(shape: __listOf__string, location_name: "nonDeletedNetworkInterfaceIds"))
323
+ RemoveFlowVpcInterfaceResponse.add_member(:vpc_interface_name, Shapes::ShapeRef.new(shape: __string, location_name: "vpcInterfaceName"))
324
+ RemoveFlowVpcInterfaceResponse.struct_class = Types::RemoveFlowVpcInterfaceResponse
325
+
260
326
  ResponseError.add_member(:message, Shapes::ShapeRef.new(shape: __string, required: true, location_name: "message"))
261
327
  ResponseError.struct_class = Types::ResponseError
262
328
 
@@ -280,6 +346,7 @@ module Aws::MediaConnect
280
346
  SetSourceRequest.add_member(:name, Shapes::ShapeRef.new(shape: __string, location_name: "name"))
281
347
  SetSourceRequest.add_member(:protocol, Shapes::ShapeRef.new(shape: Protocol, location_name: "protocol"))
282
348
  SetSourceRequest.add_member(:stream_id, Shapes::ShapeRef.new(shape: __string, location_name: "streamId"))
349
+ SetSourceRequest.add_member(:vpc_interface_name, Shapes::ShapeRef.new(shape: __string, location_name: "vpcInterfaceName"))
283
350
  SetSourceRequest.add_member(:whitelist_cidr, Shapes::ShapeRef.new(shape: __string, location_name: "whitelistCidr"))
284
351
  SetSourceRequest.struct_class = Types::SetSourceRequest
285
352
 
@@ -292,6 +359,7 @@ module Aws::MediaConnect
292
359
  Source.add_member(:name, Shapes::ShapeRef.new(shape: __string, required: true, location_name: "name"))
293
360
  Source.add_member(:source_arn, Shapes::ShapeRef.new(shape: __string, required: true, location_name: "sourceArn"))
294
361
  Source.add_member(:transport, Shapes::ShapeRef.new(shape: Transport, location_name: "transport"))
362
+ Source.add_member(:vpc_interface_name, Shapes::ShapeRef.new(shape: __string, location_name: "vpcInterfaceName"))
295
363
  Source.add_member(:whitelist_cidr, Shapes::ShapeRef.new(shape: __string, location_name: "whitelistCidr"))
296
364
  Source.struct_class = Types::Source
297
365
 
@@ -340,6 +408,10 @@ module Aws::MediaConnect
340
408
  UpdateEncryption.add_member(:url, Shapes::ShapeRef.new(shape: __string, location_name: "url"))
341
409
  UpdateEncryption.struct_class = Types::UpdateEncryption
342
410
 
411
+ UpdateFailoverConfig.add_member(:recovery_window, Shapes::ShapeRef.new(shape: __integer, location_name: "recoveryWindow"))
412
+ UpdateFailoverConfig.add_member(:state, Shapes::ShapeRef.new(shape: State, location_name: "state"))
413
+ UpdateFailoverConfig.struct_class = Types::UpdateFailoverConfig
414
+
343
415
  UpdateFlowEntitlementRequest.add_member(:description, Shapes::ShapeRef.new(shape: __string, location_name: "description"))
344
416
  UpdateFlowEntitlementRequest.add_member(:encryption, Shapes::ShapeRef.new(shape: UpdateEncryption, location_name: "encryption"))
345
417
  UpdateFlowEntitlementRequest.add_member(:entitlement_arn, Shapes::ShapeRef.new(shape: __string, required: true, location: "uri", location_name: "entitlementArn"))
@@ -363,12 +435,20 @@ module Aws::MediaConnect
363
435
  UpdateFlowOutputRequest.add_member(:remote_id, Shapes::ShapeRef.new(shape: __string, location_name: "remoteId"))
364
436
  UpdateFlowOutputRequest.add_member(:smoothing_latency, Shapes::ShapeRef.new(shape: __integer, location_name: "smoothingLatency"))
365
437
  UpdateFlowOutputRequest.add_member(:stream_id, Shapes::ShapeRef.new(shape: __string, location_name: "streamId"))
438
+ UpdateFlowOutputRequest.add_member(:vpc_interface_attachment, Shapes::ShapeRef.new(shape: VpcInterfaceAttachment, location_name: "vpcInterfaceAttachment"))
366
439
  UpdateFlowOutputRequest.struct_class = Types::UpdateFlowOutputRequest
367
440
 
368
441
  UpdateFlowOutputResponse.add_member(:flow_arn, Shapes::ShapeRef.new(shape: __string, location_name: "flowArn"))
369
442
  UpdateFlowOutputResponse.add_member(:output, Shapes::ShapeRef.new(shape: Output, location_name: "output"))
370
443
  UpdateFlowOutputResponse.struct_class = Types::UpdateFlowOutputResponse
371
444
 
445
+ UpdateFlowRequest.add_member(:flow_arn, Shapes::ShapeRef.new(shape: __string, required: true, location: "uri", location_name: "flowArn"))
446
+ UpdateFlowRequest.add_member(:source_failover_config, Shapes::ShapeRef.new(shape: UpdateFailoverConfig, location_name: "sourceFailoverConfig"))
447
+ UpdateFlowRequest.struct_class = Types::UpdateFlowRequest
448
+
449
+ UpdateFlowResponse.add_member(:flow, Shapes::ShapeRef.new(shape: Flow, location_name: "flow"))
450
+ UpdateFlowResponse.struct_class = Types::UpdateFlowResponse
451
+
372
452
  UpdateFlowSourceRequest.add_member(:decryption, Shapes::ShapeRef.new(shape: UpdateEncryption, location_name: "decryption"))
373
453
  UpdateFlowSourceRequest.add_member(:description, Shapes::ShapeRef.new(shape: __string, location_name: "description"))
374
454
  UpdateFlowSourceRequest.add_member(:entitlement_arn, Shapes::ShapeRef.new(shape: __string, location_name: "entitlementArn"))
@@ -379,6 +459,7 @@ module Aws::MediaConnect
379
459
  UpdateFlowSourceRequest.add_member(:protocol, Shapes::ShapeRef.new(shape: Protocol, location_name: "protocol"))
380
460
  UpdateFlowSourceRequest.add_member(:source_arn, Shapes::ShapeRef.new(shape: __string, required: true, location: "uri", location_name: "sourceArn"))
381
461
  UpdateFlowSourceRequest.add_member(:stream_id, Shapes::ShapeRef.new(shape: __string, location_name: "streamId"))
462
+ UpdateFlowSourceRequest.add_member(:vpc_interface_name, Shapes::ShapeRef.new(shape: __string, location_name: "vpcInterfaceName"))
382
463
  UpdateFlowSourceRequest.add_member(:whitelist_cidr, Shapes::ShapeRef.new(shape: __string, location_name: "whitelistCidr"))
383
464
  UpdateFlowSourceRequest.struct_class = Types::UpdateFlowSourceRequest
384
465
 
@@ -386,6 +467,22 @@ module Aws::MediaConnect
386
467
  UpdateFlowSourceResponse.add_member(:source, Shapes::ShapeRef.new(shape: Source, location_name: "source"))
387
468
  UpdateFlowSourceResponse.struct_class = Types::UpdateFlowSourceResponse
388
469
 
470
+ VpcInterface.add_member(:name, Shapes::ShapeRef.new(shape: __string, required: true, location_name: "name"))
471
+ VpcInterface.add_member(:network_interface_ids, Shapes::ShapeRef.new(shape: __listOf__string, required: true, location_name: "networkInterfaceIds"))
472
+ VpcInterface.add_member(:role_arn, Shapes::ShapeRef.new(shape: __string, required: true, location_name: "roleArn"))
473
+ VpcInterface.add_member(:security_group_ids, Shapes::ShapeRef.new(shape: __listOf__string, required: true, location_name: "securityGroupIds"))
474
+ VpcInterface.add_member(:subnet_id, Shapes::ShapeRef.new(shape: __string, required: true, location_name: "subnetId"))
475
+ VpcInterface.struct_class = Types::VpcInterface
476
+
477
+ VpcInterfaceAttachment.add_member(:vpc_interface_name, Shapes::ShapeRef.new(shape: __string, location_name: "vpcInterfaceName"))
478
+ VpcInterfaceAttachment.struct_class = Types::VpcInterfaceAttachment
479
+
480
+ VpcInterfaceRequest.add_member(:name, Shapes::ShapeRef.new(shape: __string, required: true, location_name: "name"))
481
+ VpcInterfaceRequest.add_member(:role_arn, Shapes::ShapeRef.new(shape: __string, required: true, location_name: "roleArn"))
482
+ VpcInterfaceRequest.add_member(:security_group_ids, Shapes::ShapeRef.new(shape: __listOf__string, required: true, location_name: "securityGroupIds"))
483
+ VpcInterfaceRequest.add_member(:subnet_id, Shapes::ShapeRef.new(shape: __string, required: true, location_name: "subnetId"))
484
+ VpcInterfaceRequest.struct_class = Types::VpcInterfaceRequest
485
+
389
486
  __listOfAddOutputRequest.member = Shapes::ShapeRef.new(shape: AddOutputRequest)
390
487
 
391
488
  __listOfEntitlement.member = Shapes::ShapeRef.new(shape: Entitlement)
@@ -398,6 +495,16 @@ module Aws::MediaConnect
398
495
 
399
496
  __listOfOutput.member = Shapes::ShapeRef.new(shape: Output)
400
497
 
498
+ __listOfSetSourceRequest.member = Shapes::ShapeRef.new(shape: SetSourceRequest)
499
+
500
+ __listOfSource.member = Shapes::ShapeRef.new(shape: Source)
501
+
502
+ __listOfVpcInterface.member = Shapes::ShapeRef.new(shape: VpcInterface)
503
+
504
+ __listOfVpcInterfaceRequest.member = Shapes::ShapeRef.new(shape: VpcInterfaceRequest)
505
+
506
+ __listOf__integer.member = Shapes::ShapeRef.new(shape: __integer)
507
+
401
508
  __listOf__string.member = Shapes::ShapeRef.new(shape: __string)
402
509
 
403
510
  __mapOf__string.key = Shapes::ShapeRef.new(shape: __string)
@@ -436,6 +543,34 @@ module Aws::MediaConnect
436
543
  o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
437
544
  end)
438
545
 
546
+ api.add_operation(:add_flow_sources, Seahorse::Model::Operation.new.tap do |o|
547
+ o.name = "AddFlowSources"
548
+ o.http_method = "POST"
549
+ o.http_request_uri = "/v1/flows/{flowArn}/source"
550
+ o.input = Shapes::ShapeRef.new(shape: AddFlowSourcesRequest)
551
+ o.output = Shapes::ShapeRef.new(shape: AddFlowSourcesResponse)
552
+ o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
553
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
554
+ o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
555
+ o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
556
+ o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
557
+ o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
558
+ end)
559
+
560
+ api.add_operation(:add_flow_vpc_interfaces, Seahorse::Model::Operation.new.tap do |o|
561
+ o.name = "AddFlowVpcInterfaces"
562
+ o.http_method = "POST"
563
+ o.http_request_uri = "/v1/flows/{flowArn}/vpcInterfaces"
564
+ o.input = Shapes::ShapeRef.new(shape: AddFlowVpcInterfacesRequest)
565
+ o.output = Shapes::ShapeRef.new(shape: AddFlowVpcInterfacesResponse)
566
+ o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
567
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
568
+ o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
569
+ o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
570
+ o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
571
+ o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
572
+ end)
573
+
439
574
  api.add_operation(:create_flow, Seahorse::Model::Operation.new.tap do |o|
440
575
  o.name = "CreateFlow"
441
576
  o.http_method = "POST"
@@ -554,6 +689,34 @@ module Aws::MediaConnect
554
689
  o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
555
690
  end)
556
691
 
692
+ api.add_operation(:remove_flow_source, Seahorse::Model::Operation.new.tap do |o|
693
+ o.name = "RemoveFlowSource"
694
+ o.http_method = "DELETE"
695
+ o.http_request_uri = "/v1/flows/{flowArn}/source/{sourceArn}"
696
+ o.input = Shapes::ShapeRef.new(shape: RemoveFlowSourceRequest)
697
+ o.output = Shapes::ShapeRef.new(shape: RemoveFlowSourceResponse)
698
+ o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
699
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
700
+ o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
701
+ o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
702
+ o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
703
+ o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
704
+ end)
705
+
706
+ api.add_operation(:remove_flow_vpc_interface, Seahorse::Model::Operation.new.tap do |o|
707
+ o.name = "RemoveFlowVpcInterface"
708
+ o.http_method = "DELETE"
709
+ o.http_request_uri = "/v1/flows/{flowArn}/vpcInterfaces/{vpcInterfaceName}"
710
+ o.input = Shapes::ShapeRef.new(shape: RemoveFlowVpcInterfaceRequest)
711
+ o.output = Shapes::ShapeRef.new(shape: RemoveFlowVpcInterfaceResponse)
712
+ o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
713
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
714
+ o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
715
+ o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
716
+ o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
717
+ o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
718
+ end)
719
+
557
720
  api.add_operation(:revoke_flow_entitlement, Seahorse::Model::Operation.new.tap do |o|
558
721
  o.name = "RevokeFlowEntitlement"
559
722
  o.http_method = "DELETE"
@@ -618,6 +781,20 @@ module Aws::MediaConnect
618
781
  o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
619
782
  end)
620
783
 
784
+ api.add_operation(:update_flow, Seahorse::Model::Operation.new.tap do |o|
785
+ o.name = "UpdateFlow"
786
+ o.http_method = "PUT"
787
+ o.http_request_uri = "/v1/flows/{flowArn}"
788
+ o.input = Shapes::ShapeRef.new(shape: UpdateFlowRequest)
789
+ o.output = Shapes::ShapeRef.new(shape: UpdateFlowResponse)
790
+ o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
791
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
792
+ o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
793
+ o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
794
+ o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
795
+ o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
796
+ end)
797
+
621
798
  api.add_operation(:update_flow_entitlement, Seahorse::Model::Operation.new.tap do |o|
622
799
  o.name = "UpdateFlowEntitlement"
623
800
  o.http_method = "PUT"
@@ -6,13 +6,7 @@
6
6
  # WARNING ABOUT GENERATED CODE
7
7
 
8
8
  module Aws::MediaConnect
9
- # This class provides a resource oriented interface for MediaConnect.
10
- # To create a resource object:
11
- # resource = Aws::MediaConnect::Resource.new(region: 'us-west-2')
12
- # You can supply a client object with custom configuration that will be used for all resource operations.
13
- # If you do not pass +:client+, a default client will be constructed.
14
- # client = Aws::MediaConnect::Client.new(region: 'us-west-2')
15
- # resource = Aws::MediaConnect::Resource.new(client: client)
9
+
16
10
  class Resource
17
11
 
18
12
  # @param options ({})
@@ -22,7 +22,7 @@ module Aws::MediaConnect
22
22
  include Aws::Structure
23
23
  end
24
24
 
25
- # Adds outputs to an existing flow. You can create up to 20 outputs per
25
+ # Adds outputs to an existing flow. You can create up to 50 outputs per
26
26
  # flow.
27
27
  #
28
28
  # @note When making an API call, you may pass AddFlowOutputsRequest
@@ -53,6 +53,9 @@ module Aws::MediaConnect
53
53
  # remote_id: "__string",
54
54
  # smoothing_latency: 1,
55
55
  # stream_id: "__string",
56
+ # vpc_interface_attachment: {
57
+ # vpc_interface_name: "__string",
58
+ # },
56
59
  # },
57
60
  # ],
58
61
  # }
@@ -91,6 +94,125 @@ module Aws::MediaConnect
91
94
  include Aws::Structure
92
95
  end
93
96
 
97
+ # Adds sources to an existing flow.
98
+ #
99
+ # @note When making an API call, you may pass AddFlowSourcesRequest
100
+ # data as a hash:
101
+ #
102
+ # {
103
+ # flow_arn: "__string", # required
104
+ # sources: [ # required
105
+ # {
106
+ # decryption: {
107
+ # algorithm: "aes128", # required, accepts aes128, aes192, aes256
108
+ # constant_initialization_vector: "__string",
109
+ # device_id: "__string",
110
+ # key_type: "speke", # accepts speke, static-key
111
+ # region: "__string",
112
+ # resource_id: "__string",
113
+ # role_arn: "__string", # required
114
+ # secret_arn: "__string",
115
+ # url: "__string",
116
+ # },
117
+ # description: "__string",
118
+ # entitlement_arn: "__string",
119
+ # ingest_port: 1,
120
+ # max_bitrate: 1,
121
+ # max_latency: 1,
122
+ # name: "__string",
123
+ # protocol: "zixi-push", # accepts zixi-push, rtp-fec, rtp, zixi-pull, rist
124
+ # stream_id: "__string",
125
+ # vpc_interface_name: "__string",
126
+ # whitelist_cidr: "__string",
127
+ # },
128
+ # ],
129
+ # }
130
+ #
131
+ # @!attribute [rw] flow_arn
132
+ # @return [String]
133
+ #
134
+ # @!attribute [rw] sources
135
+ # A list of sources that you want to add.
136
+ # @return [Array<Types::SetSourceRequest>]
137
+ #
138
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediaconnect-2018-11-14/AddFlowSourcesRequest AWS API Documentation
139
+ #
140
+ class AddFlowSourcesRequest < Struct.new(
141
+ :flow_arn,
142
+ :sources)
143
+ include Aws::Structure
144
+ end
145
+
146
+ # The result of a successful AddFlowSources request. The response
147
+ # includes the details of the newly added sources.
148
+ #
149
+ # @!attribute [rw] flow_arn
150
+ # The ARN of the flow that these sources were added to.
151
+ # @return [String]
152
+ #
153
+ # @!attribute [rw] sources
154
+ # The details of the newly added sources.
155
+ # @return [Array<Types::Source>]
156
+ #
157
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediaconnect-2018-11-14/AddFlowSourcesResponse AWS API Documentation
158
+ #
159
+ class AddFlowSourcesResponse < Struct.new(
160
+ :flow_arn,
161
+ :sources)
162
+ include Aws::Structure
163
+ end
164
+
165
+ # Adds VPC interfaces to an existing flow.
166
+ #
167
+ # @note When making an API call, you may pass AddFlowVpcInterfacesRequest
168
+ # data as a hash:
169
+ #
170
+ # {
171
+ # flow_arn: "__string", # required
172
+ # vpc_interfaces: [ # required
173
+ # {
174
+ # name: "__string", # required
175
+ # role_arn: "__string", # required
176
+ # security_group_ids: ["__string"], # required
177
+ # subnet_id: "__string", # required
178
+ # },
179
+ # ],
180
+ # }
181
+ #
182
+ # @!attribute [rw] flow_arn
183
+ # @return [String]
184
+ #
185
+ # @!attribute [rw] vpc_interfaces
186
+ # A list of VPC interfaces that you want to add.
187
+ # @return [Array<Types::VpcInterfaceRequest>]
188
+ #
189
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediaconnect-2018-11-14/AddFlowVpcInterfacesRequest AWS API Documentation
190
+ #
191
+ class AddFlowVpcInterfacesRequest < Struct.new(
192
+ :flow_arn,
193
+ :vpc_interfaces)
194
+ include Aws::Structure
195
+ end
196
+
197
+ # The result of a successful AddFlowVpcInterfaces request. The response
198
+ # includes the details of the newly added VPC interfaces.
199
+ #
200
+ # @!attribute [rw] flow_arn
201
+ # The ARN of the flow that these VPC interfaces were added to.
202
+ # @return [String]
203
+ #
204
+ # @!attribute [rw] vpc_interfaces
205
+ # The details of the newly added VPC interfaces.
206
+ # @return [Array<Types::VpcInterface>]
207
+ #
208
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediaconnect-2018-11-14/AddFlowVpcInterfacesResponse AWS API Documentation
209
+ #
210
+ class AddFlowVpcInterfacesResponse < Struct.new(
211
+ :flow_arn,
212
+ :vpc_interfaces)
213
+ include Aws::Structure
214
+ end
215
+
94
216
  # The output that you want to add to this flow.
95
217
  #
96
218
  # @note When making an API call, you may pass AddOutputRequest
@@ -118,6 +240,9 @@ module Aws::MediaConnect
118
240
  # remote_id: "__string",
119
241
  # smoothing_latency: 1,
120
242
  # stream_id: "__string",
243
+ # vpc_interface_attachment: {
244
+ # vpc_interface_name: "__string",
245
+ # },
121
246
  # }
122
247
  #
123
248
  # @!attribute [rw] cidr_allow_list
@@ -173,6 +298,10 @@ module Aws::MediaConnect
173
298
  # parameter applies only to Zixi-based streams.
174
299
  # @return [String]
175
300
  #
301
+ # @!attribute [rw] vpc_interface_attachment
302
+ # The name of the VPC interface attachment to use for this output.
303
+ # @return [Types::VpcInterfaceAttachment]
304
+ #
176
305
  # @see http://docs.aws.amazon.com/goto/WebAPI/mediaconnect-2018-11-14/AddOutputRequest AWS API Documentation
177
306
  #
178
307
  class AddOutputRequest < Struct.new(
@@ -186,7 +315,8 @@ module Aws::MediaConnect
186
315
  :protocol,
187
316
  :remote_id,
188
317
  :smoothing_latency,
189
- :stream_id)
318
+ :stream_id,
319
+ :vpc_interface_attachment)
190
320
  include Aws::Structure
191
321
  end
192
322
 
@@ -219,7 +349,7 @@ module Aws::MediaConnect
219
349
  end
220
350
 
221
351
  # Creates a new flow. The request must include one source. The request
222
- # optionally can include outputs (up to 20) and one entitlement.
352
+ # optionally can include outputs (up to 50) and one entitlement.
223
353
  #
224
354
  # @note When making an API call, you may pass CreateFlowRequest
225
355
  # data as a hash:
@@ -269,9 +399,12 @@ module Aws::MediaConnect
269
399
  # remote_id: "__string",
270
400
  # smoothing_latency: 1,
271
401
  # stream_id: "__string",
402
+ # vpc_interface_attachment: {
403
+ # vpc_interface_name: "__string",
404
+ # },
272
405
  # },
273
406
  # ],
274
- # source: { # required
407
+ # source: {
275
408
  # decryption: {
276
409
  # algorithm: "aes128", # required, accepts aes128, aes192, aes256
277
410
  # constant_initialization_vector: "__string",
@@ -291,8 +424,46 @@ module Aws::MediaConnect
291
424
  # name: "__string",
292
425
  # protocol: "zixi-push", # accepts zixi-push, rtp-fec, rtp, zixi-pull, rist
293
426
  # stream_id: "__string",
427
+ # vpc_interface_name: "__string",
294
428
  # whitelist_cidr: "__string",
295
429
  # },
430
+ # source_failover_config: {
431
+ # recovery_window: 1,
432
+ # state: "ENABLED", # accepts ENABLED, DISABLED
433
+ # },
434
+ # sources: [
435
+ # {
436
+ # decryption: {
437
+ # algorithm: "aes128", # required, accepts aes128, aes192, aes256
438
+ # constant_initialization_vector: "__string",
439
+ # device_id: "__string",
440
+ # key_type: "speke", # accepts speke, static-key
441
+ # region: "__string",
442
+ # resource_id: "__string",
443
+ # role_arn: "__string", # required
444
+ # secret_arn: "__string",
445
+ # url: "__string",
446
+ # },
447
+ # description: "__string",
448
+ # entitlement_arn: "__string",
449
+ # ingest_port: 1,
450
+ # max_bitrate: 1,
451
+ # max_latency: 1,
452
+ # name: "__string",
453
+ # protocol: "zixi-push", # accepts zixi-push, rtp-fec, rtp, zixi-pull, rist
454
+ # stream_id: "__string",
455
+ # vpc_interface_name: "__string",
456
+ # whitelist_cidr: "__string",
457
+ # },
458
+ # ],
459
+ # vpc_interfaces: [
460
+ # {
461
+ # name: "__string", # required
462
+ # role_arn: "__string", # required
463
+ # security_group_ids: ["__string"], # required
464
+ # subnet_id: "__string", # required
465
+ # },
466
+ # ],
296
467
  # }
297
468
  #
298
469
  # @!attribute [rw] availability_zone
@@ -317,6 +488,17 @@ module Aws::MediaConnect
317
488
  # The settings for the source of the flow.
318
489
  # @return [Types::SetSourceRequest]
319
490
  #
491
+ # @!attribute [rw] source_failover_config
492
+ # The settings for source failover
493
+ # @return [Types::FailoverConfig]
494
+ #
495
+ # @!attribute [rw] sources
496
+ # @return [Array<Types::SetSourceRequest>]
497
+ #
498
+ # @!attribute [rw] vpc_interfaces
499
+ # The VPC interfaces you want on the flow.
500
+ # @return [Array<Types::VpcInterfaceRequest>]
501
+ #
320
502
  # @see http://docs.aws.amazon.com/goto/WebAPI/mediaconnect-2018-11-14/CreateFlowRequest AWS API Documentation
321
503
  #
322
504
  class CreateFlowRequest < Struct.new(
@@ -324,7 +506,10 @@ module Aws::MediaConnect
324
506
  :entitlements,
325
507
  :name,
326
508
  :outputs,
327
- :source)
509
+ :source,
510
+ :source_failover_config,
511
+ :sources,
512
+ :vpc_interfaces)
328
513
  include Aws::Structure
329
514
  end
330
515
 
@@ -540,6 +725,31 @@ module Aws::MediaConnect
540
725
  include Aws::Structure
541
726
  end
542
727
 
728
+ # The settings for source failover
729
+ #
730
+ # @note When making an API call, you may pass FailoverConfig
731
+ # data as a hash:
732
+ #
733
+ # {
734
+ # recovery_window: 1,
735
+ # state: "ENABLED", # accepts ENABLED, DISABLED
736
+ # }
737
+ #
738
+ # @!attribute [rw] recovery_window
739
+ # Search window time to look for dash-7 packets
740
+ # @return [Integer]
741
+ #
742
+ # @!attribute [rw] state
743
+ # @return [String]
744
+ #
745
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediaconnect-2018-11-14/FailoverConfig AWS API Documentation
746
+ #
747
+ class FailoverConfig < Struct.new(
748
+ :recovery_window,
749
+ :state)
750
+ include Aws::Structure
751
+ end
752
+
543
753
  # The settings for a flow, including its source, outputs, and
544
754
  # entitlements.
545
755
  #
@@ -579,10 +789,21 @@ module Aws::MediaConnect
579
789
  # The settings for the source of the flow.
580
790
  # @return [Types::Source]
581
791
  #
792
+ # @!attribute [rw] source_failover_config
793
+ # The settings for source failover
794
+ # @return [Types::FailoverConfig]
795
+ #
796
+ # @!attribute [rw] sources
797
+ # @return [Array<Types::Source>]
798
+ #
582
799
  # @!attribute [rw] status
583
800
  # The current status of the flow.
584
801
  # @return [String]
585
802
  #
803
+ # @!attribute [rw] vpc_interfaces
804
+ # The VPC Interfaces for this flow.
805
+ # @return [Array<Types::VpcInterface>]
806
+ #
586
807
  # @see http://docs.aws.amazon.com/goto/WebAPI/mediaconnect-2018-11-14/Flow AWS API Documentation
587
808
  #
588
809
  class Flow < Struct.new(
@@ -594,7 +815,10 @@ module Aws::MediaConnect
594
815
  :name,
595
816
  :outputs,
596
817
  :source,
597
- :status)
818
+ :source_failover_config,
819
+ :sources,
820
+ :status,
821
+ :vpc_interfaces)
598
822
  include Aws::Structure
599
823
  end
600
824
 
@@ -1031,6 +1255,10 @@ module Aws::MediaConnect
1031
1255
  # output.
1032
1256
  # @return [Types::Transport]
1033
1257
  #
1258
+ # @!attribute [rw] vpc_interface_attachment
1259
+ # The name of the VPC interface attachment to use for this output.
1260
+ # @return [Types::VpcInterfaceAttachment]
1261
+ #
1034
1262
  # @see http://docs.aws.amazon.com/goto/WebAPI/mediaconnect-2018-11-14/Output AWS API Documentation
1035
1263
  #
1036
1264
  class Output < Struct.new(
@@ -1043,7 +1271,8 @@ module Aws::MediaConnect
1043
1271
  :name,
1044
1272
  :output_arn,
1045
1273
  :port,
1046
- :transport)
1274
+ :transport,
1275
+ :vpc_interface_attachment)
1047
1276
  include Aws::Structure
1048
1277
  end
1049
1278
 
@@ -1088,6 +1317,95 @@ module Aws::MediaConnect
1088
1317
  include Aws::Structure
1089
1318
  end
1090
1319
 
1320
+ # @note When making an API call, you may pass RemoveFlowSourceRequest
1321
+ # data as a hash:
1322
+ #
1323
+ # {
1324
+ # flow_arn: "__string", # required
1325
+ # source_arn: "__string", # required
1326
+ # }
1327
+ #
1328
+ # @!attribute [rw] flow_arn
1329
+ # @return [String]
1330
+ #
1331
+ # @!attribute [rw] source_arn
1332
+ # @return [String]
1333
+ #
1334
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediaconnect-2018-11-14/RemoveFlowSourceRequest AWS API Documentation
1335
+ #
1336
+ class RemoveFlowSourceRequest < Struct.new(
1337
+ :flow_arn,
1338
+ :source_arn)
1339
+ include Aws::Structure
1340
+ end
1341
+
1342
+ # The result of a successful RemoveFlowSource request including the flow
1343
+ # ARN and the source ARN that was removed.
1344
+ #
1345
+ # @!attribute [rw] flow_arn
1346
+ # The ARN of the flow that is associated with the source you removed.
1347
+ # @return [String]
1348
+ #
1349
+ # @!attribute [rw] source_arn
1350
+ # The ARN of the source that was removed.
1351
+ # @return [String]
1352
+ #
1353
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediaconnect-2018-11-14/RemoveFlowSourceResponse AWS API Documentation
1354
+ #
1355
+ class RemoveFlowSourceResponse < Struct.new(
1356
+ :flow_arn,
1357
+ :source_arn)
1358
+ include Aws::Structure
1359
+ end
1360
+
1361
+ # @note When making an API call, you may pass RemoveFlowVpcInterfaceRequest
1362
+ # data as a hash:
1363
+ #
1364
+ # {
1365
+ # flow_arn: "__string", # required
1366
+ # vpc_interface_name: "__string", # required
1367
+ # }
1368
+ #
1369
+ # @!attribute [rw] flow_arn
1370
+ # @return [String]
1371
+ #
1372
+ # @!attribute [rw] vpc_interface_name
1373
+ # @return [String]
1374
+ #
1375
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediaconnect-2018-11-14/RemoveFlowVpcInterfaceRequest AWS API Documentation
1376
+ #
1377
+ class RemoveFlowVpcInterfaceRequest < Struct.new(
1378
+ :flow_arn,
1379
+ :vpc_interface_name)
1380
+ include Aws::Structure
1381
+ end
1382
+
1383
+ # The result of a successful RemoveFlowVpcInterface request including
1384
+ # the flow ARN and the VPC interface name that was removed.
1385
+ #
1386
+ # @!attribute [rw] flow_arn
1387
+ # The ARN of the flow that is associated with the VPC interface you
1388
+ # removed.
1389
+ # @return [String]
1390
+ #
1391
+ # @!attribute [rw] non_deleted_network_interface_ids
1392
+ # IDs of network interfaces associated with the removed VPC interface
1393
+ # that Media Connect was unable to remove.
1394
+ # @return [Array<String>]
1395
+ #
1396
+ # @!attribute [rw] vpc_interface_name
1397
+ # The name of the VPC interface that was removed.
1398
+ # @return [String]
1399
+ #
1400
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediaconnect-2018-11-14/RemoveFlowVpcInterfaceResponse AWS API Documentation
1401
+ #
1402
+ class RemoveFlowVpcInterfaceResponse < Struct.new(
1403
+ :flow_arn,
1404
+ :non_deleted_network_interface_ids,
1405
+ :vpc_interface_name)
1406
+ include Aws::Structure
1407
+ end
1408
+
1091
1409
  # Exception raised by AWS Elemental MediaConnect. See the error message
1092
1410
  # and documentation for the operation for more information on the cause
1093
1411
  # of this exception.
@@ -1184,6 +1502,7 @@ module Aws::MediaConnect
1184
1502
  # name: "__string",
1185
1503
  # protocol: "zixi-push", # accepts zixi-push, rtp-fec, rtp, zixi-pull, rist
1186
1504
  # stream_id: "__string",
1505
+ # vpc_interface_name: "__string",
1187
1506
  # whitelist_cidr: "__string",
1188
1507
  # }
1189
1508
  #
@@ -1229,6 +1548,10 @@ module Aws::MediaConnect
1229
1548
  # parameter applies only to Zixi-based streams.
1230
1549
  # @return [String]
1231
1550
  #
1551
+ # @!attribute [rw] vpc_interface_name
1552
+ # The name of the VPC interface to use for this source.
1553
+ # @return [String]
1554
+ #
1232
1555
  # @!attribute [rw] whitelist_cidr
1233
1556
  # The range of IP addresses that should be allowed to contribute
1234
1557
  # content to your source. These IP addresses should be in the form of
@@ -1248,6 +1571,7 @@ module Aws::MediaConnect
1248
1571
  :name,
1249
1572
  :protocol,
1250
1573
  :stream_id,
1574
+ :vpc_interface_name,
1251
1575
  :whitelist_cidr)
1252
1576
  include Aws::Structure
1253
1577
  end
@@ -1298,6 +1622,10 @@ module Aws::MediaConnect
1298
1622
  # source.
1299
1623
  # @return [Types::Transport]
1300
1624
  #
1625
+ # @!attribute [rw] vpc_interface_name
1626
+ # The name of the VPC Interface this Source is configured with.
1627
+ # @return [String]
1628
+ #
1301
1629
  # @!attribute [rw] whitelist_cidr
1302
1630
  # The range of IP addresses that should be allowed to contribute
1303
1631
  # content to your source. These IP addresses should be in the form of
@@ -1317,6 +1645,7 @@ module Aws::MediaConnect
1317
1645
  :name,
1318
1646
  :source_arn,
1319
1647
  :transport,
1648
+ :vpc_interface_name,
1320
1649
  :whitelist_cidr)
1321
1650
  include Aws::Structure
1322
1651
  end
@@ -1593,6 +1922,31 @@ module Aws::MediaConnect
1593
1922
  include Aws::Structure
1594
1923
  end
1595
1924
 
1925
+ # The settings for source failover
1926
+ #
1927
+ # @note When making an API call, you may pass UpdateFailoverConfig
1928
+ # data as a hash:
1929
+ #
1930
+ # {
1931
+ # recovery_window: 1,
1932
+ # state: "ENABLED", # accepts ENABLED, DISABLED
1933
+ # }
1934
+ #
1935
+ # @!attribute [rw] recovery_window
1936
+ # Recovery window time to look for dash-7 packets
1937
+ # @return [Integer]
1938
+ #
1939
+ # @!attribute [rw] state
1940
+ # @return [String]
1941
+ #
1942
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediaconnect-2018-11-14/UpdateFailoverConfig AWS API Documentation
1943
+ #
1944
+ class UpdateFailoverConfig < Struct.new(
1945
+ :recovery_window,
1946
+ :state)
1947
+ include Aws::Structure
1948
+ end
1949
+
1596
1950
  # The updates that you want to make to a specific entitlement.
1597
1951
  #
1598
1952
  # @note When making an API call, you may pass UpdateFlowEntitlementRequest
@@ -1699,6 +2053,9 @@ module Aws::MediaConnect
1699
2053
  # remote_id: "__string",
1700
2054
  # smoothing_latency: 1,
1701
2055
  # stream_id: "__string",
2056
+ # vpc_interface_attachment: {
2057
+ # vpc_interface_name: "__string",
2058
+ # },
1702
2059
  # }
1703
2060
  #
1704
2061
  # @!attribute [rw] cidr_allow_list
@@ -1755,6 +2112,10 @@ module Aws::MediaConnect
1755
2112
  # parameter applies only to Zixi-based streams.
1756
2113
  # @return [String]
1757
2114
  #
2115
+ # @!attribute [rw] vpc_interface_attachment
2116
+ # The name of the VPC interface attachment to use for this output.
2117
+ # @return [Types::VpcInterfaceAttachment]
2118
+ #
1758
2119
  # @see http://docs.aws.amazon.com/goto/WebAPI/mediaconnect-2018-11-14/UpdateFlowOutputRequest AWS API Documentation
1759
2120
  #
1760
2121
  class UpdateFlowOutputRequest < Struct.new(
@@ -1769,7 +2130,8 @@ module Aws::MediaConnect
1769
2130
  :protocol,
1770
2131
  :remote_id,
1771
2132
  :smoothing_latency,
1772
- :stream_id)
2133
+ :stream_id,
2134
+ :vpc_interface_attachment)
1773
2135
  include Aws::Structure
1774
2136
  end
1775
2137
 
@@ -1792,6 +2154,48 @@ module Aws::MediaConnect
1792
2154
  include Aws::Structure
1793
2155
  end
1794
2156
 
2157
+ # Updates an existing flow.
2158
+ #
2159
+ # @note When making an API call, you may pass UpdateFlowRequest
2160
+ # data as a hash:
2161
+ #
2162
+ # {
2163
+ # flow_arn: "__string", # required
2164
+ # source_failover_config: {
2165
+ # recovery_window: 1,
2166
+ # state: "ENABLED", # accepts ENABLED, DISABLED
2167
+ # },
2168
+ # }
2169
+ #
2170
+ # @!attribute [rw] flow_arn
2171
+ # @return [String]
2172
+ #
2173
+ # @!attribute [rw] source_failover_config
2174
+ # The settings for source failover
2175
+ # @return [Types::UpdateFailoverConfig]
2176
+ #
2177
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediaconnect-2018-11-14/UpdateFlowRequest AWS API Documentation
2178
+ #
2179
+ class UpdateFlowRequest < Struct.new(
2180
+ :flow_arn,
2181
+ :source_failover_config)
2182
+ include Aws::Structure
2183
+ end
2184
+
2185
+ # Updates an existing flow.
2186
+ #
2187
+ # @!attribute [rw] flow
2188
+ # The settings for a flow, including its source, outputs, and
2189
+ # entitlements.
2190
+ # @return [Types::Flow]
2191
+ #
2192
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediaconnect-2018-11-14/UpdateFlowResponse AWS API Documentation
2193
+ #
2194
+ class UpdateFlowResponse < Struct.new(
2195
+ :flow)
2196
+ include Aws::Structure
2197
+ end
2198
+
1795
2199
  # The settings for the updated source of the flow.
1796
2200
  #
1797
2201
  # @note When making an API call, you may pass UpdateFlowSourceRequest
@@ -1818,6 +2222,7 @@ module Aws::MediaConnect
1818
2222
  # protocol: "zixi-push", # accepts zixi-push, rtp-fec, rtp, zixi-pull, rist
1819
2223
  # source_arn: "__string", # required
1820
2224
  # stream_id: "__string",
2225
+ # vpc_interface_name: "__string",
1821
2226
  # whitelist_cidr: "__string",
1822
2227
  # }
1823
2228
  #
@@ -1865,6 +2270,10 @@ module Aws::MediaConnect
1865
2270
  # parameter applies only to Zixi-based streams.
1866
2271
  # @return [String]
1867
2272
  #
2273
+ # @!attribute [rw] vpc_interface_name
2274
+ # The name of the VPC Interface to configure this Source with.
2275
+ # @return [String]
2276
+ #
1868
2277
  # @!attribute [rw] whitelist_cidr
1869
2278
  # The range of IP addresses that should be allowed to contribute
1870
2279
  # content to your source. These IP addresses should be in the form of
@@ -1885,6 +2294,7 @@ module Aws::MediaConnect
1885
2294
  :protocol,
1886
2295
  :source_arn,
1887
2296
  :stream_id,
2297
+ :vpc_interface_name,
1888
2298
  :whitelist_cidr)
1889
2299
  include Aws::Structure
1890
2300
  end
@@ -1909,5 +2319,101 @@ module Aws::MediaConnect
1909
2319
  include Aws::Structure
1910
2320
  end
1911
2321
 
2322
+ # The settings for a VPC Source.
2323
+ #
2324
+ # @!attribute [rw] name
2325
+ # Immutable and has to be a unique against other VpcInterfaces in this
2326
+ # Flow
2327
+ # @return [String]
2328
+ #
2329
+ # @!attribute [rw] network_interface_ids
2330
+ # IDs of the network interfaces created in customer's account by
2331
+ # MediaConnect.
2332
+ # @return [Array<String>]
2333
+ #
2334
+ # @!attribute [rw] role_arn
2335
+ # Role Arn MediaConnect can assumes to create ENIs in customer's
2336
+ # account
2337
+ # @return [String]
2338
+ #
2339
+ # @!attribute [rw] security_group_ids
2340
+ # Security Group IDs to be used on ENI.
2341
+ # @return [Array<String>]
2342
+ #
2343
+ # @!attribute [rw] subnet_id
2344
+ # Subnet must be in the AZ of the Flow
2345
+ # @return [String]
2346
+ #
2347
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediaconnect-2018-11-14/VpcInterface AWS API Documentation
2348
+ #
2349
+ class VpcInterface < Struct.new(
2350
+ :name,
2351
+ :network_interface_ids,
2352
+ :role_arn,
2353
+ :security_group_ids,
2354
+ :subnet_id)
2355
+ include Aws::Structure
2356
+ end
2357
+
2358
+ # The settings for attaching a VPC interface to an output.
2359
+ #
2360
+ # @note When making an API call, you may pass VpcInterfaceAttachment
2361
+ # data as a hash:
2362
+ #
2363
+ # {
2364
+ # vpc_interface_name: "__string",
2365
+ # }
2366
+ #
2367
+ # @!attribute [rw] vpc_interface_name
2368
+ # The name of the VPC interface to use for this output.
2369
+ # @return [String]
2370
+ #
2371
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediaconnect-2018-11-14/VpcInterfaceAttachment AWS API Documentation
2372
+ #
2373
+ class VpcInterfaceAttachment < Struct.new(
2374
+ :vpc_interface_name)
2375
+ include Aws::Structure
2376
+ end
2377
+
2378
+ # Desired VPC Interface for a Flow
2379
+ #
2380
+ # @note When making an API call, you may pass VpcInterfaceRequest
2381
+ # data as a hash:
2382
+ #
2383
+ # {
2384
+ # name: "__string", # required
2385
+ # role_arn: "__string", # required
2386
+ # security_group_ids: ["__string"], # required
2387
+ # subnet_id: "__string", # required
2388
+ # }
2389
+ #
2390
+ # @!attribute [rw] name
2391
+ # The name of the VPC Interface. This value must be unique within the
2392
+ # current flow.
2393
+ # @return [String]
2394
+ #
2395
+ # @!attribute [rw] role_arn
2396
+ # Role Arn MediaConnect can assumes to create ENIs in customer's
2397
+ # account
2398
+ # @return [String]
2399
+ #
2400
+ # @!attribute [rw] security_group_ids
2401
+ # Security Group IDs to be used on ENI.
2402
+ # @return [Array<String>]
2403
+ #
2404
+ # @!attribute [rw] subnet_id
2405
+ # Subnet must be in the AZ of the Flow
2406
+ # @return [String]
2407
+ #
2408
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediaconnect-2018-11-14/VpcInterfaceRequest AWS API Documentation
2409
+ #
2410
+ class VpcInterfaceRequest < Struct.new(
2411
+ :name,
2412
+ :role_arn,
2413
+ :security_group_ids,
2414
+ :subnet_id)
2415
+ include Aws::Structure
2416
+ end
2417
+
1912
2418
  end
1913
2419
  end