aws-sdk-core 3.178.0 → 3.233.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 +4 -4
- data/CHANGELOG.md +709 -0
- data/VERSION +1 -1
- data/lib/aws-defaults/default_configuration.rb +1 -2
- data/lib/aws-defaults.rb +4 -1
- data/lib/aws-sdk-core/arn.rb +1 -3
- data/lib/aws-sdk-core/assume_role_credentials.rb +13 -5
- data/lib/aws-sdk-core/assume_role_web_identity_credentials.rb +14 -7
- data/lib/aws-sdk-core/binary/decode_handler.rb +3 -9
- data/lib/aws-sdk-core/binary/encode_handler.rb +1 -1
- data/lib/aws-sdk-core/binary/event_builder.rb +34 -37
- data/lib/aws-sdk-core/binary/event_stream_decoder.rb +1 -0
- data/lib/aws-sdk-core/binary/event_stream_encoder.rb +4 -3
- data/lib/aws-sdk-core/cbor/decoder.rb +308 -0
- data/lib/aws-sdk-core/cbor/encoder.rb +243 -0
- data/lib/aws-sdk-core/cbor.rb +53 -0
- data/lib/aws-sdk-core/client_side_monitoring.rb +9 -0
- data/lib/aws-sdk-core/client_stubs.rb +33 -55
- data/lib/aws-sdk-core/credential_provider.rb +5 -1
- data/lib/aws-sdk-core/credential_provider_chain.rb +38 -11
- data/lib/aws-sdk-core/credentials.rb +19 -6
- data/lib/aws-sdk-core/ec2_metadata.rb +1 -1
- data/lib/aws-sdk-core/ecs_credentials.rb +79 -11
- data/lib/aws-sdk-core/endpoints/endpoint.rb +3 -1
- data/lib/aws-sdk-core/endpoints/matchers.rb +21 -19
- data/lib/aws-sdk-core/endpoints.rb +101 -21
- data/lib/aws-sdk-core/error_handler.rb +46 -0
- data/lib/aws-sdk-core/errors.rb +14 -5
- data/lib/aws-sdk-core/event_emitter.rb +1 -17
- data/lib/aws-sdk-core/ini_parser.rb +8 -1
- data/lib/aws-sdk-core/instance_profile_credentials.rb +168 -155
- data/lib/aws-sdk-core/json/builder.rb +8 -1
- data/lib/aws-sdk-core/json/error_handler.rb +29 -13
- data/lib/aws-sdk-core/json/handler.rb +13 -6
- data/lib/aws-sdk-core/json/json_engine.rb +3 -1
- data/lib/aws-sdk-core/json/oj_engine.rb +7 -1
- data/lib/aws-sdk-core/json/parser.rb +33 -3
- data/lib/aws-sdk-core/json.rb +43 -14
- data/lib/aws-sdk-core/log/param_filter.rb +2 -2
- data/lib/aws-sdk-core/log/param_formatter.rb +7 -3
- data/lib/aws-sdk-core/log.rb +10 -0
- data/lib/aws-sdk-core/lru_cache.rb +75 -0
- data/lib/aws-sdk-core/pageable_response.rb +1 -1
- data/lib/aws-sdk-core/param_validator.rb +9 -4
- data/lib/aws-sdk-core/plugins/bearer_authorization.rb +2 -0
- data/lib/aws-sdk-core/plugins/checksum_algorithm.rb +332 -167
- data/lib/aws-sdk-core/plugins/client_metrics_plugin.rb +1 -1
- data/lib/aws-sdk-core/plugins/client_metrics_send_plugin.rb +14 -2
- data/lib/aws-sdk-core/plugins/credentials_configuration.rb +78 -56
- data/lib/aws-sdk-core/plugins/endpoint_pattern.rb +40 -32
- data/lib/aws-sdk-core/plugins/global_configuration.rb +8 -9
- data/lib/aws-sdk-core/plugins/http_checksum.rb +3 -8
- data/lib/aws-sdk-core/plugins/invocation_id.rb +1 -11
- data/lib/aws-sdk-core/plugins/logging.rb +2 -0
- data/lib/aws-sdk-core/plugins/protocols/api_gateway.rb +3 -1
- data/lib/aws-sdk-core/plugins/protocols/ec2.rb +2 -24
- data/lib/aws-sdk-core/plugins/protocols/json_rpc.rb +6 -8
- data/lib/aws-sdk-core/plugins/protocols/query.rb +4 -2
- data/lib/aws-sdk-core/plugins/protocols/rest_json.rb +3 -15
- data/lib/aws-sdk-core/plugins/protocols/rest_xml.rb +3 -0
- data/lib/aws-sdk-core/plugins/protocols/rpc_v2.rb +17 -0
- data/lib/aws-sdk-core/plugins/regional_endpoint.rb +74 -25
- data/lib/aws-sdk-core/plugins/request_compression.rb +11 -2
- data/lib/aws-sdk-core/plugins/retry_errors.rb +12 -3
- data/lib/aws-sdk-core/plugins/sign.rb +55 -34
- data/lib/aws-sdk-core/plugins/signature_v2.rb +2 -1
- data/lib/aws-sdk-core/plugins/signature_v4.rb +2 -1
- data/lib/aws-sdk-core/plugins/stub_responses.rb +59 -9
- data/lib/aws-sdk-core/plugins/telemetry.rb +75 -0
- data/lib/aws-sdk-core/plugins/transfer_encoding.rb +16 -9
- data/lib/aws-sdk-core/plugins/user_agent.rb +101 -26
- data/lib/aws-sdk-core/plugins.rb +39 -0
- data/lib/aws-sdk-core/process_credentials.rb +48 -29
- data/lib/aws-sdk-core/query/ec2_handler.rb +27 -0
- data/lib/aws-sdk-core/query/ec2_param_builder.rb +5 -7
- data/lib/aws-sdk-core/query/handler.rb +4 -4
- data/lib/aws-sdk-core/query/param_builder.rb +2 -2
- data/lib/aws-sdk-core/query.rb +2 -1
- data/lib/aws-sdk-core/refreshing_credentials.rb +12 -6
- data/lib/aws-sdk-core/resources.rb +8 -0
- data/lib/aws-sdk-core/rest/content_type_handler.rb +60 -0
- data/lib/aws-sdk-core/rest/handler.rb +3 -4
- data/lib/aws-sdk-core/rest/request/body.rb +32 -5
- data/lib/aws-sdk-core/rest/request/endpoint.rb +24 -4
- data/lib/aws-sdk-core/rest/request/headers.rb +15 -7
- data/lib/aws-sdk-core/rest/request/querystring_builder.rb +62 -36
- data/lib/aws-sdk-core/rest/response/body.rb +15 -1
- data/lib/aws-sdk-core/rest/response/header_list_parser.rb +79 -0
- data/lib/aws-sdk-core/rest/response/headers.rb +8 -3
- data/lib/aws-sdk-core/rest.rb +1 -0
- data/lib/aws-sdk-core/rpc_v2/builder.rb +62 -0
- data/lib/aws-sdk-core/rpc_v2/cbor_engine.rb +18 -0
- data/lib/aws-sdk-core/rpc_v2/content_type_handler.rb +47 -0
- data/lib/aws-sdk-core/rpc_v2/error_handler.rb +95 -0
- data/lib/aws-sdk-core/rpc_v2/handler.rb +79 -0
- data/lib/aws-sdk-core/rpc_v2/parser.rb +98 -0
- data/lib/aws-sdk-core/rpc_v2.rb +69 -0
- data/lib/aws-sdk-core/shared_config.rb +113 -41
- data/lib/aws-sdk-core/shared_credentials.rb +1 -7
- data/lib/aws-sdk-core/sso_credentials.rb +4 -1
- data/lib/aws-sdk-core/static_token_provider.rb +1 -2
- data/lib/aws-sdk-core/stubbing/protocols/ec2.rb +12 -11
- data/lib/aws-sdk-core/stubbing/protocols/json.rb +11 -10
- data/lib/aws-sdk-core/stubbing/protocols/query.rb +7 -6
- data/lib/aws-sdk-core/stubbing/protocols/rest.rb +2 -1
- data/lib/aws-sdk-core/stubbing/protocols/rest_json.rb +9 -8
- data/lib/aws-sdk-core/stubbing/protocols/rest_xml.rb +6 -5
- data/lib/aws-sdk-core/stubbing/protocols/rpc_v2.rb +39 -0
- data/lib/aws-sdk-core/stubbing/stub_data.rb +11 -0
- data/lib/aws-sdk-core/stubbing.rb +22 -0
- data/lib/aws-sdk-core/telemetry/base.rb +177 -0
- data/lib/aws-sdk-core/telemetry/no_op.rb +70 -0
- data/lib/aws-sdk-core/telemetry/otel.rb +235 -0
- data/lib/aws-sdk-core/telemetry/span_kind.rb +22 -0
- data/lib/aws-sdk-core/telemetry/span_status.rb +59 -0
- data/lib/aws-sdk-core/telemetry.rb +78 -0
- data/lib/aws-sdk-core/token.rb +3 -3
- data/lib/aws-sdk-core/token_provider.rb +4 -0
- data/lib/aws-sdk-core/token_provider_chain.rb +2 -6
- data/lib/aws-sdk-core/util.rb +41 -1
- data/lib/aws-sdk-core/waiters/poller.rb +10 -5
- data/lib/aws-sdk-core/xml/builder.rb +17 -9
- data/lib/aws-sdk-core/xml/error_handler.rb +35 -43
- data/lib/aws-sdk-core/xml/parser/frame.rb +4 -20
- data/lib/aws-sdk-core/xml/parser/stack.rb +2 -0
- data/lib/aws-sdk-core/xml/parser.rb +2 -6
- data/lib/aws-sdk-core.rb +82 -107
- data/lib/aws-sdk-sso/client.rb +189 -96
- data/lib/aws-sdk-sso/client_api.rb +7 -0
- data/lib/aws-sdk-sso/endpoint_parameters.rb +9 -6
- data/lib/aws-sdk-sso/endpoint_provider.rb +30 -28
- data/lib/aws-sdk-sso/endpoints.rb +2 -54
- data/lib/aws-sdk-sso/plugins/endpoints.rb +23 -22
- data/lib/aws-sdk-sso/types.rb +1 -0
- data/lib/aws-sdk-sso.rb +15 -11
- data/lib/aws-sdk-ssooidc/client.rb +609 -129
- data/lib/aws-sdk-ssooidc/client_api.rb +94 -1
- data/lib/aws-sdk-ssooidc/endpoint_parameters.rb +9 -6
- data/lib/aws-sdk-ssooidc/endpoint_provider.rb +30 -28
- data/lib/aws-sdk-ssooidc/endpoints.rb +2 -40
- data/lib/aws-sdk-ssooidc/errors.rb +62 -0
- data/lib/aws-sdk-ssooidc/plugins/endpoints.rb +23 -20
- data/lib/aws-sdk-ssooidc/types.rb +419 -53
- data/lib/aws-sdk-ssooidc.rb +15 -11
- data/lib/aws-sdk-sts/client.rb +414 -147
- data/lib/aws-sdk-sts/client_api.rb +48 -9
- data/lib/aws-sdk-sts/customizations.rb +5 -2
- data/lib/aws-sdk-sts/endpoint_parameters.rb +10 -9
- data/lib/aws-sdk-sts/endpoint_provider.rb +52 -57
- data/lib/aws-sdk-sts/endpoints.rb +2 -118
- data/lib/aws-sdk-sts/errors.rb +15 -0
- data/lib/aws-sdk-sts/plugins/endpoints.rb +23 -30
- data/lib/aws-sdk-sts/presigner.rb +3 -7
- data/lib/aws-sdk-sts/types.rb +209 -27
- data/lib/aws-sdk-sts.rb +15 -11
- data/lib/seahorse/client/async_base.rb +4 -5
- data/lib/seahorse/client/async_response.rb +19 -0
- data/lib/seahorse/client/base.rb +18 -21
- data/lib/seahorse/client/h2/connection.rb +18 -28
- data/lib/seahorse/client/h2/handler.rb +14 -3
- data/lib/seahorse/client/handler.rb +1 -1
- data/lib/seahorse/client/http/response.rb +1 -1
- data/lib/seahorse/client/net_http/connection_pool.rb +15 -12
- data/lib/seahorse/client/net_http/handler.rb +21 -9
- data/lib/seahorse/client/net_http/patches.rb +1 -4
- data/lib/seahorse/client/networking_error.rb +1 -1
- data/lib/seahorse/client/plugin.rb +9 -0
- data/lib/seahorse/client/plugins/endpoint.rb +0 -1
- data/lib/seahorse/client/plugins/h2.rb +4 -4
- data/lib/seahorse/client/plugins/net_http.rb +57 -16
- data/lib/seahorse/client/plugins/request_callback.rb +31 -0
- data/lib/seahorse/client/request_context.rb +9 -2
- data/lib/seahorse/client/response.rb +8 -0
- data/lib/seahorse/model/shapes.rb +2 -2
- data/lib/seahorse/util.rb +2 -1
- data/sig/aws-sdk-core/async_client_stubs.rbs +21 -0
- data/sig/aws-sdk-core/client_stubs.rbs +10 -0
- data/sig/aws-sdk-core/errors.rbs +22 -0
- data/sig/aws-sdk-core/resources/collection.rbs +21 -0
- data/sig/aws-sdk-core/structure.rbs +4 -0
- data/sig/aws-sdk-core/telemetry/base.rbs +46 -0
- data/sig/aws-sdk-core/telemetry/otel.rbs +22 -0
- data/sig/aws-sdk-core/telemetry/span_kind.rbs +15 -0
- data/sig/aws-sdk-core/telemetry/span_status.rbs +24 -0
- data/sig/aws-sdk-core/waiters/errors.rbs +20 -0
- data/sig/aws-sdk-core.rbs +7 -0
- data/sig/seahorse/client/async_base.rbs +18 -0
- data/sig/seahorse/client/base.rbs +25 -0
- data/sig/seahorse/client/handler_builder.rbs +16 -0
- data/sig/seahorse/client/response.rbs +61 -0
- metadata +105 -23
- /data/lib/aws-sdk-core/xml/parser/{engines/libxml.rb → libxml_engine.rb} +0 -0
- /data/lib/aws-sdk-core/xml/parser/{engines/nokogiri.rb → nokogiri_engine.rb} +0 -0
- /data/lib/aws-sdk-core/xml/parser/{engines/oga.rb → oga_engine.rb} +0 -0
- /data/lib/aws-sdk-core/xml/parser/{engines/ox.rb → ox_engine.rb} +0 -0
- /data/lib/aws-sdk-core/xml/parser/{engines/rexml.rb → rexml_engine.rb} +0 -0
@@ -30,6 +30,12 @@ module Seahorse
|
|
30
30
|
# @return [StandardError, nil]
|
31
31
|
attr_accessor :error
|
32
32
|
|
33
|
+
# @return [String, nil] returns the algorithm used to validate
|
34
|
+
# the response checksum. Returns nil if no verification was done.
|
35
|
+
def checksum_validated
|
36
|
+
context[:http_checksum][:validated] if context[:http_checksum]
|
37
|
+
end
|
38
|
+
|
33
39
|
# @overload on(status_code, &block)
|
34
40
|
# @param [Integer] status_code The block will be
|
35
41
|
# triggered only for responses with the given status code.
|
@@ -69,6 +75,8 @@ module Seahorse
|
|
69
75
|
# Necessary to define as a subclass of Delegator
|
70
76
|
# @api private
|
71
77
|
def __getobj__
|
78
|
+
return yield if block_given? && !defined?(@data)
|
79
|
+
|
72
80
|
@data
|
73
81
|
end
|
74
82
|
|
@@ -75,7 +75,7 @@ module Seahorse
|
|
75
75
|
|
76
76
|
# @return [String, nil]
|
77
77
|
def location_name
|
78
|
-
@location_name || (shape && shape[
|
78
|
+
@location_name || (shape && shape['locationName'])
|
79
79
|
end
|
80
80
|
|
81
81
|
def location_name= location_name
|
@@ -86,7 +86,7 @@ module Seahorse
|
|
86
86
|
def [](key)
|
87
87
|
if @metadata.key?(key.to_s)
|
88
88
|
@metadata[key.to_s]
|
89
|
-
|
89
|
+
elsif @shape
|
90
90
|
@shape[key.to_s]
|
91
91
|
end
|
92
92
|
end
|
data/lib/seahorse/util.rb
CHANGED
@@ -0,0 +1,21 @@
|
|
1
|
+
module Aws
|
2
|
+
module AsyncClientStubs
|
3
|
+
include ClientStubs
|
4
|
+
|
5
|
+
def send_events: () -> untyped
|
6
|
+
|
7
|
+
class StubsStream
|
8
|
+
def initialize: () -> void
|
9
|
+
|
10
|
+
attr_accessor send_events: untyped
|
11
|
+
|
12
|
+
attr_reader state: Symbol
|
13
|
+
|
14
|
+
def data: (untyped bytes, ?::Hash[untyped, untyped] options) -> untyped
|
15
|
+
|
16
|
+
def closed?: () -> bool
|
17
|
+
|
18
|
+
def close: () -> void
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
@@ -0,0 +1,10 @@
|
|
1
|
+
module Aws
|
2
|
+
module ClientStubs
|
3
|
+
def stub_responses: (Symbol operation_name, *untyped stubs) -> void
|
4
|
+
|
5
|
+
def api_requests: (?exclude_presign: bool) -> Array[{ operation_name: Symbol, params: untyped, context: untyped }]
|
6
|
+
| (?Hash[:exclude_presign, bool] options) -> Array[{ operation_name: Symbol, params: untyped, context: untyped }]
|
7
|
+
|
8
|
+
def stub_data: (Symbol operation_name, ?untyped data) -> untyped
|
9
|
+
end
|
10
|
+
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
module Aws
|
2
|
+
module Errors
|
3
|
+
class NonSupportedRubyVersionError < RuntimeError
|
4
|
+
end
|
5
|
+
|
6
|
+
# The base class for all errors returned by an Amazon Web Service.
|
7
|
+
# All ~400 level client errors and ~500 level server errors are raised
|
8
|
+
# as service errors. This indicates it was an error returned from the
|
9
|
+
# service and not one generated by the client.
|
10
|
+
class ServiceError < RuntimeError
|
11
|
+
def initialize: (untyped context, String? message, ?untyped data) -> void
|
12
|
+
|
13
|
+
attr_reader code: String
|
14
|
+
|
15
|
+
attr_reader context: untyped
|
16
|
+
|
17
|
+
attr_reader data: untyped
|
18
|
+
|
19
|
+
attr_accessor self.code: String?
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
@@ -0,0 +1,21 @@
|
|
1
|
+
module Aws
|
2
|
+
module Resources
|
3
|
+
class Collection[T]
|
4
|
+
include Enumerable[T]
|
5
|
+
|
6
|
+
def initialize: (Enumerable[Enumerable[T]] batches, ?size: Integer, ?limit: Integer) -> void
|
7
|
+
|
8
|
+
def each: () -> Enumerator[T, untyped]
|
9
|
+
| () { (T) -> untyped } -> Enumerator[T, untyped]
|
10
|
+
|
11
|
+
def size: () -> Integer?
|
12
|
+
|
13
|
+
alias length size
|
14
|
+
|
15
|
+
def first: () -> T?
|
16
|
+
| (Integer) -> self
|
17
|
+
|
18
|
+
def limit: (Integer) -> self
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
@@ -0,0 +1,46 @@
|
|
1
|
+
module Aws
|
2
|
+
module Telemetry
|
3
|
+
class TelemetryProviderBase
|
4
|
+
def initialize: (?tracer_provider: TracerProviderBase, ?context_manager: ContextManagerBase) -> void
|
5
|
+
attr_reader tracer_provider: TracerProviderBase
|
6
|
+
|
7
|
+
attr_reader context_manager: ContextManagerBase
|
8
|
+
end
|
9
|
+
|
10
|
+
class TracerProviderBase
|
11
|
+
def tracer: (?String name) -> TracerBase
|
12
|
+
end
|
13
|
+
|
14
|
+
class TracerBase
|
15
|
+
def start_span: (String name, ?untyped with_parent, ?Hash[String, untyped] attributes, ?SpanKind kind) -> SpanBase
|
16
|
+
|
17
|
+
def in_span: (String name, ?Hash[String, untyped] attributes, ?SpanKind kind) -> SpanBase
|
18
|
+
|
19
|
+
def current_span: () -> SpanBase
|
20
|
+
end
|
21
|
+
|
22
|
+
class SpanBase
|
23
|
+
def set_attribute: (String key, untyped value) -> self
|
24
|
+
alias []= set_attribute
|
25
|
+
|
26
|
+
def add_attributes: (Hash[String, untyped] attributes) -> self
|
27
|
+
|
28
|
+
def add_event: (String name, ?Hash[String, untyped] attributes) -> self
|
29
|
+
|
30
|
+
def status=: (SpanStatus status) -> void
|
31
|
+
|
32
|
+
def finish: (?Time end_timestamp) -> self
|
33
|
+
|
34
|
+
def record_exception: (untyped exception, ?Hash[String, untyped] attributes) -> void
|
35
|
+
end
|
36
|
+
|
37
|
+
class ContextManagerBase
|
38
|
+
def current: () -> untyped
|
39
|
+
|
40
|
+
def attach: (untyped context) -> untyped
|
41
|
+
|
42
|
+
def detach: (untyped token) -> bool
|
43
|
+
end
|
44
|
+
|
45
|
+
end
|
46
|
+
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
module Aws
|
2
|
+
module Telemetry
|
3
|
+
class OTelProvider < TelemetryProviderBase
|
4
|
+
def initialize: () -> void
|
5
|
+
end
|
6
|
+
|
7
|
+
class OTelTracerProvider < TracerProviderBase
|
8
|
+
def initialize: () -> void
|
9
|
+
end
|
10
|
+
|
11
|
+
class OTelTracer < TracerBase
|
12
|
+
def initialize: (untyped tracer) -> void
|
13
|
+
end
|
14
|
+
|
15
|
+
class OTelSpan < SpanBase
|
16
|
+
def initialize: (untyped span) -> void
|
17
|
+
end
|
18
|
+
|
19
|
+
class OTelContextManager < ContextManagerBase
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
@@ -0,0 +1,24 @@
|
|
1
|
+
module Aws
|
2
|
+
module Telemetry
|
3
|
+
class SpanStatus
|
4
|
+
|
5
|
+
def self.unset: (?::String description) -> SpanStatus
|
6
|
+
|
7
|
+
def self.ok: (?::String description) -> SpanStatus
|
8
|
+
|
9
|
+
def self.error: (?::String description) -> SpanStatus
|
10
|
+
|
11
|
+
def initialize: (Integer code, ?description: ::String) -> void
|
12
|
+
|
13
|
+
attr_reader code: Integer
|
14
|
+
|
15
|
+
attr_reader description: String
|
16
|
+
|
17
|
+
OK: 0
|
18
|
+
|
19
|
+
UNSET: 1
|
20
|
+
|
21
|
+
ERROR: 2
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
@@ -0,0 +1,20 @@
|
|
1
|
+
module Aws
|
2
|
+
module Waiters
|
3
|
+
module Errors
|
4
|
+
class WaiterFailed < StandardError
|
5
|
+
end
|
6
|
+
|
7
|
+
class FailureStateError < WaiterFailed
|
8
|
+
end
|
9
|
+
|
10
|
+
class TooManyAttemptsError < WaiterFailed
|
11
|
+
end
|
12
|
+
|
13
|
+
class UnexpectedError < WaiterFailed
|
14
|
+
end
|
15
|
+
|
16
|
+
class NoSuchWaiterError < ArgumentError
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
@@ -0,0 +1,18 @@
|
|
1
|
+
module Seahorse
|
2
|
+
module Client
|
3
|
+
class AsyncBase < Base
|
4
|
+
|
5
|
+
def self.new: (?untyped options) -> instance
|
6
|
+
|
7
|
+
attr_reader connection: untyped
|
8
|
+
|
9
|
+
def operation_names: () -> Array[Symbol]
|
10
|
+
|
11
|
+
def close_connection: () -> Symbol
|
12
|
+
|
13
|
+
def new_connection: () -> untyped
|
14
|
+
|
15
|
+
def connection_errors: () -> Array[untyped]
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
module Seahorse
|
2
|
+
module Client
|
3
|
+
class Base
|
4
|
+
include HandlerBuilder
|
5
|
+
|
6
|
+
def self.new: (?untyped options) -> instance
|
7
|
+
def self.add_plugin: (untyped plugin) -> untyped
|
8
|
+
def self.remove_plugin: (untyped plugin) -> untyped
|
9
|
+
def self.clear_plugins: () -> untyped
|
10
|
+
def self.set_plugins: (Array[untyped] plugins) -> untyped
|
11
|
+
def self.plugins: () -> Array[untyped]
|
12
|
+
def self.api: () -> untyped
|
13
|
+
def self.set_api: (untyped api) -> untyped
|
14
|
+
def self.define: (?untyped options) -> untyped
|
15
|
+
|
16
|
+
attr_reader config: untyped
|
17
|
+
|
18
|
+
attr_reader handlers: untyped
|
19
|
+
|
20
|
+
def build_request: (_ToS operation_name, ?untyped params) -> untyped
|
21
|
+
|
22
|
+
def operation_names: () -> Array[Symbol]
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
@@ -0,0 +1,16 @@
|
|
1
|
+
module Seahorse
|
2
|
+
module Client
|
3
|
+
# This module provides the ability to add handlers to a class or
|
4
|
+
# module. The including class or extending module must respond to
|
5
|
+
# `#handlers`, returning a {HandlerList}.
|
6
|
+
module HandlerBuilder
|
7
|
+
def handle_request: (*untyped) { (untyped context) -> void } -> untyped
|
8
|
+
|
9
|
+
def handle_response: (*untyped) { (untyped resp) -> void } -> untyped
|
10
|
+
|
11
|
+
def handle: (*untyped) ?{ (untyped context) -> void } -> untyped
|
12
|
+
|
13
|
+
alias handler handle
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
@@ -0,0 +1,61 @@
|
|
1
|
+
module Seahorse
|
2
|
+
module Client
|
3
|
+
# RBS does not support Delegator.
|
4
|
+
# the behavior is mimicked `Seahorse::Client::Response` as much as possible.
|
5
|
+
interface _ResponseCommon
|
6
|
+
def context: () -> untyped
|
7
|
+
|
8
|
+
def checksum_validated: () -> ::String?
|
9
|
+
|
10
|
+
def on: (Integer) { (self) -> void } -> self
|
11
|
+
| (Range[Integer]) { (self) -> void } -> self
|
12
|
+
|
13
|
+
def on_success: () { (self) -> void } -> self
|
14
|
+
|
15
|
+
def successful?: () -> bool
|
16
|
+
end
|
17
|
+
|
18
|
+
# The interface for response success
|
19
|
+
# An interface representing response is provided for each operation,
|
20
|
+
# and _ResponseSuccess is embedded in this interface.
|
21
|
+
# @example client.rbs
|
22
|
+
#
|
23
|
+
# interface _OperationResponseSuccess
|
24
|
+
# include ::Seahorse::Client::_ResponseSuccess[Types::OperationOutput]
|
25
|
+
# def foo: () -> ::String
|
26
|
+
# def bar: () -> ::Integer
|
27
|
+
# end
|
28
|
+
# @client.operation: () -> _OperationResponseSuccess
|
29
|
+
interface _ResponseSuccess[DATA]
|
30
|
+
include _ResponseCommon
|
31
|
+
|
32
|
+
def data: () -> DATA
|
33
|
+
|
34
|
+
def data=: (DATA) -> DATA
|
35
|
+
|
36
|
+
def error: () -> nil
|
37
|
+
|
38
|
+
def error=: (nil) -> nil
|
39
|
+
end
|
40
|
+
|
41
|
+
# The interface for response error
|
42
|
+
# It is useful to use annotation on ruby code
|
43
|
+
# @example foo.rb
|
44
|
+
#
|
45
|
+
# client = Client.new(raise_response_errors: false)
|
46
|
+
# # @type var response: ::Seahorse::Client::_ResponseError
|
47
|
+
# response = client.operation()
|
48
|
+
# response.error.message
|
49
|
+
interface _ResponseError
|
50
|
+
include _ResponseCommon
|
51
|
+
|
52
|
+
def data: () -> nil
|
53
|
+
|
54
|
+
def data=: (nil) -> nil
|
55
|
+
|
56
|
+
def error: () -> StandardError
|
57
|
+
|
58
|
+
def error=: (StandardError) -> StandardError
|
59
|
+
end
|
60
|
+
end
|
61
|
+
end
|