aboutsummaryrefslogtreecommitdiffhomepage
path: root/vendor/github.com/aws/aws-sdk-go/service/s3/api.go
diff options
context:
space:
mode:
authorNathan Dench <ndenc2@gmail.com>2019-05-24 15:16:44 +1000
committerNathan Dench <ndenc2@gmail.com>2019-05-24 15:16:44 +1000
commit107c1cdb09c575aa2f61d97f48d8587eb6bada4c (patch)
treeca7d008643efc555c388baeaf1d986e0b6b3e28c /vendor/github.com/aws/aws-sdk-go/service/s3/api.go
parent844b5a68d8af4791755b8f0ad293cc99f5959183 (diff)
downloadterraform-provider-statuscake-107c1cdb09c575aa2f61d97f48d8587eb6bada4c.tar.gz
terraform-provider-statuscake-107c1cdb09c575aa2f61d97f48d8587eb6bada4c.tar.zst
terraform-provider-statuscake-107c1cdb09c575aa2f61d97f48d8587eb6bada4c.zip
Upgrade to 0.12
Diffstat (limited to 'vendor/github.com/aws/aws-sdk-go/service/s3/api.go')
-rw-r--r--vendor/github.com/aws/aws-sdk-go/service/s3/api.go3280
1 files changed, 2975 insertions, 305 deletions
diff --git a/vendor/github.com/aws/aws-sdk-go/service/s3/api.go b/vendor/github.com/aws/aws-sdk-go/service/s3/api.go
index 0e999ca..83a42d2 100644
--- a/vendor/github.com/aws/aws-sdk-go/service/s3/api.go
+++ b/vendor/github.com/aws/aws-sdk-go/service/s3/api.go
@@ -27,7 +27,7 @@ const opAbortMultipartUpload = "AbortMultipartUpload"
27// AbortMultipartUploadRequest generates a "aws/request.Request" representing the 27// AbortMultipartUploadRequest generates a "aws/request.Request" representing the
28// client's request for the AbortMultipartUpload operation. The "output" return 28// client's request for the AbortMultipartUpload operation. The "output" return
29// value will be populated with the request's response once the request completes 29// value will be populated with the request's response once the request completes
30// successfuly. 30// successfully.
31// 31//
32// Use "Send" method on the returned Request to send the API call to the service. 32// Use "Send" method on the returned Request to send the API call to the service.
33// the "output" return value is not valid until after Send returns without error. 33// the "output" return value is not valid until after Send returns without error.
@@ -110,7 +110,7 @@ const opCompleteMultipartUpload = "CompleteMultipartUpload"
110// CompleteMultipartUploadRequest generates a "aws/request.Request" representing the 110// CompleteMultipartUploadRequest generates a "aws/request.Request" representing the
111// client's request for the CompleteMultipartUpload operation. The "output" return 111// client's request for the CompleteMultipartUpload operation. The "output" return
112// value will be populated with the request's response once the request completes 112// value will be populated with the request's response once the request completes
113// successfuly. 113// successfully.
114// 114//
115// Use "Send" method on the returned Request to send the API call to the service. 115// Use "Send" method on the returned Request to send the API call to the service.
116// the "output" return value is not valid until after Send returns without error. 116// the "output" return value is not valid until after Send returns without error.
@@ -184,7 +184,7 @@ const opCopyObject = "CopyObject"
184// CopyObjectRequest generates a "aws/request.Request" representing the 184// CopyObjectRequest generates a "aws/request.Request" representing the
185// client's request for the CopyObject operation. The "output" return 185// client's request for the CopyObject operation. The "output" return
186// value will be populated with the request's response once the request completes 186// value will be populated with the request's response once the request completes
187// successfuly. 187// successfully.
188// 188//
189// Use "Send" method on the returned Request to send the API call to the service. 189// Use "Send" method on the returned Request to send the API call to the service.
190// the "output" return value is not valid until after Send returns without error. 190// the "output" return value is not valid until after Send returns without error.
@@ -264,7 +264,7 @@ const opCreateBucket = "CreateBucket"
264// CreateBucketRequest generates a "aws/request.Request" representing the 264// CreateBucketRequest generates a "aws/request.Request" representing the
265// client's request for the CreateBucket operation. The "output" return 265// client's request for the CreateBucket operation. The "output" return
266// value will be populated with the request's response once the request completes 266// value will be populated with the request's response once the request completes
267// successfuly. 267// successfully.
268// 268//
269// Use "Send" method on the returned Request to send the API call to the service. 269// Use "Send" method on the returned Request to send the API call to the service.
270// the "output" return value is not valid until after Send returns without error. 270// the "output" return value is not valid until after Send returns without error.
@@ -346,7 +346,7 @@ const opCreateMultipartUpload = "CreateMultipartUpload"
346// CreateMultipartUploadRequest generates a "aws/request.Request" representing the 346// CreateMultipartUploadRequest generates a "aws/request.Request" representing the
347// client's request for the CreateMultipartUpload operation. The "output" return 347// client's request for the CreateMultipartUpload operation. The "output" return
348// value will be populated with the request's response once the request completes 348// value will be populated with the request's response once the request completes
349// successfuly. 349// successfully.
350// 350//
351// Use "Send" method on the returned Request to send the API call to the service. 351// Use "Send" method on the returned Request to send the API call to the service.
352// the "output" return value is not valid until after Send returns without error. 352// the "output" return value is not valid until after Send returns without error.
@@ -426,7 +426,7 @@ const opDeleteBucket = "DeleteBucket"
426// DeleteBucketRequest generates a "aws/request.Request" representing the 426// DeleteBucketRequest generates a "aws/request.Request" representing the
427// client's request for the DeleteBucket operation. The "output" return 427// client's request for the DeleteBucket operation. The "output" return
428// value will be populated with the request's response once the request completes 428// value will be populated with the request's response once the request completes
429// successfuly. 429// successfully.
430// 430//
431// Use "Send" method on the returned Request to send the API call to the service. 431// Use "Send" method on the returned Request to send the API call to the service.
432// the "output" return value is not valid until after Send returns without error. 432// the "output" return value is not valid until after Send returns without error.
@@ -460,8 +460,7 @@ func (c *S3) DeleteBucketRequest(input *DeleteBucketInput) (req *request.Request
460 460
461 output = &DeleteBucketOutput{} 461 output = &DeleteBucketOutput{}
462 req = c.newRequest(op, input, output) 462 req = c.newRequest(op, input, output)
463 req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) 463 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
464 req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
465 return 464 return
466} 465}
467 466
@@ -503,7 +502,7 @@ const opDeleteBucketAnalyticsConfiguration = "DeleteBucketAnalyticsConfiguration
503// DeleteBucketAnalyticsConfigurationRequest generates a "aws/request.Request" representing the 502// DeleteBucketAnalyticsConfigurationRequest generates a "aws/request.Request" representing the
504// client's request for the DeleteBucketAnalyticsConfiguration operation. The "output" return 503// client's request for the DeleteBucketAnalyticsConfiguration operation. The "output" return
505// value will be populated with the request's response once the request completes 504// value will be populated with the request's response once the request completes
506// successfuly. 505// successfully.
507// 506//
508// Use "Send" method on the returned Request to send the API call to the service. 507// Use "Send" method on the returned Request to send the API call to the service.
509// the "output" return value is not valid until after Send returns without error. 508// the "output" return value is not valid until after Send returns without error.
@@ -537,8 +536,7 @@ func (c *S3) DeleteBucketAnalyticsConfigurationRequest(input *DeleteBucketAnalyt
537 536
538 output = &DeleteBucketAnalyticsConfigurationOutput{} 537 output = &DeleteBucketAnalyticsConfigurationOutput{}
539 req = c.newRequest(op, input, output) 538 req = c.newRequest(op, input, output)
540 req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) 539 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
541 req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
542 return 540 return
543} 541}
544 542
@@ -580,7 +578,7 @@ const opDeleteBucketCors = "DeleteBucketCors"
580// DeleteBucketCorsRequest generates a "aws/request.Request" representing the 578// DeleteBucketCorsRequest generates a "aws/request.Request" representing the
581// client's request for the DeleteBucketCors operation. The "output" return 579// client's request for the DeleteBucketCors operation. The "output" return
582// value will be populated with the request's response once the request completes 580// value will be populated with the request's response once the request completes
583// successfuly. 581// successfully.
584// 582//
585// Use "Send" method on the returned Request to send the API call to the service. 583// Use "Send" method on the returned Request to send the API call to the service.
586// the "output" return value is not valid until after Send returns without error. 584// the "output" return value is not valid until after Send returns without error.
@@ -614,14 +612,13 @@ func (c *S3) DeleteBucketCorsRequest(input *DeleteBucketCorsInput) (req *request
614 612
615 output = &DeleteBucketCorsOutput{} 613 output = &DeleteBucketCorsOutput{}
616 req = c.newRequest(op, input, output) 614 req = c.newRequest(op, input, output)
617 req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) 615 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
618 req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
619 return 616 return
620} 617}
621 618
622// DeleteBucketCors API operation for Amazon Simple Storage Service. 619// DeleteBucketCors API operation for Amazon Simple Storage Service.
623// 620//
624// Deletes the cors configuration information set for the bucket. 621// Deletes the CORS configuration information set for the bucket.
625// 622//
626// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 623// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
627// with awserr.Error's Code and Message methods to get detailed information about 624// with awserr.Error's Code and Message methods to get detailed information about
@@ -656,7 +653,7 @@ const opDeleteBucketEncryption = "DeleteBucketEncryption"
656// DeleteBucketEncryptionRequest generates a "aws/request.Request" representing the 653// DeleteBucketEncryptionRequest generates a "aws/request.Request" representing the
657// client's request for the DeleteBucketEncryption operation. The "output" return 654// client's request for the DeleteBucketEncryption operation. The "output" return
658// value will be populated with the request's response once the request completes 655// value will be populated with the request's response once the request completes
659// successfuly. 656// successfully.
660// 657//
661// Use "Send" method on the returned Request to send the API call to the service. 658// Use "Send" method on the returned Request to send the API call to the service.
662// the "output" return value is not valid until after Send returns without error. 659// the "output" return value is not valid until after Send returns without error.
@@ -690,8 +687,7 @@ func (c *S3) DeleteBucketEncryptionRequest(input *DeleteBucketEncryptionInput) (
690 687
691 output = &DeleteBucketEncryptionOutput{} 688 output = &DeleteBucketEncryptionOutput{}
692 req = c.newRequest(op, input, output) 689 req = c.newRequest(op, input, output)
693 req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) 690 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
694 req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
695 return 691 return
696} 692}
697 693
@@ -732,7 +728,7 @@ const opDeleteBucketInventoryConfiguration = "DeleteBucketInventoryConfiguration
732// DeleteBucketInventoryConfigurationRequest generates a "aws/request.Request" representing the 728// DeleteBucketInventoryConfigurationRequest generates a "aws/request.Request" representing the
733// client's request for the DeleteBucketInventoryConfiguration operation. The "output" return 729// client's request for the DeleteBucketInventoryConfiguration operation. The "output" return
734// value will be populated with the request's response once the request completes 730// value will be populated with the request's response once the request completes
735// successfuly. 731// successfully.
736// 732//
737// Use "Send" method on the returned Request to send the API call to the service. 733// Use "Send" method on the returned Request to send the API call to the service.
738// the "output" return value is not valid until after Send returns without error. 734// the "output" return value is not valid until after Send returns without error.
@@ -766,8 +762,7 @@ func (c *S3) DeleteBucketInventoryConfigurationRequest(input *DeleteBucketInvent
766 762
767 output = &DeleteBucketInventoryConfigurationOutput{} 763 output = &DeleteBucketInventoryConfigurationOutput{}
768 req = c.newRequest(op, input, output) 764 req = c.newRequest(op, input, output)
769 req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) 765 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
770 req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
771 return 766 return
772} 767}
773 768
@@ -809,7 +804,7 @@ const opDeleteBucketLifecycle = "DeleteBucketLifecycle"
809// DeleteBucketLifecycleRequest generates a "aws/request.Request" representing the 804// DeleteBucketLifecycleRequest generates a "aws/request.Request" representing the
810// client's request for the DeleteBucketLifecycle operation. The "output" return 805// client's request for the DeleteBucketLifecycle operation. The "output" return
811// value will be populated with the request's response once the request completes 806// value will be populated with the request's response once the request completes
812// successfuly. 807// successfully.
813// 808//
814// Use "Send" method on the returned Request to send the API call to the service. 809// Use "Send" method on the returned Request to send the API call to the service.
815// the "output" return value is not valid until after Send returns without error. 810// the "output" return value is not valid until after Send returns without error.
@@ -843,8 +838,7 @@ func (c *S3) DeleteBucketLifecycleRequest(input *DeleteBucketLifecycleInput) (re
843 838
844 output = &DeleteBucketLifecycleOutput{} 839 output = &DeleteBucketLifecycleOutput{}
845 req = c.newRequest(op, input, output) 840 req = c.newRequest(op, input, output)
846 req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) 841 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
847 req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
848 return 842 return
849} 843}
850 844
@@ -885,7 +879,7 @@ const opDeleteBucketMetricsConfiguration = "DeleteBucketMetricsConfiguration"
885// DeleteBucketMetricsConfigurationRequest generates a "aws/request.Request" representing the 879// DeleteBucketMetricsConfigurationRequest generates a "aws/request.Request" representing the
886// client's request for the DeleteBucketMetricsConfiguration operation. The "output" return 880// client's request for the DeleteBucketMetricsConfiguration operation. The "output" return
887// value will be populated with the request's response once the request completes 881// value will be populated with the request's response once the request completes
888// successfuly. 882// successfully.
889// 883//
890// Use "Send" method on the returned Request to send the API call to the service. 884// Use "Send" method on the returned Request to send the API call to the service.
891// the "output" return value is not valid until after Send returns without error. 885// the "output" return value is not valid until after Send returns without error.
@@ -919,8 +913,7 @@ func (c *S3) DeleteBucketMetricsConfigurationRequest(input *DeleteBucketMetricsC
919 913
920 output = &DeleteBucketMetricsConfigurationOutput{} 914 output = &DeleteBucketMetricsConfigurationOutput{}
921 req = c.newRequest(op, input, output) 915 req = c.newRequest(op, input, output)
922 req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) 916 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
923 req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
924 return 917 return
925} 918}
926 919
@@ -962,7 +955,7 @@ const opDeleteBucketPolicy = "DeleteBucketPolicy"
962// DeleteBucketPolicyRequest generates a "aws/request.Request" representing the 955// DeleteBucketPolicyRequest generates a "aws/request.Request" representing the
963// client's request for the DeleteBucketPolicy operation. The "output" return 956// client's request for the DeleteBucketPolicy operation. The "output" return
964// value will be populated with the request's response once the request completes 957// value will be populated with the request's response once the request completes
965// successfuly. 958// successfully.
966// 959//
967// Use "Send" method on the returned Request to send the API call to the service. 960// Use "Send" method on the returned Request to send the API call to the service.
968// the "output" return value is not valid until after Send returns without error. 961// the "output" return value is not valid until after Send returns without error.
@@ -996,8 +989,7 @@ func (c *S3) DeleteBucketPolicyRequest(input *DeleteBucketPolicyInput) (req *req
996 989
997 output = &DeleteBucketPolicyOutput{} 990 output = &DeleteBucketPolicyOutput{}
998 req = c.newRequest(op, input, output) 991 req = c.newRequest(op, input, output)
999 req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) 992 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1000 req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
1001 return 993 return
1002} 994}
1003 995
@@ -1038,7 +1030,7 @@ const opDeleteBucketReplication = "DeleteBucketReplication"
1038// DeleteBucketReplicationRequest generates a "aws/request.Request" representing the 1030// DeleteBucketReplicationRequest generates a "aws/request.Request" representing the
1039// client's request for the DeleteBucketReplication operation. The "output" return 1031// client's request for the DeleteBucketReplication operation. The "output" return
1040// value will be populated with the request's response once the request completes 1032// value will be populated with the request's response once the request completes
1041// successfuly. 1033// successfully.
1042// 1034//
1043// Use "Send" method on the returned Request to send the API call to the service. 1035// Use "Send" method on the returned Request to send the API call to the service.
1044// the "output" return value is not valid until after Send returns without error. 1036// the "output" return value is not valid until after Send returns without error.
@@ -1072,14 +1064,15 @@ func (c *S3) DeleteBucketReplicationRequest(input *DeleteBucketReplicationInput)
1072 1064
1073 output = &DeleteBucketReplicationOutput{} 1065 output = &DeleteBucketReplicationOutput{}
1074 req = c.newRequest(op, input, output) 1066 req = c.newRequest(op, input, output)
1075 req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) 1067 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1076 req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
1077 return 1068 return
1078} 1069}
1079 1070
1080// DeleteBucketReplication API operation for Amazon Simple Storage Service. 1071// DeleteBucketReplication API operation for Amazon Simple Storage Service.
1081// 1072//
1082// Deletes the replication configuration from the bucket. 1073// Deletes the replication configuration from the bucket. For information about
1074// replication configuration, see Cross-Region Replication (CRR) ( https://docs.aws.amazon.com/AmazonS3/latest/dev/crr.html)
1075// in the Amazon S3 Developer Guide.
1083// 1076//
1084// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1077// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1085// with awserr.Error's Code and Message methods to get detailed information about 1078// with awserr.Error's Code and Message methods to get detailed information about
@@ -1114,7 +1107,7 @@ const opDeleteBucketTagging = "DeleteBucketTagging"
1114// DeleteBucketTaggingRequest generates a "aws/request.Request" representing the 1107// DeleteBucketTaggingRequest generates a "aws/request.Request" representing the
1115// client's request for the DeleteBucketTagging operation. The "output" return 1108// client's request for the DeleteBucketTagging operation. The "output" return
1116// value will be populated with the request's response once the request completes 1109// value will be populated with the request's response once the request completes
1117// successfuly. 1110// successfully.
1118// 1111//
1119// Use "Send" method on the returned Request to send the API call to the service. 1112// Use "Send" method on the returned Request to send the API call to the service.
1120// the "output" return value is not valid until after Send returns without error. 1113// the "output" return value is not valid until after Send returns without error.
@@ -1148,8 +1141,7 @@ func (c *S3) DeleteBucketTaggingRequest(input *DeleteBucketTaggingInput) (req *r
1148 1141
1149 output = &DeleteBucketTaggingOutput{} 1142 output = &DeleteBucketTaggingOutput{}
1150 req = c.newRequest(op, input, output) 1143 req = c.newRequest(op, input, output)
1151 req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) 1144 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1152 req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
1153 return 1145 return
1154} 1146}
1155 1147
@@ -1190,7 +1182,7 @@ const opDeleteBucketWebsite = "DeleteBucketWebsite"
1190// DeleteBucketWebsiteRequest generates a "aws/request.Request" representing the 1182// DeleteBucketWebsiteRequest generates a "aws/request.Request" representing the
1191// client's request for the DeleteBucketWebsite operation. The "output" return 1183// client's request for the DeleteBucketWebsite operation. The "output" return
1192// value will be populated with the request's response once the request completes 1184// value will be populated with the request's response once the request completes
1193// successfuly. 1185// successfully.
1194// 1186//
1195// Use "Send" method on the returned Request to send the API call to the service. 1187// Use "Send" method on the returned Request to send the API call to the service.
1196// the "output" return value is not valid until after Send returns without error. 1188// the "output" return value is not valid until after Send returns without error.
@@ -1224,8 +1216,7 @@ func (c *S3) DeleteBucketWebsiteRequest(input *DeleteBucketWebsiteInput) (req *r
1224 1216
1225 output = &DeleteBucketWebsiteOutput{} 1217 output = &DeleteBucketWebsiteOutput{}
1226 req = c.newRequest(op, input, output) 1218 req = c.newRequest(op, input, output)
1227 req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) 1219 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1228 req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
1229 return 1220 return
1230} 1221}
1231 1222
@@ -1266,7 +1257,7 @@ const opDeleteObject = "DeleteObject"
1266// DeleteObjectRequest generates a "aws/request.Request" representing the 1257// DeleteObjectRequest generates a "aws/request.Request" representing the
1267// client's request for the DeleteObject operation. The "output" return 1258// client's request for the DeleteObject operation. The "output" return
1268// value will be populated with the request's response once the request completes 1259// value will be populated with the request's response once the request completes
1269// successfuly. 1260// successfully.
1270// 1261//
1271// Use "Send" method on the returned Request to send the API call to the service. 1262// Use "Send" method on the returned Request to send the API call to the service.
1272// the "output" return value is not valid until after Send returns without error. 1263// the "output" return value is not valid until after Send returns without error.
@@ -1342,7 +1333,7 @@ const opDeleteObjectTagging = "DeleteObjectTagging"
1342// DeleteObjectTaggingRequest generates a "aws/request.Request" representing the 1333// DeleteObjectTaggingRequest generates a "aws/request.Request" representing the
1343// client's request for the DeleteObjectTagging operation. The "output" return 1334// client's request for the DeleteObjectTagging operation. The "output" return
1344// value will be populated with the request's response once the request completes 1335// value will be populated with the request's response once the request completes
1345// successfuly. 1336// successfully.
1346// 1337//
1347// Use "Send" method on the returned Request to send the API call to the service. 1338// Use "Send" method on the returned Request to send the API call to the service.
1348// the "output" return value is not valid until after Send returns without error. 1339// the "output" return value is not valid until after Send returns without error.
@@ -1416,7 +1407,7 @@ const opDeleteObjects = "DeleteObjects"
1416// DeleteObjectsRequest generates a "aws/request.Request" representing the 1407// DeleteObjectsRequest generates a "aws/request.Request" representing the
1417// client's request for the DeleteObjects operation. The "output" return 1408// client's request for the DeleteObjects operation. The "output" return
1418// value will be populated with the request's response once the request completes 1409// value will be populated with the request's response once the request completes
1419// successfuly. 1410// successfully.
1420// 1411//
1421// Use "Send" method on the returned Request to send the API call to the service. 1412// Use "Send" method on the returned Request to send the API call to the service.
1422// the "output" return value is not valid until after Send returns without error. 1413// the "output" return value is not valid until after Send returns without error.
@@ -1486,12 +1477,87 @@ func (c *S3) DeleteObjectsWithContext(ctx aws.Context, input *DeleteObjectsInput
1486 return out, req.Send() 1477 return out, req.Send()
1487} 1478}
1488 1479
1480const opDeletePublicAccessBlock = "DeletePublicAccessBlock"
1481
1482// DeletePublicAccessBlockRequest generates a "aws/request.Request" representing the
1483// client's request for the DeletePublicAccessBlock operation. The "output" return
1484// value will be populated with the request's response once the request completes
1485// successfully.
1486//
1487// Use "Send" method on the returned Request to send the API call to the service.
1488// the "output" return value is not valid until after Send returns without error.
1489//
1490// See DeletePublicAccessBlock for more information on using the DeletePublicAccessBlock
1491// API call, and error handling.
1492//
1493// This method is useful when you want to inject custom logic or configuration
1494// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1495//
1496//
1497// // Example sending a request using the DeletePublicAccessBlockRequest method.
1498// req, resp := client.DeletePublicAccessBlockRequest(params)
1499//
1500// err := req.Send()
1501// if err == nil { // resp is now filled
1502// fmt.Println(resp)
1503// }
1504//
1505// See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeletePublicAccessBlock
1506func (c *S3) DeletePublicAccessBlockRequest(input *DeletePublicAccessBlockInput) (req *request.Request, output *DeletePublicAccessBlockOutput) {
1507 op := &request.Operation{
1508 Name: opDeletePublicAccessBlock,
1509 HTTPMethod: "DELETE",
1510 HTTPPath: "/{Bucket}?publicAccessBlock",
1511 }
1512
1513 if input == nil {
1514 input = &DeletePublicAccessBlockInput{}
1515 }
1516
1517 output = &DeletePublicAccessBlockOutput{}
1518 req = c.newRequest(op, input, output)
1519 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1520 return
1521}
1522
1523// DeletePublicAccessBlock API operation for Amazon Simple Storage Service.
1524//
1525// Removes the PublicAccessBlock configuration from an Amazon S3 bucket.
1526//
1527// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1528// with awserr.Error's Code and Message methods to get detailed information about
1529// the error.
1530//
1531// See the AWS API reference guide for Amazon Simple Storage Service's
1532// API operation DeletePublicAccessBlock for usage and error information.
1533// See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeletePublicAccessBlock
1534func (c *S3) DeletePublicAccessBlock(input *DeletePublicAccessBlockInput) (*DeletePublicAccessBlockOutput, error) {
1535 req, out := c.DeletePublicAccessBlockRequest(input)
1536 return out, req.Send()
1537}
1538
1539// DeletePublicAccessBlockWithContext is the same as DeletePublicAccessBlock with the addition of
1540// the ability to pass a context and additional request options.
1541//
1542// See DeletePublicAccessBlock for details on how to use this API operation.
1543//
1544// The context must be non-nil and will be used for request cancellation. If
1545// the context is nil a panic will occur. In the future the SDK may create
1546// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1547// for more information on using Contexts.
1548func (c *S3) DeletePublicAccessBlockWithContext(ctx aws.Context, input *DeletePublicAccessBlockInput, opts ...request.Option) (*DeletePublicAccessBlockOutput, error) {
1549 req, out := c.DeletePublicAccessBlockRequest(input)
1550 req.SetContext(ctx)
1551 req.ApplyOptions(opts...)
1552 return out, req.Send()
1553}
1554
1489const opGetBucketAccelerateConfiguration = "GetBucketAccelerateConfiguration" 1555const opGetBucketAccelerateConfiguration = "GetBucketAccelerateConfiguration"
1490 1556
1491// GetBucketAccelerateConfigurationRequest generates a "aws/request.Request" representing the 1557// GetBucketAccelerateConfigurationRequest generates a "aws/request.Request" representing the
1492// client's request for the GetBucketAccelerateConfiguration operation. The "output" return 1558// client's request for the GetBucketAccelerateConfiguration operation. The "output" return
1493// value will be populated with the request's response once the request completes 1559// value will be populated with the request's response once the request completes
1494// successfuly. 1560// successfully.
1495// 1561//
1496// Use "Send" method on the returned Request to send the API call to the service. 1562// Use "Send" method on the returned Request to send the API call to the service.
1497// the "output" return value is not valid until after Send returns without error. 1563// the "output" return value is not valid until after Send returns without error.
@@ -1565,7 +1631,7 @@ const opGetBucketAcl = "GetBucketAcl"
1565// GetBucketAclRequest generates a "aws/request.Request" representing the 1631// GetBucketAclRequest generates a "aws/request.Request" representing the
1566// client's request for the GetBucketAcl operation. The "output" return 1632// client's request for the GetBucketAcl operation. The "output" return
1567// value will be populated with the request's response once the request completes 1633// value will be populated with the request's response once the request completes
1568// successfuly. 1634// successfully.
1569// 1635//
1570// Use "Send" method on the returned Request to send the API call to the service. 1636// Use "Send" method on the returned Request to send the API call to the service.
1571// the "output" return value is not valid until after Send returns without error. 1637// the "output" return value is not valid until after Send returns without error.
@@ -1639,7 +1705,7 @@ const opGetBucketAnalyticsConfiguration = "GetBucketAnalyticsConfiguration"
1639// GetBucketAnalyticsConfigurationRequest generates a "aws/request.Request" representing the 1705// GetBucketAnalyticsConfigurationRequest generates a "aws/request.Request" representing the
1640// client's request for the GetBucketAnalyticsConfiguration operation. The "output" return 1706// client's request for the GetBucketAnalyticsConfiguration operation. The "output" return
1641// value will be populated with the request's response once the request completes 1707// value will be populated with the request's response once the request completes
1642// successfuly. 1708// successfully.
1643// 1709//
1644// Use "Send" method on the returned Request to send the API call to the service. 1710// Use "Send" method on the returned Request to send the API call to the service.
1645// the "output" return value is not valid until after Send returns without error. 1711// the "output" return value is not valid until after Send returns without error.
@@ -1714,7 +1780,7 @@ const opGetBucketCors = "GetBucketCors"
1714// GetBucketCorsRequest generates a "aws/request.Request" representing the 1780// GetBucketCorsRequest generates a "aws/request.Request" representing the
1715// client's request for the GetBucketCors operation. The "output" return 1781// client's request for the GetBucketCors operation. The "output" return
1716// value will be populated with the request's response once the request completes 1782// value will be populated with the request's response once the request completes
1717// successfuly. 1783// successfully.
1718// 1784//
1719// Use "Send" method on the returned Request to send the API call to the service. 1785// Use "Send" method on the returned Request to send the API call to the service.
1720// the "output" return value is not valid until after Send returns without error. 1786// the "output" return value is not valid until after Send returns without error.
@@ -1753,7 +1819,7 @@ func (c *S3) GetBucketCorsRequest(input *GetBucketCorsInput) (req *request.Reque
1753 1819
1754// GetBucketCors API operation for Amazon Simple Storage Service. 1820// GetBucketCors API operation for Amazon Simple Storage Service.
1755// 1821//
1756// Returns the cors configuration for the bucket. 1822// Returns the CORS configuration for the bucket.
1757// 1823//
1758// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1824// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1759// with awserr.Error's Code and Message methods to get detailed information about 1825// with awserr.Error's Code and Message methods to get detailed information about
@@ -1788,7 +1854,7 @@ const opGetBucketEncryption = "GetBucketEncryption"
1788// GetBucketEncryptionRequest generates a "aws/request.Request" representing the 1854// GetBucketEncryptionRequest generates a "aws/request.Request" representing the
1789// client's request for the GetBucketEncryption operation. The "output" return 1855// client's request for the GetBucketEncryption operation. The "output" return
1790// value will be populated with the request's response once the request completes 1856// value will be populated with the request's response once the request completes
1791// successfuly. 1857// successfully.
1792// 1858//
1793// Use "Send" method on the returned Request to send the API call to the service. 1859// Use "Send" method on the returned Request to send the API call to the service.
1794// the "output" return value is not valid until after Send returns without error. 1860// the "output" return value is not valid until after Send returns without error.
@@ -1862,7 +1928,7 @@ const opGetBucketInventoryConfiguration = "GetBucketInventoryConfiguration"
1862// GetBucketInventoryConfigurationRequest generates a "aws/request.Request" representing the 1928// GetBucketInventoryConfigurationRequest generates a "aws/request.Request" representing the
1863// client's request for the GetBucketInventoryConfiguration operation. The "output" return 1929// client's request for the GetBucketInventoryConfiguration operation. The "output" return
1864// value will be populated with the request's response once the request completes 1930// value will be populated with the request's response once the request completes
1865// successfuly. 1931// successfully.
1866// 1932//
1867// Use "Send" method on the returned Request to send the API call to the service. 1933// Use "Send" method on the returned Request to send the API call to the service.
1868// the "output" return value is not valid until after Send returns without error. 1934// the "output" return value is not valid until after Send returns without error.
@@ -1937,7 +2003,7 @@ const opGetBucketLifecycle = "GetBucketLifecycle"
1937// GetBucketLifecycleRequest generates a "aws/request.Request" representing the 2003// GetBucketLifecycleRequest generates a "aws/request.Request" representing the
1938// client's request for the GetBucketLifecycle operation. The "output" return 2004// client's request for the GetBucketLifecycle operation. The "output" return
1939// value will be populated with the request's response once the request completes 2005// value will be populated with the request's response once the request completes
1940// successfuly. 2006// successfully.
1941// 2007//
1942// Use "Send" method on the returned Request to send the API call to the service. 2008// Use "Send" method on the returned Request to send the API call to the service.
1943// the "output" return value is not valid until after Send returns without error. 2009// the "output" return value is not valid until after Send returns without error.
@@ -1958,6 +2024,8 @@ const opGetBucketLifecycle = "GetBucketLifecycle"
1958// } 2024// }
1959// 2025//
1960// See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketLifecycle 2026// See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketLifecycle
2027//
2028// Deprecated: GetBucketLifecycle has been deprecated
1961func (c *S3) GetBucketLifecycleRequest(input *GetBucketLifecycleInput) (req *request.Request, output *GetBucketLifecycleOutput) { 2029func (c *S3) GetBucketLifecycleRequest(input *GetBucketLifecycleInput) (req *request.Request, output *GetBucketLifecycleOutput) {
1962 if c.Client.Config.Logger != nil { 2030 if c.Client.Config.Logger != nil {
1963 c.Client.Config.Logger.Log("This operation, GetBucketLifecycle, has been deprecated") 2031 c.Client.Config.Logger.Log("This operation, GetBucketLifecycle, has been deprecated")
@@ -1979,7 +2047,7 @@ func (c *S3) GetBucketLifecycleRequest(input *GetBucketLifecycleInput) (req *req
1979 2047
1980// GetBucketLifecycle API operation for Amazon Simple Storage Service. 2048// GetBucketLifecycle API operation for Amazon Simple Storage Service.
1981// 2049//
1982// Deprecated, see the GetBucketLifecycleConfiguration operation. 2050// No longer used, see the GetBucketLifecycleConfiguration operation.
1983// 2051//
1984// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2052// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1985// with awserr.Error's Code and Message methods to get detailed information about 2053// with awserr.Error's Code and Message methods to get detailed information about
@@ -1988,6 +2056,8 @@ func (c *S3) GetBucketLifecycleRequest(input *GetBucketLifecycleInput) (req *req
1988// See the AWS API reference guide for Amazon Simple Storage Service's 2056// See the AWS API reference guide for Amazon Simple Storage Service's
1989// API operation GetBucketLifecycle for usage and error information. 2057// API operation GetBucketLifecycle for usage and error information.
1990// See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketLifecycle 2058// See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketLifecycle
2059//
2060// Deprecated: GetBucketLifecycle has been deprecated
1991func (c *S3) GetBucketLifecycle(input *GetBucketLifecycleInput) (*GetBucketLifecycleOutput, error) { 2061func (c *S3) GetBucketLifecycle(input *GetBucketLifecycleInput) (*GetBucketLifecycleOutput, error) {
1992 req, out := c.GetBucketLifecycleRequest(input) 2062 req, out := c.GetBucketLifecycleRequest(input)
1993 return out, req.Send() 2063 return out, req.Send()
@@ -2002,6 +2072,8 @@ func (c *S3) GetBucketLifecycle(input *GetBucketLifecycleInput) (*GetBucketLifec
2002// the context is nil a panic will occur. In the future the SDK may create 2072// the context is nil a panic will occur. In the future the SDK may create
2003// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2073// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2004// for more information on using Contexts. 2074// for more information on using Contexts.
2075//
2076// Deprecated: GetBucketLifecycleWithContext has been deprecated
2005func (c *S3) GetBucketLifecycleWithContext(ctx aws.Context, input *GetBucketLifecycleInput, opts ...request.Option) (*GetBucketLifecycleOutput, error) { 2077func (c *S3) GetBucketLifecycleWithContext(ctx aws.Context, input *GetBucketLifecycleInput, opts ...request.Option) (*GetBucketLifecycleOutput, error) {
2006 req, out := c.GetBucketLifecycleRequest(input) 2078 req, out := c.GetBucketLifecycleRequest(input)
2007 req.SetContext(ctx) 2079 req.SetContext(ctx)
@@ -2014,7 +2086,7 @@ const opGetBucketLifecycleConfiguration = "GetBucketLifecycleConfiguration"
2014// GetBucketLifecycleConfigurationRequest generates a "aws/request.Request" representing the 2086// GetBucketLifecycleConfigurationRequest generates a "aws/request.Request" representing the
2015// client's request for the GetBucketLifecycleConfiguration operation. The "output" return 2087// client's request for the GetBucketLifecycleConfiguration operation. The "output" return
2016// value will be populated with the request's response once the request completes 2088// value will be populated with the request's response once the request completes
2017// successfuly. 2089// successfully.
2018// 2090//
2019// Use "Send" method on the returned Request to send the API call to the service. 2091// Use "Send" method on the returned Request to send the API call to the service.
2020// the "output" return value is not valid until after Send returns without error. 2092// the "output" return value is not valid until after Send returns without error.
@@ -2088,7 +2160,7 @@ const opGetBucketLocation = "GetBucketLocation"
2088// GetBucketLocationRequest generates a "aws/request.Request" representing the 2160// GetBucketLocationRequest generates a "aws/request.Request" representing the
2089// client's request for the GetBucketLocation operation. The "output" return 2161// client's request for the GetBucketLocation operation. The "output" return
2090// value will be populated with the request's response once the request completes 2162// value will be populated with the request's response once the request completes
2091// successfuly. 2163// successfully.
2092// 2164//
2093// Use "Send" method on the returned Request to send the API call to the service. 2165// Use "Send" method on the returned Request to send the API call to the service.
2094// the "output" return value is not valid until after Send returns without error. 2166// the "output" return value is not valid until after Send returns without error.
@@ -2162,7 +2234,7 @@ const opGetBucketLogging = "GetBucketLogging"
2162// GetBucketLoggingRequest generates a "aws/request.Request" representing the 2234// GetBucketLoggingRequest generates a "aws/request.Request" representing the
2163// client's request for the GetBucketLogging operation. The "output" return 2235// client's request for the GetBucketLogging operation. The "output" return
2164// value will be populated with the request's response once the request completes 2236// value will be populated with the request's response once the request completes
2165// successfuly. 2237// successfully.
2166// 2238//
2167// Use "Send" method on the returned Request to send the API call to the service. 2239// Use "Send" method on the returned Request to send the API call to the service.
2168// the "output" return value is not valid until after Send returns without error. 2240// the "output" return value is not valid until after Send returns without error.
@@ -2237,7 +2309,7 @@ const opGetBucketMetricsConfiguration = "GetBucketMetricsConfiguration"
2237// GetBucketMetricsConfigurationRequest generates a "aws/request.Request" representing the 2309// GetBucketMetricsConfigurationRequest generates a "aws/request.Request" representing the
2238// client's request for the GetBucketMetricsConfiguration operation. The "output" return 2310// client's request for the GetBucketMetricsConfiguration operation. The "output" return
2239// value will be populated with the request's response once the request completes 2311// value will be populated with the request's response once the request completes
2240// successfuly. 2312// successfully.
2241// 2313//
2242// Use "Send" method on the returned Request to send the API call to the service. 2314// Use "Send" method on the returned Request to send the API call to the service.
2243// the "output" return value is not valid until after Send returns without error. 2315// the "output" return value is not valid until after Send returns without error.
@@ -2312,7 +2384,7 @@ const opGetBucketNotification = "GetBucketNotification"
2312// GetBucketNotificationRequest generates a "aws/request.Request" representing the 2384// GetBucketNotificationRequest generates a "aws/request.Request" representing the
2313// client's request for the GetBucketNotification operation. The "output" return 2385// client's request for the GetBucketNotification operation. The "output" return
2314// value will be populated with the request's response once the request completes 2386// value will be populated with the request's response once the request completes
2315// successfuly. 2387// successfully.
2316// 2388//
2317// Use "Send" method on the returned Request to send the API call to the service. 2389// Use "Send" method on the returned Request to send the API call to the service.
2318// the "output" return value is not valid until after Send returns without error. 2390// the "output" return value is not valid until after Send returns without error.
@@ -2333,6 +2405,8 @@ const opGetBucketNotification = "GetBucketNotification"
2333// } 2405// }
2334// 2406//
2335// See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketNotification 2407// See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketNotification
2408//
2409// Deprecated: GetBucketNotification has been deprecated
2336func (c *S3) GetBucketNotificationRequest(input *GetBucketNotificationConfigurationRequest) (req *request.Request, output *NotificationConfigurationDeprecated) { 2410func (c *S3) GetBucketNotificationRequest(input *GetBucketNotificationConfigurationRequest) (req *request.Request, output *NotificationConfigurationDeprecated) {
2337 if c.Client.Config.Logger != nil { 2411 if c.Client.Config.Logger != nil {
2338 c.Client.Config.Logger.Log("This operation, GetBucketNotification, has been deprecated") 2412 c.Client.Config.Logger.Log("This operation, GetBucketNotification, has been deprecated")
@@ -2354,7 +2428,7 @@ func (c *S3) GetBucketNotificationRequest(input *GetBucketNotificationConfigurat
2354 2428
2355// GetBucketNotification API operation for Amazon Simple Storage Service. 2429// GetBucketNotification API operation for Amazon Simple Storage Service.
2356// 2430//
2357// Deprecated, see the GetBucketNotificationConfiguration operation. 2431// No longer used, see the GetBucketNotificationConfiguration operation.
2358// 2432//
2359// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2433// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2360// with awserr.Error's Code and Message methods to get detailed information about 2434// with awserr.Error's Code and Message methods to get detailed information about
@@ -2363,6 +2437,8 @@ func (c *S3) GetBucketNotificationRequest(input *GetBucketNotificationConfigurat
2363// See the AWS API reference guide for Amazon Simple Storage Service's 2437// See the AWS API reference guide for Amazon Simple Storage Service's
2364// API operation GetBucketNotification for usage and error information. 2438// API operation GetBucketNotification for usage and error information.
2365// See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketNotification 2439// See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketNotification
2440//
2441// Deprecated: GetBucketNotification has been deprecated
2366func (c *S3) GetBucketNotification(input *GetBucketNotificationConfigurationRequest) (*NotificationConfigurationDeprecated, error) { 2442func (c *S3) GetBucketNotification(input *GetBucketNotificationConfigurationRequest) (*NotificationConfigurationDeprecated, error) {
2367 req, out := c.GetBucketNotificationRequest(input) 2443 req, out := c.GetBucketNotificationRequest(input)
2368 return out, req.Send() 2444 return out, req.Send()
@@ -2377,6 +2453,8 @@ func (c *S3) GetBucketNotification(input *GetBucketNotificationConfigurationRequ
2377// the context is nil a panic will occur. In the future the SDK may create 2453// the context is nil a panic will occur. In the future the SDK may create
2378// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2454// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2379// for more information on using Contexts. 2455// for more information on using Contexts.
2456//
2457// Deprecated: GetBucketNotificationWithContext has been deprecated
2380func (c *S3) GetBucketNotificationWithContext(ctx aws.Context, input *GetBucketNotificationConfigurationRequest, opts ...request.Option) (*NotificationConfigurationDeprecated, error) { 2458func (c *S3) GetBucketNotificationWithContext(ctx aws.Context, input *GetBucketNotificationConfigurationRequest, opts ...request.Option) (*NotificationConfigurationDeprecated, error) {
2381 req, out := c.GetBucketNotificationRequest(input) 2459 req, out := c.GetBucketNotificationRequest(input)
2382 req.SetContext(ctx) 2460 req.SetContext(ctx)
@@ -2389,7 +2467,7 @@ const opGetBucketNotificationConfiguration = "GetBucketNotificationConfiguration
2389// GetBucketNotificationConfigurationRequest generates a "aws/request.Request" representing the 2467// GetBucketNotificationConfigurationRequest generates a "aws/request.Request" representing the
2390// client's request for the GetBucketNotificationConfiguration operation. The "output" return 2468// client's request for the GetBucketNotificationConfiguration operation. The "output" return
2391// value will be populated with the request's response once the request completes 2469// value will be populated with the request's response once the request completes
2392// successfuly. 2470// successfully.
2393// 2471//
2394// Use "Send" method on the returned Request to send the API call to the service. 2472// Use "Send" method on the returned Request to send the API call to the service.
2395// the "output" return value is not valid until after Send returns without error. 2473// the "output" return value is not valid until after Send returns without error.
@@ -2463,7 +2541,7 @@ const opGetBucketPolicy = "GetBucketPolicy"
2463// GetBucketPolicyRequest generates a "aws/request.Request" representing the 2541// GetBucketPolicyRequest generates a "aws/request.Request" representing the
2464// client's request for the GetBucketPolicy operation. The "output" return 2542// client's request for the GetBucketPolicy operation. The "output" return
2465// value will be populated with the request's response once the request completes 2543// value will be populated with the request's response once the request completes
2466// successfuly. 2544// successfully.
2467// 2545//
2468// Use "Send" method on the returned Request to send the API call to the service. 2546// Use "Send" method on the returned Request to send the API call to the service.
2469// the "output" return value is not valid until after Send returns without error. 2547// the "output" return value is not valid until after Send returns without error.
@@ -2532,12 +2610,87 @@ func (c *S3) GetBucketPolicyWithContext(ctx aws.Context, input *GetBucketPolicyI
2532 return out, req.Send() 2610 return out, req.Send()
2533} 2611}
2534 2612
2613const opGetBucketPolicyStatus = "GetBucketPolicyStatus"
2614
2615// GetBucketPolicyStatusRequest generates a "aws/request.Request" representing the
2616// client's request for the GetBucketPolicyStatus operation. The "output" return
2617// value will be populated with the request's response once the request completes
2618// successfully.
2619//
2620// Use "Send" method on the returned Request to send the API call to the service.
2621// the "output" return value is not valid until after Send returns without error.
2622//
2623// See GetBucketPolicyStatus for more information on using the GetBucketPolicyStatus
2624// API call, and error handling.
2625//
2626// This method is useful when you want to inject custom logic or configuration
2627// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2628//
2629//
2630// // Example sending a request using the GetBucketPolicyStatusRequest method.
2631// req, resp := client.GetBucketPolicyStatusRequest(params)
2632//
2633// err := req.Send()
2634// if err == nil { // resp is now filled
2635// fmt.Println(resp)
2636// }
2637//
2638// See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketPolicyStatus
2639func (c *S3) GetBucketPolicyStatusRequest(input *GetBucketPolicyStatusInput) (req *request.Request, output *GetBucketPolicyStatusOutput) {
2640 op := &request.Operation{
2641 Name: opGetBucketPolicyStatus,
2642 HTTPMethod: "GET",
2643 HTTPPath: "/{Bucket}?policyStatus",
2644 }
2645
2646 if input == nil {
2647 input = &GetBucketPolicyStatusInput{}
2648 }
2649
2650 output = &GetBucketPolicyStatusOutput{}
2651 req = c.newRequest(op, input, output)
2652 return
2653}
2654
2655// GetBucketPolicyStatus API operation for Amazon Simple Storage Service.
2656//
2657// Retrieves the policy status for an Amazon S3 bucket, indicating whether the
2658// bucket is public.
2659//
2660// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2661// with awserr.Error's Code and Message methods to get detailed information about
2662// the error.
2663//
2664// See the AWS API reference guide for Amazon Simple Storage Service's
2665// API operation GetBucketPolicyStatus for usage and error information.
2666// See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketPolicyStatus
2667func (c *S3) GetBucketPolicyStatus(input *GetBucketPolicyStatusInput) (*GetBucketPolicyStatusOutput, error) {
2668 req, out := c.GetBucketPolicyStatusRequest(input)
2669 return out, req.Send()
2670}
2671
2672// GetBucketPolicyStatusWithContext is the same as GetBucketPolicyStatus with the addition of
2673// the ability to pass a context and additional request options.
2674//
2675// See GetBucketPolicyStatus for details on how to use this API operation.
2676//
2677// The context must be non-nil and will be used for request cancellation. If
2678// the context is nil a panic will occur. In the future the SDK may create
2679// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2680// for more information on using Contexts.
2681func (c *S3) GetBucketPolicyStatusWithContext(ctx aws.Context, input *GetBucketPolicyStatusInput, opts ...request.Option) (*GetBucketPolicyStatusOutput, error) {
2682 req, out := c.GetBucketPolicyStatusRequest(input)
2683 req.SetContext(ctx)
2684 req.ApplyOptions(opts...)
2685 return out, req.Send()
2686}
2687
2535const opGetBucketReplication = "GetBucketReplication" 2688const opGetBucketReplication = "GetBucketReplication"
2536 2689
2537// GetBucketReplicationRequest generates a "aws/request.Request" representing the 2690// GetBucketReplicationRequest generates a "aws/request.Request" representing the
2538// client's request for the GetBucketReplication operation. The "output" return 2691// client's request for the GetBucketReplication operation. The "output" return
2539// value will be populated with the request's response once the request completes 2692// value will be populated with the request's response once the request completes
2540// successfuly. 2693// successfully.
2541// 2694//
2542// Use "Send" method on the returned Request to send the API call to the service. 2695// Use "Send" method on the returned Request to send the API call to the service.
2543// the "output" return value is not valid until after Send returns without error. 2696// the "output" return value is not valid until after Send returns without error.
@@ -2578,6 +2731,10 @@ func (c *S3) GetBucketReplicationRequest(input *GetBucketReplicationInput) (req
2578// 2731//
2579// Returns the replication configuration of a bucket. 2732// Returns the replication configuration of a bucket.
2580// 2733//
2734// It can take a while to propagate the put or delete a replication configuration
2735// to all Amazon S3 systems. Therefore, a get request soon after put or delete
2736// can return a wrong result.
2737//
2581// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2738// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2582// with awserr.Error's Code and Message methods to get detailed information about 2739// with awserr.Error's Code and Message methods to get detailed information about
2583// the error. 2740// the error.
@@ -2611,7 +2768,7 @@ const opGetBucketRequestPayment = "GetBucketRequestPayment"
2611// GetBucketRequestPaymentRequest generates a "aws/request.Request" representing the 2768// GetBucketRequestPaymentRequest generates a "aws/request.Request" representing the
2612// client's request for the GetBucketRequestPayment operation. The "output" return 2769// client's request for the GetBucketRequestPayment operation. The "output" return
2613// value will be populated with the request's response once the request completes 2770// value will be populated with the request's response once the request completes
2614// successfuly. 2771// successfully.
2615// 2772//
2616// Use "Send" method on the returned Request to send the API call to the service. 2773// Use "Send" method on the returned Request to send the API call to the service.
2617// the "output" return value is not valid until after Send returns without error. 2774// the "output" return value is not valid until after Send returns without error.
@@ -2685,7 +2842,7 @@ const opGetBucketTagging = "GetBucketTagging"
2685// GetBucketTaggingRequest generates a "aws/request.Request" representing the 2842// GetBucketTaggingRequest generates a "aws/request.Request" representing the
2686// client's request for the GetBucketTagging operation. The "output" return 2843// client's request for the GetBucketTagging operation. The "output" return
2687// value will be populated with the request's response once the request completes 2844// value will be populated with the request's response once the request completes
2688// successfuly. 2845// successfully.
2689// 2846//
2690// Use "Send" method on the returned Request to send the API call to the service. 2847// Use "Send" method on the returned Request to send the API call to the service.
2691// the "output" return value is not valid until after Send returns without error. 2848// the "output" return value is not valid until after Send returns without error.
@@ -2759,7 +2916,7 @@ const opGetBucketVersioning = "GetBucketVersioning"
2759// GetBucketVersioningRequest generates a "aws/request.Request" representing the 2916// GetBucketVersioningRequest generates a "aws/request.Request" representing the
2760// client's request for the GetBucketVersioning operation. The "output" return 2917// client's request for the GetBucketVersioning operation. The "output" return
2761// value will be populated with the request's response once the request completes 2918// value will be populated with the request's response once the request completes
2762// successfuly. 2919// successfully.
2763// 2920//
2764// Use "Send" method on the returned Request to send the API call to the service. 2921// Use "Send" method on the returned Request to send the API call to the service.
2765// the "output" return value is not valid until after Send returns without error. 2922// the "output" return value is not valid until after Send returns without error.
@@ -2833,7 +2990,7 @@ const opGetBucketWebsite = "GetBucketWebsite"
2833// GetBucketWebsiteRequest generates a "aws/request.Request" representing the 2990// GetBucketWebsiteRequest generates a "aws/request.Request" representing the
2834// client's request for the GetBucketWebsite operation. The "output" return 2991// client's request for the GetBucketWebsite operation. The "output" return
2835// value will be populated with the request's response once the request completes 2992// value will be populated with the request's response once the request completes
2836// successfuly. 2993// successfully.
2837// 2994//
2838// Use "Send" method on the returned Request to send the API call to the service. 2995// Use "Send" method on the returned Request to send the API call to the service.
2839// the "output" return value is not valid until after Send returns without error. 2996// the "output" return value is not valid until after Send returns without error.
@@ -2907,7 +3064,7 @@ const opGetObject = "GetObject"
2907// GetObjectRequest generates a "aws/request.Request" representing the 3064// GetObjectRequest generates a "aws/request.Request" representing the
2908// client's request for the GetObject operation. The "output" return 3065// client's request for the GetObject operation. The "output" return
2909// value will be populated with the request's response once the request completes 3066// value will be populated with the request's response once the request completes
2910// successfuly. 3067// successfully.
2911// 3068//
2912// Use "Send" method on the returned Request to send the API call to the service. 3069// Use "Send" method on the returned Request to send the API call to the service.
2913// the "output" return value is not valid until after Send returns without error. 3070// the "output" return value is not valid until after Send returns without error.
@@ -2986,7 +3143,7 @@ const opGetObjectAcl = "GetObjectAcl"
2986// GetObjectAclRequest generates a "aws/request.Request" representing the 3143// GetObjectAclRequest generates a "aws/request.Request" representing the
2987// client's request for the GetObjectAcl operation. The "output" return 3144// client's request for the GetObjectAcl operation. The "output" return
2988// value will be populated with the request's response once the request completes 3145// value will be populated with the request's response once the request completes
2989// successfuly. 3146// successfully.
2990// 3147//
2991// Use "Send" method on the returned Request to send the API call to the service. 3148// Use "Send" method on the returned Request to send the API call to the service.
2992// the "output" return value is not valid until after Send returns without error. 3149// the "output" return value is not valid until after Send returns without error.
@@ -3060,12 +3217,236 @@ func (c *S3) GetObjectAclWithContext(ctx aws.Context, input *GetObjectAclInput,
3060 return out, req.Send() 3217 return out, req.Send()
3061} 3218}
3062 3219
3220const opGetObjectLegalHold = "GetObjectLegalHold"
3221
3222// GetObjectLegalHoldRequest generates a "aws/request.Request" representing the
3223// client's request for the GetObjectLegalHold operation. The "output" return
3224// value will be populated with the request's response once the request completes
3225// successfully.
3226//
3227// Use "Send" method on the returned Request to send the API call to the service.
3228// the "output" return value is not valid until after Send returns without error.
3229//
3230// See GetObjectLegalHold for more information on using the GetObjectLegalHold
3231// API call, and error handling.
3232//
3233// This method is useful when you want to inject custom logic or configuration
3234// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3235//
3236//
3237// // Example sending a request using the GetObjectLegalHoldRequest method.
3238// req, resp := client.GetObjectLegalHoldRequest(params)
3239//
3240// err := req.Send()
3241// if err == nil { // resp is now filled
3242// fmt.Println(resp)
3243// }
3244//
3245// See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectLegalHold
3246func (c *S3) GetObjectLegalHoldRequest(input *GetObjectLegalHoldInput) (req *request.Request, output *GetObjectLegalHoldOutput) {
3247 op := &request.Operation{
3248 Name: opGetObjectLegalHold,
3249 HTTPMethod: "GET",
3250 HTTPPath: "/{Bucket}/{Key+}?legal-hold",
3251 }
3252
3253 if input == nil {
3254 input = &GetObjectLegalHoldInput{}
3255 }
3256
3257 output = &GetObjectLegalHoldOutput{}
3258 req = c.newRequest(op, input, output)
3259 return
3260}
3261
3262// GetObjectLegalHold API operation for Amazon Simple Storage Service.
3263//
3264// Gets an object's current Legal Hold status.
3265//
3266// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3267// with awserr.Error's Code and Message methods to get detailed information about
3268// the error.
3269//
3270// See the AWS API reference guide for Amazon Simple Storage Service's
3271// API operation GetObjectLegalHold for usage and error information.
3272// See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectLegalHold
3273func (c *S3) GetObjectLegalHold(input *GetObjectLegalHoldInput) (*GetObjectLegalHoldOutput, error) {
3274 req, out := c.GetObjectLegalHoldRequest(input)
3275 return out, req.Send()
3276}
3277
3278// GetObjectLegalHoldWithContext is the same as GetObjectLegalHold with the addition of
3279// the ability to pass a context and additional request options.
3280//
3281// See GetObjectLegalHold for details on how to use this API operation.
3282//
3283// The context must be non-nil and will be used for request cancellation. If
3284// the context is nil a panic will occur. In the future the SDK may create
3285// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3286// for more information on using Contexts.
3287func (c *S3) GetObjectLegalHoldWithContext(ctx aws.Context, input *GetObjectLegalHoldInput, opts ...request.Option) (*GetObjectLegalHoldOutput, error) {
3288 req, out := c.GetObjectLegalHoldRequest(input)
3289 req.SetContext(ctx)
3290 req.ApplyOptions(opts...)
3291 return out, req.Send()
3292}
3293
3294const opGetObjectLockConfiguration = "GetObjectLockConfiguration"
3295
3296// GetObjectLockConfigurationRequest generates a "aws/request.Request" representing the
3297// client's request for the GetObjectLockConfiguration operation. The "output" return
3298// value will be populated with the request's response once the request completes
3299// successfully.
3300//
3301// Use "Send" method on the returned Request to send the API call to the service.
3302// the "output" return value is not valid until after Send returns without error.
3303//
3304// See GetObjectLockConfiguration for more information on using the GetObjectLockConfiguration
3305// API call, and error handling.
3306//
3307// This method is useful when you want to inject custom logic or configuration
3308// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3309//
3310//
3311// // Example sending a request using the GetObjectLockConfigurationRequest method.
3312// req, resp := client.GetObjectLockConfigurationRequest(params)
3313//
3314// err := req.Send()
3315// if err == nil { // resp is now filled
3316// fmt.Println(resp)
3317// }
3318//
3319// See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectLockConfiguration
3320func (c *S3) GetObjectLockConfigurationRequest(input *GetObjectLockConfigurationInput) (req *request.Request, output *GetObjectLockConfigurationOutput) {
3321 op := &request.Operation{
3322 Name: opGetObjectLockConfiguration,
3323 HTTPMethod: "GET",
3324 HTTPPath: "/{Bucket}?object-lock",
3325 }
3326
3327 if input == nil {
3328 input = &GetObjectLockConfigurationInput{}
3329 }
3330
3331 output = &GetObjectLockConfigurationOutput{}
3332 req = c.newRequest(op, input, output)
3333 return
3334}
3335
3336// GetObjectLockConfiguration API operation for Amazon Simple Storage Service.
3337//
3338// Gets the Object Lock configuration for a bucket. The rule specified in the
3339// Object Lock configuration will be applied by default to every new object
3340// placed in the specified bucket.
3341//
3342// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3343// with awserr.Error's Code and Message methods to get detailed information about
3344// the error.
3345//
3346// See the AWS API reference guide for Amazon Simple Storage Service's
3347// API operation GetObjectLockConfiguration for usage and error information.
3348// See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectLockConfiguration
3349func (c *S3) GetObjectLockConfiguration(input *GetObjectLockConfigurationInput) (*GetObjectLockConfigurationOutput, error) {
3350 req, out := c.GetObjectLockConfigurationRequest(input)
3351 return out, req.Send()
3352}
3353
3354// GetObjectLockConfigurationWithContext is the same as GetObjectLockConfiguration with the addition of
3355// the ability to pass a context and additional request options.
3356//
3357// See GetObjectLockConfiguration for details on how to use this API operation.
3358//
3359// The context must be non-nil and will be used for request cancellation. If
3360// the context is nil a panic will occur. In the future the SDK may create
3361// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3362// for more information on using Contexts.
3363func (c *S3) GetObjectLockConfigurationWithContext(ctx aws.Context, input *GetObjectLockConfigurationInput, opts ...request.Option) (*GetObjectLockConfigurationOutput, error) {
3364 req, out := c.GetObjectLockConfigurationRequest(input)
3365 req.SetContext(ctx)
3366 req.ApplyOptions(opts...)
3367 return out, req.Send()
3368}
3369
3370const opGetObjectRetention = "GetObjectRetention"
3371
3372// GetObjectRetentionRequest generates a "aws/request.Request" representing the
3373// client's request for the GetObjectRetention operation. The "output" return
3374// value will be populated with the request's response once the request completes
3375// successfully.
3376//
3377// Use "Send" method on the returned Request to send the API call to the service.
3378// the "output" return value is not valid until after Send returns without error.
3379//
3380// See GetObjectRetention for more information on using the GetObjectRetention
3381// API call, and error handling.
3382//
3383// This method is useful when you want to inject custom logic or configuration
3384// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3385//
3386//
3387// // Example sending a request using the GetObjectRetentionRequest method.
3388// req, resp := client.GetObjectRetentionRequest(params)
3389//
3390// err := req.Send()
3391// if err == nil { // resp is now filled
3392// fmt.Println(resp)
3393// }
3394//
3395// See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectRetention
3396func (c *S3) GetObjectRetentionRequest(input *GetObjectRetentionInput) (req *request.Request, output *GetObjectRetentionOutput) {
3397 op := &request.Operation{
3398 Name: opGetObjectRetention,
3399 HTTPMethod: "GET",
3400 HTTPPath: "/{Bucket}/{Key+}?retention",
3401 }
3402
3403 if input == nil {
3404 input = &GetObjectRetentionInput{}
3405 }
3406
3407 output = &GetObjectRetentionOutput{}
3408 req = c.newRequest(op, input, output)
3409 return
3410}
3411
3412// GetObjectRetention API operation for Amazon Simple Storage Service.
3413//
3414// Retrieves an object's retention settings.
3415//
3416// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3417// with awserr.Error's Code and Message methods to get detailed information about
3418// the error.
3419//
3420// See the AWS API reference guide for Amazon Simple Storage Service's
3421// API operation GetObjectRetention for usage and error information.
3422// See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectRetention
3423func (c *S3) GetObjectRetention(input *GetObjectRetentionInput) (*GetObjectRetentionOutput, error) {
3424 req, out := c.GetObjectRetentionRequest(input)
3425 return out, req.Send()
3426}
3427
3428// GetObjectRetentionWithContext is the same as GetObjectRetention with the addition of
3429// the ability to pass a context and additional request options.
3430//
3431// See GetObjectRetention for details on how to use this API operation.
3432//
3433// The context must be non-nil and will be used for request cancellation. If
3434// the context is nil a panic will occur. In the future the SDK may create
3435// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3436// for more information on using Contexts.
3437func (c *S3) GetObjectRetentionWithContext(ctx aws.Context, input *GetObjectRetentionInput, opts ...request.Option) (*GetObjectRetentionOutput, error) {
3438 req, out := c.GetObjectRetentionRequest(input)
3439 req.SetContext(ctx)
3440 req.ApplyOptions(opts...)
3441 return out, req.Send()
3442}
3443
3063const opGetObjectTagging = "GetObjectTagging" 3444const opGetObjectTagging = "GetObjectTagging"
3064 3445
3065// GetObjectTaggingRequest generates a "aws/request.Request" representing the 3446// GetObjectTaggingRequest generates a "aws/request.Request" representing the
3066// client's request for the GetObjectTagging operation. The "output" return 3447// client's request for the GetObjectTagging operation. The "output" return
3067// value will be populated with the request's response once the request completes 3448// value will be populated with the request's response once the request completes
3068// successfuly. 3449// successfully.
3069// 3450//
3070// Use "Send" method on the returned Request to send the API call to the service. 3451// Use "Send" method on the returned Request to send the API call to the service.
3071// the "output" return value is not valid until after Send returns without error. 3452// the "output" return value is not valid until after Send returns without error.
@@ -3139,7 +3520,7 @@ const opGetObjectTorrent = "GetObjectTorrent"
3139// GetObjectTorrentRequest generates a "aws/request.Request" representing the 3520// GetObjectTorrentRequest generates a "aws/request.Request" representing the
3140// client's request for the GetObjectTorrent operation. The "output" return 3521// client's request for the GetObjectTorrent operation. The "output" return
3141// value will be populated with the request's response once the request completes 3522// value will be populated with the request's response once the request completes
3142// successfuly. 3523// successfully.
3143// 3524//
3144// Use "Send" method on the returned Request to send the API call to the service. 3525// Use "Send" method on the returned Request to send the API call to the service.
3145// the "output" return value is not valid until after Send returns without error. 3526// the "output" return value is not valid until after Send returns without error.
@@ -3208,12 +3589,86 @@ func (c *S3) GetObjectTorrentWithContext(ctx aws.Context, input *GetObjectTorren
3208 return out, req.Send() 3589 return out, req.Send()
3209} 3590}
3210 3591
3592const opGetPublicAccessBlock = "GetPublicAccessBlock"
3593
3594// GetPublicAccessBlockRequest generates a "aws/request.Request" representing the
3595// client's request for the GetPublicAccessBlock operation. The "output" return
3596// value will be populated with the request's response once the request completes
3597// successfully.
3598//
3599// Use "Send" method on the returned Request to send the API call to the service.
3600// the "output" return value is not valid until after Send returns without error.
3601//
3602// See GetPublicAccessBlock for more information on using the GetPublicAccessBlock
3603// API call, and error handling.
3604//
3605// This method is useful when you want to inject custom logic or configuration
3606// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3607//
3608//
3609// // Example sending a request using the GetPublicAccessBlockRequest method.
3610// req, resp := client.GetPublicAccessBlockRequest(params)
3611//
3612// err := req.Send()
3613// if err == nil { // resp is now filled
3614// fmt.Println(resp)
3615// }
3616//
3617// See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetPublicAccessBlock
3618func (c *S3) GetPublicAccessBlockRequest(input *GetPublicAccessBlockInput) (req *request.Request, output *GetPublicAccessBlockOutput) {
3619 op := &request.Operation{
3620 Name: opGetPublicAccessBlock,
3621 HTTPMethod: "GET",
3622 HTTPPath: "/{Bucket}?publicAccessBlock",
3623 }
3624
3625 if input == nil {
3626 input = &GetPublicAccessBlockInput{}
3627 }
3628
3629 output = &GetPublicAccessBlockOutput{}
3630 req = c.newRequest(op, input, output)
3631 return
3632}
3633
3634// GetPublicAccessBlock API operation for Amazon Simple Storage Service.
3635//
3636// Retrieves the PublicAccessBlock configuration for an Amazon S3 bucket.
3637//
3638// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3639// with awserr.Error's Code and Message methods to get detailed information about
3640// the error.
3641//
3642// See the AWS API reference guide for Amazon Simple Storage Service's
3643// API operation GetPublicAccessBlock for usage and error information.
3644// See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetPublicAccessBlock
3645func (c *S3) GetPublicAccessBlock(input *GetPublicAccessBlockInput) (*GetPublicAccessBlockOutput, error) {
3646 req, out := c.GetPublicAccessBlockRequest(input)
3647 return out, req.Send()
3648}
3649
3650// GetPublicAccessBlockWithContext is the same as GetPublicAccessBlock with the addition of
3651// the ability to pass a context and additional request options.
3652//
3653// See GetPublicAccessBlock for details on how to use this API operation.
3654//
3655// The context must be non-nil and will be used for request cancellation. If
3656// the context is nil a panic will occur. In the future the SDK may create
3657// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3658// for more information on using Contexts.
3659func (c *S3) GetPublicAccessBlockWithContext(ctx aws.Context, input *GetPublicAccessBlockInput, opts ...request.Option) (*GetPublicAccessBlockOutput, error) {
3660 req, out := c.GetPublicAccessBlockRequest(input)
3661 req.SetContext(ctx)
3662 req.ApplyOptions(opts...)
3663 return out, req.Send()
3664}
3665
3211const opHeadBucket = "HeadBucket" 3666const opHeadBucket = "HeadBucket"
3212 3667
3213// HeadBucketRequest generates a "aws/request.Request" representing the 3668// HeadBucketRequest generates a "aws/request.Request" representing the
3214// client's request for the HeadBucket operation. The "output" return 3669// client's request for the HeadBucket operation. The "output" return
3215// value will be populated with the request's response once the request completes 3670// value will be populated with the request's response once the request completes
3216// successfuly. 3671// successfully.
3217// 3672//
3218// Use "Send" method on the returned Request to send the API call to the service. 3673// Use "Send" method on the returned Request to send the API call to the service.
3219// the "output" return value is not valid until after Send returns without error. 3674// the "output" return value is not valid until after Send returns without error.
@@ -3247,8 +3702,7 @@ func (c *S3) HeadBucketRequest(input *HeadBucketInput) (req *request.Request, ou
3247 3702
3248 output = &HeadBucketOutput{} 3703 output = &HeadBucketOutput{}
3249 req = c.newRequest(op, input, output) 3704 req = c.newRequest(op, input, output)
3250 req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) 3705 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
3251 req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
3252 return 3706 return
3253} 3707}
3254 3708
@@ -3295,7 +3749,7 @@ const opHeadObject = "HeadObject"
3295// HeadObjectRequest generates a "aws/request.Request" representing the 3749// HeadObjectRequest generates a "aws/request.Request" representing the
3296// client's request for the HeadObject operation. The "output" return 3750// client's request for the HeadObject operation. The "output" return
3297// value will be populated with the request's response once the request completes 3751// value will be populated with the request's response once the request completes
3298// successfuly. 3752// successfully.
3299// 3753//
3300// Use "Send" method on the returned Request to send the API call to the service. 3754// Use "Send" method on the returned Request to send the API call to the service.
3301// the "output" return value is not valid until after Send returns without error. 3755// the "output" return value is not valid until after Send returns without error.
@@ -3374,7 +3828,7 @@ const opListBucketAnalyticsConfigurations = "ListBucketAnalyticsConfigurations"
3374// ListBucketAnalyticsConfigurationsRequest generates a "aws/request.Request" representing the 3828// ListBucketAnalyticsConfigurationsRequest generates a "aws/request.Request" representing the
3375// client's request for the ListBucketAnalyticsConfigurations operation. The "output" return 3829// client's request for the ListBucketAnalyticsConfigurations operation. The "output" return
3376// value will be populated with the request's response once the request completes 3830// value will be populated with the request's response once the request completes
3377// successfuly. 3831// successfully.
3378// 3832//
3379// Use "Send" method on the returned Request to send the API call to the service. 3833// Use "Send" method on the returned Request to send the API call to the service.
3380// the "output" return value is not valid until after Send returns without error. 3834// the "output" return value is not valid until after Send returns without error.
@@ -3448,7 +3902,7 @@ const opListBucketInventoryConfigurations = "ListBucketInventoryConfigurations"
3448// ListBucketInventoryConfigurationsRequest generates a "aws/request.Request" representing the 3902// ListBucketInventoryConfigurationsRequest generates a "aws/request.Request" representing the
3449// client's request for the ListBucketInventoryConfigurations operation. The "output" return 3903// client's request for the ListBucketInventoryConfigurations operation. The "output" return
3450// value will be populated with the request's response once the request completes 3904// value will be populated with the request's response once the request completes
3451// successfuly. 3905// successfully.
3452// 3906//
3453// Use "Send" method on the returned Request to send the API call to the service. 3907// Use "Send" method on the returned Request to send the API call to the service.
3454// the "output" return value is not valid until after Send returns without error. 3908// the "output" return value is not valid until after Send returns without error.
@@ -3522,7 +3976,7 @@ const opListBucketMetricsConfigurations = "ListBucketMetricsConfigurations"
3522// ListBucketMetricsConfigurationsRequest generates a "aws/request.Request" representing the 3976// ListBucketMetricsConfigurationsRequest generates a "aws/request.Request" representing the
3523// client's request for the ListBucketMetricsConfigurations operation. The "output" return 3977// client's request for the ListBucketMetricsConfigurations operation. The "output" return
3524// value will be populated with the request's response once the request completes 3978// value will be populated with the request's response once the request completes
3525// successfuly. 3979// successfully.
3526// 3980//
3527// Use "Send" method on the returned Request to send the API call to the service. 3981// Use "Send" method on the returned Request to send the API call to the service.
3528// the "output" return value is not valid until after Send returns without error. 3982// the "output" return value is not valid until after Send returns without error.
@@ -3596,7 +4050,7 @@ const opListBuckets = "ListBuckets"
3596// ListBucketsRequest generates a "aws/request.Request" representing the 4050// ListBucketsRequest generates a "aws/request.Request" representing the
3597// client's request for the ListBuckets operation. The "output" return 4051// client's request for the ListBuckets operation. The "output" return
3598// value will be populated with the request's response once the request completes 4052// value will be populated with the request's response once the request completes
3599// successfuly. 4053// successfully.
3600// 4054//
3601// Use "Send" method on the returned Request to send the API call to the service. 4055// Use "Send" method on the returned Request to send the API call to the service.
3602// the "output" return value is not valid until after Send returns without error. 4056// the "output" return value is not valid until after Send returns without error.
@@ -3670,7 +4124,7 @@ const opListMultipartUploads = "ListMultipartUploads"
3670// ListMultipartUploadsRequest generates a "aws/request.Request" representing the 4124// ListMultipartUploadsRequest generates a "aws/request.Request" representing the
3671// client's request for the ListMultipartUploads operation. The "output" return 4125// client's request for the ListMultipartUploads operation. The "output" return
3672// value will be populated with the request's response once the request completes 4126// value will be populated with the request's response once the request completes
3673// successfuly. 4127// successfully.
3674// 4128//
3675// Use "Send" method on the returned Request to send the API call to the service. 4129// Use "Send" method on the returned Request to send the API call to the service.
3676// the "output" return value is not valid until after Send returns without error. 4130// the "output" return value is not valid until after Send returns without error.
@@ -3800,7 +4254,7 @@ const opListObjectVersions = "ListObjectVersions"
3800// ListObjectVersionsRequest generates a "aws/request.Request" representing the 4254// ListObjectVersionsRequest generates a "aws/request.Request" representing the
3801// client's request for the ListObjectVersions operation. The "output" return 4255// client's request for the ListObjectVersions operation. The "output" return
3802// value will be populated with the request's response once the request completes 4256// value will be populated with the request's response once the request completes
3803// successfuly. 4257// successfully.
3804// 4258//
3805// Use "Send" method on the returned Request to send the API call to the service. 4259// Use "Send" method on the returned Request to send the API call to the service.
3806// the "output" return value is not valid until after Send returns without error. 4260// the "output" return value is not valid until after Send returns without error.
@@ -3930,7 +4384,7 @@ const opListObjects = "ListObjects"
3930// ListObjectsRequest generates a "aws/request.Request" representing the 4384// ListObjectsRequest generates a "aws/request.Request" representing the
3931// client's request for the ListObjects operation. The "output" return 4385// client's request for the ListObjects operation. The "output" return
3932// value will be populated with the request's response once the request completes 4386// value will be populated with the request's response once the request completes
3933// successfuly. 4387// successfully.
3934// 4388//
3935// Use "Send" method on the returned Request to send the API call to the service. 4389// Use "Send" method on the returned Request to send the API call to the service.
3936// the "output" return value is not valid until after Send returns without error. 4390// the "output" return value is not valid until after Send returns without error.
@@ -4067,7 +4521,7 @@ const opListObjectsV2 = "ListObjectsV2"
4067// ListObjectsV2Request generates a "aws/request.Request" representing the 4521// ListObjectsV2Request generates a "aws/request.Request" representing the
4068// client's request for the ListObjectsV2 operation. The "output" return 4522// client's request for the ListObjectsV2 operation. The "output" return
4069// value will be populated with the request's response once the request completes 4523// value will be populated with the request's response once the request completes
4070// successfuly. 4524// successfully.
4071// 4525//
4072// Use "Send" method on the returned Request to send the API call to the service. 4526// Use "Send" method on the returned Request to send the API call to the service.
4073// the "output" return value is not valid until after Send returns without error. 4527// the "output" return value is not valid until after Send returns without error.
@@ -4205,7 +4659,7 @@ const opListParts = "ListParts"
4205// ListPartsRequest generates a "aws/request.Request" representing the 4659// ListPartsRequest generates a "aws/request.Request" representing the
4206// client's request for the ListParts operation. The "output" return 4660// client's request for the ListParts operation. The "output" return
4207// value will be populated with the request's response once the request completes 4661// value will be populated with the request's response once the request completes
4208// successfuly. 4662// successfully.
4209// 4663//
4210// Use "Send" method on the returned Request to send the API call to the service. 4664// Use "Send" method on the returned Request to send the API call to the service.
4211// the "output" return value is not valid until after Send returns without error. 4665// the "output" return value is not valid until after Send returns without error.
@@ -4335,7 +4789,7 @@ const opPutBucketAccelerateConfiguration = "PutBucketAccelerateConfiguration"
4335// PutBucketAccelerateConfigurationRequest generates a "aws/request.Request" representing the 4789// PutBucketAccelerateConfigurationRequest generates a "aws/request.Request" representing the
4336// client's request for the PutBucketAccelerateConfiguration operation. The "output" return 4790// client's request for the PutBucketAccelerateConfiguration operation. The "output" return
4337// value will be populated with the request's response once the request completes 4791// value will be populated with the request's response once the request completes
4338// successfuly. 4792// successfully.
4339// 4793//
4340// Use "Send" method on the returned Request to send the API call to the service. 4794// Use "Send" method on the returned Request to send the API call to the service.
4341// the "output" return value is not valid until after Send returns without error. 4795// the "output" return value is not valid until after Send returns without error.
@@ -4369,8 +4823,7 @@ func (c *S3) PutBucketAccelerateConfigurationRequest(input *PutBucketAccelerateC
4369 4823
4370 output = &PutBucketAccelerateConfigurationOutput{} 4824 output = &PutBucketAccelerateConfigurationOutput{}
4371 req = c.newRequest(op, input, output) 4825 req = c.newRequest(op, input, output)
4372 req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) 4826 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
4373 req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
4374 return 4827 return
4375} 4828}
4376 4829
@@ -4411,7 +4864,7 @@ const opPutBucketAcl = "PutBucketAcl"
4411// PutBucketAclRequest generates a "aws/request.Request" representing the 4864// PutBucketAclRequest generates a "aws/request.Request" representing the
4412// client's request for the PutBucketAcl operation. The "output" return 4865// client's request for the PutBucketAcl operation. The "output" return
4413// value will be populated with the request's response once the request completes 4866// value will be populated with the request's response once the request completes
4414// successfuly. 4867// successfully.
4415// 4868//
4416// Use "Send" method on the returned Request to send the API call to the service. 4869// Use "Send" method on the returned Request to send the API call to the service.
4417// the "output" return value is not valid until after Send returns without error. 4870// the "output" return value is not valid until after Send returns without error.
@@ -4445,8 +4898,7 @@ func (c *S3) PutBucketAclRequest(input *PutBucketAclInput) (req *request.Request
4445 4898
4446 output = &PutBucketAclOutput{} 4899 output = &PutBucketAclOutput{}
4447 req = c.newRequest(op, input, output) 4900 req = c.newRequest(op, input, output)
4448 req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) 4901 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
4449 req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
4450 return 4902 return
4451} 4903}
4452 4904
@@ -4487,7 +4939,7 @@ const opPutBucketAnalyticsConfiguration = "PutBucketAnalyticsConfiguration"
4487// PutBucketAnalyticsConfigurationRequest generates a "aws/request.Request" representing the 4939// PutBucketAnalyticsConfigurationRequest generates a "aws/request.Request" representing the
4488// client's request for the PutBucketAnalyticsConfiguration operation. The "output" return 4940// client's request for the PutBucketAnalyticsConfiguration operation. The "output" return
4489// value will be populated with the request's response once the request completes 4941// value will be populated with the request's response once the request completes
4490// successfuly. 4942// successfully.
4491// 4943//
4492// Use "Send" method on the returned Request to send the API call to the service. 4944// Use "Send" method on the returned Request to send the API call to the service.
4493// the "output" return value is not valid until after Send returns without error. 4945// the "output" return value is not valid until after Send returns without error.
@@ -4521,8 +4973,7 @@ func (c *S3) PutBucketAnalyticsConfigurationRequest(input *PutBucketAnalyticsCon
4521 4973
4522 output = &PutBucketAnalyticsConfigurationOutput{} 4974 output = &PutBucketAnalyticsConfigurationOutput{}
4523 req = c.newRequest(op, input, output) 4975 req = c.newRequest(op, input, output)
4524 req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) 4976 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
4525 req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
4526 return 4977 return
4527} 4978}
4528 4979
@@ -4564,7 +5015,7 @@ const opPutBucketCors = "PutBucketCors"
4564// PutBucketCorsRequest generates a "aws/request.Request" representing the 5015// PutBucketCorsRequest generates a "aws/request.Request" representing the
4565// client's request for the PutBucketCors operation. The "output" return 5016// client's request for the PutBucketCors operation. The "output" return
4566// value will be populated with the request's response once the request completes 5017// value will be populated with the request's response once the request completes
4567// successfuly. 5018// successfully.
4568// 5019//
4569// Use "Send" method on the returned Request to send the API call to the service. 5020// Use "Send" method on the returned Request to send the API call to the service.
4570// the "output" return value is not valid until after Send returns without error. 5021// the "output" return value is not valid until after Send returns without error.
@@ -4598,14 +5049,13 @@ func (c *S3) PutBucketCorsRequest(input *PutBucketCorsInput) (req *request.Reque
4598 5049
4599 output = &PutBucketCorsOutput{} 5050 output = &PutBucketCorsOutput{}
4600 req = c.newRequest(op, input, output) 5051 req = c.newRequest(op, input, output)
4601 req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) 5052 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
4602 req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
4603 return 5053 return
4604} 5054}
4605 5055
4606// PutBucketCors API operation for Amazon Simple Storage Service. 5056// PutBucketCors API operation for Amazon Simple Storage Service.
4607// 5057//
4608// Sets the cors configuration for a bucket. 5058// Sets the CORS configuration for a bucket.
4609// 5059//
4610// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 5060// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4611// with awserr.Error's Code and Message methods to get detailed information about 5061// with awserr.Error's Code and Message methods to get detailed information about
@@ -4640,7 +5090,7 @@ const opPutBucketEncryption = "PutBucketEncryption"
4640// PutBucketEncryptionRequest generates a "aws/request.Request" representing the 5090// PutBucketEncryptionRequest generates a "aws/request.Request" representing the
4641// client's request for the PutBucketEncryption operation. The "output" return 5091// client's request for the PutBucketEncryption operation. The "output" return
4642// value will be populated with the request's response once the request completes 5092// value will be populated with the request's response once the request completes
4643// successfuly. 5093// successfully.
4644// 5094//
4645// Use "Send" method on the returned Request to send the API call to the service. 5095// Use "Send" method on the returned Request to send the API call to the service.
4646// the "output" return value is not valid until after Send returns without error. 5096// the "output" return value is not valid until after Send returns without error.
@@ -4674,8 +5124,7 @@ func (c *S3) PutBucketEncryptionRequest(input *PutBucketEncryptionInput) (req *r
4674 5124
4675 output = &PutBucketEncryptionOutput{} 5125 output = &PutBucketEncryptionOutput{}
4676 req = c.newRequest(op, input, output) 5126 req = c.newRequest(op, input, output)
4677 req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) 5127 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
4678 req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
4679 return 5128 return
4680} 5129}
4681 5130
@@ -4717,7 +5166,7 @@ const opPutBucketInventoryConfiguration = "PutBucketInventoryConfiguration"
4717// PutBucketInventoryConfigurationRequest generates a "aws/request.Request" representing the 5166// PutBucketInventoryConfigurationRequest generates a "aws/request.Request" representing the
4718// client's request for the PutBucketInventoryConfiguration operation. The "output" return 5167// client's request for the PutBucketInventoryConfiguration operation. The "output" return
4719// value will be populated with the request's response once the request completes 5168// value will be populated with the request's response once the request completes
4720// successfuly. 5169// successfully.
4721// 5170//
4722// Use "Send" method on the returned Request to send the API call to the service. 5171// Use "Send" method on the returned Request to send the API call to the service.
4723// the "output" return value is not valid until after Send returns without error. 5172// the "output" return value is not valid until after Send returns without error.
@@ -4751,8 +5200,7 @@ func (c *S3) PutBucketInventoryConfigurationRequest(input *PutBucketInventoryCon
4751 5200
4752 output = &PutBucketInventoryConfigurationOutput{} 5201 output = &PutBucketInventoryConfigurationOutput{}
4753 req = c.newRequest(op, input, output) 5202 req = c.newRequest(op, input, output)
4754 req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) 5203 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
4755 req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
4756 return 5204 return
4757} 5205}
4758 5206
@@ -4794,7 +5242,7 @@ const opPutBucketLifecycle = "PutBucketLifecycle"
4794// PutBucketLifecycleRequest generates a "aws/request.Request" representing the 5242// PutBucketLifecycleRequest generates a "aws/request.Request" representing the
4795// client's request for the PutBucketLifecycle operation. The "output" return 5243// client's request for the PutBucketLifecycle operation. The "output" return
4796// value will be populated with the request's response once the request completes 5244// value will be populated with the request's response once the request completes
4797// successfuly. 5245// successfully.
4798// 5246//
4799// Use "Send" method on the returned Request to send the API call to the service. 5247// Use "Send" method on the returned Request to send the API call to the service.
4800// the "output" return value is not valid until after Send returns without error. 5248// the "output" return value is not valid until after Send returns without error.
@@ -4815,6 +5263,8 @@ const opPutBucketLifecycle = "PutBucketLifecycle"
4815// } 5263// }
4816// 5264//
4817// See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketLifecycle 5265// See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketLifecycle
5266//
5267// Deprecated: PutBucketLifecycle has been deprecated
4818func (c *S3) PutBucketLifecycleRequest(input *PutBucketLifecycleInput) (req *request.Request, output *PutBucketLifecycleOutput) { 5268func (c *S3) PutBucketLifecycleRequest(input *PutBucketLifecycleInput) (req *request.Request, output *PutBucketLifecycleOutput) {
4819 if c.Client.Config.Logger != nil { 5269 if c.Client.Config.Logger != nil {
4820 c.Client.Config.Logger.Log("This operation, PutBucketLifecycle, has been deprecated") 5270 c.Client.Config.Logger.Log("This operation, PutBucketLifecycle, has been deprecated")
@@ -4831,14 +5281,13 @@ func (c *S3) PutBucketLifecycleRequest(input *PutBucketLifecycleInput) (req *req
4831 5281
4832 output = &PutBucketLifecycleOutput{} 5282 output = &PutBucketLifecycleOutput{}
4833 req = c.newRequest(op, input, output) 5283 req = c.newRequest(op, input, output)
4834 req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) 5284 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
4835 req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
4836 return 5285 return
4837} 5286}
4838 5287
4839// PutBucketLifecycle API operation for Amazon Simple Storage Service. 5288// PutBucketLifecycle API operation for Amazon Simple Storage Service.
4840// 5289//
4841// Deprecated, see the PutBucketLifecycleConfiguration operation. 5290// No longer used, see the PutBucketLifecycleConfiguration operation.
4842// 5291//
4843// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 5292// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4844// with awserr.Error's Code and Message methods to get detailed information about 5293// with awserr.Error's Code and Message methods to get detailed information about
@@ -4847,6 +5296,8 @@ func (c *S3) PutBucketLifecycleRequest(input *PutBucketLifecycleInput) (req *req
4847// See the AWS API reference guide for Amazon Simple Storage Service's 5296// See the AWS API reference guide for Amazon Simple Storage Service's
4848// API operation PutBucketLifecycle for usage and error information. 5297// API operation PutBucketLifecycle for usage and error information.
4849// See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketLifecycle 5298// See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketLifecycle
5299//
5300// Deprecated: PutBucketLifecycle has been deprecated
4850func (c *S3) PutBucketLifecycle(input *PutBucketLifecycleInput) (*PutBucketLifecycleOutput, error) { 5301func (c *S3) PutBucketLifecycle(input *PutBucketLifecycleInput) (*PutBucketLifecycleOutput, error) {
4851 req, out := c.PutBucketLifecycleRequest(input) 5302 req, out := c.PutBucketLifecycleRequest(input)
4852 return out, req.Send() 5303 return out, req.Send()
@@ -4861,6 +5312,8 @@ func (c *S3) PutBucketLifecycle(input *PutBucketLifecycleInput) (*PutBucketLifec
4861// the context is nil a panic will occur. In the future the SDK may create 5312// the context is nil a panic will occur. In the future the SDK may create
4862// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 5313// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4863// for more information on using Contexts. 5314// for more information on using Contexts.
5315//
5316// Deprecated: PutBucketLifecycleWithContext has been deprecated
4864func (c *S3) PutBucketLifecycleWithContext(ctx aws.Context, input *PutBucketLifecycleInput, opts ...request.Option) (*PutBucketLifecycleOutput, error) { 5317func (c *S3) PutBucketLifecycleWithContext(ctx aws.Context, input *PutBucketLifecycleInput, opts ...request.Option) (*PutBucketLifecycleOutput, error) {
4865 req, out := c.PutBucketLifecycleRequest(input) 5318 req, out := c.PutBucketLifecycleRequest(input)
4866 req.SetContext(ctx) 5319 req.SetContext(ctx)
@@ -4873,7 +5326,7 @@ const opPutBucketLifecycleConfiguration = "PutBucketLifecycleConfiguration"
4873// PutBucketLifecycleConfigurationRequest generates a "aws/request.Request" representing the 5326// PutBucketLifecycleConfigurationRequest generates a "aws/request.Request" representing the
4874// client's request for the PutBucketLifecycleConfiguration operation. The "output" return 5327// client's request for the PutBucketLifecycleConfiguration operation. The "output" return
4875// value will be populated with the request's response once the request completes 5328// value will be populated with the request's response once the request completes
4876// successfuly. 5329// successfully.
4877// 5330//
4878// Use "Send" method on the returned Request to send the API call to the service. 5331// Use "Send" method on the returned Request to send the API call to the service.
4879// the "output" return value is not valid until after Send returns without error. 5332// the "output" return value is not valid until after Send returns without error.
@@ -4907,8 +5360,7 @@ func (c *S3) PutBucketLifecycleConfigurationRequest(input *PutBucketLifecycleCon
4907 5360
4908 output = &PutBucketLifecycleConfigurationOutput{} 5361 output = &PutBucketLifecycleConfigurationOutput{}
4909 req = c.newRequest(op, input, output) 5362 req = c.newRequest(op, input, output)
4910 req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) 5363 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
4911 req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
4912 return 5364 return
4913} 5365}
4914 5366
@@ -4950,7 +5402,7 @@ const opPutBucketLogging = "PutBucketLogging"
4950// PutBucketLoggingRequest generates a "aws/request.Request" representing the 5402// PutBucketLoggingRequest generates a "aws/request.Request" representing the
4951// client's request for the PutBucketLogging operation. The "output" return 5403// client's request for the PutBucketLogging operation. The "output" return
4952// value will be populated with the request's response once the request completes 5404// value will be populated with the request's response once the request completes
4953// successfuly. 5405// successfully.
4954// 5406//
4955// Use "Send" method on the returned Request to send the API call to the service. 5407// Use "Send" method on the returned Request to send the API call to the service.
4956// the "output" return value is not valid until after Send returns without error. 5408// the "output" return value is not valid until after Send returns without error.
@@ -4984,8 +5436,7 @@ func (c *S3) PutBucketLoggingRequest(input *PutBucketLoggingInput) (req *request
4984 5436
4985 output = &PutBucketLoggingOutput{} 5437 output = &PutBucketLoggingOutput{}
4986 req = c.newRequest(op, input, output) 5438 req = c.newRequest(op, input, output)
4987 req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) 5439 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
4988 req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
4989 return 5440 return
4990} 5441}
4991 5442
@@ -5028,7 +5479,7 @@ const opPutBucketMetricsConfiguration = "PutBucketMetricsConfiguration"
5028// PutBucketMetricsConfigurationRequest generates a "aws/request.Request" representing the 5479// PutBucketMetricsConfigurationRequest generates a "aws/request.Request" representing the
5029// client's request for the PutBucketMetricsConfiguration operation. The "output" return 5480// client's request for the PutBucketMetricsConfiguration operation. The "output" return
5030// value will be populated with the request's response once the request completes 5481// value will be populated with the request's response once the request completes
5031// successfuly. 5482// successfully.
5032// 5483//
5033// Use "Send" method on the returned Request to send the API call to the service. 5484// Use "Send" method on the returned Request to send the API call to the service.
5034// the "output" return value is not valid until after Send returns without error. 5485// the "output" return value is not valid until after Send returns without error.
@@ -5062,8 +5513,7 @@ func (c *S3) PutBucketMetricsConfigurationRequest(input *PutBucketMetricsConfigu
5062 5513
5063 output = &PutBucketMetricsConfigurationOutput{} 5514 output = &PutBucketMetricsConfigurationOutput{}
5064 req = c.newRequest(op, input, output) 5515 req = c.newRequest(op, input, output)
5065 req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) 5516 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
5066 req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
5067 return 5517 return
5068} 5518}
5069 5519
@@ -5105,7 +5555,7 @@ const opPutBucketNotification = "PutBucketNotification"
5105// PutBucketNotificationRequest generates a "aws/request.Request" representing the 5555// PutBucketNotificationRequest generates a "aws/request.Request" representing the
5106// client's request for the PutBucketNotification operation. The "output" return 5556// client's request for the PutBucketNotification operation. The "output" return
5107// value will be populated with the request's response once the request completes 5557// value will be populated with the request's response once the request completes
5108// successfuly. 5558// successfully.
5109// 5559//
5110// Use "Send" method on the returned Request to send the API call to the service. 5560// Use "Send" method on the returned Request to send the API call to the service.
5111// the "output" return value is not valid until after Send returns without error. 5561// the "output" return value is not valid until after Send returns without error.
@@ -5126,6 +5576,8 @@ const opPutBucketNotification = "PutBucketNotification"
5126// } 5576// }
5127// 5577//
5128// See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketNotification 5578// See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketNotification
5579//
5580// Deprecated: PutBucketNotification has been deprecated
5129func (c *S3) PutBucketNotificationRequest(input *PutBucketNotificationInput) (req *request.Request, output *PutBucketNotificationOutput) { 5581func (c *S3) PutBucketNotificationRequest(input *PutBucketNotificationInput) (req *request.Request, output *PutBucketNotificationOutput) {
5130 if c.Client.Config.Logger != nil { 5582 if c.Client.Config.Logger != nil {
5131 c.Client.Config.Logger.Log("This operation, PutBucketNotification, has been deprecated") 5583 c.Client.Config.Logger.Log("This operation, PutBucketNotification, has been deprecated")
@@ -5142,14 +5594,13 @@ func (c *S3) PutBucketNotificationRequest(input *PutBucketNotificationInput) (re
5142 5594
5143 output = &PutBucketNotificationOutput{} 5595 output = &PutBucketNotificationOutput{}
5144 req = c.newRequest(op, input, output) 5596 req = c.newRequest(op, input, output)
5145 req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) 5597 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
5146 req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
5147 return 5598 return
5148} 5599}
5149 5600
5150// PutBucketNotification API operation for Amazon Simple Storage Service. 5601// PutBucketNotification API operation for Amazon Simple Storage Service.
5151// 5602//
5152// Deprecated, see the PutBucketNotificationConfiguraiton operation. 5603// No longer used, see the PutBucketNotificationConfiguration operation.
5153// 5604//
5154// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 5605// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5155// with awserr.Error's Code and Message methods to get detailed information about 5606// with awserr.Error's Code and Message methods to get detailed information about
@@ -5158,6 +5609,8 @@ func (c *S3) PutBucketNotificationRequest(input *PutBucketNotificationInput) (re
5158// See the AWS API reference guide for Amazon Simple Storage Service's 5609// See the AWS API reference guide for Amazon Simple Storage Service's
5159// API operation PutBucketNotification for usage and error information. 5610// API operation PutBucketNotification for usage and error information.
5160// See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketNotification 5611// See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketNotification
5612//
5613// Deprecated: PutBucketNotification has been deprecated
5161func (c *S3) PutBucketNotification(input *PutBucketNotificationInput) (*PutBucketNotificationOutput, error) { 5614func (c *S3) PutBucketNotification(input *PutBucketNotificationInput) (*PutBucketNotificationOutput, error) {
5162 req, out := c.PutBucketNotificationRequest(input) 5615 req, out := c.PutBucketNotificationRequest(input)
5163 return out, req.Send() 5616 return out, req.Send()
@@ -5172,6 +5625,8 @@ func (c *S3) PutBucketNotification(input *PutBucketNotificationInput) (*PutBucke
5172// the context is nil a panic will occur. In the future the SDK may create 5625// the context is nil a panic will occur. In the future the SDK may create
5173// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 5626// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5174// for more information on using Contexts. 5627// for more information on using Contexts.
5628//
5629// Deprecated: PutBucketNotificationWithContext has been deprecated
5175func (c *S3) PutBucketNotificationWithContext(ctx aws.Context, input *PutBucketNotificationInput, opts ...request.Option) (*PutBucketNotificationOutput, error) { 5630func (c *S3) PutBucketNotificationWithContext(ctx aws.Context, input *PutBucketNotificationInput, opts ...request.Option) (*PutBucketNotificationOutput, error) {
5176 req, out := c.PutBucketNotificationRequest(input) 5631 req, out := c.PutBucketNotificationRequest(input)
5177 req.SetContext(ctx) 5632 req.SetContext(ctx)
@@ -5184,7 +5639,7 @@ const opPutBucketNotificationConfiguration = "PutBucketNotificationConfiguration
5184// PutBucketNotificationConfigurationRequest generates a "aws/request.Request" representing the 5639// PutBucketNotificationConfigurationRequest generates a "aws/request.Request" representing the
5185// client's request for the PutBucketNotificationConfiguration operation. The "output" return 5640// client's request for the PutBucketNotificationConfiguration operation. The "output" return
5186// value will be populated with the request's response once the request completes 5641// value will be populated with the request's response once the request completes
5187// successfuly. 5642// successfully.
5188// 5643//
5189// Use "Send" method on the returned Request to send the API call to the service. 5644// Use "Send" method on the returned Request to send the API call to the service.
5190// the "output" return value is not valid until after Send returns without error. 5645// the "output" return value is not valid until after Send returns without error.
@@ -5218,8 +5673,7 @@ func (c *S3) PutBucketNotificationConfigurationRequest(input *PutBucketNotificat
5218 5673
5219 output = &PutBucketNotificationConfigurationOutput{} 5674 output = &PutBucketNotificationConfigurationOutput{}
5220 req = c.newRequest(op, input, output) 5675 req = c.newRequest(op, input, output)
5221 req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) 5676 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
5222 req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
5223 return 5677 return
5224} 5678}
5225 5679
@@ -5260,7 +5714,7 @@ const opPutBucketPolicy = "PutBucketPolicy"
5260// PutBucketPolicyRequest generates a "aws/request.Request" representing the 5714// PutBucketPolicyRequest generates a "aws/request.Request" representing the
5261// client's request for the PutBucketPolicy operation. The "output" return 5715// client's request for the PutBucketPolicy operation. The "output" return
5262// value will be populated with the request's response once the request completes 5716// value will be populated with the request's response once the request completes
5263// successfuly. 5717// successfully.
5264// 5718//
5265// Use "Send" method on the returned Request to send the API call to the service. 5719// Use "Send" method on the returned Request to send the API call to the service.
5266// the "output" return value is not valid until after Send returns without error. 5720// the "output" return value is not valid until after Send returns without error.
@@ -5294,8 +5748,7 @@ func (c *S3) PutBucketPolicyRequest(input *PutBucketPolicyInput) (req *request.R
5294 5748
5295 output = &PutBucketPolicyOutput{} 5749 output = &PutBucketPolicyOutput{}
5296 req = c.newRequest(op, input, output) 5750 req = c.newRequest(op, input, output)
5297 req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) 5751 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
5298 req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
5299 return 5752 return
5300} 5753}
5301 5754
@@ -5337,7 +5790,7 @@ const opPutBucketReplication = "PutBucketReplication"
5337// PutBucketReplicationRequest generates a "aws/request.Request" representing the 5790// PutBucketReplicationRequest generates a "aws/request.Request" representing the
5338// client's request for the PutBucketReplication operation. The "output" return 5791// client's request for the PutBucketReplication operation. The "output" return
5339// value will be populated with the request's response once the request completes 5792// value will be populated with the request's response once the request completes
5340// successfuly. 5793// successfully.
5341// 5794//
5342// Use "Send" method on the returned Request to send the API call to the service. 5795// Use "Send" method on the returned Request to send the API call to the service.
5343// the "output" return value is not valid until after Send returns without error. 5796// the "output" return value is not valid until after Send returns without error.
@@ -5371,15 +5824,15 @@ func (c *S3) PutBucketReplicationRequest(input *PutBucketReplicationInput) (req
5371 5824
5372 output = &PutBucketReplicationOutput{} 5825 output = &PutBucketReplicationOutput{}
5373 req = c.newRequest(op, input, output) 5826 req = c.newRequest(op, input, output)
5374 req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) 5827 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
5375 req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
5376 return 5828 return
5377} 5829}
5378 5830
5379// PutBucketReplication API operation for Amazon Simple Storage Service. 5831// PutBucketReplication API operation for Amazon Simple Storage Service.
5380// 5832//
5381// Creates a new replication configuration (or replaces an existing one, if 5833// Creates a replication configuration or replaces an existing one. For more
5382// present). 5834// information, see Cross-Region Replication (CRR) ( https://docs.aws.amazon.com/AmazonS3/latest/dev/crr.html)
5835// in the Amazon S3 Developer Guide.
5383// 5836//
5384// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 5837// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5385// with awserr.Error's Code and Message methods to get detailed information about 5838// with awserr.Error's Code and Message methods to get detailed information about
@@ -5414,7 +5867,7 @@ const opPutBucketRequestPayment = "PutBucketRequestPayment"
5414// PutBucketRequestPaymentRequest generates a "aws/request.Request" representing the 5867// PutBucketRequestPaymentRequest generates a "aws/request.Request" representing the
5415// client's request for the PutBucketRequestPayment operation. The "output" return 5868// client's request for the PutBucketRequestPayment operation. The "output" return
5416// value will be populated with the request's response once the request completes 5869// value will be populated with the request's response once the request completes
5417// successfuly. 5870// successfully.
5418// 5871//
5419// Use "Send" method on the returned Request to send the API call to the service. 5872// Use "Send" method on the returned Request to send the API call to the service.
5420// the "output" return value is not valid until after Send returns without error. 5873// the "output" return value is not valid until after Send returns without error.
@@ -5448,8 +5901,7 @@ func (c *S3) PutBucketRequestPaymentRequest(input *PutBucketRequestPaymentInput)
5448 5901
5449 output = &PutBucketRequestPaymentOutput{} 5902 output = &PutBucketRequestPaymentOutput{}
5450 req = c.newRequest(op, input, output) 5903 req = c.newRequest(op, input, output)
5451 req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) 5904 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
5452 req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
5453 return 5905 return
5454} 5906}
5455 5907
@@ -5494,7 +5946,7 @@ const opPutBucketTagging = "PutBucketTagging"
5494// PutBucketTaggingRequest generates a "aws/request.Request" representing the 5946// PutBucketTaggingRequest generates a "aws/request.Request" representing the
5495// client's request for the PutBucketTagging operation. The "output" return 5947// client's request for the PutBucketTagging operation. The "output" return
5496// value will be populated with the request's response once the request completes 5948// value will be populated with the request's response once the request completes
5497// successfuly. 5949// successfully.
5498// 5950//
5499// Use "Send" method on the returned Request to send the API call to the service. 5951// Use "Send" method on the returned Request to send the API call to the service.
5500// the "output" return value is not valid until after Send returns without error. 5952// the "output" return value is not valid until after Send returns without error.
@@ -5528,8 +5980,7 @@ func (c *S3) PutBucketTaggingRequest(input *PutBucketTaggingInput) (req *request
5528 5980
5529 output = &PutBucketTaggingOutput{} 5981 output = &PutBucketTaggingOutput{}
5530 req = c.newRequest(op, input, output) 5982 req = c.newRequest(op, input, output)
5531 req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) 5983 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
5532 req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
5533 return 5984 return
5534} 5985}
5535 5986
@@ -5570,7 +6021,7 @@ const opPutBucketVersioning = "PutBucketVersioning"
5570// PutBucketVersioningRequest generates a "aws/request.Request" representing the 6021// PutBucketVersioningRequest generates a "aws/request.Request" representing the
5571// client's request for the PutBucketVersioning operation. The "output" return 6022// client's request for the PutBucketVersioning operation. The "output" return
5572// value will be populated with the request's response once the request completes 6023// value will be populated with the request's response once the request completes
5573// successfuly. 6024// successfully.
5574// 6025//
5575// Use "Send" method on the returned Request to send the API call to the service. 6026// Use "Send" method on the returned Request to send the API call to the service.
5576// the "output" return value is not valid until after Send returns without error. 6027// the "output" return value is not valid until after Send returns without error.
@@ -5604,8 +6055,7 @@ func (c *S3) PutBucketVersioningRequest(input *PutBucketVersioningInput) (req *r
5604 6055
5605 output = &PutBucketVersioningOutput{} 6056 output = &PutBucketVersioningOutput{}
5606 req = c.newRequest(op, input, output) 6057 req = c.newRequest(op, input, output)
5607 req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) 6058 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
5608 req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
5609 return 6059 return
5610} 6060}
5611 6061
@@ -5647,7 +6097,7 @@ const opPutBucketWebsite = "PutBucketWebsite"
5647// PutBucketWebsiteRequest generates a "aws/request.Request" representing the 6097// PutBucketWebsiteRequest generates a "aws/request.Request" representing the
5648// client's request for the PutBucketWebsite operation. The "output" return 6098// client's request for the PutBucketWebsite operation. The "output" return
5649// value will be populated with the request's response once the request completes 6099// value will be populated with the request's response once the request completes
5650// successfuly. 6100// successfully.
5651// 6101//
5652// Use "Send" method on the returned Request to send the API call to the service. 6102// Use "Send" method on the returned Request to send the API call to the service.
5653// the "output" return value is not valid until after Send returns without error. 6103// the "output" return value is not valid until after Send returns without error.
@@ -5681,8 +6131,7 @@ func (c *S3) PutBucketWebsiteRequest(input *PutBucketWebsiteInput) (req *request
5681 6131
5682 output = &PutBucketWebsiteOutput{} 6132 output = &PutBucketWebsiteOutput{}
5683 req = c.newRequest(op, input, output) 6133 req = c.newRequest(op, input, output)
5684 req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) 6134 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
5685 req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
5686 return 6135 return
5687} 6136}
5688 6137
@@ -5723,7 +6172,7 @@ const opPutObject = "PutObject"
5723// PutObjectRequest generates a "aws/request.Request" representing the 6172// PutObjectRequest generates a "aws/request.Request" representing the
5724// client's request for the PutObject operation. The "output" return 6173// client's request for the PutObject operation. The "output" return
5725// value will be populated with the request's response once the request completes 6174// value will be populated with the request's response once the request completes
5726// successfuly. 6175// successfully.
5727// 6176//
5728// Use "Send" method on the returned Request to send the API call to the service. 6177// Use "Send" method on the returned Request to send the API call to the service.
5729// the "output" return value is not valid until after Send returns without error. 6178// the "output" return value is not valid until after Send returns without error.
@@ -5797,7 +6246,7 @@ const opPutObjectAcl = "PutObjectAcl"
5797// PutObjectAclRequest generates a "aws/request.Request" representing the 6246// PutObjectAclRequest generates a "aws/request.Request" representing the
5798// client's request for the PutObjectAcl operation. The "output" return 6247// client's request for the PutObjectAcl operation. The "output" return
5799// value will be populated with the request's response once the request completes 6248// value will be populated with the request's response once the request completes
5800// successfuly. 6249// successfully.
5801// 6250//
5802// Use "Send" method on the returned Request to send the API call to the service. 6251// Use "Send" method on the returned Request to send the API call to the service.
5803// the "output" return value is not valid until after Send returns without error. 6252// the "output" return value is not valid until after Send returns without error.
@@ -5872,12 +6321,236 @@ func (c *S3) PutObjectAclWithContext(ctx aws.Context, input *PutObjectAclInput,
5872 return out, req.Send() 6321 return out, req.Send()
5873} 6322}
5874 6323
6324const opPutObjectLegalHold = "PutObjectLegalHold"
6325
6326// PutObjectLegalHoldRequest generates a "aws/request.Request" representing the
6327// client's request for the PutObjectLegalHold operation. The "output" return
6328// value will be populated with the request's response once the request completes
6329// successfully.
6330//
6331// Use "Send" method on the returned Request to send the API call to the service.
6332// the "output" return value is not valid until after Send returns without error.
6333//
6334// See PutObjectLegalHold for more information on using the PutObjectLegalHold
6335// API call, and error handling.
6336//
6337// This method is useful when you want to inject custom logic or configuration
6338// into the SDK's request lifecycle. Such as custom headers, or retry logic.
6339//
6340//
6341// // Example sending a request using the PutObjectLegalHoldRequest method.
6342// req, resp := client.PutObjectLegalHoldRequest(params)
6343//
6344// err := req.Send()
6345// if err == nil { // resp is now filled
6346// fmt.Println(resp)
6347// }
6348//
6349// See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutObjectLegalHold
6350func (c *S3) PutObjectLegalHoldRequest(input *PutObjectLegalHoldInput) (req *request.Request, output *PutObjectLegalHoldOutput) {
6351 op := &request.Operation{
6352 Name: opPutObjectLegalHold,
6353 HTTPMethod: "PUT",
6354 HTTPPath: "/{Bucket}/{Key+}?legal-hold",
6355 }
6356
6357 if input == nil {
6358 input = &PutObjectLegalHoldInput{}
6359 }
6360
6361 output = &PutObjectLegalHoldOutput{}
6362 req = c.newRequest(op, input, output)
6363 return
6364}
6365
6366// PutObjectLegalHold API operation for Amazon Simple Storage Service.
6367//
6368// Applies a Legal Hold configuration to the specified object.
6369//
6370// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6371// with awserr.Error's Code and Message methods to get detailed information about
6372// the error.
6373//
6374// See the AWS API reference guide for Amazon Simple Storage Service's
6375// API operation PutObjectLegalHold for usage and error information.
6376// See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutObjectLegalHold
6377func (c *S3) PutObjectLegalHold(input *PutObjectLegalHoldInput) (*PutObjectLegalHoldOutput, error) {
6378 req, out := c.PutObjectLegalHoldRequest(input)
6379 return out, req.Send()
6380}
6381
6382// PutObjectLegalHoldWithContext is the same as PutObjectLegalHold with the addition of
6383// the ability to pass a context and additional request options.
6384//
6385// See PutObjectLegalHold for details on how to use this API operation.
6386//
6387// The context must be non-nil and will be used for request cancellation. If
6388// the context is nil a panic will occur. In the future the SDK may create
6389// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6390// for more information on using Contexts.
6391func (c *S3) PutObjectLegalHoldWithContext(ctx aws.Context, input *PutObjectLegalHoldInput, opts ...request.Option) (*PutObjectLegalHoldOutput, error) {
6392 req, out := c.PutObjectLegalHoldRequest(input)
6393 req.SetContext(ctx)
6394 req.ApplyOptions(opts...)
6395 return out, req.Send()
6396}
6397
6398const opPutObjectLockConfiguration = "PutObjectLockConfiguration"
6399
6400// PutObjectLockConfigurationRequest generates a "aws/request.Request" representing the
6401// client's request for the PutObjectLockConfiguration operation. The "output" return
6402// value will be populated with the request's response once the request completes
6403// successfully.
6404//
6405// Use "Send" method on the returned Request to send the API call to the service.
6406// the "output" return value is not valid until after Send returns without error.
6407//
6408// See PutObjectLockConfiguration for more information on using the PutObjectLockConfiguration
6409// API call, and error handling.
6410//
6411// This method is useful when you want to inject custom logic or configuration
6412// into the SDK's request lifecycle. Such as custom headers, or retry logic.
6413//
6414//
6415// // Example sending a request using the PutObjectLockConfigurationRequest method.
6416// req, resp := client.PutObjectLockConfigurationRequest(params)
6417//
6418// err := req.Send()
6419// if err == nil { // resp is now filled
6420// fmt.Println(resp)
6421// }
6422//
6423// See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutObjectLockConfiguration
6424func (c *S3) PutObjectLockConfigurationRequest(input *PutObjectLockConfigurationInput) (req *request.Request, output *PutObjectLockConfigurationOutput) {
6425 op := &request.Operation{
6426 Name: opPutObjectLockConfiguration,
6427 HTTPMethod: "PUT",
6428 HTTPPath: "/{Bucket}?object-lock",
6429 }
6430
6431 if input == nil {
6432 input = &PutObjectLockConfigurationInput{}
6433 }
6434
6435 output = &PutObjectLockConfigurationOutput{}
6436 req = c.newRequest(op, input, output)
6437 return
6438}
6439
6440// PutObjectLockConfiguration API operation for Amazon Simple Storage Service.
6441//
6442// Places an Object Lock configuration on the specified bucket. The rule specified
6443// in the Object Lock configuration will be applied by default to every new
6444// object placed in the specified bucket.
6445//
6446// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6447// with awserr.Error's Code and Message methods to get detailed information about
6448// the error.
6449//
6450// See the AWS API reference guide for Amazon Simple Storage Service's
6451// API operation PutObjectLockConfiguration for usage and error information.
6452// See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutObjectLockConfiguration
6453func (c *S3) PutObjectLockConfiguration(input *PutObjectLockConfigurationInput) (*PutObjectLockConfigurationOutput, error) {
6454 req, out := c.PutObjectLockConfigurationRequest(input)
6455 return out, req.Send()
6456}
6457
6458// PutObjectLockConfigurationWithContext is the same as PutObjectLockConfiguration with the addition of
6459// the ability to pass a context and additional request options.
6460//
6461// See PutObjectLockConfiguration for details on how to use this API operation.
6462//
6463// The context must be non-nil and will be used for request cancellation. If
6464// the context is nil a panic will occur. In the future the SDK may create
6465// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6466// for more information on using Contexts.
6467func (c *S3) PutObjectLockConfigurationWithContext(ctx aws.Context, input *PutObjectLockConfigurationInput, opts ...request.Option) (*PutObjectLockConfigurationOutput, error) {
6468 req, out := c.PutObjectLockConfigurationRequest(input)
6469 req.SetContext(ctx)
6470 req.ApplyOptions(opts...)
6471 return out, req.Send()
6472}
6473
6474const opPutObjectRetention = "PutObjectRetention"
6475
6476// PutObjectRetentionRequest generates a "aws/request.Request" representing the
6477// client's request for the PutObjectRetention operation. The "output" return
6478// value will be populated with the request's response once the request completes
6479// successfully.
6480//
6481// Use "Send" method on the returned Request to send the API call to the service.
6482// the "output" return value is not valid until after Send returns without error.
6483//
6484// See PutObjectRetention for more information on using the PutObjectRetention
6485// API call, and error handling.
6486//
6487// This method is useful when you want to inject custom logic or configuration
6488// into the SDK's request lifecycle. Such as custom headers, or retry logic.
6489//
6490//
6491// // Example sending a request using the PutObjectRetentionRequest method.
6492// req, resp := client.PutObjectRetentionRequest(params)
6493//
6494// err := req.Send()
6495// if err == nil { // resp is now filled
6496// fmt.Println(resp)
6497// }
6498//
6499// See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutObjectRetention
6500func (c *S3) PutObjectRetentionRequest(input *PutObjectRetentionInput) (req *request.Request, output *PutObjectRetentionOutput) {
6501 op := &request.Operation{
6502 Name: opPutObjectRetention,
6503 HTTPMethod: "PUT",
6504 HTTPPath: "/{Bucket}/{Key+}?retention",
6505 }
6506
6507 if input == nil {
6508 input = &PutObjectRetentionInput{}
6509 }
6510
6511 output = &PutObjectRetentionOutput{}
6512 req = c.newRequest(op, input, output)
6513 return
6514}
6515
6516// PutObjectRetention API operation for Amazon Simple Storage Service.
6517//
6518// Places an Object Retention configuration on an object.
6519//
6520// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6521// with awserr.Error's Code and Message methods to get detailed information about
6522// the error.
6523//
6524// See the AWS API reference guide for Amazon Simple Storage Service's
6525// API operation PutObjectRetention for usage and error information.
6526// See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutObjectRetention
6527func (c *S3) PutObjectRetention(input *PutObjectRetentionInput) (*PutObjectRetentionOutput, error) {
6528 req, out := c.PutObjectRetentionRequest(input)
6529 return out, req.Send()
6530}
6531
6532// PutObjectRetentionWithContext is the same as PutObjectRetention with the addition of
6533// the ability to pass a context and additional request options.
6534//
6535// See PutObjectRetention for details on how to use this API operation.
6536//
6537// The context must be non-nil and will be used for request cancellation. If
6538// the context is nil a panic will occur. In the future the SDK may create
6539// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6540// for more information on using Contexts.
6541func (c *S3) PutObjectRetentionWithContext(ctx aws.Context, input *PutObjectRetentionInput, opts ...request.Option) (*PutObjectRetentionOutput, error) {
6542 req, out := c.PutObjectRetentionRequest(input)
6543 req.SetContext(ctx)
6544 req.ApplyOptions(opts...)
6545 return out, req.Send()
6546}
6547
5875const opPutObjectTagging = "PutObjectTagging" 6548const opPutObjectTagging = "PutObjectTagging"
5876 6549
5877// PutObjectTaggingRequest generates a "aws/request.Request" representing the 6550// PutObjectTaggingRequest generates a "aws/request.Request" representing the
5878// client's request for the PutObjectTagging operation. The "output" return 6551// client's request for the PutObjectTagging operation. The "output" return
5879// value will be populated with the request's response once the request completes 6552// value will be populated with the request's response once the request completes
5880// successfuly. 6553// successfully.
5881// 6554//
5882// Use "Send" method on the returned Request to send the API call to the service. 6555// Use "Send" method on the returned Request to send the API call to the service.
5883// the "output" return value is not valid until after Send returns without error. 6556// the "output" return value is not valid until after Send returns without error.
@@ -5946,12 +6619,88 @@ func (c *S3) PutObjectTaggingWithContext(ctx aws.Context, input *PutObjectTaggin
5946 return out, req.Send() 6619 return out, req.Send()
5947} 6620}
5948 6621
6622const opPutPublicAccessBlock = "PutPublicAccessBlock"
6623
6624// PutPublicAccessBlockRequest generates a "aws/request.Request" representing the
6625// client's request for the PutPublicAccessBlock operation. The "output" return
6626// value will be populated with the request's response once the request completes
6627// successfully.
6628//
6629// Use "Send" method on the returned Request to send the API call to the service.
6630// the "output" return value is not valid until after Send returns without error.
6631//
6632// See PutPublicAccessBlock for more information on using the PutPublicAccessBlock
6633// API call, and error handling.
6634//
6635// This method is useful when you want to inject custom logic or configuration
6636// into the SDK's request lifecycle. Such as custom headers, or retry logic.
6637//
6638//
6639// // Example sending a request using the PutPublicAccessBlockRequest method.
6640// req, resp := client.PutPublicAccessBlockRequest(params)
6641//
6642// err := req.Send()
6643// if err == nil { // resp is now filled
6644// fmt.Println(resp)
6645// }
6646//
6647// See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutPublicAccessBlock
6648func (c *S3) PutPublicAccessBlockRequest(input *PutPublicAccessBlockInput) (req *request.Request, output *PutPublicAccessBlockOutput) {
6649 op := &request.Operation{
6650 Name: opPutPublicAccessBlock,
6651 HTTPMethod: "PUT",
6652 HTTPPath: "/{Bucket}?publicAccessBlock",
6653 }
6654
6655 if input == nil {
6656 input = &PutPublicAccessBlockInput{}
6657 }
6658
6659 output = &PutPublicAccessBlockOutput{}
6660 req = c.newRequest(op, input, output)
6661 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
6662 return
6663}
6664
6665// PutPublicAccessBlock API operation for Amazon Simple Storage Service.
6666//
6667// Creates or modifies the PublicAccessBlock configuration for an Amazon S3
6668// bucket.
6669//
6670// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6671// with awserr.Error's Code and Message methods to get detailed information about
6672// the error.
6673//
6674// See the AWS API reference guide for Amazon Simple Storage Service's
6675// API operation PutPublicAccessBlock for usage and error information.
6676// See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutPublicAccessBlock
6677func (c *S3) PutPublicAccessBlock(input *PutPublicAccessBlockInput) (*PutPublicAccessBlockOutput, error) {
6678 req, out := c.PutPublicAccessBlockRequest(input)
6679 return out, req.Send()
6680}
6681
6682// PutPublicAccessBlockWithContext is the same as PutPublicAccessBlock with the addition of
6683// the ability to pass a context and additional request options.
6684//
6685// See PutPublicAccessBlock for details on how to use this API operation.
6686//
6687// The context must be non-nil and will be used for request cancellation. If
6688// the context is nil a panic will occur. In the future the SDK may create
6689// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6690// for more information on using Contexts.
6691func (c *S3) PutPublicAccessBlockWithContext(ctx aws.Context, input *PutPublicAccessBlockInput, opts ...request.Option) (*PutPublicAccessBlockOutput, error) {
6692 req, out := c.PutPublicAccessBlockRequest(input)
6693 req.SetContext(ctx)
6694 req.ApplyOptions(opts...)
6695 return out, req.Send()
6696}
6697
5949const opRestoreObject = "RestoreObject" 6698const opRestoreObject = "RestoreObject"
5950 6699
5951// RestoreObjectRequest generates a "aws/request.Request" representing the 6700// RestoreObjectRequest generates a "aws/request.Request" representing the
5952// client's request for the RestoreObject operation. The "output" return 6701// client's request for the RestoreObject operation. The "output" return
5953// value will be populated with the request's response once the request completes 6702// value will be populated with the request's response once the request completes
5954// successfuly. 6703// successfully.
5955// 6704//
5956// Use "Send" method on the returned Request to send the API call to the service. 6705// Use "Send" method on the returned Request to send the API call to the service.
5957// the "output" return value is not valid until after Send returns without error. 6706// the "output" return value is not valid until after Send returns without error.
@@ -6030,7 +6779,7 @@ const opSelectObjectContent = "SelectObjectContent"
6030// SelectObjectContentRequest generates a "aws/request.Request" representing the 6779// SelectObjectContentRequest generates a "aws/request.Request" representing the
6031// client's request for the SelectObjectContent operation. The "output" return 6780// client's request for the SelectObjectContent operation. The "output" return
6032// value will be populated with the request's response once the request completes 6781// value will be populated with the request's response once the request completes
6033// successfuly. 6782// successfully.
6034// 6783//
6035// Use "Send" method on the returned Request to send the API call to the service. 6784// Use "Send" method on the returned Request to send the API call to the service.
6036// the "output" return value is not valid until after Send returns without error. 6785// the "output" return value is not valid until after Send returns without error.
@@ -6112,7 +6861,7 @@ const opUploadPart = "UploadPart"
6112// UploadPartRequest generates a "aws/request.Request" representing the 6861// UploadPartRequest generates a "aws/request.Request" representing the
6113// client's request for the UploadPart operation. The "output" return 6862// client's request for the UploadPart operation. The "output" return
6114// value will be populated with the request's response once the request completes 6863// value will be populated with the request's response once the request completes
6115// successfuly. 6864// successfully.
6116// 6865//
6117// Use "Send" method on the returned Request to send the API call to the service. 6866// Use "Send" method on the returned Request to send the API call to the service.
6118// the "output" return value is not valid until after Send returns without error. 6867// the "output" return value is not valid until after Send returns without error.
@@ -6192,7 +6941,7 @@ const opUploadPartCopy = "UploadPartCopy"
6192// UploadPartCopyRequest generates a "aws/request.Request" representing the 6941// UploadPartCopyRequest generates a "aws/request.Request" representing the
6193// client's request for the UploadPartCopy operation. The "output" return 6942// client's request for the UploadPartCopy operation. The "output" return
6194// value will be populated with the request's response once the request completes 6943// value will be populated with the request's response once the request completes
6195// successfuly. 6944// successfully.
6196// 6945//
6197// Use "Send" method on the returned Request to send the API call to the service. 6946// Use "Send" method on the returned Request to send the API call to the service.
6198// the "output" return value is not valid until after Send returns without error. 6947// the "output" return value is not valid until after Send returns without error.
@@ -6322,6 +7071,9 @@ func (s *AbortMultipartUploadInput) Validate() error {
6322 if s.Bucket == nil { 7071 if s.Bucket == nil {
6323 invalidParams.Add(request.NewErrParamRequired("Bucket")) 7072 invalidParams.Add(request.NewErrParamRequired("Bucket"))
6324 } 7073 }
7074 if s.Bucket != nil && len(*s.Bucket) < 1 {
7075 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
7076 }
6325 if s.Key == nil { 7077 if s.Key == nil {
6326 invalidParams.Add(request.NewErrParamRequired("Key")) 7078 invalidParams.Add(request.NewErrParamRequired("Key"))
6327 } 7079 }
@@ -6467,7 +7219,7 @@ func (s *AccessControlPolicy) SetOwner(v *Owner) *AccessControlPolicy {
6467 return s 7219 return s
6468} 7220}
6469 7221
6470// Container for information regarding the access control for replicas. 7222// A container for information about access control for replicas.
6471type AccessControlTranslation struct { 7223type AccessControlTranslation struct {
6472 _ struct{} `type:"structure"` 7224 _ struct{} `type:"structure"`
6473 7225
@@ -7072,11 +7824,11 @@ type CSVInput struct {
7072 // to TRUE may lower performance. 7824 // to TRUE may lower performance.
7073 AllowQuotedRecordDelimiter *bool `type:"boolean"` 7825 AllowQuotedRecordDelimiter *bool `type:"boolean"`
7074 7826
7075 // Single character used to indicate a row should be ignored when present at 7827 // The single character used to indicate a row should be ignored when present
7076 // the start of a row. 7828 // at the start of a row.
7077 Comments *string `type:"string"` 7829 Comments *string `type:"string"`
7078 7830
7079 // Value used to separate individual fields in a record. 7831 // The value used to separate individual fields in a record.
7080 FieldDelimiter *string `type:"string"` 7832 FieldDelimiter *string `type:"string"`
7081 7833
7082 // Describes the first line of input. Valid values: None, Ignore, Use. 7834 // Describes the first line of input. Valid values: None, Ignore, Use.
@@ -7085,11 +7837,11 @@ type CSVInput struct {
7085 // Value used for escaping where the field delimiter is part of the value. 7837 // Value used for escaping where the field delimiter is part of the value.
7086 QuoteCharacter *string `type:"string"` 7838 QuoteCharacter *string `type:"string"`
7087 7839
7088 // Single character used for escaping the quote character inside an already 7840 // The single character used for escaping the quote character inside an already
7089 // escaped value. 7841 // escaped value.
7090 QuoteEscapeCharacter *string `type:"string"` 7842 QuoteEscapeCharacter *string `type:"string"`
7091 7843
7092 // Value used to separate individual records. 7844 // The value used to separate individual records.
7093 RecordDelimiter *string `type:"string"` 7845 RecordDelimiter *string `type:"string"`
7094} 7846}
7095 7847
@@ -7149,20 +7901,20 @@ func (s *CSVInput) SetRecordDelimiter(v string) *CSVInput {
7149type CSVOutput struct { 7901type CSVOutput struct {
7150 _ struct{} `type:"structure"` 7902 _ struct{} `type:"structure"`
7151 7903
7152 // Value used to separate individual fields in a record. 7904 // The value used to separate individual fields in a record.
7153 FieldDelimiter *string `type:"string"` 7905 FieldDelimiter *string `type:"string"`
7154 7906
7155 // Value used for escaping where the field delimiter is part of the value. 7907 // The value used for escaping where the field delimiter is part of the value.
7156 QuoteCharacter *string `type:"string"` 7908 QuoteCharacter *string `type:"string"`
7157 7909
7158 // Single character used for escaping the quote character inside an already 7910 // Th single character used for escaping the quote character inside an already
7159 // escaped value. 7911 // escaped value.
7160 QuoteEscapeCharacter *string `type:"string"` 7912 QuoteEscapeCharacter *string `type:"string"`
7161 7913
7162 // Indicates whether or not all output fields should be quoted. 7914 // Indicates whether or not all output fields should be quoted.
7163 QuoteFields *string `type:"string" enum:"QuoteFields"` 7915 QuoteFields *string `type:"string" enum:"QuoteFields"`
7164 7916
7165 // Value used to separate individual records. 7917 // The value used to separate individual records.
7166 RecordDelimiter *string `type:"string"` 7918 RecordDelimiter *string `type:"string"`
7167} 7919}
7168 7920
@@ -7211,12 +7963,14 @@ type CloudFunctionConfiguration struct {
7211 7963
7212 CloudFunction *string `type:"string"` 7964 CloudFunction *string `type:"string"`
7213 7965
7214 // Bucket event for which to send notifications. 7966 // The bucket event for which to send notifications.
7967 //
7968 // Deprecated: Event has been deprecated
7215 Event *string `deprecated:"true" type:"string" enum:"Event"` 7969 Event *string `deprecated:"true" type:"string" enum:"Event"`
7216 7970
7217 Events []*string `locationName:"Event" type:"list" flattened:"true"` 7971 Events []*string `locationName:"Event" type:"list" flattened:"true"`
7218 7972
7219 // Optional unique identifier for configurations in a notification configuration. 7973 // An optional unique identifier for configurations in a notification configuration.
7220 // If you don't provide one, Amazon S3 will assign an ID. 7974 // If you don't provide one, Amazon S3 will assign an ID.
7221 Id *string `type:"string"` 7975 Id *string `type:"string"`
7222 7976
@@ -7322,6 +8076,9 @@ func (s *CompleteMultipartUploadInput) Validate() error {
7322 if s.Bucket == nil { 8076 if s.Bucket == nil {
7323 invalidParams.Add(request.NewErrParamRequired("Bucket")) 8077 invalidParams.Add(request.NewErrParamRequired("Bucket"))
7324 } 8078 }
8079 if s.Bucket != nil && len(*s.Bucket) < 1 {
8080 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
8081 }
7325 if s.Key == nil { 8082 if s.Key == nil {
7326 invalidParams.Add(request.NewErrParamRequired("Key")) 8083 invalidParams.Add(request.NewErrParamRequired("Key"))
7327 } 8084 }
@@ -7397,7 +8154,7 @@ type CompleteMultipartUploadOutput struct {
7397 8154
7398 // If present, specifies the ID of the AWS Key Management Service (KMS) master 8155 // If present, specifies the ID of the AWS Key Management Service (KMS) master
7399 // encryption key that was used for the object. 8156 // encryption key that was used for the object.
7400 SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string"` 8157 SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string" sensitive:"true"`
7401 8158
7402 // The Server-side encryption algorithm used when storing this object in S3 8159 // The Server-side encryption algorithm used when storing this object in S3
7403 // (e.g., AES256, aws:kms). 8160 // (e.g., AES256, aws:kms).
@@ -7652,7 +8409,7 @@ type CopyObjectInput struct {
7652 // Specifies the customer-provided encryption key for Amazon S3 to use to decrypt 8409 // Specifies the customer-provided encryption key for Amazon S3 to use to decrypt
7653 // the source object. The encryption key provided in this header must be one 8410 // the source object. The encryption key provided in this header must be one
7654 // that was used when the source object was created. 8411 // that was used when the source object was created.
7655 CopySourceSSECustomerKey *string `location:"header" locationName:"x-amz-copy-source-server-side-encryption-customer-key" type:"string"` 8412 CopySourceSSECustomerKey *string `location:"header" locationName:"x-amz-copy-source-server-side-encryption-customer-key" type:"string" sensitive:"true"`
7656 8413
7657 // Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. 8414 // Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321.
7658 // Amazon S3 uses this header for a message integrity check to ensure the encryption 8415 // Amazon S3 uses this header for a message integrity check to ensure the encryption
@@ -7684,6 +8441,15 @@ type CopyObjectInput struct {
7684 // with metadata provided in the request. 8441 // with metadata provided in the request.
7685 MetadataDirective *string `location:"header" locationName:"x-amz-metadata-directive" type:"string" enum:"MetadataDirective"` 8442 MetadataDirective *string `location:"header" locationName:"x-amz-metadata-directive" type:"string" enum:"MetadataDirective"`
7686 8443
8444 // Specifies whether you want to apply a Legal Hold to the copied object.
8445 ObjectLockLegalHoldStatus *string `location:"header" locationName:"x-amz-object-lock-legal-hold" type:"string" enum:"ObjectLockLegalHoldStatus"`
8446
8447 // The Object Lock mode that you want to apply to the copied object.
8448 ObjectLockMode *string `location:"header" locationName:"x-amz-object-lock-mode" type:"string" enum:"ObjectLockMode"`
8449
8450 // The date and time when you want the copied object's Object Lock to expire.
8451 ObjectLockRetainUntilDate *time.Time `location:"header" locationName:"x-amz-object-lock-retain-until-date" type:"timestamp" timestampFormat:"iso8601"`
8452
7687 // Confirms that the requester knows that she or he will be charged for the 8453 // Confirms that the requester knows that she or he will be charged for the
7688 // request. Bucket owners need not specify this parameter in their requests. 8454 // request. Bucket owners need not specify this parameter in their requests.
7689 // Documentation on downloading objects from requester pays buckets can be found 8455 // Documentation on downloading objects from requester pays buckets can be found
@@ -7698,7 +8464,7 @@ type CopyObjectInput struct {
7698 // does not store the encryption key. The key must be appropriate for use with 8464 // does not store the encryption key. The key must be appropriate for use with
7699 // the algorithm specified in the x-amz-server-side​-encryption​-customer-algorithm 8465 // the algorithm specified in the x-amz-server-side​-encryption​-customer-algorithm
7700 // header. 8466 // header.
7701 SSECustomerKey *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key" type:"string"` 8467 SSECustomerKey *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key" type:"string" sensitive:"true"`
7702 8468
7703 // Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. 8469 // Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321.
7704 // Amazon S3 uses this header for a message integrity check to ensure the encryption 8470 // Amazon S3 uses this header for a message integrity check to ensure the encryption
@@ -7709,7 +8475,7 @@ type CopyObjectInput struct {
7709 // requests for an object protected by AWS KMS will fail if not made via SSL 8475 // requests for an object protected by AWS KMS will fail if not made via SSL
7710 // or using SigV4. Documentation on configuring any of the officially supported 8476 // or using SigV4. Documentation on configuring any of the officially supported
7711 // AWS SDKs and CLI can be found at http://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version 8477 // AWS SDKs and CLI can be found at http://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version
7712 SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string"` 8478 SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string" sensitive:"true"`
7713 8479
7714 // The Server-side encryption algorithm used when storing this object in S3 8480 // The Server-side encryption algorithm used when storing this object in S3
7715 // (e.g., AES256, aws:kms). 8481 // (e.g., AES256, aws:kms).
@@ -7749,6 +8515,9 @@ func (s *CopyObjectInput) Validate() error {
7749 if s.Bucket == nil { 8515 if s.Bucket == nil {
7750 invalidParams.Add(request.NewErrParamRequired("Bucket")) 8516 invalidParams.Add(request.NewErrParamRequired("Bucket"))
7751 } 8517 }
8518 if s.Bucket != nil && len(*s.Bucket) < 1 {
8519 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
8520 }
7752 if s.CopySource == nil { 8521 if s.CopySource == nil {
7753 invalidParams.Add(request.NewErrParamRequired("CopySource")) 8522 invalidParams.Add(request.NewErrParamRequired("CopySource"))
7754 } 8523 }
@@ -7917,6 +8686,24 @@ func (s *CopyObjectInput) SetMetadataDirective(v string) *CopyObjectInput {
7917 return s 8686 return s
7918} 8687}
7919 8688
8689// SetObjectLockLegalHoldStatus sets the ObjectLockLegalHoldStatus field's value.
8690func (s *CopyObjectInput) SetObjectLockLegalHoldStatus(v string) *CopyObjectInput {
8691 s.ObjectLockLegalHoldStatus = &v
8692 return s
8693}
8694
8695// SetObjectLockMode sets the ObjectLockMode field's value.
8696func (s *CopyObjectInput) SetObjectLockMode(v string) *CopyObjectInput {
8697 s.ObjectLockMode = &v
8698 return s
8699}
8700
8701// SetObjectLockRetainUntilDate sets the ObjectLockRetainUntilDate field's value.
8702func (s *CopyObjectInput) SetObjectLockRetainUntilDate(v time.Time) *CopyObjectInput {
8703 s.ObjectLockRetainUntilDate = &v
8704 return s
8705}
8706
7920// SetRequestPayer sets the RequestPayer field's value. 8707// SetRequestPayer sets the RequestPayer field's value.
7921func (s *CopyObjectInput) SetRequestPayer(v string) *CopyObjectInput { 8708func (s *CopyObjectInput) SetRequestPayer(v string) *CopyObjectInput {
7922 s.RequestPayer = &v 8709 s.RequestPayer = &v
@@ -8010,7 +8797,7 @@ type CopyObjectOutput struct {
8010 8797
8011 // If present, specifies the ID of the AWS Key Management Service (KMS) master 8798 // If present, specifies the ID of the AWS Key Management Service (KMS) master
8012 // encryption key that was used for the object. 8799 // encryption key that was used for the object.
8013 SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string"` 8800 SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string" sensitive:"true"`
8014 8801
8015 // The Server-side encryption algorithm used when storing this object in S3 8802 // The Server-side encryption algorithm used when storing this object in S3
8016 // (e.g., AES256, aws:kms). 8803 // (e.g., AES256, aws:kms).
@@ -8150,7 +8937,7 @@ type CreateBucketConfiguration struct {
8150 _ struct{} `type:"structure"` 8937 _ struct{} `type:"structure"`
8151 8938
8152 // Specifies the region where the bucket will be created. If you don't specify 8939 // Specifies the region where the bucket will be created. If you don't specify
8153 // a region, the bucket will be created in US Standard. 8940 // a region, the bucket is created in US East (N. Virginia) Region (us-east-1).
8154 LocationConstraint *string `type:"string" enum:"BucketLocationConstraint"` 8941 LocationConstraint *string `type:"string" enum:"BucketLocationConstraint"`
8155} 8942}
8156 8943
@@ -8196,6 +8983,9 @@ type CreateBucketInput struct {
8196 8983
8197 // Allows grantee to write the ACL for the applicable bucket. 8984 // Allows grantee to write the ACL for the applicable bucket.
8198 GrantWriteACP *string `location:"header" locationName:"x-amz-grant-write-acp" type:"string"` 8985 GrantWriteACP *string `location:"header" locationName:"x-amz-grant-write-acp" type:"string"`
8986
8987 // Specifies whether you want S3 Object Lock to be enabled for the new bucket.
8988 ObjectLockEnabledForBucket *bool `location:"header" locationName:"x-amz-bucket-object-lock-enabled" type:"boolean"`
8199} 8989}
8200 8990
8201// String returns the string representation 8991// String returns the string representation
@@ -8214,6 +9004,9 @@ func (s *CreateBucketInput) Validate() error {
8214 if s.Bucket == nil { 9004 if s.Bucket == nil {
8215 invalidParams.Add(request.NewErrParamRequired("Bucket")) 9005 invalidParams.Add(request.NewErrParamRequired("Bucket"))
8216 } 9006 }
9007 if s.Bucket != nil && len(*s.Bucket) < 1 {
9008 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
9009 }
8217 9010
8218 if invalidParams.Len() > 0 { 9011 if invalidParams.Len() > 0 {
8219 return invalidParams 9012 return invalidParams
@@ -8276,6 +9069,12 @@ func (s *CreateBucketInput) SetGrantWriteACP(v string) *CreateBucketInput {
8276 return s 9069 return s
8277} 9070}
8278 9071
9072// SetObjectLockEnabledForBucket sets the ObjectLockEnabledForBucket field's value.
9073func (s *CreateBucketInput) SetObjectLockEnabledForBucket(v bool) *CreateBucketInput {
9074 s.ObjectLockEnabledForBucket = &v
9075 return s
9076}
9077
8279type CreateBucketOutput struct { 9078type CreateBucketOutput struct {
8280 _ struct{} `type:"structure"` 9079 _ struct{} `type:"structure"`
8281 9080
@@ -8345,6 +9144,15 @@ type CreateMultipartUploadInput struct {
8345 // A map of metadata to store with the object in S3. 9144 // A map of metadata to store with the object in S3.
8346 Metadata map[string]*string `location:"headers" locationName:"x-amz-meta-" type:"map"` 9145 Metadata map[string]*string `location:"headers" locationName:"x-amz-meta-" type:"map"`
8347 9146
9147 // Specifies whether you want to apply a Legal Hold to the uploaded object.
9148 ObjectLockLegalHoldStatus *string `location:"header" locationName:"x-amz-object-lock-legal-hold" type:"string" enum:"ObjectLockLegalHoldStatus"`
9149
9150 // Specifies the Object Lock mode that you want to apply to the uploaded object.
9151 ObjectLockMode *string `location:"header" locationName:"x-amz-object-lock-mode" type:"string" enum:"ObjectLockMode"`
9152
9153 // Specifies the date and time when you want the Object Lock to expire.
9154 ObjectLockRetainUntilDate *time.Time `location:"header" locationName:"x-amz-object-lock-retain-until-date" type:"timestamp" timestampFormat:"iso8601"`
9155
8348 // Confirms that the requester knows that she or he will be charged for the 9156 // Confirms that the requester knows that she or he will be charged for the
8349 // request. Bucket owners need not specify this parameter in their requests. 9157 // request. Bucket owners need not specify this parameter in their requests.
8350 // Documentation on downloading objects from requester pays buckets can be found 9158 // Documentation on downloading objects from requester pays buckets can be found
@@ -8359,7 +9167,7 @@ type CreateMultipartUploadInput struct {
8359 // does not store the encryption key. The key must be appropriate for use with 9167 // does not store the encryption key. The key must be appropriate for use with
8360 // the algorithm specified in the x-amz-server-side​-encryption​-customer-algorithm 9168 // the algorithm specified in the x-amz-server-side​-encryption​-customer-algorithm
8361 // header. 9169 // header.
8362 SSECustomerKey *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key" type:"string"` 9170 SSECustomerKey *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key" type:"string" sensitive:"true"`
8363 9171
8364 // Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. 9172 // Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321.
8365 // Amazon S3 uses this header for a message integrity check to ensure the encryption 9173 // Amazon S3 uses this header for a message integrity check to ensure the encryption
@@ -8370,7 +9178,7 @@ type CreateMultipartUploadInput struct {
8370 // requests for an object protected by AWS KMS will fail if not made via SSL 9178 // requests for an object protected by AWS KMS will fail if not made via SSL
8371 // or using SigV4. Documentation on configuring any of the officially supported 9179 // or using SigV4. Documentation on configuring any of the officially supported
8372 // AWS SDKs and CLI can be found at http://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version 9180 // AWS SDKs and CLI can be found at http://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version
8373 SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string"` 9181 SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string" sensitive:"true"`
8374 9182
8375 // The Server-side encryption algorithm used when storing this object in S3 9183 // The Server-side encryption algorithm used when storing this object in S3
8376 // (e.g., AES256, aws:kms). 9184 // (e.g., AES256, aws:kms).
@@ -8404,6 +9212,9 @@ func (s *CreateMultipartUploadInput) Validate() error {
8404 if s.Bucket == nil { 9212 if s.Bucket == nil {
8405 invalidParams.Add(request.NewErrParamRequired("Bucket")) 9213 invalidParams.Add(request.NewErrParamRequired("Bucket"))
8406 } 9214 }
9215 if s.Bucket != nil && len(*s.Bucket) < 1 {
9216 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
9217 }
8407 if s.Key == nil { 9218 if s.Key == nil {
8408 invalidParams.Add(request.NewErrParamRequired("Key")) 9219 invalidParams.Add(request.NewErrParamRequired("Key"))
8409 } 9220 }
@@ -8508,6 +9319,24 @@ func (s *CreateMultipartUploadInput) SetMetadata(v map[string]*string) *CreateMu
8508 return s 9319 return s
8509} 9320}
8510 9321
9322// SetObjectLockLegalHoldStatus sets the ObjectLockLegalHoldStatus field's value.
9323func (s *CreateMultipartUploadInput) SetObjectLockLegalHoldStatus(v string) *CreateMultipartUploadInput {
9324 s.ObjectLockLegalHoldStatus = &v
9325 return s
9326}
9327
9328// SetObjectLockMode sets the ObjectLockMode field's value.
9329func (s *CreateMultipartUploadInput) SetObjectLockMode(v string) *CreateMultipartUploadInput {
9330 s.ObjectLockMode = &v
9331 return s
9332}
9333
9334// SetObjectLockRetainUntilDate sets the ObjectLockRetainUntilDate field's value.
9335func (s *CreateMultipartUploadInput) SetObjectLockRetainUntilDate(v time.Time) *CreateMultipartUploadInput {
9336 s.ObjectLockRetainUntilDate = &v
9337 return s
9338}
9339
8511// SetRequestPayer sets the RequestPayer field's value. 9340// SetRequestPayer sets the RequestPayer field's value.
8512func (s *CreateMultipartUploadInput) SetRequestPayer(v string) *CreateMultipartUploadInput { 9341func (s *CreateMultipartUploadInput) SetRequestPayer(v string) *CreateMultipartUploadInput {
8513 s.RequestPayer = &v 9342 s.RequestPayer = &v
@@ -8601,7 +9430,7 @@ type CreateMultipartUploadOutput struct {
8601 9430
8602 // If present, specifies the ID of the AWS Key Management Service (KMS) master 9431 // If present, specifies the ID of the AWS Key Management Service (KMS) master
8603 // encryption key that was used for the object. 9432 // encryption key that was used for the object.
8604 SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string"` 9433 SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string" sensitive:"true"`
8605 9434
8606 // The Server-side encryption algorithm used when storing this object in S3 9435 // The Server-side encryption algorithm used when storing this object in S3
8607 // (e.g., AES256, aws:kms). 9436 // (e.g., AES256, aws:kms).
@@ -8688,6 +9517,50 @@ func (s *CreateMultipartUploadOutput) SetUploadId(v string) *CreateMultipartUplo
8688 return s 9517 return s
8689} 9518}
8690 9519
9520// The container element for specifying the default Object Lock retention settings
9521// for new objects placed in the specified bucket.
9522type DefaultRetention struct {
9523 _ struct{} `type:"structure"`
9524
9525 // The number of days that you want to specify for the default retention period.
9526 Days *int64 `type:"integer"`
9527
9528 // The default Object Lock retention mode you want to apply to new objects placed
9529 // in the specified bucket.
9530 Mode *string `type:"string" enum:"ObjectLockRetentionMode"`
9531
9532 // The number of years that you want to specify for the default retention period.
9533 Years *int64 `type:"integer"`
9534}
9535
9536// String returns the string representation
9537func (s DefaultRetention) String() string {
9538 return awsutil.Prettify(s)
9539}
9540
9541// GoString returns the string representation
9542func (s DefaultRetention) GoString() string {
9543 return s.String()
9544}
9545
9546// SetDays sets the Days field's value.
9547func (s *DefaultRetention) SetDays(v int64) *DefaultRetention {
9548 s.Days = &v
9549 return s
9550}
9551
9552// SetMode sets the Mode field's value.
9553func (s *DefaultRetention) SetMode(v string) *DefaultRetention {
9554 s.Mode = &v
9555 return s
9556}
9557
9558// SetYears sets the Years field's value.
9559func (s *DefaultRetention) SetYears(v int64) *DefaultRetention {
9560 s.Years = &v
9561 return s
9562}
9563
8691type Delete struct { 9564type Delete struct {
8692 _ struct{} `type:"structure"` 9565 _ struct{} `type:"structure"`
8693 9566
@@ -8774,6 +9647,9 @@ func (s *DeleteBucketAnalyticsConfigurationInput) Validate() error {
8774 if s.Bucket == nil { 9647 if s.Bucket == nil {
8775 invalidParams.Add(request.NewErrParamRequired("Bucket")) 9648 invalidParams.Add(request.NewErrParamRequired("Bucket"))
8776 } 9649 }
9650 if s.Bucket != nil && len(*s.Bucket) < 1 {
9651 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
9652 }
8777 if s.Id == nil { 9653 if s.Id == nil {
8778 invalidParams.Add(request.NewErrParamRequired("Id")) 9654 invalidParams.Add(request.NewErrParamRequired("Id"))
8779 } 9655 }
@@ -8840,6 +9716,9 @@ func (s *DeleteBucketCorsInput) Validate() error {
8840 if s.Bucket == nil { 9716 if s.Bucket == nil {
8841 invalidParams.Add(request.NewErrParamRequired("Bucket")) 9717 invalidParams.Add(request.NewErrParamRequired("Bucket"))
8842 } 9718 }
9719 if s.Bucket != nil && len(*s.Bucket) < 1 {
9720 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
9721 }
8843 9722
8844 if invalidParams.Len() > 0 { 9723 if invalidParams.Len() > 0 {
8845 return invalidParams 9724 return invalidParams
@@ -8900,6 +9779,9 @@ func (s *DeleteBucketEncryptionInput) Validate() error {
8900 if s.Bucket == nil { 9779 if s.Bucket == nil {
8901 invalidParams.Add(request.NewErrParamRequired("Bucket")) 9780 invalidParams.Add(request.NewErrParamRequired("Bucket"))
8902 } 9781 }
9782 if s.Bucket != nil && len(*s.Bucket) < 1 {
9783 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
9784 }
8903 9785
8904 if invalidParams.Len() > 0 { 9786 if invalidParams.Len() > 0 {
8905 return invalidParams 9787 return invalidParams
@@ -8957,6 +9839,9 @@ func (s *DeleteBucketInput) Validate() error {
8957 if s.Bucket == nil { 9839 if s.Bucket == nil {
8958 invalidParams.Add(request.NewErrParamRequired("Bucket")) 9840 invalidParams.Add(request.NewErrParamRequired("Bucket"))
8959 } 9841 }
9842 if s.Bucket != nil && len(*s.Bucket) < 1 {
9843 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
9844 }
8960 9845
8961 if invalidParams.Len() > 0 { 9846 if invalidParams.Len() > 0 {
8962 return invalidParams 9847 return invalidParams
@@ -9007,6 +9892,9 @@ func (s *DeleteBucketInventoryConfigurationInput) Validate() error {
9007 if s.Bucket == nil { 9892 if s.Bucket == nil {
9008 invalidParams.Add(request.NewErrParamRequired("Bucket")) 9893 invalidParams.Add(request.NewErrParamRequired("Bucket"))
9009 } 9894 }
9895 if s.Bucket != nil && len(*s.Bucket) < 1 {
9896 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
9897 }
9010 if s.Id == nil { 9898 if s.Id == nil {
9011 invalidParams.Add(request.NewErrParamRequired("Id")) 9899 invalidParams.Add(request.NewErrParamRequired("Id"))
9012 } 9900 }
@@ -9073,6 +9961,9 @@ func (s *DeleteBucketLifecycleInput) Validate() error {
9073 if s.Bucket == nil { 9961 if s.Bucket == nil {
9074 invalidParams.Add(request.NewErrParamRequired("Bucket")) 9962 invalidParams.Add(request.NewErrParamRequired("Bucket"))
9075 } 9963 }
9964 if s.Bucket != nil && len(*s.Bucket) < 1 {
9965 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
9966 }
9076 9967
9077 if invalidParams.Len() > 0 { 9968 if invalidParams.Len() > 0 {
9078 return invalidParams 9969 return invalidParams
@@ -9137,6 +10028,9 @@ func (s *DeleteBucketMetricsConfigurationInput) Validate() error {
9137 if s.Bucket == nil { 10028 if s.Bucket == nil {
9138 invalidParams.Add(request.NewErrParamRequired("Bucket")) 10029 invalidParams.Add(request.NewErrParamRequired("Bucket"))
9139 } 10030 }
10031 if s.Bucket != nil && len(*s.Bucket) < 1 {
10032 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
10033 }
9140 if s.Id == nil { 10034 if s.Id == nil {
9141 invalidParams.Add(request.NewErrParamRequired("Id")) 10035 invalidParams.Add(request.NewErrParamRequired("Id"))
9142 } 10036 }
@@ -9217,6 +10111,9 @@ func (s *DeleteBucketPolicyInput) Validate() error {
9217 if s.Bucket == nil { 10111 if s.Bucket == nil {
9218 invalidParams.Add(request.NewErrParamRequired("Bucket")) 10112 invalidParams.Add(request.NewErrParamRequired("Bucket"))
9219 } 10113 }
10114 if s.Bucket != nil && len(*s.Bucket) < 1 {
10115 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
10116 }
9220 10117
9221 if invalidParams.Len() > 0 { 10118 if invalidParams.Len() > 0 {
9222 return invalidParams 10119 return invalidParams
@@ -9254,6 +10151,11 @@ func (s DeleteBucketPolicyOutput) GoString() string {
9254type DeleteBucketReplicationInput struct { 10151type DeleteBucketReplicationInput struct {
9255 _ struct{} `type:"structure"` 10152 _ struct{} `type:"structure"`
9256 10153
10154 // The bucket name.
10155 //
10156 // It can take a while to propagate the deletion of a replication configuration
10157 // to all Amazon S3 systems.
10158 //
9257 // Bucket is a required field 10159 // Bucket is a required field
9258 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` 10160 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
9259} 10161}
@@ -9274,6 +10176,9 @@ func (s *DeleteBucketReplicationInput) Validate() error {
9274 if s.Bucket == nil { 10176 if s.Bucket == nil {
9275 invalidParams.Add(request.NewErrParamRequired("Bucket")) 10177 invalidParams.Add(request.NewErrParamRequired("Bucket"))
9276 } 10178 }
10179 if s.Bucket != nil && len(*s.Bucket) < 1 {
10180 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
10181 }
9277 10182
9278 if invalidParams.Len() > 0 { 10183 if invalidParams.Len() > 0 {
9279 return invalidParams 10184 return invalidParams
@@ -9331,6 +10236,9 @@ func (s *DeleteBucketTaggingInput) Validate() error {
9331 if s.Bucket == nil { 10236 if s.Bucket == nil {
9332 invalidParams.Add(request.NewErrParamRequired("Bucket")) 10237 invalidParams.Add(request.NewErrParamRequired("Bucket"))
9333 } 10238 }
10239 if s.Bucket != nil && len(*s.Bucket) < 1 {
10240 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
10241 }
9334 10242
9335 if invalidParams.Len() > 0 { 10243 if invalidParams.Len() > 0 {
9336 return invalidParams 10244 return invalidParams
@@ -9388,6 +10296,9 @@ func (s *DeleteBucketWebsiteInput) Validate() error {
9388 if s.Bucket == nil { 10296 if s.Bucket == nil {
9389 invalidParams.Add(request.NewErrParamRequired("Bucket")) 10297 invalidParams.Add(request.NewErrParamRequired("Bucket"))
9390 } 10298 }
10299 if s.Bucket != nil && len(*s.Bucket) < 1 {
10300 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
10301 }
9391 10302
9392 if invalidParams.Len() > 0 { 10303 if invalidParams.Len() > 0 {
9393 return invalidParams 10304 return invalidParams
@@ -9481,12 +10392,43 @@ func (s *DeleteMarkerEntry) SetVersionId(v string) *DeleteMarkerEntry {
9481 return s 10392 return s
9482} 10393}
9483 10394
10395// Specifies whether Amazon S3 should replicate delete makers.
10396type DeleteMarkerReplication struct {
10397 _ struct{} `type:"structure"`
10398
10399 // The status of the delete marker replication.
10400 //
10401 // In the current implementation, Amazon S3 doesn't replicate the delete markers.
10402 // The status must be Disabled.
10403 Status *string `type:"string" enum:"DeleteMarkerReplicationStatus"`
10404}
10405
10406// String returns the string representation
10407func (s DeleteMarkerReplication) String() string {
10408 return awsutil.Prettify(s)
10409}
10410
10411// GoString returns the string representation
10412func (s DeleteMarkerReplication) GoString() string {
10413 return s.String()
10414}
10415
10416// SetStatus sets the Status field's value.
10417func (s *DeleteMarkerReplication) SetStatus(v string) *DeleteMarkerReplication {
10418 s.Status = &v
10419 return s
10420}
10421
9484type DeleteObjectInput struct { 10422type DeleteObjectInput struct {
9485 _ struct{} `type:"structure"` 10423 _ struct{} `type:"structure"`
9486 10424
9487 // Bucket is a required field 10425 // Bucket is a required field
9488 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` 10426 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
9489 10427
10428 // Indicates whether S3 Object Lock should bypass Governance-mode restrictions
10429 // to process this operation.
10430 BypassGovernanceRetention *bool `location:"header" locationName:"x-amz-bypass-governance-retention" type:"boolean"`
10431
9490 // Key is a required field 10432 // Key is a required field
9491 Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"` 10433 Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"`
9492 10434
@@ -9520,6 +10462,9 @@ func (s *DeleteObjectInput) Validate() error {
9520 if s.Bucket == nil { 10462 if s.Bucket == nil {
9521 invalidParams.Add(request.NewErrParamRequired("Bucket")) 10463 invalidParams.Add(request.NewErrParamRequired("Bucket"))
9522 } 10464 }
10465 if s.Bucket != nil && len(*s.Bucket) < 1 {
10466 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
10467 }
9523 if s.Key == nil { 10468 if s.Key == nil {
9524 invalidParams.Add(request.NewErrParamRequired("Key")) 10469 invalidParams.Add(request.NewErrParamRequired("Key"))
9525 } 10470 }
@@ -9546,6 +10491,12 @@ func (s *DeleteObjectInput) getBucket() (v string) {
9546 return *s.Bucket 10491 return *s.Bucket
9547} 10492}
9548 10493
10494// SetBypassGovernanceRetention sets the BypassGovernanceRetention field's value.
10495func (s *DeleteObjectInput) SetBypassGovernanceRetention(v bool) *DeleteObjectInput {
10496 s.BypassGovernanceRetention = &v
10497 return s
10498}
10499
9549// SetKey sets the Key field's value. 10500// SetKey sets the Key field's value.
9550func (s *DeleteObjectInput) SetKey(v string) *DeleteObjectInput { 10501func (s *DeleteObjectInput) SetKey(v string) *DeleteObjectInput {
9551 s.Key = &v 10502 s.Key = &v
@@ -9643,6 +10594,9 @@ func (s *DeleteObjectTaggingInput) Validate() error {
9643 if s.Bucket == nil { 10594 if s.Bucket == nil {
9644 invalidParams.Add(request.NewErrParamRequired("Bucket")) 10595 invalidParams.Add(request.NewErrParamRequired("Bucket"))
9645 } 10596 }
10597 if s.Bucket != nil && len(*s.Bucket) < 1 {
10598 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
10599 }
9646 if s.Key == nil { 10600 if s.Key == nil {
9647 invalidParams.Add(request.NewErrParamRequired("Key")) 10601 invalidParams.Add(request.NewErrParamRequired("Key"))
9648 } 10602 }
@@ -9710,6 +10664,11 @@ type DeleteObjectsInput struct {
9710 // Bucket is a required field 10664 // Bucket is a required field
9711 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` 10665 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
9712 10666
10667 // Specifies whether you want to delete this object even if it has a Governance-type
10668 // Object Lock in place. You must have sufficient permissions to perform this
10669 // operation.
10670 BypassGovernanceRetention *bool `location:"header" locationName:"x-amz-bypass-governance-retention" type:"boolean"`
10671
9713 // Delete is a required field 10672 // Delete is a required field
9714 Delete *Delete `locationName:"Delete" type:"structure" required:"true" xmlURI:"http://s3.amazonaws.com/doc/2006-03-01/"` 10673 Delete *Delete `locationName:"Delete" type:"structure" required:"true" xmlURI:"http://s3.amazonaws.com/doc/2006-03-01/"`
9715 10674
@@ -9740,6 +10699,9 @@ func (s *DeleteObjectsInput) Validate() error {
9740 if s.Bucket == nil { 10699 if s.Bucket == nil {
9741 invalidParams.Add(request.NewErrParamRequired("Bucket")) 10700 invalidParams.Add(request.NewErrParamRequired("Bucket"))
9742 } 10701 }
10702 if s.Bucket != nil && len(*s.Bucket) < 1 {
10703 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
10704 }
9743 if s.Delete == nil { 10705 if s.Delete == nil {
9744 invalidParams.Add(request.NewErrParamRequired("Delete")) 10706 invalidParams.Add(request.NewErrParamRequired("Delete"))
9745 } 10707 }
@@ -9768,6 +10730,12 @@ func (s *DeleteObjectsInput) getBucket() (v string) {
9768 return *s.Bucket 10730 return *s.Bucket
9769} 10731}
9770 10732
10733// SetBypassGovernanceRetention sets the BypassGovernanceRetention field's value.
10734func (s *DeleteObjectsInput) SetBypassGovernanceRetention(v bool) *DeleteObjectsInput {
10735 s.BypassGovernanceRetention = &v
10736 return s
10737}
10738
9771// SetDelete sets the Delete field's value. 10739// SetDelete sets the Delete field's value.
9772func (s *DeleteObjectsInput) SetDelete(v *Delete) *DeleteObjectsInput { 10740func (s *DeleteObjectsInput) SetDelete(v *Delete) *DeleteObjectsInput {
9773 s.Delete = v 10741 s.Delete = v
@@ -9826,6 +10794,68 @@ func (s *DeleteObjectsOutput) SetRequestCharged(v string) *DeleteObjectsOutput {
9826 return s 10794 return s
9827} 10795}
9828 10796
10797type DeletePublicAccessBlockInput struct {
10798 _ struct{} `type:"structure"`
10799
10800 // The Amazon S3 bucket whose PublicAccessBlock configuration you want to delete.
10801 //
10802 // Bucket is a required field
10803 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
10804}
10805
10806// String returns the string representation
10807func (s DeletePublicAccessBlockInput) String() string {
10808 return awsutil.Prettify(s)
10809}
10810
10811// GoString returns the string representation
10812func (s DeletePublicAccessBlockInput) GoString() string {
10813 return s.String()
10814}
10815
10816// Validate inspects the fields of the type to determine if they are valid.
10817func (s *DeletePublicAccessBlockInput) Validate() error {
10818 invalidParams := request.ErrInvalidParams{Context: "DeletePublicAccessBlockInput"}
10819 if s.Bucket == nil {
10820 invalidParams.Add(request.NewErrParamRequired("Bucket"))
10821 }
10822 if s.Bucket != nil && len(*s.Bucket) < 1 {
10823 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
10824 }
10825
10826 if invalidParams.Len() > 0 {
10827 return invalidParams
10828 }
10829 return nil
10830}
10831
10832// SetBucket sets the Bucket field's value.
10833func (s *DeletePublicAccessBlockInput) SetBucket(v string) *DeletePublicAccessBlockInput {
10834 s.Bucket = &v
10835 return s
10836}
10837
10838func (s *DeletePublicAccessBlockInput) getBucket() (v string) {
10839 if s.Bucket == nil {
10840 return v
10841 }
10842 return *s.Bucket
10843}
10844
10845type DeletePublicAccessBlockOutput struct {
10846 _ struct{} `type:"structure"`
10847}
10848
10849// String returns the string representation
10850func (s DeletePublicAccessBlockOutput) String() string {
10851 return awsutil.Prettify(s)
10852}
10853
10854// GoString returns the string representation
10855func (s DeletePublicAccessBlockOutput) GoString() string {
10856 return s.String()
10857}
10858
9829type DeletedObject struct { 10859type DeletedObject struct {
9830 _ struct{} `type:"structure"` 10860 _ struct{} `type:"structure"`
9831 10861
@@ -9872,27 +10902,43 @@ func (s *DeletedObject) SetVersionId(v string) *DeletedObject {
9872 return s 10902 return s
9873} 10903}
9874 10904
9875// Container for replication destination information. 10905// A container for information about the replication destination.
9876type Destination struct { 10906type Destination struct {
9877 _ struct{} `type:"structure"` 10907 _ struct{} `type:"structure"`
9878 10908
9879 // Container for information regarding the access control for replicas. 10909 // A container for information about access control for replicas.
10910 //
10911 // Use this element only in a cross-account scenario where source and destination
10912 // bucket owners are not the same to change replica ownership to the AWS account
10913 // that owns the destination bucket. If you don't add this element to the replication
10914 // configuration, the replicas are owned by same AWS account that owns the source
10915 // object.
9880 AccessControlTranslation *AccessControlTranslation `type:"structure"` 10916 AccessControlTranslation *AccessControlTranslation `type:"structure"`
9881 10917
9882 // Account ID of the destination bucket. Currently this is only being verified 10918 // The account ID of the destination bucket. Currently, Amazon S3 verifies this
9883 // if Access Control Translation is enabled 10919 // value only if Access Control Translation is enabled.
10920 //
10921 // In a cross-account scenario, if you change replica ownership to the AWS account
10922 // that owns the destination bucket by adding the AccessControlTranslation element,
10923 // this is the account ID of the owner of the destination bucket.
9884 Account *string `type:"string"` 10924 Account *string `type:"string"`
9885 10925
9886 // Amazon resource name (ARN) of the bucket where you want Amazon S3 to store 10926 // The Amazon Resource Name (ARN) of the bucket where you want Amazon S3 to
9887 // replicas of the object identified by the rule. 10927 // store replicas of the object identified by the rule.
10928 //
10929 // If there are multiple rules in your replication configuration, all rules
10930 // must specify the same bucket as the destination. A replication configuration
10931 // can replicate objects to only one destination bucket.
9888 // 10932 //
9889 // Bucket is a required field 10933 // Bucket is a required field
9890 Bucket *string `type:"string" required:"true"` 10934 Bucket *string `type:"string" required:"true"`
9891 10935
9892 // Container for information regarding encryption based configuration for replicas. 10936 // A container that provides information about encryption. If SourceSelectionCriteria
10937 // is specified, you must specify this element.
9893 EncryptionConfiguration *EncryptionConfiguration `type:"structure"` 10938 EncryptionConfiguration *EncryptionConfiguration `type:"structure"`
9894 10939
9895 // The class of storage used to store the object. 10940 // The class of storage used to store the object. By default Amazon S3 uses
10941 // storage class of the source object when creating a replica.
9896 StorageClass *string `type:"string" enum:"StorageClass"` 10942 StorageClass *string `type:"string" enum:"StorageClass"`
9897} 10943}
9898 10944
@@ -9978,7 +11024,7 @@ type Encryption struct {
9978 11024
9979 // If the encryption type is aws:kms, this optional value specifies the AWS 11025 // If the encryption type is aws:kms, this optional value specifies the AWS
9980 // KMS key ID to use for encryption of job results. 11026 // KMS key ID to use for encryption of job results.
9981 KMSKeyId *string `type:"string"` 11027 KMSKeyId *string `type:"string" sensitive:"true"`
9982} 11028}
9983 11029
9984// String returns the string representation 11030// String returns the string representation
@@ -10022,11 +11068,13 @@ func (s *Encryption) SetKMSKeyId(v string) *Encryption {
10022 return s 11068 return s
10023} 11069}
10024 11070
10025// Container for information regarding encryption based configuration for replicas. 11071// A container for information about the encryption-based configuration for
11072// replicas.
10026type EncryptionConfiguration struct { 11073type EncryptionConfiguration struct {
10027 _ struct{} `type:"structure"` 11074 _ struct{} `type:"structure"`
10028 11075
10029 // The id of the KMS key used to encrypt the replica object. 11076 // The ID of the AWS KMS key for the AWS Region where the destination bucket
11077 // resides. Amazon S3 uses this key to encrypt the replica object.
10030 ReplicaKmsKeyID *string `type:"string"` 11078 ReplicaKmsKeyID *string `type:"string"`
10031} 11079}
10032 11080
@@ -10159,14 +11207,15 @@ func (s *ErrorDocument) SetKey(v string) *ErrorDocument {
10159 return s 11207 return s
10160} 11208}
10161 11209
10162// Container for key value pair that defines the criteria for the filter rule. 11210// A container for a key value pair that defines the criteria for the filter
11211// rule.
10163type FilterRule struct { 11212type FilterRule struct {
10164 _ struct{} `type:"structure"` 11213 _ struct{} `type:"structure"`
10165 11214
10166 // Object key name prefix or suffix identifying one or more objects to which 11215 // The object key name prefix or suffix identifying one or more objects to which
10167 // the filtering rule applies. Maximum prefix length can be up to 1,024 characters. 11216 // the filtering rule applies. The maximum prefix length is 1,024 characters.
10168 // Overlapping prefixes and suffixes are not supported. For more information, 11217 // Overlapping prefixes and suffixes are not supported. For more information,
10169 // go to Configuring Event Notifications (http://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html) 11218 // see Configuring Event Notifications (https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html)
10170 // in the Amazon Simple Storage Service Developer Guide. 11219 // in the Amazon Simple Storage Service Developer Guide.
10171 Name *string `type:"string" enum:"FilterRuleName"` 11220 Name *string `type:"string" enum:"FilterRuleName"`
10172 11221
@@ -10220,6 +11269,9 @@ func (s *GetBucketAccelerateConfigurationInput) Validate() error {
10220 if s.Bucket == nil { 11269 if s.Bucket == nil {
10221 invalidParams.Add(request.NewErrParamRequired("Bucket")) 11270 invalidParams.Add(request.NewErrParamRequired("Bucket"))
10222 } 11271 }
11272 if s.Bucket != nil && len(*s.Bucket) < 1 {
11273 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
11274 }
10223 11275
10224 if invalidParams.Len() > 0 { 11276 if invalidParams.Len() > 0 {
10225 return invalidParams 11277 return invalidParams
@@ -10286,6 +11338,9 @@ func (s *GetBucketAclInput) Validate() error {
10286 if s.Bucket == nil { 11338 if s.Bucket == nil {
10287 invalidParams.Add(request.NewErrParamRequired("Bucket")) 11339 invalidParams.Add(request.NewErrParamRequired("Bucket"))
10288 } 11340 }
11341 if s.Bucket != nil && len(*s.Bucket) < 1 {
11342 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
11343 }
10289 11344
10290 if invalidParams.Len() > 0 { 11345 if invalidParams.Len() > 0 {
10291 return invalidParams 11346 return invalidParams
@@ -10367,6 +11422,9 @@ func (s *GetBucketAnalyticsConfigurationInput) Validate() error {
10367 if s.Bucket == nil { 11422 if s.Bucket == nil {
10368 invalidParams.Add(request.NewErrParamRequired("Bucket")) 11423 invalidParams.Add(request.NewErrParamRequired("Bucket"))
10369 } 11424 }
11425 if s.Bucket != nil && len(*s.Bucket) < 1 {
11426 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
11427 }
10370 if s.Id == nil { 11428 if s.Id == nil {
10371 invalidParams.Add(request.NewErrParamRequired("Id")) 11429 invalidParams.Add(request.NewErrParamRequired("Id"))
10372 } 11430 }
@@ -10442,6 +11500,9 @@ func (s *GetBucketCorsInput) Validate() error {
10442 if s.Bucket == nil { 11500 if s.Bucket == nil {
10443 invalidParams.Add(request.NewErrParamRequired("Bucket")) 11501 invalidParams.Add(request.NewErrParamRequired("Bucket"))
10444 } 11502 }
11503 if s.Bucket != nil && len(*s.Bucket) < 1 {
11504 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
11505 }
10445 11506
10446 if invalidParams.Len() > 0 { 11507 if invalidParams.Len() > 0 {
10447 return invalidParams 11508 return invalidParams
@@ -10510,6 +11571,9 @@ func (s *GetBucketEncryptionInput) Validate() error {
10510 if s.Bucket == nil { 11571 if s.Bucket == nil {
10511 invalidParams.Add(request.NewErrParamRequired("Bucket")) 11572 invalidParams.Add(request.NewErrParamRequired("Bucket"))
10512 } 11573 }
11574 if s.Bucket != nil && len(*s.Bucket) < 1 {
11575 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
11576 }
10513 11577
10514 if invalidParams.Len() > 0 { 11578 if invalidParams.Len() > 0 {
10515 return invalidParams 11579 return invalidParams
@@ -10584,6 +11648,9 @@ func (s *GetBucketInventoryConfigurationInput) Validate() error {
10584 if s.Bucket == nil { 11648 if s.Bucket == nil {
10585 invalidParams.Add(request.NewErrParamRequired("Bucket")) 11649 invalidParams.Add(request.NewErrParamRequired("Bucket"))
10586 } 11650 }
11651 if s.Bucket != nil && len(*s.Bucket) < 1 {
11652 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
11653 }
10587 if s.Id == nil { 11654 if s.Id == nil {
10588 invalidParams.Add(request.NewErrParamRequired("Id")) 11655 invalidParams.Add(request.NewErrParamRequired("Id"))
10589 } 11656 }
@@ -10659,6 +11726,9 @@ func (s *GetBucketLifecycleConfigurationInput) Validate() error {
10659 if s.Bucket == nil { 11726 if s.Bucket == nil {
10660 invalidParams.Add(request.NewErrParamRequired("Bucket")) 11727 invalidParams.Add(request.NewErrParamRequired("Bucket"))
10661 } 11728 }
11729 if s.Bucket != nil && len(*s.Bucket) < 1 {
11730 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
11731 }
10662 11732
10663 if invalidParams.Len() > 0 { 11733 if invalidParams.Len() > 0 {
10664 return invalidParams 11734 return invalidParams
@@ -10724,6 +11794,9 @@ func (s *GetBucketLifecycleInput) Validate() error {
10724 if s.Bucket == nil { 11794 if s.Bucket == nil {
10725 invalidParams.Add(request.NewErrParamRequired("Bucket")) 11795 invalidParams.Add(request.NewErrParamRequired("Bucket"))
10726 } 11796 }
11797 if s.Bucket != nil && len(*s.Bucket) < 1 {
11798 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
11799 }
10727 11800
10728 if invalidParams.Len() > 0 { 11801 if invalidParams.Len() > 0 {
10729 return invalidParams 11802 return invalidParams
@@ -10789,6 +11862,9 @@ func (s *GetBucketLocationInput) Validate() error {
10789 if s.Bucket == nil { 11862 if s.Bucket == nil {
10790 invalidParams.Add(request.NewErrParamRequired("Bucket")) 11863 invalidParams.Add(request.NewErrParamRequired("Bucket"))
10791 } 11864 }
11865 if s.Bucket != nil && len(*s.Bucket) < 1 {
11866 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
11867 }
10792 11868
10793 if invalidParams.Len() > 0 { 11869 if invalidParams.Len() > 0 {
10794 return invalidParams 11870 return invalidParams
@@ -10854,6 +11930,9 @@ func (s *GetBucketLoggingInput) Validate() error {
10854 if s.Bucket == nil { 11930 if s.Bucket == nil {
10855 invalidParams.Add(request.NewErrParamRequired("Bucket")) 11931 invalidParams.Add(request.NewErrParamRequired("Bucket"))
10856 } 11932 }
11933 if s.Bucket != nil && len(*s.Bucket) < 1 {
11934 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
11935 }
10857 11936
10858 if invalidParams.Len() > 0 { 11937 if invalidParams.Len() > 0 {
10859 return invalidParams 11938 return invalidParams
@@ -10929,6 +12008,9 @@ func (s *GetBucketMetricsConfigurationInput) Validate() error {
10929 if s.Bucket == nil { 12008 if s.Bucket == nil {
10930 invalidParams.Add(request.NewErrParamRequired("Bucket")) 12009 invalidParams.Add(request.NewErrParamRequired("Bucket"))
10931 } 12010 }
12011 if s.Bucket != nil && len(*s.Bucket) < 1 {
12012 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
12013 }
10932 if s.Id == nil { 12014 if s.Id == nil {
10933 invalidParams.Add(request.NewErrParamRequired("Id")) 12015 invalidParams.Add(request.NewErrParamRequired("Id"))
10934 } 12016 }
@@ -11006,6 +12088,9 @@ func (s *GetBucketNotificationConfigurationRequest) Validate() error {
11006 if s.Bucket == nil { 12088 if s.Bucket == nil {
11007 invalidParams.Add(request.NewErrParamRequired("Bucket")) 12089 invalidParams.Add(request.NewErrParamRequired("Bucket"))
11008 } 12090 }
12091 if s.Bucket != nil && len(*s.Bucket) < 1 {
12092 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
12093 }
11009 12094
11010 if invalidParams.Len() > 0 { 12095 if invalidParams.Len() > 0 {
11011 return invalidParams 12096 return invalidParams
@@ -11049,6 +12134,9 @@ func (s *GetBucketPolicyInput) Validate() error {
11049 if s.Bucket == nil { 12134 if s.Bucket == nil {
11050 invalidParams.Add(request.NewErrParamRequired("Bucket")) 12135 invalidParams.Add(request.NewErrParamRequired("Bucket"))
11051 } 12136 }
12137 if s.Bucket != nil && len(*s.Bucket) < 1 {
12138 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
12139 }
11052 12140
11053 if invalidParams.Len() > 0 { 12141 if invalidParams.Len() > 0 {
11054 return invalidParams 12142 return invalidParams
@@ -11092,6 +12180,77 @@ func (s *GetBucketPolicyOutput) SetPolicy(v string) *GetBucketPolicyOutput {
11092 return s 12180 return s
11093} 12181}
11094 12182
12183type GetBucketPolicyStatusInput struct {
12184 _ struct{} `type:"structure"`
12185
12186 // The name of the Amazon S3 bucket whose policy status you want to retrieve.
12187 //
12188 // Bucket is a required field
12189 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
12190}
12191
12192// String returns the string representation
12193func (s GetBucketPolicyStatusInput) String() string {
12194 return awsutil.Prettify(s)
12195}
12196
12197// GoString returns the string representation
12198func (s GetBucketPolicyStatusInput) GoString() string {
12199 return s.String()
12200}
12201
12202// Validate inspects the fields of the type to determine if they are valid.
12203func (s *GetBucketPolicyStatusInput) Validate() error {
12204 invalidParams := request.ErrInvalidParams{Context: "GetBucketPolicyStatusInput"}
12205 if s.Bucket == nil {
12206 invalidParams.Add(request.NewErrParamRequired("Bucket"))
12207 }
12208 if s.Bucket != nil && len(*s.Bucket) < 1 {
12209 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
12210 }
12211
12212 if invalidParams.Len() > 0 {
12213 return invalidParams
12214 }
12215 return nil
12216}
12217
12218// SetBucket sets the Bucket field's value.
12219func (s *GetBucketPolicyStatusInput) SetBucket(v string) *GetBucketPolicyStatusInput {
12220 s.Bucket = &v
12221 return s
12222}
12223
12224func (s *GetBucketPolicyStatusInput) getBucket() (v string) {
12225 if s.Bucket == nil {
12226 return v
12227 }
12228 return *s.Bucket
12229}
12230
12231type GetBucketPolicyStatusOutput struct {
12232 _ struct{} `type:"structure" payload:"PolicyStatus"`
12233
12234 // The policy status for the specified bucket.
12235 PolicyStatus *PolicyStatus `type:"structure"`
12236}
12237
12238// String returns the string representation
12239func (s GetBucketPolicyStatusOutput) String() string {
12240 return awsutil.Prettify(s)
12241}
12242
12243// GoString returns the string representation
12244func (s GetBucketPolicyStatusOutput) GoString() string {
12245 return s.String()
12246}
12247
12248// SetPolicyStatus sets the PolicyStatus field's value.
12249func (s *GetBucketPolicyStatusOutput) SetPolicyStatus(v *PolicyStatus) *GetBucketPolicyStatusOutput {
12250 s.PolicyStatus = v
12251 return s
12252}
12253
11095type GetBucketReplicationInput struct { 12254type GetBucketReplicationInput struct {
11096 _ struct{} `type:"structure"` 12255 _ struct{} `type:"structure"`
11097 12256
@@ -11115,6 +12274,9 @@ func (s *GetBucketReplicationInput) Validate() error {
11115 if s.Bucket == nil { 12274 if s.Bucket == nil {
11116 invalidParams.Add(request.NewErrParamRequired("Bucket")) 12275 invalidParams.Add(request.NewErrParamRequired("Bucket"))
11117 } 12276 }
12277 if s.Bucket != nil && len(*s.Bucket) < 1 {
12278 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
12279 }
11118 12280
11119 if invalidParams.Len() > 0 { 12281 if invalidParams.Len() > 0 {
11120 return invalidParams 12282 return invalidParams
@@ -11138,8 +12300,8 @@ func (s *GetBucketReplicationInput) getBucket() (v string) {
11138type GetBucketReplicationOutput struct { 12300type GetBucketReplicationOutput struct {
11139 _ struct{} `type:"structure" payload:"ReplicationConfiguration"` 12301 _ struct{} `type:"structure" payload:"ReplicationConfiguration"`
11140 12302
11141 // Container for replication rules. You can add as many as 1,000 rules. Total 12303 // A container for replication rules. You can add up to 1,000 rules. The maximum
11142 // replication configuration size can be up to 2 MB. 12304 // size of a replication configuration is 2 MB.
11143 ReplicationConfiguration *ReplicationConfiguration `type:"structure"` 12305 ReplicationConfiguration *ReplicationConfiguration `type:"structure"`
11144} 12306}
11145 12307
@@ -11182,6 +12344,9 @@ func (s *GetBucketRequestPaymentInput) Validate() error {
11182 if s.Bucket == nil { 12344 if s.Bucket == nil {
11183 invalidParams.Add(request.NewErrParamRequired("Bucket")) 12345 invalidParams.Add(request.NewErrParamRequired("Bucket"))
11184 } 12346 }
12347 if s.Bucket != nil && len(*s.Bucket) < 1 {
12348 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
12349 }
11185 12350
11186 if invalidParams.Len() > 0 { 12351 if invalidParams.Len() > 0 {
11187 return invalidParams 12352 return invalidParams
@@ -11248,6 +12413,9 @@ func (s *GetBucketTaggingInput) Validate() error {
11248 if s.Bucket == nil { 12413 if s.Bucket == nil {
11249 invalidParams.Add(request.NewErrParamRequired("Bucket")) 12414 invalidParams.Add(request.NewErrParamRequired("Bucket"))
11250 } 12415 }
12416 if s.Bucket != nil && len(*s.Bucket) < 1 {
12417 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
12418 }
11251 12419
11252 if invalidParams.Len() > 0 { 12420 if invalidParams.Len() > 0 {
11253 return invalidParams 12421 return invalidParams
@@ -11314,6 +12482,9 @@ func (s *GetBucketVersioningInput) Validate() error {
11314 if s.Bucket == nil { 12482 if s.Bucket == nil {
11315 invalidParams.Add(request.NewErrParamRequired("Bucket")) 12483 invalidParams.Add(request.NewErrParamRequired("Bucket"))
11316 } 12484 }
12485 if s.Bucket != nil && len(*s.Bucket) < 1 {
12486 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
12487 }
11317 12488
11318 if invalidParams.Len() > 0 { 12489 if invalidParams.Len() > 0 {
11319 return invalidParams 12490 return invalidParams
@@ -11391,6 +12562,9 @@ func (s *GetBucketWebsiteInput) Validate() error {
11391 if s.Bucket == nil { 12562 if s.Bucket == nil {
11392 invalidParams.Add(request.NewErrParamRequired("Bucket")) 12563 invalidParams.Add(request.NewErrParamRequired("Bucket"))
11393 } 12564 }
12565 if s.Bucket != nil && len(*s.Bucket) < 1 {
12566 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
12567 }
11394 12568
11395 if invalidParams.Len() > 0 { 12569 if invalidParams.Len() > 0 {
11396 return invalidParams 12570 return invalidParams
@@ -11492,6 +12666,9 @@ func (s *GetObjectAclInput) Validate() error {
11492 if s.Bucket == nil { 12666 if s.Bucket == nil {
11493 invalidParams.Add(request.NewErrParamRequired("Bucket")) 12667 invalidParams.Add(request.NewErrParamRequired("Bucket"))
11494 } 12668 }
12669 if s.Bucket != nil && len(*s.Bucket) < 1 {
12670 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
12671 }
11495 if s.Key == nil { 12672 if s.Key == nil {
11496 invalidParams.Add(request.NewErrParamRequired("Key")) 12673 invalidParams.Add(request.NewErrParamRequired("Key"))
11497 } 12674 }
@@ -11643,7 +12820,7 @@ type GetObjectInput struct {
11643 // does not store the encryption key. The key must be appropriate for use with 12820 // does not store the encryption key. The key must be appropriate for use with
11644 // the algorithm specified in the x-amz-server-side​-encryption​-customer-algorithm 12821 // the algorithm specified in the x-amz-server-side​-encryption​-customer-algorithm
11645 // header. 12822 // header.
11646 SSECustomerKey *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key" type:"string"` 12823 SSECustomerKey *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key" type:"string" sensitive:"true"`
11647 12824
11648 // Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. 12825 // Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321.
11649 // Amazon S3 uses this header for a message integrity check to ensure the encryption 12826 // Amazon S3 uses this header for a message integrity check to ensure the encryption
@@ -11670,6 +12847,9 @@ func (s *GetObjectInput) Validate() error {
11670 if s.Bucket == nil { 12847 if s.Bucket == nil {
11671 invalidParams.Add(request.NewErrParamRequired("Bucket")) 12848 invalidParams.Add(request.NewErrParamRequired("Bucket"))
11672 } 12849 }
12850 if s.Bucket != nil && len(*s.Bucket) < 1 {
12851 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
12852 }
11673 if s.Key == nil { 12853 if s.Key == nil {
11674 invalidParams.Add(request.NewErrParamRequired("Key")) 12854 invalidParams.Add(request.NewErrParamRequired("Key"))
11675 } 12855 }
@@ -11811,6 +12991,186 @@ func (s *GetObjectInput) SetVersionId(v string) *GetObjectInput {
11811 return s 12991 return s
11812} 12992}
11813 12993
12994type GetObjectLegalHoldInput struct {
12995 _ struct{} `type:"structure"`
12996
12997 // The bucket containing the object whose Legal Hold status you want to retrieve.
12998 //
12999 // Bucket is a required field
13000 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
13001
13002 // The key name for the object whose Legal Hold status you want to retrieve.
13003 //
13004 // Key is a required field
13005 Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"`
13006
13007 // Confirms that the requester knows that she or he will be charged for the
13008 // request. Bucket owners need not specify this parameter in their requests.
13009 // Documentation on downloading objects from requester pays buckets can be found
13010 // at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
13011 RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
13012
13013 // The version ID of the object whose Legal Hold status you want to retrieve.
13014 VersionId *string `location:"querystring" locationName:"versionId" type:"string"`
13015}
13016
13017// String returns the string representation
13018func (s GetObjectLegalHoldInput) String() string {
13019 return awsutil.Prettify(s)
13020}
13021
13022// GoString returns the string representation
13023func (s GetObjectLegalHoldInput) GoString() string {
13024 return s.String()
13025}
13026
13027// Validate inspects the fields of the type to determine if they are valid.
13028func (s *GetObjectLegalHoldInput) Validate() error {
13029 invalidParams := request.ErrInvalidParams{Context: "GetObjectLegalHoldInput"}
13030 if s.Bucket == nil {
13031 invalidParams.Add(request.NewErrParamRequired("Bucket"))
13032 }
13033 if s.Bucket != nil && len(*s.Bucket) < 1 {
13034 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
13035 }
13036 if s.Key == nil {
13037 invalidParams.Add(request.NewErrParamRequired("Key"))
13038 }
13039 if s.Key != nil && len(*s.Key) < 1 {
13040 invalidParams.Add(request.NewErrParamMinLen("Key", 1))
13041 }
13042
13043 if invalidParams.Len() > 0 {
13044 return invalidParams
13045 }
13046 return nil
13047}
13048
13049// SetBucket sets the Bucket field's value.
13050func (s *GetObjectLegalHoldInput) SetBucket(v string) *GetObjectLegalHoldInput {
13051 s.Bucket = &v
13052 return s
13053}
13054
13055func (s *GetObjectLegalHoldInput) getBucket() (v string) {
13056 if s.Bucket == nil {
13057 return v
13058 }
13059 return *s.Bucket
13060}
13061
13062// SetKey sets the Key field's value.
13063func (s *GetObjectLegalHoldInput) SetKey(v string) *GetObjectLegalHoldInput {
13064 s.Key = &v
13065 return s
13066}
13067
13068// SetRequestPayer sets the RequestPayer field's value.
13069func (s *GetObjectLegalHoldInput) SetRequestPayer(v string) *GetObjectLegalHoldInput {
13070 s.RequestPayer = &v
13071 return s
13072}
13073
13074// SetVersionId sets the VersionId field's value.
13075func (s *GetObjectLegalHoldInput) SetVersionId(v string) *GetObjectLegalHoldInput {
13076 s.VersionId = &v
13077 return s
13078}
13079
13080type GetObjectLegalHoldOutput struct {
13081 _ struct{} `type:"structure" payload:"LegalHold"`
13082
13083 // The current Legal Hold status for the specified object.
13084 LegalHold *ObjectLockLegalHold `type:"structure"`
13085}
13086
13087// String returns the string representation
13088func (s GetObjectLegalHoldOutput) String() string {
13089 return awsutil.Prettify(s)
13090}
13091
13092// GoString returns the string representation
13093func (s GetObjectLegalHoldOutput) GoString() string {
13094 return s.String()
13095}
13096
13097// SetLegalHold sets the LegalHold field's value.
13098func (s *GetObjectLegalHoldOutput) SetLegalHold(v *ObjectLockLegalHold) *GetObjectLegalHoldOutput {
13099 s.LegalHold = v
13100 return s
13101}
13102
13103type GetObjectLockConfigurationInput struct {
13104 _ struct{} `type:"structure"`
13105
13106 // The bucket whose Object Lock configuration you want to retrieve.
13107 //
13108 // Bucket is a required field
13109 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
13110}
13111
13112// String returns the string representation
13113func (s GetObjectLockConfigurationInput) String() string {
13114 return awsutil.Prettify(s)
13115}
13116
13117// GoString returns the string representation
13118func (s GetObjectLockConfigurationInput) GoString() string {
13119 return s.String()
13120}
13121
13122// Validate inspects the fields of the type to determine if they are valid.
13123func (s *GetObjectLockConfigurationInput) Validate() error {
13124 invalidParams := request.ErrInvalidParams{Context: "GetObjectLockConfigurationInput"}
13125 if s.Bucket == nil {
13126 invalidParams.Add(request.NewErrParamRequired("Bucket"))
13127 }
13128 if s.Bucket != nil && len(*s.Bucket) < 1 {
13129 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
13130 }
13131
13132 if invalidParams.Len() > 0 {
13133 return invalidParams
13134 }
13135 return nil
13136}
13137
13138// SetBucket sets the Bucket field's value.
13139func (s *GetObjectLockConfigurationInput) SetBucket(v string) *GetObjectLockConfigurationInput {
13140 s.Bucket = &v
13141 return s
13142}
13143
13144func (s *GetObjectLockConfigurationInput) getBucket() (v string) {
13145 if s.Bucket == nil {
13146 return v
13147 }
13148 return *s.Bucket
13149}
13150
13151type GetObjectLockConfigurationOutput struct {
13152 _ struct{} `type:"structure" payload:"ObjectLockConfiguration"`
13153
13154 // The specified bucket's Object Lock configuration.
13155 ObjectLockConfiguration *ObjectLockConfiguration `type:"structure"`
13156}
13157
13158// String returns the string representation
13159func (s GetObjectLockConfigurationOutput) String() string {
13160 return awsutil.Prettify(s)
13161}
13162
13163// GoString returns the string representation
13164func (s GetObjectLockConfigurationOutput) GoString() string {
13165 return s.String()
13166}
13167
13168// SetObjectLockConfiguration sets the ObjectLockConfiguration field's value.
13169func (s *GetObjectLockConfigurationOutput) SetObjectLockConfiguration(v *ObjectLockConfiguration) *GetObjectLockConfigurationOutput {
13170 s.ObjectLockConfiguration = v
13171 return s
13172}
13173
11814type GetObjectOutput struct { 13174type GetObjectOutput struct {
11815 _ struct{} `type:"structure" payload:"Body"` 13175 _ struct{} `type:"structure" payload:"Body"`
11816 13176
@@ -11871,6 +13231,16 @@ type GetObjectOutput struct {
11871 // you can create metadata whose values are not legal HTTP headers. 13231 // you can create metadata whose values are not legal HTTP headers.
11872 MissingMeta *int64 `location:"header" locationName:"x-amz-missing-meta" type:"integer"` 13232 MissingMeta *int64 `location:"header" locationName:"x-amz-missing-meta" type:"integer"`
11873 13233
13234 // Indicates whether this object has an active legal hold. This field is only
13235 // returned if you have permission to view an object's legal hold status.
13236 ObjectLockLegalHoldStatus *string `location:"header" locationName:"x-amz-object-lock-legal-hold" type:"string" enum:"ObjectLockLegalHoldStatus"`
13237
13238 // The Object Lock mode currently in place for this object.
13239 ObjectLockMode *string `location:"header" locationName:"x-amz-object-lock-mode" type:"string" enum:"ObjectLockMode"`
13240
13241 // The date and time when this object's Object Lock will expire.
13242 ObjectLockRetainUntilDate *time.Time `location:"header" locationName:"x-amz-object-lock-retain-until-date" type:"timestamp" timestampFormat:"iso8601"`
13243
11874 // The count of parts this object has. 13244 // The count of parts this object has.
11875 PartsCount *int64 `location:"header" locationName:"x-amz-mp-parts-count" type:"integer"` 13245 PartsCount *int64 `location:"header" locationName:"x-amz-mp-parts-count" type:"integer"`
11876 13246
@@ -11896,7 +13266,7 @@ type GetObjectOutput struct {
11896 13266
11897 // If present, specifies the ID of the AWS Key Management Service (KMS) master 13267 // If present, specifies the ID of the AWS Key Management Service (KMS) master
11898 // encryption key that was used for the object. 13268 // encryption key that was used for the object.
11899 SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string"` 13269 SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string" sensitive:"true"`
11900 13270
11901 // The Server-side encryption algorithm used when storing this object in S3 13271 // The Server-side encryption algorithm used when storing this object in S3
11902 // (e.g., AES256, aws:kms). 13272 // (e.g., AES256, aws:kms).
@@ -12022,6 +13392,24 @@ func (s *GetObjectOutput) SetMissingMeta(v int64) *GetObjectOutput {
12022 return s 13392 return s
12023} 13393}
12024 13394
13395// SetObjectLockLegalHoldStatus sets the ObjectLockLegalHoldStatus field's value.
13396func (s *GetObjectOutput) SetObjectLockLegalHoldStatus(v string) *GetObjectOutput {
13397 s.ObjectLockLegalHoldStatus = &v
13398 return s
13399}
13400
13401// SetObjectLockMode sets the ObjectLockMode field's value.
13402func (s *GetObjectOutput) SetObjectLockMode(v string) *GetObjectOutput {
13403 s.ObjectLockMode = &v
13404 return s
13405}
13406
13407// SetObjectLockRetainUntilDate sets the ObjectLockRetainUntilDate field's value.
13408func (s *GetObjectOutput) SetObjectLockRetainUntilDate(v time.Time) *GetObjectOutput {
13409 s.ObjectLockRetainUntilDate = &v
13410 return s
13411}
13412
12025// SetPartsCount sets the PartsCount field's value. 13413// SetPartsCount sets the PartsCount field's value.
12026func (s *GetObjectOutput) SetPartsCount(v int64) *GetObjectOutput { 13414func (s *GetObjectOutput) SetPartsCount(v int64) *GetObjectOutput {
12027 s.PartsCount = &v 13415 s.PartsCount = &v
@@ -12094,6 +13482,115 @@ func (s *GetObjectOutput) SetWebsiteRedirectLocation(v string) *GetObjectOutput
12094 return s 13482 return s
12095} 13483}
12096 13484
13485type GetObjectRetentionInput struct {
13486 _ struct{} `type:"structure"`
13487
13488 // The bucket containing the object whose retention settings you want to retrieve.
13489 //
13490 // Bucket is a required field
13491 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
13492
13493 // The key name for the object whose retention settings you want to retrieve.
13494 //
13495 // Key is a required field
13496 Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"`
13497
13498 // Confirms that the requester knows that she or he will be charged for the
13499 // request. Bucket owners need not specify this parameter in their requests.
13500 // Documentation on downloading objects from requester pays buckets can be found
13501 // at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
13502 RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
13503
13504 // The version ID for the object whose retention settings you want to retrieve.
13505 VersionId *string `location:"querystring" locationName:"versionId" type:"string"`
13506}
13507
13508// String returns the string representation
13509func (s GetObjectRetentionInput) String() string {
13510 return awsutil.Prettify(s)
13511}
13512
13513// GoString returns the string representation
13514func (s GetObjectRetentionInput) GoString() string {
13515 return s.String()
13516}
13517
13518// Validate inspects the fields of the type to determine if they are valid.
13519func (s *GetObjectRetentionInput) Validate() error {
13520 invalidParams := request.ErrInvalidParams{Context: "GetObjectRetentionInput"}
13521 if s.Bucket == nil {
13522 invalidParams.Add(request.NewErrParamRequired("Bucket"))
13523 }
13524 if s.Bucket != nil && len(*s.Bucket) < 1 {
13525 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
13526 }
13527 if s.Key == nil {
13528 invalidParams.Add(request.NewErrParamRequired("Key"))
13529 }
13530 if s.Key != nil && len(*s.Key) < 1 {
13531 invalidParams.Add(request.NewErrParamMinLen("Key", 1))
13532 }
13533
13534 if invalidParams.Len() > 0 {
13535 return invalidParams
13536 }
13537 return nil
13538}
13539
13540// SetBucket sets the Bucket field's value.
13541func (s *GetObjectRetentionInput) SetBucket(v string) *GetObjectRetentionInput {
13542 s.Bucket = &v
13543 return s
13544}
13545
13546func (s *GetObjectRetentionInput) getBucket() (v string) {
13547 if s.Bucket == nil {
13548 return v
13549 }
13550 return *s.Bucket
13551}
13552
13553// SetKey sets the Key field's value.
13554func (s *GetObjectRetentionInput) SetKey(v string) *GetObjectRetentionInput {
13555 s.Key = &v
13556 return s
13557}
13558
13559// SetRequestPayer sets the RequestPayer field's value.
13560func (s *GetObjectRetentionInput) SetRequestPayer(v string) *GetObjectRetentionInput {
13561 s.RequestPayer = &v
13562 return s
13563}
13564
13565// SetVersionId sets the VersionId field's value.
13566func (s *GetObjectRetentionInput) SetVersionId(v string) *GetObjectRetentionInput {
13567 s.VersionId = &v
13568 return s
13569}
13570
13571type GetObjectRetentionOutput struct {
13572 _ struct{} `type:"structure" payload:"Retention"`
13573
13574 // The container element for an object's retention settings.
13575 Retention *ObjectLockRetention `type:"structure"`
13576}
13577
13578// String returns the string representation
13579func (s GetObjectRetentionOutput) String() string {
13580 return awsutil.Prettify(s)
13581}
13582
13583// GoString returns the string representation
13584func (s GetObjectRetentionOutput) GoString() string {
13585 return s.String()
13586}
13587
13588// SetRetention sets the Retention field's value.
13589func (s *GetObjectRetentionOutput) SetRetention(v *ObjectLockRetention) *GetObjectRetentionOutput {
13590 s.Retention = v
13591 return s
13592}
13593
12097type GetObjectTaggingInput struct { 13594type GetObjectTaggingInput struct {
12098 _ struct{} `type:"structure"` 13595 _ struct{} `type:"structure"`
12099 13596
@@ -12122,6 +13619,9 @@ func (s *GetObjectTaggingInput) Validate() error {
12122 if s.Bucket == nil { 13619 if s.Bucket == nil {
12123 invalidParams.Add(request.NewErrParamRequired("Bucket")) 13620 invalidParams.Add(request.NewErrParamRequired("Bucket"))
12124 } 13621 }
13622 if s.Bucket != nil && len(*s.Bucket) < 1 {
13623 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
13624 }
12125 if s.Key == nil { 13625 if s.Key == nil {
12126 invalidParams.Add(request.NewErrParamRequired("Key")) 13626 invalidParams.Add(request.NewErrParamRequired("Key"))
12127 } 13627 }
@@ -12223,6 +13723,9 @@ func (s *GetObjectTorrentInput) Validate() error {
12223 if s.Bucket == nil { 13723 if s.Bucket == nil {
12224 invalidParams.Add(request.NewErrParamRequired("Bucket")) 13724 invalidParams.Add(request.NewErrParamRequired("Bucket"))
12225 } 13725 }
13726 if s.Bucket != nil && len(*s.Bucket) < 1 {
13727 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
13728 }
12226 if s.Key == nil { 13729 if s.Key == nil {
12227 invalidParams.Add(request.NewErrParamRequired("Key")) 13730 invalidParams.Add(request.NewErrParamRequired("Key"))
12228 } 13731 }
@@ -12293,6 +13796,79 @@ func (s *GetObjectTorrentOutput) SetRequestCharged(v string) *GetObjectTorrentOu
12293 return s 13796 return s
12294} 13797}
12295 13798
13799type GetPublicAccessBlockInput struct {
13800 _ struct{} `type:"structure"`
13801
13802 // The name of the Amazon S3 bucket whose PublicAccessBlock configuration you
13803 // want to retrieve.
13804 //
13805 // Bucket is a required field
13806 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
13807}
13808
13809// String returns the string representation
13810func (s GetPublicAccessBlockInput) String() string {
13811 return awsutil.Prettify(s)
13812}
13813
13814// GoString returns the string representation
13815func (s GetPublicAccessBlockInput) GoString() string {
13816 return s.String()
13817}
13818
13819// Validate inspects the fields of the type to determine if they are valid.
13820func (s *GetPublicAccessBlockInput) Validate() error {
13821 invalidParams := request.ErrInvalidParams{Context: "GetPublicAccessBlockInput"}
13822 if s.Bucket == nil {
13823 invalidParams.Add(request.NewErrParamRequired("Bucket"))
13824 }
13825 if s.Bucket != nil && len(*s.Bucket) < 1 {
13826 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
13827 }
13828
13829 if invalidParams.Len() > 0 {
13830 return invalidParams
13831 }
13832 return nil
13833}
13834
13835// SetBucket sets the Bucket field's value.
13836func (s *GetPublicAccessBlockInput) SetBucket(v string) *GetPublicAccessBlockInput {
13837 s.Bucket = &v
13838 return s
13839}
13840
13841func (s *GetPublicAccessBlockInput) getBucket() (v string) {
13842 if s.Bucket == nil {
13843 return v
13844 }
13845 return *s.Bucket
13846}
13847
13848type GetPublicAccessBlockOutput struct {
13849 _ struct{} `type:"structure" payload:"PublicAccessBlockConfiguration"`
13850
13851 // The PublicAccessBlock configuration currently in effect for this Amazon S3
13852 // bucket.
13853 PublicAccessBlockConfiguration *PublicAccessBlockConfiguration `type:"structure"`
13854}
13855
13856// String returns the string representation
13857func (s GetPublicAccessBlockOutput) String() string {
13858 return awsutil.Prettify(s)
13859}
13860
13861// GoString returns the string representation
13862func (s GetPublicAccessBlockOutput) GoString() string {
13863 return s.String()
13864}
13865
13866// SetPublicAccessBlockConfiguration sets the PublicAccessBlockConfiguration field's value.
13867func (s *GetPublicAccessBlockOutput) SetPublicAccessBlockConfiguration(v *PublicAccessBlockConfiguration) *GetPublicAccessBlockOutput {
13868 s.PublicAccessBlockConfiguration = v
13869 return s
13870}
13871
12296type GlacierJobParameters struct { 13872type GlacierJobParameters struct {
12297 _ struct{} `type:"structure"` 13873 _ struct{} `type:"structure"`
12298 13874
@@ -12474,6 +14050,9 @@ func (s *HeadBucketInput) Validate() error {
12474 if s.Bucket == nil { 14050 if s.Bucket == nil {
12475 invalidParams.Add(request.NewErrParamRequired("Bucket")) 14051 invalidParams.Add(request.NewErrParamRequired("Bucket"))
12476 } 14052 }
14053 if s.Bucket != nil && len(*s.Bucket) < 1 {
14054 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
14055 }
12477 14056
12478 if invalidParams.Len() > 0 { 14057 if invalidParams.Len() > 0 {
12479 return invalidParams 14058 return invalidParams
@@ -12557,7 +14136,7 @@ type HeadObjectInput struct {
12557 // does not store the encryption key. The key must be appropriate for use with 14136 // does not store the encryption key. The key must be appropriate for use with
12558 // the algorithm specified in the x-amz-server-side​-encryption​-customer-algorithm 14137 // the algorithm specified in the x-amz-server-side​-encryption​-customer-algorithm
12559 // header. 14138 // header.
12560 SSECustomerKey *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key" type:"string"` 14139 SSECustomerKey *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key" type:"string" sensitive:"true"`
12561 14140
12562 // Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. 14141 // Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321.
12563 // Amazon S3 uses this header for a message integrity check to ensure the encryption 14142 // Amazon S3 uses this header for a message integrity check to ensure the encryption
@@ -12584,6 +14163,9 @@ func (s *HeadObjectInput) Validate() error {
12584 if s.Bucket == nil { 14163 if s.Bucket == nil {
12585 invalidParams.Add(request.NewErrParamRequired("Bucket")) 14164 invalidParams.Add(request.NewErrParamRequired("Bucket"))
12586 } 14165 }
14166 if s.Bucket != nil && len(*s.Bucket) < 1 {
14167 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
14168 }
12587 if s.Key == nil { 14169 if s.Key == nil {
12588 invalidParams.Add(request.NewErrParamRequired("Key")) 14170 invalidParams.Add(request.NewErrParamRequired("Key"))
12589 } 14171 }
@@ -12743,6 +14325,15 @@ type HeadObjectOutput struct {
12743 // you can create metadata whose values are not legal HTTP headers. 14325 // you can create metadata whose values are not legal HTTP headers.
12744 MissingMeta *int64 `location:"header" locationName:"x-amz-missing-meta" type:"integer"` 14326 MissingMeta *int64 `location:"header" locationName:"x-amz-missing-meta" type:"integer"`
12745 14327
14328 // The Legal Hold status for the specified object.
14329 ObjectLockLegalHoldStatus *string `location:"header" locationName:"x-amz-object-lock-legal-hold" type:"string" enum:"ObjectLockLegalHoldStatus"`
14330
14331 // The Object Lock mode currently in place for this object.
14332 ObjectLockMode *string `location:"header" locationName:"x-amz-object-lock-mode" type:"string" enum:"ObjectLockMode"`
14333
14334 // The date and time when this object's Object Lock will expire.
14335 ObjectLockRetainUntilDate *time.Time `location:"header" locationName:"x-amz-object-lock-retain-until-date" type:"timestamp" timestampFormat:"iso8601"`
14336
12746 // The count of parts this object has. 14337 // The count of parts this object has.
12747 PartsCount *int64 `location:"header" locationName:"x-amz-mp-parts-count" type:"integer"` 14338 PartsCount *int64 `location:"header" locationName:"x-amz-mp-parts-count" type:"integer"`
12748 14339
@@ -12768,7 +14359,7 @@ type HeadObjectOutput struct {
12768 14359
12769 // If present, specifies the ID of the AWS Key Management Service (KMS) master 14360 // If present, specifies the ID of the AWS Key Management Service (KMS) master
12770 // encryption key that was used for the object. 14361 // encryption key that was used for the object.
12771 SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string"` 14362 SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string" sensitive:"true"`
12772 14363
12773 // The Server-side encryption algorithm used when storing this object in S3 14364 // The Server-side encryption algorithm used when storing this object in S3
12774 // (e.g., AES256, aws:kms). 14365 // (e.g., AES256, aws:kms).
@@ -12879,6 +14470,24 @@ func (s *HeadObjectOutput) SetMissingMeta(v int64) *HeadObjectOutput {
12879 return s 14470 return s
12880} 14471}
12881 14472
14473// SetObjectLockLegalHoldStatus sets the ObjectLockLegalHoldStatus field's value.
14474func (s *HeadObjectOutput) SetObjectLockLegalHoldStatus(v string) *HeadObjectOutput {
14475 s.ObjectLockLegalHoldStatus = &v
14476 return s
14477}
14478
14479// SetObjectLockMode sets the ObjectLockMode field's value.
14480func (s *HeadObjectOutput) SetObjectLockMode(v string) *HeadObjectOutput {
14481 s.ObjectLockMode = &v
14482 return s
14483}
14484
14485// SetObjectLockRetainUntilDate sets the ObjectLockRetainUntilDate field's value.
14486func (s *HeadObjectOutput) SetObjectLockRetainUntilDate(v time.Time) *HeadObjectOutput {
14487 s.ObjectLockRetainUntilDate = &v
14488 return s
14489}
14490
12882// SetPartsCount sets the PartsCount field's value. 14491// SetPartsCount sets the PartsCount field's value.
12883func (s *HeadObjectOutput) SetPartsCount(v int64) *HeadObjectOutput { 14492func (s *HeadObjectOutput) SetPartsCount(v int64) *HeadObjectOutput {
12884 s.PartsCount = &v 14493 s.PartsCount = &v
@@ -13032,6 +14641,9 @@ type InputSerialization struct {
13032 14641
13033 // Specifies JSON as object's input serialization format. 14642 // Specifies JSON as object's input serialization format.
13034 JSON *JSONInput `type:"structure"` 14643 JSON *JSONInput `type:"structure"`
14644
14645 // Specifies Parquet as object's input serialization format.
14646 Parquet *ParquetInput `type:"structure"`
13035} 14647}
13036 14648
13037// String returns the string representation 14649// String returns the string representation
@@ -13062,6 +14674,12 @@ func (s *InputSerialization) SetJSON(v *JSONInput) *InputSerialization {
13062 return s 14674 return s
13063} 14675}
13064 14676
14677// SetParquet sets the Parquet field's value.
14678func (s *InputSerialization) SetParquet(v *ParquetInput) *InputSerialization {
14679 s.Parquet = v
14680 return s
14681}
14682
13065type InventoryConfiguration struct { 14683type InventoryConfiguration struct {
13066 _ struct{} `type:"structure"` 14684 _ struct{} `type:"structure"`
13067 14685
@@ -13239,10 +14857,10 @@ func (s *InventoryDestination) SetS3BucketDestination(v *InventoryS3BucketDestin
13239type InventoryEncryption struct { 14857type InventoryEncryption struct {
13240 _ struct{} `type:"structure"` 14858 _ struct{} `type:"structure"`
13241 14859
13242 // Specifies the use of SSE-KMS to encrypt delievered Inventory reports. 14860 // Specifies the use of SSE-KMS to encrypt delivered Inventory reports.
13243 SSEKMS *SSEKMS `locationName:"SSE-KMS" type:"structure"` 14861 SSEKMS *SSEKMS `locationName:"SSE-KMS" type:"structure"`
13244 14862
13245 // Specifies the use of SSE-S3 to encrypt delievered Inventory reports. 14863 // Specifies the use of SSE-S3 to encrypt delivered Inventory reports.
13246 SSES3 *SSES3 `locationName:"SSE-S3" type:"structure"` 14864 SSES3 *SSES3 `locationName:"SSE-S3" type:"structure"`
13247} 14865}
13248 14866
@@ -13498,12 +15116,12 @@ func (s *JSONOutput) SetRecordDelimiter(v string) *JSONOutput {
13498 return s 15116 return s
13499} 15117}
13500 15118
13501// Container for object key name prefix and suffix filtering rules. 15119// A container for object key name prefix and suffix filtering rules.
13502type KeyFilter struct { 15120type KeyFilter struct {
13503 _ struct{} `type:"structure"` 15121 _ struct{} `type:"structure"`
13504 15122
13505 // A list of containers for key value pair that defines the criteria for the 15123 // A list of containers for the key value pair that defines the criteria for
13506 // filter rule. 15124 // the filter rule.
13507 FilterRules []*FilterRule `locationName:"FilterRule" type:"list" flattened:"true"` 15125 FilterRules []*FilterRule `locationName:"FilterRule" type:"list" flattened:"true"`
13508} 15126}
13509 15127
@@ -13523,24 +15141,24 @@ func (s *KeyFilter) SetFilterRules(v []*FilterRule) *KeyFilter {
13523 return s 15141 return s
13524} 15142}
13525 15143
13526// Container for specifying the AWS Lambda notification configuration. 15144// A container for specifying the configuration for AWS Lambda notifications.
13527type LambdaFunctionConfiguration struct { 15145type LambdaFunctionConfiguration struct {
13528 _ struct{} `type:"structure"` 15146 _ struct{} `type:"structure"`
13529 15147
13530 // Events is a required field 15148 // Events is a required field
13531 Events []*string `locationName:"Event" type:"list" flattened:"true" required:"true"` 15149 Events []*string `locationName:"Event" type:"list" flattened:"true" required:"true"`
13532 15150
13533 // Container for object key name filtering rules. For information about key 15151 // A container for object key name filtering rules. For information about key
13534 // name filtering, go to Configuring Event Notifications (http://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html) 15152 // name filtering, see Configuring Event Notifications (https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html)
13535 // in the Amazon Simple Storage Service Developer Guide. 15153 // in the Amazon Simple Storage Service Developer Guide.
13536 Filter *NotificationConfigurationFilter `type:"structure"` 15154 Filter *NotificationConfigurationFilter `type:"structure"`
13537 15155
13538 // Optional unique identifier for configurations in a notification configuration. 15156 // An optional unique identifier for configurations in a notification configuration.
13539 // If you don't provide one, Amazon S3 will assign an ID. 15157 // If you don't provide one, Amazon S3 will assign an ID.
13540 Id *string `type:"string"` 15158 Id *string `type:"string"`
13541 15159
13542 // Lambda cloud function ARN that Amazon S3 can invoke when it detects events 15160 // The Amazon Resource Name (ARN) of the Lambda cloud function that Amazon S3
13543 // of the specified type. 15161 // can invoke when it detects events of the specified type.
13544 // 15162 //
13545 // LambdaFunctionArn is a required field 15163 // LambdaFunctionArn is a required field
13546 LambdaFunctionArn *string `locationName:"CloudFunction" type:"string" required:"true"` 15164 LambdaFunctionArn *string `locationName:"CloudFunction" type:"string" required:"true"`
@@ -13714,7 +15332,9 @@ type LifecycleRule struct {
13714 NoncurrentVersionTransitions []*NoncurrentVersionTransition `locationName:"NoncurrentVersionTransition" type:"list" flattened:"true"` 15332 NoncurrentVersionTransitions []*NoncurrentVersionTransition `locationName:"NoncurrentVersionTransition" type:"list" flattened:"true"`
13715 15333
13716 // Prefix identifying one or more objects to which the rule applies. This is 15334 // Prefix identifying one or more objects to which the rule applies. This is
13717 // deprecated; use Filter instead. 15335 // No longer used; use Filter instead.
15336 //
15337 // Deprecated: Prefix has been deprecated
13718 Prefix *string `deprecated:"true" type:"string"` 15338 Prefix *string `deprecated:"true" type:"string"`
13719 15339
13720 // If 'Enabled', the rule is currently being applied. If 'Disabled', the rule 15340 // If 'Enabled', the rule is currently being applied. If 'Disabled', the rule
@@ -13957,6 +15577,9 @@ func (s *ListBucketAnalyticsConfigurationsInput) Validate() error {
13957 if s.Bucket == nil { 15577 if s.Bucket == nil {
13958 invalidParams.Add(request.NewErrParamRequired("Bucket")) 15578 invalidParams.Add(request.NewErrParamRequired("Bucket"))
13959 } 15579 }
15580 if s.Bucket != nil && len(*s.Bucket) < 1 {
15581 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
15582 }
13960 15583
13961 if invalidParams.Len() > 0 { 15584 if invalidParams.Len() > 0 {
13962 return invalidParams 15585 return invalidParams
@@ -14068,6 +15691,9 @@ func (s *ListBucketInventoryConfigurationsInput) Validate() error {
14068 if s.Bucket == nil { 15691 if s.Bucket == nil {
14069 invalidParams.Add(request.NewErrParamRequired("Bucket")) 15692 invalidParams.Add(request.NewErrParamRequired("Bucket"))
14070 } 15693 }
15694 if s.Bucket != nil && len(*s.Bucket) < 1 {
15695 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
15696 }
14071 15697
14072 if invalidParams.Len() > 0 { 15698 if invalidParams.Len() > 0 {
14073 return invalidParams 15699 return invalidParams
@@ -14179,6 +15805,9 @@ func (s *ListBucketMetricsConfigurationsInput) Validate() error {
14179 if s.Bucket == nil { 15805 if s.Bucket == nil {
14180 invalidParams.Add(request.NewErrParamRequired("Bucket")) 15806 invalidParams.Add(request.NewErrParamRequired("Bucket"))
14181 } 15807 }
15808 if s.Bucket != nil && len(*s.Bucket) < 1 {
15809 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
15810 }
14182 15811
14183 if invalidParams.Len() > 0 { 15812 if invalidParams.Len() > 0 {
14184 return invalidParams 15813 return invalidParams
@@ -14357,6 +15986,9 @@ func (s *ListMultipartUploadsInput) Validate() error {
14357 if s.Bucket == nil { 15986 if s.Bucket == nil {
14358 invalidParams.Add(request.NewErrParamRequired("Bucket")) 15987 invalidParams.Add(request.NewErrParamRequired("Bucket"))
14359 } 15988 }
15989 if s.Bucket != nil && len(*s.Bucket) < 1 {
15990 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
15991 }
14360 15992
14361 if invalidParams.Len() > 0 { 15993 if invalidParams.Len() > 0 {
14362 return invalidParams 15994 return invalidParams
@@ -14593,6 +16225,9 @@ func (s *ListObjectVersionsInput) Validate() error {
14593 if s.Bucket == nil { 16225 if s.Bucket == nil {
14594 invalidParams.Add(request.NewErrParamRequired("Bucket")) 16226 invalidParams.Add(request.NewErrParamRequired("Bucket"))
14595 } 16227 }
16228 if s.Bucket != nil && len(*s.Bucket) < 1 {
16229 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
16230 }
14596 16231
14597 if invalidParams.Len() > 0 { 16232 if invalidParams.Len() > 0 {
14598 return invalidParams 16233 return invalidParams
@@ -14825,6 +16460,9 @@ func (s *ListObjectsInput) Validate() error {
14825 if s.Bucket == nil { 16460 if s.Bucket == nil {
14826 invalidParams.Add(request.NewErrParamRequired("Bucket")) 16461 invalidParams.Add(request.NewErrParamRequired("Bucket"))
14827 } 16462 }
16463 if s.Bucket != nil && len(*s.Bucket) < 1 {
16464 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
16465 }
14828 16466
14829 if invalidParams.Len() > 0 { 16467 if invalidParams.Len() > 0 {
14830 return invalidParams 16468 return invalidParams
@@ -15042,6 +16680,9 @@ func (s *ListObjectsV2Input) Validate() error {
15042 if s.Bucket == nil { 16680 if s.Bucket == nil {
15043 invalidParams.Add(request.NewErrParamRequired("Bucket")) 16681 invalidParams.Add(request.NewErrParamRequired("Bucket"))
15044 } 16682 }
16683 if s.Bucket != nil && len(*s.Bucket) < 1 {
16684 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
16685 }
15045 16686
15046 if invalidParams.Len() > 0 { 16687 if invalidParams.Len() > 0 {
15047 return invalidParams 16688 return invalidParams
@@ -15287,6 +16928,9 @@ func (s *ListPartsInput) Validate() error {
15287 if s.Bucket == nil { 16928 if s.Bucket == nil {
15288 invalidParams.Add(request.NewErrParamRequired("Bucket")) 16929 invalidParams.Add(request.NewErrParamRequired("Bucket"))
15289 } 16930 }
16931 if s.Bucket != nil && len(*s.Bucket) < 1 {
16932 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
16933 }
15290 if s.Key == nil { 16934 if s.Key == nil {
15291 invalidParams.Add(request.NewErrParamRequired("Key")) 16935 invalidParams.Add(request.NewErrParamRequired("Key"))
15292 } 16936 }
@@ -15980,8 +17624,8 @@ type NoncurrentVersionExpiration struct {
15980 // Specifies the number of days an object is noncurrent before Amazon S3 can 17624 // Specifies the number of days an object is noncurrent before Amazon S3 can
15981 // perform the associated action. For information about the noncurrent days 17625 // perform the associated action. For information about the noncurrent days
15982 // calculations, see How Amazon S3 Calculates When an Object Became Noncurrent 17626 // calculations, see How Amazon S3 Calculates When an Object Became Noncurrent
15983 // (http://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html) in 17627 // (https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html)
15984 // the Amazon Simple Storage Service Developer Guide. 17628 // in the Amazon Simple Storage Service Developer Guide.
15985 NoncurrentDays *int64 `type:"integer"` 17629 NoncurrentDays *int64 `type:"integer"`
15986} 17630}
15987 17631
@@ -16002,19 +17646,20 @@ func (s *NoncurrentVersionExpiration) SetNoncurrentDays(v int64) *NoncurrentVers
16002} 17646}
16003 17647
16004// Container for the transition rule that describes when noncurrent objects 17648// Container for the transition rule that describes when noncurrent objects
16005// transition to the STANDARD_IA, ONEZONE_IA or GLACIER storage class. If your 17649// transition to the STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER or
16006// bucket is versioning-enabled (or versioning is suspended), you can set this 17650// DEEP_ARCHIVE storage class. If your bucket is versioning-enabled (or versioning
16007// action to request that Amazon S3 transition noncurrent object versions to 17651// is suspended), you can set this action to request that Amazon S3 transition
16008// the STANDARD_IA, ONEZONE_IA or GLACIER storage class at a specific period 17652// noncurrent object versions to the STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING,
16009// in the object's lifetime. 17653// GLACIER or DEEP_ARCHIVE storage class at a specific period in the object's
17654// lifetime.
16010type NoncurrentVersionTransition struct { 17655type NoncurrentVersionTransition struct {
16011 _ struct{} `type:"structure"` 17656 _ struct{} `type:"structure"`
16012 17657
16013 // Specifies the number of days an object is noncurrent before Amazon S3 can 17658 // Specifies the number of days an object is noncurrent before Amazon S3 can
16014 // perform the associated action. For information about the noncurrent days 17659 // perform the associated action. For information about the noncurrent days
16015 // calculations, see How Amazon S3 Calculates When an Object Became Noncurrent 17660 // calculations, see How Amazon S3 Calculates When an Object Became Noncurrent
16016 // (http://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html) in 17661 // (https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html)
16017 // the Amazon Simple Storage Service Developer Guide. 17662 // in the Amazon Simple Storage Service Developer Guide.
16018 NoncurrentDays *int64 `type:"integer"` 17663 NoncurrentDays *int64 `type:"integer"`
16019 17664
16020 // The class of storage used to store the object. 17665 // The class of storage used to store the object.
@@ -16043,8 +17688,8 @@ func (s *NoncurrentVersionTransition) SetStorageClass(v string) *NoncurrentVersi
16043 return s 17688 return s
16044} 17689}
16045 17690
16046// Container for specifying the notification configuration of the bucket. If 17691// A container for specifying the notification configuration of the bucket.
16047// this element is empty, notifications are turned off on the bucket. 17692// If this element is empty, notifications are turned off for the bucket.
16048type NotificationConfiguration struct { 17693type NotificationConfiguration struct {
16049 _ struct{} `type:"structure"` 17694 _ struct{} `type:"structure"`
16050 17695
@@ -16161,13 +17806,13 @@ func (s *NotificationConfigurationDeprecated) SetTopicConfiguration(v *TopicConf
16161 return s 17806 return s
16162} 17807}
16163 17808
16164// Container for object key name filtering rules. For information about key 17809// A container for object key name filtering rules. For information about key
16165// name filtering, go to Configuring Event Notifications (http://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html) 17810// name filtering, see Configuring Event Notifications (https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html)
16166// in the Amazon Simple Storage Service Developer Guide. 17811// in the Amazon Simple Storage Service Developer Guide.
16167type NotificationConfigurationFilter struct { 17812type NotificationConfigurationFilter struct {
16168 _ struct{} `type:"structure"` 17813 _ struct{} `type:"structure"`
16169 17814
16170 // Container for object key name prefix and suffix filtering rules. 17815 // A container for object key name prefix and suffix filtering rules.
16171 Key *KeyFilter `locationName:"S3Key" type:"structure"` 17816 Key *KeyFilter `locationName:"S3Key" type:"structure"`
16172} 17817}
16173 17818
@@ -16300,6 +17945,121 @@ func (s *ObjectIdentifier) SetVersionId(v string) *ObjectIdentifier {
16300 return s 17945 return s
16301} 17946}
16302 17947
17948// The container element for Object Lock configuration parameters.
17949type ObjectLockConfiguration struct {
17950 _ struct{} `type:"structure"`
17951
17952 // Indicates whether this bucket has an Object Lock configuration enabled.
17953 ObjectLockEnabled *string `type:"string" enum:"ObjectLockEnabled"`
17954
17955 // The Object Lock rule in place for the specified object.
17956 Rule *ObjectLockRule `type:"structure"`
17957}
17958
17959// String returns the string representation
17960func (s ObjectLockConfiguration) String() string {
17961 return awsutil.Prettify(s)
17962}
17963
17964// GoString returns the string representation
17965func (s ObjectLockConfiguration) GoString() string {
17966 return s.String()
17967}
17968
17969// SetObjectLockEnabled sets the ObjectLockEnabled field's value.
17970func (s *ObjectLockConfiguration) SetObjectLockEnabled(v string) *ObjectLockConfiguration {
17971 s.ObjectLockEnabled = &v
17972 return s
17973}
17974
17975// SetRule sets the Rule field's value.
17976func (s *ObjectLockConfiguration) SetRule(v *ObjectLockRule) *ObjectLockConfiguration {
17977 s.Rule = v
17978 return s
17979}
17980
17981// A Legal Hold configuration for an object.
17982type ObjectLockLegalHold struct {
17983 _ struct{} `type:"structure"`
17984
17985 // Indicates whether the specified object has a Legal Hold in place.
17986 Status *string `type:"string" enum:"ObjectLockLegalHoldStatus"`
17987}
17988
17989// String returns the string representation
17990func (s ObjectLockLegalHold) String() string {
17991 return awsutil.Prettify(s)
17992}
17993
17994// GoString returns the string representation
17995func (s ObjectLockLegalHold) GoString() string {
17996 return s.String()
17997}
17998
17999// SetStatus sets the Status field's value.
18000func (s *ObjectLockLegalHold) SetStatus(v string) *ObjectLockLegalHold {
18001 s.Status = &v
18002 return s
18003}
18004
18005// A Retention configuration for an object.
18006type ObjectLockRetention struct {
18007 _ struct{} `type:"structure"`
18008
18009 // Indicates the Retention mode for the specified object.
18010 Mode *string `type:"string" enum:"ObjectLockRetentionMode"`
18011
18012 // The date on which this Object Lock Retention will expire.
18013 RetainUntilDate *time.Time `type:"timestamp" timestampFormat:"iso8601"`
18014}
18015
18016// String returns the string representation
18017func (s ObjectLockRetention) String() string {
18018 return awsutil.Prettify(s)
18019}
18020
18021// GoString returns the string representation
18022func (s ObjectLockRetention) GoString() string {
18023 return s.String()
18024}
18025
18026// SetMode sets the Mode field's value.
18027func (s *ObjectLockRetention) SetMode(v string) *ObjectLockRetention {
18028 s.Mode = &v
18029 return s
18030}
18031
18032// SetRetainUntilDate sets the RetainUntilDate field's value.
18033func (s *ObjectLockRetention) SetRetainUntilDate(v time.Time) *ObjectLockRetention {
18034 s.RetainUntilDate = &v
18035 return s
18036}
18037
18038// The container element for an Object Lock rule.
18039type ObjectLockRule struct {
18040 _ struct{} `type:"structure"`
18041
18042 // The default retention period that you want to apply to new objects placed
18043 // in the specified bucket.
18044 DefaultRetention *DefaultRetention `type:"structure"`
18045}
18046
18047// String returns the string representation
18048func (s ObjectLockRule) String() string {
18049 return awsutil.Prettify(s)
18050}
18051
18052// GoString returns the string representation
18053func (s ObjectLockRule) GoString() string {
18054 return s.String()
18055}
18056
18057// SetDefaultRetention sets the DefaultRetention field's value.
18058func (s *ObjectLockRule) SetDefaultRetention(v *DefaultRetention) *ObjectLockRule {
18059 s.DefaultRetention = v
18060 return s
18061}
18062
16303type ObjectVersion struct { 18063type ObjectVersion struct {
16304 _ struct{} `type:"structure"` 18064 _ struct{} `type:"structure"`
16305 18065
@@ -16487,6 +18247,20 @@ func (s *Owner) SetID(v string) *Owner {
16487 return s 18247 return s
16488} 18248}
16489 18249
18250type ParquetInput struct {
18251 _ struct{} `type:"structure"`
18252}
18253
18254// String returns the string representation
18255func (s ParquetInput) String() string {
18256 return awsutil.Prettify(s)
18257}
18258
18259// GoString returns the string representation
18260func (s ParquetInput) GoString() string {
18261 return s.String()
18262}
18263
16490type Part struct { 18264type Part struct {
16491 _ struct{} `type:"structure"` 18265 _ struct{} `type:"structure"`
16492 18266
@@ -16500,7 +18274,7 @@ type Part struct {
16500 // 10,000. 18274 // 10,000.
16501 PartNumber *int64 `type:"integer"` 18275 PartNumber *int64 `type:"integer"`
16502 18276
16503 // Size of the uploaded part data. 18277 // Size in bytes of the uploaded part data.
16504 Size *int64 `type:"integer"` 18278 Size *int64 `type:"integer"`
16505} 18279}
16506 18280
@@ -16538,16 +18312,41 @@ func (s *Part) SetSize(v int64) *Part {
16538 return s 18312 return s
16539} 18313}
16540 18314
18315// The container element for a bucket's policy status.
18316type PolicyStatus struct {
18317 _ struct{} `type:"structure"`
18318
18319 // The policy status for this bucket. TRUE indicates that this bucket is public.
18320 // FALSE indicates that the bucket is not public.
18321 IsPublic *bool `locationName:"IsPublic" type:"boolean"`
18322}
18323
18324// String returns the string representation
18325func (s PolicyStatus) String() string {
18326 return awsutil.Prettify(s)
18327}
18328
18329// GoString returns the string representation
18330func (s PolicyStatus) GoString() string {
18331 return s.String()
18332}
18333
18334// SetIsPublic sets the IsPublic field's value.
18335func (s *PolicyStatus) SetIsPublic(v bool) *PolicyStatus {
18336 s.IsPublic = &v
18337 return s
18338}
18339
16541type Progress struct { 18340type Progress struct {
16542 _ struct{} `type:"structure"` 18341 _ struct{} `type:"structure"`
16543 18342
16544 // Current number of uncompressed object bytes processed. 18343 // The current number of uncompressed object bytes processed.
16545 BytesProcessed *int64 `type:"long"` 18344 BytesProcessed *int64 `type:"long"`
16546 18345
16547 // Current number of bytes of records payload data returned. 18346 // The current number of bytes of records payload data returned.
16548 BytesReturned *int64 `type:"long"` 18347 BytesReturned *int64 `type:"long"`
16549 18348
16550 // Current number of object bytes scanned. 18349 // The current number of object bytes scanned.
16551 BytesScanned *int64 `type:"long"` 18350 BytesScanned *int64 `type:"long"`
16552} 18351}
16553 18352
@@ -16619,6 +18418,81 @@ func (s *ProgressEvent) UnmarshalEvent(
16619 return nil 18418 return nil
16620} 18419}
16621 18420
18421type PublicAccessBlockConfiguration struct {
18422 _ struct{} `type:"structure"`
18423
18424 // Specifies whether Amazon S3 should block public access control lists (ACLs)
18425 // for this bucket and objects in this bucket. Setting this element to TRUE
18426 // causes the following behavior:
18427 //
18428 // * PUT Bucket acl and PUT Object acl calls fail if the specified ACL is
18429 // public.
18430 //
18431 // * PUT Object calls fail if the request includes a public ACL.
18432 //
18433 // Enabling this setting doesn't affect existing policies or ACLs.
18434 BlockPublicAcls *bool `locationName:"BlockPublicAcls" type:"boolean"`
18435
18436 // Specifies whether Amazon S3 should block public bucket policies for this
18437 // bucket. Setting this element to TRUE causes Amazon S3 to reject calls to
18438 // PUT Bucket policy if the specified bucket policy allows public access.
18439 //
18440 // Enabling this setting doesn't affect existing bucket policies.
18441 BlockPublicPolicy *bool `locationName:"BlockPublicPolicy" type:"boolean"`
18442
18443 // Specifies whether Amazon S3 should ignore public ACLs for this bucket and
18444 // objects in this bucket. Setting this element to TRUE causes Amazon S3 to
18445 // ignore all public ACLs on this bucket and objects in this bucket.
18446 //
18447 // Enabling this setting doesn't affect the persistence of any existing ACLs
18448 // and doesn't prevent new public ACLs from being set.
18449 IgnorePublicAcls *bool `locationName:"IgnorePublicAcls" type:"boolean"`
18450
18451 // Specifies whether Amazon S3 should restrict public bucket policies for this
18452 // bucket. Setting this element to TRUE restricts access to this bucket to only
18453 // AWS services and authorized users within this account if the bucket has a
18454 // public policy.
18455 //
18456 // Enabling this setting doesn't affect previously stored bucket policies, except
18457 // that public and cross-account access within any public bucket policy, including
18458 // non-public delegation to specific accounts, is blocked.
18459 RestrictPublicBuckets *bool `locationName:"RestrictPublicBuckets" type:"boolean"`
18460}
18461
18462// String returns the string representation
18463func (s PublicAccessBlockConfiguration) String() string {
18464 return awsutil.Prettify(s)
18465}
18466
18467// GoString returns the string representation
18468func (s PublicAccessBlockConfiguration) GoString() string {
18469 return s.String()
18470}
18471
18472// SetBlockPublicAcls sets the BlockPublicAcls field's value.
18473func (s *PublicAccessBlockConfiguration) SetBlockPublicAcls(v bool) *PublicAccessBlockConfiguration {
18474 s.BlockPublicAcls = &v
18475 return s
18476}
18477
18478// SetBlockPublicPolicy sets the BlockPublicPolicy field's value.
18479func (s *PublicAccessBlockConfiguration) SetBlockPublicPolicy(v bool) *PublicAccessBlockConfiguration {
18480 s.BlockPublicPolicy = &v
18481 return s
18482}
18483
18484// SetIgnorePublicAcls sets the IgnorePublicAcls field's value.
18485func (s *PublicAccessBlockConfiguration) SetIgnorePublicAcls(v bool) *PublicAccessBlockConfiguration {
18486 s.IgnorePublicAcls = &v
18487 return s
18488}
18489
18490// SetRestrictPublicBuckets sets the RestrictPublicBuckets field's value.
18491func (s *PublicAccessBlockConfiguration) SetRestrictPublicBuckets(v bool) *PublicAccessBlockConfiguration {
18492 s.RestrictPublicBuckets = &v
18493 return s
18494}
18495
16622type PutBucketAccelerateConfigurationInput struct { 18496type PutBucketAccelerateConfigurationInput struct {
16623 _ struct{} `type:"structure" payload:"AccelerateConfiguration"` 18497 _ struct{} `type:"structure" payload:"AccelerateConfiguration"`
16624 18498
@@ -16652,6 +18526,9 @@ func (s *PutBucketAccelerateConfigurationInput) Validate() error {
16652 if s.Bucket == nil { 18526 if s.Bucket == nil {
16653 invalidParams.Add(request.NewErrParamRequired("Bucket")) 18527 invalidParams.Add(request.NewErrParamRequired("Bucket"))
16654 } 18528 }
18529 if s.Bucket != nil && len(*s.Bucket) < 1 {
18530 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
18531 }
16655 18532
16656 if invalidParams.Len() > 0 { 18533 if invalidParams.Len() > 0 {
16657 return invalidParams 18534 return invalidParams
@@ -16736,6 +18613,9 @@ func (s *PutBucketAclInput) Validate() error {
16736 if s.Bucket == nil { 18613 if s.Bucket == nil {
16737 invalidParams.Add(request.NewErrParamRequired("Bucket")) 18614 invalidParams.Add(request.NewErrParamRequired("Bucket"))
16738 } 18615 }
18616 if s.Bucket != nil && len(*s.Bucket) < 1 {
18617 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
18618 }
16739 if s.AccessControlPolicy != nil { 18619 if s.AccessControlPolicy != nil {
16740 if err := s.AccessControlPolicy.Validate(); err != nil { 18620 if err := s.AccessControlPolicy.Validate(); err != nil {
16741 invalidParams.AddNested("AccessControlPolicy", err.(request.ErrInvalidParams)) 18621 invalidParams.AddNested("AccessControlPolicy", err.(request.ErrInvalidParams))
@@ -16855,6 +18735,9 @@ func (s *PutBucketAnalyticsConfigurationInput) Validate() error {
16855 if s.Bucket == nil { 18735 if s.Bucket == nil {
16856 invalidParams.Add(request.NewErrParamRequired("Bucket")) 18736 invalidParams.Add(request.NewErrParamRequired("Bucket"))
16857 } 18737 }
18738 if s.Bucket != nil && len(*s.Bucket) < 1 {
18739 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
18740 }
16858 if s.Id == nil { 18741 if s.Id == nil {
16859 invalidParams.Add(request.NewErrParamRequired("Id")) 18742 invalidParams.Add(request.NewErrParamRequired("Id"))
16860 } 18743 }
@@ -16935,6 +18818,9 @@ func (s *PutBucketCorsInput) Validate() error {
16935 if s.Bucket == nil { 18818 if s.Bucket == nil {
16936 invalidParams.Add(request.NewErrParamRequired("Bucket")) 18819 invalidParams.Add(request.NewErrParamRequired("Bucket"))
16937 } 18820 }
18821 if s.Bucket != nil && len(*s.Bucket) < 1 {
18822 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
18823 }
16938 if s.CORSConfiguration == nil { 18824 if s.CORSConfiguration == nil {
16939 invalidParams.Add(request.NewErrParamRequired("CORSConfiguration")) 18825 invalidParams.Add(request.NewErrParamRequired("CORSConfiguration"))
16940 } 18826 }
@@ -17015,6 +18901,9 @@ func (s *PutBucketEncryptionInput) Validate() error {
17015 if s.Bucket == nil { 18901 if s.Bucket == nil {
17016 invalidParams.Add(request.NewErrParamRequired("Bucket")) 18902 invalidParams.Add(request.NewErrParamRequired("Bucket"))
17017 } 18903 }
18904 if s.Bucket != nil && len(*s.Bucket) < 1 {
18905 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
18906 }
17018 if s.ServerSideEncryptionConfiguration == nil { 18907 if s.ServerSideEncryptionConfiguration == nil {
17019 invalidParams.Add(request.NewErrParamRequired("ServerSideEncryptionConfiguration")) 18908 invalidParams.Add(request.NewErrParamRequired("ServerSideEncryptionConfiguration"))
17020 } 18909 }
@@ -17098,6 +18987,9 @@ func (s *PutBucketInventoryConfigurationInput) Validate() error {
17098 if s.Bucket == nil { 18987 if s.Bucket == nil {
17099 invalidParams.Add(request.NewErrParamRequired("Bucket")) 18988 invalidParams.Add(request.NewErrParamRequired("Bucket"))
17100 } 18989 }
18990 if s.Bucket != nil && len(*s.Bucket) < 1 {
18991 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
18992 }
17101 if s.Id == nil { 18993 if s.Id == nil {
17102 invalidParams.Add(request.NewErrParamRequired("Id")) 18994 invalidParams.Add(request.NewErrParamRequired("Id"))
17103 } 18995 }
@@ -17180,6 +19072,9 @@ func (s *PutBucketLifecycleConfigurationInput) Validate() error {
17180 if s.Bucket == nil { 19072 if s.Bucket == nil {
17181 invalidParams.Add(request.NewErrParamRequired("Bucket")) 19073 invalidParams.Add(request.NewErrParamRequired("Bucket"))
17182 } 19074 }
19075 if s.Bucket != nil && len(*s.Bucket) < 1 {
19076 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
19077 }
17183 if s.LifecycleConfiguration != nil { 19078 if s.LifecycleConfiguration != nil {
17184 if err := s.LifecycleConfiguration.Validate(); err != nil { 19079 if err := s.LifecycleConfiguration.Validate(); err != nil {
17185 invalidParams.AddNested("LifecycleConfiguration", err.(request.ErrInvalidParams)) 19080 invalidParams.AddNested("LifecycleConfiguration", err.(request.ErrInvalidParams))
@@ -17250,6 +19145,9 @@ func (s *PutBucketLifecycleInput) Validate() error {
17250 if s.Bucket == nil { 19145 if s.Bucket == nil {
17251 invalidParams.Add(request.NewErrParamRequired("Bucket")) 19146 invalidParams.Add(request.NewErrParamRequired("Bucket"))
17252 } 19147 }
19148 if s.Bucket != nil && len(*s.Bucket) < 1 {
19149 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
19150 }
17253 if s.LifecycleConfiguration != nil { 19151 if s.LifecycleConfiguration != nil {
17254 if err := s.LifecycleConfiguration.Validate(); err != nil { 19152 if err := s.LifecycleConfiguration.Validate(); err != nil {
17255 invalidParams.AddNested("LifecycleConfiguration", err.(request.ErrInvalidParams)) 19153 invalidParams.AddNested("LifecycleConfiguration", err.(request.ErrInvalidParams))
@@ -17321,6 +19219,9 @@ func (s *PutBucketLoggingInput) Validate() error {
17321 if s.Bucket == nil { 19219 if s.Bucket == nil {
17322 invalidParams.Add(request.NewErrParamRequired("Bucket")) 19220 invalidParams.Add(request.NewErrParamRequired("Bucket"))
17323 } 19221 }
19222 if s.Bucket != nil && len(*s.Bucket) < 1 {
19223 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
19224 }
17324 if s.BucketLoggingStatus == nil { 19225 if s.BucketLoggingStatus == nil {
17325 invalidParams.Add(request.NewErrParamRequired("BucketLoggingStatus")) 19226 invalidParams.Add(request.NewErrParamRequired("BucketLoggingStatus"))
17326 } 19227 }
@@ -17404,6 +19305,9 @@ func (s *PutBucketMetricsConfigurationInput) Validate() error {
17404 if s.Bucket == nil { 19305 if s.Bucket == nil {
17405 invalidParams.Add(request.NewErrParamRequired("Bucket")) 19306 invalidParams.Add(request.NewErrParamRequired("Bucket"))
17406 } 19307 }
19308 if s.Bucket != nil && len(*s.Bucket) < 1 {
19309 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
19310 }
17407 if s.Id == nil { 19311 if s.Id == nil {
17408 invalidParams.Add(request.NewErrParamRequired("Id")) 19312 invalidParams.Add(request.NewErrParamRequired("Id"))
17409 } 19313 }
@@ -17467,8 +19371,8 @@ type PutBucketNotificationConfigurationInput struct {
17467 // Bucket is a required field 19371 // Bucket is a required field
17468 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` 19372 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
17469 19373
17470 // Container for specifying the notification configuration of the bucket. If 19374 // A container for specifying the notification configuration of the bucket.
17471 // this element is empty, notifications are turned off on the bucket. 19375 // If this element is empty, notifications are turned off for the bucket.
17472 // 19376 //
17473 // NotificationConfiguration is a required field 19377 // NotificationConfiguration is a required field
17474 NotificationConfiguration *NotificationConfiguration `locationName:"NotificationConfiguration" type:"structure" required:"true" xmlURI:"http://s3.amazonaws.com/doc/2006-03-01/"` 19378 NotificationConfiguration *NotificationConfiguration `locationName:"NotificationConfiguration" type:"structure" required:"true" xmlURI:"http://s3.amazonaws.com/doc/2006-03-01/"`
@@ -17490,6 +19394,9 @@ func (s *PutBucketNotificationConfigurationInput) Validate() error {
17490 if s.Bucket == nil { 19394 if s.Bucket == nil {
17491 invalidParams.Add(request.NewErrParamRequired("Bucket")) 19395 invalidParams.Add(request.NewErrParamRequired("Bucket"))
17492 } 19396 }
19397 if s.Bucket != nil && len(*s.Bucket) < 1 {
19398 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
19399 }
17493 if s.NotificationConfiguration == nil { 19400 if s.NotificationConfiguration == nil {
17494 invalidParams.Add(request.NewErrParamRequired("NotificationConfiguration")) 19401 invalidParams.Add(request.NewErrParamRequired("NotificationConfiguration"))
17495 } 19402 }
@@ -17564,6 +19471,9 @@ func (s *PutBucketNotificationInput) Validate() error {
17564 if s.Bucket == nil { 19471 if s.Bucket == nil {
17565 invalidParams.Add(request.NewErrParamRequired("Bucket")) 19472 invalidParams.Add(request.NewErrParamRequired("Bucket"))
17566 } 19473 }
19474 if s.Bucket != nil && len(*s.Bucket) < 1 {
19475 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
19476 }
17567 if s.NotificationConfiguration == nil { 19477 if s.NotificationConfiguration == nil {
17568 invalidParams.Add(request.NewErrParamRequired("NotificationConfiguration")) 19478 invalidParams.Add(request.NewErrParamRequired("NotificationConfiguration"))
17569 } 19479 }
@@ -17639,6 +19549,9 @@ func (s *PutBucketPolicyInput) Validate() error {
17639 if s.Bucket == nil { 19549 if s.Bucket == nil {
17640 invalidParams.Add(request.NewErrParamRequired("Bucket")) 19550 invalidParams.Add(request.NewErrParamRequired("Bucket"))
17641 } 19551 }
19552 if s.Bucket != nil && len(*s.Bucket) < 1 {
19553 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
19554 }
17642 if s.Policy == nil { 19555 if s.Policy == nil {
17643 invalidParams.Add(request.NewErrParamRequired("Policy")) 19556 invalidParams.Add(request.NewErrParamRequired("Policy"))
17644 } 19557 }
@@ -17694,8 +19607,8 @@ type PutBucketReplicationInput struct {
17694 // Bucket is a required field 19607 // Bucket is a required field
17695 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` 19608 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
17696 19609
17697 // Container for replication rules. You can add as many as 1,000 rules. Total 19610 // A container for replication rules. You can add up to 1,000 rules. The maximum
17698 // replication configuration size can be up to 2 MB. 19611 // size of a replication configuration is 2 MB.
17699 // 19612 //
17700 // ReplicationConfiguration is a required field 19613 // ReplicationConfiguration is a required field
17701 ReplicationConfiguration *ReplicationConfiguration `locationName:"ReplicationConfiguration" type:"structure" required:"true" xmlURI:"http://s3.amazonaws.com/doc/2006-03-01/"` 19614 ReplicationConfiguration *ReplicationConfiguration `locationName:"ReplicationConfiguration" type:"structure" required:"true" xmlURI:"http://s3.amazonaws.com/doc/2006-03-01/"`
@@ -17717,6 +19630,9 @@ func (s *PutBucketReplicationInput) Validate() error {
17717 if s.Bucket == nil { 19630 if s.Bucket == nil {
17718 invalidParams.Add(request.NewErrParamRequired("Bucket")) 19631 invalidParams.Add(request.NewErrParamRequired("Bucket"))
17719 } 19632 }
19633 if s.Bucket != nil && len(*s.Bucket) < 1 {
19634 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
19635 }
17720 if s.ReplicationConfiguration == nil { 19636 if s.ReplicationConfiguration == nil {
17721 invalidParams.Add(request.NewErrParamRequired("ReplicationConfiguration")) 19637 invalidParams.Add(request.NewErrParamRequired("ReplicationConfiguration"))
17722 } 19638 }
@@ -17791,6 +19707,9 @@ func (s *PutBucketRequestPaymentInput) Validate() error {
17791 if s.Bucket == nil { 19707 if s.Bucket == nil {
17792 invalidParams.Add(request.NewErrParamRequired("Bucket")) 19708 invalidParams.Add(request.NewErrParamRequired("Bucket"))
17793 } 19709 }
19710 if s.Bucket != nil && len(*s.Bucket) < 1 {
19711 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
19712 }
17794 if s.RequestPaymentConfiguration == nil { 19713 if s.RequestPaymentConfiguration == nil {
17795 invalidParams.Add(request.NewErrParamRequired("RequestPaymentConfiguration")) 19714 invalidParams.Add(request.NewErrParamRequired("RequestPaymentConfiguration"))
17796 } 19715 }
@@ -17865,6 +19784,9 @@ func (s *PutBucketTaggingInput) Validate() error {
17865 if s.Bucket == nil { 19784 if s.Bucket == nil {
17866 invalidParams.Add(request.NewErrParamRequired("Bucket")) 19785 invalidParams.Add(request.NewErrParamRequired("Bucket"))
17867 } 19786 }
19787 if s.Bucket != nil && len(*s.Bucket) < 1 {
19788 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
19789 }
17868 if s.Tagging == nil { 19790 if s.Tagging == nil {
17869 invalidParams.Add(request.NewErrParamRequired("Tagging")) 19791 invalidParams.Add(request.NewErrParamRequired("Tagging"))
17870 } 19792 }
@@ -17943,6 +19865,9 @@ func (s *PutBucketVersioningInput) Validate() error {
17943 if s.Bucket == nil { 19865 if s.Bucket == nil {
17944 invalidParams.Add(request.NewErrParamRequired("Bucket")) 19866 invalidParams.Add(request.NewErrParamRequired("Bucket"))
17945 } 19867 }
19868 if s.Bucket != nil && len(*s.Bucket) < 1 {
19869 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
19870 }
17946 if s.VersioningConfiguration == nil { 19871 if s.VersioningConfiguration == nil {
17947 invalidParams.Add(request.NewErrParamRequired("VersioningConfiguration")) 19872 invalidParams.Add(request.NewErrParamRequired("VersioningConfiguration"))
17948 } 19873 }
@@ -18018,6 +19943,9 @@ func (s *PutBucketWebsiteInput) Validate() error {
18018 if s.Bucket == nil { 19943 if s.Bucket == nil {
18019 invalidParams.Add(request.NewErrParamRequired("Bucket")) 19944 invalidParams.Add(request.NewErrParamRequired("Bucket"))
18020 } 19945 }
19946 if s.Bucket != nil && len(*s.Bucket) < 1 {
19947 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
19948 }
18021 if s.WebsiteConfiguration == nil { 19949 if s.WebsiteConfiguration == nil {
18022 invalidParams.Add(request.NewErrParamRequired("WebsiteConfiguration")) 19950 invalidParams.Add(request.NewErrParamRequired("WebsiteConfiguration"))
18023 } 19951 }
@@ -18122,6 +20050,9 @@ func (s *PutObjectAclInput) Validate() error {
18122 if s.Bucket == nil { 20050 if s.Bucket == nil {
18123 invalidParams.Add(request.NewErrParamRequired("Bucket")) 20051 invalidParams.Add(request.NewErrParamRequired("Bucket"))
18124 } 20052 }
20053 if s.Bucket != nil && len(*s.Bucket) < 1 {
20054 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
20055 }
18125 if s.Key == nil { 20056 if s.Key == nil {
18126 invalidParams.Add(request.NewErrParamRequired("Key")) 20057 invalidParams.Add(request.NewErrParamRequired("Key"))
18127 } 20058 }
@@ -18269,7 +20200,8 @@ type PutObjectInput struct {
18269 // body cannot be determined automatically. 20200 // body cannot be determined automatically.
18270 ContentLength *int64 `location:"header" locationName:"Content-Length" type:"long"` 20201 ContentLength *int64 `location:"header" locationName:"Content-Length" type:"long"`
18271 20202
18272 // The base64-encoded 128-bit MD5 digest of the part data. 20203 // The base64-encoded 128-bit MD5 digest of the part data. This parameter is
20204 // auto-populated when using the command from the CLI
18273 ContentMD5 *string `location:"header" locationName:"Content-MD5" type:"string"` 20205 ContentMD5 *string `location:"header" locationName:"Content-MD5" type:"string"`
18274 20206
18275 // A standard MIME type describing the format of the object data. 20207 // A standard MIME type describing the format of the object data.
@@ -18298,6 +20230,15 @@ type PutObjectInput struct {
18298 // A map of metadata to store with the object in S3. 20230 // A map of metadata to store with the object in S3.
18299 Metadata map[string]*string `location:"headers" locationName:"x-amz-meta-" type:"map"` 20231 Metadata map[string]*string `location:"headers" locationName:"x-amz-meta-" type:"map"`
18300 20232
20233 // The Legal Hold status that you want to apply to the specified object.
20234 ObjectLockLegalHoldStatus *string `location:"header" locationName:"x-amz-object-lock-legal-hold" type:"string" enum:"ObjectLockLegalHoldStatus"`
20235
20236 // The Object Lock mode that you want to apply to this object.
20237 ObjectLockMode *string `location:"header" locationName:"x-amz-object-lock-mode" type:"string" enum:"ObjectLockMode"`
20238
20239 // The date and time when you want this object's Object Lock to expire.
20240 ObjectLockRetainUntilDate *time.Time `location:"header" locationName:"x-amz-object-lock-retain-until-date" type:"timestamp" timestampFormat:"iso8601"`
20241
18301 // Confirms that the requester knows that she or he will be charged for the 20242 // Confirms that the requester knows that she or he will be charged for the
18302 // request. Bucket owners need not specify this parameter in their requests. 20243 // request. Bucket owners need not specify this parameter in their requests.
18303 // Documentation on downloading objects from requester pays buckets can be found 20244 // Documentation on downloading objects from requester pays buckets can be found
@@ -18312,7 +20253,7 @@ type PutObjectInput struct {
18312 // does not store the encryption key. The key must be appropriate for use with 20253 // does not store the encryption key. The key must be appropriate for use with
18313 // the algorithm specified in the x-amz-server-side​-encryption​-customer-algorithm 20254 // the algorithm specified in the x-amz-server-side​-encryption​-customer-algorithm
18314 // header. 20255 // header.
18315 SSECustomerKey *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key" type:"string"` 20256 SSECustomerKey *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key" type:"string" sensitive:"true"`
18316 20257
18317 // Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. 20258 // Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321.
18318 // Amazon S3 uses this header for a message integrity check to ensure the encryption 20259 // Amazon S3 uses this header for a message integrity check to ensure the encryption
@@ -18323,7 +20264,7 @@ type PutObjectInput struct {
18323 // requests for an object protected by AWS KMS will fail if not made via SSL 20264 // requests for an object protected by AWS KMS will fail if not made via SSL
18324 // or using SigV4. Documentation on configuring any of the officially supported 20265 // or using SigV4. Documentation on configuring any of the officially supported
18325 // AWS SDKs and CLI can be found at http://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version 20266 // AWS SDKs and CLI can be found at http://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version
18326 SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string"` 20267 SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string" sensitive:"true"`
18327 20268
18328 // The Server-side encryption algorithm used when storing this object in S3 20269 // The Server-side encryption algorithm used when storing this object in S3
18329 // (e.g., AES256, aws:kms). 20270 // (e.g., AES256, aws:kms).
@@ -18332,7 +20273,8 @@ type PutObjectInput struct {
18332 // The type of storage to use for the object. Defaults to 'STANDARD'. 20273 // The type of storage to use for the object. Defaults to 'STANDARD'.
18333 StorageClass *string `location:"header" locationName:"x-amz-storage-class" type:"string" enum:"StorageClass"` 20274 StorageClass *string `location:"header" locationName:"x-amz-storage-class" type:"string" enum:"StorageClass"`
18334 20275
18335 // The tag-set for the object. The tag-set must be encoded as URL Query parameters 20276 // The tag-set for the object. The tag-set must be encoded as URL Query parameters.
20277 // (For example, "Key1=Value1")
18336 Tagging *string `location:"header" locationName:"x-amz-tagging" type:"string"` 20278 Tagging *string `location:"header" locationName:"x-amz-tagging" type:"string"`
18337 20279
18338 // If the bucket is configured as a website, redirects requests for this object 20280 // If the bucket is configured as a website, redirects requests for this object
@@ -18357,6 +20299,9 @@ func (s *PutObjectInput) Validate() error {
18357 if s.Bucket == nil { 20299 if s.Bucket == nil {
18358 invalidParams.Add(request.NewErrParamRequired("Bucket")) 20300 invalidParams.Add(request.NewErrParamRequired("Bucket"))
18359 } 20301 }
20302 if s.Bucket != nil && len(*s.Bucket) < 1 {
20303 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
20304 }
18360 if s.Key == nil { 20305 if s.Key == nil {
18361 invalidParams.Add(request.NewErrParamRequired("Key")) 20306 invalidParams.Add(request.NewErrParamRequired("Key"))
18362 } 20307 }
@@ -18479,6 +20424,24 @@ func (s *PutObjectInput) SetMetadata(v map[string]*string) *PutObjectInput {
18479 return s 20424 return s
18480} 20425}
18481 20426
20427// SetObjectLockLegalHoldStatus sets the ObjectLockLegalHoldStatus field's value.
20428func (s *PutObjectInput) SetObjectLockLegalHoldStatus(v string) *PutObjectInput {
20429 s.ObjectLockLegalHoldStatus = &v
20430 return s
20431}
20432
20433// SetObjectLockMode sets the ObjectLockMode field's value.
20434func (s *PutObjectInput) SetObjectLockMode(v string) *PutObjectInput {
20435 s.ObjectLockMode = &v
20436 return s
20437}
20438
20439// SetObjectLockRetainUntilDate sets the ObjectLockRetainUntilDate field's value.
20440func (s *PutObjectInput) SetObjectLockRetainUntilDate(v time.Time) *PutObjectInput {
20441 s.ObjectLockRetainUntilDate = &v
20442 return s
20443}
20444
18482// SetRequestPayer sets the RequestPayer field's value. 20445// SetRequestPayer sets the RequestPayer field's value.
18483func (s *PutObjectInput) SetRequestPayer(v string) *PutObjectInput { 20446func (s *PutObjectInput) SetRequestPayer(v string) *PutObjectInput {
18484 s.RequestPayer = &v 20447 s.RequestPayer = &v
@@ -18540,6 +20503,228 @@ func (s *PutObjectInput) SetWebsiteRedirectLocation(v string) *PutObjectInput {
18540 return s 20503 return s
18541} 20504}
18542 20505
20506type PutObjectLegalHoldInput struct {
20507 _ struct{} `type:"structure" payload:"LegalHold"`
20508
20509 // The bucket containing the object that you want to place a Legal Hold on.
20510 //
20511 // Bucket is a required field
20512 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
20513
20514 // The key name for the object that you want to place a Legal Hold on.
20515 //
20516 // Key is a required field
20517 Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"`
20518
20519 // Container element for the Legal Hold configuration you want to apply to the
20520 // specified object.
20521 LegalHold *ObjectLockLegalHold `locationName:"LegalHold" type:"structure" xmlURI:"http://s3.amazonaws.com/doc/2006-03-01/"`
20522
20523 // Confirms that the requester knows that she or he will be charged for the
20524 // request. Bucket owners need not specify this parameter in their requests.
20525 // Documentation on downloading objects from requester pays buckets can be found
20526 // at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
20527 RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
20528
20529 // The version ID of the object that you want to place a Legal Hold on.
20530 VersionId *string `location:"querystring" locationName:"versionId" type:"string"`
20531}
20532
20533// String returns the string representation
20534func (s PutObjectLegalHoldInput) String() string {
20535 return awsutil.Prettify(s)
20536}
20537
20538// GoString returns the string representation
20539func (s PutObjectLegalHoldInput) GoString() string {
20540 return s.String()
20541}
20542
20543// Validate inspects the fields of the type to determine if they are valid.
20544func (s *PutObjectLegalHoldInput) Validate() error {
20545 invalidParams := request.ErrInvalidParams{Context: "PutObjectLegalHoldInput"}
20546 if s.Bucket == nil {
20547 invalidParams.Add(request.NewErrParamRequired("Bucket"))
20548 }
20549 if s.Bucket != nil && len(*s.Bucket) < 1 {
20550 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
20551 }
20552 if s.Key == nil {
20553 invalidParams.Add(request.NewErrParamRequired("Key"))
20554 }
20555 if s.Key != nil && len(*s.Key) < 1 {
20556 invalidParams.Add(request.NewErrParamMinLen("Key", 1))
20557 }
20558
20559 if invalidParams.Len() > 0 {
20560 return invalidParams
20561 }
20562 return nil
20563}
20564
20565// SetBucket sets the Bucket field's value.
20566func (s *PutObjectLegalHoldInput) SetBucket(v string) *PutObjectLegalHoldInput {
20567 s.Bucket = &v
20568 return s
20569}
20570
20571func (s *PutObjectLegalHoldInput) getBucket() (v string) {
20572 if s.Bucket == nil {
20573 return v
20574 }
20575 return *s.Bucket
20576}
20577
20578// SetKey sets the Key field's value.
20579func (s *PutObjectLegalHoldInput) SetKey(v string) *PutObjectLegalHoldInput {
20580 s.Key = &v
20581 return s
20582}
20583
20584// SetLegalHold sets the LegalHold field's value.
20585func (s *PutObjectLegalHoldInput) SetLegalHold(v *ObjectLockLegalHold) *PutObjectLegalHoldInput {
20586 s.LegalHold = v
20587 return s
20588}
20589
20590// SetRequestPayer sets the RequestPayer field's value.
20591func (s *PutObjectLegalHoldInput) SetRequestPayer(v string) *PutObjectLegalHoldInput {
20592 s.RequestPayer = &v
20593 return s
20594}
20595
20596// SetVersionId sets the VersionId field's value.
20597func (s *PutObjectLegalHoldInput) SetVersionId(v string) *PutObjectLegalHoldInput {
20598 s.VersionId = &v
20599 return s
20600}
20601
20602type PutObjectLegalHoldOutput struct {
20603 _ struct{} `type:"structure"`
20604
20605 // If present, indicates that the requester was successfully charged for the
20606 // request.
20607 RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"`
20608}
20609
20610// String returns the string representation
20611func (s PutObjectLegalHoldOutput) String() string {
20612 return awsutil.Prettify(s)
20613}
20614
20615// GoString returns the string representation
20616func (s PutObjectLegalHoldOutput) GoString() string {
20617 return s.String()
20618}
20619
20620// SetRequestCharged sets the RequestCharged field's value.
20621func (s *PutObjectLegalHoldOutput) SetRequestCharged(v string) *PutObjectLegalHoldOutput {
20622 s.RequestCharged = &v
20623 return s
20624}
20625
20626type PutObjectLockConfigurationInput struct {
20627 _ struct{} `type:"structure" payload:"ObjectLockConfiguration"`
20628
20629 // The bucket whose Object Lock configuration you want to create or replace.
20630 //
20631 // Bucket is a required field
20632 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
20633
20634 // The Object Lock configuration that you want to apply to the specified bucket.
20635 ObjectLockConfiguration *ObjectLockConfiguration `locationName:"ObjectLockConfiguration" type:"structure" xmlURI:"http://s3.amazonaws.com/doc/2006-03-01/"`
20636
20637 // Confirms that the requester knows that she or he will be charged for the
20638 // request. Bucket owners need not specify this parameter in their requests.
20639 // Documentation on downloading objects from requester pays buckets can be found
20640 // at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
20641 RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
20642
20643 // A token to allow Object Lock to be enabled for an existing bucket.
20644 Token *string `location:"header" locationName:"x-amz-bucket-object-lock-token" type:"string"`
20645}
20646
20647// String returns the string representation
20648func (s PutObjectLockConfigurationInput) String() string {
20649 return awsutil.Prettify(s)
20650}
20651
20652// GoString returns the string representation
20653func (s PutObjectLockConfigurationInput) GoString() string {
20654 return s.String()
20655}
20656
20657// Validate inspects the fields of the type to determine if they are valid.
20658func (s *PutObjectLockConfigurationInput) Validate() error {
20659 invalidParams := request.ErrInvalidParams{Context: "PutObjectLockConfigurationInput"}
20660 if s.Bucket == nil {
20661 invalidParams.Add(request.NewErrParamRequired("Bucket"))
20662 }
20663 if s.Bucket != nil && len(*s.Bucket) < 1 {
20664 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
20665 }
20666
20667 if invalidParams.Len() > 0 {
20668 return invalidParams
20669 }
20670 return nil
20671}
20672
20673// SetBucket sets the Bucket field's value.
20674func (s *PutObjectLockConfigurationInput) SetBucket(v string) *PutObjectLockConfigurationInput {
20675 s.Bucket = &v
20676 return s
20677}
20678
20679func (s *PutObjectLockConfigurationInput) getBucket() (v string) {
20680 if s.Bucket == nil {
20681 return v
20682 }
20683 return *s.Bucket
20684}
20685
20686// SetObjectLockConfiguration sets the ObjectLockConfiguration field's value.
20687func (s *PutObjectLockConfigurationInput) SetObjectLockConfiguration(v *ObjectLockConfiguration) *PutObjectLockConfigurationInput {
20688 s.ObjectLockConfiguration = v
20689 return s
20690}
20691
20692// SetRequestPayer sets the RequestPayer field's value.
20693func (s *PutObjectLockConfigurationInput) SetRequestPayer(v string) *PutObjectLockConfigurationInput {
20694 s.RequestPayer = &v
20695 return s
20696}
20697
20698// SetToken sets the Token field's value.
20699func (s *PutObjectLockConfigurationInput) SetToken(v string) *PutObjectLockConfigurationInput {
20700 s.Token = &v
20701 return s
20702}
20703
20704type PutObjectLockConfigurationOutput struct {
20705 _ struct{} `type:"structure"`
20706
20707 // If present, indicates that the requester was successfully charged for the
20708 // request.
20709 RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"`
20710}
20711
20712// String returns the string representation
20713func (s PutObjectLockConfigurationOutput) String() string {
20714 return awsutil.Prettify(s)
20715}
20716
20717// GoString returns the string representation
20718func (s PutObjectLockConfigurationOutput) GoString() string {
20719 return s.String()
20720}
20721
20722// SetRequestCharged sets the RequestCharged field's value.
20723func (s *PutObjectLockConfigurationOutput) SetRequestCharged(v string) *PutObjectLockConfigurationOutput {
20724 s.RequestCharged = &v
20725 return s
20726}
20727
18543type PutObjectOutput struct { 20728type PutObjectOutput struct {
18544 _ struct{} `type:"structure"` 20729 _ struct{} `type:"structure"`
18545 20730
@@ -18566,7 +20751,7 @@ type PutObjectOutput struct {
18566 20751
18567 // If present, specifies the ID of the AWS Key Management Service (KMS) master 20752 // If present, specifies the ID of the AWS Key Management Service (KMS) master
18568 // encryption key that was used for the object. 20753 // encryption key that was used for the object.
18569 SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string"` 20754 SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string" sensitive:"true"`
18570 20755
18571 // The Server-side encryption algorithm used when storing this object in S3 20756 // The Server-side encryption algorithm used when storing this object in S3
18572 // (e.g., AES256, aws:kms). 20757 // (e.g., AES256, aws:kms).
@@ -18634,6 +20819,137 @@ func (s *PutObjectOutput) SetVersionId(v string) *PutObjectOutput {
18634 return s 20819 return s
18635} 20820}
18636 20821
20822type PutObjectRetentionInput struct {
20823 _ struct{} `type:"structure" payload:"Retention"`
20824
20825 // The bucket that contains the object you want to apply this Object Retention
20826 // configuration to.
20827 //
20828 // Bucket is a required field
20829 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
20830
20831 // Indicates whether this operation should bypass Governance-mode restrictions.j
20832 BypassGovernanceRetention *bool `location:"header" locationName:"x-amz-bypass-governance-retention" type:"boolean"`
20833
20834 // The key name for the object that you want to apply this Object Retention
20835 // configuration to.
20836 //
20837 // Key is a required field
20838 Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"`
20839
20840 // Confirms that the requester knows that she or he will be charged for the
20841 // request. Bucket owners need not specify this parameter in their requests.
20842 // Documentation on downloading objects from requester pays buckets can be found
20843 // at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
20844 RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
20845
20846 // The container element for the Object Retention configuration.
20847 Retention *ObjectLockRetention `locationName:"Retention" type:"structure" xmlURI:"http://s3.amazonaws.com/doc/2006-03-01/"`
20848
20849 // The version ID for the object that you want to apply this Object Retention
20850 // configuration to.
20851 VersionId *string `location:"querystring" locationName:"versionId" type:"string"`
20852}
20853
20854// String returns the string representation
20855func (s PutObjectRetentionInput) String() string {
20856 return awsutil.Prettify(s)
20857}
20858
20859// GoString returns the string representation
20860func (s PutObjectRetentionInput) GoString() string {
20861 return s.String()
20862}
20863
20864// Validate inspects the fields of the type to determine if they are valid.
20865func (s *PutObjectRetentionInput) Validate() error {
20866 invalidParams := request.ErrInvalidParams{Context: "PutObjectRetentionInput"}
20867 if s.Bucket == nil {
20868 invalidParams.Add(request.NewErrParamRequired("Bucket"))
20869 }
20870 if s.Bucket != nil && len(*s.Bucket) < 1 {
20871 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
20872 }
20873 if s.Key == nil {
20874 invalidParams.Add(request.NewErrParamRequired("Key"))
20875 }
20876 if s.Key != nil && len(*s.Key) < 1 {
20877 invalidParams.Add(request.NewErrParamMinLen("Key", 1))
20878 }
20879
20880 if invalidParams.Len() > 0 {
20881 return invalidParams
20882 }
20883 return nil
20884}
20885
20886// SetBucket sets the Bucket field's value.
20887func (s *PutObjectRetentionInput) SetBucket(v string) *PutObjectRetentionInput {
20888 s.Bucket = &v
20889 return s
20890}
20891
20892func (s *PutObjectRetentionInput) getBucket() (v string) {
20893 if s.Bucket == nil {
20894 return v
20895 }
20896 return *s.Bucket
20897}
20898
20899// SetBypassGovernanceRetention sets the BypassGovernanceRetention field's value.
20900func (s *PutObjectRetentionInput) SetBypassGovernanceRetention(v bool) *PutObjectRetentionInput {
20901 s.BypassGovernanceRetention = &v
20902 return s
20903}
20904
20905// SetKey sets the Key field's value.
20906func (s *PutObjectRetentionInput) SetKey(v string) *PutObjectRetentionInput {
20907 s.Key = &v
20908 return s
20909}
20910
20911// SetRequestPayer sets the RequestPayer field's value.
20912func (s *PutObjectRetentionInput) SetRequestPayer(v string) *PutObjectRetentionInput {
20913 s.RequestPayer = &v
20914 return s
20915}
20916
20917// SetRetention sets the Retention field's value.
20918func (s *PutObjectRetentionInput) SetRetention(v *ObjectLockRetention) *PutObjectRetentionInput {
20919 s.Retention = v
20920 return s
20921}
20922
20923// SetVersionId sets the VersionId field's value.
20924func (s *PutObjectRetentionInput) SetVersionId(v string) *PutObjectRetentionInput {
20925 s.VersionId = &v
20926 return s
20927}
20928
20929type PutObjectRetentionOutput struct {
20930 _ struct{} `type:"structure"`
20931
20932 // If present, indicates that the requester was successfully charged for the
20933 // request.
20934 RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"`
20935}
20936
20937// String returns the string representation
20938func (s PutObjectRetentionOutput) String() string {
20939 return awsutil.Prettify(s)
20940}
20941
20942// GoString returns the string representation
20943func (s PutObjectRetentionOutput) GoString() string {
20944 return s.String()
20945}
20946
20947// SetRequestCharged sets the RequestCharged field's value.
20948func (s *PutObjectRetentionOutput) SetRequestCharged(v string) *PutObjectRetentionOutput {
20949 s.RequestCharged = &v
20950 return s
20951}
20952
18637type PutObjectTaggingInput struct { 20953type PutObjectTaggingInput struct {
18638 _ struct{} `type:"structure" payload:"Tagging"` 20954 _ struct{} `type:"structure" payload:"Tagging"`
18639 20955
@@ -18665,6 +20981,9 @@ func (s *PutObjectTaggingInput) Validate() error {
18665 if s.Bucket == nil { 20981 if s.Bucket == nil {
18666 invalidParams.Add(request.NewErrParamRequired("Bucket")) 20982 invalidParams.Add(request.NewErrParamRequired("Bucket"))
18667 } 20983 }
20984 if s.Bucket != nil && len(*s.Bucket) < 1 {
20985 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
20986 }
18668 if s.Key == nil { 20987 if s.Key == nil {
18669 invalidParams.Add(request.NewErrParamRequired("Key")) 20988 invalidParams.Add(request.NewErrParamRequired("Key"))
18670 } 20989 }
@@ -18739,25 +21058,107 @@ func (s *PutObjectTaggingOutput) SetVersionId(v string) *PutObjectTaggingOutput
18739 return s 21058 return s
18740} 21059}
18741 21060
18742// Container for specifying an configuration when you want Amazon S3 to publish 21061type PutPublicAccessBlockInput struct {
18743// events to an Amazon Simple Queue Service (Amazon SQS) queue. 21062 _ struct{} `type:"structure" payload:"PublicAccessBlockConfiguration"`
21063
21064 // The name of the Amazon S3 bucket whose PublicAccessBlock configuration you
21065 // want to set.
21066 //
21067 // Bucket is a required field
21068 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
21069
21070 // The PublicAccessBlock configuration that you want to apply to this Amazon
21071 // S3 bucket. You can enable the configuration options in any combination. For
21072 // more information about when Amazon S3 considers a bucket or object public,
21073 // see The Meaning of "Public" (https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html#access-control-block-public-access-policy-status)
21074 // in the Amazon Simple Storage Service Developer Guide.
21075 //
21076 // PublicAccessBlockConfiguration is a required field
21077 PublicAccessBlockConfiguration *PublicAccessBlockConfiguration `locationName:"PublicAccessBlockConfiguration" type:"structure" required:"true" xmlURI:"http://s3.amazonaws.com/doc/2006-03-01/"`
21078}
21079
21080// String returns the string representation
21081func (s PutPublicAccessBlockInput) String() string {
21082 return awsutil.Prettify(s)
21083}
21084
21085// GoString returns the string representation
21086func (s PutPublicAccessBlockInput) GoString() string {
21087 return s.String()
21088}
21089
21090// Validate inspects the fields of the type to determine if they are valid.
21091func (s *PutPublicAccessBlockInput) Validate() error {
21092 invalidParams := request.ErrInvalidParams{Context: "PutPublicAccessBlockInput"}
21093 if s.Bucket == nil {
21094 invalidParams.Add(request.NewErrParamRequired("Bucket"))
21095 }
21096 if s.Bucket != nil && len(*s.Bucket) < 1 {
21097 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
21098 }
21099 if s.PublicAccessBlockConfiguration == nil {
21100 invalidParams.Add(request.NewErrParamRequired("PublicAccessBlockConfiguration"))
21101 }
21102
21103 if invalidParams.Len() > 0 {
21104 return invalidParams
21105 }
21106 return nil
21107}
21108
21109// SetBucket sets the Bucket field's value.
21110func (s *PutPublicAccessBlockInput) SetBucket(v string) *PutPublicAccessBlockInput {
21111 s.Bucket = &v
21112 return s
21113}
21114
21115func (s *PutPublicAccessBlockInput) getBucket() (v string) {
21116 if s.Bucket == nil {
21117 return v
21118 }
21119 return *s.Bucket
21120}
21121
21122// SetPublicAccessBlockConfiguration sets the PublicAccessBlockConfiguration field's value.
21123func (s *PutPublicAccessBlockInput) SetPublicAccessBlockConfiguration(v *PublicAccessBlockConfiguration) *PutPublicAccessBlockInput {
21124 s.PublicAccessBlockConfiguration = v
21125 return s
21126}
21127
21128type PutPublicAccessBlockOutput struct {
21129 _ struct{} `type:"structure"`
21130}
21131
21132// String returns the string representation
21133func (s PutPublicAccessBlockOutput) String() string {
21134 return awsutil.Prettify(s)
21135}
21136
21137// GoString returns the string representation
21138func (s PutPublicAccessBlockOutput) GoString() string {
21139 return s.String()
21140}
21141
21142// A container for specifying the configuration for publication of messages
21143// to an Amazon Simple Queue Service (Amazon SQS) queue.when Amazon S3 detects
21144// specified events.
18744type QueueConfiguration struct { 21145type QueueConfiguration struct {
18745 _ struct{} `type:"structure"` 21146 _ struct{} `type:"structure"`
18746 21147
18747 // Events is a required field 21148 // Events is a required field
18748 Events []*string `locationName:"Event" type:"list" flattened:"true" required:"true"` 21149 Events []*string `locationName:"Event" type:"list" flattened:"true" required:"true"`
18749 21150
18750 // Container for object key name filtering rules. For information about key 21151 // A container for object key name filtering rules. For information about key
18751 // name filtering, go to Configuring Event Notifications (http://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html) 21152 // name filtering, see Configuring Event Notifications (https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html)
18752 // in the Amazon Simple Storage Service Developer Guide. 21153 // in the Amazon Simple Storage Service Developer Guide.
18753 Filter *NotificationConfigurationFilter `type:"structure"` 21154 Filter *NotificationConfigurationFilter `type:"structure"`
18754 21155
18755 // Optional unique identifier for configurations in a notification configuration. 21156 // An optional unique identifier for configurations in a notification configuration.
18756 // If you don't provide one, Amazon S3 will assign an ID. 21157 // If you don't provide one, Amazon S3 will assign an ID.
18757 Id *string `type:"string"` 21158 Id *string `type:"string"`
18758 21159
18759 // Amazon SQS queue ARN to which Amazon S3 will publish a message when it detects 21160 // The Amazon Resource Name (ARN) of the Amazon SQS queue to which Amazon S3
18760 // events of specified type. 21161 // will publish a message when it detects events of the specified type.
18761 // 21162 //
18762 // QueueArn is a required field 21163 // QueueArn is a required field
18763 QueueArn *string `locationName:"Queue" type:"string" required:"true"` 21164 QueueArn *string `locationName:"Queue" type:"string" required:"true"`
@@ -18816,12 +21217,14 @@ func (s *QueueConfiguration) SetQueueArn(v string) *QueueConfiguration {
18816type QueueConfigurationDeprecated struct { 21217type QueueConfigurationDeprecated struct {
18817 _ struct{} `type:"structure"` 21218 _ struct{} `type:"structure"`
18818 21219
18819 // Bucket event for which to send notifications. 21220 // The bucket event for which to send notifications.
21221 //
21222 // Deprecated: Event has been deprecated
18820 Event *string `deprecated:"true" type:"string" enum:"Event"` 21223 Event *string `deprecated:"true" type:"string" enum:"Event"`
18821 21224
18822 Events []*string `locationName:"Event" type:"list" flattened:"true"` 21225 Events []*string `locationName:"Event" type:"list" flattened:"true"`
18823 21226
18824 // Optional unique identifier for configurations in a notification configuration. 21227 // An optional unique identifier for configurations in a notification configuration.
18825 // If you don't provide one, Amazon S3 will assign an ID. 21228 // If you don't provide one, Amazon S3 will assign an ID.
18826 Id *string `type:"string"` 21229 Id *string `type:"string"`
18827 21230
@@ -19017,19 +21420,19 @@ func (s *RedirectAllRequestsTo) SetProtocol(v string) *RedirectAllRequestsTo {
19017 return s 21420 return s
19018} 21421}
19019 21422
19020// Container for replication rules. You can add as many as 1,000 rules. Total 21423// A container for replication rules. You can add up to 1,000 rules. The maximum
19021// replication configuration size can be up to 2 MB. 21424// size of a replication configuration is 2 MB.
19022type ReplicationConfiguration struct { 21425type ReplicationConfiguration struct {
19023 _ struct{} `type:"structure"` 21426 _ struct{} `type:"structure"`
19024 21427
19025 // Amazon Resource Name (ARN) of an IAM role for Amazon S3 to assume when replicating 21428 // The Amazon Resource Name (ARN) of the AWS Identity and Access Management
19026 // the objects. 21429 // (IAM) role that Amazon S3 can assume when replicating the objects.
19027 // 21430 //
19028 // Role is a required field 21431 // Role is a required field
19029 Role *string `type:"string" required:"true"` 21432 Role *string `type:"string" required:"true"`
19030 21433
19031 // Container for information about a particular replication rule. Replication 21434 // A container for one or more replication rules. A replication configuration
19032 // configuration must have at least one rule and can contain up to 1,000 rules. 21435 // must have at least one rule and can contain a maximum of 1,000 rules.
19033 // 21436 //
19034 // Rules is a required field 21437 // Rules is a required field
19035 Rules []*ReplicationRule `locationName:"Rule" type:"list" flattened:"true" required:"true"` 21438 Rules []*ReplicationRule `locationName:"Rule" type:"list" flattened:"true" required:"true"`
@@ -19083,29 +21486,57 @@ func (s *ReplicationConfiguration) SetRules(v []*ReplicationRule) *ReplicationCo
19083 return s 21486 return s
19084} 21487}
19085 21488
19086// Container for information about a particular replication rule. 21489// A container for information about a specific replication rule.
19087type ReplicationRule struct { 21490type ReplicationRule struct {
19088 _ struct{} `type:"structure"` 21491 _ struct{} `type:"structure"`
19089 21492
19090 // Container for replication destination information. 21493 // Specifies whether Amazon S3 should replicate delete makers.
21494 DeleteMarkerReplication *DeleteMarkerReplication `type:"structure"`
21495
21496 // A container for information about the replication destination.
19091 // 21497 //
19092 // Destination is a required field 21498 // Destination is a required field
19093 Destination *Destination `type:"structure" required:"true"` 21499 Destination *Destination `type:"structure" required:"true"`
19094 21500
19095 // Unique identifier for the rule. The value cannot be longer than 255 characters. 21501 // A filter that identifies the subset of objects to which the replication rule
21502 // applies. A Filter must specify exactly one Prefix, Tag, or an And child element.
21503 Filter *ReplicationRuleFilter `type:"structure"`
21504
21505 // A unique identifier for the rule. The maximum value is 255 characters.
19096 ID *string `type:"string"` 21506 ID *string `type:"string"`
19097 21507
19098 // Object keyname prefix identifying one or more objects to which the rule applies. 21508 // An object keyname prefix that identifies the object or objects to which the
19099 // Maximum prefix length can be up to 1,024 characters. Overlapping prefixes 21509 // rule applies. The maximum prefix length is 1,024 characters.
19100 // are not supported.
19101 // 21510 //
19102 // Prefix is a required field 21511 // Deprecated: Prefix has been deprecated
19103 Prefix *string `type:"string" required:"true"` 21512 Prefix *string `deprecated:"true" type:"string"`
19104 21513
19105 // Container for filters that define which source objects should be replicated. 21514 // The priority associated with the rule. If you specify multiple rules in a
21515 // replication configuration, Amazon S3 prioritizes the rules to prevent conflicts
21516 // when filtering. If two or more rules identify the same object based on a
21517 // specified filter, the rule with higher priority takes precedence. For example:
21518 //
21519 // * Same object quality prefix based filter criteria If prefixes you specified
21520 // in multiple rules overlap
21521 //
21522 // * Same object qualify tag based filter criteria specified in multiple
21523 // rules
21524 //
21525 // For more information, see Cross-Region Replication (CRR) ( https://docs.aws.amazon.com/AmazonS3/latest/dev/crr.html)
21526 // in the Amazon S3 Developer Guide.
21527 Priority *int64 `type:"integer"`
21528
21529 // A container that describes additional filters for identifying the source
21530 // objects that you want to replicate. You can choose to enable or disable the
21531 // replication of these objects. Currently, Amazon S3 supports only the filter
21532 // that you can specify for objects created with server-side encryption using
21533 // an AWS KMS-Managed Key (SSE-KMS).
21534 //
21535 // If you want Amazon S3 to replicate objects created with server-side encryption
21536 // using AWS KMS-Managed Keys.
19106 SourceSelectionCriteria *SourceSelectionCriteria `type:"structure"` 21537 SourceSelectionCriteria *SourceSelectionCriteria `type:"structure"`
19107 21538
19108 // The rule is ignored if status is not Enabled. 21539 // If status isn't enabled, the rule is ignored.
19109 // 21540 //
19110 // Status is a required field 21541 // Status is a required field
19111 Status *string `type:"string" required:"true" enum:"ReplicationRuleStatus"` 21542 Status *string `type:"string" required:"true" enum:"ReplicationRuleStatus"`
@@ -19127,9 +21558,6 @@ func (s *ReplicationRule) Validate() error {
19127 if s.Destination == nil { 21558 if s.Destination == nil {
19128 invalidParams.Add(request.NewErrParamRequired("Destination")) 21559 invalidParams.Add(request.NewErrParamRequired("Destination"))
19129 } 21560 }
19130 if s.Prefix == nil {
19131 invalidParams.Add(request.NewErrParamRequired("Prefix"))
19132 }
19133 if s.Status == nil { 21561 if s.Status == nil {
19134 invalidParams.Add(request.NewErrParamRequired("Status")) 21562 invalidParams.Add(request.NewErrParamRequired("Status"))
19135 } 21563 }
@@ -19138,6 +21566,11 @@ func (s *ReplicationRule) Validate() error {
19138 invalidParams.AddNested("Destination", err.(request.ErrInvalidParams)) 21566 invalidParams.AddNested("Destination", err.(request.ErrInvalidParams))
19139 } 21567 }
19140 } 21568 }
21569 if s.Filter != nil {
21570 if err := s.Filter.Validate(); err != nil {
21571 invalidParams.AddNested("Filter", err.(request.ErrInvalidParams))
21572 }
21573 }
19141 if s.SourceSelectionCriteria != nil { 21574 if s.SourceSelectionCriteria != nil {
19142 if err := s.SourceSelectionCriteria.Validate(); err != nil { 21575 if err := s.SourceSelectionCriteria.Validate(); err != nil {
19143 invalidParams.AddNested("SourceSelectionCriteria", err.(request.ErrInvalidParams)) 21576 invalidParams.AddNested("SourceSelectionCriteria", err.(request.ErrInvalidParams))
@@ -19150,12 +21583,24 @@ func (s *ReplicationRule) Validate() error {
19150 return nil 21583 return nil
19151} 21584}
19152 21585
21586// SetDeleteMarkerReplication sets the DeleteMarkerReplication field's value.
21587func (s *ReplicationRule) SetDeleteMarkerReplication(v *DeleteMarkerReplication) *ReplicationRule {
21588 s.DeleteMarkerReplication = v
21589 return s
21590}
21591
19153// SetDestination sets the Destination field's value. 21592// SetDestination sets the Destination field's value.
19154func (s *ReplicationRule) SetDestination(v *Destination) *ReplicationRule { 21593func (s *ReplicationRule) SetDestination(v *Destination) *ReplicationRule {
19155 s.Destination = v 21594 s.Destination = v
19156 return s 21595 return s
19157} 21596}
19158 21597
21598// SetFilter sets the Filter field's value.
21599func (s *ReplicationRule) SetFilter(v *ReplicationRuleFilter) *ReplicationRule {
21600 s.Filter = v
21601 return s
21602}
21603
19159// SetID sets the ID field's value. 21604// SetID sets the ID field's value.
19160func (s *ReplicationRule) SetID(v string) *ReplicationRule { 21605func (s *ReplicationRule) SetID(v string) *ReplicationRule {
19161 s.ID = &v 21606 s.ID = &v
@@ -19168,6 +21613,12 @@ func (s *ReplicationRule) SetPrefix(v string) *ReplicationRule {
19168 return s 21613 return s
19169} 21614}
19170 21615
21616// SetPriority sets the Priority field's value.
21617func (s *ReplicationRule) SetPriority(v int64) *ReplicationRule {
21618 s.Priority = &v
21619 return s
21620}
21621
19171// SetSourceSelectionCriteria sets the SourceSelectionCriteria field's value. 21622// SetSourceSelectionCriteria sets the SourceSelectionCriteria field's value.
19172func (s *ReplicationRule) SetSourceSelectionCriteria(v *SourceSelectionCriteria) *ReplicationRule { 21623func (s *ReplicationRule) SetSourceSelectionCriteria(v *SourceSelectionCriteria) *ReplicationRule {
19173 s.SourceSelectionCriteria = v 21624 s.SourceSelectionCriteria = v
@@ -19180,6 +21631,130 @@ func (s *ReplicationRule) SetStatus(v string) *ReplicationRule {
19180 return s 21631 return s
19181} 21632}
19182 21633
21634type ReplicationRuleAndOperator struct {
21635 _ struct{} `type:"structure"`
21636
21637 Prefix *string `type:"string"`
21638
21639 Tags []*Tag `locationName:"Tag" locationNameList:"Tag" type:"list" flattened:"true"`
21640}
21641
21642// String returns the string representation
21643func (s ReplicationRuleAndOperator) String() string {
21644 return awsutil.Prettify(s)
21645}
21646
21647// GoString returns the string representation
21648func (s ReplicationRuleAndOperator) GoString() string {
21649 return s.String()
21650}
21651
21652// Validate inspects the fields of the type to determine if they are valid.
21653func (s *ReplicationRuleAndOperator) Validate() error {
21654 invalidParams := request.ErrInvalidParams{Context: "ReplicationRuleAndOperator"}
21655 if s.Tags != nil {
21656 for i, v := range s.Tags {
21657 if v == nil {
21658 continue
21659 }
21660 if err := v.Validate(); err != nil {
21661 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
21662 }
21663 }
21664 }
21665
21666 if invalidParams.Len() > 0 {
21667 return invalidParams
21668 }
21669 return nil
21670}
21671
21672// SetPrefix sets the Prefix field's value.
21673func (s *ReplicationRuleAndOperator) SetPrefix(v string) *ReplicationRuleAndOperator {
21674 s.Prefix = &v
21675 return s
21676}
21677
21678// SetTags sets the Tags field's value.
21679func (s *ReplicationRuleAndOperator) SetTags(v []*Tag) *ReplicationRuleAndOperator {
21680 s.Tags = v
21681 return s
21682}
21683
21684// A filter that identifies the subset of objects to which the replication rule
21685// applies. A Filter must specify exactly one Prefix, Tag, or an And child element.
21686type ReplicationRuleFilter struct {
21687 _ struct{} `type:"structure"`
21688
21689 // A container for specifying rule filters. The filters determine the subset
21690 // of objects to which the rule applies. This element is required only if you
21691 // specify more than one filter. For example:
21692 //
21693 // * If you specify both a Prefix and a Tag filter, wrap these filters in
21694 // an And tag.
21695 //
21696 // * If you specify a filter based on multiple tags, wrap the Tag elements
21697 // in an And tag.
21698 And *ReplicationRuleAndOperator `type:"structure"`
21699
21700 // An object keyname prefix that identifies the subset of objects to which the
21701 // rule applies.
21702 Prefix *string `type:"string"`
21703
21704 // A container for specifying a tag key and value.
21705 //
21706 // The rule applies only to objects that have the tag in their tag set.
21707 Tag *Tag `type:"structure"`
21708}
21709
21710// String returns the string representation
21711func (s ReplicationRuleFilter) String() string {
21712 return awsutil.Prettify(s)
21713}
21714
21715// GoString returns the string representation
21716func (s ReplicationRuleFilter) GoString() string {
21717 return s.String()
21718}
21719
21720// Validate inspects the fields of the type to determine if they are valid.
21721func (s *ReplicationRuleFilter) Validate() error {
21722 invalidParams := request.ErrInvalidParams{Context: "ReplicationRuleFilter"}
21723 if s.And != nil {
21724 if err := s.And.Validate(); err != nil {
21725 invalidParams.AddNested("And", err.(request.ErrInvalidParams))
21726 }
21727 }
21728 if s.Tag != nil {
21729 if err := s.Tag.Validate(); err != nil {
21730 invalidParams.AddNested("Tag", err.(request.ErrInvalidParams))
21731 }
21732 }
21733
21734 if invalidParams.Len() > 0 {
21735 return invalidParams
21736 }
21737 return nil
21738}
21739
21740// SetAnd sets the And field's value.
21741func (s *ReplicationRuleFilter) SetAnd(v *ReplicationRuleAndOperator) *ReplicationRuleFilter {
21742 s.And = v
21743 return s
21744}
21745
21746// SetPrefix sets the Prefix field's value.
21747func (s *ReplicationRuleFilter) SetPrefix(v string) *ReplicationRuleFilter {
21748 s.Prefix = &v
21749 return s
21750}
21751
21752// SetTag sets the Tag field's value.
21753func (s *ReplicationRuleFilter) SetTag(v *Tag) *ReplicationRuleFilter {
21754 s.Tag = v
21755 return s
21756}
21757
19183type RequestPaymentConfiguration struct { 21758type RequestPaymentConfiguration struct {
19184 _ struct{} `type:"structure"` 21759 _ struct{} `type:"structure"`
19185 21760
@@ -19279,6 +21854,9 @@ func (s *RestoreObjectInput) Validate() error {
19279 if s.Bucket == nil { 21854 if s.Bucket == nil {
19280 invalidParams.Add(request.NewErrParamRequired("Bucket")) 21855 invalidParams.Add(request.NewErrParamRequired("Bucket"))
19281 } 21856 }
21857 if s.Bucket != nil && len(*s.Bucket) < 1 {
21858 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
21859 }
19282 if s.Key == nil { 21860 if s.Key == nil {
19283 invalidParams.Add(request.NewErrParamRequired("Key")) 21861 invalidParams.Add(request.NewErrParamRequired("Key"))
19284 } 21862 }
@@ -19484,7 +22062,7 @@ type RoutingRule struct {
19484 22062
19485 // Container for redirect information. You can redirect requests to another 22063 // Container for redirect information. You can redirect requests to another
19486 // host, to another page, or with another protocol. In the event of an error, 22064 // host, to another page, or with another protocol. In the event of an error,
19487 // you can can specify a different error code to return. 22065 // you can specify a different error code to return.
19488 // 22066 //
19489 // Redirect is a required field 22067 // Redirect is a required field
19490 Redirect *Redirect `type:"structure" required:"true"` 22068 Redirect *Redirect `type:"structure" required:"true"`
@@ -19545,11 +22123,12 @@ type Rule struct {
19545 NoncurrentVersionExpiration *NoncurrentVersionExpiration `type:"structure"` 22123 NoncurrentVersionExpiration *NoncurrentVersionExpiration `type:"structure"`
19546 22124
19547 // Container for the transition rule that describes when noncurrent objects 22125 // Container for the transition rule that describes when noncurrent objects
19548 // transition to the STANDARD_IA, ONEZONE_IA or GLACIER storage class. If your 22126 // transition to the STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER or
19549 // bucket is versioning-enabled (or versioning is suspended), you can set this 22127 // DEEP_ARCHIVE storage class. If your bucket is versioning-enabled (or versioning
19550 // action to request that Amazon S3 transition noncurrent object versions to 22128 // is suspended), you can set this action to request that Amazon S3 transition
19551 // the STANDARD_IA, ONEZONE_IA or GLACIER storage class at a specific period 22129 // noncurrent object versions to the STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING,
19552 // in the object's lifetime. 22130 // GLACIER or DEEP_ARCHIVE storage class at a specific period in the object's
22131 // lifetime.
19553 NoncurrentVersionTransition *NoncurrentVersionTransition `type:"structure"` 22132 NoncurrentVersionTransition *NoncurrentVersionTransition `type:"structure"`
19554 22133
19555 // Prefix identifying one or more objects to which the rule applies. 22134 // Prefix identifying one or more objects to which the rule applies.
@@ -19640,7 +22219,7 @@ func (s *Rule) SetTransition(v *Transition) *Rule {
19640 return s 22219 return s
19641} 22220}
19642 22221
19643// Specifies the use of SSE-KMS to encrypt delievered Inventory reports. 22222// Specifies the use of SSE-KMS to encrypt delivered Inventory reports.
19644type SSEKMS struct { 22223type SSEKMS struct {
19645 _ struct{} `locationName:"SSE-KMS" type:"structure"` 22224 _ struct{} `locationName:"SSE-KMS" type:"structure"`
19646 22225
@@ -19648,7 +22227,7 @@ type SSEKMS struct {
19648 // key to use for encrypting Inventory reports. 22227 // key to use for encrypting Inventory reports.
19649 // 22228 //
19650 // KeyId is a required field 22229 // KeyId is a required field
19651 KeyId *string `type:"string" required:"true"` 22230 KeyId *string `type:"string" required:"true" sensitive:"true"`
19652} 22231}
19653 22232
19654// String returns the string representation 22233// String returns the string representation
@@ -19680,7 +22259,7 @@ func (s *SSEKMS) SetKeyId(v string) *SSEKMS {
19680 return s 22259 return s
19681} 22260}
19682 22261
19683// Specifies the use of SSE-S3 to encrypt delievered Inventory reports. 22262// Specifies the use of SSE-S3 to encrypt delivered Inventory reports.
19684type SSES3 struct { 22263type SSES3 struct {
19685 _ struct{} `locationName:"SSE-S3" type:"structure"` 22264 _ struct{} `locationName:"SSE-S3" type:"structure"`
19686} 22265}
@@ -19797,7 +22376,7 @@ type SelectObjectContentEventStreamReader interface {
19797 // HTTP this will also close the HTTP connection. 22376 // HTTP this will also close the HTTP connection.
19798 Close() error 22377 Close() error
19799 22378
19800 // Returns any error that has occured while reading from the event stream. 22379 // Returns any error that has occurred while reading from the event stream.
19801 Err() error 22380 Err() error
19802} 22381}
19803 22382
@@ -19917,15 +22496,15 @@ func (r *readSelectObjectContentEventStream) unmarshalerForEventType(
19917 22496
19918// Request to filter the contents of an Amazon S3 object based on a simple Structured 22497// Request to filter the contents of an Amazon S3 object based on a simple Structured
19919// Query Language (SQL) statement. In the request, along with the SQL expression, 22498// Query Language (SQL) statement. In the request, along with the SQL expression,
19920// you must also specify a data serialization format (JSON or CSV) of the object. 22499// you must specify a data serialization format (JSON or CSV) of the object.
19921// Amazon S3 uses this to parse object data into records, and returns only records 22500// Amazon S3 uses this to parse object data into records. It returns only records
19922// that match the specified SQL expression. You must also specify the data serialization 22501// that match the specified SQL expression. You must also specify the data serialization
19923// format for the response. For more information, go to S3Select API Documentation 22502// format for the response. For more information, see S3Select API Documentation
19924// (http://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectSELECTContent.html). 22503// (https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectSELECTContent.html).
19925type SelectObjectContentInput struct { 22504type SelectObjectContentInput struct {
19926 _ struct{} `locationName:"SelectObjectContentRequest" type:"structure" xmlURI:"http://s3.amazonaws.com/doc/2006-03-01/"` 22505 _ struct{} `locationName:"SelectObjectContentRequest" type:"structure" xmlURI:"http://s3.amazonaws.com/doc/2006-03-01/"`
19927 22506
19928 // The S3 Bucket. 22507 // The S3 bucket.
19929 // 22508 //
19930 // Bucket is a required field 22509 // Bucket is a required field
19931 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` 22510 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
@@ -19935,7 +22514,7 @@ type SelectObjectContentInput struct {
19935 // Expression is a required field 22514 // Expression is a required field
19936 Expression *string `type:"string" required:"true"` 22515 Expression *string `type:"string" required:"true"`
19937 22516
19938 // The type of the provided expression (e.g., SQL). 22517 // The type of the provided expression (for example., SQL).
19939 // 22518 //
19940 // ExpressionType is a required field 22519 // ExpressionType is a required field
19941 ExpressionType *string `type:"string" required:"true" enum:"ExpressionType"` 22520 ExpressionType *string `type:"string" required:"true" enum:"ExpressionType"`
@@ -19945,7 +22524,7 @@ type SelectObjectContentInput struct {
19945 // InputSerialization is a required field 22524 // InputSerialization is a required field
19946 InputSerialization *InputSerialization `type:"structure" required:"true"` 22525 InputSerialization *InputSerialization `type:"structure" required:"true"`
19947 22526
19948 // The Object Key. 22527 // The object key.
19949 // 22528 //
19950 // Key is a required field 22529 // Key is a required field
19951 Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"` 22530 Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"`
@@ -19958,16 +22537,16 @@ type SelectObjectContentInput struct {
19958 // Specifies if periodic request progress information should be enabled. 22537 // Specifies if periodic request progress information should be enabled.
19959 RequestProgress *RequestProgress `type:"structure"` 22538 RequestProgress *RequestProgress `type:"structure"`
19960 22539
19961 // The SSE Algorithm used to encrypt the object. For more information, go to 22540 // The SSE Algorithm used to encrypt the object. For more information, see
19962 // Server-Side Encryption (Using Customer-Provided Encryption Keys (http://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html). 22541 // Server-Side Encryption (Using Customer-Provided Encryption Keys (https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html).
19963 SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"` 22542 SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"`
19964 22543
19965 // The SSE Customer Key. For more information, go to Server-Side Encryption 22544 // The SSE Customer Key. For more information, see Server-Side Encryption (Using
19966 // (Using Customer-Provided Encryption Keys (http://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html). 22545 // Customer-Provided Encryption Keys (https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html).
19967 SSECustomerKey *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key" type:"string"` 22546 SSECustomerKey *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key" type:"string" sensitive:"true"`
19968 22547
19969 // The SSE Customer Key MD5. For more information, go to Server-Side Encryption 22548 // The SSE Customer Key MD5. For more information, see Server-Side Encryption
19970 // (Using Customer-Provided Encryption Keys (http://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html). 22549 // (Using Customer-Provided Encryption Keys (https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html).
19971 SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"` 22550 SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"`
19972} 22551}
19973 22552
@@ -19987,6 +22566,9 @@ func (s *SelectObjectContentInput) Validate() error {
19987 if s.Bucket == nil { 22566 if s.Bucket == nil {
19988 invalidParams.Add(request.NewErrParamRequired("Bucket")) 22567 invalidParams.Add(request.NewErrParamRequired("Bucket"))
19989 } 22568 }
22569 if s.Bucket != nil && len(*s.Bucket) < 1 {
22570 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
22571 }
19990 if s.Expression == nil { 22572 if s.Expression == nil {
19991 invalidParams.Add(request.NewErrParamRequired("Expression")) 22573 invalidParams.Add(request.NewErrParamRequired("Expression"))
19992 } 22574 }
@@ -20217,7 +22799,7 @@ type ServerSideEncryptionByDefault struct {
20217 22799
20218 // KMS master key ID to use for the default encryption. This parameter is allowed 22800 // KMS master key ID to use for the default encryption. This parameter is allowed
20219 // if SSEAlgorithm is aws:kms. 22801 // if SSEAlgorithm is aws:kms.
20220 KMSMasterKeyID *string `type:"string"` 22802 KMSMasterKeyID *string `type:"string" sensitive:"true"`
20221 22803
20222 // Server-side encryption algorithm to use for the default encryption. 22804 // Server-side encryption algorithm to use for the default encryption.
20223 // 22805 //
@@ -20353,11 +22935,13 @@ func (s *ServerSideEncryptionRule) SetApplyServerSideEncryptionByDefault(v *Serv
20353 return s 22935 return s
20354} 22936}
20355 22937
20356// Container for filters that define which source objects should be replicated. 22938// A container for filters that define which source objects should be replicated.
20357type SourceSelectionCriteria struct { 22939type SourceSelectionCriteria struct {
20358 _ struct{} `type:"structure"` 22940 _ struct{} `type:"structure"`
20359 22941
20360 // Container for filter information of selection of KMS Encrypted S3 objects. 22942 // A container for filter information for the selection of S3 objects encrypted
22943 // with AWS KMS. If you include SourceSelectionCriteria in the replication configuration,
22944 // this element is required.
20361 SseKmsEncryptedObjects *SseKmsEncryptedObjects `type:"structure"` 22945 SseKmsEncryptedObjects *SseKmsEncryptedObjects `type:"structure"`
20362} 22946}
20363 22947
@@ -20392,12 +22976,13 @@ func (s *SourceSelectionCriteria) SetSseKmsEncryptedObjects(v *SseKmsEncryptedOb
20392 return s 22976 return s
20393} 22977}
20394 22978
20395// Container for filter information of selection of KMS Encrypted S3 objects. 22979// A container for filter information for the selection of S3 objects encrypted
22980// with AWS KMS.
20396type SseKmsEncryptedObjects struct { 22981type SseKmsEncryptedObjects struct {
20397 _ struct{} `type:"structure"` 22982 _ struct{} `type:"structure"`
20398 22983
20399 // The replication for KMS encrypted S3 objects is disabled if status is not 22984 // If the status is not Enabled, replication for S3 objects encrypted with AWS
20400 // Enabled. 22985 // KMS is disabled.
20401 // 22986 //
20402 // Status is a required field 22987 // Status is a required field
20403 Status *string `type:"string" required:"true" enum:"SseKmsEncryptedObjectsStatus"` 22988 Status *string `type:"string" required:"true" enum:"SseKmsEncryptedObjectsStatus"`
@@ -20435,13 +23020,13 @@ func (s *SseKmsEncryptedObjects) SetStatus(v string) *SseKmsEncryptedObjects {
20435type Stats struct { 23020type Stats struct {
20436 _ struct{} `type:"structure"` 23021 _ struct{} `type:"structure"`
20437 23022
20438 // Total number of uncompressed object bytes processed. 23023 // The total number of uncompressed object bytes processed.
20439 BytesProcessed *int64 `type:"long"` 23024 BytesProcessed *int64 `type:"long"`
20440 23025
20441 // Total number of bytes of records payload data returned. 23026 // The total number of bytes of records payload data returned.
20442 BytesReturned *int64 `type:"long"` 23027 BytesReturned *int64 `type:"long"`
20443 23028
20444 // Total number of object bytes scanned. 23029 // The total number of object bytes scanned.
20445 BytesScanned *int64 `type:"long"` 23030 BytesScanned *int64 `type:"long"`
20446} 23031}
20447 23032
@@ -20756,25 +23341,26 @@ func (s *TargetGrant) SetPermission(v string) *TargetGrant {
20756 return s 23341 return s
20757} 23342}
20758 23343
20759// Container for specifying the configuration when you want Amazon S3 to publish 23344// A container for specifying the configuration for publication of messages
20760// events to an Amazon Simple Notification Service (Amazon SNS) topic. 23345// to an Amazon Simple Notification Service (Amazon SNS) topic.when Amazon S3
23346// detects specified events.
20761type TopicConfiguration struct { 23347type TopicConfiguration struct {
20762 _ struct{} `type:"structure"` 23348 _ struct{} `type:"structure"`
20763 23349
20764 // Events is a required field 23350 // Events is a required field
20765 Events []*string `locationName:"Event" type:"list" flattened:"true" required:"true"` 23351 Events []*string `locationName:"Event" type:"list" flattened:"true" required:"true"`
20766 23352
20767 // Container for object key name filtering rules. For information about key 23353 // A container for object key name filtering rules. For information about key
20768 // name filtering, go to Configuring Event Notifications (http://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html) 23354 // name filtering, see Configuring Event Notifications (https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html)
20769 // in the Amazon Simple Storage Service Developer Guide. 23355 // in the Amazon Simple Storage Service Developer Guide.
20770 Filter *NotificationConfigurationFilter `type:"structure"` 23356 Filter *NotificationConfigurationFilter `type:"structure"`
20771 23357
20772 // Optional unique identifier for configurations in a notification configuration. 23358 // An optional unique identifier for configurations in a notification configuration.
20773 // If you don't provide one, Amazon S3 will assign an ID. 23359 // If you don't provide one, Amazon S3 will assign an ID.
20774 Id *string `type:"string"` 23360 Id *string `type:"string"`
20775 23361
20776 // Amazon SNS topic ARN to which Amazon S3 will publish a message when it detects 23362 // The Amazon Resource Name (ARN) of the Amazon SNS topic to which Amazon S3
20777 // events of specified type. 23363 // will publish a message when it detects events of the specified type.
20778 // 23364 //
20779 // TopicArn is a required field 23365 // TopicArn is a required field
20780 TopicArn *string `locationName:"Topic" type:"string" required:"true"` 23366 TopicArn *string `locationName:"Topic" type:"string" required:"true"`
@@ -20834,11 +23420,13 @@ type TopicConfigurationDeprecated struct {
20834 _ struct{} `type:"structure"` 23420 _ struct{} `type:"structure"`
20835 23421
20836 // Bucket event for which to send notifications. 23422 // Bucket event for which to send notifications.
23423 //
23424 // Deprecated: Event has been deprecated
20837 Event *string `deprecated:"true" type:"string" enum:"Event"` 23425 Event *string `deprecated:"true" type:"string" enum:"Event"`
20838 23426
20839 Events []*string `locationName:"Event" type:"list" flattened:"true"` 23427 Events []*string `locationName:"Event" type:"list" flattened:"true"`
20840 23428
20841 // Optional unique identifier for configurations in a notification configuration. 23429 // An optional unique identifier for configurations in a notification configuration.
20842 // If you don't provide one, Amazon S3 will assign an ID. 23430 // If you don't provide one, Amazon S3 will assign an ID.
20843 Id *string `type:"string"` 23431 Id *string `type:"string"`
20844 23432
@@ -20953,7 +23541,7 @@ type UploadPartCopyInput struct {
20953 // the form bytes=first-last, where the first and last are the zero-based byte 23541 // the form bytes=first-last, where the first and last are the zero-based byte
20954 // offsets to copy. For example, bytes=0-9 indicates that you want to copy the 23542 // offsets to copy. For example, bytes=0-9 indicates that you want to copy the
20955 // first ten bytes of the source. You can copy a range only if the source object 23543 // first ten bytes of the source. You can copy a range only if the source object
20956 // is greater than 5 GB. 23544 // is greater than 5 MB.
20957 CopySourceRange *string `location:"header" locationName:"x-amz-copy-source-range" type:"string"` 23545 CopySourceRange *string `location:"header" locationName:"x-amz-copy-source-range" type:"string"`
20958 23546
20959 // Specifies the algorithm to use when decrypting the source object (e.g., AES256). 23547 // Specifies the algorithm to use when decrypting the source object (e.g., AES256).
@@ -20962,7 +23550,7 @@ type UploadPartCopyInput struct {
20962 // Specifies the customer-provided encryption key for Amazon S3 to use to decrypt 23550 // Specifies the customer-provided encryption key for Amazon S3 to use to decrypt
20963 // the source object. The encryption key provided in this header must be one 23551 // the source object. The encryption key provided in this header must be one
20964 // that was used when the source object was created. 23552 // that was used when the source object was created.
20965 CopySourceSSECustomerKey *string `location:"header" locationName:"x-amz-copy-source-server-side-encryption-customer-key" type:"string"` 23553 CopySourceSSECustomerKey *string `location:"header" locationName:"x-amz-copy-source-server-side-encryption-customer-key" type:"string" sensitive:"true"`
20966 23554
20967 // Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. 23555 // Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321.
20968 // Amazon S3 uses this header for a message integrity check to ensure the encryption 23556 // Amazon S3 uses this header for a message integrity check to ensure the encryption
@@ -20993,7 +23581,7 @@ type UploadPartCopyInput struct {
20993 // the algorithm specified in the x-amz-server-side​-encryption​-customer-algorithm 23581 // the algorithm specified in the x-amz-server-side​-encryption​-customer-algorithm
20994 // header. This must be the same encryption key specified in the initiate multipart 23582 // header. This must be the same encryption key specified in the initiate multipart
20995 // upload request. 23583 // upload request.
20996 SSECustomerKey *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key" type:"string"` 23584 SSECustomerKey *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key" type:"string" sensitive:"true"`
20997 23585
20998 // Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. 23586 // Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321.
20999 // Amazon S3 uses this header for a message integrity check to ensure the encryption 23587 // Amazon S3 uses this header for a message integrity check to ensure the encryption
@@ -21022,6 +23610,9 @@ func (s *UploadPartCopyInput) Validate() error {
21022 if s.Bucket == nil { 23610 if s.Bucket == nil {
21023 invalidParams.Add(request.NewErrParamRequired("Bucket")) 23611 invalidParams.Add(request.NewErrParamRequired("Bucket"))
21024 } 23612 }
23613 if s.Bucket != nil && len(*s.Bucket) < 1 {
23614 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
23615 }
21025 if s.CopySource == nil { 23616 if s.CopySource == nil {
21026 invalidParams.Add(request.NewErrParamRequired("CopySource")) 23617 invalidParams.Add(request.NewErrParamRequired("CopySource"))
21027 } 23618 }
@@ -21192,7 +23783,7 @@ type UploadPartCopyOutput struct {
21192 23783
21193 // If present, specifies the ID of the AWS Key Management Service (KMS) master 23784 // If present, specifies the ID of the AWS Key Management Service (KMS) master
21194 // encryption key that was used for the object. 23785 // encryption key that was used for the object.
21195 SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string"` 23786 SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string" sensitive:"true"`
21196 23787
21197 // The Server-side encryption algorithm used when storing this object in S3 23788 // The Server-side encryption algorithm used when storing this object in S3
21198 // (e.g., AES256, aws:kms). 23789 // (e.g., AES256, aws:kms).
@@ -21295,7 +23886,7 @@ type UploadPartInput struct {
21295 // the algorithm specified in the x-amz-server-side​-encryption​-customer-algorithm 23886 // the algorithm specified in the x-amz-server-side​-encryption​-customer-algorithm
21296 // header. This must be the same encryption key specified in the initiate multipart 23887 // header. This must be the same encryption key specified in the initiate multipart
21297 // upload request. 23888 // upload request.
21298 SSECustomerKey *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key" type:"string"` 23889 SSECustomerKey *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key" type:"string" sensitive:"true"`
21299 23890
21300 // Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. 23891 // Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321.
21301 // Amazon S3 uses this header for a message integrity check to ensure the encryption 23892 // Amazon S3 uses this header for a message integrity check to ensure the encryption
@@ -21324,6 +23915,9 @@ func (s *UploadPartInput) Validate() error {
21324 if s.Bucket == nil { 23915 if s.Bucket == nil {
21325 invalidParams.Add(request.NewErrParamRequired("Bucket")) 23916 invalidParams.Add(request.NewErrParamRequired("Bucket"))
21326 } 23917 }
23918 if s.Bucket != nil && len(*s.Bucket) < 1 {
23919 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
23920 }
21327 if s.Key == nil { 23921 if s.Key == nil {
21328 invalidParams.Add(request.NewErrParamRequired("Key")) 23922 invalidParams.Add(request.NewErrParamRequired("Key"))
21329 } 23923 }
@@ -21445,7 +24039,7 @@ type UploadPartOutput struct {
21445 24039
21446 // If present, specifies the ID of the AWS Key Management Service (KMS) master 24040 // If present, specifies the ID of the AWS Key Management Service (KMS) master
21447 // encryption key that was used for the object. 24041 // encryption key that was used for the object.
21448 SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string"` 24042 SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string" sensitive:"true"`
21449 24043
21450 // The Server-side encryption algorithm used when storing this object in S3 24044 // The Server-side encryption algorithm used when storing this object in S3
21451 // (e.g., AES256, aws:kms). 24045 // (e.g., AES256, aws:kms).
@@ -21705,6 +24299,14 @@ const (
21705 CompressionTypeBzip2 = "BZIP2" 24299 CompressionTypeBzip2 = "BZIP2"
21706) 24300)
21707 24301
24302const (
24303 // DeleteMarkerReplicationStatusEnabled is a DeleteMarkerReplicationStatus enum value
24304 DeleteMarkerReplicationStatusEnabled = "Enabled"
24305
24306 // DeleteMarkerReplicationStatusDisabled is a DeleteMarkerReplicationStatus enum value
24307 DeleteMarkerReplicationStatusDisabled = "Disabled"
24308)
24309
21708// Requests Amazon S3 to encode the object keys in the response and specifies 24310// Requests Amazon S3 to encode the object keys in the response and specifies
21709// the encoding method to use. An object key may contain any Unicode character; 24311// the encoding method to use. An object key may contain any Unicode character;
21710// however, XML 1.0 parser cannot parse some characters, such as characters 24312// however, XML 1.0 parser cannot parse some characters, such as characters
@@ -21716,7 +24318,7 @@ const (
21716 EncodingTypeUrl = "url" 24318 EncodingTypeUrl = "url"
21717) 24319)
21718 24320
21719// Bucket event for which to send notifications. 24321// The bucket event for which to send notifications.
21720const ( 24322const (
21721 // EventS3ReducedRedundancyLostObject is a Event enum value 24323 // EventS3ReducedRedundancyLostObject is a Event enum value
21722 EventS3ReducedRedundancyLostObject = "s3:ReducedRedundancyLostObject" 24324 EventS3ReducedRedundancyLostObject = "s3:ReducedRedundancyLostObject"
@@ -21744,6 +24346,12 @@ const (
21744 24346
21745 // EventS3ObjectRemovedDeleteMarkerCreated is a Event enum value 24347 // EventS3ObjectRemovedDeleteMarkerCreated is a Event enum value
21746 EventS3ObjectRemovedDeleteMarkerCreated = "s3:ObjectRemoved:DeleteMarkerCreated" 24348 EventS3ObjectRemovedDeleteMarkerCreated = "s3:ObjectRemoved:DeleteMarkerCreated"
24349
24350 // EventS3ObjectRestorePost is a Event enum value
24351 EventS3ObjectRestorePost = "s3:ObjectRestore:Post"
24352
24353 // EventS3ObjectRestoreCompleted is a Event enum value
24354 EventS3ObjectRestoreCompleted = "s3:ObjectRestore:Completed"
21747) 24355)
21748 24356
21749const ( 24357const (
@@ -21784,6 +24392,9 @@ const (
21784 24392
21785 // InventoryFormatOrc is a InventoryFormat enum value 24393 // InventoryFormatOrc is a InventoryFormat enum value
21786 InventoryFormatOrc = "ORC" 24394 InventoryFormatOrc = "ORC"
24395
24396 // InventoryFormatParquet is a InventoryFormat enum value
24397 InventoryFormatParquet = "Parquet"
21787) 24398)
21788 24399
21789const ( 24400const (
@@ -21823,6 +24434,15 @@ const (
21823 24434
21824 // InventoryOptionalFieldEncryptionStatus is a InventoryOptionalField enum value 24435 // InventoryOptionalFieldEncryptionStatus is a InventoryOptionalField enum value
21825 InventoryOptionalFieldEncryptionStatus = "EncryptionStatus" 24436 InventoryOptionalFieldEncryptionStatus = "EncryptionStatus"
24437
24438 // InventoryOptionalFieldObjectLockRetainUntilDate is a InventoryOptionalField enum value
24439 InventoryOptionalFieldObjectLockRetainUntilDate = "ObjectLockRetainUntilDate"
24440
24441 // InventoryOptionalFieldObjectLockMode is a InventoryOptionalField enum value
24442 InventoryOptionalFieldObjectLockMode = "ObjectLockMode"
24443
24444 // InventoryOptionalFieldObjectLockLegalHoldStatus is a InventoryOptionalField enum value
24445 InventoryOptionalFieldObjectLockLegalHoldStatus = "ObjectLockLegalHoldStatus"
21826) 24446)
21827 24447
21828const ( 24448const (
@@ -21881,6 +24501,35 @@ const (
21881) 24501)
21882 24502
21883const ( 24503const (
24504 // ObjectLockEnabledEnabled is a ObjectLockEnabled enum value
24505 ObjectLockEnabledEnabled = "Enabled"
24506)
24507
24508const (
24509 // ObjectLockLegalHoldStatusOn is a ObjectLockLegalHoldStatus enum value
24510 ObjectLockLegalHoldStatusOn = "ON"
24511
24512 // ObjectLockLegalHoldStatusOff is a ObjectLockLegalHoldStatus enum value
24513 ObjectLockLegalHoldStatusOff = "OFF"
24514)
24515
24516const (
24517 // ObjectLockModeGovernance is a ObjectLockMode enum value
24518 ObjectLockModeGovernance = "GOVERNANCE"
24519
24520 // ObjectLockModeCompliance is a ObjectLockMode enum value
24521 ObjectLockModeCompliance = "COMPLIANCE"
24522)
24523
24524const (
24525 // ObjectLockRetentionModeGovernance is a ObjectLockRetentionMode enum value
24526 ObjectLockRetentionModeGovernance = "GOVERNANCE"
24527
24528 // ObjectLockRetentionModeCompliance is a ObjectLockRetentionMode enum value
24529 ObjectLockRetentionModeCompliance = "COMPLIANCE"
24530)
24531
24532const (
21884 // ObjectStorageClassStandard is a ObjectStorageClass enum value 24533 // ObjectStorageClassStandard is a ObjectStorageClass enum value
21885 ObjectStorageClassStandard = "STANDARD" 24534 ObjectStorageClassStandard = "STANDARD"
21886 24535
@@ -21895,6 +24544,12 @@ const (
21895 24544
21896 // ObjectStorageClassOnezoneIa is a ObjectStorageClass enum value 24545 // ObjectStorageClassOnezoneIa is a ObjectStorageClass enum value
21897 ObjectStorageClassOnezoneIa = "ONEZONE_IA" 24546 ObjectStorageClassOnezoneIa = "ONEZONE_IA"
24547
24548 // ObjectStorageClassIntelligentTiering is a ObjectStorageClass enum value
24549 ObjectStorageClassIntelligentTiering = "INTELLIGENT_TIERING"
24550
24551 // ObjectStorageClassDeepArchive is a ObjectStorageClass enum value
24552 ObjectStorageClassDeepArchive = "DEEP_ARCHIVE"
21898) 24553)
21899 24554
21900const ( 24555const (
@@ -22019,6 +24674,15 @@ const (
22019 24674
22020 // StorageClassOnezoneIa is a StorageClass enum value 24675 // StorageClassOnezoneIa is a StorageClass enum value
22021 StorageClassOnezoneIa = "ONEZONE_IA" 24676 StorageClassOnezoneIa = "ONEZONE_IA"
24677
24678 // StorageClassIntelligentTiering is a StorageClass enum value
24679 StorageClassIntelligentTiering = "INTELLIGENT_TIERING"
24680
24681 // StorageClassGlacier is a StorageClass enum value
24682 StorageClassGlacier = "GLACIER"
24683
24684 // StorageClassDeepArchive is a StorageClass enum value
24685 StorageClassDeepArchive = "DEEP_ARCHIVE"
22022) 24686)
22023 24687
22024const ( 24688const (
@@ -22054,6 +24718,12 @@ const (
22054 24718
22055 // TransitionStorageClassOnezoneIa is a TransitionStorageClass enum value 24719 // TransitionStorageClassOnezoneIa is a TransitionStorageClass enum value
22056 TransitionStorageClassOnezoneIa = "ONEZONE_IA" 24720 TransitionStorageClassOnezoneIa = "ONEZONE_IA"
24721
24722 // TransitionStorageClassIntelligentTiering is a TransitionStorageClass enum value
24723 TransitionStorageClassIntelligentTiering = "INTELLIGENT_TIERING"
24724
24725 // TransitionStorageClassDeepArchive is a TransitionStorageClass enum value
24726 TransitionStorageClassDeepArchive = "DEEP_ARCHIVE"
22057) 24727)
22058 24728
22059const ( 24729const (