aws-sdk-mediaconnect 1.45.0 → 1.47.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,128 @@
1
+ # frozen_string_literal: true
2
+
3
+ # WARNING ABOUT GENERATED CODE
4
+ #
5
+ # This file is generated. See the contributing guide for more information:
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+
11
+ module Aws::MediaConnect
12
+ module Plugins
13
+ class Endpoints < Seahorse::Client::Plugin
14
+ option(
15
+ :endpoint_provider,
16
+ doc_type: 'Aws::MediaConnect::EndpointProvider',
17
+ docstring: 'The endpoint provider used to resolve endpoints. Any '\
18
+ 'object that responds to `#resolve_endpoint(parameters)` '\
19
+ 'where `parameters` is a Struct similar to '\
20
+ '`Aws::MediaConnect::EndpointParameters`'
21
+ ) do |cfg|
22
+ Aws::MediaConnect::EndpointProvider.new
23
+ end
24
+
25
+ # @api private
26
+ class Handler < Seahorse::Client::Handler
27
+ def call(context)
28
+ # If endpoint was discovered, do not resolve or apply the endpoint.
29
+ unless context[:discovered_endpoint]
30
+ params = parameters_for_operation(context)
31
+ endpoint = context.config.endpoint_provider.resolve_endpoint(params)
32
+
33
+ context.http_request.endpoint = endpoint.url
34
+ apply_endpoint_headers(context, endpoint.headers)
35
+ end
36
+
37
+ context[:endpoint_params] = params
38
+ context[:auth_scheme] =
39
+ Aws::Endpoints.resolve_auth_scheme(context, endpoint)
40
+
41
+ @handler.call(context)
42
+ end
43
+
44
+ private
45
+
46
+ def apply_endpoint_headers(context, headers)
47
+ headers.each do |key, values|
48
+ value = values
49
+ .compact
50
+ .map { |s| Seahorse::Util.escape_header_list_string(s.to_s) }
51
+ .join(',')
52
+
53
+ context.http_request.headers[key] = value
54
+ end
55
+ end
56
+
57
+ def parameters_for_operation(context)
58
+ case context.operation_name
59
+ when :add_flow_media_streams
60
+ Aws::MediaConnect::Endpoints::AddFlowMediaStreams.build(context)
61
+ when :add_flow_outputs
62
+ Aws::MediaConnect::Endpoints::AddFlowOutputs.build(context)
63
+ when :add_flow_sources
64
+ Aws::MediaConnect::Endpoints::AddFlowSources.build(context)
65
+ when :add_flow_vpc_interfaces
66
+ Aws::MediaConnect::Endpoints::AddFlowVpcInterfaces.build(context)
67
+ when :create_flow
68
+ Aws::MediaConnect::Endpoints::CreateFlow.build(context)
69
+ when :delete_flow
70
+ Aws::MediaConnect::Endpoints::DeleteFlow.build(context)
71
+ when :describe_flow
72
+ Aws::MediaConnect::Endpoints::DescribeFlow.build(context)
73
+ when :describe_offering
74
+ Aws::MediaConnect::Endpoints::DescribeOffering.build(context)
75
+ when :describe_reservation
76
+ Aws::MediaConnect::Endpoints::DescribeReservation.build(context)
77
+ when :grant_flow_entitlements
78
+ Aws::MediaConnect::Endpoints::GrantFlowEntitlements.build(context)
79
+ when :list_entitlements
80
+ Aws::MediaConnect::Endpoints::ListEntitlements.build(context)
81
+ when :list_flows
82
+ Aws::MediaConnect::Endpoints::ListFlows.build(context)
83
+ when :list_offerings
84
+ Aws::MediaConnect::Endpoints::ListOfferings.build(context)
85
+ when :list_reservations
86
+ Aws::MediaConnect::Endpoints::ListReservations.build(context)
87
+ when :list_tags_for_resource
88
+ Aws::MediaConnect::Endpoints::ListTagsForResource.build(context)
89
+ when :purchase_offering
90
+ Aws::MediaConnect::Endpoints::PurchaseOffering.build(context)
91
+ when :remove_flow_media_stream
92
+ Aws::MediaConnect::Endpoints::RemoveFlowMediaStream.build(context)
93
+ when :remove_flow_output
94
+ Aws::MediaConnect::Endpoints::RemoveFlowOutput.build(context)
95
+ when :remove_flow_source
96
+ Aws::MediaConnect::Endpoints::RemoveFlowSource.build(context)
97
+ when :remove_flow_vpc_interface
98
+ Aws::MediaConnect::Endpoints::RemoveFlowVpcInterface.build(context)
99
+ when :revoke_flow_entitlement
100
+ Aws::MediaConnect::Endpoints::RevokeFlowEntitlement.build(context)
101
+ when :start_flow
102
+ Aws::MediaConnect::Endpoints::StartFlow.build(context)
103
+ when :stop_flow
104
+ Aws::MediaConnect::Endpoints::StopFlow.build(context)
105
+ when :tag_resource
106
+ Aws::MediaConnect::Endpoints::TagResource.build(context)
107
+ when :untag_resource
108
+ Aws::MediaConnect::Endpoints::UntagResource.build(context)
109
+ when :update_flow
110
+ Aws::MediaConnect::Endpoints::UpdateFlow.build(context)
111
+ when :update_flow_entitlement
112
+ Aws::MediaConnect::Endpoints::UpdateFlowEntitlement.build(context)
113
+ when :update_flow_media_stream
114
+ Aws::MediaConnect::Endpoints::UpdateFlowMediaStream.build(context)
115
+ when :update_flow_output
116
+ Aws::MediaConnect::Endpoints::UpdateFlowOutput.build(context)
117
+ when :update_flow_source
118
+ Aws::MediaConnect::Endpoints::UpdateFlowSource.build(context)
119
+ end
120
+ end
121
+ end
122
+
123
+ def add_handlers(handlers, _config)
124
+ handlers.add(Handler, step: :build, priority: 75)
125
+ end
126
+ end
127
+ end
128
+ end