Skip to content

Commit

Permalink
Update generated code (#1842)
Browse files Browse the repository at this point in the history
* update generated code

* Apply suggestions from code review

---------

Co-authored-by: Jérémy Derussé <jeremy@derusse.com>
  • Loading branch information
async-aws-bot and jderusse authored Feb 7, 2025
1 parent c7ee325 commit b4d0b70
Show file tree
Hide file tree
Showing 31 changed files with 293 additions and 262 deletions.
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@

- AWS api-change: This change enhances integrity protections for new SDK requests to S3. S3 SDKs now support the CRC64NVME checksum algorithm, full object checksums for multipart S3 objects, and new default integrity protections for S3 requests.
- AWS api-change: Added `us-isof-east-1` and `us-isof-south-1` regions
- AWS api-change: Updated list of the valid AWS Region values for the LocationConstraint parameter for general purpose buckets.

## 2.7.0

Expand Down
10 changes: 10 additions & 0 deletions src/Enum/BucketLocationConstraint.php
Original file line number Diff line number Diff line change
Expand Up @@ -12,19 +12,24 @@ final class BucketLocationConstraint
public const AP_SOUTHEAST_1 = 'ap-southeast-1';
public const AP_SOUTHEAST_2 = 'ap-southeast-2';
public const AP_SOUTHEAST_3 = 'ap-southeast-3';
public const AP_SOUTHEAST_4 = 'ap-southeast-4';
public const AP_SOUTHEAST_5 = 'ap-southeast-5';
public const AP_SOUTH_1 = 'ap-south-1';
public const AP_SOUTH_2 = 'ap-south-2';
public const CA_CENTRAL_1 = 'ca-central-1';
public const CN_NORTHWEST_1 = 'cn-northwest-1';
public const CN_NORTH_1 = 'cn-north-1';
public const EU = 'EU';
public const EU_CENTRAL_1 = 'eu-central-1';
public const EU_CENTRAL_2 = 'eu-central-2';
public const EU_NORTH_1 = 'eu-north-1';
public const EU_SOUTH_1 = 'eu-south-1';
public const EU_SOUTH_2 = 'eu-south-2';
public const EU_WEST_1 = 'eu-west-1';
public const EU_WEST_2 = 'eu-west-2';
public const EU_WEST_3 = 'eu-west-3';
public const IL_CENTRAL_1 = 'il-central-1';
public const ME_CENTRAL_1 = 'me-central-1';
public const ME_SOUTH_1 = 'me-south-1';
public const SA_EAST_1 = 'sa-east-1';
public const US_EAST_2 = 'us-east-2';
Expand All @@ -44,19 +49,24 @@ public static function exists(string $value): bool
self::AP_SOUTHEAST_1 => true,
self::AP_SOUTHEAST_2 => true,
self::AP_SOUTHEAST_3 => true,
self::AP_SOUTHEAST_4 => true,
self::AP_SOUTHEAST_5 => true,
self::AP_SOUTH_1 => true,
self::AP_SOUTH_2 => true,
self::CA_CENTRAL_1 => true,
self::CN_NORTHWEST_1 => true,
self::CN_NORTH_1 => true,
self::EU => true,
self::EU_CENTRAL_1 => true,
self::EU_CENTRAL_2 => true,
self::EU_NORTH_1 => true,
self::EU_SOUTH_1 => true,
self::EU_SOUTH_2 => true,
self::EU_WEST_1 => true,
self::EU_WEST_2 => true,
self::EU_WEST_3 => true,
self::IL_CENTRAL_1 => true,
self::ME_CENTRAL_1 => true,
self::ME_SOUTH_1 => true,
self::SA_EAST_1 => true,
self::US_EAST_2 => true,
Expand Down
14 changes: 7 additions & 7 deletions src/Input/AbortMultipartUploadRequest.php
Original file line number Diff line number Diff line change
Expand Up @@ -16,9 +16,9 @@ final class AbortMultipartUploadRequest extends Input
* **Directory buckets** - When you use this operation with a directory bucket, you must use virtual-hosted-style
* requests in the format `*Bucket-name*.s3express-*zone-id*.*region-code*.amazonaws.com`. Path-style requests are not
* supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names
* must follow the format `*bucket-base-name*--*zone-id*--x-s3` (for example, `*DOC-EXAMPLE-BUCKET*--*usw2-az1*--x-s3`).
* For information about bucket naming restrictions, see Directory bucket naming rules [^1] in the *Amazon S3 User
* Guide*.
* must follow the format `*bucket-base-name*--*zone-id*--x-s3` (for example,
* `*amzn-s3-demo-bucket*--*usw2-az1*--x-s3`). For information about bucket naming restrictions, see Directory bucket
* naming rules [^1] in the *Amazon S3 User Guide*.
*
* **Access points** - When you use this action with an access point, you must provide the alias of the access point in
* place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests
Expand All @@ -29,11 +29,11 @@ final class AbortMultipartUploadRequest extends Input
*
* > Access points and Object Lambda access points are not supported by directory buckets.
*
* **S3 on Outposts** - When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on
* Outposts hostname. The S3 on Outposts hostname takes the form
* **S3 on Outposts** - When you use this action with S3 on Outposts, you must direct requests to the S3 on Outposts
* hostname. The S3 on Outposts hostname takes the form
* `*AccessPointName*-*AccountId*.*outpostID*.s3-outposts.*Region*.amazonaws.com`. When you use this action with S3 on
* Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name.
* For more information about S3 on Outposts ARNs, see What is S3 on Outposts? [^3] in the *Amazon S3 User Guide*.
* Outposts, the destination bucket must be the Outposts access point ARN or the access point alias. For more
* information about S3 on Outposts, see What is S3 on Outposts? [^3] in the *Amazon S3 User Guide*.
*
* [^1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-bucket-naming-rules.html
* [^2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html
Expand Down
14 changes: 7 additions & 7 deletions src/Input/CompleteMultipartUploadRequest.php
Original file line number Diff line number Diff line change
Expand Up @@ -18,9 +18,9 @@ final class CompleteMultipartUploadRequest extends Input
* **Directory buckets** - When you use this operation with a directory bucket, you must use virtual-hosted-style
* requests in the format `*Bucket-name*.s3express-*zone-id*.*region-code*.amazonaws.com`. Path-style requests are not
* supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names
* must follow the format `*bucket-base-name*--*zone-id*--x-s3` (for example, `*DOC-EXAMPLE-BUCKET*--*usw2-az1*--x-s3`).
* For information about bucket naming restrictions, see Directory bucket naming rules [^1] in the *Amazon S3 User
* Guide*.
* must follow the format `*bucket-base-name*--*zone-id*--x-s3` (for example,
* `*amzn-s3-demo-bucket*--*usw2-az1*--x-s3`). For information about bucket naming restrictions, see Directory bucket
* naming rules [^1] in the *Amazon S3 User Guide*.
*
* **Access points** - When you use this action with an access point, you must provide the alias of the access point in
* place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests
Expand All @@ -31,11 +31,11 @@ final class CompleteMultipartUploadRequest extends Input
*
* > Access points and Object Lambda access points are not supported by directory buckets.
*
* **S3 on Outposts** - When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on
* Outposts hostname. The S3 on Outposts hostname takes the form
* **S3 on Outposts** - When you use this action with S3 on Outposts, you must direct requests to the S3 on Outposts
* hostname. The S3 on Outposts hostname takes the form
* `*AccessPointName*-*AccountId*.*outpostID*.s3-outposts.*Region*.amazonaws.com`. When you use this action with S3 on
* Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name.
* For more information about S3 on Outposts ARNs, see What is S3 on Outposts? [^3] in the *Amazon S3 User Guide*.
* Outposts, the destination bucket must be the Outposts access point ARN or the access point alias. For more
* information about S3 on Outposts, see What is S3 on Outposts? [^3] in the *Amazon S3 User Guide*.
*
* [^1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-bucket-naming-rules.html
* [^2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html
Expand Down
33 changes: 17 additions & 16 deletions src/Input/CopyObjectRequest.php
Original file line number Diff line number Diff line change
Expand Up @@ -50,9 +50,9 @@ final class CopyObjectRequest extends Input
* **Directory buckets** - When you use this operation with a directory bucket, you must use virtual-hosted-style
* requests in the format `*Bucket-name*.s3express-*zone-id*.*region-code*.amazonaws.com`. Path-style requests are not
* supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names
* must follow the format `*bucket-base-name*--*zone-id*--x-s3` (for example, `*DOC-EXAMPLE-BUCKET*--*usw2-az1*--x-s3`).
* For information about bucket naming restrictions, see Directory bucket naming rules [^1] in the *Amazon S3 User
* Guide*.
* must follow the format `*bucket-base-name*--*zone-id*--x-s3` (for example,
* `*amzn-s3-demo-bucket*--*usw2-az1*--x-s3`). For information about bucket naming restrictions, see Directory bucket
* naming rules [^1] in the *Amazon S3 User Guide*.
*
* > Copying objects across different Amazon Web Services Regions isn't supported when the source or destination bucket
* > is in Amazon Web Services Local Zones. The source and destination buckets must have the same parent Amazon Web
Expand All @@ -67,11 +67,14 @@ final class CopyObjectRequest extends Input
*
* > Access points and Object Lambda access points are not supported by directory buckets.
*
* **S3 on Outposts** - When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on
* Outposts hostname. The S3 on Outposts hostname takes the form
* `*AccessPointName*-*AccountId*.*outpostID*.s3-outposts.*Region*.amazonaws.com`. When you use this action with S3 on
* Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name.
* For more information about S3 on Outposts ARNs, see What is S3 on Outposts? [^3] in the *Amazon S3 User Guide*.
* **S3 on Outposts** - When you use this action with S3 on Outposts, you must use the Outpost bucket access point ARN
* or the access point alias for the destination bucket. You can only copy objects within the same Outpost bucket. It's
* not supported to copy objects across different Amazon Web Services Outposts, between buckets on the same Outposts, or
* between Outposts buckets and any other bucket types. For more information about S3 on Outposts, see What is S3 on
* Outposts? [^3] in the *S3 on Outposts guide*. When you use this action with S3 on Outposts through the REST API, you
* must direct requests to the S3 on Outposts hostname, in the format
* `*AccessPointName*-*AccountId*.*outpostID*.s3-outposts.*Region*.amazonaws.com`. The hostname isn't required when you
* use the Amazon Web Services CLI or SDKs.
*
* [^1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-bucket-naming-rules.html
* [^2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html
Expand Down Expand Up @@ -510,14 +513,12 @@ final class CopyObjectRequest extends Input
* any of the officially supported Amazon Web Services SDKs and Amazon Web Services CLI, see Specifying the Signature
* Version in Request Authentication [^1] in the *Amazon S3 User Guide*.
*
* **Directory buckets** - If you specify `x-amz-server-side-encryption` with `aws:kms`, the `
* x-amz-server-side-encryption-aws-kms-key-id` header is implicitly assigned the ID of the KMS symmetric encryption
* customer managed key that's configured for your directory bucket's default encryption setting. If you want to specify
* the ` x-amz-server-side-encryption-aws-kms-key-id` header explicitly, you can only specify it with the ID (Key ID or
* Key ARN) of the KMS customer managed key that's configured for your directory bucket's default encryption setting.
* Otherwise, you get an HTTP `400 Bad Request` error. Only use the key ID or key ARN. The key alias format of the KMS
* key isn't supported. Your SSE-KMS configuration can only support 1 customer managed key [^2] per directory bucket for
* the lifetime of the bucket. The Amazon Web Services managed key [^3] (`aws/s3`) isn't supported.
* **Directory buckets** - To encrypt data using SSE-KMS, it's recommended to specify the `x-amz-server-side-encryption`
* header to `aws:kms`. Then, the `x-amz-server-side-encryption-aws-kms-key-id` header implicitly uses the bucket's
* default KMS customer managed key ID. If you want to explicitly set the ` x-amz-server-side-encryption-aws-kms-key-id`
* header, it must match the bucket's default customer managed key (using key ID or ARN, not alias). Your SSE-KMS
* configuration can only support 1 customer managed key [^2] per directory bucket's lifetime. The Amazon Web Services
* managed key [^3] (`aws/s3`) isn't supported. Incorrect key specification results in an HTTP `400 Bad Request` error.
*
* [^1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version
* [^2]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk
Expand Down
28 changes: 13 additions & 15 deletions src/Input/CreateMultipartUploadRequest.php
Original file line number Diff line number Diff line change
Expand Up @@ -45,9 +45,9 @@ final class CreateMultipartUploadRequest extends Input
* **Directory buckets** - When you use this operation with a directory bucket, you must use virtual-hosted-style
* requests in the format `*Bucket-name*.s3express-*zone-id*.*region-code*.amazonaws.com`. Path-style requests are not
* supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names
* must follow the format `*bucket-base-name*--*zone-id*--x-s3` (for example, `*DOC-EXAMPLE-BUCKET*--*usw2-az1*--x-s3`).
* For information about bucket naming restrictions, see Directory bucket naming rules [^1] in the *Amazon S3 User
* Guide*.
* must follow the format `*bucket-base-name*--*zone-id*--x-s3` (for example,
* `*amzn-s3-demo-bucket*--*usw2-az1*--x-s3`). For information about bucket naming restrictions, see Directory bucket
* naming rules [^1] in the *Amazon S3 User Guide*.
*
* **Access points** - When you use this action with an access point, you must provide the alias of the access point in
* place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests
Expand All @@ -58,11 +58,11 @@ final class CreateMultipartUploadRequest extends Input
*
* > Access points and Object Lambda access points are not supported by directory buckets.
*
* **S3 on Outposts** - When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on
* Outposts hostname. The S3 on Outposts hostname takes the form
* **S3 on Outposts** - When you use this action with S3 on Outposts, you must direct requests to the S3 on Outposts
* hostname. The S3 on Outposts hostname takes the form
* `*AccessPointName*-*AccountId*.*outpostID*.s3-outposts.*Region*.amazonaws.com`. When you use this action with S3 on
* Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name.
* For more information about S3 on Outposts ARNs, see What is S3 on Outposts? [^3] in the *Amazon S3 User Guide*.
* Outposts, the destination bucket must be the Outposts access point ARN or the access point alias. For more
* information about S3 on Outposts, see What is S3 on Outposts? [^3] in the *Amazon S3 User Guide*.
*
* [^1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-bucket-naming-rules.html
* [^2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html
Expand Down Expand Up @@ -418,14 +418,12 @@ final class CreateMultipartUploadRequest extends Input
* `x-amz-server-side-encryption-aws-kms-key-id`, Amazon S3 uses the Amazon Web Services managed key (`aws/s3`) to
* protect the data.
*
* **Directory buckets** - If you specify `x-amz-server-side-encryption` with `aws:kms`, the `
* x-amz-server-side-encryption-aws-kms-key-id` header is implicitly assigned the ID of the KMS symmetric encryption
* customer managed key that's configured for your directory bucket's default encryption setting. If you want to specify
* the ` x-amz-server-side-encryption-aws-kms-key-id` header explicitly, you can only specify it with the ID (Key ID or
* Key ARN) of the KMS customer managed key that's configured for your directory bucket's default encryption setting.
* Otherwise, you get an HTTP `400 Bad Request` error. Only use the key ID or key ARN. The key alias format of the KMS
* key isn't supported. Your SSE-KMS configuration can only support 1 customer managed key [^1] per directory bucket for
* the lifetime of the bucket. The Amazon Web Services managed key [^2] (`aws/s3`) isn't supported.
* **Directory buckets** - To encrypt data using SSE-KMS, it's recommended to specify the `x-amz-server-side-encryption`
* header to `aws:kms`. Then, the `x-amz-server-side-encryption-aws-kms-key-id` header implicitly uses the bucket's
* default KMS customer managed key ID. If you want to explicitly set the ` x-amz-server-side-encryption-aws-kms-key-id`
* header, it must match the bucket's default customer managed key (using key ID or ARN, not alias). Your SSE-KMS
* configuration can only support 1 customer managed key [^1] per directory bucket's lifetime. The Amazon Web Services
* managed key [^2] (`aws/s3`) isn't supported. Incorrect key specification results in an HTTP `400 Bad Request` error.
*
* [^1]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk
* [^2]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-managed-cmk
Expand Down
Loading

0 comments on commit b4d0b70

Please sign in to comment.