aws-sdk-route53recoverycluster 1.10.0 → 1.12.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: f056cc69373080730ec362738dadfae29b85b71725c5fb4a115dffe9a0d93a7b
4
- data.tar.gz: 41c963fcdad2d37d117b5d098ed9654b484a50838d13f8802f15c59ad458eec3
3
+ metadata.gz: '078b5f2dcc2d882688fd5453b177d23739f12564b10fcf77cd3b91eeb137b3c7'
4
+ data.tar.gz: fe5fd0e9b395cd0ddcb806444597d76e324c2782f7521d5f89359839ac0f8339
5
5
  SHA512:
6
- metadata.gz: fdcb8d7886a77419677e60b5691754f187344d6ad179e6d77bc74dae6224010009c50c37a9829e997883b471994170383b4ba689335c8ab9563ce6a427471709
7
- data.tar.gz: f6c72de1f9feb7b61c6cb53c84afca7f1df171d3e6abb1ff015850eb4f69fb7862b8a94ac1f81ebf2c634d35d845171b0e76f56f3e1114602167005466a27919
6
+ metadata.gz: 816065ff9ed19c273f8e64e3ee3eadee2aa86b13ddbfbe2ddff1ee957c75aef53b0e11e803db40b5d45bf864550dac1351d8f2de8693a0df9c34d96c5e4eac15
7
+ data.tar.gz: ce5b6fa82f51b75c998944ff9eb66090af8f869f80c805adf8d9e977acfb41cdcaec5f1960f40084652fb9359b301b926a45bd7bec7f56fa0014c12088ae77fe
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.12.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.11.0 (2022-03-31)
10
+ ------------------
11
+
12
+ * Feature - This release adds a new API "ListRoutingControls" to list routing control states using the highly reliable Route 53 ARC data plane endpoints.
13
+
4
14
  1.10.0 (2022-02-28)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.10.0
1
+ 1.12.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(:route53recoverycluster)
@@ -79,8 +79,9 @@ module Aws::Route53RecoveryCluster
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::Route53RecoveryCluster::Plugins::Endpoints)
84
85
 
85
86
  # @overload initialize(options)
86
87
  # @param [Hash] options
@@ -297,6 +298,19 @@ module Aws::Route53RecoveryCluster
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::Route53RecoveryCluster
310
324
  # When `true`, request parameters are validated before
311
325
  # sending the request.
312
326
  #
327
+ # @option options [Aws::Route53RecoveryCluster::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::Route53RecoveryCluster::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
  #
@@ -362,20 +379,19 @@ module Aws::Route53RecoveryCluster
362
379
  # @!group API Operations
363
380
 
364
381
  # Get the state for a routing control. A routing control is a simple
365
- # on/off switch that you can use to route traffic to cells. When the
366
- # state is On, traffic flows to a cell. When it's Off, traffic does not
367
- # flow.
382
+ # on/off switch that you can use to route traffic to cells. When a
383
+ # routing control state is On, traffic flows to a cell. When the state
384
+ # is Off, traffic does not flow.
368
385
  #
369
386
  # Before you can create a routing control, you must first create a
370
- # cluster to host the control in a control panel. For more information,
371
- # see [ Create routing control structures][1] in the Amazon Route 53
372
- # Application Recovery Controller Developer Guide. Then you access one
373
- # of the endpoints for the cluster to get or update the routing control
374
- # state to redirect traffic.
387
+ # cluster, and then host the control in a control panel on the cluster.
388
+ # For more information, see [ Create routing control structures][1] in
389
+ # the Amazon Route 53 Application Recovery Controller Developer Guide.
390
+ # You access one of the endpoints for the cluster to get or update the
391
+ # routing control state to redirect traffic for your application.
375
392
  #
376
393
  # *You must specify Regional endpoints when you work with API cluster
377
- # operations to get or update routing control states in Application
378
- # Recovery Controller.*
394
+ # operations to get or update routing control states in Route 53 ARC.*
379
395
  #
380
396
  # To see a code example for getting a routing control state, including
381
397
  # accessing Regional cluster endpoints in sequence, see [API
@@ -388,7 +404,7 @@ module Aws::Route53RecoveryCluster
388
404
  #
389
405
  # * [ Viewing and updating routing control states][3]
390
406
  #
391
- # * [Working with routing controls overall][4]
407
+ # * [Working with routing controls in Route 53 ARC][4]
392
408
  #
393
409
  #
394
410
  #
@@ -398,13 +414,14 @@ module Aws::Route53RecoveryCluster
398
414
  # [4]: https://docs.aws.amazon.com/r53recovery/latest/dg/routing-control.html
399
415
  #
400
416
  # @option params [required, String] :routing_control_arn
401
- # The Amazon Resource Number (ARN) for the routing control that you want
417
+ # The Amazon Resource Name (ARN) for the routing control that you want
402
418
  # to get the state for.
403
419
  #
404
420
  # @return [Types::GetRoutingControlStateResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
405
421
  #
406
422
  # * {Types::GetRoutingControlStateResponse#routing_control_arn #routing_control_arn} => String
407
423
  # * {Types::GetRoutingControlStateResponse#routing_control_state #routing_control_state} => String
424
+ # * {Types::GetRoutingControlStateResponse#routing_control_name #routing_control_name} => String
408
425
  #
409
426
  # @example Request syntax with placeholder values
410
427
  #
@@ -416,6 +433,7 @@ module Aws::Route53RecoveryCluster
416
433
  #
417
434
  # resp.routing_control_arn #=> String
418
435
  # resp.routing_control_state #=> String, one of "On", "Off"
436
+ # resp.routing_control_name #=> String
419
437
  #
420
438
  # @see http://docs.aws.amazon.com/goto/WebAPI/route53-recovery-cluster-2019-12-02/GetRoutingControlState AWS API Documentation
421
439
  #
@@ -426,21 +444,103 @@ module Aws::Route53RecoveryCluster
426
444
  req.send_request(options)
427
445
  end
428
446
 
447
+ # List routing control names and Amazon Resource Names (ARNs), as well
448
+ # as the routing control state for each routing control, along with the
449
+ # control panel name and control panel ARN for the routing controls. If
450
+ # you specify a control panel ARN, this call lists the routing controls
451
+ # in the control panel. Otherwise, it lists all the routing controls in
452
+ # the cluster.
453
+ #
454
+ # A routing control is a simple on/off switch in Route 53 ARC that you
455
+ # can use to route traffic to cells. When a routing control state is On,
456
+ # traffic flows to a cell. When the state is Off, traffic does not flow.
457
+ #
458
+ # Before you can create a routing control, you must first create a
459
+ # cluster, and then host the control in a control panel on the cluster.
460
+ # For more information, see [ Create routing control structures][1] in
461
+ # the Amazon Route 53 Application Recovery Controller Developer Guide.
462
+ # You access one of the endpoints for the cluster to get or update the
463
+ # routing control state to redirect traffic for your application.
464
+ #
465
+ # *You must specify Regional endpoints when you work with API cluster
466
+ # operations to use this API operation to list routing controls in Route
467
+ # 53 ARC.*
468
+ #
469
+ # Learn more about working with routing controls in the following topics
470
+ # in the Amazon Route 53 Application Recovery Controller Developer
471
+ # Guide:
472
+ #
473
+ # * [ Viewing and updating routing control states][2]
474
+ #
475
+ # * [Working with routing controls in Route 53 ARC][3]
476
+ #
477
+ #
478
+ #
479
+ # [1]: https://docs.aws.amazon.com/r53recovery/latest/dg/routing-control.create.html
480
+ # [2]: https://docs.aws.amazon.com/r53recovery/latest/dg/routing-control.update.html
481
+ # [3]: https://docs.aws.amazon.com/r53recovery/latest/dg/routing-control.html
482
+ #
483
+ # @option params [String] :control_panel_arn
484
+ # The Amazon Resource Name (ARN) of the control panel of the routing
485
+ # controls to list.
486
+ #
487
+ # @option params [String] :next_token
488
+ # The token for the next set of results. You receive this token from a
489
+ # previous call.
490
+ #
491
+ # @option params [Integer] :max_results
492
+ # The number of routing controls objects that you want to return with
493
+ # this call. The default value is 500.
494
+ #
495
+ # @return [Types::ListRoutingControlsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
496
+ #
497
+ # * {Types::ListRoutingControlsResponse#routing_controls #routing_controls} => Array<Types::RoutingControl>
498
+ # * {Types::ListRoutingControlsResponse#next_token #next_token} => String
499
+ #
500
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
501
+ #
502
+ # @example Request syntax with placeholder values
503
+ #
504
+ # resp = client.list_routing_controls({
505
+ # control_panel_arn: "Arn",
506
+ # next_token: "PageToken",
507
+ # max_results: 1,
508
+ # })
509
+ #
510
+ # @example Response structure
511
+ #
512
+ # resp.routing_controls #=> Array
513
+ # resp.routing_controls[0].control_panel_arn #=> String
514
+ # resp.routing_controls[0].control_panel_name #=> String
515
+ # resp.routing_controls[0].routing_control_arn #=> String
516
+ # resp.routing_controls[0].routing_control_name #=> String
517
+ # resp.routing_controls[0].routing_control_state #=> String, one of "On", "Off"
518
+ # resp.next_token #=> String
519
+ #
520
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53-recovery-cluster-2019-12-02/ListRoutingControls AWS API Documentation
521
+ #
522
+ # @overload list_routing_controls(params = {})
523
+ # @param [Hash] params ({})
524
+ def list_routing_controls(params = {}, options = {})
525
+ req = build_request(:list_routing_controls, params)
526
+ req.send_request(options)
527
+ end
528
+
429
529
  # Set the state of the routing control to reroute traffic. You can set
430
530
  # the value to be On or Off. When the state is On, traffic flows to a
431
- # cell. When it's Off, traffic does not flow.
432
- #
433
- # With Application Recovery Controller, you can add safety rules for
434
- # routing controls, which are safeguards for routing control state
435
- # updates that help prevent unexpected outcomes, like fail open traffic
436
- # routing. However, there are scenarios when you might want to bypass
437
- # the routing control safeguards that are enforced with safety rules
438
- # that you've configured. For example, you might want to fail over
439
- # quickly for disaster recovery, and one or more safety rules might be
440
- # unexpectedly preventing you from updating a routing control state to
441
- # reroute traffic. In a "break glass" scenario like this, you can
442
- # override one or more safety rules to change a routing control state
443
- # and fail over your application.
531
+ # cell. When the state is Off, traffic does not flow.
532
+ #
533
+ # With Route 53 ARC, you can add safety rules for routing controls,
534
+ # which are safeguards for routing control state updates that help
535
+ # prevent unexpected outcomes, like fail open traffic routing. However,
536
+ # there are scenarios when you might want to bypass the routing control
537
+ # safeguards that are enforced with safety rules that you've
538
+ # configured. For example, you might want to fail over quickly for
539
+ # disaster recovery, and one or more safety rules might be unexpectedly
540
+ # preventing you from updating a routing control state to reroute
541
+ # traffic. In a "break glass" scenario like this, you can override one
542
+ # or more safety rules to change a routing control state and fail over
543
+ # your application.
444
544
  #
445
545
  # The `SafetyRulesToOverride` property enables you override one or more
446
546
  # safety rules and update routing control states. For more information,
@@ -448,8 +548,7 @@ module Aws::Route53RecoveryCluster
448
548
  # 53 Application Recovery Controller Developer Guide.
449
549
  #
450
550
  # *You must specify Regional endpoints when you work with API cluster
451
- # operations to get or update routing control states in Application
452
- # Recovery Controller.*
551
+ # operations to get or update routing control states in Route 53 ARC.*
453
552
  #
454
553
  # To see a code example for getting a routing control state, including
455
554
  # accessing Regional cluster endpoints in sequence, see [API
@@ -468,7 +567,7 @@ module Aws::Route53RecoveryCluster
468
567
  # [4]: https://docs.aws.amazon.com/r53recovery/latest/dg/routing-control.html
469
568
  #
470
569
  # @option params [required, String] :routing_control_arn
471
- # The Amazon Resource Number (ARN) for the routing control that you want
570
+ # The Amazon Resource Name (ARN) for the routing control that you want
472
571
  # to update the state for.
473
572
  #
474
573
  # @option params [required, String] :routing_control_state
@@ -476,10 +575,10 @@ module Aws::Route53RecoveryCluster
476
575
  # Off.
477
576
  #
478
577
  # @option params [Array<String>] :safety_rules_to_override
479
- # The Amazon Resource Numbers (ARNs) for the safety rules that you want
480
- # to override when you're updating the state of a routing control. You
481
- # can override one safety rule or multiple safety rules by including one
482
- # or more ARNs, separated by commas.
578
+ # The Amazon Resource Names (ARNs) for the safety rules that you want to
579
+ # override when you're updating the state of a routing control. You can
580
+ # override one safety rule or multiple safety rules by including one or
581
+ # more ARNs, separated by commas.
483
582
  #
484
583
  # For more information, see [ Override safety rules to reroute
485
584
  # traffic][1] in the Amazon Route 53 Application Recovery Controller
@@ -512,17 +611,17 @@ module Aws::Route53RecoveryCluster
512
611
  # state to be On or Off. When the state is On, traffic flows to a cell.
513
612
  # When it's Off, traffic does not flow.
514
613
  #
515
- # With Application Recovery Controller, you can add safety rules for
516
- # routing controls, which are safeguards for routing control state
517
- # updates that help prevent unexpected outcomes, like fail open traffic
518
- # routing. However, there are scenarios when you might want to bypass
519
- # the routing control safeguards that are enforced with safety rules
520
- # that you've configured. For example, you might want to fail over
521
- # quickly for disaster recovery, and one or more safety rules might be
522
- # unexpectedly preventing you from updating a routing control state to
523
- # reroute traffic. In a "break glass" scenario like this, you can
524
- # override one or more safety rules to change a routing control state
525
- # and fail over your application.
614
+ # With Route 53 ARC, you can add safety rules for routing controls,
615
+ # which are safeguards for routing control state updates that help
616
+ # prevent unexpected outcomes, like fail open traffic routing. However,
617
+ # there are scenarios when you might want to bypass the routing control
618
+ # safeguards that are enforced with safety rules that you've
619
+ # configured. For example, you might want to fail over quickly for
620
+ # disaster recovery, and one or more safety rules might be unexpectedly
621
+ # preventing you from updating a routing control state to reroute
622
+ # traffic. In a "break glass" scenario like this, you can override one
623
+ # or more safety rules to change a routing control state and fail over
624
+ # your application.
526
625
  #
527
626
  # The `SafetyRulesToOverride` property enables you override one or more
528
627
  # safety rules and update routing control states. For more information,
@@ -530,8 +629,7 @@ module Aws::Route53RecoveryCluster
530
629
  # 53 Application Recovery Controller Developer Guide.
531
630
  #
532
631
  # *You must specify Regional endpoints when you work with API cluster
533
- # operations to get or update routing control states in Application
534
- # Recovery Controller.*
632
+ # operations to get or update routing control states in Route 53 ARC.*
535
633
  #
536
634
  # To see a code example for getting a routing control state, including
537
635
  # accessing Regional cluster endpoints in sequence, see [API
@@ -553,8 +651,8 @@ module Aws::Route53RecoveryCluster
553
651
  # A set of routing control entries that you want to update.
554
652
  #
555
653
  # @option params [Array<String>] :safety_rules_to_override
556
- # The Amazon Resource Numbers (ARNs) for the safety rules that you want
557
- # to override when you're updating routing control states. You can
654
+ # The Amazon Resource Names (ARNs) for the safety rules that you want to
655
+ # override when you're updating routing control states. You can
558
656
  # override one safety rule or multiple safety rules by including one or
559
657
  # more ARNs, separated by commas.
560
658
  #
@@ -602,7 +700,7 @@ module Aws::Route53RecoveryCluster
602
700
  params: params,
603
701
  config: config)
604
702
  context[:gem_name] = 'aws-sdk-route53recoverycluster'
605
- context[:gem_version] = '1.10.0'
703
+ context[:gem_version] = '1.12.0'
606
704
  Seahorse::Client::Request.new(handlers, context)
607
705
  end
608
706
 
@@ -17,13 +17,22 @@ module Aws::Route53RecoveryCluster
17
17
  Arn = Shapes::StringShape.new(name: 'Arn')
18
18
  Arns = Shapes::ListShape.new(name: 'Arns')
19
19
  ConflictException = Shapes::StructureShape.new(name: 'ConflictException')
20
+ ControlPanelName = Shapes::StringShape.new(name: 'ControlPanelName')
20
21
  EndpointTemporarilyUnavailableException = Shapes::StructureShape.new(name: 'EndpointTemporarilyUnavailableException')
21
22
  GetRoutingControlStateRequest = Shapes::StructureShape.new(name: 'GetRoutingControlStateRequest')
22
23
  GetRoutingControlStateResponse = Shapes::StructureShape.new(name: 'GetRoutingControlStateResponse')
23
24
  InternalServerException = Shapes::StructureShape.new(name: 'InternalServerException')
25
+ ListRoutingControlsRequest = Shapes::StructureShape.new(name: 'ListRoutingControlsRequest')
26
+ ListRoutingControlsResponse = Shapes::StructureShape.new(name: 'ListRoutingControlsResponse')
27
+ MaxResults = Shapes::IntegerShape.new(name: 'MaxResults')
28
+ PageToken = Shapes::StringShape.new(name: 'PageToken')
24
29
  ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException')
25
30
  RetryAfterSeconds = Shapes::IntegerShape.new(name: 'RetryAfterSeconds')
31
+ RoutingControl = Shapes::StructureShape.new(name: 'RoutingControl')
32
+ RoutingControlName = Shapes::StringShape.new(name: 'RoutingControlName')
26
33
  RoutingControlState = Shapes::StringShape.new(name: 'RoutingControlState')
34
+ RoutingControls = Shapes::ListShape.new(name: 'RoutingControls')
35
+ ServiceLimitExceededException = Shapes::StructureShape.new(name: 'ServiceLimitExceededException')
27
36
  String = Shapes::StringShape.new(name: 'String')
28
37
  ThrottlingException = Shapes::StructureShape.new(name: 'ThrottlingException')
29
38
  UpdateRoutingControlStateEntries = Shapes::ListShape.new(name: 'UpdateRoutingControlStateEntries')
@@ -55,17 +64,43 @@ module Aws::Route53RecoveryCluster
55
64
 
56
65
  GetRoutingControlStateResponse.add_member(:routing_control_arn, Shapes::ShapeRef.new(shape: Arn, required: true, location_name: "RoutingControlArn"))
57
66
  GetRoutingControlStateResponse.add_member(:routing_control_state, Shapes::ShapeRef.new(shape: RoutingControlState, required: true, location_name: "RoutingControlState"))
67
+ GetRoutingControlStateResponse.add_member(:routing_control_name, Shapes::ShapeRef.new(shape: RoutingControlName, location_name: "RoutingControlName"))
58
68
  GetRoutingControlStateResponse.struct_class = Types::GetRoutingControlStateResponse
59
69
 
60
70
  InternalServerException.add_member(:message, Shapes::ShapeRef.new(shape: String, required: true, location_name: "message"))
61
71
  InternalServerException.add_member(:retry_after_seconds, Shapes::ShapeRef.new(shape: RetryAfterSeconds, location_name: "retryAfterSeconds"))
62
72
  InternalServerException.struct_class = Types::InternalServerException
63
73
 
74
+ ListRoutingControlsRequest.add_member(:control_panel_arn, Shapes::ShapeRef.new(shape: Arn, location_name: "ControlPanelArn"))
75
+ ListRoutingControlsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: PageToken, location_name: "NextToken"))
76
+ ListRoutingControlsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location_name: "MaxResults", metadata: {"box"=>true}))
77
+ ListRoutingControlsRequest.struct_class = Types::ListRoutingControlsRequest
78
+
79
+ ListRoutingControlsResponse.add_member(:routing_controls, Shapes::ShapeRef.new(shape: RoutingControls, required: true, location_name: "RoutingControls"))
80
+ ListRoutingControlsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: PageToken, location_name: "NextToken"))
81
+ ListRoutingControlsResponse.struct_class = Types::ListRoutingControlsResponse
82
+
64
83
  ResourceNotFoundException.add_member(:message, Shapes::ShapeRef.new(shape: String, required: true, location_name: "message"))
65
84
  ResourceNotFoundException.add_member(:resource_id, Shapes::ShapeRef.new(shape: String, required: true, location_name: "resourceId"))
66
85
  ResourceNotFoundException.add_member(:resource_type, Shapes::ShapeRef.new(shape: String, required: true, location_name: "resourceType"))
67
86
  ResourceNotFoundException.struct_class = Types::ResourceNotFoundException
68
87
 
88
+ RoutingControl.add_member(:control_panel_arn, Shapes::ShapeRef.new(shape: Arn, location_name: "ControlPanelArn"))
89
+ RoutingControl.add_member(:control_panel_name, Shapes::ShapeRef.new(shape: ControlPanelName, location_name: "ControlPanelName"))
90
+ RoutingControl.add_member(:routing_control_arn, Shapes::ShapeRef.new(shape: Arn, location_name: "RoutingControlArn"))
91
+ RoutingControl.add_member(:routing_control_name, Shapes::ShapeRef.new(shape: RoutingControlName, location_name: "RoutingControlName"))
92
+ RoutingControl.add_member(:routing_control_state, Shapes::ShapeRef.new(shape: RoutingControlState, location_name: "RoutingControlState"))
93
+ RoutingControl.struct_class = Types::RoutingControl
94
+
95
+ RoutingControls.member = Shapes::ShapeRef.new(shape: RoutingControl)
96
+
97
+ ServiceLimitExceededException.add_member(:message, Shapes::ShapeRef.new(shape: String, required: true, location_name: "message"))
98
+ ServiceLimitExceededException.add_member(:resource_id, Shapes::ShapeRef.new(shape: String, location_name: "resourceId"))
99
+ ServiceLimitExceededException.add_member(:resource_type, Shapes::ShapeRef.new(shape: String, location_name: "resourceType"))
100
+ ServiceLimitExceededException.add_member(:limit_code, Shapes::ShapeRef.new(shape: String, required: true, location_name: "limitCode"))
101
+ ServiceLimitExceededException.add_member(:service_code, Shapes::ShapeRef.new(shape: String, required: true, location_name: "serviceCode"))
102
+ ServiceLimitExceededException.struct_class = Types::ServiceLimitExceededException
103
+
69
104
  ThrottlingException.add_member(:message, Shapes::ShapeRef.new(shape: String, required: true, location_name: "message"))
70
105
  ThrottlingException.add_member(:retry_after_seconds, Shapes::ShapeRef.new(shape: RetryAfterSeconds, location_name: "retryAfterSeconds"))
71
106
  ThrottlingException.struct_class = Types::ThrottlingException
@@ -133,6 +168,26 @@ module Aws::Route53RecoveryCluster
133
168
  o.errors << Shapes::ShapeRef.new(shape: EndpointTemporarilyUnavailableException)
134
169
  end)
135
170
 
171
+ api.add_operation(:list_routing_controls, Seahorse::Model::Operation.new.tap do |o|
172
+ o.name = "ListRoutingControls"
173
+ o.http_method = "POST"
174
+ o.http_request_uri = "/"
175
+ o.input = Shapes::ShapeRef.new(shape: ListRoutingControlsRequest)
176
+ o.output = Shapes::ShapeRef.new(shape: ListRoutingControlsResponse)
177
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
178
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
179
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
180
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
181
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
182
+ o.errors << Shapes::ShapeRef.new(shape: EndpointTemporarilyUnavailableException)
183
+ o[:pager] = Aws::Pager.new(
184
+ limit_key: "max_results",
185
+ tokens: {
186
+ "next_token" => "next_token"
187
+ }
188
+ )
189
+ end)
190
+
136
191
  api.add_operation(:update_routing_control_state, Seahorse::Model::Operation.new.tap do |o|
137
192
  o.name = "UpdateRoutingControlState"
138
193
  o.http_method = "POST"
@@ -161,6 +216,7 @@ module Aws::Route53RecoveryCluster
161
216
  o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
162
217
  o.errors << Shapes::ShapeRef.new(shape: EndpointTemporarilyUnavailableException)
163
218
  o.errors << Shapes::ShapeRef.new(shape: ConflictException)
219
+ o.errors << Shapes::ShapeRef.new(shape: ServiceLimitExceededException)
164
220
  end)
165
221
  end
166
222
 
@@ -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::Route53RecoveryCluster
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,112 @@
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::Route53RecoveryCluster
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
+ dCI6eyJ1cmwiOiJodHRwczovL3JvdXRlNTMtcmVjb3ZlcnktY2x1c3Rlci1m
77
+ aXBzLntSZWdpb259LntQYXJ0aXRpb25SZXN1bHQjZHVhbFN0YWNrRG5zU3Vm
78
+ Zml4fSIsInByb3BlcnRpZXMiOnt9LCJoZWFkZXJzIjp7fX0sInR5cGUiOiJl
79
+ bmRwb2ludCJ9XX0seyJjb25kaXRpb25zIjpbXSwiZXJyb3IiOiJGSVBTIGFu
80
+ ZCBEdWFsU3RhY2sgYXJlIGVuYWJsZWQsIGJ1dCB0aGlzIHBhcnRpdGlvbiBk
81
+ b2VzIG5vdCBzdXBwb3J0IG9uZSBvciBib3RoIiwidHlwZSI6ImVycm9yIn1d
82
+ fSx7ImNvbmRpdGlvbnMiOlt7ImZuIjoiYm9vbGVhbkVxdWFscyIsImFyZ3Yi
83
+ Olt7InJlZiI6IlVzZUZJUFMifSx0cnVlXX1dLCJ0eXBlIjoidHJlZSIsInJ1
84
+ bGVzIjpbeyJjb25kaXRpb25zIjpbeyJmbiI6ImJvb2xlYW5FcXVhbHMiLCJh
85
+ cmd2IjpbdHJ1ZSx7ImZuIjoiZ2V0QXR0ciIsImFyZ3YiOlt7InJlZiI6IlBh
86
+ cnRpdGlvblJlc3VsdCJ9LCJzdXBwb3J0c0ZJUFMiXX1dfV0sInR5cGUiOiJ0
87
+ cmVlIiwicnVsZXMiOlt7ImNvbmRpdGlvbnMiOltdLCJlbmRwb2ludCI6eyJ1
88
+ cmwiOiJodHRwczovL3JvdXRlNTMtcmVjb3ZlcnktY2x1c3Rlci1maXBzLntS
89
+ ZWdpb259LntQYXJ0aXRpb25SZXN1bHQjZG5zU3VmZml4fSIsInByb3BlcnRp
90
+ ZXMiOnt9LCJoZWFkZXJzIjp7fX0sInR5cGUiOiJlbmRwb2ludCJ9XX0seyJj
91
+ b25kaXRpb25zIjpbXSwiZXJyb3IiOiJGSVBTIGlzIGVuYWJsZWQgYnV0IHRo
92
+ aXMgcGFydGl0aW9uIGRvZXMgbm90IHN1cHBvcnQgRklQUyIsInR5cGUiOiJl
93
+ cnJvciJ9XX0seyJjb25kaXRpb25zIjpbeyJmbiI6ImJvb2xlYW5FcXVhbHMi
94
+ LCJhcmd2IjpbeyJyZWYiOiJVc2VEdWFsU3RhY2sifSx0cnVlXX1dLCJ0eXBl
95
+ IjoidHJlZSIsInJ1bGVzIjpbeyJjb25kaXRpb25zIjpbeyJmbiI6ImJvb2xl
96
+ YW5FcXVhbHMiLCJhcmd2IjpbdHJ1ZSx7ImZuIjoiZ2V0QXR0ciIsImFyZ3Yi
97
+ Olt7InJlZiI6IlBhcnRpdGlvblJlc3VsdCJ9LCJzdXBwb3J0c0R1YWxTdGFj
98
+ ayJdfV19XSwidHlwZSI6InRyZWUiLCJydWxlcyI6W3siY29uZGl0aW9ucyI6
99
+ W10sImVuZHBvaW50Ijp7InVybCI6Imh0dHBzOi8vcm91dGU1My1yZWNvdmVy
100
+ eS1jbHVzdGVyLntSZWdpb259LntQYXJ0aXRpb25SZXN1bHQjZHVhbFN0YWNr
101
+ RG5zU3VmZml4fSIsInByb3BlcnRpZXMiOnt9LCJoZWFkZXJzIjp7fX0sInR5
102
+ cGUiOiJlbmRwb2ludCJ9XX0seyJjb25kaXRpb25zIjpbXSwiZXJyb3IiOiJE
103
+ dWFsU3RhY2sgaXMgZW5hYmxlZCBidXQgdGhpcyBwYXJ0aXRpb24gZG9lcyBu
104
+ b3Qgc3VwcG9ydCBEdWFsU3RhY2siLCJ0eXBlIjoiZXJyb3IifV19LHsiY29u
105
+ ZGl0aW9ucyI6W10sImVuZHBvaW50Ijp7InVybCI6Imh0dHBzOi8vcm91dGU1
106
+ My1yZWNvdmVyeS1jbHVzdGVyLntSZWdpb259LntQYXJ0aXRpb25SZXN1bHQj
107
+ ZG5zU3VmZml4fSIsInByb3BlcnRpZXMiOnt9LCJoZWFkZXJzIjp7fX0sInR5
108
+ cGUiOiJlbmRwb2ludCJ9XX1dfQ==
109
+
110
+ JSON
111
+ end
112
+ end
@@ -0,0 +1,71 @@
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::Route53RecoveryCluster
12
+ module Endpoints
13
+
14
+ class GetRoutingControlState
15
+ def self.build(context)
16
+ unless context.config.regional_endpoint
17
+ endpoint = context.config.endpoint.to_s
18
+ end
19
+ Aws::Route53RecoveryCluster::EndpointParameters.new(
20
+ region: context.config.region,
21
+ use_dual_stack: context.config.use_dualstack_endpoint,
22
+ use_fips: context.config.use_fips_endpoint,
23
+ endpoint: endpoint,
24
+ )
25
+ end
26
+ end
27
+
28
+ class ListRoutingControls
29
+ def self.build(context)
30
+ unless context.config.regional_endpoint
31
+ endpoint = context.config.endpoint.to_s
32
+ end
33
+ Aws::Route53RecoveryCluster::EndpointParameters.new(
34
+ region: context.config.region,
35
+ use_dual_stack: context.config.use_dualstack_endpoint,
36
+ use_fips: context.config.use_fips_endpoint,
37
+ endpoint: endpoint,
38
+ )
39
+ end
40
+ end
41
+
42
+ class UpdateRoutingControlState
43
+ def self.build(context)
44
+ unless context.config.regional_endpoint
45
+ endpoint = context.config.endpoint.to_s
46
+ end
47
+ Aws::Route53RecoveryCluster::EndpointParameters.new(
48
+ region: context.config.region,
49
+ use_dual_stack: context.config.use_dualstack_endpoint,
50
+ use_fips: context.config.use_fips_endpoint,
51
+ endpoint: endpoint,
52
+ )
53
+ end
54
+ end
55
+
56
+ class UpdateRoutingControlStates
57
+ def self.build(context)
58
+ unless context.config.regional_endpoint
59
+ endpoint = context.config.endpoint.to_s
60
+ end
61
+ Aws::Route53RecoveryCluster::EndpointParameters.new(
62
+ region: context.config.region,
63
+ use_dual_stack: context.config.use_dualstack_endpoint,
64
+ use_fips: context.config.use_fips_endpoint,
65
+ endpoint: endpoint,
66
+ )
67
+ end
68
+ end
69
+
70
+ end
71
+ end
@@ -32,6 +32,7 @@ module Aws::Route53RecoveryCluster
32
32
  # * {EndpointTemporarilyUnavailableException}
33
33
  # * {InternalServerException}
34
34
  # * {ResourceNotFoundException}
35
+ # * {ServiceLimitExceededException}
35
36
  # * {ThrottlingException}
36
37
  # * {ValidationException}
37
38
  #
@@ -141,6 +142,41 @@ module Aws::Route53RecoveryCluster
141
142
  end
142
143
  end
143
144
 
145
+ class ServiceLimitExceededException < ServiceError
146
+
147
+ # @param [Seahorse::Client::RequestContext] context
148
+ # @param [String] message
149
+ # @param [Aws::Route53RecoveryCluster::Types::ServiceLimitExceededException] data
150
+ def initialize(context, message, data = Aws::EmptyStructure.new)
151
+ super(context, message, data)
152
+ end
153
+
154
+ # @return [String]
155
+ def message
156
+ @message || @data[:message]
157
+ end
158
+
159
+ # @return [String]
160
+ def resource_id
161
+ @data[:resource_id]
162
+ end
163
+
164
+ # @return [String]
165
+ def resource_type
166
+ @data[:resource_type]
167
+ end
168
+
169
+ # @return [String]
170
+ def limit_code
171
+ @data[:limit_code]
172
+ end
173
+
174
+ # @return [String]
175
+ def service_code
176
+ @data[:service_code]
177
+ end
178
+ end
179
+
144
180
  class ThrottlingException < ServiceError
145
181
 
146
182
  # @param [Seahorse::Client::RequestContext] context
@@ -0,0 +1,76 @@
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::Route53RecoveryCluster
12
+ module Plugins
13
+ class Endpoints < Seahorse::Client::Plugin
14
+ option(
15
+ :endpoint_provider,
16
+ doc_type: 'Aws::Route53RecoveryCluster::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::Route53RecoveryCluster::EndpointParameters`'
21
+ ) do |cfg|
22
+ Aws::Route53RecoveryCluster::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 :get_routing_control_state
60
+ Aws::Route53RecoveryCluster::Endpoints::GetRoutingControlState.build(context)
61
+ when :list_routing_controls
62
+ Aws::Route53RecoveryCluster::Endpoints::ListRoutingControls.build(context)
63
+ when :update_routing_control_state
64
+ Aws::Route53RecoveryCluster::Endpoints::UpdateRoutingControlState.build(context)
65
+ when :update_routing_control_states
66
+ Aws::Route53RecoveryCluster::Endpoints::UpdateRoutingControlStates.build(context)
67
+ end
68
+ end
69
+ end
70
+
71
+ def add_handlers(handlers, _config)
72
+ handlers.add(Handler, step: :build, priority: 75)
73
+ end
74
+ end
75
+ end
76
+ end
@@ -10,8 +10,7 @@
10
10
  module Aws::Route53RecoveryCluster
11
11
  module Types
12
12
 
13
- # You don't have sufficient permissions to query the routing control
14
- # state.
13
+ # You don't have sufficient permissions to perform this action.
15
14
  #
16
15
  # @!attribute [rw] message
17
16
  # @return [String]
@@ -69,8 +68,8 @@ module Aws::Route53RecoveryCluster
69
68
  # }
70
69
  #
71
70
  # @!attribute [rw] routing_control_arn
72
- # The Amazon Resource Number (ARN) for the routing control that you
73
- # want to get the state for.
71
+ # The Amazon Resource Name (ARN) for the routing control that you want
72
+ # to get the state for.
74
73
  # @return [String]
75
74
  #
76
75
  # @see http://docs.aws.amazon.com/goto/WebAPI/route53-recovery-cluster-2019-12-02/GetRoutingControlStateRequest AWS API Documentation
@@ -82,18 +81,23 @@ module Aws::Route53RecoveryCluster
82
81
  end
83
82
 
84
83
  # @!attribute [rw] routing_control_arn
85
- # The Amazon Resource Number (ARN) of the response.
84
+ # The Amazon Resource Name (ARN) of the response.
86
85
  # @return [String]
87
86
  #
88
87
  # @!attribute [rw] routing_control_state
89
88
  # The state of the routing control.
90
89
  # @return [String]
91
90
  #
91
+ # @!attribute [rw] routing_control_name
92
+ # The routing control name.
93
+ # @return [String]
94
+ #
92
95
  # @see http://docs.aws.amazon.com/goto/WebAPI/route53-recovery-cluster-2019-12-02/GetRoutingControlStateResponse AWS API Documentation
93
96
  #
94
97
  class GetRoutingControlStateResponse < Struct.new(
95
98
  :routing_control_arn,
96
- :routing_control_state)
99
+ :routing_control_state,
100
+ :routing_control_name)
97
101
  SENSITIVE = []
98
102
  include Aws::Structure
99
103
  end
@@ -116,7 +120,60 @@ module Aws::Route53RecoveryCluster
116
120
  include Aws::Structure
117
121
  end
118
122
 
119
- # The request references a routing control that was not found.
123
+ # @note When making an API call, you may pass ListRoutingControlsRequest
124
+ # data as a hash:
125
+ #
126
+ # {
127
+ # control_panel_arn: "Arn",
128
+ # next_token: "PageToken",
129
+ # max_results: 1,
130
+ # }
131
+ #
132
+ # @!attribute [rw] control_panel_arn
133
+ # The Amazon Resource Name (ARN) of the control panel of the routing
134
+ # controls to list.
135
+ # @return [String]
136
+ #
137
+ # @!attribute [rw] next_token
138
+ # The token for the next set of results. You receive this token from a
139
+ # previous call.
140
+ # @return [String]
141
+ #
142
+ # @!attribute [rw] max_results
143
+ # The number of routing controls objects that you want to return with
144
+ # this call. The default value is 500.
145
+ # @return [Integer]
146
+ #
147
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53-recovery-cluster-2019-12-02/ListRoutingControlsRequest AWS API Documentation
148
+ #
149
+ class ListRoutingControlsRequest < Struct.new(
150
+ :control_panel_arn,
151
+ :next_token,
152
+ :max_results)
153
+ SENSITIVE = []
154
+ include Aws::Structure
155
+ end
156
+
157
+ # @!attribute [rw] routing_controls
158
+ # The list of routing controls.
159
+ # @return [Array<Types::RoutingControl>]
160
+ #
161
+ # @!attribute [rw] next_token
162
+ # The token for the next set of results. You receive this token from a
163
+ # previous call.
164
+ # @return [String]
165
+ #
166
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53-recovery-cluster-2019-12-02/ListRoutingControlsResponse AWS API Documentation
167
+ #
168
+ class ListRoutingControlsResponse < Struct.new(
169
+ :routing_controls,
170
+ :next_token)
171
+ SENSITIVE = []
172
+ include Aws::Structure
173
+ end
174
+
175
+ # The request references a routing control or control panel that was not
176
+ # found.
120
177
  #
121
178
  # @!attribute [rw] message
122
179
  # @return [String]
@@ -139,6 +196,79 @@ module Aws::Route53RecoveryCluster
139
196
  include Aws::Structure
140
197
  end
141
198
 
199
+ # A routing control, which is a simple on/off switch that you can use to
200
+ # route traffic to cells. When a routing control state is On, traffic
201
+ # flows to a cell. When the state is Off, traffic does not flow.
202
+ #
203
+ # @!attribute [rw] control_panel_arn
204
+ # The Amazon Resource Name (ARN) of the control panel where the
205
+ # routing control is located.
206
+ # @return [String]
207
+ #
208
+ # @!attribute [rw] control_panel_name
209
+ # The name of the control panel where the routing control is located.
210
+ # @return [String]
211
+ #
212
+ # @!attribute [rw] routing_control_arn
213
+ # The Amazon Resource Name (ARN) of the routing control.
214
+ # @return [String]
215
+ #
216
+ # @!attribute [rw] routing_control_name
217
+ # The name of the routing control.
218
+ # @return [String]
219
+ #
220
+ # @!attribute [rw] routing_control_state
221
+ # The current state of the routing control. When a routing control
222
+ # state is On, traffic flows to a cell. When the state is Off, traffic
223
+ # does not flow.
224
+ # @return [String]
225
+ #
226
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53-recovery-cluster-2019-12-02/RoutingControl AWS API Documentation
227
+ #
228
+ class RoutingControl < Struct.new(
229
+ :control_panel_arn,
230
+ :control_panel_name,
231
+ :routing_control_arn,
232
+ :routing_control_name,
233
+ :routing_control_state)
234
+ SENSITIVE = []
235
+ include Aws::Structure
236
+ end
237
+
238
+ # The request can't update that many routing control states at the same
239
+ # time. Try again with fewer routing control states.
240
+ #
241
+ # @!attribute [rw] message
242
+ # @return [String]
243
+ #
244
+ # @!attribute [rw] resource_id
245
+ # The resource identifier of the limit that was exceeded.
246
+ # @return [String]
247
+ #
248
+ # @!attribute [rw] resource_type
249
+ # The resource type of the limit that was exceeded.
250
+ # @return [String]
251
+ #
252
+ # @!attribute [rw] limit_code
253
+ # The code of the limit that was exceeded.
254
+ # @return [String]
255
+ #
256
+ # @!attribute [rw] service_code
257
+ # The service code of the limit that was exceeded.
258
+ # @return [String]
259
+ #
260
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53-recovery-cluster-2019-12-02/ServiceLimitExceededException AWS API Documentation
261
+ #
262
+ class ServiceLimitExceededException < Struct.new(
263
+ :message,
264
+ :resource_id,
265
+ :resource_type,
266
+ :limit_code,
267
+ :service_code)
268
+ SENSITIVE = []
269
+ include Aws::Structure
270
+ end
271
+
142
272
  # The request was denied because of request throttling.
143
273
  #
144
274
  # @!attribute [rw] message
@@ -168,7 +298,7 @@ module Aws::Route53RecoveryCluster
168
298
  # }
169
299
  #
170
300
  # @!attribute [rw] routing_control_arn
171
- # The Amazon Resource Number (ARN) for a routing control state entry.
301
+ # The Amazon Resource Name (ARN) for a routing control state entry.
172
302
  # @return [String]
173
303
  #
174
304
  # @!attribute [rw] routing_control_state
@@ -194,8 +324,8 @@ module Aws::Route53RecoveryCluster
194
324
  # }
195
325
  #
196
326
  # @!attribute [rw] routing_control_arn
197
- # The Amazon Resource Number (ARN) for the routing control that you
198
- # want to update the state for.
327
+ # The Amazon Resource Name (ARN) for the routing control that you want
328
+ # to update the state for.
199
329
  # @return [String]
200
330
  #
201
331
  # @!attribute [rw] routing_control_state
@@ -204,10 +334,10 @@ module Aws::Route53RecoveryCluster
204
334
  # @return [String]
205
335
  #
206
336
  # @!attribute [rw] safety_rules_to_override
207
- # The Amazon Resource Numbers (ARNs) for the safety rules that you
208
- # want to override when you're updating the state of a routing
209
- # control. You can override one safety rule or multiple safety rules
210
- # by including one or more ARNs, separated by commas.
337
+ # The Amazon Resource Names (ARNs) for the safety rules that you want
338
+ # to override when you're updating the state of a routing control.
339
+ # You can override one safety rule or multiple safety rules by
340
+ # including one or more ARNs, separated by commas.
211
341
  #
212
342
  # For more information, see [ Override safety rules to reroute
213
343
  # traffic][1] in the Amazon Route 53 Application Recovery Controller
@@ -250,10 +380,10 @@ module Aws::Route53RecoveryCluster
250
380
  # @return [Array<Types::UpdateRoutingControlStateEntry>]
251
381
  #
252
382
  # @!attribute [rw] safety_rules_to_override
253
- # The Amazon Resource Numbers (ARNs) for the safety rules that you
254
- # want to override when you're updating routing control states. You
255
- # can override one safety rule or multiple safety rules by including
256
- # one or more ARNs, separated by commas.
383
+ # The Amazon Resource Names (ARNs) for the safety rules that you want
384
+ # to override when you're updating routing control states. You can
385
+ # override one safety rule or multiple safety rules by including one
386
+ # or more ARNs, separated by commas.
257
387
  #
258
388
  # For more information, see [ Override safety rules to reroute
259
389
  # traffic][1] in the Amazon Route 53 Application Recovery Controller
@@ -13,9 +13,13 @@ require 'aws-sigv4'
13
13
 
14
14
  require_relative 'aws-sdk-route53recoverycluster/types'
15
15
  require_relative 'aws-sdk-route53recoverycluster/client_api'
16
+ require_relative 'aws-sdk-route53recoverycluster/plugins/endpoints.rb'
16
17
  require_relative 'aws-sdk-route53recoverycluster/client'
17
18
  require_relative 'aws-sdk-route53recoverycluster/errors'
18
19
  require_relative 'aws-sdk-route53recoverycluster/resource'
20
+ require_relative 'aws-sdk-route53recoverycluster/endpoint_parameters'
21
+ require_relative 'aws-sdk-route53recoverycluster/endpoint_provider'
22
+ require_relative 'aws-sdk-route53recoverycluster/endpoints'
19
23
  require_relative 'aws-sdk-route53recoverycluster/customizations'
20
24
 
21
25
  # This module provides support for Route53 Recovery Cluster. This module is available in the
@@ -48,6 +52,6 @@ require_relative 'aws-sdk-route53recoverycluster/customizations'
48
52
  # @!group service
49
53
  module Aws::Route53RecoveryCluster
50
54
 
51
- GEM_VERSION = '1.10.0'
55
+ GEM_VERSION = '1.12.0'
52
56
 
53
57
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-route53recoverycluster
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.10.0
4
+ version: 1.12.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-02-28 00:00:00.000000000 Z
11
+ date: 2022-10-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core
@@ -19,7 +19,7 @@ dependencies:
19
19
  version: '3'
20
20
  - - ">="
21
21
  - !ruby/object:Gem::Version
22
- version: 3.127.0
22
+ version: 3.165.0
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
@@ -29,7 +29,7 @@ dependencies:
29
29
  version: '3'
30
30
  - - ">="
31
31
  - !ruby/object:Gem::Version
32
- version: 3.127.0
32
+ version: 3.165.0
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: aws-sigv4
35
35
  requirement: !ruby/object:Gem::Requirement
@@ -59,7 +59,11 @@ files:
59
59
  - lib/aws-sdk-route53recoverycluster/client.rb
60
60
  - lib/aws-sdk-route53recoverycluster/client_api.rb
61
61
  - lib/aws-sdk-route53recoverycluster/customizations.rb
62
+ - lib/aws-sdk-route53recoverycluster/endpoint_parameters.rb
63
+ - lib/aws-sdk-route53recoverycluster/endpoint_provider.rb
64
+ - lib/aws-sdk-route53recoverycluster/endpoints.rb
62
65
  - lib/aws-sdk-route53recoverycluster/errors.rb
66
+ - lib/aws-sdk-route53recoverycluster/plugins/endpoints.rb
63
67
  - lib/aws-sdk-route53recoverycluster/resource.rb
64
68
  - lib/aws-sdk-route53recoverycluster/types.rb
65
69
  homepage: https://github.com/aws/aws-sdk-ruby