aws-sdk-s3 1.114.0 → 1.136.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 +163 -0
 - data/VERSION +1 -1
 - data/lib/aws-sdk-s3/bucket.rb +123 -61
 - data/lib/aws-sdk-s3/bucket_acl.rb +9 -3
 - data/lib/aws-sdk-s3/bucket_cors.rb +12 -4
 - data/lib/aws-sdk-s3/bucket_lifecycle.rb +12 -4
 - data/lib/aws-sdk-s3/bucket_lifecycle_configuration.rb +12 -4
 - data/lib/aws-sdk-s3/bucket_logging.rb +9 -3
 - data/lib/aws-sdk-s3/bucket_notification.rb +9 -3
 - data/lib/aws-sdk-s3/bucket_policy.rb +12 -4
 - data/lib/aws-sdk-s3/bucket_request_payment.rb +9 -3
 - data/lib/aws-sdk-s3/bucket_tagging.rb +12 -4
 - data/lib/aws-sdk-s3/bucket_versioning.rb +15 -5
 - data/lib/aws-sdk-s3/bucket_website.rb +12 -4
 - data/lib/aws-sdk-s3/client.rb +2084 -1724
 - data/lib/aws-sdk-s3/client_api.rb +213 -189
 - data/lib/aws-sdk-s3/customizations/bucket.rb +23 -47
 - data/lib/aws-sdk-s3/customizations/errors.rb +27 -0
 - data/lib/aws-sdk-s3/customizations/object.rb +95 -19
 - data/lib/aws-sdk-s3/customizations/types/permanent_redirect.rb +26 -0
 - data/lib/aws-sdk-s3/customizations.rb +2 -0
 - data/lib/aws-sdk-s3/encryption/client.rb +6 -2
 - data/lib/aws-sdk-s3/encryption/kms_cipher_provider.rb +13 -9
 - data/lib/aws-sdk-s3/encryptionV2/client.rb +6 -2
 - data/lib/aws-sdk-s3/encryptionV2/decrypt_handler.rb +1 -0
 - data/lib/aws-sdk-s3/encryptionV2/kms_cipher_provider.rb +10 -6
 - data/lib/aws-sdk-s3/endpoint_parameters.rb +146 -0
 - data/lib/aws-sdk-s3/endpoint_provider.rb +509 -0
 - data/lib/aws-sdk-s3/endpoints.rb +2150 -0
 - data/lib/aws-sdk-s3/file_downloader.rb +170 -44
 - data/lib/aws-sdk-s3/file_uploader.rb +8 -6
 - data/lib/aws-sdk-s3/multipart_stream_uploader.rb +41 -13
 - data/lib/aws-sdk-s3/multipart_upload.rb +27 -13
 - data/lib/aws-sdk-s3/multipart_upload_part.rb +20 -10
 - data/lib/aws-sdk-s3/object.rb +156 -110
 - data/lib/aws-sdk-s3/object_acl.rb +14 -6
 - data/lib/aws-sdk-s3/object_copier.rb +7 -5
 - data/lib/aws-sdk-s3/object_multipart_copier.rb +41 -19
 - data/lib/aws-sdk-s3/object_summary.rb +149 -94
 - data/lib/aws-sdk-s3/object_version.rb +55 -21
 - data/lib/aws-sdk-s3/plugins/accelerate.rb +3 -50
 - data/lib/aws-sdk-s3/plugins/arn.rb +0 -184
 - data/lib/aws-sdk-s3/plugins/bucket_dns.rb +3 -39
 - data/lib/aws-sdk-s3/plugins/bucket_name_restrictions.rb +1 -6
 - data/lib/aws-sdk-s3/plugins/dualstack.rb +1 -49
 - data/lib/aws-sdk-s3/plugins/endpoints.rb +262 -0
 - data/lib/aws-sdk-s3/plugins/expect_100_continue.rb +2 -1
 - data/lib/aws-sdk-s3/plugins/iad_regional_endpoint.rb +0 -29
 - data/lib/aws-sdk-s3/plugins/s3_signer.rb +32 -126
 - data/lib/aws-sdk-s3/presigned_post.rb +61 -59
 - data/lib/aws-sdk-s3/presigner.rb +24 -35
 - data/lib/aws-sdk-s3/resource.rb +7 -3
 - data/lib/aws-sdk-s3/types.rb +858 -4125
 - data/lib/aws-sdk-s3.rb +5 -1
 - metadata +12 -11
 - data/lib/aws-sdk-s3/arn/access_point_arn.rb +0 -69
 - data/lib/aws-sdk-s3/arn/multi_region_access_point_arn.rb +0 -68
 - data/lib/aws-sdk-s3/arn/object_lambda_arn.rb +0 -69
 - data/lib/aws-sdk-s3/arn/outpost_access_point_arn.rb +0 -74
 - data/lib/aws-sdk-s3/plugins/object_lambda_endpoint.rb +0 -25
 
    
        checksums.yaml
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            ---
         
     | 
| 
       2 
2 
     | 
    
         
             
            SHA256:
         
     | 
| 
       3 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       4 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 3 
     | 
    
         
            +
              metadata.gz: 3a563e0602ed3c1393406bb2158324b9571f7c579924f3f349fe237333d218d1
         
     | 
| 
      
 4 
     | 
    
         
            +
              data.tar.gz: 4559f4a20a3abd9dcddde15fd814012e3874813d2e5cc15cd0066125aea8348f
         
     | 
| 
       5 
5 
     | 
    
         
             
            SHA512:
         
     | 
| 
       6 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       7 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 6 
     | 
    
         
            +
              metadata.gz: 03eda70ab440bdf32208be9a6f8bbe5435d77090ef6198129b9cb06b91d2aba9fb5bb3820d53380af6863f4538344d6833d507d5c46b3609d648f2c52a26561c
         
     | 
| 
      
 7 
     | 
    
         
            +
              data.tar.gz: 43cd7b5022e8602f9590463478de5adf88de7cc31d1d13179551b9434a21fd6150c61009b98796eddc91a772c70e47698e58720f79733ad03ea638c27e052653
         
     | 
    
        data/CHANGELOG.md
    CHANGED
    
    | 
         @@ -1,6 +1,169 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            Unreleased Changes
         
     | 
| 
       2 
2 
     | 
    
         
             
            ------------------
         
     | 
| 
       3 
3 
     | 
    
         | 
| 
      
 4 
     | 
    
         
            +
            1.136.0 (2023-09-26)
         
     | 
| 
      
 5 
     | 
    
         
            +
            ------------------
         
     | 
| 
      
 6 
     | 
    
         
            +
             
     | 
| 
      
 7 
     | 
    
         
            +
            * Feature - This release adds a new field COMPLETED to the ReplicationStatus Enum. You can now use this field to validate the replication status of S3 objects using the AWS SDK.
         
     | 
| 
      
 8 
     | 
    
         
            +
             
     | 
| 
      
 9 
     | 
    
         
            +
            1.135.0 (2023-09-20)
         
     | 
| 
      
 10 
     | 
    
         
            +
            ------------------
         
     | 
| 
      
 11 
     | 
    
         
            +
             
     | 
| 
      
 12 
     | 
    
         
            +
            * Feature - Fix an issue where the SDK can fail to unmarshall response due to NumberFormatException
         
     | 
| 
      
 13 
     | 
    
         
            +
             
     | 
| 
      
 14 
     | 
    
         
            +
            1.134.0 (2023-08-24)
         
     | 
| 
      
 15 
     | 
    
         
            +
            ------------------
         
     | 
| 
      
 16 
     | 
    
         
            +
             
     | 
| 
      
 17 
     | 
    
         
            +
            * Feature - Updates to endpoint ruleset tests to address Smithy validation issues.
         
     | 
| 
      
 18 
     | 
    
         
            +
             
     | 
| 
      
 19 
     | 
    
         
            +
            1.133.0 (2023-08-22)
         
     | 
| 
      
 20 
     | 
    
         
            +
            ------------------
         
     | 
| 
      
 21 
     | 
    
         
            +
             
     | 
| 
      
 22 
     | 
    
         
            +
            * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
         
     | 
| 
      
 23 
     | 
    
         
            +
             
     | 
| 
      
 24 
     | 
    
         
            +
            * Feature - Add support for `progress_callback` in `Object#download_file` and improve multi-threaded performance #(2901).
         
     | 
| 
      
 25 
     | 
    
         
            +
             
     | 
| 
      
 26 
     | 
    
         
            +
            1.132.1 (2023-08-09)
         
     | 
| 
      
 27 
     | 
    
         
            +
            ------------------
         
     | 
| 
      
 28 
     | 
    
         
            +
             
     | 
| 
      
 29 
     | 
    
         
            +
            * Issue - Add support for disabling checksum validation in `Object#download_file` (#2893).
         
     | 
| 
      
 30 
     | 
    
         
            +
             
     | 
| 
      
 31 
     | 
    
         
            +
            1.132.0 (2023-07-24)
         
     | 
| 
      
 32 
     | 
    
         
            +
            ------------------
         
     | 
| 
      
 33 
     | 
    
         
            +
             
     | 
| 
      
 34 
     | 
    
         
            +
            * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
         
     | 
| 
      
 35 
     | 
    
         
            +
             
     | 
| 
      
 36 
     | 
    
         
            +
            * Feature - Add support for verifying checksums in FileDownloader.
         
     | 
| 
      
 37 
     | 
    
         
            +
             
     | 
| 
      
 38 
     | 
    
         
            +
            1.131.0 (2023-07-20)
         
     | 
| 
      
 39 
     | 
    
         
            +
            ------------------
         
     | 
| 
      
 40 
     | 
    
         
            +
             
     | 
| 
      
 41 
     | 
    
         
            +
            * Feature - Improve performance of S3 clients by simplifying and optimizing endpoint resolution.
         
     | 
| 
      
 42 
     | 
    
         
            +
             
     | 
| 
      
 43 
     | 
    
         
            +
            1.130.0 (2023-07-13)
         
     | 
| 
      
 44 
     | 
    
         
            +
            ------------------
         
     | 
| 
      
 45 
     | 
    
         
            +
             
     | 
| 
      
 46 
     | 
    
         
            +
            * Feature - S3 Inventory now supports Object Access Control List and Object Owner as available object metadata fields in inventory reports.
         
     | 
| 
      
 47 
     | 
    
         
            +
             
     | 
| 
      
 48 
     | 
    
         
            +
            * Feature - Allow Object multipart copy API to work when requiring a checksum algorithm.
         
     | 
| 
      
 49 
     | 
    
         
            +
            * Feature - Allow Object multipart copy API to optionally copy parts as they exist on the source object if it has parts, instead of generating new part ranges, when specifying `use_source_parts: true`.
         
     | 
| 
      
 50 
     | 
    
         
            +
             
     | 
| 
      
 51 
     | 
    
         
            +
            1.129.0 (2023-07-11)
         
     | 
| 
      
 52 
     | 
    
         
            +
            ------------------
         
     | 
| 
      
 53 
     | 
    
         
            +
             
     | 
| 
      
 54 
     | 
    
         
            +
            * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
         
     | 
| 
      
 55 
     | 
    
         
            +
             
     | 
| 
      
 56 
     | 
    
         
            +
            1.128.0 (2023-07-06)
         
     | 
| 
      
 57 
     | 
    
         
            +
            ------------------
         
     | 
| 
      
 58 
     | 
    
         
            +
             
     | 
| 
      
 59 
     | 
    
         
            +
            * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
         
     | 
| 
      
 60 
     | 
    
         
            +
             
     | 
| 
      
 61 
     | 
    
         
            +
            1.127.0 (2023-06-28)
         
     | 
| 
      
 62 
     | 
    
         
            +
            ------------------
         
     | 
| 
      
 63 
     | 
    
         
            +
             
     | 
| 
      
 64 
     | 
    
         
            +
            * Feature - The S3 LISTObjects, ListObjectsV2 and ListObjectVersions API now supports a new optional header x-amz-optional-object-attributes. If header contains RestoreStatus as the value, then S3 will include Glacier restore status i.e. isRestoreInProgress and RestoreExpiryDate in List response.
         
     | 
| 
      
 65 
     | 
    
         
            +
             
     | 
| 
      
 66 
     | 
    
         
            +
            * Feature - Select minimum expiration time for presigned urls between the expiration time option and the credential expiration time.
         
     | 
| 
      
 67 
     | 
    
         
            +
             
     | 
| 
      
 68 
     | 
    
         
            +
            1.126.0 (2023-06-16)
         
     | 
| 
      
 69 
     | 
    
         
            +
            ------------------
         
     | 
| 
      
 70 
     | 
    
         
            +
             
     | 
| 
      
 71 
     | 
    
         
            +
            * Feature - This release adds SDK support for request-payer request header and request-charged response header in the "GetBucketAccelerateConfiguration", "ListMultipartUploads", "ListObjects", "ListObjectsV2" and "ListObjectVersions" S3 APIs.
         
     | 
| 
      
 72 
     | 
    
         
            +
             
     | 
| 
      
 73 
     | 
    
         
            +
            1.125.0 (2023-06-15)
         
     | 
| 
      
 74 
     | 
    
         
            +
            ------------------
         
     | 
| 
      
 75 
     | 
    
         
            +
             
     | 
| 
      
 76 
     | 
    
         
            +
            * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
         
     | 
| 
      
 77 
     | 
    
         
            +
             
     | 
| 
      
 78 
     | 
    
         
            +
            1.124.0 (2023-06-13)
         
     | 
| 
      
 79 
     | 
    
         
            +
            ------------------
         
     | 
| 
      
 80 
     | 
    
         
            +
             
     | 
| 
      
 81 
     | 
    
         
            +
            * Feature - Integrate double encryption feature to SDKs.
         
     | 
| 
      
 82 
     | 
    
         
            +
             
     | 
| 
      
 83 
     | 
    
         
            +
            1.123.2 (2023-06-12)
         
     | 
| 
      
 84 
     | 
    
         
            +
            ------------------
         
     | 
| 
      
 85 
     | 
    
         
            +
             
     | 
| 
      
 86 
     | 
    
         
            +
            * Issue - Fix issue when decrypting noncurrent versions of objects when using client side encryption (#2866). 
         
     | 
| 
      
 87 
     | 
    
         
            +
             
     | 
| 
      
 88 
     | 
    
         
            +
            1.123.1 (2023-06-02)
         
     | 
| 
      
 89 
     | 
    
         
            +
            ------------------
         
     | 
| 
      
 90 
     | 
    
         
            +
             
     | 
| 
      
 91 
     | 
    
         
            +
            * Issue - Fix multipart `download_file` so that it does not download bytes out of range (#2859).
         
     | 
| 
      
 92 
     | 
    
         
            +
             
     | 
| 
      
 93 
     | 
    
         
            +
            1.123.0 (2023-05-31)
         
     | 
| 
      
 94 
     | 
    
         
            +
            ------------------
         
     | 
| 
      
 95 
     | 
    
         
            +
             
     | 
| 
      
 96 
     | 
    
         
            +
            * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
         
     | 
| 
      
 97 
     | 
    
         
            +
             
     | 
| 
      
 98 
     | 
    
         
            +
            1.122.0 (2023-05-04)
         
     | 
| 
      
 99 
     | 
    
         
            +
            ------------------
         
     | 
| 
      
 100 
     | 
    
         
            +
             
     | 
| 
      
 101 
     | 
    
         
            +
            * Feature - Documentation updates for Amazon S3
         
     | 
| 
      
 102 
     | 
    
         
            +
             
     | 
| 
      
 103 
     | 
    
         
            +
            1.121.0 (2023-04-19)
         
     | 
| 
      
 104 
     | 
    
         
            +
            ------------------
         
     | 
| 
      
 105 
     | 
    
         
            +
             
     | 
| 
      
 106 
     | 
    
         
            +
            * Feature - Provides support for "Snow" Storage class.
         
     | 
| 
      
 107 
     | 
    
         
            +
             
     | 
| 
      
 108 
     | 
    
         
            +
            1.120.1 (2023-04-05)
         
     | 
| 
      
 109 
     | 
    
         
            +
            ------------------
         
     | 
| 
      
 110 
     | 
    
         
            +
             
     | 
| 
      
 111 
     | 
    
         
            +
            * Issue - Skip `#check_for_cached_region` if custom endpoint provided
         
     | 
| 
      
 112 
     | 
    
         
            +
             
     | 
| 
      
 113 
     | 
    
         
            +
            1.120.0 (2023-03-31)
         
     | 
| 
      
 114 
     | 
    
         
            +
            ------------------
         
     | 
| 
      
 115 
     | 
    
         
            +
             
     | 
| 
      
 116 
     | 
    
         
            +
            * Feature - Documentation updates for Amazon S3
         
     | 
| 
      
 117 
     | 
    
         
            +
             
     | 
| 
      
 118 
     | 
    
         
            +
            1.119.2 (2023-03-22)
         
     | 
| 
      
 119 
     | 
    
         
            +
            ------------------
         
     | 
| 
      
 120 
     | 
    
         
            +
             
     | 
| 
      
 121 
     | 
    
         
            +
            * Issue - Provide `endpoint` and `bucket` attributes on `Aws::S3::Errors::PermanentRedirect` error objects.
         
     | 
| 
      
 122 
     | 
    
         
            +
             
     | 
| 
      
 123 
     | 
    
         
            +
            1.119.1 (2023-02-13)
         
     | 
| 
      
 124 
     | 
    
         
            +
            ------------------
         
     | 
| 
      
 125 
     | 
    
         
            +
             
     | 
| 
      
 126 
     | 
    
         
            +
            * Issue - Ensure object metadata is not lost on multipart copy (#2821).
         
     | 
| 
      
 127 
     | 
    
         
            +
             
     | 
| 
      
 128 
     | 
    
         
            +
            1.119.0 (2023-01-26)
         
     | 
| 
      
 129 
     | 
    
         
            +
            ------------------
         
     | 
| 
      
 130 
     | 
    
         
            +
             
     | 
| 
      
 131 
     | 
    
         
            +
            * Feature - Allow FIPS to be used with path-style URLs.
         
     | 
| 
      
 132 
     | 
    
         
            +
             
     | 
| 
      
 133 
     | 
    
         
            +
            1.118.0 (2023-01-18)
         
     | 
| 
      
 134 
     | 
    
         
            +
            ------------------
         
     | 
| 
      
 135 
     | 
    
         
            +
             
     | 
| 
      
 136 
     | 
    
         
            +
            * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
         
     | 
| 
      
 137 
     | 
    
         
            +
             
     | 
| 
      
 138 
     | 
    
         
            +
            * Issue - Replace runtime endpoint resolution approach with generated ruby code.
         
     | 
| 
      
 139 
     | 
    
         
            +
             
     | 
| 
      
 140 
     | 
    
         
            +
            1.117.2 (2022-11-30)
         
     | 
| 
      
 141 
     | 
    
         
            +
            ------------------
         
     | 
| 
      
 142 
     | 
    
         
            +
             
     | 
| 
      
 143 
     | 
    
         
            +
            * Issue - Return error messages from failures in threads in `MultipartStreamUploader` (#2793).
         
     | 
| 
      
 144 
     | 
    
         
            +
             
     | 
| 
      
 145 
     | 
    
         
            +
            1.117.1 (2022-10-26)
         
     | 
| 
      
 146 
     | 
    
         
            +
            ------------------
         
     | 
| 
      
 147 
     | 
    
         
            +
             
     | 
| 
      
 148 
     | 
    
         
            +
            * Issue - Fix custom endpoint and port regression with `presigned_url` (#2776).
         
     | 
| 
      
 149 
     | 
    
         
            +
             
     | 
| 
      
 150 
     | 
    
         
            +
            1.117.0 (2022-10-25)
         
     | 
| 
      
 151 
     | 
    
         
            +
            ------------------
         
     | 
| 
      
 152 
     | 
    
         
            +
             
     | 
| 
      
 153 
     | 
    
         
            +
            * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
         
     | 
| 
      
 154 
     | 
    
         
            +
             
     | 
| 
      
 155 
     | 
    
         
            +
            * Issue - Apply checksums to MultipartStreamUploader (#2769).
         
     | 
| 
      
 156 
     | 
    
         
            +
             
     | 
| 
      
 157 
     | 
    
         
            +
            1.116.0 (2022-10-21)
         
     | 
| 
      
 158 
     | 
    
         
            +
            ------------------
         
     | 
| 
      
 159 
     | 
    
         
            +
             
     | 
| 
      
 160 
     | 
    
         
            +
            * Feature - S3 on Outposts launches support for automatic bucket-style alias. You can use the automatic access point alias instead of an access point ARN for any object-level operation in an Outposts bucket.
         
     | 
| 
      
 161 
     | 
    
         
            +
             
     | 
| 
      
 162 
     | 
    
         
            +
            1.115.0 (2022-10-19)
         
     | 
| 
      
 163 
     | 
    
         
            +
            ------------------
         
     | 
| 
      
 164 
     | 
    
         
            +
             
     | 
| 
      
 165 
     | 
    
         
            +
            * Feature - Updates internal logic for constructing API endpoints. We have added rule-based endpoints and internal model parameters.
         
     | 
| 
      
 166 
     | 
    
         
            +
             
     | 
| 
       4 
167 
     | 
    
         
             
            1.114.0 (2022-05-03)
         
     | 
| 
       5 
168 
     | 
    
         
             
            ------------------
         
     | 
| 
       6 
169 
     | 
    
         | 
    
        data/VERSION
    CHANGED
    
    | 
         @@ -1 +1 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            1. 
     | 
| 
      
 1 
     | 
    
         
            +
            1.136.0
         
     | 
    
        data/lib/aws-sdk-s3/bucket.rb
    CHANGED
    
    | 
         @@ -95,7 +95,9 @@ module Aws::S3 
     | 
|
| 
       95 
95 
     | 
    
         
             
                  options, params = separate_params_and_options(options)
         
     | 
| 
       96 
96 
     | 
    
         
             
                  waiter = Waiters::BucketExists.new(options)
         
     | 
| 
       97 
97 
     | 
    
         
             
                  yield_waiter_and_warn(waiter, &block) if block_given?
         
     | 
| 
       98 
     | 
    
         
            -
                   
     | 
| 
      
 98 
     | 
    
         
            +
                  Aws::Plugins::UserAgent.feature('resource') do
         
     | 
| 
      
 99 
     | 
    
         
            +
                    waiter.wait(params.merge(bucket: @name))
         
     | 
| 
      
 100 
     | 
    
         
            +
                  end
         
     | 
| 
       99 
101 
     | 
    
         
             
                  Bucket.new({
         
     | 
| 
       100 
102 
     | 
    
         
             
                    name: @name,
         
     | 
| 
       101 
103 
     | 
    
         
             
                    client: @client
         
     | 
| 
         @@ -112,7 +114,9 @@ module Aws::S3 
     | 
|
| 
       112 
114 
     | 
    
         
             
                  options, params = separate_params_and_options(options)
         
     | 
| 
       113 
115 
     | 
    
         
             
                  waiter = Waiters::BucketNotExists.new(options)
         
     | 
| 
       114 
116 
     | 
    
         
             
                  yield_waiter_and_warn(waiter, &block) if block_given?
         
     | 
| 
       115 
     | 
    
         
            -
                   
     | 
| 
      
 117 
     | 
    
         
            +
                  Aws::Plugins::UserAgent.feature('resource') do
         
     | 
| 
      
 118 
     | 
    
         
            +
                    waiter.wait(params.merge(bucket: @name))
         
     | 
| 
      
 119 
     | 
    
         
            +
                  end
         
     | 
| 
       116 
120 
     | 
    
         
             
                  Bucket.new({
         
     | 
| 
       117 
121 
     | 
    
         
             
                    name: @name,
         
     | 
| 
       118 
122 
     | 
    
         
             
                    client: @client
         
     | 
| 
         @@ -213,7 +217,9 @@ module Aws::S3 
     | 
|
| 
       213 
217 
     | 
    
         
             
                      :retry
         
     | 
| 
       214 
218 
     | 
    
         
             
                    end
         
     | 
| 
       215 
219 
     | 
    
         
             
                  end
         
     | 
| 
       216 
     | 
    
         
            -
                  Aws:: 
     | 
| 
      
 220 
     | 
    
         
            +
                  Aws::Plugins::UserAgent.feature('resource') do
         
     | 
| 
      
 221 
     | 
    
         
            +
                    Aws::Waiters::Waiter.new(options).wait({})
         
     | 
| 
      
 222 
     | 
    
         
            +
                  end
         
     | 
| 
       217 
223 
     | 
    
         
             
                end
         
     | 
| 
       218 
224 
     | 
    
         | 
| 
       219 
225 
     | 
    
         
             
                # @!group Actions
         
     | 
| 
         @@ -223,7 +229,7 @@ module Aws::S3 
     | 
|
| 
       223 
229 
     | 
    
         
             
                #   bucket.create({
         
     | 
| 
       224 
230 
     | 
    
         
             
                #     acl: "private", # accepts private, public-read, public-read-write, authenticated-read
         
     | 
| 
       225 
231 
     | 
    
         
             
                #     create_bucket_configuration: {
         
     | 
| 
       226 
     | 
    
         
            -
                #       location_constraint: "af-south-1", # accepts af-south-1, ap-east-1, ap-northeast-1, ap-northeast-2, ap-northeast-3, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, cn-north-1, cn-northwest-1, EU, eu-central-1, eu-north-1, eu-south-1, eu-west-1, eu-west-2, eu-west-3, me-south-1, sa-east-1, us-east-2, us-gov-east-1, us-gov-west-1, us-west-1, us-west-2
         
     | 
| 
      
 232 
     | 
    
         
            +
                #       location_constraint: "af-south-1", # accepts af-south-1, ap-east-1, ap-northeast-1, ap-northeast-2, ap-northeast-3, ap-south-1, ap-southeast-1, ap-southeast-2, ap-southeast-3, ca-central-1, cn-north-1, cn-northwest-1, EU, eu-central-1, eu-north-1, eu-south-1, eu-west-1, eu-west-2, eu-west-3, me-south-1, sa-east-1, us-east-2, us-gov-east-1, us-gov-west-1, us-west-1, us-west-2, ap-south-2, eu-south-2
         
     | 
| 
       227 
233 
     | 
    
         
             
                #     },
         
     | 
| 
       228 
234 
     | 
    
         
             
                #     grant_full_control: "GrantFullControl",
         
     | 
| 
       229 
235 
     | 
    
         
             
                #     grant_read: "GrantRead",
         
     | 
| 
         @@ -275,7 +281,9 @@ module Aws::S3 
     | 
|
| 
       275 
281 
     | 
    
         
             
                # @return [Types::CreateBucketOutput]
         
     | 
| 
       276 
282 
     | 
    
         
             
                def create(options = {})
         
     | 
| 
       277 
283 
     | 
    
         
             
                  options = options.merge(bucket: @name)
         
     | 
| 
       278 
     | 
    
         
            -
                  resp =  
     | 
| 
      
 284 
     | 
    
         
            +
                  resp = Aws::Plugins::UserAgent.feature('resource') do
         
     | 
| 
      
 285 
     | 
    
         
            +
                    @client.create_bucket(options)
         
     | 
| 
      
 286 
     | 
    
         
            +
                  end
         
     | 
| 
       279 
287 
     | 
    
         
             
                  resp.data
         
     | 
| 
       280 
288 
     | 
    
         
             
                end
         
     | 
| 
       281 
289 
     | 
    
         | 
| 
         @@ -292,7 +300,9 @@ module Aws::S3 
     | 
|
| 
       292 
300 
     | 
    
         
             
                # @return [EmptyStructure]
         
     | 
| 
       293 
301 
     | 
    
         
             
                def delete(options = {})
         
     | 
| 
       294 
302 
     | 
    
         
             
                  options = options.merge(bucket: @name)
         
     | 
| 
       295 
     | 
    
         
            -
                  resp =  
     | 
| 
      
 303 
     | 
    
         
            +
                  resp = Aws::Plugins::UserAgent.feature('resource') do
         
     | 
| 
      
 304 
     | 
    
         
            +
                    @client.delete_bucket(options)
         
     | 
| 
      
 305 
     | 
    
         
            +
                  end
         
     | 
| 
       296 
306 
     | 
    
         
             
                  resp.data
         
     | 
| 
       297 
307 
     | 
    
         
             
                end
         
     | 
| 
       298 
308 
     | 
    
         | 
| 
         @@ -325,9 +335,11 @@ module Aws::S3 
     | 
|
| 
       325 
335 
     | 
    
         
             
                # @option options [String] :request_payer
         
     | 
| 
       326 
336 
     | 
    
         
             
                #   Confirms that the requester knows that they will be charged for the
         
     | 
| 
       327 
337 
     | 
    
         
             
                #   request. Bucket owners need not specify this parameter in their
         
     | 
| 
       328 
     | 
    
         
            -
                #   requests.  
     | 
| 
       329 
     | 
    
         
            -
                #   Pays  
     | 
| 
       330 
     | 
    
         
            -
                #    
     | 
| 
      
 338 
     | 
    
         
            +
                #   requests. If either the source or destination Amazon S3 bucket has
         
     | 
| 
      
 339 
     | 
    
         
            +
                #   Requester Pays enabled, the requester will pay for corresponding
         
     | 
| 
      
 340 
     | 
    
         
            +
                #   charges to copy the object. For information about downloading objects
         
     | 
| 
      
 341 
     | 
    
         
            +
                #   from Requester Pays buckets, see [Downloading Objects in Requester
         
     | 
| 
      
 342 
     | 
    
         
            +
                #   Pays Buckets][1] in the *Amazon S3 User Guide*.
         
     | 
| 
       331 
343 
     | 
    
         
             
                #
         
     | 
| 
       332 
344 
     | 
    
         
             
                #
         
     | 
| 
       333 
345 
     | 
    
         
             
                #
         
     | 
| 
         @@ -361,7 +373,9 @@ module Aws::S3 
     | 
|
| 
       361 
373 
     | 
    
         
             
                # @return [Types::DeleteObjectsOutput]
         
     | 
| 
       362 
374 
     | 
    
         
             
                def delete_objects(options = {})
         
     | 
| 
       363 
375 
     | 
    
         
             
                  options = options.merge(bucket: @name)
         
     | 
| 
       364 
     | 
    
         
            -
                  resp =  
     | 
| 
      
 376 
     | 
    
         
            +
                  resp = Aws::Plugins::UserAgent.feature('resource') do
         
     | 
| 
      
 377 
     | 
    
         
            +
                    @client.delete_objects(options)
         
     | 
| 
      
 378 
     | 
    
         
            +
                  end
         
     | 
| 
       365 
379 
     | 
    
         
             
                  resp.data
         
     | 
| 
       366 
380 
     | 
    
         
             
                end
         
     | 
| 
       367 
381 
     | 
    
         | 
| 
         @@ -391,8 +405,8 @@ module Aws::S3 
     | 
|
| 
       391 
405 
     | 
    
         
             
                #     metadata: {
         
     | 
| 
       392 
406 
     | 
    
         
             
                #       "MetadataKey" => "MetadataValue",
         
     | 
| 
       393 
407 
     | 
    
         
             
                #     },
         
     | 
| 
       394 
     | 
    
         
            -
                #     server_side_encryption: "AES256", # accepts AES256, aws:kms
         
     | 
| 
       395 
     | 
    
         
            -
                #     storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS, GLACIER_IR
         
     | 
| 
      
 408 
     | 
    
         
            +
                #     server_side_encryption: "AES256", # accepts AES256, aws:kms, aws:kms:dsse
         
     | 
| 
      
 409 
     | 
    
         
            +
                #     storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS, GLACIER_IR, SNOW
         
     | 
| 
       396 
410 
     | 
    
         
             
                #     website_redirect_location: "WebsiteRedirectLocation",
         
     | 
| 
       397 
411 
     | 
    
         
             
                #     sse_customer_algorithm: "SSECustomerAlgorithm",
         
     | 
| 
       398 
412 
     | 
    
         
             
                #     sse_customer_key: "SSECustomerKey",
         
     | 
| 
         @@ -430,30 +444,30 @@ module Aws::S3 
     | 
|
| 
       430 
444 
     | 
    
         
             
                # @option options [String] :content_disposition
         
     | 
| 
       431 
445 
     | 
    
         
             
                #   Specifies presentational information for the object. For more
         
     | 
| 
       432 
446 
     | 
    
         
             
                #   information, see
         
     | 
| 
       433 
     | 
    
         
            -
                #   [ 
     | 
| 
      
 447 
     | 
    
         
            +
                #   [https://www.rfc-editor.org/rfc/rfc6266#section-4][1].
         
     | 
| 
       434 
448 
     | 
    
         
             
                #
         
     | 
| 
       435 
449 
     | 
    
         
             
                #
         
     | 
| 
       436 
450 
     | 
    
         
             
                #
         
     | 
| 
       437 
     | 
    
         
            -
                #   [1]:  
     | 
| 
      
 451 
     | 
    
         
            +
                #   [1]: https://www.rfc-editor.org/rfc/rfc6266#section-4
         
     | 
| 
       438 
452 
     | 
    
         
             
                # @option options [String] :content_encoding
         
     | 
| 
       439 
453 
     | 
    
         
             
                #   Specifies what content encodings have been applied to the object and
         
     | 
| 
       440 
454 
     | 
    
         
             
                #   thus what decoding mechanisms must be applied to obtain the media-type
         
     | 
| 
       441 
455 
     | 
    
         
             
                #   referenced by the Content-Type header field. For more information, see
         
     | 
| 
       442 
     | 
    
         
            -
                #   [ 
     | 
| 
      
 456 
     | 
    
         
            +
                #   [https://www.rfc-editor.org/rfc/rfc9110.html#field.content-encoding][1].
         
     | 
| 
       443 
457 
     | 
    
         
             
                #
         
     | 
| 
       444 
458 
     | 
    
         
             
                #
         
     | 
| 
       445 
459 
     | 
    
         
             
                #
         
     | 
| 
       446 
     | 
    
         
            -
                #   [1]:  
     | 
| 
      
 460 
     | 
    
         
            +
                #   [1]: https://www.rfc-editor.org/rfc/rfc9110.html#field.content-encoding
         
     | 
| 
       447 
461 
     | 
    
         
             
                # @option options [String] :content_language
         
     | 
| 
       448 
462 
     | 
    
         
             
                #   The language the content is in.
         
     | 
| 
       449 
463 
     | 
    
         
             
                # @option options [Integer] :content_length
         
     | 
| 
       450 
464 
     | 
    
         
             
                #   Size of the body in bytes. This parameter is useful when the size of
         
     | 
| 
       451 
465 
     | 
    
         
             
                #   the body cannot be determined automatically. For more information, see
         
     | 
| 
       452 
     | 
    
         
            -
                #   [ 
     | 
| 
      
 466 
     | 
    
         
            +
                #   [https://www.rfc-editor.org/rfc/rfc9110.html#name-content-length][1].
         
     | 
| 
       453 
467 
     | 
    
         
             
                #
         
     | 
| 
       454 
468 
     | 
    
         
             
                #
         
     | 
| 
       455 
469 
     | 
    
         
             
                #
         
     | 
| 
       456 
     | 
    
         
            -
                #   [1]:  
     | 
| 
      
 470 
     | 
    
         
            +
                #   [1]: https://www.rfc-editor.org/rfc/rfc9110.html#name-content-length
         
     | 
| 
       457 
471 
     | 
    
         
             
                # @option options [String] :content_md5
         
     | 
| 
       458 
472 
     | 
    
         
             
                #   The base64-encoded 128-bit MD5 digest of the message (without the
         
     | 
| 
       459 
473 
     | 
    
         
             
                #   headers) according to RFC 1864. This header can be used as a message
         
     | 
| 
         @@ -469,11 +483,11 @@ module Aws::S3 
     | 
|
| 
       469 
483 
     | 
    
         
             
                # @option options [String] :content_type
         
     | 
| 
       470 
484 
     | 
    
         
             
                #   A standard MIME type describing the format of the contents. For more
         
     | 
| 
       471 
485 
     | 
    
         
             
                #   information, see
         
     | 
| 
       472 
     | 
    
         
            -
                #   [ 
     | 
| 
      
 486 
     | 
    
         
            +
                #   [https://www.rfc-editor.org/rfc/rfc9110.html#name-content-type][1].
         
     | 
| 
       473 
487 
     | 
    
         
             
                #
         
     | 
| 
       474 
488 
     | 
    
         
             
                #
         
     | 
| 
       475 
489 
     | 
    
         
             
                #
         
     | 
| 
       476 
     | 
    
         
            -
                #   [1]:  
     | 
| 
      
 490 
     | 
    
         
            +
                #   [1]: https://www.rfc-editor.org/rfc/rfc9110.html#name-content-type
         
     | 
| 
       477 
491 
     | 
    
         
             
                # @option options [String] :checksum_algorithm
         
     | 
| 
       478 
492 
     | 
    
         
             
                #   Indicates the algorithm used to create the checksum for the object
         
     | 
| 
       479 
493 
     | 
    
         
             
                #   when using the SDK. This header will not provide any additional
         
     | 
| 
         @@ -532,11 +546,11 @@ module Aws::S3 
     | 
|
| 
       532 
546 
     | 
    
         
             
                # @option options [Time,DateTime,Date,Integer,String] :expires
         
     | 
| 
       533 
547 
     | 
    
         
             
                #   The date and time at which the object is no longer cacheable. For more
         
     | 
| 
       534 
548 
     | 
    
         
             
                #   information, see
         
     | 
| 
       535 
     | 
    
         
            -
                #   [ 
     | 
| 
      
 549 
     | 
    
         
            +
                #   [https://www.rfc-editor.org/rfc/rfc7234#section-5.3][1].
         
     | 
| 
       536 
550 
     | 
    
         
             
                #
         
     | 
| 
       537 
551 
     | 
    
         
             
                #
         
     | 
| 
       538 
552 
     | 
    
         
             
                #
         
     | 
| 
       539 
     | 
    
         
            -
                #   [1]:  
     | 
| 
      
 553 
     | 
    
         
            +
                #   [1]: https://www.rfc-editor.org/rfc/rfc7234#section-5.3
         
     | 
| 
       540 
554 
     | 
    
         
             
                # @option options [String] :grant_full_control
         
     | 
| 
       541 
555 
     | 
    
         
             
                #   Gives the grantee READ, READ\_ACP, and WRITE\_ACP permissions on the
         
     | 
| 
       542 
556 
     | 
    
         
             
                #   object.
         
     | 
| 
         @@ -560,7 +574,7 @@ module Aws::S3 
     | 
|
| 
       560 
574 
     | 
    
         
             
                #   A map of metadata to store with the object in S3.
         
     | 
| 
       561 
575 
     | 
    
         
             
                # @option options [String] :server_side_encryption
         
     | 
| 
       562 
576 
     | 
    
         
             
                #   The server-side encryption algorithm used when storing this object in
         
     | 
| 
       563 
     | 
    
         
            -
                #   Amazon S3 (for example, AES256 
     | 
| 
      
 577 
     | 
    
         
            +
                #   Amazon S3 (for example, `AES256`, `aws:kms`, `aws:kms:dsse`).
         
     | 
| 
       564 
578 
     | 
    
         
             
                # @option options [String] :storage_class
         
     | 
| 
       565 
579 
     | 
    
         
             
                #   By default, Amazon S3 uses the STANDARD Storage Class to store newly
         
     | 
| 
       566 
580 
     | 
    
         
             
                #   created objects. The STANDARD storage class provides high durability
         
     | 
| 
         @@ -611,33 +625,39 @@ module Aws::S3 
     | 
|
| 
       611 
625 
     | 
    
         
             
                #   RFC 1321. Amazon S3 uses this header for a message integrity check to
         
     | 
| 
       612 
626 
     | 
    
         
             
                #   ensure that the encryption key was transmitted without error.
         
     | 
| 
       613 
627 
     | 
    
         
             
                # @option options [String] :ssekms_key_id
         
     | 
| 
       614 
     | 
    
         
            -
                #   If `x-amz-server-side-encryption`  
     | 
| 
       615 
     | 
    
         
            -
                #   `aws:kms`, this header specifies the ID  
     | 
| 
       616 
     | 
    
         
            -
                #   Management Service ( 
     | 
| 
       617 
     | 
    
         
            -
                #   managed key that was used for the object. If you specify
         
     | 
| 
       618 
     | 
    
         
            -
                #   `x-amz-server-side-encryption:aws:kms 
     | 
| 
      
 628 
     | 
    
         
            +
                #   If `x-amz-server-side-encryption` has a valid value of `aws:kms` or
         
     | 
| 
      
 629 
     | 
    
         
            +
                #   `aws:kms:dsse`, this header specifies the ID (Key ID, Key ARN, or Key
         
     | 
| 
      
 630 
     | 
    
         
            +
                #   Alias) of the Key Management Service (KMS) symmetric encryption
         
     | 
| 
      
 631 
     | 
    
         
            +
                #   customer managed key that was used for the object. If you specify
         
     | 
| 
      
 632 
     | 
    
         
            +
                #   `x-amz-server-side-encryption:aws:kms` or
         
     | 
| 
      
 633 
     | 
    
         
            +
                #   `x-amz-server-side-encryption:aws:kms:dsse`, but do not provide`
         
     | 
| 
       619 
634 
     | 
    
         
             
                #   x-amz-server-side-encryption-aws-kms-key-id`, Amazon S3 uses the
         
     | 
| 
       620 
     | 
    
         
            -
                #   Amazon Web Services managed key to protect the data. If the 
     | 
| 
       621 
     | 
    
         
            -
                #   does not exist in the same account issuing the 
     | 
| 
       622 
     | 
    
         
            -
                #   the full ARN and not just the ID.
         
     | 
| 
      
 635 
     | 
    
         
            +
                #   Amazon Web Services managed key (`aws/s3`) to protect the data. If the
         
     | 
| 
      
 636 
     | 
    
         
            +
                #   KMS key does not exist in the same account that's issuing the
         
     | 
| 
      
 637 
     | 
    
         
            +
                #   command, you must use the full ARN and not just the ID.
         
     | 
| 
       623 
638 
     | 
    
         
             
                # @option options [String] :ssekms_encryption_context
         
     | 
| 
       624 
639 
     | 
    
         
             
                #   Specifies the Amazon Web Services KMS Encryption Context to use for
         
     | 
| 
       625 
640 
     | 
    
         
             
                #   object encryption. The value of this header is a base64-encoded UTF-8
         
     | 
| 
       626 
     | 
    
         
            -
                #   string holding JSON with the encryption context key-value pairs.
         
     | 
| 
      
 641 
     | 
    
         
            +
                #   string holding JSON with the encryption context key-value pairs. This
         
     | 
| 
      
 642 
     | 
    
         
            +
                #   value is stored as object metadata and automatically gets passed on to
         
     | 
| 
      
 643 
     | 
    
         
            +
                #   Amazon Web Services KMS for future `GetObject` or `CopyObject`
         
     | 
| 
      
 644 
     | 
    
         
            +
                #   operations on this object.
         
     | 
| 
       627 
645 
     | 
    
         
             
                # @option options [Boolean] :bucket_key_enabled
         
     | 
| 
       628 
646 
     | 
    
         
             
                #   Specifies whether Amazon S3 should use an S3 Bucket Key for object
         
     | 
| 
       629 
     | 
    
         
            -
                #   encryption with server-side encryption using  
     | 
| 
       630 
     | 
    
         
            -
                #   Setting this header to `true` causes Amazon S3 
     | 
| 
       631 
     | 
    
         
            -
                #   for object encryption with SSE-KMS.
         
     | 
| 
      
 647 
     | 
    
         
            +
                #   encryption with server-side encryption using Key Management Service
         
     | 
| 
      
 648 
     | 
    
         
            +
                #   (KMS) keys (SSE-KMS). Setting this header to `true` causes Amazon S3
         
     | 
| 
      
 649 
     | 
    
         
            +
                #   to use an S3 Bucket Key for object encryption with SSE-KMS.
         
     | 
| 
       632 
650 
     | 
    
         
             
                #
         
     | 
| 
       633 
651 
     | 
    
         
             
                #   Specifying this header with a PUT action doesn’t affect bucket-level
         
     | 
| 
       634 
652 
     | 
    
         
             
                #   settings for S3 Bucket Key.
         
     | 
| 
       635 
653 
     | 
    
         
             
                # @option options [String] :request_payer
         
     | 
| 
       636 
654 
     | 
    
         
             
                #   Confirms that the requester knows that they will be charged for the
         
     | 
| 
       637 
655 
     | 
    
         
             
                #   request. Bucket owners need not specify this parameter in their
         
     | 
| 
       638 
     | 
    
         
            -
                #   requests.  
     | 
| 
       639 
     | 
    
         
            -
                #   Pays  
     | 
| 
       640 
     | 
    
         
            -
                #    
     | 
| 
      
 656 
     | 
    
         
            +
                #   requests. If either the source or destination Amazon S3 bucket has
         
     | 
| 
      
 657 
     | 
    
         
            +
                #   Requester Pays enabled, the requester will pay for corresponding
         
     | 
| 
      
 658 
     | 
    
         
            +
                #   charges to copy the object. For information about downloading objects
         
     | 
| 
      
 659 
     | 
    
         
            +
                #   from Requester Pays buckets, see [Downloading Objects in Requester
         
     | 
| 
      
 660 
     | 
    
         
            +
                #   Pays Buckets][1] in the *Amazon S3 User Guide*.
         
     | 
| 
       641 
661 
     | 
    
         
             
                #
         
     | 
| 
       642 
662 
     | 
    
         
             
                #
         
     | 
| 
       643 
663 
     | 
    
         
             
                #
         
     | 
| 
         @@ -664,7 +684,9 @@ module Aws::S3 
     | 
|
| 
       664 
684 
     | 
    
         
             
                # @return [Object]
         
     | 
| 
       665 
685 
     | 
    
         
             
                def put_object(options = {})
         
     | 
| 
       666 
686 
     | 
    
         
             
                  options = options.merge(bucket: @name)
         
     | 
| 
       667 
     | 
    
         
            -
                   
     | 
| 
      
 687 
     | 
    
         
            +
                  Aws::Plugins::UserAgent.feature('resource') do
         
     | 
| 
      
 688 
     | 
    
         
            +
                    @client.put_object(options)
         
     | 
| 
      
 689 
     | 
    
         
            +
                  end
         
     | 
| 
       668 
690 
     | 
    
         
             
                  Object.new(
         
     | 
| 
       669 
691 
     | 
    
         
             
                    bucket_name: @name,
         
     | 
| 
       670 
692 
     | 
    
         
             
                    key: options[:key],
         
     | 
| 
         @@ -723,6 +745,7 @@ module Aws::S3 
     | 
|
| 
       723 
745 
     | 
    
         
             
                #     prefix: "Prefix",
         
     | 
| 
       724 
746 
     | 
    
         
             
                #     upload_id_marker: "UploadIdMarker",
         
     | 
| 
       725 
747 
     | 
    
         
             
                #     expected_bucket_owner: "AccountId",
         
     | 
| 
      
 748 
     | 
    
         
            +
                #     request_payer: "requester", # accepts requester
         
     | 
| 
       726 
749 
     | 
    
         
             
                #   })
         
     | 
| 
       727 
750 
     | 
    
         
             
                # @param [Hash] options ({})
         
     | 
| 
       728 
751 
     | 
    
         
             
                # @option options [String] :delimiter
         
     | 
| 
         @@ -736,14 +759,14 @@ module Aws::S3 
     | 
|
| 
       736 
759 
     | 
    
         
             
                #   result element are not returned elsewhere in the response.
         
     | 
| 
       737 
760 
     | 
    
         
             
                # @option options [String] :encoding_type
         
     | 
| 
       738 
761 
     | 
    
         
             
                #   Requests Amazon S3 to encode the object keys in the response and
         
     | 
| 
       739 
     | 
    
         
            -
                #   specifies the encoding method to use. An object key  
     | 
| 
       740 
     | 
    
         
            -
                #   Unicode character; however, XML 1.0 parser cannot parse some
         
     | 
| 
      
 762 
     | 
    
         
            +
                #   specifies the encoding method to use. An object key can contain any
         
     | 
| 
      
 763 
     | 
    
         
            +
                #   Unicode character; however, the XML 1.0 parser cannot parse some
         
     | 
| 
       741 
764 
     | 
    
         
             
                #   characters, such as characters with an ASCII value from 0 to 10. For
         
     | 
| 
       742 
765 
     | 
    
         
             
                #   characters that are not supported in XML 1.0, you can add this
         
     | 
| 
       743 
766 
     | 
    
         
             
                #   parameter to request that Amazon S3 encode the keys in the response.
         
     | 
| 
       744 
767 
     | 
    
         
             
                # @option options [String] :key_marker
         
     | 
| 
       745 
     | 
    
         
            -
                #   Together with upload-id-marker 
     | 
| 
       746 
     | 
    
         
            -
                #   upload after which listing should begin.
         
     | 
| 
      
 768 
     | 
    
         
            +
                #   Together with `upload-id-marker`, this parameter specifies the
         
     | 
| 
      
 769 
     | 
    
         
            +
                #   multipart upload after which listing should begin.
         
     | 
| 
       747 
770 
     | 
    
         
             
                #
         
     | 
| 
       748 
771 
     | 
    
         
             
                #   If `upload-id-marker` is not specified, only the keys
         
     | 
| 
       749 
772 
     | 
    
         
             
                #   lexicographically greater than the specified `key-marker` will be
         
     | 
| 
         @@ -756,8 +779,8 @@ module Aws::S3 
     | 
|
| 
       756 
779 
     | 
    
         
             
                # @option options [String] :prefix
         
     | 
| 
       757 
780 
     | 
    
         
             
                #   Lists in-progress uploads only for those keys that begin with the
         
     | 
| 
       758 
781 
     | 
    
         
             
                #   specified prefix. You can use prefixes to separate a bucket into
         
     | 
| 
       759 
     | 
    
         
            -
                #   different grouping of keys. (You can think of using prefix to make
         
     | 
| 
       760 
     | 
    
         
            -
                #   groups in the same way you'd use a folder in a file system.)
         
     | 
| 
      
 782 
     | 
    
         
            +
                #   different grouping of keys. (You can think of using `prefix` to make
         
     | 
| 
      
 783 
     | 
    
         
            +
                #   groups in the same way that you'd use a folder in a file system.)
         
     | 
| 
       761 
784 
     | 
    
         
             
                # @option options [String] :upload_id_marker
         
     | 
| 
       762 
785 
     | 
    
         
             
                #   Together with key-marker, specifies the multipart upload after which
         
     | 
| 
       763 
786 
     | 
    
         
             
                #   listing should begin. If key-marker is not specified, the
         
     | 
| 
         @@ -769,11 +792,25 @@ module Aws::S3 
     | 
|
| 
       769 
792 
     | 
    
         
             
                #   The account ID of the expected bucket owner. If the bucket is owned by
         
     | 
| 
       770 
793 
     | 
    
         
             
                #   a different account, the request fails with the HTTP status code `403
         
     | 
| 
       771 
794 
     | 
    
         
             
                #   Forbidden` (access denied).
         
     | 
| 
      
 795 
     | 
    
         
            +
                # @option options [String] :request_payer
         
     | 
| 
      
 796 
     | 
    
         
            +
                #   Confirms that the requester knows that they will be charged for the
         
     | 
| 
      
 797 
     | 
    
         
            +
                #   request. Bucket owners need not specify this parameter in their
         
     | 
| 
      
 798 
     | 
    
         
            +
                #   requests. If either the source or destination Amazon S3 bucket has
         
     | 
| 
      
 799 
     | 
    
         
            +
                #   Requester Pays enabled, the requester will pay for corresponding
         
     | 
| 
      
 800 
     | 
    
         
            +
                #   charges to copy the object. For information about downloading objects
         
     | 
| 
      
 801 
     | 
    
         
            +
                #   from Requester Pays buckets, see [Downloading Objects in Requester
         
     | 
| 
      
 802 
     | 
    
         
            +
                #   Pays Buckets][1] in the *Amazon S3 User Guide*.
         
     | 
| 
      
 803 
     | 
    
         
            +
                #
         
     | 
| 
      
 804 
     | 
    
         
            +
                #
         
     | 
| 
      
 805 
     | 
    
         
            +
                #
         
     | 
| 
      
 806 
     | 
    
         
            +
                #   [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
         
     | 
| 
       772 
807 
     | 
    
         
             
                # @return [MultipartUpload::Collection]
         
     | 
| 
       773 
808 
     | 
    
         
             
                def multipart_uploads(options = {})
         
     | 
| 
       774 
809 
     | 
    
         
             
                  batches = Enumerator.new do |y|
         
     | 
| 
       775 
810 
     | 
    
         
             
                    options = options.merge(bucket: @name)
         
     | 
| 
       776 
     | 
    
         
            -
                    resp =  
     | 
| 
      
 811 
     | 
    
         
            +
                    resp = Aws::Plugins::UserAgent.feature('resource') do
         
     | 
| 
      
 812 
     | 
    
         
            +
                      @client.list_multipart_uploads(options)
         
     | 
| 
      
 813 
     | 
    
         
            +
                    end
         
     | 
| 
       777 
814 
     | 
    
         
             
                    resp.each_page do |page|
         
     | 
| 
       778 
815 
     | 
    
         
             
                      batch = []
         
     | 
| 
       779 
816 
     | 
    
         
             
                      page.data.uploads.each do |u|
         
     | 
| 
         @@ -818,19 +855,21 @@ module Aws::S3 
     | 
|
| 
       818 
855 
     | 
    
         
             
                #     prefix: "Prefix",
         
     | 
| 
       819 
856 
     | 
    
         
             
                #     version_id_marker: "VersionIdMarker",
         
     | 
| 
       820 
857 
     | 
    
         
             
                #     expected_bucket_owner: "AccountId",
         
     | 
| 
      
 858 
     | 
    
         
            +
                #     request_payer: "requester", # accepts requester
         
     | 
| 
      
 859 
     | 
    
         
            +
                #     optional_object_attributes: ["RestoreStatus"], # accepts RestoreStatus
         
     | 
| 
       821 
860 
     | 
    
         
             
                #   })
         
     | 
| 
       822 
861 
     | 
    
         
             
                # @param [Hash] options ({})
         
     | 
| 
       823 
862 
     | 
    
         
             
                # @option options [String] :delimiter
         
     | 
| 
       824 
863 
     | 
    
         
             
                #   A delimiter is a character that you specify to group keys. All keys
         
     | 
| 
       825 
864 
     | 
    
         
             
                #   that contain the same string between the `prefix` and the first
         
     | 
| 
       826 
865 
     | 
    
         
             
                #   occurrence of the delimiter are grouped under a single result element
         
     | 
| 
       827 
     | 
    
         
            -
                #   in CommonPrefixes 
     | 
| 
       828 
     | 
    
         
            -
                #   max-keys limitation. These keys are not returned elsewhere in 
     | 
| 
       829 
     | 
    
         
            -
                #   response.
         
     | 
| 
      
 866 
     | 
    
         
            +
                #   in `CommonPrefixes`. These groups are counted as one result against
         
     | 
| 
      
 867 
     | 
    
         
            +
                #   the `max-keys` limitation. These keys are not returned elsewhere in
         
     | 
| 
      
 868 
     | 
    
         
            +
                #   the response.
         
     | 
| 
       830 
869 
     | 
    
         
             
                # @option options [String] :encoding_type
         
     | 
| 
       831 
870 
     | 
    
         
             
                #   Requests Amazon S3 to encode the object keys in the response and
         
     | 
| 
       832 
     | 
    
         
            -
                #   specifies the encoding method to use. An object key  
     | 
| 
       833 
     | 
    
         
            -
                #   Unicode character; however, XML 1.0 parser cannot parse some
         
     | 
| 
      
 871 
     | 
    
         
            +
                #   specifies the encoding method to use. An object key can contain any
         
     | 
| 
      
 872 
     | 
    
         
            +
                #   Unicode character; however, the XML 1.0 parser cannot parse some
         
     | 
| 
       834 
873 
     | 
    
         
             
                #   characters, such as characters with an ASCII value from 0 to 10. For
         
     | 
| 
       835 
874 
     | 
    
         
             
                #   characters that are not supported in XML 1.0, you can add this
         
     | 
| 
       836 
875 
     | 
    
         
             
                #   parameter to request that Amazon S3 encode the keys in the response.
         
     | 
| 
         @@ -839,21 +878,38 @@ module Aws::S3 
     | 
|
| 
       839 
878 
     | 
    
         
             
                # @option options [String] :prefix
         
     | 
| 
       840 
879 
     | 
    
         
             
                #   Use this parameter to select only those keys that begin with the
         
     | 
| 
       841 
880 
     | 
    
         
             
                #   specified prefix. You can use prefixes to separate a bucket into
         
     | 
| 
       842 
     | 
    
         
            -
                #   different groupings of keys. (You can think of using prefix to make
         
     | 
| 
       843 
     | 
    
         
            -
                #   groups in the same way you'd use a folder in a file system.) You 
     | 
| 
       844 
     | 
    
         
            -
                #   use prefix with delimiter to roll up numerous objects into a 
     | 
| 
       845 
     | 
    
         
            -
                #   result under CommonPrefixes 
     | 
| 
      
 881 
     | 
    
         
            +
                #   different groupings of keys. (You can think of using `prefix` to make
         
     | 
| 
      
 882 
     | 
    
         
            +
                #   groups in the same way that you'd use a folder in a file system.) You
         
     | 
| 
      
 883 
     | 
    
         
            +
                #   can use `prefix` with `delimiter` to roll up numerous objects into a
         
     | 
| 
      
 884 
     | 
    
         
            +
                #   single result under `CommonPrefixes`.
         
     | 
| 
       846 
885 
     | 
    
         
             
                # @option options [String] :version_id_marker
         
     | 
| 
       847 
886 
     | 
    
         
             
                #   Specifies the object version you want to start listing from.
         
     | 
| 
       848 
887 
     | 
    
         
             
                # @option options [String] :expected_bucket_owner
         
     | 
| 
       849 
888 
     | 
    
         
             
                #   The account ID of the expected bucket owner. If the bucket is owned by
         
     | 
| 
       850 
889 
     | 
    
         
             
                #   a different account, the request fails with the HTTP status code `403
         
     | 
| 
       851 
890 
     | 
    
         
             
                #   Forbidden` (access denied).
         
     | 
| 
      
 891 
     | 
    
         
            +
                # @option options [String] :request_payer
         
     | 
| 
      
 892 
     | 
    
         
            +
                #   Confirms that the requester knows that they will be charged for the
         
     | 
| 
      
 893 
     | 
    
         
            +
                #   request. Bucket owners need not specify this parameter in their
         
     | 
| 
      
 894 
     | 
    
         
            +
                #   requests. If either the source or destination Amazon S3 bucket has
         
     | 
| 
      
 895 
     | 
    
         
            +
                #   Requester Pays enabled, the requester will pay for corresponding
         
     | 
| 
      
 896 
     | 
    
         
            +
                #   charges to copy the object. For information about downloading objects
         
     | 
| 
      
 897 
     | 
    
         
            +
                #   from Requester Pays buckets, see [Downloading Objects in Requester
         
     | 
| 
      
 898 
     | 
    
         
            +
                #   Pays Buckets][1] in the *Amazon S3 User Guide*.
         
     | 
| 
      
 899 
     | 
    
         
            +
                #
         
     | 
| 
      
 900 
     | 
    
         
            +
                #
         
     | 
| 
      
 901 
     | 
    
         
            +
                #
         
     | 
| 
      
 902 
     | 
    
         
            +
                #   [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
         
     | 
| 
      
 903 
     | 
    
         
            +
                # @option options [Array<String>] :optional_object_attributes
         
     | 
| 
      
 904 
     | 
    
         
            +
                #   Specifies the optional fields that you want returned in the response.
         
     | 
| 
      
 905 
     | 
    
         
            +
                #   Fields that you do not specify are not returned.
         
     | 
| 
       852 
906 
     | 
    
         
             
                # @return [ObjectVersion::Collection]
         
     | 
| 
       853 
907 
     | 
    
         
             
                def object_versions(options = {})
         
     | 
| 
       854 
908 
     | 
    
         
             
                  batches = Enumerator.new do |y|
         
     | 
| 
       855 
909 
     | 
    
         
             
                    options = options.merge(bucket: @name)
         
     | 
| 
       856 
     | 
    
         
            -
                    resp =  
     | 
| 
      
 910 
     | 
    
         
            +
                    resp = Aws::Plugins::UserAgent.feature('resource') do
         
     | 
| 
      
 911 
     | 
    
         
            +
                      @client.list_object_versions(options)
         
     | 
| 
      
 912 
     | 
    
         
            +
                    end
         
     | 
| 
       857 
913 
     | 
    
         
             
                    resp.each_page do |page|
         
     | 
| 
       858 
914 
     | 
    
         
             
                      batch = []
         
     | 
| 
       859 
915 
     | 
    
         
             
                      page.data.versions_delete_markers.each do |v|
         
     | 
| 
         @@ -881,18 +937,19 @@ module Aws::S3 
     | 
|
| 
       881 
937 
     | 
    
         
             
                #     start_after: "StartAfter",
         
     | 
| 
       882 
938 
     | 
    
         
             
                #     request_payer: "requester", # accepts requester
         
     | 
| 
       883 
939 
     | 
    
         
             
                #     expected_bucket_owner: "AccountId",
         
     | 
| 
      
 940 
     | 
    
         
            +
                #     optional_object_attributes: ["RestoreStatus"], # accepts RestoreStatus
         
     | 
| 
       884 
941 
     | 
    
         
             
                #   })
         
     | 
| 
       885 
942 
     | 
    
         
             
                # @param [Hash] options ({})
         
     | 
| 
       886 
943 
     | 
    
         
             
                # @option options [String] :delimiter
         
     | 
| 
       887 
     | 
    
         
            -
                #   A delimiter is a character you use to group keys.
         
     | 
| 
      
 944 
     | 
    
         
            +
                #   A delimiter is a character that you use to group keys.
         
     | 
| 
       888 
945 
     | 
    
         
             
                # @option options [String] :encoding_type
         
     | 
| 
       889 
946 
     | 
    
         
             
                #   Encoding type used by Amazon S3 to encode object keys in the response.
         
     | 
| 
       890 
947 
     | 
    
         
             
                # @option options [String] :prefix
         
     | 
| 
       891 
948 
     | 
    
         
             
                #   Limits the response to keys that begin with the specified prefix.
         
     | 
| 
       892 
949 
     | 
    
         
             
                # @option options [Boolean] :fetch_owner
         
     | 
| 
       893 
     | 
    
         
            -
                #   The owner field is not present in  
     | 
| 
       894 
     | 
    
         
            -
                #   return owner field with each key in the result then set 
     | 
| 
       895 
     | 
    
         
            -
                #    
     | 
| 
      
 950 
     | 
    
         
            +
                #   The owner field is not present in `ListObjectsV2` by default. If you
         
     | 
| 
      
 951 
     | 
    
         
            +
                #   want to return the owner field with each key in the result, then set
         
     | 
| 
      
 952 
     | 
    
         
            +
                #   the `FetchOwner` field to `true`.
         
     | 
| 
       896 
953 
     | 
    
         
             
                # @option options [String] :start_after
         
     | 
| 
       897 
954 
     | 
    
         
             
                #   StartAfter is where you want Amazon S3 to start listing from. Amazon
         
     | 
| 
       898 
955 
     | 
    
         
             
                #   S3 starts listing after this specified key. StartAfter can be any key
         
     | 
| 
         @@ -905,11 +962,16 @@ module Aws::S3 
     | 
|
| 
       905 
962 
     | 
    
         
             
                #   The account ID of the expected bucket owner. If the bucket is owned by
         
     | 
| 
       906 
963 
     | 
    
         
             
                #   a different account, the request fails with the HTTP status code `403
         
     | 
| 
       907 
964 
     | 
    
         
             
                #   Forbidden` (access denied).
         
     | 
| 
      
 965 
     | 
    
         
            +
                # @option options [Array<String>] :optional_object_attributes
         
     | 
| 
      
 966 
     | 
    
         
            +
                #   Specifies the optional fields that you want returned in the response.
         
     | 
| 
      
 967 
     | 
    
         
            +
                #   Fields that you do not specify are not returned.
         
     | 
| 
       908 
968 
     | 
    
         
             
                # @return [ObjectSummary::Collection]
         
     | 
| 
       909 
969 
     | 
    
         
             
                def objects(options = {})
         
     | 
| 
       910 
970 
     | 
    
         
             
                  batches = Enumerator.new do |y|
         
     | 
| 
       911 
971 
     | 
    
         
             
                    options = options.merge(bucket: @name)
         
     | 
| 
       912 
     | 
    
         
            -
                    resp =  
     | 
| 
      
 972 
     | 
    
         
            +
                    resp = Aws::Plugins::UserAgent.feature('resource') do
         
     | 
| 
      
 973 
     | 
    
         
            +
                      @client.list_objects_v2(options)
         
     | 
| 
      
 974 
     | 
    
         
            +
                    end
         
     | 
| 
       913 
975 
     | 
    
         
             
                    resp.each_page do |page|
         
     | 
| 
       914 
976 
     | 
    
         
             
                      batch = []
         
     | 
| 
       915 
977 
     | 
    
         
             
                      page.data.contents.each do |c|
         
     | 
| 
         @@ -60,7 +60,9 @@ module Aws::S3 
     | 
|
| 
       60 
60 
     | 
    
         
             
                #
         
     | 
| 
       61 
61 
     | 
    
         
             
                # @return [self]
         
     | 
| 
       62 
62 
     | 
    
         
             
                def load
         
     | 
| 
       63 
     | 
    
         
            -
                  resp =  
     | 
| 
      
 63 
     | 
    
         
            +
                  resp = Aws::Plugins::UserAgent.feature('resource') do
         
     | 
| 
      
 64 
     | 
    
         
            +
                    @client.get_bucket_acl(bucket: @bucket_name)
         
     | 
| 
      
 65 
     | 
    
         
            +
                  end
         
     | 
| 
       64 
66 
     | 
    
         
             
                  @data = resp.data
         
     | 
| 
       65 
67 
     | 
    
         
             
                  self
         
     | 
| 
       66 
68 
     | 
    
         
             
                end
         
     | 
| 
         @@ -175,7 +177,9 @@ module Aws::S3 
     | 
|
| 
       175 
177 
     | 
    
         
             
                      :retry
         
     | 
| 
       176 
178 
     | 
    
         
             
                    end
         
     | 
| 
       177 
179 
     | 
    
         
             
                  end
         
     | 
| 
       178 
     | 
    
         
            -
                  Aws:: 
     | 
| 
      
 180 
     | 
    
         
            +
                  Aws::Plugins::UserAgent.feature('resource') do
         
     | 
| 
      
 181 
     | 
    
         
            +
                    Aws::Waiters::Waiter.new(options).wait({})
         
     | 
| 
      
 182 
     | 
    
         
            +
                  end
         
     | 
| 
       179 
183 
     | 
    
         
             
                end
         
     | 
| 
       180 
184 
     | 
    
         | 
| 
       181 
185 
     | 
    
         
             
                # @!group Actions
         
     | 
| 
         @@ -265,7 +269,9 @@ module Aws::S3 
     | 
|
| 
       265 
269 
     | 
    
         
             
                # @return [EmptyStructure]
         
     | 
| 
       266 
270 
     | 
    
         
             
                def put(options = {})
         
     | 
| 
       267 
271 
     | 
    
         
             
                  options = options.merge(bucket: @bucket_name)
         
     | 
| 
       268 
     | 
    
         
            -
                  resp =  
     | 
| 
      
 272 
     | 
    
         
            +
                  resp = Aws::Plugins::UserAgent.feature('resource') do
         
     | 
| 
      
 273 
     | 
    
         
            +
                    @client.put_bucket_acl(options)
         
     | 
| 
      
 274 
     | 
    
         
            +
                  end
         
     | 
| 
       269 
275 
     | 
    
         
             
                  resp.data
         
     | 
| 
       270 
276 
     | 
    
         
             
                end
         
     | 
| 
       271 
277 
     | 
    
         |