aws-sdk-s3 1.67.0 → 1.70.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.
Files changed (90) hide show
  1. checksums.yaml +4 -4
  2. data/lib/aws-sdk-s3.rb +3 -1
  3. data/lib/aws-sdk-s3/bucket.rb +2 -0
  4. data/lib/aws-sdk-s3/bucket_acl.rb +2 -0
  5. data/lib/aws-sdk-s3/bucket_cors.rb +2 -0
  6. data/lib/aws-sdk-s3/bucket_lifecycle.rb +2 -0
  7. data/lib/aws-sdk-s3/bucket_lifecycle_configuration.rb +2 -0
  8. data/lib/aws-sdk-s3/bucket_logging.rb +2 -0
  9. data/lib/aws-sdk-s3/bucket_notification.rb +2 -0
  10. data/lib/aws-sdk-s3/bucket_policy.rb +2 -0
  11. data/lib/aws-sdk-s3/bucket_region_cache.rb +2 -0
  12. data/lib/aws-sdk-s3/bucket_request_payment.rb +2 -0
  13. data/lib/aws-sdk-s3/bucket_tagging.rb +2 -0
  14. data/lib/aws-sdk-s3/bucket_versioning.rb +2 -0
  15. data/lib/aws-sdk-s3/bucket_website.rb +2 -0
  16. data/lib/aws-sdk-s3/client.rb +11 -6
  17. data/lib/aws-sdk-s3/client_api.rb +22 -0
  18. data/lib/aws-sdk-s3/customizations.rb +3 -0
  19. data/lib/aws-sdk-s3/customizations/bucket.rb +2 -0
  20. data/lib/aws-sdk-s3/customizations/multipart_upload.rb +2 -0
  21. data/lib/aws-sdk-s3/customizations/object.rb +2 -0
  22. data/lib/aws-sdk-s3/customizations/object_summary.rb +2 -0
  23. data/lib/aws-sdk-s3/customizations/types/list_object_versions_output.rb +2 -0
  24. data/lib/aws-sdk-s3/encryption.rb +2 -0
  25. data/lib/aws-sdk-s3/encryption/client.rb +3 -1
  26. data/lib/aws-sdk-s3/encryption/decrypt_handler.rb +11 -0
  27. data/lib/aws-sdk-s3/encryption/default_cipher_provider.rb +2 -0
  28. data/lib/aws-sdk-s3/encryption/default_key_provider.rb +2 -0
  29. data/lib/aws-sdk-s3/encryption/encrypt_handler.rb +11 -0
  30. data/lib/aws-sdk-s3/encryption/errors.rb +2 -0
  31. data/lib/aws-sdk-s3/encryption/io_auth_decrypter.rb +2 -0
  32. data/lib/aws-sdk-s3/encryption/io_decrypter.rb +8 -1
  33. data/lib/aws-sdk-s3/encryption/io_encrypter.rb +2 -0
  34. data/lib/aws-sdk-s3/encryption/key_provider.rb +2 -0
  35. data/lib/aws-sdk-s3/encryption/kms_cipher_provider.rb +2 -0
  36. data/lib/aws-sdk-s3/encryption/materials.rb +2 -0
  37. data/lib/aws-sdk-s3/encryption/utils.rb +2 -0
  38. data/lib/aws-sdk-s3/encryptionV2/client.rb +388 -0
  39. data/lib/aws-sdk-s3/encryptionV2/decrypt_handler.rb +198 -0
  40. data/lib/aws-sdk-s3/encryptionV2/default_cipher_provider.rb +103 -0
  41. data/lib/aws-sdk-s3/encryptionV2/default_key_provider.rb +38 -0
  42. data/lib/aws-sdk-s3/encryptionV2/encrypt_handler.rb +66 -0
  43. data/lib/aws-sdk-s3/encryptionV2/errors.rb +13 -0
  44. data/lib/aws-sdk-s3/encryptionV2/io_auth_decrypter.rb +56 -0
  45. data/lib/aws-sdk-s3/encryptionV2/io_decrypter.rb +30 -0
  46. data/lib/aws-sdk-s3/encryptionV2/io_encrypter.rb +67 -0
  47. data/lib/aws-sdk-s3/encryptionV2/key_provider.rb +29 -0
  48. data/lib/aws-sdk-s3/encryptionV2/kms_cipher_provider.rb +99 -0
  49. data/lib/aws-sdk-s3/encryptionV2/materials.rb +58 -0
  50. data/lib/aws-sdk-s3/encryptionV2/utils.rb +116 -0
  51. data/lib/aws-sdk-s3/encryption_v2.rb +20 -0
  52. data/lib/aws-sdk-s3/errors.rb +2 -0
  53. data/lib/aws-sdk-s3/event_streams.rb +7 -0
  54. data/lib/aws-sdk-s3/file_downloader.rb +2 -0
  55. data/lib/aws-sdk-s3/file_part.rb +2 -0
  56. data/lib/aws-sdk-s3/file_uploader.rb +2 -0
  57. data/lib/aws-sdk-s3/legacy_signer.rb +2 -0
  58. data/lib/aws-sdk-s3/multipart_file_uploader.rb +2 -0
  59. data/lib/aws-sdk-s3/multipart_stream_uploader.rb +2 -0
  60. data/lib/aws-sdk-s3/multipart_upload.rb +2 -0
  61. data/lib/aws-sdk-s3/multipart_upload_error.rb +2 -0
  62. data/lib/aws-sdk-s3/multipart_upload_part.rb +2 -0
  63. data/lib/aws-sdk-s3/object.rb +2 -0
  64. data/lib/aws-sdk-s3/object_acl.rb +2 -0
  65. data/lib/aws-sdk-s3/object_copier.rb +2 -0
  66. data/lib/aws-sdk-s3/object_multipart_copier.rb +2 -0
  67. data/lib/aws-sdk-s3/object_summary.rb +2 -0
  68. data/lib/aws-sdk-s3/object_version.rb +2 -0
  69. data/lib/aws-sdk-s3/plugins/accelerate.rb +2 -0
  70. data/lib/aws-sdk-s3/plugins/bucket_arn.rb +2 -0
  71. data/lib/aws-sdk-s3/plugins/bucket_dns.rb +2 -0
  72. data/lib/aws-sdk-s3/plugins/bucket_name_restrictions.rb +2 -0
  73. data/lib/aws-sdk-s3/plugins/dualstack.rb +2 -0
  74. data/lib/aws-sdk-s3/plugins/expect_100_continue.rb +2 -0
  75. data/lib/aws-sdk-s3/plugins/get_bucket_location_fix.rb +2 -0
  76. data/lib/aws-sdk-s3/plugins/http_200_errors.rb +2 -0
  77. data/lib/aws-sdk-s3/plugins/iad_regional_endpoint.rb +2 -0
  78. data/lib/aws-sdk-s3/plugins/location_constraint.rb +2 -0
  79. data/lib/aws-sdk-s3/plugins/md5s.rb +23 -24
  80. data/lib/aws-sdk-s3/plugins/redirects.rb +2 -0
  81. data/lib/aws-sdk-s3/plugins/s3_host_id.rb +2 -0
  82. data/lib/aws-sdk-s3/plugins/s3_signer.rb +2 -0
  83. data/lib/aws-sdk-s3/plugins/sse_cpk.rb +2 -0
  84. data/lib/aws-sdk-s3/plugins/url_encoded_keys.rb +2 -0
  85. data/lib/aws-sdk-s3/presigned_post.rb +2 -0
  86. data/lib/aws-sdk-s3/presigner.rb +2 -0
  87. data/lib/aws-sdk-s3/resource.rb +2 -0
  88. data/lib/aws-sdk-s3/types.rb +265 -0
  89. data/lib/aws-sdk-s3/waiters.rb +2 -0
  90. metadata +18 -4
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 779bb081a07ca3aa86ac6879969c0f24f22978a2485177177453e207f189b77e
4
- data.tar.gz: d4674ee4d967cd93b813e40304f5d77f1cc1a3e4a6d65e7fe4cee1bd3bde6789
3
+ metadata.gz: 5a991d91a05dd60c0952369cfe5c4ca7c62b18c01b26afa41d0bc19ca4571c86
4
+ data.tar.gz: 03d8fdd2a61fc25246e8ef5c54a61091e6e28d7dceb2070ec2b176b1a491a709
5
5
  SHA512:
6
- metadata.gz: 970466ddad98f18de5185c315476a65e5bc4c2d774a0fb1648557a56908a9971c91d9e60e268b0d060c0c16b889c57f562462eb4d356f54720654938a03781f1
7
- data.tar.gz: 651b87cbac2b6ac21c2cfdaa0fef605190015fb6ec392ec89028c1c87770c2b89296d94d3709a422a9cbf130e7bfda733886686510271814e2ec3b862eb9d4ac
6
+ metadata.gz: 1b53eacdfcfe2bdcd3dcc1d8b3719664ea6647a3156399c403f3fb5733ac1b43820e663095f98a0284235b69d0ec6ed40314f41da3647810989824357f891d42
7
+ data.tar.gz: b28160c528d2554dd6c5c8d1f4bc2dbbddc5d91cf08d7df81de8a87400225f7d87b75d89e974d07e38af82bdd41aa1d421d9b7383d31007e76196efcb4d991f3
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # WARNING ABOUT GENERATED CODE
2
4
  #
3
5
  # This file is generated. See the contributing guide for more information:
@@ -66,6 +68,6 @@ require_relative 'aws-sdk-s3/event_streams'
66
68
  # @service
67
69
  module Aws::S3
68
70
 
69
- GEM_VERSION = '1.67.0'
71
+ GEM_VERSION = '1.70.0'
70
72
 
71
73
  end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # WARNING ABOUT GENERATED CODE
2
4
  #
3
5
  # This file is generated. See the contributing guide for more information:
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # WARNING ABOUT GENERATED CODE
2
4
  #
3
5
  # This file is generated. See the contributing guide for more information:
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # WARNING ABOUT GENERATED CODE
2
4
  #
3
5
  # This file is generated. See the contributing guide for more information:
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # WARNING ABOUT GENERATED CODE
2
4
  #
3
5
  # This file is generated. See the contributing guide for more information:
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # WARNING ABOUT GENERATED CODE
2
4
  #
3
5
  # This file is generated. See the contributing guide for more information:
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # WARNING ABOUT GENERATED CODE
2
4
  #
3
5
  # This file is generated. See the contributing guide for more information:
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # WARNING ABOUT GENERATED CODE
2
4
  #
3
5
  # This file is generated. See the contributing guide for more information:
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # WARNING ABOUT GENERATED CODE
2
4
  #
3
5
  # This file is generated. See the contributing guide for more information:
@@ -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
  # WARNING ABOUT GENERATED CODE
2
4
  #
3
5
  # This file is generated. See the contributing guide for more information:
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # WARNING ABOUT GENERATED CODE
2
4
  #
3
5
  # This file is generated. See the contributing guide for more information:
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # WARNING ABOUT GENERATED CODE
2
4
  #
3
5
  # This file is generated. See the contributing guide for more information:
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # WARNING ABOUT GENERATED CODE
2
4
  #
3
5
  # This file is generated. See the contributing guide for more information:
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # WARNING ABOUT GENERATED CODE
2
4
  #
3
5
  # This file is generated. See the contributing guide for more information:
@@ -24,6 +26,7 @@ require 'aws-sdk-core/plugins/jsonvalue_converter.rb'
24
26
  require 'aws-sdk-core/plugins/client_metrics_plugin.rb'
25
27
  require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
26
28
  require 'aws-sdk-core/plugins/transfer_encoding.rb'
29
+ require 'aws-sdk-core/plugins/http_checksum.rb'
27
30
  require 'aws-sdk-core/plugins/protocols/rest_xml.rb'
28
31
  require 'aws-sdk-s3/plugins/iad_regional_endpoint.rb'
29
32
  require 'aws-sdk-s3/plugins/accelerate.rb'
@@ -85,6 +88,7 @@ module Aws::S3
85
88
  add_plugin(Aws::Plugins::ClientMetricsPlugin)
86
89
  add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
87
90
  add_plugin(Aws::Plugins::TransferEncoding)
91
+ add_plugin(Aws::Plugins::HttpChecksum)
88
92
  add_plugin(Aws::Plugins::Protocols::RestXml)
89
93
  add_plugin(Aws::S3::Plugins::IADRegionalEndpoint)
90
94
  add_plugin(Aws::S3::Plugins::Accelerate)
@@ -179,10 +183,11 @@ module Aws::S3
179
183
  # will use the Client Side Monitoring Agent Publisher.
180
184
  #
181
185
  # @option options [Boolean] :compute_checksums (true)
182
- # When `true` a MD5 checksum will be computed for every request that
183
- # sends a body. When `false`, MD5 checksums will only be computed
184
- # for operations that require them. Checksum errors returned by Amazon
185
- # S3 are automatically retried up to `:retry_limit` times.
186
+ # When `true` a MD5 checksum will be computed and sent in the Content Md5
187
+ # header for :put_object and :upload_part. When `false`, MD5 checksums
188
+ # will not be computed for these operations. Checksums are still computed
189
+ # for operations requiring them. Checksum errors returned by Amazon S3 are
190
+ # automatically retried up to `:retry_limit` times.
186
191
  #
187
192
  # @option options [Boolean] :convert_params (true)
188
193
  # When `true`, an attempt is made to coerce request parameters into
@@ -199,7 +204,7 @@ module Aws::S3
199
204
  # @option options [String] :endpoint
200
205
  # The client endpoint is normally constructed from the `:region`
201
206
  # option. You should only configure an `:endpoint` when connecting
202
- # to test endpoints. This should be a valid HTTP(S) URI.
207
+ # to test or custom endpoints. This should be a valid HTTP(S) URI.
203
208
  #
204
209
  # @option options [Integer] :endpoint_cache_max_entries (1000)
205
210
  # Used for the maximum size limit of the LRU cache storing endpoints data
@@ -11665,7 +11670,7 @@ module Aws::S3
11665
11670
  params: params,
11666
11671
  config: config)
11667
11672
  context[:gem_name] = 'aws-sdk-s3'
11668
- context[:gem_version] = '1.67.0'
11673
+ context[:gem_version] = '1.70.0'
11669
11674
  Seahorse::Client::Request.new(handlers, context)
11670
11675
  end
11671
11676
 
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # WARNING ABOUT GENERATED CODE
2
4
  #
3
5
  # This file is generated. See the contributing guide for more information:
@@ -2378,6 +2380,7 @@ module Aws::S3
2378
2380
  o.name = "DeleteObjects"
2379
2381
  o.http_method = "POST"
2380
2382
  o.http_request_uri = "/{Bucket}?delete"
2383
+ o.http_checksum_required = true
2381
2384
  o.input = Shapes::ShapeRef.new(shape: DeleteObjectsRequest)
2382
2385
  o.output = Shapes::ShapeRef.new(shape: DeleteObjectsOutput)
2383
2386
  end)
@@ -2758,6 +2761,7 @@ module Aws::S3
2758
2761
  o.name = "PutBucketAcl"
2759
2762
  o.http_method = "PUT"
2760
2763
  o.http_request_uri = "/{Bucket}?acl"
2764
+ o.http_checksum_required = true
2761
2765
  o.input = Shapes::ShapeRef.new(shape: PutBucketAclRequest)
2762
2766
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
2763
2767
  end)
@@ -2774,6 +2778,7 @@ module Aws::S3
2774
2778
  o.name = "PutBucketCors"
2775
2779
  o.http_method = "PUT"
2776
2780
  o.http_request_uri = "/{Bucket}?cors"
2781
+ o.http_checksum_required = true
2777
2782
  o.input = Shapes::ShapeRef.new(shape: PutBucketCorsRequest)
2778
2783
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
2779
2784
  end)
@@ -2782,6 +2787,7 @@ module Aws::S3
2782
2787
  o.name = "PutBucketEncryption"
2783
2788
  o.http_method = "PUT"
2784
2789
  o.http_request_uri = "/{Bucket}?encryption"
2790
+ o.http_checksum_required = true
2785
2791
  o.input = Shapes::ShapeRef.new(shape: PutBucketEncryptionRequest)
2786
2792
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
2787
2793
  end)
@@ -2798,6 +2804,7 @@ module Aws::S3
2798
2804
  o.name = "PutBucketLifecycle"
2799
2805
  o.http_method = "PUT"
2800
2806
  o.http_request_uri = "/{Bucket}?lifecycle"
2807
+ o.http_checksum_required = true
2801
2808
  o.deprecated = true
2802
2809
  o.input = Shapes::ShapeRef.new(shape: PutBucketLifecycleRequest)
2803
2810
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
@@ -2807,6 +2814,7 @@ module Aws::S3
2807
2814
  o.name = "PutBucketLifecycleConfiguration"
2808
2815
  o.http_method = "PUT"
2809
2816
  o.http_request_uri = "/{Bucket}?lifecycle"
2817
+ o.http_checksum_required = true
2810
2818
  o.input = Shapes::ShapeRef.new(shape: PutBucketLifecycleConfigurationRequest)
2811
2819
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
2812
2820
  end)
@@ -2815,6 +2823,7 @@ module Aws::S3
2815
2823
  o.name = "PutBucketLogging"
2816
2824
  o.http_method = "PUT"
2817
2825
  o.http_request_uri = "/{Bucket}?logging"
2826
+ o.http_checksum_required = true
2818
2827
  o.input = Shapes::ShapeRef.new(shape: PutBucketLoggingRequest)
2819
2828
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
2820
2829
  end)
@@ -2831,6 +2840,7 @@ module Aws::S3
2831
2840
  o.name = "PutBucketNotification"
2832
2841
  o.http_method = "PUT"
2833
2842
  o.http_request_uri = "/{Bucket}?notification"
2843
+ o.http_checksum_required = true
2834
2844
  o.deprecated = true
2835
2845
  o.input = Shapes::ShapeRef.new(shape: PutBucketNotificationRequest)
2836
2846
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
@@ -2848,6 +2858,7 @@ module Aws::S3
2848
2858
  o.name = "PutBucketPolicy"
2849
2859
  o.http_method = "PUT"
2850
2860
  o.http_request_uri = "/{Bucket}?policy"
2861
+ o.http_checksum_required = true
2851
2862
  o.input = Shapes::ShapeRef.new(shape: PutBucketPolicyRequest)
2852
2863
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
2853
2864
  end)
@@ -2856,6 +2867,7 @@ module Aws::S3
2856
2867
  o.name = "PutBucketReplication"
2857
2868
  o.http_method = "PUT"
2858
2869
  o.http_request_uri = "/{Bucket}?replication"
2870
+ o.http_checksum_required = true
2859
2871
  o.input = Shapes::ShapeRef.new(shape: PutBucketReplicationRequest)
2860
2872
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
2861
2873
  end)
@@ -2864,6 +2876,7 @@ module Aws::S3
2864
2876
  o.name = "PutBucketRequestPayment"
2865
2877
  o.http_method = "PUT"
2866
2878
  o.http_request_uri = "/{Bucket}?requestPayment"
2879
+ o.http_checksum_required = true
2867
2880
  o.input = Shapes::ShapeRef.new(shape: PutBucketRequestPaymentRequest)
2868
2881
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
2869
2882
  end)
@@ -2872,6 +2885,7 @@ module Aws::S3
2872
2885
  o.name = "PutBucketTagging"
2873
2886
  o.http_method = "PUT"
2874
2887
  o.http_request_uri = "/{Bucket}?tagging"
2888
+ o.http_checksum_required = true
2875
2889
  o.input = Shapes::ShapeRef.new(shape: PutBucketTaggingRequest)
2876
2890
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
2877
2891
  end)
@@ -2880,6 +2894,7 @@ module Aws::S3
2880
2894
  o.name = "PutBucketVersioning"
2881
2895
  o.http_method = "PUT"
2882
2896
  o.http_request_uri = "/{Bucket}?versioning"
2897
+ o.http_checksum_required = true
2883
2898
  o.input = Shapes::ShapeRef.new(shape: PutBucketVersioningRequest)
2884
2899
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
2885
2900
  end)
@@ -2888,6 +2903,7 @@ module Aws::S3
2888
2903
  o.name = "PutBucketWebsite"
2889
2904
  o.http_method = "PUT"
2890
2905
  o.http_request_uri = "/{Bucket}?website"
2906
+ o.http_checksum_required = true
2891
2907
  o.input = Shapes::ShapeRef.new(shape: PutBucketWebsiteRequest)
2892
2908
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
2893
2909
  end)
@@ -2904,6 +2920,7 @@ module Aws::S3
2904
2920
  o.name = "PutObjectAcl"
2905
2921
  o.http_method = "PUT"
2906
2922
  o.http_request_uri = "/{Bucket}/{Key+}?acl"
2923
+ o.http_checksum_required = true
2907
2924
  o.input = Shapes::ShapeRef.new(shape: PutObjectAclRequest)
2908
2925
  o.output = Shapes::ShapeRef.new(shape: PutObjectAclOutput)
2909
2926
  o.errors << Shapes::ShapeRef.new(shape: NoSuchKey)
@@ -2913,6 +2930,7 @@ module Aws::S3
2913
2930
  o.name = "PutObjectLegalHold"
2914
2931
  o.http_method = "PUT"
2915
2932
  o.http_request_uri = "/{Bucket}/{Key+}?legal-hold"
2933
+ o.http_checksum_required = true
2916
2934
  o.input = Shapes::ShapeRef.new(shape: PutObjectLegalHoldRequest)
2917
2935
  o.output = Shapes::ShapeRef.new(shape: PutObjectLegalHoldOutput)
2918
2936
  end)
@@ -2921,6 +2939,7 @@ module Aws::S3
2921
2939
  o.name = "PutObjectLockConfiguration"
2922
2940
  o.http_method = "PUT"
2923
2941
  o.http_request_uri = "/{Bucket}?object-lock"
2942
+ o.http_checksum_required = true
2924
2943
  o.input = Shapes::ShapeRef.new(shape: PutObjectLockConfigurationRequest)
2925
2944
  o.output = Shapes::ShapeRef.new(shape: PutObjectLockConfigurationOutput)
2926
2945
  end)
@@ -2929,6 +2948,7 @@ module Aws::S3
2929
2948
  o.name = "PutObjectRetention"
2930
2949
  o.http_method = "PUT"
2931
2950
  o.http_request_uri = "/{Bucket}/{Key+}?retention"
2951
+ o.http_checksum_required = true
2932
2952
  o.input = Shapes::ShapeRef.new(shape: PutObjectRetentionRequest)
2933
2953
  o.output = Shapes::ShapeRef.new(shape: PutObjectRetentionOutput)
2934
2954
  end)
@@ -2937,6 +2957,7 @@ module Aws::S3
2937
2957
  o.name = "PutObjectTagging"
2938
2958
  o.http_method = "PUT"
2939
2959
  o.http_request_uri = "/{Bucket}/{Key+}?tagging"
2960
+ o.http_checksum_required = true
2940
2961
  o.input = Shapes::ShapeRef.new(shape: PutObjectTaggingRequest)
2941
2962
  o.output = Shapes::ShapeRef.new(shape: PutObjectTaggingOutput)
2942
2963
  end)
@@ -2945,6 +2966,7 @@ module Aws::S3
2945
2966
  o.name = "PutPublicAccessBlock"
2946
2967
  o.http_method = "PUT"
2947
2968
  o.http_request_uri = "/{Bucket}?publicAccessBlock"
2969
+ o.http_checksum_required = true
2948
2970
  o.input = Shapes::ShapeRef.new(shape: PutPublicAccessBlockRequest)
2949
2971
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
2950
2972
  end)
@@ -1,6 +1,9 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # utility classes
2
4
  require 'aws-sdk-s3/bucket_region_cache'
3
5
  require 'aws-sdk-s3/encryption'
6
+ require 'aws-sdk-s3/encryption_v2'
4
7
  require 'aws-sdk-s3/file_part'
5
8
  require 'aws-sdk-s3/file_uploader'
6
9
  require 'aws-sdk-s3/file_downloader'
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'uri'
2
4
 
3
5
  module Aws
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Aws
2
4
  module S3
3
5
  class MultipartUpload
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Aws
2
4
  module S3
3
5
  class Object
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Aws
2
4
  module S3
3
5
  class ObjectSummary
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  class Aws::S3::Types::ListObjectVersionsOutput
2
4
 
3
5
  # TODO : Remove this customization once the resource code
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'aws-sdk-s3/encryption/client'
2
4
  require 'aws-sdk-s3/encryption/decrypt_handler'
3
5
  require 'aws-sdk-s3/encryption/default_cipher_provider'
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'forwardable'
2
4
 
3
5
  module Aws
@@ -181,7 +183,7 @@ module Aws
181
183
 
182
184
  extend Deprecations
183
185
  extend Forwardable
184
- def_delegators :@client, :config, :delete_object, :head_object
186
+ def_delegators :@client, :config, :delete_object, :head_object, :build_request
185
187
 
186
188
  # Creates a new encryption client. You must provide one of the following
187
189
  # options:
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'base64'
2
4
 
3
5
  module Aws
@@ -30,6 +32,7 @@ module Aws
30
32
 
31
33
  def call(context)
32
34
  attach_http_event_listeners(context)
35
+ apply_cse_user_agent(context)
33
36
  @handler.call(context)
34
37
  end
35
38
 
@@ -173,6 +176,14 @@ module Aws
173
176
  context.http_response.headers['x-amz-meta-x-amz-tag-len']
174
177
  end
175
178
 
179
+ def apply_cse_user_agent(context)
180
+ if context.config.user_agent_suffix.nil?
181
+ context.config.user_agent_suffix = 'CSE_V1'
182
+ elsif !context.config.user_agent_suffix.include? 'CSE_V1'
183
+ context.config.user_agent_suffix += ' CSE_V1'
184
+ end
185
+ end
186
+
176
187
  end
177
188
  end
178
189
  end
@@ -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 S3
3
5
  module Encryption
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'base64'
2
4
 
3
5
  module Aws
@@ -10,6 +12,7 @@ module Aws
10
12
  envelope, cipher = context[:encryption][:cipher_provider].encryption_cipher
11
13
  apply_encryption_envelope(context, envelope, cipher)
12
14
  apply_encryption_cipher(context, cipher)
15
+ apply_cse_user_agent(context)
13
16
  @handler.call(context)
14
17
  end
15
18
 
@@ -44,6 +47,14 @@ module Aws
44
47
  end
45
48
  end
46
49
 
50
+ def apply_cse_user_agent(context)
51
+ if context.config.user_agent_suffix.nil?
52
+ context.config.user_agent_suffix = 'CSE_V1'
53
+ elsif !context.config.user_agent_suffix.include? 'CSE_V1'
54
+ context.config.user_agent_suffix += ' CSE_V1'
55
+ end
56
+ end
57
+
47
58
  end
48
59
  end
49
60
  end