aws-sdk-s3 1.132.0 → 1.151.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +127 -1
- data/VERSION +1 -1
- data/lib/aws-sdk-s3/access_grants_credentials.rb +57 -0
- data/lib/aws-sdk-s3/access_grants_credentials_provider.rb +241 -0
- data/lib/aws-sdk-s3/bucket.rb +424 -81
- data/lib/aws-sdk-s3/bucket_acl.rb +9 -9
- data/lib/aws-sdk-s3/bucket_cors.rb +12 -12
- data/lib/aws-sdk-s3/bucket_lifecycle.rb +12 -12
- data/lib/aws-sdk-s3/bucket_lifecycle_configuration.rb +12 -12
- data/lib/aws-sdk-s3/bucket_logging.rb +16 -9
- data/lib/aws-sdk-s3/bucket_notification.rb +3 -3
- data/lib/aws-sdk-s3/bucket_policy.rb +58 -14
- data/lib/aws-sdk-s3/bucket_region_cache.rb +9 -5
- data/lib/aws-sdk-s3/bucket_request_payment.rb +9 -9
- data/lib/aws-sdk-s3/bucket_tagging.rb +12 -12
- data/lib/aws-sdk-s3/bucket_versioning.rb +27 -27
- data/lib/aws-sdk-s3/bucket_website.rb +12 -12
- data/lib/aws-sdk-s3/client.rb +5783 -2608
- data/lib/aws-sdk-s3/client_api.rb +114 -18
- data/lib/aws-sdk-s3/customizations/errors.rb +15 -2
- data/lib/aws-sdk-s3/customizations/object.rb +45 -2
- data/lib/aws-sdk-s3/customizations.rb +8 -0
- data/lib/aws-sdk-s3/endpoint_parameters.rb +32 -0
- data/lib/aws-sdk-s3/endpoint_provider.rb +88 -6
- data/lib/aws-sdk-s3/endpoints.rb +440 -0
- data/lib/aws-sdk-s3/express_credentials.rb +55 -0
- data/lib/aws-sdk-s3/express_credentials_provider.rb +59 -0
- data/lib/aws-sdk-s3/file_downloader.rb +119 -24
- data/lib/aws-sdk-s3/multipart_file_uploader.rb +4 -4
- data/lib/aws-sdk-s3/multipart_stream_uploader.rb +5 -4
- data/lib/aws-sdk-s3/multipart_upload.rb +69 -16
- data/lib/aws-sdk-s3/multipart_upload_part.rb +160 -35
- data/lib/aws-sdk-s3/object.rb +1504 -235
- data/lib/aws-sdk-s3/object_acl.rb +29 -15
- data/lib/aws-sdk-s3/object_multipart_copier.rb +10 -8
- data/lib/aws-sdk-s3/object_summary.rb +1367 -254
- data/lib/aws-sdk-s3/object_version.rb +297 -42
- data/lib/aws-sdk-s3/plugins/access_grants.rb +108 -0
- data/lib/aws-sdk-s3/plugins/endpoints.rb +14 -2
- data/lib/aws-sdk-s3/plugins/express_session_auth.rb +91 -0
- data/lib/aws-sdk-s3/plugins/location_constraint.rb +3 -1
- data/lib/aws-sdk-s3/plugins/md5s.rb +2 -1
- data/lib/aws-sdk-s3/plugins/s3_signer.rb +7 -2
- data/lib/aws-sdk-s3/presigner.rb +4 -2
- data/lib/aws-sdk-s3/resource.rb +83 -11
- data/lib/aws-sdk-s3/types.rb +4529 -1361
- data/lib/aws-sdk-s3.rb +1 -1
- data/sig/bucket.rbs +212 -0
- data/sig/bucket_acl.rbs +78 -0
- data/sig/bucket_cors.rbs +69 -0
- data/sig/bucket_lifecycle.rbs +88 -0
- data/sig/bucket_lifecycle_configuration.rbs +111 -0
- data/sig/bucket_logging.rbs +76 -0
- data/sig/bucket_notification.rbs +114 -0
- data/sig/bucket_policy.rbs +59 -0
- data/sig/bucket_request_payment.rbs +54 -0
- data/sig/bucket_tagging.rbs +65 -0
- data/sig/bucket_versioning.rbs +77 -0
- data/sig/bucket_website.rbs +93 -0
- data/sig/client.rbs +2362 -0
- data/sig/customizations/bucket.rbs +19 -0
- data/sig/customizations/object.rbs +38 -0
- data/sig/customizations/object_summary.rbs +35 -0
- data/sig/errors.rbs +34 -0
- data/sig/multipart_upload.rbs +110 -0
- data/sig/multipart_upload_part.rbs +105 -0
- data/sig/object.rbs +436 -0
- data/sig/object_acl.rbs +86 -0
- data/sig/object_summary.rbs +334 -0
- data/sig/object_version.rbs +131 -0
- data/sig/resource.rbs +126 -0
- data/sig/types.rbs +2562 -0
- data/sig/waiters.rbs +83 -0
- metadata +43 -11
@@ -22,6 +22,8 @@ module Aws::S3
|
|
22
22
|
AcceptRanges = Shapes::StringShape.new(name: 'AcceptRanges')
|
23
23
|
AccessControlPolicy = Shapes::StructureShape.new(name: 'AccessControlPolicy')
|
24
24
|
AccessControlTranslation = Shapes::StructureShape.new(name: 'AccessControlTranslation')
|
25
|
+
AccessKeyIdValue = Shapes::StringShape.new(name: 'AccessKeyIdValue')
|
26
|
+
AccessPointAlias = Shapes::BooleanShape.new(name: 'AccessPointAlias')
|
25
27
|
AccessPointArn = Shapes::StringShape.new(name: 'AccessPointArn')
|
26
28
|
AccountId = Shapes::StringShape.new(name: 'AccountId')
|
27
29
|
AllowQuotedRecordDelimiter = Shapes::BooleanShape.new(name: 'AllowQuotedRecordDelimiter')
|
@@ -46,12 +48,15 @@ module Aws::S3
|
|
46
48
|
BucketAlreadyExists = Shapes::StructureShape.new(name: 'BucketAlreadyExists')
|
47
49
|
BucketAlreadyOwnedByYou = Shapes::StructureShape.new(name: 'BucketAlreadyOwnedByYou')
|
48
50
|
BucketCannedACL = Shapes::StringShape.new(name: 'BucketCannedACL')
|
51
|
+
BucketInfo = Shapes::StructureShape.new(name: 'BucketInfo')
|
49
52
|
BucketKeyEnabled = Shapes::BooleanShape.new(name: 'BucketKeyEnabled')
|
50
53
|
BucketLifecycleConfiguration = Shapes::StructureShape.new(name: 'BucketLifecycleConfiguration')
|
51
54
|
BucketLocationConstraint = Shapes::StringShape.new(name: 'BucketLocationConstraint')
|
55
|
+
BucketLocationName = Shapes::StringShape.new(name: 'BucketLocationName')
|
52
56
|
BucketLoggingStatus = Shapes::StructureShape.new(name: 'BucketLoggingStatus')
|
53
57
|
BucketLogsPermission = Shapes::StringShape.new(name: 'BucketLogsPermission')
|
54
58
|
BucketName = Shapes::StringShape.new(name: 'BucketName')
|
59
|
+
BucketType = Shapes::StringShape.new(name: 'BucketType')
|
55
60
|
BucketVersioningStatus = Shapes::StringShape.new(name: 'BucketVersioningStatus')
|
56
61
|
Buckets = Shapes::ListShape.new(name: 'Buckets')
|
57
62
|
BypassGovernanceRetention = Shapes::BooleanShape.new(name: 'BypassGovernanceRetention')
|
@@ -114,7 +119,10 @@ module Aws::S3
|
|
114
119
|
CreateBucketRequest = Shapes::StructureShape.new(name: 'CreateBucketRequest')
|
115
120
|
CreateMultipartUploadOutput = Shapes::StructureShape.new(name: 'CreateMultipartUploadOutput')
|
116
121
|
CreateMultipartUploadRequest = Shapes::StructureShape.new(name: 'CreateMultipartUploadRequest')
|
122
|
+
CreateSessionOutput = Shapes::StructureShape.new(name: 'CreateSessionOutput')
|
123
|
+
CreateSessionRequest = Shapes::StructureShape.new(name: 'CreateSessionRequest')
|
117
124
|
CreationDate = Shapes::TimestampShape.new(name: 'CreationDate')
|
125
|
+
DataRedundancy = Shapes::StringShape.new(name: 'DataRedundancy')
|
118
126
|
Date = Shapes::TimestampShape.new(name: 'Date', timestampFormat: "iso8601")
|
119
127
|
Days = Shapes::IntegerShape.new(name: 'Days')
|
120
128
|
DaysAfterInitiation = Shapes::IntegerShape.new(name: 'DaysAfterInitiation')
|
@@ -151,6 +159,7 @@ module Aws::S3
|
|
151
159
|
Delimiter = Shapes::StringShape.new(name: 'Delimiter')
|
152
160
|
Description = Shapes::StringShape.new(name: 'Description')
|
153
161
|
Destination = Shapes::StructureShape.new(name: 'Destination')
|
162
|
+
DirectoryBucketToken = Shapes::StringShape.new(name: 'DirectoryBucketToken')
|
154
163
|
DisplayName = Shapes::StringShape.new(name: 'DisplayName')
|
155
164
|
ETag = Shapes::StringShape.new(name: 'ETag')
|
156
165
|
EmailAddress = Shapes::StringShape.new(name: 'EmailAddress')
|
@@ -256,6 +265,7 @@ module Aws::S3
|
|
256
265
|
GrantWriteACP = Shapes::StringShape.new(name: 'GrantWriteACP')
|
257
266
|
Grantee = Shapes::StructureShape.new(name: 'Grantee', xmlNamespace: {"prefix"=>"xsi", "uri"=>"http://www.w3.org/2001/XMLSchema-instance"})
|
258
267
|
Grants = Shapes::ListShape.new(name: 'Grants')
|
268
|
+
HeadBucketOutput = Shapes::StructureShape.new(name: 'HeadBucketOutput')
|
259
269
|
HeadBucketRequest = Shapes::StructureShape.new(name: 'HeadBucketRequest')
|
260
270
|
HeadObjectOutput = Shapes::StructureShape.new(name: 'HeadObjectOutput')
|
261
271
|
HeadObjectRequest = Shapes::StructureShape.new(name: 'HeadObjectRequest')
|
@@ -324,6 +334,8 @@ module Aws::S3
|
|
324
334
|
ListBucketMetricsConfigurationsOutput = Shapes::StructureShape.new(name: 'ListBucketMetricsConfigurationsOutput')
|
325
335
|
ListBucketMetricsConfigurationsRequest = Shapes::StructureShape.new(name: 'ListBucketMetricsConfigurationsRequest')
|
326
336
|
ListBucketsOutput = Shapes::StructureShape.new(name: 'ListBucketsOutput')
|
337
|
+
ListDirectoryBucketsOutput = Shapes::StructureShape.new(name: 'ListDirectoryBucketsOutput')
|
338
|
+
ListDirectoryBucketsRequest = Shapes::StructureShape.new(name: 'ListDirectoryBucketsRequest')
|
327
339
|
ListMultipartUploadsOutput = Shapes::StructureShape.new(name: 'ListMultipartUploadsOutput')
|
328
340
|
ListMultipartUploadsRequest = Shapes::StructureShape.new(name: 'ListMultipartUploadsRequest')
|
329
341
|
ListObjectVersionsOutput = Shapes::StructureShape.new(name: 'ListObjectVersionsOutput')
|
@@ -335,13 +347,17 @@ module Aws::S3
|
|
335
347
|
ListPartsOutput = Shapes::StructureShape.new(name: 'ListPartsOutput')
|
336
348
|
ListPartsRequest = Shapes::StructureShape.new(name: 'ListPartsRequest')
|
337
349
|
Location = Shapes::StringShape.new(name: 'Location')
|
350
|
+
LocationInfo = Shapes::StructureShape.new(name: 'LocationInfo')
|
351
|
+
LocationNameAsString = Shapes::StringShape.new(name: 'LocationNameAsString')
|
338
352
|
LocationPrefix = Shapes::StringShape.new(name: 'LocationPrefix')
|
353
|
+
LocationType = Shapes::StringShape.new(name: 'LocationType')
|
339
354
|
LoggingEnabled = Shapes::StructureShape.new(name: 'LoggingEnabled')
|
340
355
|
MFA = Shapes::StringShape.new(name: 'MFA')
|
341
356
|
MFADelete = Shapes::StringShape.new(name: 'MFADelete')
|
342
357
|
MFADeleteStatus = Shapes::StringShape.new(name: 'MFADeleteStatus')
|
343
358
|
Marker = Shapes::StringShape.new(name: 'Marker')
|
344
359
|
MaxAgeSeconds = Shapes::IntegerShape.new(name: 'MaxAgeSeconds')
|
360
|
+
MaxDirectoryBuckets = Shapes::IntegerShape.new(name: 'MaxDirectoryBuckets')
|
345
361
|
MaxKeys = Shapes::IntegerShape.new(name: 'MaxKeys')
|
346
362
|
MaxParts = Shapes::IntegerShape.new(name: 'MaxParts')
|
347
363
|
MaxUploads = Shapes::IntegerShape.new(name: 'MaxUploads')
|
@@ -423,6 +439,8 @@ module Aws::S3
|
|
423
439
|
Part = Shapes::StructureShape.new(name: 'Part')
|
424
440
|
PartNumber = Shapes::IntegerShape.new(name: 'PartNumber')
|
425
441
|
PartNumberMarker = Shapes::IntegerShape.new(name: 'PartNumberMarker')
|
442
|
+
PartitionDateSource = Shapes::StringShape.new(name: 'PartitionDateSource')
|
443
|
+
PartitionedPrefix = Shapes::StructureShape.new(name: 'PartitionedPrefix', locationName: "PartitionedPrefix")
|
426
444
|
Parts = Shapes::ListShape.new(name: 'Parts', flattened: true)
|
427
445
|
PartsCount = Shapes::IntegerShape.new(name: 'PartsCount')
|
428
446
|
PartsList = Shapes::ListShape.new(name: 'PartsList', flattened: true)
|
@@ -482,6 +500,7 @@ module Aws::S3
|
|
482
500
|
RecordsEvent = Shapes::StructureShape.new(name: 'RecordsEvent')
|
483
501
|
Redirect = Shapes::StructureShape.new(name: 'Redirect')
|
484
502
|
RedirectAllRequestsTo = Shapes::StructureShape.new(name: 'RedirectAllRequestsTo')
|
503
|
+
Region = Shapes::StringShape.new(name: 'Region')
|
485
504
|
ReplaceKeyPrefixWith = Shapes::StringShape.new(name: 'ReplaceKeyPrefixWith')
|
486
505
|
ReplaceKeyWith = Shapes::StringShape.new(name: 'ReplaceKeyWith')
|
487
506
|
ReplicaKmsKeyID = Shapes::StringShape.new(name: 'ReplicaKmsKeyID')
|
@@ -527,10 +546,10 @@ module Aws::S3
|
|
527
546
|
SSECustomerAlgorithm = Shapes::StringShape.new(name: 'SSECustomerAlgorithm')
|
528
547
|
SSECustomerKey = Shapes::StringShape.new(name: 'SSECustomerKey')
|
529
548
|
SSECustomerKeyMD5 = Shapes::StringShape.new(name: 'SSECustomerKeyMD5')
|
530
|
-
SSEKMS = Shapes::StructureShape.new(name: 'SSEKMS')
|
549
|
+
SSEKMS = Shapes::StructureShape.new(name: 'SSEKMS', locationName: "SSE-KMS")
|
531
550
|
SSEKMSEncryptionContext = Shapes::StringShape.new(name: 'SSEKMSEncryptionContext')
|
532
551
|
SSEKMSKeyId = Shapes::StringShape.new(name: 'SSEKMSKeyId')
|
533
|
-
SSES3 = Shapes::StructureShape.new(name: 'SSES3')
|
552
|
+
SSES3 = Shapes::StructureShape.new(name: 'SSES3', locationName: "SSE-S3")
|
534
553
|
ScanRange = Shapes::StructureShape.new(name: 'ScanRange')
|
535
554
|
SelectObjectContentEventStream = Shapes::StructureShape.new(name: 'SelectObjectContentEventStream')
|
536
555
|
SelectObjectContentOutput = Shapes::StructureShape.new(name: 'SelectObjectContentOutput')
|
@@ -541,7 +560,12 @@ module Aws::S3
|
|
541
560
|
ServerSideEncryptionConfiguration = Shapes::StructureShape.new(name: 'ServerSideEncryptionConfiguration')
|
542
561
|
ServerSideEncryptionRule = Shapes::StructureShape.new(name: 'ServerSideEncryptionRule')
|
543
562
|
ServerSideEncryptionRules = Shapes::ListShape.new(name: 'ServerSideEncryptionRules', flattened: true)
|
563
|
+
SessionCredentialValue = Shapes::StringShape.new(name: 'SessionCredentialValue')
|
564
|
+
SessionCredentials = Shapes::StructureShape.new(name: 'SessionCredentials')
|
565
|
+
SessionExpiration = Shapes::TimestampShape.new(name: 'SessionExpiration')
|
566
|
+
SessionMode = Shapes::StringShape.new(name: 'SessionMode')
|
544
567
|
Setting = Shapes::BooleanShape.new(name: 'Setting')
|
568
|
+
SimplePrefix = Shapes::StructureShape.new(name: 'SimplePrefix', locationName: "SimplePrefix")
|
545
569
|
Size = Shapes::IntegerShape.new(name: 'Size')
|
546
570
|
SkipValidation = Shapes::BooleanShape.new(name: 'SkipValidation')
|
547
571
|
SourceSelectionCriteria = Shapes::StructureShape.new(name: 'SourceSelectionCriteria')
|
@@ -565,6 +589,7 @@ module Aws::S3
|
|
565
589
|
TargetBucket = Shapes::StringShape.new(name: 'TargetBucket')
|
566
590
|
TargetGrant = Shapes::StructureShape.new(name: 'TargetGrant')
|
567
591
|
TargetGrants = Shapes::ListShape.new(name: 'TargetGrants')
|
592
|
+
TargetObjectKeyFormat = Shapes::StructureShape.new(name: 'TargetObjectKeyFormat')
|
568
593
|
TargetPrefix = Shapes::StringShape.new(name: 'TargetPrefix')
|
569
594
|
Tier = Shapes::StringShape.new(name: 'Tier')
|
570
595
|
Tiering = Shapes::StructureShape.new(name: 'Tiering')
|
@@ -601,7 +626,7 @@ module Aws::S3
|
|
601
626
|
AbortMultipartUploadOutput.struct_class = Types::AbortMultipartUploadOutput
|
602
627
|
|
603
628
|
AbortMultipartUploadRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
|
604
|
-
AbortMultipartUploadRequest.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, required: true, location: "uri", location_name: "Key"))
|
629
|
+
AbortMultipartUploadRequest.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, required: true, location: "uri", location_name: "Key", metadata: {"contextParam"=>{"name"=>"Key"}}))
|
605
630
|
AbortMultipartUploadRequest.add_member(:upload_id, Shapes::ShapeRef.new(shape: MultipartUploadId, required: true, location: "querystring", location_name: "uploadId"))
|
606
631
|
AbortMultipartUploadRequest.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
|
607
632
|
AbortMultipartUploadRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
|
@@ -656,6 +681,10 @@ module Aws::S3
|
|
656
681
|
|
657
682
|
BucketAlreadyOwnedByYou.struct_class = Types::BucketAlreadyOwnedByYou
|
658
683
|
|
684
|
+
BucketInfo.add_member(:data_redundancy, Shapes::ShapeRef.new(shape: DataRedundancy, location_name: "DataRedundancy"))
|
685
|
+
BucketInfo.add_member(:type, Shapes::ShapeRef.new(shape: BucketType, location_name: "Type"))
|
686
|
+
BucketInfo.struct_class = Types::BucketInfo
|
687
|
+
|
659
688
|
BucketLifecycleConfiguration.add_member(:rules, Shapes::ShapeRef.new(shape: LifecycleRules, required: true, location_name: "Rule"))
|
660
689
|
BucketLifecycleConfiguration.struct_class = Types::BucketLifecycleConfiguration
|
661
690
|
|
@@ -730,7 +759,7 @@ module Aws::S3
|
|
730
759
|
CompleteMultipartUploadOutput.struct_class = Types::CompleteMultipartUploadOutput
|
731
760
|
|
732
761
|
CompleteMultipartUploadRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
|
733
|
-
CompleteMultipartUploadRequest.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, required: true, location: "uri", location_name: "Key"))
|
762
|
+
CompleteMultipartUploadRequest.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, required: true, location: "uri", location_name: "Key", metadata: {"contextParam"=>{"name"=>"Key"}}))
|
734
763
|
CompleteMultipartUploadRequest.add_member(:multipart_upload, Shapes::ShapeRef.new(shape: CompletedMultipartUpload, location_name: "CompleteMultipartUpload", metadata: {"xmlNamespace"=>{"uri"=>"http://s3.amazonaws.com/doc/2006-03-01/"}}))
|
735
764
|
CompleteMultipartUploadRequest.add_member(:upload_id, Shapes::ShapeRef.new(shape: MultipartUploadId, required: true, location: "querystring", location_name: "uploadId"))
|
736
765
|
CompleteMultipartUploadRequest.add_member(:checksum_crc32, Shapes::ShapeRef.new(shape: ChecksumCRC32, location: "header", location_name: "x-amz-checksum-crc32"))
|
@@ -840,6 +869,8 @@ module Aws::S3
|
|
840
869
|
CopyPartResult.struct_class = Types::CopyPartResult
|
841
870
|
|
842
871
|
CreateBucketConfiguration.add_member(:location_constraint, Shapes::ShapeRef.new(shape: BucketLocationConstraint, location_name: "LocationConstraint"))
|
872
|
+
CreateBucketConfiguration.add_member(:location, Shapes::ShapeRef.new(shape: LocationInfo, location_name: "Location"))
|
873
|
+
CreateBucketConfiguration.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketInfo, location_name: "Bucket"))
|
843
874
|
CreateBucketConfiguration.struct_class = Types::CreateBucketConfiguration
|
844
875
|
|
845
876
|
CreateBucketOutput.add_member(:location, Shapes::ShapeRef.new(shape: Location, location: "header", location_name: "Location"))
|
@@ -886,7 +917,7 @@ module Aws::S3
|
|
886
917
|
CreateMultipartUploadRequest.add_member(:grant_read, Shapes::ShapeRef.new(shape: GrantRead, location: "header", location_name: "x-amz-grant-read"))
|
887
918
|
CreateMultipartUploadRequest.add_member(:grant_read_acp, Shapes::ShapeRef.new(shape: GrantReadACP, location: "header", location_name: "x-amz-grant-read-acp"))
|
888
919
|
CreateMultipartUploadRequest.add_member(:grant_write_acp, Shapes::ShapeRef.new(shape: GrantWriteACP, location: "header", location_name: "x-amz-grant-write-acp"))
|
889
|
-
CreateMultipartUploadRequest.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, required: true, location: "uri", location_name: "Key"))
|
920
|
+
CreateMultipartUploadRequest.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, required: true, location: "uri", location_name: "Key", metadata: {"contextParam"=>{"name"=>"Key"}}))
|
890
921
|
CreateMultipartUploadRequest.add_member(:metadata, Shapes::ShapeRef.new(shape: Metadata, location: "headers", location_name: "x-amz-meta-"))
|
891
922
|
CreateMultipartUploadRequest.add_member(:server_side_encryption, Shapes::ShapeRef.new(shape: ServerSideEncryption, location: "header", location_name: "x-amz-server-side-encryption"))
|
892
923
|
CreateMultipartUploadRequest.add_member(:storage_class, Shapes::ShapeRef.new(shape: StorageClass, location: "header", location_name: "x-amz-storage-class"))
|
@@ -906,6 +937,13 @@ module Aws::S3
|
|
906
937
|
CreateMultipartUploadRequest.add_member(:checksum_algorithm, Shapes::ShapeRef.new(shape: ChecksumAlgorithm, location: "header", location_name: "x-amz-checksum-algorithm"))
|
907
938
|
CreateMultipartUploadRequest.struct_class = Types::CreateMultipartUploadRequest
|
908
939
|
|
940
|
+
CreateSessionOutput.add_member(:credentials, Shapes::ShapeRef.new(shape: SessionCredentials, required: true, location_name: "Credentials"))
|
941
|
+
CreateSessionOutput.struct_class = Types::CreateSessionOutput
|
942
|
+
|
943
|
+
CreateSessionRequest.add_member(:session_mode, Shapes::ShapeRef.new(shape: SessionMode, location: "header", location_name: "x-amz-create-session-mode"))
|
944
|
+
CreateSessionRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
|
945
|
+
CreateSessionRequest.struct_class = Types::CreateSessionRequest
|
946
|
+
|
909
947
|
DefaultRetention.add_member(:mode, Shapes::ShapeRef.new(shape: ObjectLockRetentionMode, location_name: "Mode"))
|
910
948
|
DefaultRetention.add_member(:days, Shapes::ShapeRef.new(shape: Days, location_name: "Days"))
|
911
949
|
DefaultRetention.add_member(:years, Shapes::ShapeRef.new(shape: Years, location_name: "Years"))
|
@@ -988,7 +1026,7 @@ module Aws::S3
|
|
988
1026
|
DeleteObjectOutput.struct_class = Types::DeleteObjectOutput
|
989
1027
|
|
990
1028
|
DeleteObjectRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
|
991
|
-
DeleteObjectRequest.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, required: true, location: "uri", location_name: "Key"))
|
1029
|
+
DeleteObjectRequest.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, required: true, location: "uri", location_name: "Key", metadata: {"contextParam"=>{"name"=>"Key"}}))
|
992
1030
|
DeleteObjectRequest.add_member(:mfa, Shapes::ShapeRef.new(shape: MFA, location: "header", location_name: "x-amz-mfa"))
|
993
1031
|
DeleteObjectRequest.add_member(:version_id, Shapes::ShapeRef.new(shape: ObjectVersionId, location: "querystring", location_name: "versionId"))
|
994
1032
|
DeleteObjectRequest.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
|
@@ -1256,7 +1294,7 @@ module Aws::S3
|
|
1256
1294
|
GetObjectAclOutput.struct_class = Types::GetObjectAclOutput
|
1257
1295
|
|
1258
1296
|
GetObjectAclRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
|
1259
|
-
GetObjectAclRequest.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, required: true, location: "uri", location_name: "Key"))
|
1297
|
+
GetObjectAclRequest.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, required: true, location: "uri", location_name: "Key", metadata: {"contextParam"=>{"name"=>"Key"}}))
|
1260
1298
|
GetObjectAclRequest.add_member(:version_id, Shapes::ShapeRef.new(shape: ObjectVersionId, location: "querystring", location_name: "versionId"))
|
1261
1299
|
GetObjectAclRequest.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
|
1262
1300
|
GetObjectAclRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
|
@@ -1361,7 +1399,7 @@ module Aws::S3
|
|
1361
1399
|
GetObjectRequest.add_member(:if_modified_since, Shapes::ShapeRef.new(shape: IfModifiedSince, location: "header", location_name: "If-Modified-Since"))
|
1362
1400
|
GetObjectRequest.add_member(:if_none_match, Shapes::ShapeRef.new(shape: IfNoneMatch, location: "header", location_name: "If-None-Match"))
|
1363
1401
|
GetObjectRequest.add_member(:if_unmodified_since, Shapes::ShapeRef.new(shape: IfUnmodifiedSince, location: "header", location_name: "If-Unmodified-Since"))
|
1364
|
-
GetObjectRequest.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, required: true, location: "uri", location_name: "Key"))
|
1402
|
+
GetObjectRequest.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, required: true, location: "uri", location_name: "Key", metadata: {"contextParam"=>{"name"=>"Key"}}))
|
1365
1403
|
GetObjectRequest.add_member(:range, Shapes::ShapeRef.new(shape: Range, location: "header", location_name: "Range"))
|
1366
1404
|
GetObjectRequest.add_member(:response_cache_control, Shapes::ShapeRef.new(shape: ResponseCacheControl, location: "querystring", location_name: "response-cache-control"))
|
1367
1405
|
GetObjectRequest.add_member(:response_content_disposition, Shapes::ShapeRef.new(shape: ResponseContentDisposition, location: "querystring", location_name: "response-content-disposition"))
|
@@ -1439,6 +1477,12 @@ module Aws::S3
|
|
1439
1477
|
|
1440
1478
|
Grants.member = Shapes::ShapeRef.new(shape: Grant, location_name: "Grant")
|
1441
1479
|
|
1480
|
+
HeadBucketOutput.add_member(:bucket_location_type, Shapes::ShapeRef.new(shape: LocationType, location: "header", location_name: "x-amz-bucket-location-type"))
|
1481
|
+
HeadBucketOutput.add_member(:bucket_location_name, Shapes::ShapeRef.new(shape: BucketLocationName, location: "header", location_name: "x-amz-bucket-location-name"))
|
1482
|
+
HeadBucketOutput.add_member(:bucket_region, Shapes::ShapeRef.new(shape: Region, location: "header", location_name: "x-amz-bucket-region"))
|
1483
|
+
HeadBucketOutput.add_member(:access_point_alias, Shapes::ShapeRef.new(shape: AccessPointAlias, location: "header", location_name: "x-amz-access-point-alias"))
|
1484
|
+
HeadBucketOutput.struct_class = Types::HeadBucketOutput
|
1485
|
+
|
1442
1486
|
HeadBucketRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
|
1443
1487
|
HeadBucketRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
|
1444
1488
|
HeadBucketRequest.struct_class = Types::HeadBucketRequest
|
@@ -1485,7 +1529,7 @@ module Aws::S3
|
|
1485
1529
|
HeadObjectRequest.add_member(:if_modified_since, Shapes::ShapeRef.new(shape: IfModifiedSince, location: "header", location_name: "If-Modified-Since"))
|
1486
1530
|
HeadObjectRequest.add_member(:if_none_match, Shapes::ShapeRef.new(shape: IfNoneMatch, location: "header", location_name: "If-None-Match"))
|
1487
1531
|
HeadObjectRequest.add_member(:if_unmodified_since, Shapes::ShapeRef.new(shape: IfUnmodifiedSince, location: "header", location_name: "If-Unmodified-Since"))
|
1488
|
-
HeadObjectRequest.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, required: true, location: "uri", location_name: "Key"))
|
1532
|
+
HeadObjectRequest.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, required: true, location: "uri", location_name: "Key", metadata: {"contextParam"=>{"name"=>"Key"}}))
|
1489
1533
|
HeadObjectRequest.add_member(:range, Shapes::ShapeRef.new(shape: Range, location: "header", location_name: "Range"))
|
1490
1534
|
HeadObjectRequest.add_member(:version_id, Shapes::ShapeRef.new(shape: ObjectVersionId, location: "querystring", location_name: "versionId"))
|
1491
1535
|
HeadObjectRequest.add_member(:sse_customer_algorithm, Shapes::ShapeRef.new(shape: SSECustomerAlgorithm, location: "header", location_name: "x-amz-server-side-encryption-customer-algorithm"))
|
@@ -1659,6 +1703,14 @@ module Aws::S3
|
|
1659
1703
|
ListBucketsOutput.add_member(:owner, Shapes::ShapeRef.new(shape: Owner, location_name: "Owner"))
|
1660
1704
|
ListBucketsOutput.struct_class = Types::ListBucketsOutput
|
1661
1705
|
|
1706
|
+
ListDirectoryBucketsOutput.add_member(:buckets, Shapes::ShapeRef.new(shape: Buckets, location_name: "Buckets"))
|
1707
|
+
ListDirectoryBucketsOutput.add_member(:continuation_token, Shapes::ShapeRef.new(shape: DirectoryBucketToken, location_name: "ContinuationToken"))
|
1708
|
+
ListDirectoryBucketsOutput.struct_class = Types::ListDirectoryBucketsOutput
|
1709
|
+
|
1710
|
+
ListDirectoryBucketsRequest.add_member(:continuation_token, Shapes::ShapeRef.new(shape: DirectoryBucketToken, location: "querystring", location_name: "continuation-token"))
|
1711
|
+
ListDirectoryBucketsRequest.add_member(:max_directory_buckets, Shapes::ShapeRef.new(shape: MaxDirectoryBuckets, location: "querystring", location_name: "max-directory-buckets"))
|
1712
|
+
ListDirectoryBucketsRequest.struct_class = Types::ListDirectoryBucketsRequest
|
1713
|
+
|
1662
1714
|
ListMultipartUploadsOutput.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, location_name: "Bucket"))
|
1663
1715
|
ListMultipartUploadsOutput.add_member(:key_marker, Shapes::ShapeRef.new(shape: KeyMarker, location_name: "KeyMarker"))
|
1664
1716
|
ListMultipartUploadsOutput.add_member(:upload_id_marker, Shapes::ShapeRef.new(shape: UploadIdMarker, location_name: "UploadIdMarker"))
|
@@ -1679,7 +1731,7 @@ module Aws::S3
|
|
1679
1731
|
ListMultipartUploadsRequest.add_member(:encoding_type, Shapes::ShapeRef.new(shape: EncodingType, location: "querystring", location_name: "encoding-type"))
|
1680
1732
|
ListMultipartUploadsRequest.add_member(:key_marker, Shapes::ShapeRef.new(shape: KeyMarker, location: "querystring", location_name: "key-marker"))
|
1681
1733
|
ListMultipartUploadsRequest.add_member(:max_uploads, Shapes::ShapeRef.new(shape: MaxUploads, location: "querystring", location_name: "max-uploads"))
|
1682
|
-
ListMultipartUploadsRequest.add_member(:prefix, Shapes::ShapeRef.new(shape: Prefix, location: "querystring", location_name: "prefix"))
|
1734
|
+
ListMultipartUploadsRequest.add_member(:prefix, Shapes::ShapeRef.new(shape: Prefix, location: "querystring", location_name: "prefix", metadata: {"contextParam"=>{"name"=>"Prefix"}}))
|
1683
1735
|
ListMultipartUploadsRequest.add_member(:upload_id_marker, Shapes::ShapeRef.new(shape: UploadIdMarker, location: "querystring", location_name: "upload-id-marker"))
|
1684
1736
|
ListMultipartUploadsRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
|
1685
1737
|
ListMultipartUploadsRequest.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
|
@@ -1706,7 +1758,7 @@ module Aws::S3
|
|
1706
1758
|
ListObjectVersionsRequest.add_member(:encoding_type, Shapes::ShapeRef.new(shape: EncodingType, location: "querystring", location_name: "encoding-type"))
|
1707
1759
|
ListObjectVersionsRequest.add_member(:key_marker, Shapes::ShapeRef.new(shape: KeyMarker, location: "querystring", location_name: "key-marker"))
|
1708
1760
|
ListObjectVersionsRequest.add_member(:max_keys, Shapes::ShapeRef.new(shape: MaxKeys, location: "querystring", location_name: "max-keys"))
|
1709
|
-
ListObjectVersionsRequest.add_member(:prefix, Shapes::ShapeRef.new(shape: Prefix, location: "querystring", location_name: "prefix"))
|
1761
|
+
ListObjectVersionsRequest.add_member(:prefix, Shapes::ShapeRef.new(shape: Prefix, location: "querystring", location_name: "prefix", metadata: {"contextParam"=>{"name"=>"Prefix"}}))
|
1710
1762
|
ListObjectVersionsRequest.add_member(:version_id_marker, Shapes::ShapeRef.new(shape: VersionIdMarker, location: "querystring", location_name: "version-id-marker"))
|
1711
1763
|
ListObjectVersionsRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
|
1712
1764
|
ListObjectVersionsRequest.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
|
@@ -1731,7 +1783,7 @@ module Aws::S3
|
|
1731
1783
|
ListObjectsRequest.add_member(:encoding_type, Shapes::ShapeRef.new(shape: EncodingType, location: "querystring", location_name: "encoding-type"))
|
1732
1784
|
ListObjectsRequest.add_member(:marker, Shapes::ShapeRef.new(shape: Marker, location: "querystring", location_name: "marker"))
|
1733
1785
|
ListObjectsRequest.add_member(:max_keys, Shapes::ShapeRef.new(shape: MaxKeys, location: "querystring", location_name: "max-keys"))
|
1734
|
-
ListObjectsRequest.add_member(:prefix, Shapes::ShapeRef.new(shape: Prefix, location: "querystring", location_name: "prefix"))
|
1786
|
+
ListObjectsRequest.add_member(:prefix, Shapes::ShapeRef.new(shape: Prefix, location: "querystring", location_name: "prefix", metadata: {"contextParam"=>{"name"=>"Prefix"}}))
|
1735
1787
|
ListObjectsRequest.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
|
1736
1788
|
ListObjectsRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
|
1737
1789
|
ListObjectsRequest.add_member(:optional_object_attributes, Shapes::ShapeRef.new(shape: OptionalObjectAttributesList, location: "header", location_name: "x-amz-optional-object-attributes"))
|
@@ -1756,7 +1808,7 @@ module Aws::S3
|
|
1756
1808
|
ListObjectsV2Request.add_member(:delimiter, Shapes::ShapeRef.new(shape: Delimiter, location: "querystring", location_name: "delimiter"))
|
1757
1809
|
ListObjectsV2Request.add_member(:encoding_type, Shapes::ShapeRef.new(shape: EncodingType, location: "querystring", location_name: "encoding-type"))
|
1758
1810
|
ListObjectsV2Request.add_member(:max_keys, Shapes::ShapeRef.new(shape: MaxKeys, location: "querystring", location_name: "max-keys"))
|
1759
|
-
ListObjectsV2Request.add_member(:prefix, Shapes::ShapeRef.new(shape: Prefix, location: "querystring", location_name: "prefix"))
|
1811
|
+
ListObjectsV2Request.add_member(:prefix, Shapes::ShapeRef.new(shape: Prefix, location: "querystring", location_name: "prefix", metadata: {"contextParam"=>{"name"=>"Prefix"}}))
|
1760
1812
|
ListObjectsV2Request.add_member(:continuation_token, Shapes::ShapeRef.new(shape: Token, location: "querystring", location_name: "continuation-token"))
|
1761
1813
|
ListObjectsV2Request.add_member(:fetch_owner, Shapes::ShapeRef.new(shape: FetchOwner, location: "querystring", location_name: "fetch-owner"))
|
1762
1814
|
ListObjectsV2Request.add_member(:start_after, Shapes::ShapeRef.new(shape: StartAfter, location: "querystring", location_name: "start-after"))
|
@@ -1783,7 +1835,7 @@ module Aws::S3
|
|
1783
1835
|
ListPartsOutput.struct_class = Types::ListPartsOutput
|
1784
1836
|
|
1785
1837
|
ListPartsRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
|
1786
|
-
ListPartsRequest.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, required: true, location: "uri", location_name: "Key"))
|
1838
|
+
ListPartsRequest.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, required: true, location: "uri", location_name: "Key", metadata: {"contextParam"=>{"name"=>"Key"}}))
|
1787
1839
|
ListPartsRequest.add_member(:max_parts, Shapes::ShapeRef.new(shape: MaxParts, location: "querystring", location_name: "max-parts"))
|
1788
1840
|
ListPartsRequest.add_member(:part_number_marker, Shapes::ShapeRef.new(shape: PartNumberMarker, location: "querystring", location_name: "part-number-marker"))
|
1789
1841
|
ListPartsRequest.add_member(:upload_id, Shapes::ShapeRef.new(shape: MultipartUploadId, required: true, location: "querystring", location_name: "uploadId"))
|
@@ -1794,9 +1846,14 @@ module Aws::S3
|
|
1794
1846
|
ListPartsRequest.add_member(:sse_customer_key_md5, Shapes::ShapeRef.new(shape: SSECustomerKeyMD5, location: "header", location_name: "x-amz-server-side-encryption-customer-key-MD5"))
|
1795
1847
|
ListPartsRequest.struct_class = Types::ListPartsRequest
|
1796
1848
|
|
1849
|
+
LocationInfo.add_member(:type, Shapes::ShapeRef.new(shape: LocationType, location_name: "Type"))
|
1850
|
+
LocationInfo.add_member(:name, Shapes::ShapeRef.new(shape: LocationNameAsString, location_name: "Name"))
|
1851
|
+
LocationInfo.struct_class = Types::LocationInfo
|
1852
|
+
|
1797
1853
|
LoggingEnabled.add_member(:target_bucket, Shapes::ShapeRef.new(shape: TargetBucket, required: true, location_name: "TargetBucket"))
|
1798
1854
|
LoggingEnabled.add_member(:target_grants, Shapes::ShapeRef.new(shape: TargetGrants, location_name: "TargetGrants"))
|
1799
1855
|
LoggingEnabled.add_member(:target_prefix, Shapes::ShapeRef.new(shape: TargetPrefix, required: true, location_name: "TargetPrefix"))
|
1856
|
+
LoggingEnabled.add_member(:target_object_key_format, Shapes::ShapeRef.new(shape: TargetObjectKeyFormat, location_name: "TargetObjectKeyFormat"))
|
1800
1857
|
LoggingEnabled.struct_class = Types::LoggingEnabled
|
1801
1858
|
|
1802
1859
|
Metadata.key = Shapes::ShapeRef.new(shape: MetadataKey)
|
@@ -1962,6 +2019,9 @@ module Aws::S3
|
|
1962
2019
|
Part.add_member(:checksum_sha256, Shapes::ShapeRef.new(shape: ChecksumSHA256, location_name: "ChecksumSHA256"))
|
1963
2020
|
Part.struct_class = Types::Part
|
1964
2021
|
|
2022
|
+
PartitionedPrefix.add_member(:partition_date_source, Shapes::ShapeRef.new(shape: PartitionDateSource, location_name: "PartitionDateSource"))
|
2023
|
+
PartitionedPrefix.struct_class = Types::PartitionedPrefix
|
2024
|
+
|
1965
2025
|
Parts.member = Shapes::ShapeRef.new(shape: Part)
|
1966
2026
|
|
1967
2027
|
PartsList.member = Shapes::ShapeRef.new(shape: ObjectPart)
|
@@ -2176,7 +2236,7 @@ module Aws::S3
|
|
2176
2236
|
PutObjectAclRequest.add_member(:grant_read_acp, Shapes::ShapeRef.new(shape: GrantReadACP, location: "header", location_name: "x-amz-grant-read-acp"))
|
2177
2237
|
PutObjectAclRequest.add_member(:grant_write, Shapes::ShapeRef.new(shape: GrantWrite, location: "header", location_name: "x-amz-grant-write"))
|
2178
2238
|
PutObjectAclRequest.add_member(:grant_write_acp, Shapes::ShapeRef.new(shape: GrantWriteACP, location: "header", location_name: "x-amz-grant-write-acp"))
|
2179
|
-
PutObjectAclRequest.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, required: true, location: "uri", location_name: "Key"))
|
2239
|
+
PutObjectAclRequest.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, required: true, location: "uri", location_name: "Key", metadata: {"contextParam"=>{"name"=>"Key"}}))
|
2180
2240
|
PutObjectAclRequest.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
|
2181
2241
|
PutObjectAclRequest.add_member(:version_id, Shapes::ShapeRef.new(shape: ObjectVersionId, location: "querystring", location_name: "versionId"))
|
2182
2242
|
PutObjectAclRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
|
@@ -2249,7 +2309,7 @@ module Aws::S3
|
|
2249
2309
|
PutObjectRequest.add_member(:grant_read, Shapes::ShapeRef.new(shape: GrantRead, location: "header", location_name: "x-amz-grant-read"))
|
2250
2310
|
PutObjectRequest.add_member(:grant_read_acp, Shapes::ShapeRef.new(shape: GrantReadACP, location: "header", location_name: "x-amz-grant-read-acp"))
|
2251
2311
|
PutObjectRequest.add_member(:grant_write_acp, Shapes::ShapeRef.new(shape: GrantWriteACP, location: "header", location_name: "x-amz-grant-write-acp"))
|
2252
|
-
PutObjectRequest.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, required: true, location: "uri", location_name: "Key"))
|
2312
|
+
PutObjectRequest.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, required: true, location: "uri", location_name: "Key", metadata: {"contextParam"=>{"name"=>"Key"}}))
|
2253
2313
|
PutObjectRequest.add_member(:metadata, Shapes::ShapeRef.new(shape: Metadata, location: "headers", location_name: "x-amz-meta-"))
|
2254
2314
|
PutObjectRequest.add_member(:server_side_encryption, Shapes::ShapeRef.new(shape: ServerSideEncryption, location: "header", location_name: "x-amz-server-side-encryption"))
|
2255
2315
|
PutObjectRequest.add_member(:storage_class, Shapes::ShapeRef.new(shape: StorageClass, location: "header", location_name: "x-amz-storage-class"))
|
@@ -2493,6 +2553,14 @@ module Aws::S3
|
|
2493
2553
|
|
2494
2554
|
ServerSideEncryptionRules.member = Shapes::ShapeRef.new(shape: ServerSideEncryptionRule)
|
2495
2555
|
|
2556
|
+
SessionCredentials.add_member(:access_key_id, Shapes::ShapeRef.new(shape: AccessKeyIdValue, required: true, location_name: "AccessKeyId"))
|
2557
|
+
SessionCredentials.add_member(:secret_access_key, Shapes::ShapeRef.new(shape: SessionCredentialValue, required: true, location_name: "SecretAccessKey"))
|
2558
|
+
SessionCredentials.add_member(:session_token, Shapes::ShapeRef.new(shape: SessionCredentialValue, required: true, location_name: "SessionToken"))
|
2559
|
+
SessionCredentials.add_member(:expiration, Shapes::ShapeRef.new(shape: SessionExpiration, required: true, location_name: "Expiration"))
|
2560
|
+
SessionCredentials.struct_class = Types::SessionCredentials
|
2561
|
+
|
2562
|
+
SimplePrefix.struct_class = Types::SimplePrefix
|
2563
|
+
|
2496
2564
|
SourceSelectionCriteria.add_member(:sse_kms_encrypted_objects, Shapes::ShapeRef.new(shape: SseKmsEncryptedObjects, location_name: "SseKmsEncryptedObjects"))
|
2497
2565
|
SourceSelectionCriteria.add_member(:replica_modifications, Shapes::ShapeRef.new(shape: ReplicaModifications, location_name: "ReplicaModifications"))
|
2498
2566
|
SourceSelectionCriteria.struct_class = Types::SourceSelectionCriteria
|
@@ -2530,6 +2598,10 @@ module Aws::S3
|
|
2530
2598
|
|
2531
2599
|
TargetGrants.member = Shapes::ShapeRef.new(shape: TargetGrant, location_name: "Grant")
|
2532
2600
|
|
2601
|
+
TargetObjectKeyFormat.add_member(:simple_prefix, Shapes::ShapeRef.new(shape: SimplePrefix, location_name: "SimplePrefix"))
|
2602
|
+
TargetObjectKeyFormat.add_member(:partitioned_prefix, Shapes::ShapeRef.new(shape: PartitionedPrefix, location_name: "PartitionedPrefix"))
|
2603
|
+
TargetObjectKeyFormat.struct_class = Types::TargetObjectKeyFormat
|
2604
|
+
|
2533
2605
|
Tiering.add_member(:days, Shapes::ShapeRef.new(shape: IntelligentTieringDays, required: true, location_name: "Days"))
|
2534
2606
|
Tiering.add_member(:access_tier, Shapes::ShapeRef.new(shape: IntelligentTieringAccessTier, required: true, location_name: "AccessTier"))
|
2535
2607
|
Tiering.struct_class = Types::Tiering
|
@@ -2612,7 +2684,7 @@ module Aws::S3
|
|
2612
2684
|
UploadPartRequest.add_member(:checksum_crc32c, Shapes::ShapeRef.new(shape: ChecksumCRC32C, location: "header", location_name: "x-amz-checksum-crc32c"))
|
2613
2685
|
UploadPartRequest.add_member(:checksum_sha1, Shapes::ShapeRef.new(shape: ChecksumSHA1, location: "header", location_name: "x-amz-checksum-sha1"))
|
2614
2686
|
UploadPartRequest.add_member(:checksum_sha256, Shapes::ShapeRef.new(shape: ChecksumSHA256, location: "header", location_name: "x-amz-checksum-sha256"))
|
2615
|
-
UploadPartRequest.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, required: true, location: "uri", location_name: "Key"))
|
2687
|
+
UploadPartRequest.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, required: true, location: "uri", location_name: "Key", metadata: {"contextParam"=>{"name"=>"Key"}}))
|
2616
2688
|
UploadPartRequest.add_member(:part_number, Shapes::ShapeRef.new(shape: PartNumber, required: true, location: "querystring", location_name: "partNumber"))
|
2617
2689
|
UploadPartRequest.add_member(:upload_id, Shapes::ShapeRef.new(shape: MultipartUploadId, required: true, location: "querystring", location_name: "uploadId"))
|
2618
2690
|
UploadPartRequest.add_member(:sse_customer_algorithm, Shapes::ShapeRef.new(shape: SSECustomerAlgorithm, location: "header", location_name: "x-amz-server-side-encryption-customer-algorithm"))
|
@@ -2692,6 +2764,7 @@ module Aws::S3
|
|
2692
2764
|
"endpointPrefix" => "s3",
|
2693
2765
|
"globalEndpoint" => "s3.amazonaws.com",
|
2694
2766
|
"protocol" => "rest-xml",
|
2767
|
+
"protocols" => ["rest-xml"],
|
2695
2768
|
"serviceAbbreviation" => "Amazon S3",
|
2696
2769
|
"serviceFullName" => "Amazon Simple Storage Service",
|
2697
2770
|
"serviceId" => "S3",
|
@@ -2742,6 +2815,15 @@ module Aws::S3
|
|
2742
2815
|
o.output = Shapes::ShapeRef.new(shape: CreateMultipartUploadOutput)
|
2743
2816
|
end)
|
2744
2817
|
|
2818
|
+
api.add_operation(:create_session, Seahorse::Model::Operation.new.tap do |o|
|
2819
|
+
o.name = "CreateSession"
|
2820
|
+
o.http_method = "GET"
|
2821
|
+
o.http_request_uri = "/?session"
|
2822
|
+
o.input = Shapes::ShapeRef.new(shape: CreateSessionRequest)
|
2823
|
+
o.output = Shapes::ShapeRef.new(shape: CreateSessionOutput)
|
2824
|
+
o.errors << Shapes::ShapeRef.new(shape: NoSuchBucket)
|
2825
|
+
end)
|
2826
|
+
|
2745
2827
|
api.add_operation(:delete_bucket, Seahorse::Model::Operation.new.tap do |o|
|
2746
2828
|
o.name = "DeleteBucket"
|
2747
2829
|
o.http_method = "DELETE"
|
@@ -3153,7 +3235,7 @@ module Aws::S3
|
|
3153
3235
|
o.http_method = "HEAD"
|
3154
3236
|
o.http_request_uri = "/"
|
3155
3237
|
o.input = Shapes::ShapeRef.new(shape: HeadBucketRequest)
|
3156
|
-
o.output = Shapes::ShapeRef.new(shape:
|
3238
|
+
o.output = Shapes::ShapeRef.new(shape: HeadBucketOutput)
|
3157
3239
|
o.errors << Shapes::ShapeRef.new(shape: NoSuchBucket)
|
3158
3240
|
end)
|
3159
3241
|
|
@@ -3206,6 +3288,20 @@ module Aws::S3
|
|
3206
3288
|
o.output = Shapes::ShapeRef.new(shape: ListBucketsOutput)
|
3207
3289
|
end)
|
3208
3290
|
|
3291
|
+
api.add_operation(:list_directory_buckets, Seahorse::Model::Operation.new.tap do |o|
|
3292
|
+
o.name = "ListDirectoryBuckets"
|
3293
|
+
o.http_method = "GET"
|
3294
|
+
o.http_request_uri = "/"
|
3295
|
+
o.input = Shapes::ShapeRef.new(shape: ListDirectoryBucketsRequest)
|
3296
|
+
o.output = Shapes::ShapeRef.new(shape: ListDirectoryBucketsOutput)
|
3297
|
+
o[:pager] = Aws::Pager.new(
|
3298
|
+
limit_key: "max_directory_buckets",
|
3299
|
+
tokens: {
|
3300
|
+
"continuation_token" => "continuation_token"
|
3301
|
+
}
|
3302
|
+
)
|
3303
|
+
end)
|
3304
|
+
|
3209
3305
|
api.add_operation(:list_multipart_uploads, Seahorse::Model::Operation.new.tap do |o|
|
3210
3306
|
o.name = "ListMultipartUploads"
|
3211
3307
|
o.http_method = "GET"
|
@@ -3,8 +3,8 @@
|
|
3
3
|
module Aws
|
4
4
|
module S3
|
5
5
|
module Errors
|
6
|
-
# Hijack PermanentRedirect dynamic error to
|
7
|
-
# and
|
6
|
+
# Hijack PermanentRedirect dynamic error to include the bucket, region,
|
7
|
+
# and endpoint.
|
8
8
|
class PermanentRedirect < ServiceError
|
9
9
|
# @param [Seahorse::Client::RequestContext] context
|
10
10
|
# @param [String] message
|
@@ -22,6 +22,19 @@ module Aws
|
|
22
22
|
super(context, message, data)
|
23
23
|
end
|
24
24
|
end
|
25
|
+
|
26
|
+
# Hijack PermanentRedirect (HeadBucket case - no body) dynamic error to
|
27
|
+
# include the region.
|
28
|
+
class Http301Error < ServiceError
|
29
|
+
# @param [Seahorse::Client::RequestContext] context
|
30
|
+
# @param [String] message
|
31
|
+
# @param [Aws::S3::Types::PermanentRedirect] _data
|
32
|
+
def initialize(context, message, _data = Aws::EmptyStructure.new)
|
33
|
+
data = Aws::S3::Types::PermanentRedirect.new(message: message)
|
34
|
+
data.region = context.http_response.headers['x-amz-bucket-region']
|
35
|
+
super(context, message, data)
|
36
|
+
end
|
37
|
+
end
|
25
38
|
end
|
26
39
|
end
|
27
40
|
end
|
@@ -353,6 +353,10 @@ module Aws
|
|
353
353
|
# obj.upload_stream do |write_stream|
|
354
354
|
# IO.copy_stream(STDIN, write_stream)
|
355
355
|
# end
|
356
|
+
# @param [Hash] options
|
357
|
+
# Additional options for {Client#create_multipart_upload},
|
358
|
+
# {Client#complete_multipart_upload},
|
359
|
+
# and {Client#upload_part} can be provided.
|
356
360
|
#
|
357
361
|
# @option options [Integer] :thread_count (10) The number of parallel
|
358
362
|
# multipart uploads
|
@@ -375,6 +379,9 @@ module Aws
|
|
375
379
|
# @return [Boolean] Returns `true` when the object is uploaded
|
376
380
|
# without any errors.
|
377
381
|
#
|
382
|
+
# @see Client#create_multipart_upload
|
383
|
+
# @see Client#complete_multipart_upload
|
384
|
+
# @see Client#upload_part
|
378
385
|
def upload_stream(options = {}, &block)
|
379
386
|
uploading_options = options.dup
|
380
387
|
uploader = MultipartStreamUploader.new(
|
@@ -427,6 +434,13 @@ module Aws
|
|
427
434
|
# using an open Tempfile, rewind it before uploading or else the object
|
428
435
|
# will be empty.
|
429
436
|
#
|
437
|
+
# @param [Hash] options
|
438
|
+
# Additional options for {Client#put_object}
|
439
|
+
# when file sizes below the multipart threshold. For files larger than
|
440
|
+
# the multipart threshold, options for {Client#create_multipart_upload},
|
441
|
+
# {Client#complete_multipart_upload},
|
442
|
+
# and {Client#upload_part} can be provided.
|
443
|
+
#
|
430
444
|
# @option options [Integer] :multipart_threshold (104857600) Files larger
|
431
445
|
# than or equal to `:multipart_threshold` are uploaded using the S3
|
432
446
|
# multipart APIs.
|
@@ -448,6 +462,11 @@ module Aws
|
|
448
462
|
#
|
449
463
|
# @return [Boolean] Returns `true` when the object is uploaded
|
450
464
|
# without any errors.
|
465
|
+
#
|
466
|
+
# @see Client#put_object
|
467
|
+
# @see Client#create_multipart_upload
|
468
|
+
# @see Client#complete_multipart_upload
|
469
|
+
# @see Client#upload_part
|
451
470
|
def upload_file(source, options = {})
|
452
471
|
uploading_options = options.dup
|
453
472
|
uploader = FileUploader.new(
|
@@ -475,8 +494,21 @@ module Aws
|
|
475
494
|
# # and the parts are downloaded in parallel
|
476
495
|
# obj.download_file('/path/to/very_large_file')
|
477
496
|
#
|
497
|
+
# You can provide a callback to monitor progress of the download:
|
498
|
+
#
|
499
|
+
# # bytes and part_sizes are each an array with 1 entry per part
|
500
|
+
# # part_sizes may not be known until the first bytes are retrieved
|
501
|
+
# progress = Proc.new do |bytes, part_sizes, file_size|
|
502
|
+
# puts bytes.map.with_index { |b, i| "Part #{i+1}: #{b} / #{part_sizes[i]}"}.join(' ') + "Total: #{100.0 * bytes.sum / file_size}%" }
|
503
|
+
# end
|
504
|
+
# obj.download_file('/path/to/file', progress_callback: progress)
|
505
|
+
#
|
478
506
|
# @param [String] destination Where to download the file to.
|
479
507
|
#
|
508
|
+
# @param [Hash] options
|
509
|
+
# Additional options for {Client#get_object} and #{Client#head_object}
|
510
|
+
# may be provided.
|
511
|
+
#
|
480
512
|
# @option options [String] mode `auto`, `single_request`, `get_range`
|
481
513
|
# `single_request` mode forces only 1 GET request is made in download,
|
482
514
|
# `get_range` mode allows `chunk_size` parameter to configured in
|
@@ -496,16 +528,27 @@ module Aws
|
|
496
528
|
# the object has a stored checksum, it will be used to validate the
|
497
529
|
# download and will raise an `Aws::Errors::ChecksumError` if
|
498
530
|
# checksum validation fails. You may provide a `on_checksum_validated`
|
499
|
-
# callback if you need to verify that validation
|
500
|
-
# algorithm was used.
|
531
|
+
# callback if you need to verify that validation occurred and which
|
532
|
+
# algorithm was used. To disable checksum validation, set
|
533
|
+
# `checksum_mode` to "DISABLED".
|
501
534
|
#
|
502
535
|
# @option options [Callable] on_checksum_validated Called each time a
|
503
536
|
# request's checksum is validated with the checksum algorithm and the
|
504
537
|
# response. For multipart downloads, this will be called for each
|
505
538
|
# part that is downloaded and validated.
|
506
539
|
#
|
540
|
+
# @option options [Proc] :progress_callback
|
541
|
+
# A Proc that will be called when each chunk of the download is received.
|
542
|
+
# It will be invoked with [bytes_read], [part_sizes], file_size.
|
543
|
+
# When the object is downloaded as parts (rather than by ranges), the
|
544
|
+
# part_sizes will not be known ahead of time and will be nil in the
|
545
|
+
# callback until the first bytes in the part are received.
|
546
|
+
#
|
507
547
|
# @return [Boolean] Returns `true` when the file is downloaded without
|
508
548
|
# any errors.
|
549
|
+
#
|
550
|
+
# @see Client#get_object
|
551
|
+
# @see Client#head_object
|
509
552
|
def download_file(destination, options = {})
|
510
553
|
downloader = FileDownloader.new(client: client)
|
511
554
|
Aws::Plugins::UserAgent.feature('resource') do
|
@@ -16,6 +16,14 @@ require 'aws-sdk-s3/object_multipart_copier'
|
|
16
16
|
require 'aws-sdk-s3/presigned_post'
|
17
17
|
require 'aws-sdk-s3/presigner'
|
18
18
|
|
19
|
+
# s3 express session auth
|
20
|
+
require 'aws-sdk-s3/express_credentials'
|
21
|
+
require 'aws-sdk-s3/express_credentials_provider'
|
22
|
+
|
23
|
+
# s3 access grants auth
|
24
|
+
require 'aws-sdk-s3/access_grants_credentials'
|
25
|
+
require 'aws-sdk-s3/access_grants_credentials_provider'
|
26
|
+
|
19
27
|
# customizations to generated classes
|
20
28
|
require 'aws-sdk-s3/customizations/bucket'
|
21
29
|
require 'aws-sdk-s3/customizations/errors'
|