aws-sdk-core 3.100.0 → 3.101.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (189) hide show
  1. checksums.yaml +4 -4
  2. data/VERSION +1 -1
  3. data/lib/aws-sdk-core.rb +2 -0
  4. data/lib/aws-sdk-core/arn.rb +2 -0
  5. data/lib/aws-sdk-core/arn_parser.rb +2 -0
  6. data/lib/aws-sdk-core/assume_role_credentials.rb +2 -0
  7. data/lib/aws-sdk-core/assume_role_web_identity_credentials.rb +2 -0
  8. data/lib/aws-sdk-core/async_client_stubs.rb +2 -0
  9. data/lib/aws-sdk-core/binary.rb +2 -0
  10. data/lib/aws-sdk-core/binary/decode_handler.rb +2 -0
  11. data/lib/aws-sdk-core/binary/encode_handler.rb +2 -0
  12. data/lib/aws-sdk-core/binary/event_builder.rb +2 -0
  13. data/lib/aws-sdk-core/binary/event_parser.rb +2 -0
  14. data/lib/aws-sdk-core/binary/event_stream_decoder.rb +2 -0
  15. data/lib/aws-sdk-core/binary/event_stream_encoder.rb +2 -0
  16. data/lib/aws-sdk-core/client_side_monitoring/publisher.rb +2 -0
  17. data/lib/aws-sdk-core/client_side_monitoring/request_metrics.rb +2 -0
  18. data/lib/aws-sdk-core/client_stubs.rb +2 -0
  19. data/lib/aws-sdk-core/credential_provider.rb +2 -0
  20. data/lib/aws-sdk-core/credential_provider_chain.rb +2 -0
  21. data/lib/aws-sdk-core/credentials.rb +2 -0
  22. data/lib/aws-sdk-core/deprecations.rb +2 -0
  23. data/lib/aws-sdk-core/eager_loader.rb +2 -0
  24. data/lib/aws-sdk-core/ecs_credentials.rb +2 -0
  25. data/lib/aws-sdk-core/endpoint_cache.rb +2 -0
  26. data/lib/aws-sdk-core/errors.rb +2 -0
  27. data/lib/aws-sdk-core/event_emitter.rb +2 -0
  28. data/lib/aws-sdk-core/ini_parser.rb +2 -0
  29. data/lib/aws-sdk-core/instance_profile_credentials.rb +2 -0
  30. data/lib/aws-sdk-core/json.rb +2 -0
  31. data/lib/aws-sdk-core/json/builder.rb +2 -0
  32. data/lib/aws-sdk-core/json/error_handler.rb +2 -0
  33. data/lib/aws-sdk-core/json/handler.rb +2 -0
  34. data/lib/aws-sdk-core/json/json_engine.rb +2 -0
  35. data/lib/aws-sdk-core/json/oj_engine.rb +2 -0
  36. data/lib/aws-sdk-core/json/parser.rb +2 -0
  37. data/lib/aws-sdk-core/log/formatter.rb +8 -2
  38. data/lib/aws-sdk-core/log/handler.rb +2 -0
  39. data/lib/aws-sdk-core/log/param_filter.rb +28 -11
  40. data/lib/aws-sdk-core/log/param_formatter.rb +2 -0
  41. data/lib/aws-sdk-core/pageable_response.rb +2 -0
  42. data/lib/aws-sdk-core/pager.rb +2 -0
  43. data/lib/aws-sdk-core/param_converter.rb +2 -0
  44. data/lib/aws-sdk-core/param_validator.rb +2 -0
  45. data/lib/aws-sdk-core/plugins/api_key.rb +2 -0
  46. data/lib/aws-sdk-core/plugins/apig_authorizer_token.rb +2 -0
  47. data/lib/aws-sdk-core/plugins/apig_credentials_configuration.rb +2 -0
  48. data/lib/aws-sdk-core/plugins/apig_user_agent.rb +2 -0
  49. data/lib/aws-sdk-core/plugins/client_metrics_plugin.rb +2 -0
  50. data/lib/aws-sdk-core/plugins/client_metrics_send_plugin.rb +2 -0
  51. data/lib/aws-sdk-core/plugins/credentials_configuration.rb +2 -0
  52. data/lib/aws-sdk-core/plugins/endpoint_discovery.rb +2 -0
  53. data/lib/aws-sdk-core/plugins/endpoint_pattern.rb +2 -0
  54. data/lib/aws-sdk-core/plugins/event_stream_configuration.rb +2 -0
  55. data/lib/aws-sdk-core/plugins/global_configuration.rb +2 -0
  56. data/lib/aws-sdk-core/plugins/helpful_socket_errors.rb +2 -0
  57. data/lib/aws-sdk-core/plugins/http_checksum.rb +2 -0
  58. data/lib/aws-sdk-core/plugins/idempotency_token.rb +2 -0
  59. data/lib/aws-sdk-core/plugins/invocation_id.rb +2 -0
  60. data/lib/aws-sdk-core/plugins/jsonvalue_converter.rb +2 -0
  61. data/lib/aws-sdk-core/plugins/logging.rb +2 -0
  62. data/lib/aws-sdk-core/plugins/param_converter.rb +2 -0
  63. data/lib/aws-sdk-core/plugins/param_validator.rb +2 -0
  64. data/lib/aws-sdk-core/plugins/protocols/api_gateway.rb +2 -0
  65. data/lib/aws-sdk-core/plugins/protocols/ec2.rb +2 -0
  66. data/lib/aws-sdk-core/plugins/protocols/json_rpc.rb +2 -0
  67. data/lib/aws-sdk-core/plugins/protocols/query.rb +2 -0
  68. data/lib/aws-sdk-core/plugins/protocols/rest_json.rb +2 -0
  69. data/lib/aws-sdk-core/plugins/protocols/rest_xml.rb +2 -0
  70. data/lib/aws-sdk-core/plugins/regional_endpoint.rb +2 -0
  71. data/lib/aws-sdk-core/plugins/response_paging.rb +2 -0
  72. data/lib/aws-sdk-core/plugins/retries/client_rate_limiter.rb +2 -0
  73. data/lib/aws-sdk-core/plugins/retries/clock_skew.rb +2 -0
  74. data/lib/aws-sdk-core/plugins/retries/error_inspector.rb +2 -0
  75. data/lib/aws-sdk-core/plugins/retries/retry_quota.rb +2 -0
  76. data/lib/aws-sdk-core/plugins/retry_errors.rb +2 -0
  77. data/lib/aws-sdk-core/plugins/signature_v2.rb +2 -0
  78. data/lib/aws-sdk-core/plugins/signature_v4.rb +2 -0
  79. data/lib/aws-sdk-core/plugins/stub_responses.rb +2 -0
  80. data/lib/aws-sdk-core/plugins/transfer_encoding.rb +2 -0
  81. data/lib/aws-sdk-core/plugins/user_agent.rb +2 -0
  82. data/lib/aws-sdk-core/process_credentials.rb +2 -0
  83. data/lib/aws-sdk-core/query.rb +2 -0
  84. data/lib/aws-sdk-core/query/ec2_param_builder.rb +2 -0
  85. data/lib/aws-sdk-core/query/handler.rb +2 -0
  86. data/lib/aws-sdk-core/query/param.rb +2 -0
  87. data/lib/aws-sdk-core/query/param_builder.rb +2 -0
  88. data/lib/aws-sdk-core/query/param_list.rb +2 -0
  89. data/lib/aws-sdk-core/refreshing_credentials.rb +2 -0
  90. data/lib/aws-sdk-core/resources/collection.rb +2 -0
  91. data/lib/aws-sdk-core/rest.rb +2 -0
  92. data/lib/aws-sdk-core/rest/handler.rb +2 -0
  93. data/lib/aws-sdk-core/rest/request/body.rb +2 -0
  94. data/lib/aws-sdk-core/rest/request/builder.rb +2 -0
  95. data/lib/aws-sdk-core/rest/request/endpoint.rb +2 -0
  96. data/lib/aws-sdk-core/rest/request/headers.rb +2 -0
  97. data/lib/aws-sdk-core/rest/request/querystring_builder.rb +2 -0
  98. data/lib/aws-sdk-core/rest/response/body.rb +2 -0
  99. data/lib/aws-sdk-core/rest/response/headers.rb +2 -0
  100. data/lib/aws-sdk-core/rest/response/parser.rb +2 -0
  101. data/lib/aws-sdk-core/rest/response/status_code.rb +2 -0
  102. data/lib/aws-sdk-core/shared_config.rb +2 -0
  103. data/lib/aws-sdk-core/shared_credentials.rb +2 -0
  104. data/lib/aws-sdk-core/structure.rb +3 -1
  105. data/lib/aws-sdk-core/stubbing/data_applicator.rb +2 -0
  106. data/lib/aws-sdk-core/stubbing/empty_stub.rb +2 -0
  107. data/lib/aws-sdk-core/stubbing/protocols/api_gateway.rb +2 -0
  108. data/lib/aws-sdk-core/stubbing/protocols/ec2.rb +2 -0
  109. data/lib/aws-sdk-core/stubbing/protocols/json.rb +2 -0
  110. data/lib/aws-sdk-core/stubbing/protocols/query.rb +2 -0
  111. data/lib/aws-sdk-core/stubbing/protocols/rest.rb +2 -0
  112. data/lib/aws-sdk-core/stubbing/protocols/rest_json.rb +2 -0
  113. data/lib/aws-sdk-core/stubbing/protocols/rest_xml.rb +2 -0
  114. data/lib/aws-sdk-core/stubbing/stub_data.rb +2 -0
  115. data/lib/aws-sdk-core/stubbing/xml_error.rb +2 -0
  116. data/lib/aws-sdk-core/type_builder.rb +2 -0
  117. data/lib/aws-sdk-core/util.rb +2 -0
  118. data/lib/aws-sdk-core/waiters.rb +2 -0
  119. data/lib/aws-sdk-core/waiters/errors.rb +2 -0
  120. data/lib/aws-sdk-core/waiters/poller.rb +2 -0
  121. data/lib/aws-sdk-core/waiters/waiter.rb +2 -0
  122. data/lib/aws-sdk-core/xml.rb +2 -0
  123. data/lib/aws-sdk-core/xml/builder.rb +2 -0
  124. data/lib/aws-sdk-core/xml/default_list.rb +2 -0
  125. data/lib/aws-sdk-core/xml/default_map.rb +2 -0
  126. data/lib/aws-sdk-core/xml/doc_builder.rb +2 -0
  127. data/lib/aws-sdk-core/xml/error_handler.rb +2 -0
  128. data/lib/aws-sdk-core/xml/parser.rb +2 -0
  129. data/lib/aws-sdk-core/xml/parser/engines/libxml.rb +2 -0
  130. data/lib/aws-sdk-core/xml/parser/engines/nokogiri.rb +2 -0
  131. data/lib/aws-sdk-core/xml/parser/engines/oga.rb +2 -0
  132. data/lib/aws-sdk-core/xml/parser/engines/ox.rb +2 -0
  133. data/lib/aws-sdk-core/xml/parser/engines/rexml.rb +2 -0
  134. data/lib/aws-sdk-core/xml/parser/frame.rb +2 -0
  135. data/lib/aws-sdk-core/xml/parser/parsing_error.rb +2 -0
  136. data/lib/aws-sdk-core/xml/parser/stack.rb +2 -0
  137. data/lib/aws-sdk-sts.rb +3 -1
  138. data/lib/aws-sdk-sts/client.rb +3 -1
  139. data/lib/aws-sdk-sts/client_api.rb +2 -0
  140. data/lib/aws-sdk-sts/customizations.rb +2 -0
  141. data/lib/aws-sdk-sts/errors.rb +2 -0
  142. data/lib/aws-sdk-sts/plugins/sts_regional_endpoints.rb +2 -0
  143. data/lib/aws-sdk-sts/presigner.rb +2 -0
  144. data/lib/aws-sdk-sts/resource.rb +2 -0
  145. data/lib/aws-sdk-sts/types.rb +30 -0
  146. data/lib/seahorse.rb +2 -0
  147. data/lib/seahorse/client/async_base.rb +2 -0
  148. data/lib/seahorse/client/async_response.rb +2 -0
  149. data/lib/seahorse/client/base.rb +2 -0
  150. data/lib/seahorse/client/block_io.rb +2 -0
  151. data/lib/seahorse/client/configuration.rb +2 -0
  152. data/lib/seahorse/client/events.rb +2 -0
  153. data/lib/seahorse/client/h2/connection.rb +2 -0
  154. data/lib/seahorse/client/h2/handler.rb +2 -0
  155. data/lib/seahorse/client/handler.rb +2 -0
  156. data/lib/seahorse/client/handler_builder.rb +2 -0
  157. data/lib/seahorse/client/handler_list.rb +2 -0
  158. data/lib/seahorse/client/handler_list_entry.rb +2 -0
  159. data/lib/seahorse/client/http/async_response.rb +2 -0
  160. data/lib/seahorse/client/http/headers.rb +2 -0
  161. data/lib/seahorse/client/http/request.rb +2 -0
  162. data/lib/seahorse/client/http/response.rb +2 -0
  163. data/lib/seahorse/client/logging/formatter.rb +2 -0
  164. data/lib/seahorse/client/logging/handler.rb +2 -0
  165. data/lib/seahorse/client/managed_file.rb +2 -0
  166. data/lib/seahorse/client/net_http/connection_pool.rb +2 -0
  167. data/lib/seahorse/client/net_http/handler.rb +2 -0
  168. data/lib/seahorse/client/net_http/patches.rb +2 -0
  169. data/lib/seahorse/client/networking_error.rb +2 -0
  170. data/lib/seahorse/client/plugin.rb +2 -0
  171. data/lib/seahorse/client/plugin_list.rb +2 -0
  172. data/lib/seahorse/client/plugins/content_length.rb +2 -0
  173. data/lib/seahorse/client/plugins/endpoint.rb +2 -0
  174. data/lib/seahorse/client/plugins/h2.rb +2 -0
  175. data/lib/seahorse/client/plugins/logging.rb +2 -0
  176. data/lib/seahorse/client/plugins/net_http.rb +2 -0
  177. data/lib/seahorse/client/plugins/operation_methods.rb +2 -0
  178. data/lib/seahorse/client/plugins/raise_response_errors.rb +2 -0
  179. data/lib/seahorse/client/plugins/response_target.rb +2 -0
  180. data/lib/seahorse/client/request.rb +2 -0
  181. data/lib/seahorse/client/request_context.rb +2 -0
  182. data/lib/seahorse/client/response.rb +2 -0
  183. data/lib/seahorse/model/api.rb +2 -0
  184. data/lib/seahorse/model/authorizer.rb +2 -0
  185. data/lib/seahorse/model/operation.rb +2 -0
  186. data/lib/seahorse/model/shapes.rb +2 -0
  187. data/lib/seahorse/util.rb +2 -0
  188. data/lib/seahorse/version.rb +2 -0
  189. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: fa864e3ebad70f25cccbbdc9838a3833573ee93567feb1051d0006e9d04a39de
4
- data.tar.gz: 4b0b19176f1d6c959d5b89b7aa40738fee543acadb1b6daca2bd60f3ab3221b4
3
+ metadata.gz: 79d3719f7b5ab361df736ffe796f20d08e92490fb8e5d6738403227b270cde06
4
+ data.tar.gz: 0f8c0f7b989107cf482ab2d7fe804e3d20ec92759778aa730d62804cf6ecc401
5
5
  SHA512:
6
- metadata.gz: 4946a7e8084d9f190e4fa841a40d97c738e827c8393681bfb22ac6f54f828f30eaf76f431b4102994d2c902d606ac73be49e1a1a99080a1e071b2e6b5c3ce8ab
7
- data.tar.gz: 221e598d32afbab1140e8fd39b12d38f700b069d130ad4c77da7d08a79519a9a70fc2341286fb5bba21fd44bda374cf4e489687714ba1b2fcfead3b47d42ddda
6
+ metadata.gz: 660f5dc555dcbca125a9cda8ce2f13aab03c107c8f5eeefa58edfdcc63d4b7ee2baf85467db07a0b505e69219f0362e3e70388cb71b3e8e9463c5457b241392a
7
+ data.tar.gz: 47f028368f3d4b081dc5e22c0f65147b91c09ad1d1b760d38ebd570bdeb62a9f07113ac44726229bc0063853003170ddb58bfdd27b544f8374b2ed8151057e6b
data/VERSION CHANGED
@@ -1 +1 @@
1
- 3.100.0
1
+ 3.101.0
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'aws-partitions'
2
4
  require 'seahorse'
3
5
  require 'jmespath'
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Aws
2
4
  # Create and provide access to components of Amazon Resource Names (ARN).
3
5
  #
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Aws
2
4
  module ARNParser
3
5
  # Parse a string with an ARN format into an {Aws::ARN} object.
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'set'
2
4
 
3
5
  module Aws
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'set'
2
4
  require 'securerandom'
3
5
  require 'base64'
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Aws
2
4
  module AsyncClientStubs
3
5
 
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require_relative 'binary/decode_handler'
2
4
  require_relative 'binary/encode_handler'
3
5
  require_relative 'binary/event_stream_decoder'
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Aws
2
4
  module Binary
3
5
 
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Aws
2
4
  module Binary
3
5
 
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Aws
2
4
  module Binary
3
5
  # @api private
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Aws
2
4
  module Binary
3
5
  # @api private
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'aws-eventstream'
2
4
 
3
5
  module Aws
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'aws-eventstream'
2
4
 
3
5
  module Aws
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'thread'
2
4
  require 'socket'
3
5
 
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Aws
2
4
  module ClientSideMonitoring
3
5
  # @api private
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'thread'
2
4
 
3
5
  module Aws
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Aws
2
4
  module CredentialProvider
3
5
 
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Aws
2
4
  # @api private
3
5
  class CredentialProviderChain
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Aws
2
4
  class Credentials
3
5
 
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Aws
2
4
 
3
5
  # A utility module that provides a class method that wraps
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'set'
2
4
 
3
5
  module Aws
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'json'
2
4
  require 'time'
3
5
  require 'net/http'
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Aws
2
4
  # @api private
3
5
  # a LRU cache caching endpoints data
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Aws
2
4
  module Errors
3
5
 
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Aws
2
4
  class EventEmitter
3
5
 
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Aws
2
4
  # @api private
3
5
  class IniParser
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'json'
2
4
  require 'time'
3
5
  require 'net/http'
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'json'
2
4
  require_relative 'json/builder'
3
5
  require_relative 'json/error_handler'
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'base64'
2
4
 
3
5
  module Aws
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Aws
2
4
  module Json
3
5
  class ErrorHandler < Xml::ErrorHandler
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Aws
2
4
  module Json
3
5
  class Handler < Seahorse::Client::Handler
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Aws
2
4
  module Json
3
5
  class OjEngine
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Aws
2
4
  module Json
3
5
  class JSONEngine
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'base64'
2
4
  require 'time'
3
5
 
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'pathname'
2
4
 
3
5
  module Aws
@@ -83,6 +85,9 @@ module Aws
83
85
  # The default list of filtered parameters is documented on the
84
86
  # {ParamFilter} class.
85
87
  #
88
+ # @option options [Boolean] :filter_sensitive_params (true) Set to false
89
+ # to disable the sensitive parameter filtering when logging
90
+ # `:request_params`.
86
91
  def initialize(pattern, options = {})
87
92
  @pattern = pattern
88
93
  @param_formatter = ParamFormatter.new(options)
@@ -97,7 +102,7 @@ module Aws
97
102
  # @param [Seahorse::Client::Response] response
98
103
  # @return [String]
99
104
  def format(response)
100
- pattern.gsub(/:(\w+)/) {|sym| send("_#{sym[1..-1]}", response) }
105
+ pattern.gsub(/:(\w+)/) { |sym| send("_#{sym[1..-1]}", response) }
101
106
  end
102
107
 
103
108
  # @api private
@@ -121,7 +126,8 @@ module Aws
121
126
 
122
127
  def _request_params(response)
123
128
  params = response.context.params
124
- @param_formatter.summarize(@param_filter.filter(params))
129
+ type = response.context.operation.input.shape.struct_class
130
+ @param_formatter.summarize(@param_filter.filter(params, type))
125
131
  end
126
132
 
127
133
  def _time(response)
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Seahorse
2
4
  module Client
3
5
  module Logging
@@ -1,10 +1,15 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'pathname'
2
4
  require 'set'
3
5
 
4
6
  module Aws
5
7
  module Log
6
8
  class ParamFilter
7
-
9
+ # DEPRECATED - this must exist for backwards compatibility. Sensitive
10
+ # members are now computed for each request/response type. This can be
11
+ # removed in a new major version.
12
+ #
8
13
  # A managed list of sensitive parameters that should be filtered from
9
14
  # logs. This is updated automatically as part of each release. See the
10
15
  # `tasks/update-sensitive-params.rake` for more information.
@@ -15,29 +20,41 @@ module Aws
15
20
  # end
16
21
 
17
22
  def initialize(options = {})
18
- @filters = Set.new(SENSITIVE + Array(options[:filter]))
23
+ @enabled = options[:filter_sensitive_params] != false
24
+ @additional_filters = options[:filter] || []
19
25
  end
20
26
 
21
- def filter(value)
22
- case value
23
- when Struct, Hash then filter_hash(value)
24
- when Array then filter_array(value)
25
- else value
27
+ def filter(values, type)
28
+ case values
29
+ when Struct, Hash then filter_hash(values, type)
30
+ when Array then filter_array(values, type)
31
+ else values
26
32
  end
27
33
  end
28
34
 
29
35
  private
30
36
 
31
- def filter_hash(values)
37
+ def filter_hash(values, type)
38
+ if type.const_defined?('SENSITIVE')
39
+ filters = type::SENSITIVE + @additional_filters
40
+ else
41
+ # Support backwards compatibility (new core + old service)
42
+ filters = SENSITIVE + @additional_filters
43
+ end
44
+
32
45
  filtered = {}
33
46
  values.each_pair do |key, value|
34
- filtered[key] = @filters.any? { |f| f.to_s.casecmp(key.to_s).zero? } ? '[FILTERED]' : filter(value)
47
+ filtered[key] = if @enabled && filters.include?(key)
48
+ '[FILTERED]'
49
+ else
50
+ filter(value, type)
51
+ end
35
52
  end
36
53
  filtered
37
54
  end
38
55
 
39
- def filter_array(values)
40
- values.map { |value| filter(value) }
56
+ def filter_array(values, type)
57
+ values.map { |value| filter(value, type) }
41
58
  end
42
59
 
43
60
  end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'pathname'
2
4
 
3
5
  module Aws
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Aws
2
4
 
3
5
  # Decorates a {Seahorse::Client::Response} with paging convenience methods.
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'jmespath'
2
4
 
3
5
  module Aws
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'stringio'
2
4
  require 'date'
3
5
  require 'time'
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Aws
2
4
  # @api private
3
5
  class ParamValidator
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Aws
2
4
  module Plugins
3
5
 
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Aws
2
4
  module Plugins
3
5
 
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Aws
2
4
  # @api private
3
5
  module Plugins
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Aws
2
4
  module Plugins
3
5
  # @api private
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'date'
2
4
  require_relative 'retries/error_inspector'
3
5
 
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'date'
2
4
 
3
5
  module Aws
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Aws
2
4
  # @api private
3
5
  module Plugins