aws-sdk-detective 1.29.0 → 1.31.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: 3e38217f8159d7ed5b730c63aff4edb75fe12f964ef74c45570a1dc3dd0a5c2e
4
- data.tar.gz: 983e4d26ac6435ec9b6b291ce633790005d3b82d83e5db5066759e2bcdac0959
3
+ metadata.gz: 3e18fb1a46061ac423029e31499dc1647237181a2687a3b4dea07ab2bbee3c73
4
+ data.tar.gz: eb081da2ef55534fdadaa69de213d0643d7b0ff85e5de6b24a0d37347cd65a76
5
5
  SHA512:
6
- metadata.gz: 3f2a6a507ec394336f758b8136e17d09aad68b5364fafd6b1647fa965cfdeac79761d005417d04bb1df6d5795dd84f4515c9352cf26a405093b34f8b6b6a297b
7
- data.tar.gz: 7a27f810270dbaa54bf376c130ace09e6c6526227599c4987a6bad6b1f6656a12846434331a06e4faaccebe0d4d7070a6ca36a5841cb5ba71c605079263c4d36
6
+ metadata.gz: 49bcda6dfae10790a71736269057d99066d7191532dd25bda8af0d8710b0cf5cdd21c676ec6e632f15bc6ee2e04d36c4d2c66de01e4b96e267d4fe9f005a0b8e
7
+ data.tar.gz: 9ba02c7d978fa6d9a3d83f3454a1729546d9f48195c1747fc2edd20a2dc2b25608334a09176df28f3f24f03311d3b515376e034e2c113286bec6a5511ce5db53
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.31.0 (2022-12-23)
5
+ ------------------
6
+
7
+ * Feature - This release adds a missed AccessDeniedException type to several endpoints.
8
+
9
+ 1.30.0 (2022-10-25)
10
+ ------------------
11
+
12
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
13
+
4
14
  1.29.0 (2022-07-26)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.29.0
1
+ 1.31.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/rest_json.rb'
35
35
 
36
36
  Aws::Plugins::GlobalConfiguration.add_identifier(:detective)
@@ -79,8 +79,9 @@ module Aws::Detective
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::RestJson)
84
+ add_plugin(Aws::Detective::Plugins::Endpoints)
84
85
 
85
86
  # @overload initialize(options)
86
87
  # @param [Hash] options
@@ -287,6 +288,19 @@ module Aws::Detective
287
288
  # ** Please note ** When response stubbing is enabled, no HTTP
288
289
  # requests are made, and retries are disabled.
289
290
  #
291
+ # @option options [Aws::TokenProvider] :token_provider
292
+ # A Bearer Token Provider. This can be an instance of any one of the
293
+ # following classes:
294
+ #
295
+ # * `Aws::StaticTokenProvider` - Used for configuring static, non-refreshing
296
+ # tokens.
297
+ #
298
+ # * `Aws::SSOTokenProvider` - Used for loading tokens from AWS SSO using an
299
+ # access token generated from `aws login`.
300
+ #
301
+ # When `:token_provider` is not configured directly, the `Aws::TokenProviderChain`
302
+ # will be used to search for tokens configured for your profile in shared configuration files.
303
+ #
290
304
  # @option options [Boolean] :use_dualstack_endpoint
291
305
  # When set to `true`, dualstack enabled endpoints (with `.aws` TLD)
292
306
  # will be used if available.
@@ -300,6 +314,9 @@ module Aws::Detective
300
314
  # When `true`, request parameters are validated before
301
315
  # sending the request.
302
316
  #
317
+ # @option options [Aws::Detective::EndpointProvider] :endpoint_provider
318
+ # The endpoint provider used to resolve endpoints. Any object that responds to `#resolve_endpoint(parameters)` where `parameters` is a Struct similar to `Aws::Detective::EndpointParameters`
319
+ #
303
320
  # @option options [URI::HTTP,String] :http_proxy A proxy to send
304
321
  # requests through. Formatted like 'http://proxy.com:123'.
305
322
  #
@@ -1401,7 +1418,7 @@ module Aws::Detective
1401
1418
  params: params,
1402
1419
  config: config)
1403
1420
  context[:gem_name] = 'aws-sdk-detective'
1404
- context[:gem_version] = '1.29.0'
1421
+ context[:gem_version] = '1.31.0'
1405
1422
  Seahorse::Client::Request.new(handlers, context)
1406
1423
  end
1407
1424
 
@@ -14,6 +14,7 @@ module Aws::Detective
14
14
  include Seahorse::Model
15
15
 
16
16
  AcceptInvitationRequest = Shapes::StructureShape.new(name: 'AcceptInvitationRequest')
17
+ AccessDeniedException = Shapes::StructureShape.new(name: 'AccessDeniedException')
17
18
  Account = Shapes::StructureShape.new(name: 'Account')
18
19
  AccountId = Shapes::StringShape.new(name: 'AccountId')
19
20
  AccountIdExtendedList = Shapes::ListShape.new(name: 'AccountIdExtendedList')
@@ -112,6 +113,13 @@ module Aws::Detective
112
113
  AcceptInvitationRequest.add_member(:graph_arn, Shapes::ShapeRef.new(shape: GraphArn, required: true, location_name: "GraphArn"))
113
114
  AcceptInvitationRequest.struct_class = Types::AcceptInvitationRequest
114
115
 
116
+ AccessDeniedException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
117
+ AccessDeniedException.add_member(:error_code, Shapes::ShapeRef.new(shape: ErrorCode, location_name: "ErrorCode"))
118
+ AccessDeniedException.add_member(:error_code_reason, Shapes::ShapeRef.new(shape: ErrorCodeReason, location_name: "ErrorCodeReason"))
119
+ AccessDeniedException.add_member(:sub_error_code, Shapes::ShapeRef.new(shape: ErrorCode, location_name: "SubErrorCode"))
120
+ AccessDeniedException.add_member(:sub_error_code_reason, Shapes::ShapeRef.new(shape: ErrorCodeReason, location_name: "SubErrorCodeReason"))
121
+ AccessDeniedException.struct_class = Types::AccessDeniedException
122
+
115
123
  Account.add_member(:account_id, Shapes::ShapeRef.new(shape: AccountId, required: true, location_name: "AccountId"))
116
124
  Account.add_member(:email_address, Shapes::ShapeRef.new(shape: EmailAddress, required: true, location_name: "EmailAddress"))
117
125
  Account.struct_class = Types::Account
@@ -393,6 +401,7 @@ module Aws::Detective
393
401
  o.http_request_uri = "/invitation"
394
402
  o.input = Shapes::ShapeRef.new(shape: AcceptInvitationRequest)
395
403
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
404
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
396
405
  o.errors << Shapes::ShapeRef.new(shape: ConflictException)
397
406
  o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
398
407
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
@@ -405,6 +414,7 @@ module Aws::Detective
405
414
  o.http_request_uri = "/graph/datasources/get"
406
415
  o.input = Shapes::ShapeRef.new(shape: BatchGetGraphMemberDatasourcesRequest)
407
416
  o.output = Shapes::ShapeRef.new(shape: BatchGetGraphMemberDatasourcesResponse)
417
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
408
418
  o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
409
419
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
410
420
  o.errors << Shapes::ShapeRef.new(shape: ValidationException)
@@ -416,6 +426,7 @@ module Aws::Detective
416
426
  o.http_request_uri = "/membership/datasources/get"
417
427
  o.input = Shapes::ShapeRef.new(shape: BatchGetMembershipDatasourcesRequest)
418
428
  o.output = Shapes::ShapeRef.new(shape: BatchGetMembershipDatasourcesResponse)
429
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
419
430
  o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
420
431
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
421
432
  o.errors << Shapes::ShapeRef.new(shape: ValidationException)
@@ -427,6 +438,7 @@ module Aws::Detective
427
438
  o.http_request_uri = "/graph"
428
439
  o.input = Shapes::ShapeRef.new(shape: CreateGraphRequest)
429
440
  o.output = Shapes::ShapeRef.new(shape: CreateGraphResponse)
441
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
430
442
  o.errors << Shapes::ShapeRef.new(shape: ConflictException)
431
443
  o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
432
444
  o.errors << Shapes::ShapeRef.new(shape: ServiceQuotaExceededException)
@@ -438,6 +450,7 @@ module Aws::Detective
438
450
  o.http_request_uri = "/graph/members"
439
451
  o.input = Shapes::ShapeRef.new(shape: CreateMembersRequest)
440
452
  o.output = Shapes::ShapeRef.new(shape: CreateMembersResponse)
453
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
441
454
  o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
442
455
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
443
456
  o.errors << Shapes::ShapeRef.new(shape: ValidationException)
@@ -450,6 +463,7 @@ module Aws::Detective
450
463
  o.http_request_uri = "/graph/removal"
451
464
  o.input = Shapes::ShapeRef.new(shape: DeleteGraphRequest)
452
465
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
466
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
453
467
  o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
454
468
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
455
469
  o.errors << Shapes::ShapeRef.new(shape: ValidationException)
@@ -461,6 +475,7 @@ module Aws::Detective
461
475
  o.http_request_uri = "/graph/members/removal"
462
476
  o.input = Shapes::ShapeRef.new(shape: DeleteMembersRequest)
463
477
  o.output = Shapes::ShapeRef.new(shape: DeleteMembersResponse)
478
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
464
479
  o.errors << Shapes::ShapeRef.new(shape: ConflictException)
465
480
  o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
466
481
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
@@ -473,6 +488,7 @@ module Aws::Detective
473
488
  o.http_request_uri = "/orgs/describeOrganizationConfiguration"
474
489
  o.input = Shapes::ShapeRef.new(shape: DescribeOrganizationConfigurationRequest)
475
490
  o.output = Shapes::ShapeRef.new(shape: DescribeOrganizationConfigurationResponse)
491
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
476
492
  o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
477
493
  o.errors << Shapes::ShapeRef.new(shape: ValidationException)
478
494
  o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
@@ -484,6 +500,7 @@ module Aws::Detective
484
500
  o.http_request_uri = "/orgs/disableAdminAccount"
485
501
  o.input = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
486
502
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
503
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
487
504
  o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
488
505
  o.errors << Shapes::ShapeRef.new(shape: ValidationException)
489
506
  o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
@@ -495,6 +512,7 @@ module Aws::Detective
495
512
  o.http_request_uri = "/membership/removal"
496
513
  o.input = Shapes::ShapeRef.new(shape: DisassociateMembershipRequest)
497
514
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
515
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
498
516
  o.errors << Shapes::ShapeRef.new(shape: ConflictException)
499
517
  o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
500
518
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
@@ -507,6 +525,7 @@ module Aws::Detective
507
525
  o.http_request_uri = "/orgs/enableAdminAccount"
508
526
  o.input = Shapes::ShapeRef.new(shape: EnableOrganizationAdminAccountRequest)
509
527
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
528
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
510
529
  o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
511
530
  o.errors << Shapes::ShapeRef.new(shape: ValidationException)
512
531
  o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
@@ -518,6 +537,7 @@ module Aws::Detective
518
537
  o.http_request_uri = "/graph/members/get"
519
538
  o.input = Shapes::ShapeRef.new(shape: GetMembersRequest)
520
539
  o.output = Shapes::ShapeRef.new(shape: GetMembersResponse)
540
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
521
541
  o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
522
542
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
523
543
  o.errors << Shapes::ShapeRef.new(shape: ValidationException)
@@ -529,6 +549,7 @@ module Aws::Detective
529
549
  o.http_request_uri = "/graph/datasources/list"
530
550
  o.input = Shapes::ShapeRef.new(shape: ListDatasourcePackagesRequest)
531
551
  o.output = Shapes::ShapeRef.new(shape: ListDatasourcePackagesResponse)
552
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
532
553
  o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
533
554
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
534
555
  o.errors << Shapes::ShapeRef.new(shape: ValidationException)
@@ -546,6 +567,7 @@ module Aws::Detective
546
567
  o.http_request_uri = "/graphs/list"
547
568
  o.input = Shapes::ShapeRef.new(shape: ListGraphsRequest)
548
569
  o.output = Shapes::ShapeRef.new(shape: ListGraphsResponse)
570
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
549
571
  o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
550
572
  o.errors << Shapes::ShapeRef.new(shape: ValidationException)
551
573
  o[:pager] = Aws::Pager.new(
@@ -562,6 +584,7 @@ module Aws::Detective
562
584
  o.http_request_uri = "/invitations/list"
563
585
  o.input = Shapes::ShapeRef.new(shape: ListInvitationsRequest)
564
586
  o.output = Shapes::ShapeRef.new(shape: ListInvitationsResponse)
587
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
565
588
  o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
566
589
  o.errors << Shapes::ShapeRef.new(shape: ValidationException)
567
590
  o[:pager] = Aws::Pager.new(
@@ -578,6 +601,7 @@ module Aws::Detective
578
601
  o.http_request_uri = "/graph/members/list"
579
602
  o.input = Shapes::ShapeRef.new(shape: ListMembersRequest)
580
603
  o.output = Shapes::ShapeRef.new(shape: ListMembersResponse)
604
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
581
605
  o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
582
606
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
583
607
  o.errors << Shapes::ShapeRef.new(shape: ValidationException)
@@ -595,6 +619,7 @@ module Aws::Detective
595
619
  o.http_request_uri = "/orgs/adminAccountslist"
596
620
  o.input = Shapes::ShapeRef.new(shape: ListOrganizationAdminAccountsRequest)
597
621
  o.output = Shapes::ShapeRef.new(shape: ListOrganizationAdminAccountsResponse)
622
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
598
623
  o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
599
624
  o.errors << Shapes::ShapeRef.new(shape: ValidationException)
600
625
  o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
@@ -612,6 +637,7 @@ module Aws::Detective
612
637
  o.http_request_uri = "/tags/{ResourceArn}"
613
638
  o.input = Shapes::ShapeRef.new(shape: ListTagsForResourceRequest)
614
639
  o.output = Shapes::ShapeRef.new(shape: ListTagsForResourceResponse)
640
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
615
641
  o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
616
642
  o.errors << Shapes::ShapeRef.new(shape: ValidationException)
617
643
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
@@ -623,6 +649,7 @@ module Aws::Detective
623
649
  o.http_request_uri = "/invitation/removal"
624
650
  o.input = Shapes::ShapeRef.new(shape: RejectInvitationRequest)
625
651
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
652
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
626
653
  o.errors << Shapes::ShapeRef.new(shape: ConflictException)
627
654
  o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
628
655
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
@@ -635,6 +662,7 @@ module Aws::Detective
635
662
  o.http_request_uri = "/graph/member/monitoringstate"
636
663
  o.input = Shapes::ShapeRef.new(shape: StartMonitoringMemberRequest)
637
664
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
665
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
638
666
  o.errors << Shapes::ShapeRef.new(shape: ConflictException)
639
667
  o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
640
668
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
@@ -648,6 +676,7 @@ module Aws::Detective
648
676
  o.http_request_uri = "/tags/{ResourceArn}"
649
677
  o.input = Shapes::ShapeRef.new(shape: TagResourceRequest)
650
678
  o.output = Shapes::ShapeRef.new(shape: TagResourceResponse)
679
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
651
680
  o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
652
681
  o.errors << Shapes::ShapeRef.new(shape: ValidationException)
653
682
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
@@ -659,6 +688,7 @@ module Aws::Detective
659
688
  o.http_request_uri = "/tags/{ResourceArn}"
660
689
  o.input = Shapes::ShapeRef.new(shape: UntagResourceRequest)
661
690
  o.output = Shapes::ShapeRef.new(shape: UntagResourceResponse)
691
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
662
692
  o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
663
693
  o.errors << Shapes::ShapeRef.new(shape: ValidationException)
664
694
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
@@ -670,6 +700,7 @@ module Aws::Detective
670
700
  o.http_request_uri = "/graph/datasources/update"
671
701
  o.input = Shapes::ShapeRef.new(shape: UpdateDatasourcePackagesRequest)
672
702
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
703
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
673
704
  o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
674
705
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
675
706
  o.errors << Shapes::ShapeRef.new(shape: ServiceQuotaExceededException)
@@ -682,6 +713,7 @@ module Aws::Detective
682
713
  o.http_request_uri = "/orgs/updateOrganizationConfiguration"
683
714
  o.input = Shapes::ShapeRef.new(shape: UpdateOrganizationConfigurationRequest)
684
715
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
716
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
685
717
  o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
686
718
  o.errors << Shapes::ShapeRef.new(shape: ValidationException)
687
719
  o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
@@ -0,0 +1,69 @@
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::Detective
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
+ if self[:region].nil?
54
+ raise ArgumentError, "Missing required EndpointParameter: :region"
55
+ end
56
+ self[:use_dual_stack] = options[:use_dual_stack]
57
+ self[:use_dual_stack] = false if self[:use_dual_stack].nil?
58
+ if self[:use_dual_stack].nil?
59
+ raise ArgumentError, "Missing required EndpointParameter: :use_dual_stack"
60
+ end
61
+ self[:use_fips] = options[:use_fips]
62
+ self[:use_fips] = false if self[:use_fips].nil?
63
+ if self[:use_fips].nil?
64
+ raise ArgumentError, "Missing required EndpointParameter: :use_fips"
65
+ end
66
+ self[:endpoint] = options[:endpoint]
67
+ end
68
+ end
69
+ end
@@ -0,0 +1,110 @@
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::Detective
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
+ 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
+ c1NldCIsImFyZ3YiOlt7InJlZiI6IkVuZHBvaW50In1dfV0sInR5cGUiOiJ0
54
+ cmVlIiwicnVsZXMiOlt7ImNvbmRpdGlvbnMiOlt7ImZuIjoiYm9vbGVhbkVx
55
+ dWFscyIsImFyZ3YiOlt7InJlZiI6IlVzZUZJUFMifSx0cnVlXX1dLCJlcnJv
56
+ ciI6IkludmFsaWQgQ29uZmlndXJhdGlvbjogRklQUyBhbmQgY3VzdG9tIGVu
57
+ ZHBvaW50IGFyZSBub3Qgc3VwcG9ydGVkIiwidHlwZSI6ImVycm9yIn0seyJj
58
+ b25kaXRpb25zIjpbXSwidHlwZSI6InRyZWUiLCJydWxlcyI6W3siY29uZGl0
59
+ aW9ucyI6W3siZm4iOiJib29sZWFuRXF1YWxzIiwiYXJndiI6W3sicmVmIjoi
60
+ VXNlRHVhbFN0YWNrIn0sdHJ1ZV19XSwiZXJyb3IiOiJJbnZhbGlkIENvbmZp
61
+ Z3VyYXRpb246IER1YWxzdGFjayBhbmQgY3VzdG9tIGVuZHBvaW50IGFyZSBu
62
+ b3Qgc3VwcG9ydGVkIiwidHlwZSI6ImVycm9yIn0seyJjb25kaXRpb25zIjpb
63
+ XSwiZW5kcG9pbnQiOnsidXJsIjp7InJlZiI6IkVuZHBvaW50In0sInByb3Bl
64
+ cnRpZXMiOnt9LCJoZWFkZXJzIjp7fX0sInR5cGUiOiJlbmRwb2ludCJ9XX1d
65
+ fSx7ImNvbmRpdGlvbnMiOlt7ImZuIjoiYm9vbGVhbkVxdWFscyIsImFyZ3Yi
66
+ Olt7InJlZiI6IlVzZUZJUFMifSx0cnVlXX0seyJmbiI6ImJvb2xlYW5FcXVh
67
+ bHMiLCJhcmd2IjpbeyJyZWYiOiJVc2VEdWFsU3RhY2sifSx0cnVlXX1dLCJ0
68
+ eXBlIjoidHJlZSIsInJ1bGVzIjpbeyJjb25kaXRpb25zIjpbeyJmbiI6ImJv
69
+ b2xlYW5FcXVhbHMiLCJhcmd2IjpbdHJ1ZSx7ImZuIjoiZ2V0QXR0ciIsImFy
70
+ Z3YiOlt7InJlZiI6IlBhcnRpdGlvblJlc3VsdCJ9LCJzdXBwb3J0c0ZJUFMi
71
+ XX1dfSx7ImZuIjoiYm9vbGVhbkVxdWFscyIsImFyZ3YiOlt0cnVlLHsiZm4i
72
+ OiJnZXRBdHRyIiwiYXJndiI6W3sicmVmIjoiUGFydGl0aW9uUmVzdWx0In0s
73
+ InN1cHBvcnRzRHVhbFN0YWNrIl19XX1dLCJ0eXBlIjoidHJlZSIsInJ1bGVz
74
+ IjpbeyJjb25kaXRpb25zIjpbXSwiZW5kcG9pbnQiOnsidXJsIjoiaHR0cHM6
75
+ Ly9hcGkuZGV0ZWN0aXZlLWZpcHMue1JlZ2lvbn0ue1BhcnRpdGlvblJlc3Vs
76
+ dCNkdWFsU3RhY2tEbnNTdWZmaXh9IiwicHJvcGVydGllcyI6e30sImhlYWRl
77
+ cnMiOnt9fSwidHlwZSI6ImVuZHBvaW50In1dfSx7ImNvbmRpdGlvbnMiOltd
78
+ LCJlcnJvciI6IkZJUFMgYW5kIER1YWxTdGFjayBhcmUgZW5hYmxlZCwgYnV0
79
+ IHRoaXMgcGFydGl0aW9uIGRvZXMgbm90IHN1cHBvcnQgb25lIG9yIGJvdGgi
80
+ LCJ0eXBlIjoiZXJyb3IifV19LHsiY29uZGl0aW9ucyI6W3siZm4iOiJib29s
81
+ ZWFuRXF1YWxzIiwiYXJndiI6W3sicmVmIjoiVXNlRklQUyJ9LHRydWVdfV0s
82
+ InR5cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNvbmRpdGlvbnMiOlt7ImZuIjoi
83
+ Ym9vbGVhbkVxdWFscyIsImFyZ3YiOlt0cnVlLHsiZm4iOiJnZXRBdHRyIiwi
84
+ YXJndiI6W3sicmVmIjoiUGFydGl0aW9uUmVzdWx0In0sInN1cHBvcnRzRklQ
85
+ UyJdfV19XSwidHlwZSI6InRyZWUiLCJydWxlcyI6W3siY29uZGl0aW9ucyI6
86
+ W10sInR5cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNvbmRpdGlvbnMiOltdLCJl
87
+ bmRwb2ludCI6eyJ1cmwiOiJodHRwczovL2FwaS5kZXRlY3RpdmUtZmlwcy57
88
+ UmVnaW9ufS57UGFydGl0aW9uUmVzdWx0I2Ruc1N1ZmZpeH0iLCJwcm9wZXJ0
89
+ aWVzIjp7fSwiaGVhZGVycyI6e319LCJ0eXBlIjoiZW5kcG9pbnQifV19XX0s
90
+ eyJjb25kaXRpb25zIjpbXSwiZXJyb3IiOiJGSVBTIGlzIGVuYWJsZWQgYnV0
91
+ IHRoaXMgcGFydGl0aW9uIGRvZXMgbm90IHN1cHBvcnQgRklQUyIsInR5cGUi
92
+ OiJlcnJvciJ9XX0seyJjb25kaXRpb25zIjpbeyJmbiI6ImJvb2xlYW5FcXVh
93
+ bHMiLCJhcmd2IjpbeyJyZWYiOiJVc2VEdWFsU3RhY2sifSx0cnVlXX1dLCJ0
94
+ eXBlIjoidHJlZSIsInJ1bGVzIjpbeyJjb25kaXRpb25zIjpbeyJmbiI6ImJv
95
+ b2xlYW5FcXVhbHMiLCJhcmd2IjpbdHJ1ZSx7ImZuIjoiZ2V0QXR0ciIsImFy
96
+ Z3YiOlt7InJlZiI6IlBhcnRpdGlvblJlc3VsdCJ9LCJzdXBwb3J0c0R1YWxT
97
+ dGFjayJdfV19XSwidHlwZSI6InRyZWUiLCJydWxlcyI6W3siY29uZGl0aW9u
98
+ cyI6W10sImVuZHBvaW50Ijp7InVybCI6Imh0dHBzOi8vYXBpLmRldGVjdGl2
99
+ ZS57UmVnaW9ufS57UGFydGl0aW9uUmVzdWx0I2R1YWxTdGFja0Ruc1N1ZmZp
100
+ eH0iLCJwcm9wZXJ0aWVzIjp7fSwiaGVhZGVycyI6e319LCJ0eXBlIjoiZW5k
101
+ cG9pbnQifV19LHsiY29uZGl0aW9ucyI6W10sImVycm9yIjoiRHVhbFN0YWNr
102
+ IGlzIGVuYWJsZWQgYnV0IHRoaXMgcGFydGl0aW9uIGRvZXMgbm90IHN1cHBv
103
+ cnQgRHVhbFN0YWNrIiwidHlwZSI6ImVycm9yIn1dfSx7ImNvbmRpdGlvbnMi
104
+ OltdLCJlbmRwb2ludCI6eyJ1cmwiOiJodHRwczovL2FwaS5kZXRlY3RpdmUu
105
+ e1JlZ2lvbn0ue1BhcnRpdGlvblJlc3VsdCNkbnNTdWZmaXh9IiwicHJvcGVy
106
+ dGllcyI6e30sImhlYWRlcnMiOnt9fSwidHlwZSI6ImVuZHBvaW50In1dfV19
107
+
108
+ JSON
109
+ end
110
+ end