aws-sdk-athena 1.55.0 → 1.57.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d93a10bf117ae8c6ab4bb6e57c3fbe33d4b116abe69e9f38786486ebba621cfb
4
- data.tar.gz: c08af9b491cbacbd85e97ed2a1e9b93fc56a716704e33ed780fe738d14da62d3
3
+ metadata.gz: e34f601fcf51380c748dbd3595e720808fa00c01ceca0ebe652b53b1fa1b7184
4
+ data.tar.gz: cb4ea48fb27f210100ee23f7f8264aefaea1de779453dcb95375a3e08bc3b6f2
5
5
  SHA512:
6
- metadata.gz: 88a9ab5998ed7f54646b12ca95e92ede86b620ef0cbd6686d081862cc145b0b906772de30601fb0e9701911919e3c67c5fe9f7e11dbb0bf487d503e05e1e9e04
7
- data.tar.gz: e4113fed8f2052810d2db2883fed1715e46790e43595357b0c29cbfb71fe3a18a7ebb3a7313b63178bd067b84af0521281f7b2a901f94782aec384528b14d1e0
6
+ metadata.gz: 1b79e2c2b5a54c9bb76029fc1ea5006098fcf47938587ad8515f1a662a7da6067b1647c224d8fec2c33c734b0d76fd0b21db16e8330d1fe0ec72c14232e1df4f
7
+ data.tar.gz: 56fc0bb9205f293e4a5887a8de61336b9638abb641e8efcd91bbd8198872876394f9a983c3ec927ffdb2e8dfdb1fa836615f813d303fb1889015adfde3b48802
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.57.0 (2022-10-25)
5
+ ------------------
6
+
7
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
8
+
9
+ 1.56.0 (2022-07-21)
10
+ ------------------
11
+
12
+ * Feature - This feature allows customers to retrieve runtime statistics for completed queries
13
+
4
14
  1.55.0 (2022-07-14)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.55.0
1
+ 1.57.0
@@ -30,7 +30,7 @@ require 'aws-sdk-core/plugins/http_checksum.rb'
30
30
  require 'aws-sdk-core/plugins/checksum_algorithm.rb'
31
31
  require 'aws-sdk-core/plugins/defaults_mode.rb'
32
32
  require 'aws-sdk-core/plugins/recursion_detection.rb'
33
- require 'aws-sdk-core/plugins/signature_v4.rb'
33
+ require 'aws-sdk-core/plugins/sign.rb'
34
34
  require 'aws-sdk-core/plugins/protocols/json_rpc.rb'
35
35
 
36
36
  Aws::Plugins::GlobalConfiguration.add_identifier(:athena)
@@ -79,8 +79,9 @@ module Aws::Athena
79
79
  add_plugin(Aws::Plugins::ChecksumAlgorithm)
80
80
  add_plugin(Aws::Plugins::DefaultsMode)
81
81
  add_plugin(Aws::Plugins::RecursionDetection)
82
- add_plugin(Aws::Plugins::SignatureV4)
82
+ add_plugin(Aws::Plugins::Sign)
83
83
  add_plugin(Aws::Plugins::Protocols::JsonRpc)
84
+ add_plugin(Aws::Athena::Plugins::Endpoints)
84
85
 
85
86
  # @overload initialize(options)
86
87
  # @param [Hash] options
@@ -297,6 +298,19 @@ module Aws::Athena
297
298
  # ** Please note ** When response stubbing is enabled, no HTTP
298
299
  # requests are made, and retries are disabled.
299
300
  #
301
+ # @option options [Aws::TokenProvider] :token_provider
302
+ # A Bearer Token Provider. This can be an instance of any one of the
303
+ # following classes:
304
+ #
305
+ # * `Aws::StaticTokenProvider` - Used for configuring static, non-refreshing
306
+ # tokens.
307
+ #
308
+ # * `Aws::SSOTokenProvider` - Used for loading tokens from AWS SSO using an
309
+ # access token generated from `aws login`.
310
+ #
311
+ # When `:token_provider` is not configured directly, the `Aws::TokenProviderChain`
312
+ # will be used to search for tokens configured for your profile in shared configuration files.
313
+ #
300
314
  # @option options [Boolean] :use_dualstack_endpoint
301
315
  # When set to `true`, dualstack enabled endpoints (with `.aws` TLD)
302
316
  # will be used if available.
@@ -310,6 +324,9 @@ module Aws::Athena
310
324
  # When `true`, request parameters are validated before
311
325
  # sending the request.
312
326
  #
327
+ # @option options [Aws::Athena::EndpointProvider] :endpoint_provider
328
+ # The endpoint provider used to resolve endpoints. Any object that responds to `#resolve_endpoint(parameters)` where `parameters` is a Struct similar to `Aws::Athena::EndpointParameters`
329
+ #
313
330
  # @option options [URI::HTTP,String] :http_proxy A proxy to send
314
331
  # requests through. Formatted like 'http://proxy.com:123'.
315
332
  #
@@ -1175,6 +1192,60 @@ module Aws::Athena
1175
1192
  req.send_request(options)
1176
1193
  end
1177
1194
 
1195
+ # Returns query execution runtime statistics related to a single
1196
+ # execution of a query if you have access to the workgroup in which the
1197
+ # query ran. The query execution runtime statistics is returned only
1198
+ # when QueryExecutionStatus$State is in a SUCCEEDED or FAILED state.
1199
+ #
1200
+ # @option params [required, String] :query_execution_id
1201
+ # The unique ID of the query execution.
1202
+ #
1203
+ # @return [Types::GetQueryRuntimeStatisticsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1204
+ #
1205
+ # * {Types::GetQueryRuntimeStatisticsOutput#query_runtime_statistics #query_runtime_statistics} => Types::QueryRuntimeStatistics
1206
+ #
1207
+ # @example Request syntax with placeholder values
1208
+ #
1209
+ # resp = client.get_query_runtime_statistics({
1210
+ # query_execution_id: "QueryExecutionId", # required
1211
+ # })
1212
+ #
1213
+ # @example Response structure
1214
+ #
1215
+ # resp.query_runtime_statistics.timeline.query_queue_time_in_millis #=> Integer
1216
+ # resp.query_runtime_statistics.timeline.query_planning_time_in_millis #=> Integer
1217
+ # resp.query_runtime_statistics.timeline.engine_execution_time_in_millis #=> Integer
1218
+ # resp.query_runtime_statistics.timeline.service_processing_time_in_millis #=> Integer
1219
+ # resp.query_runtime_statistics.timeline.total_execution_time_in_millis #=> Integer
1220
+ # resp.query_runtime_statistics.rows.input_rows #=> Integer
1221
+ # resp.query_runtime_statistics.rows.input_bytes #=> Integer
1222
+ # resp.query_runtime_statistics.rows.output_bytes #=> Integer
1223
+ # resp.query_runtime_statistics.rows.output_rows #=> Integer
1224
+ # resp.query_runtime_statistics.output_stage.stage_id #=> Integer
1225
+ # resp.query_runtime_statistics.output_stage.state #=> String
1226
+ # resp.query_runtime_statistics.output_stage.output_bytes #=> Integer
1227
+ # resp.query_runtime_statistics.output_stage.output_rows #=> Integer
1228
+ # resp.query_runtime_statistics.output_stage.input_bytes #=> Integer
1229
+ # resp.query_runtime_statistics.output_stage.input_rows #=> Integer
1230
+ # resp.query_runtime_statistics.output_stage.execution_time #=> Integer
1231
+ # resp.query_runtime_statistics.output_stage.query_stage_plan.name #=> String
1232
+ # resp.query_runtime_statistics.output_stage.query_stage_plan.identifier #=> String
1233
+ # resp.query_runtime_statistics.output_stage.query_stage_plan.children #=> Array
1234
+ # resp.query_runtime_statistics.output_stage.query_stage_plan.children[0] #=> Types::QueryStagePlanNode
1235
+ # resp.query_runtime_statistics.output_stage.query_stage_plan.remote_sources #=> Array
1236
+ # resp.query_runtime_statistics.output_stage.query_stage_plan.remote_sources[0] #=> String
1237
+ # resp.query_runtime_statistics.output_stage.sub_stages #=> Array
1238
+ # resp.query_runtime_statistics.output_stage.sub_stages[0] #=> Types::QueryStage
1239
+ #
1240
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/GetQueryRuntimeStatistics AWS API Documentation
1241
+ #
1242
+ # @overload get_query_runtime_statistics(params = {})
1243
+ # @param [Hash] params ({})
1244
+ def get_query_runtime_statistics(params = {}, options = {})
1245
+ req = build_request(:get_query_runtime_statistics, params)
1246
+ req.send_request(options)
1247
+ end
1248
+
1178
1249
  # Returns table metadata for the specified catalog, database, and table.
1179
1250
  #
1180
1251
  # @option params [required, String] :catalog_name
@@ -1372,6 +1443,8 @@ module Aws::Athena
1372
1443
  # * {Types::ListEngineVersionsOutput#engine_versions #engine_versions} => Array<Types::EngineVersion>
1373
1444
  # * {Types::ListEngineVersionsOutput#next_token #next_token} => String
1374
1445
  #
1446
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1447
+ #
1375
1448
  # @example Request syntax with placeholder values
1376
1449
  #
1377
1450
  # resp = client.list_engine_versions({
@@ -2120,7 +2193,7 @@ module Aws::Athena
2120
2193
  params: params,
2121
2194
  config: config)
2122
2195
  context[:gem_name] = 'aws-sdk-athena'
2123
- context[:gem_version] = '1.55.0'
2196
+ context[:gem_version] = '1.57.0'
2124
2197
  Seahorse::Client::Request.new(handlers, context)
2125
2198
  end
2126
2199
 
@@ -82,6 +82,8 @@ module Aws::Athena
82
82
  GetQueryExecutionOutput = Shapes::StructureShape.new(name: 'GetQueryExecutionOutput')
83
83
  GetQueryResultsInput = Shapes::StructureShape.new(name: 'GetQueryResultsInput')
84
84
  GetQueryResultsOutput = Shapes::StructureShape.new(name: 'GetQueryResultsOutput')
85
+ GetQueryRuntimeStatisticsInput = Shapes::StructureShape.new(name: 'GetQueryRuntimeStatisticsInput')
86
+ GetQueryRuntimeStatisticsOutput = Shapes::StructureShape.new(name: 'GetQueryRuntimeStatisticsOutput')
85
87
  GetTableMetadataInput = Shapes::StructureShape.new(name: 'GetTableMetadataInput')
86
88
  GetTableMetadataOutput = Shapes::StructureShape.new(name: 'GetTableMetadataOutput')
87
89
  GetWorkGroupInput = Shapes::StructureShape.new(name: 'GetWorkGroupInput')
@@ -142,6 +144,13 @@ module Aws::Athena
142
144
  QueryExecutionState = Shapes::StringShape.new(name: 'QueryExecutionState')
143
145
  QueryExecutionStatistics = Shapes::StructureShape.new(name: 'QueryExecutionStatistics')
144
146
  QueryExecutionStatus = Shapes::StructureShape.new(name: 'QueryExecutionStatus')
147
+ QueryRuntimeStatistics = Shapes::StructureShape.new(name: 'QueryRuntimeStatistics')
148
+ QueryRuntimeStatisticsRows = Shapes::StructureShape.new(name: 'QueryRuntimeStatisticsRows')
149
+ QueryRuntimeStatisticsTimeline = Shapes::StructureShape.new(name: 'QueryRuntimeStatisticsTimeline')
150
+ QueryStage = Shapes::StructureShape.new(name: 'QueryStage')
151
+ QueryStagePlanNode = Shapes::StructureShape.new(name: 'QueryStagePlanNode')
152
+ QueryStagePlanNodes = Shapes::ListShape.new(name: 'QueryStagePlanNodes')
153
+ QueryStages = Shapes::ListShape.new(name: 'QueryStages')
145
154
  QueryString = Shapes::StringShape.new(name: 'QueryString')
146
155
  ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException')
147
156
  ResultConfiguration = Shapes::StructureShape.new(name: 'ResultConfiguration')
@@ -159,6 +168,7 @@ module Aws::Athena
159
168
  StopQueryExecutionInput = Shapes::StructureShape.new(name: 'StopQueryExecutionInput')
160
169
  StopQueryExecutionOutput = Shapes::StructureShape.new(name: 'StopQueryExecutionOutput')
161
170
  String = Shapes::StringShape.new(name: 'String')
171
+ StringList = Shapes::ListShape.new(name: 'StringList')
162
172
  TableMetadata = Shapes::StructureShape.new(name: 'TableMetadata')
163
173
  TableMetadataList = Shapes::ListShape.new(name: 'TableMetadataList')
164
174
  TableTypeString = Shapes::StringShape.new(name: 'TableTypeString')
@@ -387,6 +397,12 @@ module Aws::Athena
387
397
  GetQueryResultsOutput.add_member(:next_token, Shapes::ShapeRef.new(shape: Token, location_name: "NextToken"))
388
398
  GetQueryResultsOutput.struct_class = Types::GetQueryResultsOutput
389
399
 
400
+ GetQueryRuntimeStatisticsInput.add_member(:query_execution_id, Shapes::ShapeRef.new(shape: QueryExecutionId, required: true, location_name: "QueryExecutionId"))
401
+ GetQueryRuntimeStatisticsInput.struct_class = Types::GetQueryRuntimeStatisticsInput
402
+
403
+ GetQueryRuntimeStatisticsOutput.add_member(:query_runtime_statistics, Shapes::ShapeRef.new(shape: QueryRuntimeStatistics, location_name: "QueryRuntimeStatistics"))
404
+ GetQueryRuntimeStatisticsOutput.struct_class = Types::GetQueryRuntimeStatisticsOutput
405
+
390
406
  GetTableMetadataInput.add_member(:catalog_name, Shapes::ShapeRef.new(shape: CatalogNameString, required: true, location_name: "CatalogName"))
391
407
  GetTableMetadataInput.add_member(:database_name, Shapes::ShapeRef.new(shape: NameString, required: true, location_name: "DatabaseName"))
392
408
  GetTableMetadataInput.add_member(:table_name, Shapes::ShapeRef.new(shape: NameString, required: true, location_name: "TableName"))
@@ -559,6 +575,45 @@ module Aws::Athena
559
575
  QueryExecutionStatus.add_member(:athena_error, Shapes::ShapeRef.new(shape: AthenaError, location_name: "AthenaError"))
560
576
  QueryExecutionStatus.struct_class = Types::QueryExecutionStatus
561
577
 
578
+ QueryRuntimeStatistics.add_member(:timeline, Shapes::ShapeRef.new(shape: QueryRuntimeStatisticsTimeline, location_name: "Timeline"))
579
+ QueryRuntimeStatistics.add_member(:rows, Shapes::ShapeRef.new(shape: QueryRuntimeStatisticsRows, location_name: "Rows"))
580
+ QueryRuntimeStatistics.add_member(:output_stage, Shapes::ShapeRef.new(shape: QueryStage, location_name: "OutputStage"))
581
+ QueryRuntimeStatistics.struct_class = Types::QueryRuntimeStatistics
582
+
583
+ QueryRuntimeStatisticsRows.add_member(:input_rows, Shapes::ShapeRef.new(shape: Long, location_name: "InputRows"))
584
+ QueryRuntimeStatisticsRows.add_member(:input_bytes, Shapes::ShapeRef.new(shape: Long, location_name: "InputBytes"))
585
+ QueryRuntimeStatisticsRows.add_member(:output_bytes, Shapes::ShapeRef.new(shape: Long, location_name: "OutputBytes"))
586
+ QueryRuntimeStatisticsRows.add_member(:output_rows, Shapes::ShapeRef.new(shape: Long, location_name: "OutputRows"))
587
+ QueryRuntimeStatisticsRows.struct_class = Types::QueryRuntimeStatisticsRows
588
+
589
+ QueryRuntimeStatisticsTimeline.add_member(:query_queue_time_in_millis, Shapes::ShapeRef.new(shape: Long, location_name: "QueryQueueTimeInMillis"))
590
+ QueryRuntimeStatisticsTimeline.add_member(:query_planning_time_in_millis, Shapes::ShapeRef.new(shape: Long, location_name: "QueryPlanningTimeInMillis"))
591
+ QueryRuntimeStatisticsTimeline.add_member(:engine_execution_time_in_millis, Shapes::ShapeRef.new(shape: Long, location_name: "EngineExecutionTimeInMillis"))
592
+ QueryRuntimeStatisticsTimeline.add_member(:service_processing_time_in_millis, Shapes::ShapeRef.new(shape: Long, location_name: "ServiceProcessingTimeInMillis"))
593
+ QueryRuntimeStatisticsTimeline.add_member(:total_execution_time_in_millis, Shapes::ShapeRef.new(shape: Long, location_name: "TotalExecutionTimeInMillis"))
594
+ QueryRuntimeStatisticsTimeline.struct_class = Types::QueryRuntimeStatisticsTimeline
595
+
596
+ QueryStage.add_member(:stage_id, Shapes::ShapeRef.new(shape: Long, location_name: "StageId"))
597
+ QueryStage.add_member(:state, Shapes::ShapeRef.new(shape: String, location_name: "State"))
598
+ QueryStage.add_member(:output_bytes, Shapes::ShapeRef.new(shape: Long, location_name: "OutputBytes"))
599
+ QueryStage.add_member(:output_rows, Shapes::ShapeRef.new(shape: Long, location_name: "OutputRows"))
600
+ QueryStage.add_member(:input_bytes, Shapes::ShapeRef.new(shape: Long, location_name: "InputBytes"))
601
+ QueryStage.add_member(:input_rows, Shapes::ShapeRef.new(shape: Long, location_name: "InputRows"))
602
+ QueryStage.add_member(:execution_time, Shapes::ShapeRef.new(shape: Long, location_name: "ExecutionTime"))
603
+ QueryStage.add_member(:query_stage_plan, Shapes::ShapeRef.new(shape: QueryStagePlanNode, location_name: "QueryStagePlan"))
604
+ QueryStage.add_member(:sub_stages, Shapes::ShapeRef.new(shape: QueryStages, location_name: "SubStages"))
605
+ QueryStage.struct_class = Types::QueryStage
606
+
607
+ QueryStagePlanNode.add_member(:name, Shapes::ShapeRef.new(shape: String, location_name: "Name"))
608
+ QueryStagePlanNode.add_member(:identifier, Shapes::ShapeRef.new(shape: String, location_name: "Identifier"))
609
+ QueryStagePlanNode.add_member(:children, Shapes::ShapeRef.new(shape: QueryStagePlanNodes, location_name: "Children"))
610
+ QueryStagePlanNode.add_member(:remote_sources, Shapes::ShapeRef.new(shape: StringList, location_name: "RemoteSources"))
611
+ QueryStagePlanNode.struct_class = Types::QueryStagePlanNode
612
+
613
+ QueryStagePlanNodes.member = Shapes::ShapeRef.new(shape: QueryStagePlanNode)
614
+
615
+ QueryStages.member = Shapes::ShapeRef.new(shape: QueryStage)
616
+
562
617
  ResourceNotFoundException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
563
618
  ResourceNotFoundException.add_member(:resource_name, Shapes::ShapeRef.new(shape: AmazonResourceName, location_name: "ResourceName"))
564
619
  ResourceNotFoundException.struct_class = Types::ResourceNotFoundException
@@ -607,6 +662,8 @@ module Aws::Athena
607
662
 
608
663
  StopQueryExecutionOutput.struct_class = Types::StopQueryExecutionOutput
609
664
 
665
+ StringList.member = Shapes::ShapeRef.new(shape: String)
666
+
610
667
  TableMetadata.add_member(:name, Shapes::ShapeRef.new(shape: NameString, required: true, location_name: "Name"))
611
668
  TableMetadata.add_member(:create_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "CreateTime"))
612
669
  TableMetadata.add_member(:last_access_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "LastAccessTime"))
@@ -927,6 +984,16 @@ module Aws::Athena
927
984
  )
928
985
  end)
929
986
 
987
+ api.add_operation(:get_query_runtime_statistics, Seahorse::Model::Operation.new.tap do |o|
988
+ o.name = "GetQueryRuntimeStatistics"
989
+ o.http_method = "POST"
990
+ o.http_request_uri = "/"
991
+ o.input = Shapes::ShapeRef.new(shape: GetQueryRuntimeStatisticsInput)
992
+ o.output = Shapes::ShapeRef.new(shape: GetQueryRuntimeStatisticsOutput)
993
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
994
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
995
+ end)
996
+
930
997
  api.add_operation(:get_table_metadata, Seahorse::Model::Operation.new.tap do |o|
931
998
  o.name = "GetTableMetadata"
932
999
  o.http_method = "POST"
@@ -989,6 +1056,12 @@ module Aws::Athena
989
1056
  o.output = Shapes::ShapeRef.new(shape: ListEngineVersionsOutput)
990
1057
  o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
991
1058
  o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
1059
+ o[:pager] = Aws::Pager.new(
1060
+ limit_key: "max_results",
1061
+ tokens: {
1062
+ "next_token" => "next_token"
1063
+ }
1064
+ )
992
1065
  end)
993
1066
 
994
1067
  api.add_operation(:list_named_queries, Seahorse::Model::Operation.new.tap do |o|
@@ -0,0 +1,66 @@
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
+ module Aws::Athena
11
+ # Endpoint parameters used to influence endpoints per request.
12
+ #
13
+ # @!attribute region
14
+ # The AWS region used to dispatch the request.
15
+ #
16
+ # @return [String]
17
+ #
18
+ # @!attribute use_dual_stack
19
+ # When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.
20
+ #
21
+ # @return [Boolean]
22
+ #
23
+ # @!attribute use_fips
24
+ # When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.
25
+ #
26
+ # @return [Boolean]
27
+ #
28
+ # @!attribute endpoint
29
+ # Override the endpoint used to send this request
30
+ #
31
+ # @return [String]
32
+ #
33
+ EndpointParameters = Struct.new(
34
+ :region,
35
+ :use_dual_stack,
36
+ :use_fips,
37
+ :endpoint,
38
+ ) do
39
+ include Aws::Structure
40
+
41
+ # @api private
42
+ class << self
43
+ PARAM_MAP = {
44
+ 'Region' => :region,
45
+ 'UseDualStack' => :use_dual_stack,
46
+ 'UseFIPS' => :use_fips,
47
+ 'Endpoint' => :endpoint,
48
+ }.freeze
49
+ end
50
+
51
+ def initialize(options = {})
52
+ self[:region] = options[:region]
53
+ self[:use_dual_stack] = options[:use_dual_stack]
54
+ self[:use_dual_stack] = false if self[:use_dual_stack].nil?
55
+ if self[:use_dual_stack].nil?
56
+ raise ArgumentError, "Missing required EndpointParameter: :use_dual_stack"
57
+ end
58
+ self[:use_fips] = options[:use_fips]
59
+ self[:use_fips] = false if self[:use_fips].nil?
60
+ if self[:use_fips].nil?
61
+ raise ArgumentError, "Missing required EndpointParameter: :use_fips"
62
+ end
63
+ self[:endpoint] = options[:endpoint]
64
+ end
65
+ end
66
+ end
@@ -0,0 +1,111 @@
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
+ module Aws::Athena
11
+ class EndpointProvider
12
+ def initialize(rule_set = nil)
13
+ @@rule_set ||= begin
14
+ endpoint_rules = Aws::Json.load(Base64.decode64(RULES))
15
+ Aws::Endpoints::RuleSet.new(
16
+ version: endpoint_rules['version'],
17
+ service_id: endpoint_rules['serviceId'],
18
+ parameters: endpoint_rules['parameters'],
19
+ rules: endpoint_rules['rules']
20
+ )
21
+ end
22
+ @provider = Aws::Endpoints::RulesProvider.new(rule_set || @@rule_set)
23
+ end
24
+
25
+ def resolve_endpoint(parameters)
26
+ @provider.resolve_endpoint(parameters)
27
+ end
28
+
29
+ # @api private
30
+ RULES = <<-JSON
31
+ eyJ2ZXJzaW9uIjoiMS4wIiwicGFyYW1ldGVycyI6eyJSZWdpb24iOnsiYnVp
32
+ bHRJbiI6IkFXUzo6UmVnaW9uIiwicmVxdWlyZWQiOmZhbHNlLCJkb2N1bWVu
33
+ dGF0aW9uIjoiVGhlIEFXUyByZWdpb24gdXNlZCB0byBkaXNwYXRjaCB0aGUg
34
+ cmVxdWVzdC4iLCJ0eXBlIjoiU3RyaW5nIn0sIlVzZUR1YWxTdGFjayI6eyJi
35
+ dWlsdEluIjoiQVdTOjpVc2VEdWFsU3RhY2siLCJyZXF1aXJlZCI6dHJ1ZSwi
36
+ ZGVmYXVsdCI6ZmFsc2UsImRvY3VtZW50YXRpb24iOiJXaGVuIHRydWUsIHVz
37
+ ZSB0aGUgZHVhbC1zdGFjayBlbmRwb2ludC4gSWYgdGhlIGNvbmZpZ3VyZWQg
38
+ ZW5kcG9pbnQgZG9lcyBub3Qgc3VwcG9ydCBkdWFsLXN0YWNrLCBkaXNwYXRj
39
+ aGluZyB0aGUgcmVxdWVzdCBNQVkgcmV0dXJuIGFuIGVycm9yLiIsInR5cGUi
40
+ OiJCb29sZWFuIn0sIlVzZUZJUFMiOnsiYnVpbHRJbiI6IkFXUzo6VXNlRklQ
41
+ UyIsInJlcXVpcmVkIjp0cnVlLCJkZWZhdWx0IjpmYWxzZSwiZG9jdW1lbnRh
42
+ dGlvbiI6IldoZW4gdHJ1ZSwgc2VuZCB0aGlzIHJlcXVlc3QgdG8gdGhlIEZJ
43
+ UFMtY29tcGxpYW50IHJlZ2lvbmFsIGVuZHBvaW50LiBJZiB0aGUgY29uZmln
44
+ dXJlZCBlbmRwb2ludCBkb2VzIG5vdCBoYXZlIGEgRklQUyBjb21wbGlhbnQg
45
+ ZW5kcG9pbnQsIGRpc3BhdGNoaW5nIHRoZSByZXF1ZXN0IHdpbGwgcmV0dXJu
46
+ IGFuIGVycm9yLiIsInR5cGUiOiJCb29sZWFuIn0sIkVuZHBvaW50Ijp7ImJ1
47
+ aWx0SW4iOiJTREs6OkVuZHBvaW50IiwicmVxdWlyZWQiOmZhbHNlLCJkb2N1
48
+ bWVudGF0aW9uIjoiT3ZlcnJpZGUgdGhlIGVuZHBvaW50IHVzZWQgdG8gc2Vu
49
+ ZCB0aGlzIHJlcXVlc3QiLCJ0eXBlIjoiU3RyaW5nIn19LCJydWxlcyI6W3si
50
+ Y29uZGl0aW9ucyI6W3siZm4iOiJhd3MucGFydGl0aW9uIiwiYXJndiI6W3si
51
+ cmVmIjoiUmVnaW9uIn1dLCJhc3NpZ24iOiJQYXJ0aXRpb25SZXN1bHQifV0s
52
+ InR5cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNvbmRpdGlvbnMiOlt7ImZuIjoi
53
+ aXNTZXQiLCJhcmd2IjpbeyJyZWYiOiJFbmRwb2ludCJ9XX0seyJmbiI6InBh
54
+ cnNlVVJMIiwiYXJndiI6W3sicmVmIjoiRW5kcG9pbnQifV0sImFzc2lnbiI6
55
+ InVybCJ9XSwidHlwZSI6InRyZWUiLCJydWxlcyI6W3siY29uZGl0aW9ucyI6
56
+ W3siZm4iOiJib29sZWFuRXF1YWxzIiwiYXJndiI6W3sicmVmIjoiVXNlRklQ
57
+ UyJ9LHRydWVdfV0sImVycm9yIjoiSW52YWxpZCBDb25maWd1cmF0aW9uOiBG
58
+ SVBTIGFuZCBjdXN0b20gZW5kcG9pbnQgYXJlIG5vdCBzdXBwb3J0ZWQiLCJ0
59
+ eXBlIjoiZXJyb3IifSx7ImNvbmRpdGlvbnMiOltdLCJ0eXBlIjoidHJlZSIs
60
+ InJ1bGVzIjpbeyJjb25kaXRpb25zIjpbeyJmbiI6ImJvb2xlYW5FcXVhbHMi
61
+ LCJhcmd2IjpbeyJyZWYiOiJVc2VEdWFsU3RhY2sifSx0cnVlXX1dLCJlcnJv
62
+ ciI6IkludmFsaWQgQ29uZmlndXJhdGlvbjogRHVhbHN0YWNrIGFuZCBjdXN0
63
+ b20gZW5kcG9pbnQgYXJlIG5vdCBzdXBwb3J0ZWQiLCJ0eXBlIjoiZXJyb3Ii
64
+ fSx7ImNvbmRpdGlvbnMiOltdLCJlbmRwb2ludCI6eyJ1cmwiOnsicmVmIjoi
65
+ RW5kcG9pbnQifSwicHJvcGVydGllcyI6e30sImhlYWRlcnMiOnt9fSwidHlw
66
+ ZSI6ImVuZHBvaW50In1dfV19LHsiY29uZGl0aW9ucyI6W3siZm4iOiJib29s
67
+ ZWFuRXF1YWxzIiwiYXJndiI6W3sicmVmIjoiVXNlRklQUyJ9LHRydWVdfSx7
68
+ ImZuIjoiYm9vbGVhbkVxdWFscyIsImFyZ3YiOlt7InJlZiI6IlVzZUR1YWxT
69
+ dGFjayJ9LHRydWVdfV0sInR5cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNvbmRp
70
+ dGlvbnMiOlt7ImZuIjoiYm9vbGVhbkVxdWFscyIsImFyZ3YiOlt0cnVlLHsi
71
+ Zm4iOiJnZXRBdHRyIiwiYXJndiI6W3sicmVmIjoiUGFydGl0aW9uUmVzdWx0
72
+ In0sInN1cHBvcnRzRklQUyJdfV19LHsiZm4iOiJib29sZWFuRXF1YWxzIiwi
73
+ YXJndiI6W3RydWUseyJmbiI6ImdldEF0dHIiLCJhcmd2IjpbeyJyZWYiOiJQ
74
+ YXJ0aXRpb25SZXN1bHQifSwic3VwcG9ydHNEdWFsU3RhY2siXX1dfV0sInR5
75
+ cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNvbmRpdGlvbnMiOltdLCJlbmRwb2lu
76
+ dCI6eyJ1cmwiOiJodHRwczovL2F0aGVuYS1maXBzLntSZWdpb259LntQYXJ0
77
+ aXRpb25SZXN1bHQjZHVhbFN0YWNrRG5zU3VmZml4fSIsInByb3BlcnRpZXMi
78
+ Ont9LCJoZWFkZXJzIjp7fX0sInR5cGUiOiJlbmRwb2ludCJ9XX0seyJjb25k
79
+ aXRpb25zIjpbXSwiZXJyb3IiOiJGSVBTIGFuZCBEdWFsU3RhY2sgYXJlIGVu
80
+ YWJsZWQsIGJ1dCB0aGlzIHBhcnRpdGlvbiBkb2VzIG5vdCBzdXBwb3J0IG9u
81
+ ZSBvciBib3RoIiwidHlwZSI6ImVycm9yIn1dfSx7ImNvbmRpdGlvbnMiOlt7
82
+ ImZuIjoiYm9vbGVhbkVxdWFscyIsImFyZ3YiOlt7InJlZiI6IlVzZUZJUFMi
83
+ fSx0cnVlXX1dLCJ0eXBlIjoidHJlZSIsInJ1bGVzIjpbeyJjb25kaXRpb25z
84
+ IjpbeyJmbiI6ImJvb2xlYW5FcXVhbHMiLCJhcmd2IjpbdHJ1ZSx7ImZuIjoi
85
+ Z2V0QXR0ciIsImFyZ3YiOlt7InJlZiI6IlBhcnRpdGlvblJlc3VsdCJ9LCJz
86
+ dXBwb3J0c0ZJUFMiXX1dfV0sInR5cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNv
87
+ bmRpdGlvbnMiOltdLCJ0eXBlIjoidHJlZSIsInJ1bGVzIjpbeyJjb25kaXRp
88
+ b25zIjpbXSwiZW5kcG9pbnQiOnsidXJsIjoiaHR0cHM6Ly9hdGhlbmEtZmlw
89
+ cy57UmVnaW9ufS57UGFydGl0aW9uUmVzdWx0I2Ruc1N1ZmZpeH0iLCJwcm9w
90
+ ZXJ0aWVzIjp7fSwiaGVhZGVycyI6e319LCJ0eXBlIjoiZW5kcG9pbnQifV19
91
+ XX0seyJjb25kaXRpb25zIjpbXSwiZXJyb3IiOiJGSVBTIGlzIGVuYWJsZWQg
92
+ YnV0IHRoaXMgcGFydGl0aW9uIGRvZXMgbm90IHN1cHBvcnQgRklQUyIsInR5
93
+ cGUiOiJlcnJvciJ9XX0seyJjb25kaXRpb25zIjpbeyJmbiI6ImJvb2xlYW5F
94
+ cXVhbHMiLCJhcmd2IjpbeyJyZWYiOiJVc2VEdWFsU3RhY2sifSx0cnVlXX1d
95
+ LCJ0eXBlIjoidHJlZSIsInJ1bGVzIjpbeyJjb25kaXRpb25zIjpbeyJmbiI6
96
+ ImJvb2xlYW5FcXVhbHMiLCJhcmd2IjpbdHJ1ZSx7ImZuIjoiZ2V0QXR0ciIs
97
+ ImFyZ3YiOlt7InJlZiI6IlBhcnRpdGlvblJlc3VsdCJ9LCJzdXBwb3J0c0R1
98
+ YWxTdGFjayJdfV19XSwidHlwZSI6InRyZWUiLCJydWxlcyI6W3siY29uZGl0
99
+ aW9ucyI6W10sImVuZHBvaW50Ijp7InVybCI6Imh0dHBzOi8vYXRoZW5hLntS
100
+ ZWdpb259LntQYXJ0aXRpb25SZXN1bHQjZHVhbFN0YWNrRG5zU3VmZml4fSIs
101
+ InByb3BlcnRpZXMiOnt9LCJoZWFkZXJzIjp7fX0sInR5cGUiOiJlbmRwb2lu
102
+ dCJ9XX0seyJjb25kaXRpb25zIjpbXSwiZXJyb3IiOiJEdWFsU3RhY2sgaXMg
103
+ ZW5hYmxlZCBidXQgdGhpcyBwYXJ0aXRpb24gZG9lcyBub3Qgc3VwcG9ydCBE
104
+ dWFsU3RhY2siLCJ0eXBlIjoiZXJyb3IifV19LHsiY29uZGl0aW9ucyI6W10s
105
+ ImVuZHBvaW50Ijp7InVybCI6Imh0dHBzOi8vYXRoZW5hLntSZWdpb259LntQ
106
+ YXJ0aXRpb25SZXN1bHQjZG5zU3VmZml4fSIsInByb3BlcnRpZXMiOnt9LCJo
107
+ ZWFkZXJzIjp7fX0sInR5cGUiOiJlbmRwb2ludCJ9XX1dfQ==
108
+
109
+ JSON
110
+ end
111
+ end