aws-sdk-omics 1.0.0 → 1.2.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: b0853e65dc00fb1175f9a72bbfc74dde3c1f520d7782addcfb6bbff235b21947
4
- data.tar.gz: 1650f9b5b3b5a87f54038001958ff1f464780ad97c760799fe13f4cc553904e6
3
+ metadata.gz: 0b0791e4b602ac2269a7790f89b7a057987123d5a11cd08f2749166e933481d1
4
+ data.tar.gz: 39083baf75b0bd58f22573df3c181989060335576a09e085efd02fbf1997c972
5
5
  SHA512:
6
- metadata.gz: 1a1d1b2e033e0de99aa7bd642d19b37bb4a40c782e4797933c5f52af3909d5ecf22d118e9a4937cba4af0b842ea69d68f65a0dfe596190aa01dfd52cafe981f6
7
- data.tar.gz: 22ab8f325433ef3645d2f50db23f453673745c0659dc952188d08dca38906286b63e643999a13a77c8a50e2b31927e9d90b86d40220584d2e9ea23fe996a6c4a
6
+ metadata.gz: 2a8a6efece95aa42c7bb7c7370a13c82925c808d60d7b8077170901965dcd6baac0e68dabf39736b968cd79fa74f2ca3d3b461b895b4b77cffe54a09bd374a46
7
+ data.tar.gz: 904f47cb3fb751a21a52c4dd521ee63c60c5f2567aff9b2fbbbac8b115a285c5f730ac5fdd65f6293b159b9f167c378e4704c414854ba913a8bb97eed4fe655e
data/CHANGELOG.md CHANGED
@@ -1,6 +1,18 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.2.0 (2023-02-28)
5
+ ------------------
6
+
7
+ * Feature - Minor model changes to accomodate batch imports feature
8
+
9
+ 1.1.0 (2023-01-18)
10
+ ------------------
11
+
12
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
13
+
14
+ * Issue - Replace runtime endpoint resolution approach with generated ruby code.
15
+
4
16
  1.0.0 (2022-11-29)
5
17
  ------------------
6
18
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.0.0
1
+ 1.2.0
@@ -523,7 +523,7 @@ module Aws::Omics
523
523
  # },
524
524
  # schema: [
525
525
  # {
526
- # "String" => "LONG", # accepts LONG, INT, STRING, FLOAT, DOUBLE, BOOLEAN
526
+ # "SchemaItemKeyString" => "LONG", # accepts LONG, INT, STRING, FLOAT, DOUBLE, BOOLEAN
527
527
  # },
528
528
  # ],
529
529
  # },
@@ -546,7 +546,7 @@ module Aws::Omics
546
546
  # resp.store_options.tsv_store_options.format_to_header["FormatToHeaderKey"] #=> String
547
547
  # resp.store_options.tsv_store_options.schema #=> Array
548
548
  # resp.store_options.tsv_store_options.schema[0] #=> Hash
549
- # resp.store_options.tsv_store_options.schema[0]["String"] #=> String, one of "LONG", "INT", "STRING", "FLOAT", "DOUBLE", "BOOLEAN"
549
+ # resp.store_options.tsv_store_options.schema[0]["SchemaItemKeyString"] #=> String, one of "LONG", "INT", "STRING", "FLOAT", "DOUBLE", "BOOLEAN"
550
550
  #
551
551
  # @see http://docs.aws.amazon.com/goto/WebAPI/omics-2022-11-28/CreateAnnotationStore AWS API Documentation
552
552
  #
@@ -624,7 +624,7 @@ module Aws::Omics
624
624
  # The maximum number of CPUs to use in the group.
625
625
  #
626
626
  # @option params [Integer] :max_duration
627
- # A max duration for the group.
627
+ # A maximum run time for the group in minutes.
628
628
  #
629
629
  # @option params [Integer] :max_runs
630
630
  # The maximum number of concurrent runs for the group.
@@ -633,7 +633,8 @@ module Aws::Omics
633
633
  # A name for the group.
634
634
  #
635
635
  # @option params [required, String] :request_id
636
- # A request ID for the group.
636
+ # To ensure that requests don't run multiple times, specify a unique ID
637
+ # for each request.
637
638
  #
638
639
  # **A suitable default value is auto-generated.** You should normally
639
640
  # not need to pass this option.**
@@ -820,13 +821,14 @@ module Aws::Omics
820
821
  # A parameter template for the workflow.
821
822
  #
822
823
  # @option params [required, String] :request_id
823
- # A request ID for the workflow.
824
+ # To ensure that requests don't run multiple times, specify a unique ID
825
+ # for each request.
824
826
  #
825
827
  # **A suitable default value is auto-generated.** You should normally
826
828
  # not need to pass this option.**
827
829
  #
828
830
  # @option params [Integer] :storage_capacity
829
- # A storage capacity for the workflow.
831
+ # A storage capacity for the workflow in gigabytes.
830
832
  #
831
833
  # @option params [Hash<String,String>] :tags
832
834
  # Tags for the workflow.
@@ -864,7 +866,7 @@ module Aws::Omics
864
866
  #
865
867
  # resp.arn #=> String
866
868
  # resp.id #=> String
867
- # resp.status #=> String, one of "CREATING", "ACTIVE", "UPDATING", "DELETED", "FAILED"
869
+ # resp.status #=> String, one of "CREATING", "ACTIVE", "UPDATING", "DELETED", "FAILED", "INACTIVE"
868
870
  # resp.tags #=> Hash
869
871
  # resp.tags["TagKey"] #=> String
870
872
  #
@@ -1120,11 +1122,11 @@ module Aws::Omics
1120
1122
  # resp.format_options.vcf_options.ignore_qual_field #=> Boolean
1121
1123
  # resp.id #=> String
1122
1124
  # resp.items #=> Array
1123
- # resp.items[0].job_status #=> String, one of "SUBMITTED", "IN_PROGRESS", "CANCELLED", "COMPLETED", "FAILED"
1125
+ # resp.items[0].job_status #=> String, one of "SUBMITTED", "IN_PROGRESS", "CANCELLED", "COMPLETED", "FAILED", "COMPLETED_WITH_FAILURES"
1124
1126
  # resp.items[0].source #=> String
1125
1127
  # resp.role_arn #=> String
1126
1128
  # resp.run_left_normalization #=> Boolean
1127
- # resp.status #=> String, one of "SUBMITTED", "IN_PROGRESS", "CANCELLED", "COMPLETED", "FAILED"
1129
+ # resp.status #=> String, one of "SUBMITTED", "IN_PROGRESS", "CANCELLED", "COMPLETED", "FAILED", "COMPLETED_WITH_FAILURES"
1128
1130
  # resp.status_message #=> String
1129
1131
  # resp.update_time #=> Time
1130
1132
  #
@@ -1188,7 +1190,7 @@ module Aws::Omics
1188
1190
  # resp.store_options.tsv_store_options.format_to_header["FormatToHeaderKey"] #=> String
1189
1191
  # resp.store_options.tsv_store_options.schema #=> Array
1190
1192
  # resp.store_options.tsv_store_options.schema[0] #=> Hash
1191
- # resp.store_options.tsv_store_options.schema[0]["String"] #=> String, one of "LONG", "INT", "STRING", "FLOAT", "DOUBLE", "BOOLEAN"
1193
+ # resp.store_options.tsv_store_options.schema[0]["SchemaItemKeyString"] #=> String, one of "LONG", "INT", "STRING", "FLOAT", "DOUBLE", "BOOLEAN"
1192
1194
  # resp.store_size_bytes #=> Integer
1193
1195
  # resp.tags #=> Hash
1194
1196
  # resp.tags["TagKey"] #=> String
@@ -1748,7 +1750,7 @@ module Aws::Omics
1748
1750
  # resp.tags #=> Hash
1749
1751
  # resp.tags["TagKey"] #=> String
1750
1752
  # resp.workflow_id #=> String
1751
- # resp.workflow_type #=> String, one of "PRIVATE"
1753
+ # resp.workflow_type #=> String, one of "PRIVATE", "SERVICE"
1752
1754
  #
1753
1755
  #
1754
1756
  # The following waiters are defined for this operation (see {Client#wait_until} for detailed usage):
@@ -1934,11 +1936,12 @@ module Aws::Omics
1934
1936
  # resp.destination_name #=> String
1935
1937
  # resp.id #=> String
1936
1938
  # resp.items #=> Array
1937
- # resp.items[0].job_status #=> String, one of "SUBMITTED", "IN_PROGRESS", "CANCELLED", "COMPLETED", "FAILED"
1939
+ # resp.items[0].job_status #=> String, one of "SUBMITTED", "IN_PROGRESS", "CANCELLED", "COMPLETED", "FAILED", "COMPLETED_WITH_FAILURES"
1938
1940
  # resp.items[0].source #=> String
1941
+ # resp.items[0].status_message #=> String
1939
1942
  # resp.role_arn #=> String
1940
1943
  # resp.run_left_normalization #=> Boolean
1941
- # resp.status #=> String, one of "SUBMITTED", "IN_PROGRESS", "CANCELLED", "COMPLETED", "FAILED"
1944
+ # resp.status #=> String, one of "SUBMITTED", "IN_PROGRESS", "CANCELLED", "COMPLETED", "FAILED", "COMPLETED_WITH_FAILURES"
1942
1945
  # resp.status_message #=> String
1943
1946
  # resp.update_time #=> Time
1944
1947
  #
@@ -2048,7 +2051,7 @@ module Aws::Omics
2048
2051
  # resp = client.get_workflow({
2049
2052
  # export: ["DEFINITION"], # accepts DEFINITION
2050
2053
  # id: "WorkflowId", # required
2051
- # type: "PRIVATE", # accepts PRIVATE
2054
+ # type: "PRIVATE", # accepts PRIVATE, SERVICE
2052
2055
  # })
2053
2056
  #
2054
2057
  # @example Response structure
@@ -2065,12 +2068,12 @@ module Aws::Omics
2065
2068
  # resp.parameter_template #=> Hash
2066
2069
  # resp.parameter_template["WorkflowParameterName"].description #=> String
2067
2070
  # resp.parameter_template["WorkflowParameterName"].optional #=> Boolean
2068
- # resp.status #=> String, one of "CREATING", "ACTIVE", "UPDATING", "DELETED", "FAILED"
2071
+ # resp.status #=> String, one of "CREATING", "ACTIVE", "UPDATING", "DELETED", "FAILED", "INACTIVE"
2069
2072
  # resp.status_message #=> String
2070
2073
  # resp.storage_capacity #=> Integer
2071
2074
  # resp.tags #=> Hash
2072
2075
  # resp.tags["TagKey"] #=> String
2073
- # resp.type #=> String, one of "PRIVATE"
2076
+ # resp.type #=> String, one of "PRIVATE", "SERVICE"
2074
2077
  #
2075
2078
  #
2076
2079
  # The following waiters are defined for this operation (see {Client#wait_until} for detailed usage):
@@ -2112,7 +2115,7 @@ module Aws::Omics
2112
2115
  #
2113
2116
  # resp = client.list_annotation_import_jobs({
2114
2117
  # filter: {
2115
- # status: "SUBMITTED", # accepts SUBMITTED, IN_PROGRESS, CANCELLED, COMPLETED, FAILED
2118
+ # status: "SUBMITTED", # accepts SUBMITTED, IN_PROGRESS, CANCELLED, COMPLETED, FAILED, COMPLETED_WITH_FAILURES
2116
2119
  # store_name: "String",
2117
2120
  # },
2118
2121
  # ids: ["ResourceIdentifier"],
@@ -2129,7 +2132,7 @@ module Aws::Omics
2129
2132
  # resp.annotation_import_jobs[0].id #=> String
2130
2133
  # resp.annotation_import_jobs[0].role_arn #=> String
2131
2134
  # resp.annotation_import_jobs[0].run_left_normalization #=> Boolean
2132
- # resp.annotation_import_jobs[0].status #=> String, one of "SUBMITTED", "IN_PROGRESS", "CANCELLED", "COMPLETED", "FAILED"
2135
+ # resp.annotation_import_jobs[0].status #=> String, one of "SUBMITTED", "IN_PROGRESS", "CANCELLED", "COMPLETED", "FAILED", "COMPLETED_WITH_FAILURES"
2133
2136
  # resp.annotation_import_jobs[0].update_time #=> Time
2134
2137
  # resp.next_token #=> String
2135
2138
  #
@@ -2862,7 +2865,7 @@ module Aws::Omics
2862
2865
  #
2863
2866
  # resp = client.list_variant_import_jobs({
2864
2867
  # filter: {
2865
- # status: "SUBMITTED", # accepts SUBMITTED, IN_PROGRESS, CANCELLED, COMPLETED, FAILED
2868
+ # status: "SUBMITTED", # accepts SUBMITTED, IN_PROGRESS, CANCELLED, COMPLETED, FAILED, COMPLETED_WITH_FAILURES
2866
2869
  # store_name: "String",
2867
2870
  # },
2868
2871
  # ids: ["ResourceIdentifier"],
@@ -2880,7 +2883,7 @@ module Aws::Omics
2880
2883
  # resp.variant_import_jobs[0].id #=> String
2881
2884
  # resp.variant_import_jobs[0].role_arn #=> String
2882
2885
  # resp.variant_import_jobs[0].run_left_normalization #=> Boolean
2883
- # resp.variant_import_jobs[0].status #=> String, one of "SUBMITTED", "IN_PROGRESS", "CANCELLED", "COMPLETED", "FAILED"
2886
+ # resp.variant_import_jobs[0].status #=> String, one of "SUBMITTED", "IN_PROGRESS", "CANCELLED", "COMPLETED", "FAILED", "COMPLETED_WITH_FAILURES"
2884
2887
  # resp.variant_import_jobs[0].update_time #=> Time
2885
2888
  #
2886
2889
  # @see http://docs.aws.amazon.com/goto/WebAPI/omics-2022-11-28/ListVariantImportJobs AWS API Documentation
@@ -2979,7 +2982,7 @@ module Aws::Omics
2979
2982
  # max_results: 1,
2980
2983
  # name: "WorkflowName",
2981
2984
  # starting_token: "WorkflowListToken",
2982
- # type: "PRIVATE", # accepts PRIVATE
2985
+ # type: "PRIVATE", # accepts PRIVATE, SERVICE
2983
2986
  # })
2984
2987
  #
2985
2988
  # @example Response structure
@@ -2990,8 +2993,8 @@ module Aws::Omics
2990
2993
  # resp.items[0].digest #=> String
2991
2994
  # resp.items[0].id #=> String
2992
2995
  # resp.items[0].name #=> String
2993
- # resp.items[0].status #=> String, one of "CREATING", "ACTIVE", "UPDATING", "DELETED", "FAILED"
2994
- # resp.items[0].type #=> String, one of "PRIVATE"
2996
+ # resp.items[0].status #=> String, one of "CREATING", "ACTIVE", "UPDATING", "DELETED", "FAILED", "INACTIVE"
2997
+ # resp.items[0].type #=> String, one of "PRIVATE", "SERVICE"
2995
2998
  # resp.next_token #=> String
2996
2999
  #
2997
3000
  # @see http://docs.aws.amazon.com/goto/WebAPI/omics-2022-11-28/ListWorkflows AWS API Documentation
@@ -3069,7 +3072,8 @@ module Aws::Omics
3069
3072
  req.send_request(options)
3070
3073
  end
3071
3074
 
3072
- # Starts a read set activation job.
3075
+ # Activates an archived read set. To reduce storage charges, Amazon
3076
+ # Omics archives unused read sets after 30 days.
3073
3077
  #
3074
3078
  # @option params [String] :client_token
3075
3079
  # To ensure that jobs don't run multiple times, specify a unique token
@@ -3079,7 +3083,7 @@ module Aws::Omics
3079
3083
  # The read set's sequence store ID.
3080
3084
  #
3081
3085
  # @option params [required, Array<Types::StartReadSetActivationJobSourceItem>] :sources
3082
- # The job's sources.
3086
+ # The job's source files.
3083
3087
  #
3084
3088
  # @return [Types::StartReadSetActivationJobResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3085
3089
  #
@@ -3116,7 +3120,7 @@ module Aws::Omics
3116
3120
  req.send_request(options)
3117
3121
  end
3118
3122
 
3119
- # Starts a read set export job.
3123
+ # Exports a read set to Amazon S3.
3120
3124
  #
3121
3125
  # @option params [String] :client_token
3122
3126
  # To ensure that jobs don't run multiple times, specify a unique token
@@ -3132,7 +3136,7 @@ module Aws::Omics
3132
3136
  # The read set's sequence store ID.
3133
3137
  #
3134
3138
  # @option params [required, Array<Types::ExportReadSet>] :sources
3135
- # Sources for the job.
3139
+ # The job's source files.
3136
3140
  #
3137
3141
  # @return [Types::StartReadSetExportJobResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3138
3142
  #
@@ -3186,7 +3190,7 @@ module Aws::Omics
3186
3190
  # The read set's sequence store ID.
3187
3191
  #
3188
3192
  # @option params [required, Array<Types::StartReadSetImportJobSourceItem>] :sources
3189
- # Source files to import.
3193
+ # The job's source files.
3190
3194
  #
3191
3195
  # @return [Types::StartReadSetImportJobResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3192
3196
  #
@@ -3252,7 +3256,7 @@ module Aws::Omics
3252
3256
  # A service role for the job.
3253
3257
  #
3254
3258
  # @option params [required, Array<Types::StartReferenceImportJobSourceItem>] :sources
3255
- # Sources for the job.
3259
+ # The job's source files.
3256
3260
  #
3257
3261
  # @return [Types::StartReferenceImportJobResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3258
3262
  #
@@ -3320,7 +3324,8 @@ module Aws::Omics
3320
3324
  # A priority for the run.
3321
3325
  #
3322
3326
  # @option params [required, String] :request_id
3323
- # A request ID for the run.
3327
+ # To ensure that requests don't run multiple times, specify a unique ID
3328
+ # for each request.
3324
3329
  #
3325
3330
  # **A suitable default value is auto-generated.** You should normally
3326
3331
  # not need to pass this option.**
@@ -3335,7 +3340,7 @@ module Aws::Omics
3335
3340
  # The run's ID.
3336
3341
  #
3337
3342
  # @option params [Integer] :storage_capacity
3338
- # A storage capacity for the run.
3343
+ # A storage capacity for the run in gigabytes.
3339
3344
  #
3340
3345
  # @option params [Hash<String,String>] :tags
3341
3346
  # Tags for the run.
@@ -3371,7 +3376,7 @@ module Aws::Omics
3371
3376
  # "TagKey" => "TagValue",
3372
3377
  # },
3373
3378
  # workflow_id: "WorkflowId",
3374
- # workflow_type: "PRIVATE", # accepts PRIVATE
3379
+ # workflow_type: "PRIVATE", # accepts PRIVATE, SERVICE
3375
3380
  # })
3376
3381
  #
3377
3382
  # @example Response structure
@@ -3530,7 +3535,7 @@ module Aws::Omics
3530
3535
  # resp.store_options.tsv_store_options.format_to_header["FormatToHeaderKey"] #=> String
3531
3536
  # resp.store_options.tsv_store_options.schema #=> Array
3532
3537
  # resp.store_options.tsv_store_options.schema[0] #=> Hash
3533
- # resp.store_options.tsv_store_options.schema[0]["String"] #=> String, one of "LONG", "INT", "STRING", "FLOAT", "DOUBLE", "BOOLEAN"
3538
+ # resp.store_options.tsv_store_options.schema[0]["SchemaItemKeyString"] #=> String, one of "LONG", "INT", "STRING", "FLOAT", "DOUBLE", "BOOLEAN"
3534
3539
  # resp.update_time #=> Time
3535
3540
  #
3536
3541
  # @see http://docs.aws.amazon.com/goto/WebAPI/omics-2022-11-28/UpdateAnnotationStore AWS API Documentation
@@ -3551,7 +3556,7 @@ module Aws::Omics
3551
3556
  # The maximum number of CPUs to use.
3552
3557
  #
3553
3558
  # @option params [Integer] :max_duration
3554
- # The maximum amount of time to run.
3559
+ # A maximum run time for the group in minutes.
3555
3560
  #
3556
3561
  # @option params [Integer] :max_runs
3557
3562
  # The maximum number of concurrent runs for the group.
@@ -3667,7 +3672,7 @@ module Aws::Omics
3667
3672
  params: params,
3668
3673
  config: config)
3669
3674
  context[:gem_name] = 'aws-sdk-omics'
3670
- context[:gem_version] = '1.0.0'
3675
+ context[:gem_version] = '1.2.0'
3671
3676
  Seahorse::Client::Request.new(handlers, context)
3672
3677
  end
3673
3678
 
@@ -314,6 +314,7 @@ module Aws::Omics
314
314
  S3Uri = Shapes::StringShape.new(name: 'S3Uri')
315
315
  SampleId = Shapes::StringShape.new(name: 'SampleId')
316
316
  SchemaItem = Shapes::MapShape.new(name: 'SchemaItem')
317
+ SchemaItemKeyString = Shapes::StringShape.new(name: 'SchemaItemKeyString')
317
318
  SchemaValueType = Shapes::StringShape.new(name: 'SchemaValueType')
318
319
  Separator = Shapes::StringShape.new(name: 'Separator')
319
320
  SequenceInformation = Shapes::StructureShape.new(name: 'SequenceInformation')
@@ -1343,7 +1344,7 @@ module Aws::Omics
1343
1344
  RunResourceDigests.key = Shapes::ShapeRef.new(shape: RunResourceDigestKey)
1344
1345
  RunResourceDigests.value = Shapes::ShapeRef.new(shape: RunResourceDigest)
1345
1346
 
1346
- SchemaItem.key = Shapes::ShapeRef.new(shape: String)
1347
+ SchemaItem.key = Shapes::ShapeRef.new(shape: SchemaItemKeyString)
1347
1348
  SchemaItem.value = Shapes::ShapeRef.new(shape: SchemaValueType)
1348
1349
 
1349
1350
  SequenceInformation.add_member(:alignment, Shapes::ShapeRef.new(shape: String, location_name: "alignment"))
@@ -1593,6 +1594,7 @@ module Aws::Omics
1593
1594
 
1594
1595
  VariantImportItemDetail.add_member(:job_status, Shapes::ShapeRef.new(shape: JobStatus, required: true, location_name: "jobStatus"))
1595
1596
  VariantImportItemDetail.add_member(:source, Shapes::ShapeRef.new(shape: S3Uri, required: true, location_name: "source"))
1597
+ VariantImportItemDetail.add_member(:status_message, Shapes::ShapeRef.new(shape: JobStatusMsg, location_name: "statusMessage"))
1596
1598
  VariantImportItemDetail.struct_class = Types::VariantImportItemDetail
1597
1599
 
1598
1600
  VariantImportItemDetails.member = Shapes::ShapeRef.new(shape: VariantImportItemDetail)
@@ -50,9 +50,6 @@ module Aws::Omics
50
50
 
51
51
  def initialize(options = {})
52
52
  self[:region] = options[:region]
53
- if self[:region].nil?
54
- raise ArgumentError, "Missing required EndpointParameter: :region"
55
- end
56
53
  self[:use_dual_stack] = options[:use_dual_stack]
57
54
  self[:use_dual_stack] = false if self[:use_dual_stack].nil?
58
55
  if self[:use_dual_stack].nil?
@@ -9,102 +9,46 @@
9
9
 
10
10
  module Aws::Omics
11
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
- )
12
+ def resolve_endpoint(parameters)
13
+ region = parameters.region
14
+ use_dual_stack = parameters.use_dual_stack
15
+ use_fips = parameters.use_fips
16
+ endpoint = parameters.endpoint
17
+ if Aws::Endpoints::Matchers.set?(endpoint)
18
+ if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
19
+ raise ArgumentError, "Invalid Configuration: FIPS and custom endpoint are not supported"
20
+ end
21
+ if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
22
+ raise ArgumentError, "Invalid Configuration: Dualstack and custom endpoint are not supported"
23
+ end
24
+ return Aws::Endpoints::Endpoint.new(url: endpoint, headers: {}, properties: {})
21
25
  end
22
- @provider = Aws::Endpoints::RulesProvider.new(rule_set || @@rule_set)
23
- end
26
+ if Aws::Endpoints::Matchers.set?(region)
27
+ if (partition_result = Aws::Endpoints::Matchers.aws_partition(region))
28
+ if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true) && Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
29
+ if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS")) && Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
30
+ return Aws::Endpoints::Endpoint.new(url: "https://omics-fips.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
31
+ end
32
+ raise ArgumentError, "FIPS and DualStack are enabled, but this partition does not support one or both"
33
+ end
34
+ if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
35
+ if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"))
36
+ return Aws::Endpoints::Endpoint.new(url: "https://omics-fips.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
37
+ end
38
+ raise ArgumentError, "FIPS is enabled but this partition does not support FIPS"
39
+ end
40
+ if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
41
+ if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
42
+ return Aws::Endpoints::Endpoint.new(url: "https://omics.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
43
+ end
44
+ raise ArgumentError, "DualStack is enabled but this partition does not support DualStack"
45
+ end
46
+ return Aws::Endpoints::Endpoint.new(url: "https://omics.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
47
+ end
48
+ end
49
+ raise ArgumentError, "Invalid Configuration: Missing Region"
50
+ raise ArgumentError, 'No endpoint could be resolved'
24
51
 
25
- def resolve_endpoint(parameters)
26
- @provider.resolve_endpoint(parameters)
27
52
  end
28
-
29
- # @api private
30
- RULES = <<-JSON
31
- eyJ2ZXJzaW9uIjoiMS4wIiwicGFyYW1ldGVycyI6eyJSZWdpb24iOnsiYnVp
32
- bHRJbiI6IkFXUzo6UmVnaW9uIiwicmVxdWlyZWQiOnRydWUsImRvY3VtZW50
33
- YXRpb24iOiJUaGUgQVdTIHJlZ2lvbiB1c2VkIHRvIGRpc3BhdGNoIHRoZSBy
34
- ZXF1ZXN0LiIsInR5cGUiOiJTdHJpbmcifSwiVXNlRHVhbFN0YWNrIjp7ImJ1
35
- aWx0SW4iOiJBV1M6OlVzZUR1YWxTdGFjayIsInJlcXVpcmVkIjp0cnVlLCJk
36
- ZWZhdWx0IjpmYWxzZSwiZG9jdW1lbnRhdGlvbiI6IldoZW4gdHJ1ZSwgdXNl
37
- IHRoZSBkdWFsLXN0YWNrIGVuZHBvaW50LiBJZiB0aGUgY29uZmlndXJlZCBl
38
- bmRwb2ludCBkb2VzIG5vdCBzdXBwb3J0IGR1YWwtc3RhY2ssIGRpc3BhdGNo
39
- aW5nIHRoZSByZXF1ZXN0IE1BWSByZXR1cm4gYW4gZXJyb3IuIiwidHlwZSI6
40
- IkJvb2xlYW4ifSwiVXNlRklQUyI6eyJidWlsdEluIjoiQVdTOjpVc2VGSVBT
41
- IiwicmVxdWlyZWQiOnRydWUsImRlZmF1bHQiOmZhbHNlLCJkb2N1bWVudGF0
42
- aW9uIjoiV2hlbiB0cnVlLCBzZW5kIHRoaXMgcmVxdWVzdCB0byB0aGUgRklQ
43
- Uy1jb21wbGlhbnQgcmVnaW9uYWwgZW5kcG9pbnQuIElmIHRoZSBjb25maWd1
44
- cmVkIGVuZHBvaW50IGRvZXMgbm90IGhhdmUgYSBGSVBTIGNvbXBsaWFudCBl
45
- bmRwb2ludCwgZGlzcGF0Y2hpbmcgdGhlIHJlcXVlc3Qgd2lsbCByZXR1cm4g
46
- YW4gZXJyb3IuIiwidHlwZSI6IkJvb2xlYW4ifSwiRW5kcG9pbnQiOnsiYnVp
47
- bHRJbiI6IlNESzo6RW5kcG9pbnQiLCJyZXF1aXJlZCI6ZmFsc2UsImRvY3Vt
48
- ZW50YXRpb24iOiJPdmVycmlkZSB0aGUgZW5kcG9pbnQgdXNlZCB0byBzZW5k
49
- IHRoaXMgcmVxdWVzdCIsInR5cGUiOiJTdHJpbmcifX0sInJ1bGVzIjpbeyJj
50
- b25kaXRpb25zIjpbeyJmbiI6ImF3cy5wYXJ0aXRpb24iLCJhcmd2IjpbeyJy
51
- ZWYiOiJSZWdpb24ifV0sImFzc2lnbiI6IlBhcnRpdGlvblJlc3VsdCJ9XSwi
52
- dHlwZSI6InRyZWUiLCJydWxlcyI6W3siY29uZGl0aW9ucyI6W3siZm4iOiJp
53
- c1NldCIsImFyZ3YiOlt7InJlZiI6IkVuZHBvaW50In1dfSx7ImZuIjoicGFy
54
- c2VVUkwiLCJhcmd2IjpbeyJyZWYiOiJFbmRwb2ludCJ9XSwiYXNzaWduIjoi
55
- dXJsIn1dLCJ0eXBlIjoidHJlZSIsInJ1bGVzIjpbeyJjb25kaXRpb25zIjpb
56
- eyJmbiI6ImJvb2xlYW5FcXVhbHMiLCJhcmd2IjpbeyJyZWYiOiJVc2VGSVBT
57
- In0sdHJ1ZV19XSwiZXJyb3IiOiJJbnZhbGlkIENvbmZpZ3VyYXRpb246IEZJ
58
- UFMgYW5kIGN1c3RvbSBlbmRwb2ludCBhcmUgbm90IHN1cHBvcnRlZCIsInR5
59
- cGUiOiJlcnJvciJ9LHsiY29uZGl0aW9ucyI6W10sInR5cGUiOiJ0cmVlIiwi
60
- cnVsZXMiOlt7ImNvbmRpdGlvbnMiOlt7ImZuIjoiYm9vbGVhbkVxdWFscyIs
61
- ImFyZ3YiOlt7InJlZiI6IlVzZUR1YWxTdGFjayJ9LHRydWVdfV0sImVycm9y
62
- IjoiSW52YWxpZCBDb25maWd1cmF0aW9uOiBEdWFsc3RhY2sgYW5kIGN1c3Rv
63
- bSBlbmRwb2ludCBhcmUgbm90IHN1cHBvcnRlZCIsInR5cGUiOiJlcnJvciJ9
64
- LHsiY29uZGl0aW9ucyI6W10sImVuZHBvaW50Ijp7InVybCI6eyJyZWYiOiJF
65
- bmRwb2ludCJ9LCJwcm9wZXJ0aWVzIjp7fSwiaGVhZGVycyI6e319LCJ0eXBl
66
- IjoiZW5kcG9pbnQifV19XX0seyJjb25kaXRpb25zIjpbeyJmbiI6ImJvb2xl
67
- YW5FcXVhbHMiLCJhcmd2IjpbeyJyZWYiOiJVc2VGSVBTIn0sdHJ1ZV19LHsi
68
- Zm4iOiJib29sZWFuRXF1YWxzIiwiYXJndiI6W3sicmVmIjoiVXNlRHVhbFN0
69
- YWNrIn0sdHJ1ZV19XSwidHlwZSI6InRyZWUiLCJydWxlcyI6W3siY29uZGl0
70
- aW9ucyI6W3siZm4iOiJib29sZWFuRXF1YWxzIiwiYXJndiI6W3RydWUseyJm
71
- biI6ImdldEF0dHIiLCJhcmd2IjpbeyJyZWYiOiJQYXJ0aXRpb25SZXN1bHQi
72
- fSwic3VwcG9ydHNGSVBTIl19XX0seyJmbiI6ImJvb2xlYW5FcXVhbHMiLCJh
73
- cmd2IjpbdHJ1ZSx7ImZuIjoiZ2V0QXR0ciIsImFyZ3YiOlt7InJlZiI6IlBh
74
- cnRpdGlvblJlc3VsdCJ9LCJzdXBwb3J0c0R1YWxTdGFjayJdfV19XSwidHlw
75
- ZSI6InRyZWUiLCJydWxlcyI6W3siY29uZGl0aW9ucyI6W10sImVuZHBvaW50
76
- Ijp7InVybCI6Imh0dHBzOi8vb21pY3MtZmlwcy57UmVnaW9ufS57UGFydGl0
77
- aW9uUmVzdWx0I2R1YWxTdGFja0Ruc1N1ZmZpeH0iLCJwcm9wZXJ0aWVzIjp7
78
- fSwiaGVhZGVycyI6e319LCJ0eXBlIjoiZW5kcG9pbnQifV19LHsiY29uZGl0
79
- aW9ucyI6W10sImVycm9yIjoiRklQUyBhbmQgRHVhbFN0YWNrIGFyZSBlbmFi
80
- bGVkLCBidXQgdGhpcyBwYXJ0aXRpb24gZG9lcyBub3Qgc3VwcG9ydCBvbmUg
81
- b3IgYm90aCIsInR5cGUiOiJlcnJvciJ9XX0seyJjb25kaXRpb25zIjpbeyJm
82
- biI6ImJvb2xlYW5FcXVhbHMiLCJhcmd2IjpbeyJyZWYiOiJVc2VGSVBTIn0s
83
- dHJ1ZV19XSwidHlwZSI6InRyZWUiLCJydWxlcyI6W3siY29uZGl0aW9ucyI6
84
- W3siZm4iOiJib29sZWFuRXF1YWxzIiwiYXJndiI6W3RydWUseyJmbiI6Imdl
85
- dEF0dHIiLCJhcmd2IjpbeyJyZWYiOiJQYXJ0aXRpb25SZXN1bHQifSwic3Vw
86
- cG9ydHNGSVBTIl19XX1dLCJ0eXBlIjoidHJlZSIsInJ1bGVzIjpbeyJjb25k
87
- aXRpb25zIjpbXSwiZW5kcG9pbnQiOnsidXJsIjoiaHR0cHM6Ly9vbWljcy1m
88
- aXBzLntSZWdpb259LntQYXJ0aXRpb25SZXN1bHQjZG5zU3VmZml4fSIsInBy
89
- b3BlcnRpZXMiOnt9LCJoZWFkZXJzIjp7fX0sInR5cGUiOiJlbmRwb2ludCJ9
90
- XX0seyJjb25kaXRpb25zIjpbXSwiZXJyb3IiOiJGSVBTIGlzIGVuYWJsZWQg
91
- YnV0IHRoaXMgcGFydGl0aW9uIGRvZXMgbm90IHN1cHBvcnQgRklQUyIsInR5
92
- cGUiOiJlcnJvciJ9XX0seyJjb25kaXRpb25zIjpbeyJmbiI6ImJvb2xlYW5F
93
- cXVhbHMiLCJhcmd2IjpbeyJyZWYiOiJVc2VEdWFsU3RhY2sifSx0cnVlXX1d
94
- LCJ0eXBlIjoidHJlZSIsInJ1bGVzIjpbeyJjb25kaXRpb25zIjpbeyJmbiI6
95
- ImJvb2xlYW5FcXVhbHMiLCJhcmd2IjpbdHJ1ZSx7ImZuIjoiZ2V0QXR0ciIs
96
- ImFyZ3YiOlt7InJlZiI6IlBhcnRpdGlvblJlc3VsdCJ9LCJzdXBwb3J0c0R1
97
- YWxTdGFjayJdfV19XSwidHlwZSI6InRyZWUiLCJydWxlcyI6W3siY29uZGl0
98
- aW9ucyI6W10sImVuZHBvaW50Ijp7InVybCI6Imh0dHBzOi8vb21pY3Mue1Jl
99
- Z2lvbn0ue1BhcnRpdGlvblJlc3VsdCNkdWFsU3RhY2tEbnNTdWZmaXh9Iiwi
100
- cHJvcGVydGllcyI6e30sImhlYWRlcnMiOnt9fSwidHlwZSI6ImVuZHBvaW50
101
- In1dfSx7ImNvbmRpdGlvbnMiOltdLCJlcnJvciI6IkR1YWxTdGFjayBpcyBl
102
- bmFibGVkIGJ1dCB0aGlzIHBhcnRpdGlvbiBkb2VzIG5vdCBzdXBwb3J0IER1
103
- YWxTdGFjayIsInR5cGUiOiJlcnJvciJ9XX0seyJjb25kaXRpb25zIjpbXSwi
104
- ZW5kcG9pbnQiOnsidXJsIjoiaHR0cHM6Ly9vbWljcy57UmVnaW9ufS57UGFy
105
- dGl0aW9uUmVzdWx0I2Ruc1N1ZmZpeH0iLCJwcm9wZXJ0aWVzIjp7fSwiaGVh
106
- ZGVycyI6e319LCJ0eXBlIjoiZW5kcG9pbnQifV19XX0=
107
-
108
- JSON
109
53
  end
110
54
  end