1 // Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
13 "github.com/aws/aws-sdk-go/aws"
14 "github.com/aws/aws-sdk-go/aws/awserr"
15 "github.com/aws/aws-sdk-go/aws/awsutil"
16 "github.com/aws/aws-sdk-go/aws/client"
17 "github.com/aws/aws-sdk-go/aws/request"
18 "github.com/aws/aws-sdk-go/private/protocol"
19 "github.com/aws/aws-sdk-go/private/protocol/eventstream"
20 "github.com/aws/aws-sdk-go/private/protocol/eventstream/eventstreamapi"
21 "github.com/aws/aws-sdk-go/private/protocol/rest"
22 "github.com/aws/aws-sdk-go/private/protocol/restxml"
25 const opAbortMultipartUpload = "AbortMultipartUpload"
27 // AbortMultipartUploadRequest generates a "aws/request.Request" representing the
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
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.
35 // See AbortMultipartUpload for more information on using the AbortMultipartUpload
36 // API call, and error handling.
38 // This method is useful when you want to inject custom logic or configuration
39 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
42 // // Example sending a request using the AbortMultipartUploadRequest method.
43 // req, resp := client.AbortMultipartUploadRequest(params)
46 // if err == nil { // resp is now filled
50 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/AbortMultipartUpload
51 func (c *S3) AbortMultipartUploadRequest(input *AbortMultipartUploadInput) (req *request.Request, output *AbortMultipartUploadOutput) {
52 op := &request.Operation{
53 Name: opAbortMultipartUpload,
55 HTTPPath: "/{Bucket}/{Key+}",
59 input = &AbortMultipartUploadInput{}
62 output = &AbortMultipartUploadOutput{}
63 req = c.newRequest(op, input, output)
67 // AbortMultipartUpload API operation for Amazon Simple Storage Service.
69 // Aborts a multipart upload.
71 // To verify that all parts have been removed, so you don't get charged for
72 // the part storage, you should call the List Parts operation and ensure the
73 // parts list is empty.
75 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
76 // with awserr.Error's Code and Message methods to get detailed information about
79 // See the AWS API reference guide for Amazon Simple Storage Service's
80 // API operation AbortMultipartUpload for usage and error information.
82 // Returned Error Codes:
83 // * ErrCodeNoSuchUpload "NoSuchUpload"
84 // The specified multipart upload does not exist.
86 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/AbortMultipartUpload
87 func (c *S3) AbortMultipartUpload(input *AbortMultipartUploadInput) (*AbortMultipartUploadOutput, error) {
88 req, out := c.AbortMultipartUploadRequest(input)
89 return out, req.Send()
92 // AbortMultipartUploadWithContext is the same as AbortMultipartUpload with the addition of
93 // the ability to pass a context and additional request options.
95 // See AbortMultipartUpload for details on how to use this API operation.
97 // The context must be non-nil and will be used for request cancellation. If
98 // the context is nil a panic will occur. In the future the SDK may create
99 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
100 // for more information on using Contexts.
101 func (c *S3) AbortMultipartUploadWithContext(ctx aws.Context, input *AbortMultipartUploadInput, opts ...request.Option) (*AbortMultipartUploadOutput, error) {
102 req, out := c.AbortMultipartUploadRequest(input)
104 req.ApplyOptions(opts...)
105 return out, req.Send()
108 const opCompleteMultipartUpload = "CompleteMultipartUpload"
110 // CompleteMultipartUploadRequest generates a "aws/request.Request" representing the
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
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.
118 // See CompleteMultipartUpload for more information on using the CompleteMultipartUpload
119 // API call, and error handling.
121 // This method is useful when you want to inject custom logic or configuration
122 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
125 // // Example sending a request using the CompleteMultipartUploadRequest method.
126 // req, resp := client.CompleteMultipartUploadRequest(params)
129 // if err == nil { // resp is now filled
133 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/CompleteMultipartUpload
134 func (c *S3) CompleteMultipartUploadRequest(input *CompleteMultipartUploadInput) (req *request.Request, output *CompleteMultipartUploadOutput) {
135 op := &request.Operation{
136 Name: opCompleteMultipartUpload,
138 HTTPPath: "/{Bucket}/{Key+}",
142 input = &CompleteMultipartUploadInput{}
145 output = &CompleteMultipartUploadOutput{}
146 req = c.newRequest(op, input, output)
150 // CompleteMultipartUpload API operation for Amazon Simple Storage Service.
152 // Completes a multipart upload by assembling previously uploaded parts.
154 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
155 // with awserr.Error's Code and Message methods to get detailed information about
158 // See the AWS API reference guide for Amazon Simple Storage Service's
159 // API operation CompleteMultipartUpload for usage and error information.
160 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/CompleteMultipartUpload
161 func (c *S3) CompleteMultipartUpload(input *CompleteMultipartUploadInput) (*CompleteMultipartUploadOutput, error) {
162 req, out := c.CompleteMultipartUploadRequest(input)
163 return out, req.Send()
166 // CompleteMultipartUploadWithContext is the same as CompleteMultipartUpload with the addition of
167 // the ability to pass a context and additional request options.
169 // See CompleteMultipartUpload for details on how to use this API operation.
171 // The context must be non-nil and will be used for request cancellation. If
172 // the context is nil a panic will occur. In the future the SDK may create
173 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
174 // for more information on using Contexts.
175 func (c *S3) CompleteMultipartUploadWithContext(ctx aws.Context, input *CompleteMultipartUploadInput, opts ...request.Option) (*CompleteMultipartUploadOutput, error) {
176 req, out := c.CompleteMultipartUploadRequest(input)
178 req.ApplyOptions(opts...)
179 return out, req.Send()
182 const opCopyObject = "CopyObject"
184 // CopyObjectRequest generates a "aws/request.Request" representing the
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
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.
192 // See CopyObject for more information on using the CopyObject
193 // API call, and error handling.
195 // This method is useful when you want to inject custom logic or configuration
196 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
199 // // Example sending a request using the CopyObjectRequest method.
200 // req, resp := client.CopyObjectRequest(params)
203 // if err == nil { // resp is now filled
207 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/CopyObject
208 func (c *S3) CopyObjectRequest(input *CopyObjectInput) (req *request.Request, output *CopyObjectOutput) {
209 op := &request.Operation{
212 HTTPPath: "/{Bucket}/{Key+}",
216 input = &CopyObjectInput{}
219 output = &CopyObjectOutput{}
220 req = c.newRequest(op, input, output)
224 // CopyObject API operation for Amazon Simple Storage Service.
226 // Creates a copy of an object that is already stored in Amazon S3.
228 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
229 // with awserr.Error's Code and Message methods to get detailed information about
232 // See the AWS API reference guide for Amazon Simple Storage Service's
233 // API operation CopyObject for usage and error information.
235 // Returned Error Codes:
236 // * ErrCodeObjectNotInActiveTierError "ObjectNotInActiveTierError"
237 // The source object of the COPY operation is not in the active tier and is
238 // only stored in Amazon Glacier.
240 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/CopyObject
241 func (c *S3) CopyObject(input *CopyObjectInput) (*CopyObjectOutput, error) {
242 req, out := c.CopyObjectRequest(input)
243 return out, req.Send()
246 // CopyObjectWithContext is the same as CopyObject with the addition of
247 // the ability to pass a context and additional request options.
249 // See CopyObject for details on how to use this API operation.
251 // The context must be non-nil and will be used for request cancellation. If
252 // the context is nil a panic will occur. In the future the SDK may create
253 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
254 // for more information on using Contexts.
255 func (c *S3) CopyObjectWithContext(ctx aws.Context, input *CopyObjectInput, opts ...request.Option) (*CopyObjectOutput, error) {
256 req, out := c.CopyObjectRequest(input)
258 req.ApplyOptions(opts...)
259 return out, req.Send()
262 const opCreateBucket = "CreateBucket"
264 // CreateBucketRequest generates a "aws/request.Request" representing the
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
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.
272 // See CreateBucket for more information on using the CreateBucket
273 // API call, and error handling.
275 // This method is useful when you want to inject custom logic or configuration
276 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
279 // // Example sending a request using the CreateBucketRequest method.
280 // req, resp := client.CreateBucketRequest(params)
283 // if err == nil { // resp is now filled
287 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/CreateBucket
288 func (c *S3) CreateBucketRequest(input *CreateBucketInput) (req *request.Request, output *CreateBucketOutput) {
289 op := &request.Operation{
290 Name: opCreateBucket,
292 HTTPPath: "/{Bucket}",
296 input = &CreateBucketInput{}
299 output = &CreateBucketOutput{}
300 req = c.newRequest(op, input, output)
304 // CreateBucket API operation for Amazon Simple Storage Service.
306 // Creates a new bucket.
308 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
309 // with awserr.Error's Code and Message methods to get detailed information about
312 // See the AWS API reference guide for Amazon Simple Storage Service's
313 // API operation CreateBucket for usage and error information.
315 // Returned Error Codes:
316 // * ErrCodeBucketAlreadyExists "BucketAlreadyExists"
317 // The requested bucket name is not available. The bucket namespace is shared
318 // by all users of the system. Please select a different name and try again.
320 // * ErrCodeBucketAlreadyOwnedByYou "BucketAlreadyOwnedByYou"
322 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/CreateBucket
323 func (c *S3) CreateBucket(input *CreateBucketInput) (*CreateBucketOutput, error) {
324 req, out := c.CreateBucketRequest(input)
325 return out, req.Send()
328 // CreateBucketWithContext is the same as CreateBucket with the addition of
329 // the ability to pass a context and additional request options.
331 // See CreateBucket for details on how to use this API operation.
333 // The context must be non-nil and will be used for request cancellation. If
334 // the context is nil a panic will occur. In the future the SDK may create
335 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
336 // for more information on using Contexts.
337 func (c *S3) CreateBucketWithContext(ctx aws.Context, input *CreateBucketInput, opts ...request.Option) (*CreateBucketOutput, error) {
338 req, out := c.CreateBucketRequest(input)
340 req.ApplyOptions(opts...)
341 return out, req.Send()
344 const opCreateMultipartUpload = "CreateMultipartUpload"
346 // CreateMultipartUploadRequest generates a "aws/request.Request" representing the
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
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.
354 // See CreateMultipartUpload for more information on using the CreateMultipartUpload
355 // API call, and error handling.
357 // This method is useful when you want to inject custom logic or configuration
358 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
361 // // Example sending a request using the CreateMultipartUploadRequest method.
362 // req, resp := client.CreateMultipartUploadRequest(params)
365 // if err == nil { // resp is now filled
369 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/CreateMultipartUpload
370 func (c *S3) CreateMultipartUploadRequest(input *CreateMultipartUploadInput) (req *request.Request, output *CreateMultipartUploadOutput) {
371 op := &request.Operation{
372 Name: opCreateMultipartUpload,
374 HTTPPath: "/{Bucket}/{Key+}?uploads",
378 input = &CreateMultipartUploadInput{}
381 output = &CreateMultipartUploadOutput{}
382 req = c.newRequest(op, input, output)
386 // CreateMultipartUpload API operation for Amazon Simple Storage Service.
388 // Initiates a multipart upload and returns an upload ID.
390 // Note: After you initiate multipart upload and upload one or more parts, you
391 // must either complete or abort multipart upload in order to stop getting charged
392 // for storage of the uploaded parts. Only after you either complete or abort
393 // multipart upload, Amazon S3 frees up the parts storage and stops charging
394 // you for the parts storage.
396 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
397 // with awserr.Error's Code and Message methods to get detailed information about
400 // See the AWS API reference guide for Amazon Simple Storage Service's
401 // API operation CreateMultipartUpload for usage and error information.
402 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/CreateMultipartUpload
403 func (c *S3) CreateMultipartUpload(input *CreateMultipartUploadInput) (*CreateMultipartUploadOutput, error) {
404 req, out := c.CreateMultipartUploadRequest(input)
405 return out, req.Send()
408 // CreateMultipartUploadWithContext is the same as CreateMultipartUpload with the addition of
409 // the ability to pass a context and additional request options.
411 // See CreateMultipartUpload for details on how to use this API operation.
413 // The context must be non-nil and will be used for request cancellation. If
414 // the context is nil a panic will occur. In the future the SDK may create
415 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
416 // for more information on using Contexts.
417 func (c *S3) CreateMultipartUploadWithContext(ctx aws.Context, input *CreateMultipartUploadInput, opts ...request.Option) (*CreateMultipartUploadOutput, error) {
418 req, out := c.CreateMultipartUploadRequest(input)
420 req.ApplyOptions(opts...)
421 return out, req.Send()
424 const opDeleteBucket = "DeleteBucket"
426 // DeleteBucketRequest generates a "aws/request.Request" representing the
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
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.
434 // See DeleteBucket for more information on using the DeleteBucket
435 // API call, and error handling.
437 // This method is useful when you want to inject custom logic or configuration
438 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
441 // // Example sending a request using the DeleteBucketRequest method.
442 // req, resp := client.DeleteBucketRequest(params)
445 // if err == nil { // resp is now filled
449 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucket
450 func (c *S3) DeleteBucketRequest(input *DeleteBucketInput) (req *request.Request, output *DeleteBucketOutput) {
451 op := &request.Operation{
452 Name: opDeleteBucket,
453 HTTPMethod: "DELETE",
454 HTTPPath: "/{Bucket}",
458 input = &DeleteBucketInput{}
461 output = &DeleteBucketOutput{}
462 req = c.newRequest(op, input, output)
463 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
467 // DeleteBucket API operation for Amazon Simple Storage Service.
469 // Deletes the bucket. All objects (including all object versions and Delete
470 // Markers) in the bucket must be deleted before the bucket itself can be deleted.
472 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
473 // with awserr.Error's Code and Message methods to get detailed information about
476 // See the AWS API reference guide for Amazon Simple Storage Service's
477 // API operation DeleteBucket for usage and error information.
478 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucket
479 func (c *S3) DeleteBucket(input *DeleteBucketInput) (*DeleteBucketOutput, error) {
480 req, out := c.DeleteBucketRequest(input)
481 return out, req.Send()
484 // DeleteBucketWithContext is the same as DeleteBucket with the addition of
485 // the ability to pass a context and additional request options.
487 // See DeleteBucket for details on how to use this API operation.
489 // The context must be non-nil and will be used for request cancellation. If
490 // the context is nil a panic will occur. In the future the SDK may create
491 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
492 // for more information on using Contexts.
493 func (c *S3) DeleteBucketWithContext(ctx aws.Context, input *DeleteBucketInput, opts ...request.Option) (*DeleteBucketOutput, error) {
494 req, out := c.DeleteBucketRequest(input)
496 req.ApplyOptions(opts...)
497 return out, req.Send()
500 const opDeleteBucketAnalyticsConfiguration = "DeleteBucketAnalyticsConfiguration"
502 // DeleteBucketAnalyticsConfigurationRequest generates a "aws/request.Request" representing the
503 // client's request for the DeleteBucketAnalyticsConfiguration operation. The "output" return
504 // value will be populated with the request's response once the request completes
507 // Use "Send" method on the returned Request to send the API call to the service.
508 // the "output" return value is not valid until after Send returns without error.
510 // See DeleteBucketAnalyticsConfiguration for more information on using the DeleteBucketAnalyticsConfiguration
511 // API call, and error handling.
513 // This method is useful when you want to inject custom logic or configuration
514 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
517 // // Example sending a request using the DeleteBucketAnalyticsConfigurationRequest method.
518 // req, resp := client.DeleteBucketAnalyticsConfigurationRequest(params)
521 // if err == nil { // resp is now filled
525 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketAnalyticsConfiguration
526 func (c *S3) DeleteBucketAnalyticsConfigurationRequest(input *DeleteBucketAnalyticsConfigurationInput) (req *request.Request, output *DeleteBucketAnalyticsConfigurationOutput) {
527 op := &request.Operation{
528 Name: opDeleteBucketAnalyticsConfiguration,
529 HTTPMethod: "DELETE",
530 HTTPPath: "/{Bucket}?analytics",
534 input = &DeleteBucketAnalyticsConfigurationInput{}
537 output = &DeleteBucketAnalyticsConfigurationOutput{}
538 req = c.newRequest(op, input, output)
539 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
543 // DeleteBucketAnalyticsConfiguration API operation for Amazon Simple Storage Service.
545 // Deletes an analytics configuration for the bucket (specified by the analytics
546 // configuration ID).
548 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
549 // with awserr.Error's Code and Message methods to get detailed information about
552 // See the AWS API reference guide for Amazon Simple Storage Service's
553 // API operation DeleteBucketAnalyticsConfiguration for usage and error information.
554 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketAnalyticsConfiguration
555 func (c *S3) DeleteBucketAnalyticsConfiguration(input *DeleteBucketAnalyticsConfigurationInput) (*DeleteBucketAnalyticsConfigurationOutput, error) {
556 req, out := c.DeleteBucketAnalyticsConfigurationRequest(input)
557 return out, req.Send()
560 // DeleteBucketAnalyticsConfigurationWithContext is the same as DeleteBucketAnalyticsConfiguration with the addition of
561 // the ability to pass a context and additional request options.
563 // See DeleteBucketAnalyticsConfiguration for details on how to use this API operation.
565 // The context must be non-nil and will be used for request cancellation. If
566 // the context is nil a panic will occur. In the future the SDK may create
567 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
568 // for more information on using Contexts.
569 func (c *S3) DeleteBucketAnalyticsConfigurationWithContext(ctx aws.Context, input *DeleteBucketAnalyticsConfigurationInput, opts ...request.Option) (*DeleteBucketAnalyticsConfigurationOutput, error) {
570 req, out := c.DeleteBucketAnalyticsConfigurationRequest(input)
572 req.ApplyOptions(opts...)
573 return out, req.Send()
576 const opDeleteBucketCors = "DeleteBucketCors"
578 // DeleteBucketCorsRequest generates a "aws/request.Request" representing the
579 // client's request for the DeleteBucketCors operation. The "output" return
580 // value will be populated with the request's response once the request completes
583 // Use "Send" method on the returned Request to send the API call to the service.
584 // the "output" return value is not valid until after Send returns without error.
586 // See DeleteBucketCors for more information on using the DeleteBucketCors
587 // API call, and error handling.
589 // This method is useful when you want to inject custom logic or configuration
590 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
593 // // Example sending a request using the DeleteBucketCorsRequest method.
594 // req, resp := client.DeleteBucketCorsRequest(params)
597 // if err == nil { // resp is now filled
601 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketCors
602 func (c *S3) DeleteBucketCorsRequest(input *DeleteBucketCorsInput) (req *request.Request, output *DeleteBucketCorsOutput) {
603 op := &request.Operation{
604 Name: opDeleteBucketCors,
605 HTTPMethod: "DELETE",
606 HTTPPath: "/{Bucket}?cors",
610 input = &DeleteBucketCorsInput{}
613 output = &DeleteBucketCorsOutput{}
614 req = c.newRequest(op, input, output)
615 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
619 // DeleteBucketCors API operation for Amazon Simple Storage Service.
621 // Deletes the CORS configuration information set for the bucket.
623 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
624 // with awserr.Error's Code and Message methods to get detailed information about
627 // See the AWS API reference guide for Amazon Simple Storage Service's
628 // API operation DeleteBucketCors for usage and error information.
629 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketCors
630 func (c *S3) DeleteBucketCors(input *DeleteBucketCorsInput) (*DeleteBucketCorsOutput, error) {
631 req, out := c.DeleteBucketCorsRequest(input)
632 return out, req.Send()
635 // DeleteBucketCorsWithContext is the same as DeleteBucketCors with the addition of
636 // the ability to pass a context and additional request options.
638 // See DeleteBucketCors for details on how to use this API operation.
640 // The context must be non-nil and will be used for request cancellation. If
641 // the context is nil a panic will occur. In the future the SDK may create
642 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
643 // for more information on using Contexts.
644 func (c *S3) DeleteBucketCorsWithContext(ctx aws.Context, input *DeleteBucketCorsInput, opts ...request.Option) (*DeleteBucketCorsOutput, error) {
645 req, out := c.DeleteBucketCorsRequest(input)
647 req.ApplyOptions(opts...)
648 return out, req.Send()
651 const opDeleteBucketEncryption = "DeleteBucketEncryption"
653 // DeleteBucketEncryptionRequest generates a "aws/request.Request" representing the
654 // client's request for the DeleteBucketEncryption operation. The "output" return
655 // value will be populated with the request's response once the request completes
658 // Use "Send" method on the returned Request to send the API call to the service.
659 // the "output" return value is not valid until after Send returns without error.
661 // See DeleteBucketEncryption for more information on using the DeleteBucketEncryption
662 // API call, and error handling.
664 // This method is useful when you want to inject custom logic or configuration
665 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
668 // // Example sending a request using the DeleteBucketEncryptionRequest method.
669 // req, resp := client.DeleteBucketEncryptionRequest(params)
672 // if err == nil { // resp is now filled
676 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketEncryption
677 func (c *S3) DeleteBucketEncryptionRequest(input *DeleteBucketEncryptionInput) (req *request.Request, output *DeleteBucketEncryptionOutput) {
678 op := &request.Operation{
679 Name: opDeleteBucketEncryption,
680 HTTPMethod: "DELETE",
681 HTTPPath: "/{Bucket}?encryption",
685 input = &DeleteBucketEncryptionInput{}
688 output = &DeleteBucketEncryptionOutput{}
689 req = c.newRequest(op, input, output)
690 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
694 // DeleteBucketEncryption API operation for Amazon Simple Storage Service.
696 // Deletes the server-side encryption configuration from the bucket.
698 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
699 // with awserr.Error's Code and Message methods to get detailed information about
702 // See the AWS API reference guide for Amazon Simple Storage Service's
703 // API operation DeleteBucketEncryption for usage and error information.
704 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketEncryption
705 func (c *S3) DeleteBucketEncryption(input *DeleteBucketEncryptionInput) (*DeleteBucketEncryptionOutput, error) {
706 req, out := c.DeleteBucketEncryptionRequest(input)
707 return out, req.Send()
710 // DeleteBucketEncryptionWithContext is the same as DeleteBucketEncryption with the addition of
711 // the ability to pass a context and additional request options.
713 // See DeleteBucketEncryption for details on how to use this API operation.
715 // The context must be non-nil and will be used for request cancellation. If
716 // the context is nil a panic will occur. In the future the SDK may create
717 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
718 // for more information on using Contexts.
719 func (c *S3) DeleteBucketEncryptionWithContext(ctx aws.Context, input *DeleteBucketEncryptionInput, opts ...request.Option) (*DeleteBucketEncryptionOutput, error) {
720 req, out := c.DeleteBucketEncryptionRequest(input)
722 req.ApplyOptions(opts...)
723 return out, req.Send()
726 const opDeleteBucketInventoryConfiguration = "DeleteBucketInventoryConfiguration"
728 // DeleteBucketInventoryConfigurationRequest generates a "aws/request.Request" representing the
729 // client's request for the DeleteBucketInventoryConfiguration operation. The "output" return
730 // value will be populated with the request's response once the request completes
733 // Use "Send" method on the returned Request to send the API call to the service.
734 // the "output" return value is not valid until after Send returns without error.
736 // See DeleteBucketInventoryConfiguration for more information on using the DeleteBucketInventoryConfiguration
737 // API call, and error handling.
739 // This method is useful when you want to inject custom logic or configuration
740 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
743 // // Example sending a request using the DeleteBucketInventoryConfigurationRequest method.
744 // req, resp := client.DeleteBucketInventoryConfigurationRequest(params)
747 // if err == nil { // resp is now filled
751 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketInventoryConfiguration
752 func (c *S3) DeleteBucketInventoryConfigurationRequest(input *DeleteBucketInventoryConfigurationInput) (req *request.Request, output *DeleteBucketInventoryConfigurationOutput) {
753 op := &request.Operation{
754 Name: opDeleteBucketInventoryConfiguration,
755 HTTPMethod: "DELETE",
756 HTTPPath: "/{Bucket}?inventory",
760 input = &DeleteBucketInventoryConfigurationInput{}
763 output = &DeleteBucketInventoryConfigurationOutput{}
764 req = c.newRequest(op, input, output)
765 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
769 // DeleteBucketInventoryConfiguration API operation for Amazon Simple Storage Service.
771 // Deletes an inventory configuration (identified by the inventory ID) from
774 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
775 // with awserr.Error's Code and Message methods to get detailed information about
778 // See the AWS API reference guide for Amazon Simple Storage Service's
779 // API operation DeleteBucketInventoryConfiguration for usage and error information.
780 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketInventoryConfiguration
781 func (c *S3) DeleteBucketInventoryConfiguration(input *DeleteBucketInventoryConfigurationInput) (*DeleteBucketInventoryConfigurationOutput, error) {
782 req, out := c.DeleteBucketInventoryConfigurationRequest(input)
783 return out, req.Send()
786 // DeleteBucketInventoryConfigurationWithContext is the same as DeleteBucketInventoryConfiguration with the addition of
787 // the ability to pass a context and additional request options.
789 // See DeleteBucketInventoryConfiguration for details on how to use this API operation.
791 // The context must be non-nil and will be used for request cancellation. If
792 // the context is nil a panic will occur. In the future the SDK may create
793 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
794 // for more information on using Contexts.
795 func (c *S3) DeleteBucketInventoryConfigurationWithContext(ctx aws.Context, input *DeleteBucketInventoryConfigurationInput, opts ...request.Option) (*DeleteBucketInventoryConfigurationOutput, error) {
796 req, out := c.DeleteBucketInventoryConfigurationRequest(input)
798 req.ApplyOptions(opts...)
799 return out, req.Send()
802 const opDeleteBucketLifecycle = "DeleteBucketLifecycle"
804 // DeleteBucketLifecycleRequest generates a "aws/request.Request" representing the
805 // client's request for the DeleteBucketLifecycle operation. The "output" return
806 // value will be populated with the request's response once the request completes
809 // Use "Send" method on the returned Request to send the API call to the service.
810 // the "output" return value is not valid until after Send returns without error.
812 // See DeleteBucketLifecycle for more information on using the DeleteBucketLifecycle
813 // API call, and error handling.
815 // This method is useful when you want to inject custom logic or configuration
816 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
819 // // Example sending a request using the DeleteBucketLifecycleRequest method.
820 // req, resp := client.DeleteBucketLifecycleRequest(params)
823 // if err == nil { // resp is now filled
827 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketLifecycle
828 func (c *S3) DeleteBucketLifecycleRequest(input *DeleteBucketLifecycleInput) (req *request.Request, output *DeleteBucketLifecycleOutput) {
829 op := &request.Operation{
830 Name: opDeleteBucketLifecycle,
831 HTTPMethod: "DELETE",
832 HTTPPath: "/{Bucket}?lifecycle",
836 input = &DeleteBucketLifecycleInput{}
839 output = &DeleteBucketLifecycleOutput{}
840 req = c.newRequest(op, input, output)
841 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
845 // DeleteBucketLifecycle API operation for Amazon Simple Storage Service.
847 // Deletes the lifecycle configuration from the bucket.
849 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
850 // with awserr.Error's Code and Message methods to get detailed information about
853 // See the AWS API reference guide for Amazon Simple Storage Service's
854 // API operation DeleteBucketLifecycle for usage and error information.
855 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketLifecycle
856 func (c *S3) DeleteBucketLifecycle(input *DeleteBucketLifecycleInput) (*DeleteBucketLifecycleOutput, error) {
857 req, out := c.DeleteBucketLifecycleRequest(input)
858 return out, req.Send()
861 // DeleteBucketLifecycleWithContext is the same as DeleteBucketLifecycle with the addition of
862 // the ability to pass a context and additional request options.
864 // See DeleteBucketLifecycle for details on how to use this API operation.
866 // The context must be non-nil and will be used for request cancellation. If
867 // the context is nil a panic will occur. In the future the SDK may create
868 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
869 // for more information on using Contexts.
870 func (c *S3) DeleteBucketLifecycleWithContext(ctx aws.Context, input *DeleteBucketLifecycleInput, opts ...request.Option) (*DeleteBucketLifecycleOutput, error) {
871 req, out := c.DeleteBucketLifecycleRequest(input)
873 req.ApplyOptions(opts...)
874 return out, req.Send()
877 const opDeleteBucketMetricsConfiguration = "DeleteBucketMetricsConfiguration"
879 // DeleteBucketMetricsConfigurationRequest generates a "aws/request.Request" representing the
880 // client's request for the DeleteBucketMetricsConfiguration operation. The "output" return
881 // value will be populated with the request's response once the request completes
884 // Use "Send" method on the returned Request to send the API call to the service.
885 // the "output" return value is not valid until after Send returns without error.
887 // See DeleteBucketMetricsConfiguration for more information on using the DeleteBucketMetricsConfiguration
888 // API call, and error handling.
890 // This method is useful when you want to inject custom logic or configuration
891 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
894 // // Example sending a request using the DeleteBucketMetricsConfigurationRequest method.
895 // req, resp := client.DeleteBucketMetricsConfigurationRequest(params)
898 // if err == nil { // resp is now filled
902 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketMetricsConfiguration
903 func (c *S3) DeleteBucketMetricsConfigurationRequest(input *DeleteBucketMetricsConfigurationInput) (req *request.Request, output *DeleteBucketMetricsConfigurationOutput) {
904 op := &request.Operation{
905 Name: opDeleteBucketMetricsConfiguration,
906 HTTPMethod: "DELETE",
907 HTTPPath: "/{Bucket}?metrics",
911 input = &DeleteBucketMetricsConfigurationInput{}
914 output = &DeleteBucketMetricsConfigurationOutput{}
915 req = c.newRequest(op, input, output)
916 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
920 // DeleteBucketMetricsConfiguration API operation for Amazon Simple Storage Service.
922 // Deletes a metrics configuration (specified by the metrics configuration ID)
925 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
926 // with awserr.Error's Code and Message methods to get detailed information about
929 // See the AWS API reference guide for Amazon Simple Storage Service's
930 // API operation DeleteBucketMetricsConfiguration for usage and error information.
931 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketMetricsConfiguration
932 func (c *S3) DeleteBucketMetricsConfiguration(input *DeleteBucketMetricsConfigurationInput) (*DeleteBucketMetricsConfigurationOutput, error) {
933 req, out := c.DeleteBucketMetricsConfigurationRequest(input)
934 return out, req.Send()
937 // DeleteBucketMetricsConfigurationWithContext is the same as DeleteBucketMetricsConfiguration with the addition of
938 // the ability to pass a context and additional request options.
940 // See DeleteBucketMetricsConfiguration for details on how to use this API operation.
942 // The context must be non-nil and will be used for request cancellation. If
943 // the context is nil a panic will occur. In the future the SDK may create
944 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
945 // for more information on using Contexts.
946 func (c *S3) DeleteBucketMetricsConfigurationWithContext(ctx aws.Context, input *DeleteBucketMetricsConfigurationInput, opts ...request.Option) (*DeleteBucketMetricsConfigurationOutput, error) {
947 req, out := c.DeleteBucketMetricsConfigurationRequest(input)
949 req.ApplyOptions(opts...)
950 return out, req.Send()
953 const opDeleteBucketPolicy = "DeleteBucketPolicy"
955 // DeleteBucketPolicyRequest generates a "aws/request.Request" representing the
956 // client's request for the DeleteBucketPolicy operation. The "output" return
957 // value will be populated with the request's response once the request completes
960 // Use "Send" method on the returned Request to send the API call to the service.
961 // the "output" return value is not valid until after Send returns without error.
963 // See DeleteBucketPolicy for more information on using the DeleteBucketPolicy
964 // API call, and error handling.
966 // This method is useful when you want to inject custom logic or configuration
967 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
970 // // Example sending a request using the DeleteBucketPolicyRequest method.
971 // req, resp := client.DeleteBucketPolicyRequest(params)
974 // if err == nil { // resp is now filled
978 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketPolicy
979 func (c *S3) DeleteBucketPolicyRequest(input *DeleteBucketPolicyInput) (req *request.Request, output *DeleteBucketPolicyOutput) {
980 op := &request.Operation{
981 Name: opDeleteBucketPolicy,
982 HTTPMethod: "DELETE",
983 HTTPPath: "/{Bucket}?policy",
987 input = &DeleteBucketPolicyInput{}
990 output = &DeleteBucketPolicyOutput{}
991 req = c.newRequest(op, input, output)
992 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
996 // DeleteBucketPolicy API operation for Amazon Simple Storage Service.
998 // Deletes the policy from the bucket.
1000 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1001 // with awserr.Error's Code and Message methods to get detailed information about
1004 // See the AWS API reference guide for Amazon Simple Storage Service's
1005 // API operation DeleteBucketPolicy for usage and error information.
1006 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketPolicy
1007 func (c *S3) DeleteBucketPolicy(input *DeleteBucketPolicyInput) (*DeleteBucketPolicyOutput, error) {
1008 req, out := c.DeleteBucketPolicyRequest(input)
1009 return out, req.Send()
1012 // DeleteBucketPolicyWithContext is the same as DeleteBucketPolicy with the addition of
1013 // the ability to pass a context and additional request options.
1015 // See DeleteBucketPolicy for details on how to use this API operation.
1017 // The context must be non-nil and will be used for request cancellation. If
1018 // the context is nil a panic will occur. In the future the SDK may create
1019 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
1020 // for more information on using Contexts.
1021 func (c *S3) DeleteBucketPolicyWithContext(ctx aws.Context, input *DeleteBucketPolicyInput, opts ...request.Option) (*DeleteBucketPolicyOutput, error) {
1022 req, out := c.DeleteBucketPolicyRequest(input)
1024 req.ApplyOptions(opts...)
1025 return out, req.Send()
1028 const opDeleteBucketReplication = "DeleteBucketReplication"
1030 // DeleteBucketReplicationRequest generates a "aws/request.Request" representing the
1031 // client's request for the DeleteBucketReplication operation. The "output" return
1032 // value will be populated with the request's response once the request completes
1035 // Use "Send" method on the returned Request to send the API call to the service.
1036 // the "output" return value is not valid until after Send returns without error.
1038 // See DeleteBucketReplication for more information on using the DeleteBucketReplication
1039 // API call, and error handling.
1041 // This method is useful when you want to inject custom logic or configuration
1042 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
1045 // // Example sending a request using the DeleteBucketReplicationRequest method.
1046 // req, resp := client.DeleteBucketReplicationRequest(params)
1048 // err := req.Send()
1049 // if err == nil { // resp is now filled
1050 // fmt.Println(resp)
1053 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketReplication
1054 func (c *S3) DeleteBucketReplicationRequest(input *DeleteBucketReplicationInput) (req *request.Request, output *DeleteBucketReplicationOutput) {
1055 op := &request.Operation{
1056 Name: opDeleteBucketReplication,
1057 HTTPMethod: "DELETE",
1058 HTTPPath: "/{Bucket}?replication",
1062 input = &DeleteBucketReplicationInput{}
1065 output = &DeleteBucketReplicationOutput{}
1066 req = c.newRequest(op, input, output)
1067 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1071 // DeleteBucketReplication API operation for Amazon Simple Storage Service.
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.
1077 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1078 // with awserr.Error's Code and Message methods to get detailed information about
1081 // See the AWS API reference guide for Amazon Simple Storage Service's
1082 // API operation DeleteBucketReplication for usage and error information.
1083 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketReplication
1084 func (c *S3) DeleteBucketReplication(input *DeleteBucketReplicationInput) (*DeleteBucketReplicationOutput, error) {
1085 req, out := c.DeleteBucketReplicationRequest(input)
1086 return out, req.Send()
1089 // DeleteBucketReplicationWithContext is the same as DeleteBucketReplication with the addition of
1090 // the ability to pass a context and additional request options.
1092 // See DeleteBucketReplication for details on how to use this API operation.
1094 // The context must be non-nil and will be used for request cancellation. If
1095 // the context is nil a panic will occur. In the future the SDK may create
1096 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
1097 // for more information on using Contexts.
1098 func (c *S3) DeleteBucketReplicationWithContext(ctx aws.Context, input *DeleteBucketReplicationInput, opts ...request.Option) (*DeleteBucketReplicationOutput, error) {
1099 req, out := c.DeleteBucketReplicationRequest(input)
1101 req.ApplyOptions(opts...)
1102 return out, req.Send()
1105 const opDeleteBucketTagging = "DeleteBucketTagging"
1107 // DeleteBucketTaggingRequest generates a "aws/request.Request" representing the
1108 // client's request for the DeleteBucketTagging operation. The "output" return
1109 // value will be populated with the request's response once the request completes
1112 // Use "Send" method on the returned Request to send the API call to the service.
1113 // the "output" return value is not valid until after Send returns without error.
1115 // See DeleteBucketTagging for more information on using the DeleteBucketTagging
1116 // API call, and error handling.
1118 // This method is useful when you want to inject custom logic or configuration
1119 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
1122 // // Example sending a request using the DeleteBucketTaggingRequest method.
1123 // req, resp := client.DeleteBucketTaggingRequest(params)
1125 // err := req.Send()
1126 // if err == nil { // resp is now filled
1127 // fmt.Println(resp)
1130 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketTagging
1131 func (c *S3) DeleteBucketTaggingRequest(input *DeleteBucketTaggingInput) (req *request.Request, output *DeleteBucketTaggingOutput) {
1132 op := &request.Operation{
1133 Name: opDeleteBucketTagging,
1134 HTTPMethod: "DELETE",
1135 HTTPPath: "/{Bucket}?tagging",
1139 input = &DeleteBucketTaggingInput{}
1142 output = &DeleteBucketTaggingOutput{}
1143 req = c.newRequest(op, input, output)
1144 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1148 // DeleteBucketTagging API operation for Amazon Simple Storage Service.
1150 // Deletes the tags from the bucket.
1152 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1153 // with awserr.Error's Code and Message methods to get detailed information about
1156 // See the AWS API reference guide for Amazon Simple Storage Service's
1157 // API operation DeleteBucketTagging for usage and error information.
1158 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketTagging
1159 func (c *S3) DeleteBucketTagging(input *DeleteBucketTaggingInput) (*DeleteBucketTaggingOutput, error) {
1160 req, out := c.DeleteBucketTaggingRequest(input)
1161 return out, req.Send()
1164 // DeleteBucketTaggingWithContext is the same as DeleteBucketTagging with the addition of
1165 // the ability to pass a context and additional request options.
1167 // See DeleteBucketTagging for details on how to use this API operation.
1169 // The context must be non-nil and will be used for request cancellation. If
1170 // the context is nil a panic will occur. In the future the SDK may create
1171 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
1172 // for more information on using Contexts.
1173 func (c *S3) DeleteBucketTaggingWithContext(ctx aws.Context, input *DeleteBucketTaggingInput, opts ...request.Option) (*DeleteBucketTaggingOutput, error) {
1174 req, out := c.DeleteBucketTaggingRequest(input)
1176 req.ApplyOptions(opts...)
1177 return out, req.Send()
1180 const opDeleteBucketWebsite = "DeleteBucketWebsite"
1182 // DeleteBucketWebsiteRequest generates a "aws/request.Request" representing the
1183 // client's request for the DeleteBucketWebsite operation. The "output" return
1184 // value will be populated with the request's response once the request completes
1187 // Use "Send" method on the returned Request to send the API call to the service.
1188 // the "output" return value is not valid until after Send returns without error.
1190 // See DeleteBucketWebsite for more information on using the DeleteBucketWebsite
1191 // API call, and error handling.
1193 // This method is useful when you want to inject custom logic or configuration
1194 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
1197 // // Example sending a request using the DeleteBucketWebsiteRequest method.
1198 // req, resp := client.DeleteBucketWebsiteRequest(params)
1200 // err := req.Send()
1201 // if err == nil { // resp is now filled
1202 // fmt.Println(resp)
1205 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketWebsite
1206 func (c *S3) DeleteBucketWebsiteRequest(input *DeleteBucketWebsiteInput) (req *request.Request, output *DeleteBucketWebsiteOutput) {
1207 op := &request.Operation{
1208 Name: opDeleteBucketWebsite,
1209 HTTPMethod: "DELETE",
1210 HTTPPath: "/{Bucket}?website",
1214 input = &DeleteBucketWebsiteInput{}
1217 output = &DeleteBucketWebsiteOutput{}
1218 req = c.newRequest(op, input, output)
1219 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1223 // DeleteBucketWebsite API operation for Amazon Simple Storage Service.
1225 // This operation removes the website configuration from the bucket.
1227 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1228 // with awserr.Error's Code and Message methods to get detailed information about
1231 // See the AWS API reference guide for Amazon Simple Storage Service's
1232 // API operation DeleteBucketWebsite for usage and error information.
1233 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketWebsite
1234 func (c *S3) DeleteBucketWebsite(input *DeleteBucketWebsiteInput) (*DeleteBucketWebsiteOutput, error) {
1235 req, out := c.DeleteBucketWebsiteRequest(input)
1236 return out, req.Send()
1239 // DeleteBucketWebsiteWithContext is the same as DeleteBucketWebsite with the addition of
1240 // the ability to pass a context and additional request options.
1242 // See DeleteBucketWebsite for details on how to use this API operation.
1244 // The context must be non-nil and will be used for request cancellation. If
1245 // the context is nil a panic will occur. In the future the SDK may create
1246 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
1247 // for more information on using Contexts.
1248 func (c *S3) DeleteBucketWebsiteWithContext(ctx aws.Context, input *DeleteBucketWebsiteInput, opts ...request.Option) (*DeleteBucketWebsiteOutput, error) {
1249 req, out := c.DeleteBucketWebsiteRequest(input)
1251 req.ApplyOptions(opts...)
1252 return out, req.Send()
1255 const opDeleteObject = "DeleteObject"
1257 // DeleteObjectRequest generates a "aws/request.Request" representing the
1258 // client's request for the DeleteObject operation. The "output" return
1259 // value will be populated with the request's response once the request completes
1262 // Use "Send" method on the returned Request to send the API call to the service.
1263 // the "output" return value is not valid until after Send returns without error.
1265 // See DeleteObject for more information on using the DeleteObject
1266 // API call, and error handling.
1268 // This method is useful when you want to inject custom logic or configuration
1269 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
1272 // // Example sending a request using the DeleteObjectRequest method.
1273 // req, resp := client.DeleteObjectRequest(params)
1275 // err := req.Send()
1276 // if err == nil { // resp is now filled
1277 // fmt.Println(resp)
1280 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteObject
1281 func (c *S3) DeleteObjectRequest(input *DeleteObjectInput) (req *request.Request, output *DeleteObjectOutput) {
1282 op := &request.Operation{
1283 Name: opDeleteObject,
1284 HTTPMethod: "DELETE",
1285 HTTPPath: "/{Bucket}/{Key+}",
1289 input = &DeleteObjectInput{}
1292 output = &DeleteObjectOutput{}
1293 req = c.newRequest(op, input, output)
1297 // DeleteObject API operation for Amazon Simple Storage Service.
1299 // Removes the null version (if there is one) of an object and inserts a delete
1300 // marker, which becomes the latest version of the object. If there isn't a
1301 // null version, Amazon S3 does not remove any objects.
1303 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1304 // with awserr.Error's Code and Message methods to get detailed information about
1307 // See the AWS API reference guide for Amazon Simple Storage Service's
1308 // API operation DeleteObject for usage and error information.
1309 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteObject
1310 func (c *S3) DeleteObject(input *DeleteObjectInput) (*DeleteObjectOutput, error) {
1311 req, out := c.DeleteObjectRequest(input)
1312 return out, req.Send()
1315 // DeleteObjectWithContext is the same as DeleteObject with the addition of
1316 // the ability to pass a context and additional request options.
1318 // See DeleteObject for details on how to use this API operation.
1320 // The context must be non-nil and will be used for request cancellation. If
1321 // the context is nil a panic will occur. In the future the SDK may create
1322 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
1323 // for more information on using Contexts.
1324 func (c *S3) DeleteObjectWithContext(ctx aws.Context, input *DeleteObjectInput, opts ...request.Option) (*DeleteObjectOutput, error) {
1325 req, out := c.DeleteObjectRequest(input)
1327 req.ApplyOptions(opts...)
1328 return out, req.Send()
1331 const opDeleteObjectTagging = "DeleteObjectTagging"
1333 // DeleteObjectTaggingRequest generates a "aws/request.Request" representing the
1334 // client's request for the DeleteObjectTagging operation. The "output" return
1335 // value will be populated with the request's response once the request completes
1338 // Use "Send" method on the returned Request to send the API call to the service.
1339 // the "output" return value is not valid until after Send returns without error.
1341 // See DeleteObjectTagging for more information on using the DeleteObjectTagging
1342 // API call, and error handling.
1344 // This method is useful when you want to inject custom logic or configuration
1345 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
1348 // // Example sending a request using the DeleteObjectTaggingRequest method.
1349 // req, resp := client.DeleteObjectTaggingRequest(params)
1351 // err := req.Send()
1352 // if err == nil { // resp is now filled
1353 // fmt.Println(resp)
1356 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteObjectTagging
1357 func (c *S3) DeleteObjectTaggingRequest(input *DeleteObjectTaggingInput) (req *request.Request, output *DeleteObjectTaggingOutput) {
1358 op := &request.Operation{
1359 Name: opDeleteObjectTagging,
1360 HTTPMethod: "DELETE",
1361 HTTPPath: "/{Bucket}/{Key+}?tagging",
1365 input = &DeleteObjectTaggingInput{}
1368 output = &DeleteObjectTaggingOutput{}
1369 req = c.newRequest(op, input, output)
1373 // DeleteObjectTagging API operation for Amazon Simple Storage Service.
1375 // Removes the tag-set from an existing object.
1377 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1378 // with awserr.Error's Code and Message methods to get detailed information about
1381 // See the AWS API reference guide for Amazon Simple Storage Service's
1382 // API operation DeleteObjectTagging for usage and error information.
1383 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteObjectTagging
1384 func (c *S3) DeleteObjectTagging(input *DeleteObjectTaggingInput) (*DeleteObjectTaggingOutput, error) {
1385 req, out := c.DeleteObjectTaggingRequest(input)
1386 return out, req.Send()
1389 // DeleteObjectTaggingWithContext is the same as DeleteObjectTagging with the addition of
1390 // the ability to pass a context and additional request options.
1392 // See DeleteObjectTagging for details on how to use this API operation.
1394 // The context must be non-nil and will be used for request cancellation. If
1395 // the context is nil a panic will occur. In the future the SDK may create
1396 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
1397 // for more information on using Contexts.
1398 func (c *S3) DeleteObjectTaggingWithContext(ctx aws.Context, input *DeleteObjectTaggingInput, opts ...request.Option) (*DeleteObjectTaggingOutput, error) {
1399 req, out := c.DeleteObjectTaggingRequest(input)
1401 req.ApplyOptions(opts...)
1402 return out, req.Send()
1405 const opDeleteObjects = "DeleteObjects"
1407 // DeleteObjectsRequest generates a "aws/request.Request" representing the
1408 // client's request for the DeleteObjects operation. The "output" return
1409 // value will be populated with the request's response once the request completes
1412 // Use "Send" method on the returned Request to send the API call to the service.
1413 // the "output" return value is not valid until after Send returns without error.
1415 // See DeleteObjects for more information on using the DeleteObjects
1416 // API call, and error handling.
1418 // This method is useful when you want to inject custom logic or configuration
1419 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
1422 // // Example sending a request using the DeleteObjectsRequest method.
1423 // req, resp := client.DeleteObjectsRequest(params)
1425 // err := req.Send()
1426 // if err == nil { // resp is now filled
1427 // fmt.Println(resp)
1430 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteObjects
1431 func (c *S3) DeleteObjectsRequest(input *DeleteObjectsInput) (req *request.Request, output *DeleteObjectsOutput) {
1432 op := &request.Operation{
1433 Name: opDeleteObjects,
1435 HTTPPath: "/{Bucket}?delete",
1439 input = &DeleteObjectsInput{}
1442 output = &DeleteObjectsOutput{}
1443 req = c.newRequest(op, input, output)
1447 // DeleteObjects API operation for Amazon Simple Storage Service.
1449 // This operation enables you to delete multiple objects from a bucket using
1450 // a single HTTP request. You may specify up to 1000 keys.
1452 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1453 // with awserr.Error's Code and Message methods to get detailed information about
1456 // See the AWS API reference guide for Amazon Simple Storage Service's
1457 // API operation DeleteObjects for usage and error information.
1458 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteObjects
1459 func (c *S3) DeleteObjects(input *DeleteObjectsInput) (*DeleteObjectsOutput, error) {
1460 req, out := c.DeleteObjectsRequest(input)
1461 return out, req.Send()
1464 // DeleteObjectsWithContext is the same as DeleteObjects with the addition of
1465 // the ability to pass a context and additional request options.
1467 // See DeleteObjects for details on how to use this API operation.
1469 // The context must be non-nil and will be used for request cancellation. If
1470 // the context is nil a panic will occur. In the future the SDK may create
1471 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
1472 // for more information on using Contexts.
1473 func (c *S3) DeleteObjectsWithContext(ctx aws.Context, input *DeleteObjectsInput, opts ...request.Option) (*DeleteObjectsOutput, error) {
1474 req, out := c.DeleteObjectsRequest(input)
1476 req.ApplyOptions(opts...)
1477 return out, req.Send()
1480 const opDeletePublicAccessBlock = "DeletePublicAccessBlock"
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
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.
1490 // See DeletePublicAccessBlock for more information on using the DeletePublicAccessBlock
1491 // API call, and error handling.
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.
1497 // // Example sending a request using the DeletePublicAccessBlockRequest method.
1498 // req, resp := client.DeletePublicAccessBlockRequest(params)
1500 // err := req.Send()
1501 // if err == nil { // resp is now filled
1502 // fmt.Println(resp)
1505 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeletePublicAccessBlock
1506 func (c *S3) DeletePublicAccessBlockRequest(input *DeletePublicAccessBlockInput) (req *request.Request, output *DeletePublicAccessBlockOutput) {
1507 op := &request.Operation{
1508 Name: opDeletePublicAccessBlock,
1509 HTTPMethod: "DELETE",
1510 HTTPPath: "/{Bucket}?publicAccessBlock",
1514 input = &DeletePublicAccessBlockInput{}
1517 output = &DeletePublicAccessBlockOutput{}
1518 req = c.newRequest(op, input, output)
1519 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1523 // DeletePublicAccessBlock API operation for Amazon Simple Storage Service.
1525 // Removes the PublicAccessBlock configuration from an Amazon S3 bucket.
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
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
1534 func (c *S3) DeletePublicAccessBlock(input *DeletePublicAccessBlockInput) (*DeletePublicAccessBlockOutput, error) {
1535 req, out := c.DeletePublicAccessBlockRequest(input)
1536 return out, req.Send()
1539 // DeletePublicAccessBlockWithContext is the same as DeletePublicAccessBlock with the addition of
1540 // the ability to pass a context and additional request options.
1542 // See DeletePublicAccessBlock for details on how to use this API operation.
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.
1548 func (c *S3) DeletePublicAccessBlockWithContext(ctx aws.Context, input *DeletePublicAccessBlockInput, opts ...request.Option) (*DeletePublicAccessBlockOutput, error) {
1549 req, out := c.DeletePublicAccessBlockRequest(input)
1551 req.ApplyOptions(opts...)
1552 return out, req.Send()
1555 const opGetBucketAccelerateConfiguration = "GetBucketAccelerateConfiguration"
1557 // GetBucketAccelerateConfigurationRequest generates a "aws/request.Request" representing the
1558 // client's request for the GetBucketAccelerateConfiguration operation. The "output" return
1559 // value will be populated with the request's response once the request completes
1562 // Use "Send" method on the returned Request to send the API call to the service.
1563 // the "output" return value is not valid until after Send returns without error.
1565 // See GetBucketAccelerateConfiguration for more information on using the GetBucketAccelerateConfiguration
1566 // API call, and error handling.
1568 // This method is useful when you want to inject custom logic or configuration
1569 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
1572 // // Example sending a request using the GetBucketAccelerateConfigurationRequest method.
1573 // req, resp := client.GetBucketAccelerateConfigurationRequest(params)
1575 // err := req.Send()
1576 // if err == nil { // resp is now filled
1577 // fmt.Println(resp)
1580 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketAccelerateConfiguration
1581 func (c *S3) GetBucketAccelerateConfigurationRequest(input *GetBucketAccelerateConfigurationInput) (req *request.Request, output *GetBucketAccelerateConfigurationOutput) {
1582 op := &request.Operation{
1583 Name: opGetBucketAccelerateConfiguration,
1585 HTTPPath: "/{Bucket}?accelerate",
1589 input = &GetBucketAccelerateConfigurationInput{}
1592 output = &GetBucketAccelerateConfigurationOutput{}
1593 req = c.newRequest(op, input, output)
1597 // GetBucketAccelerateConfiguration API operation for Amazon Simple Storage Service.
1599 // Returns the accelerate configuration of a bucket.
1601 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1602 // with awserr.Error's Code and Message methods to get detailed information about
1605 // See the AWS API reference guide for Amazon Simple Storage Service's
1606 // API operation GetBucketAccelerateConfiguration for usage and error information.
1607 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketAccelerateConfiguration
1608 func (c *S3) GetBucketAccelerateConfiguration(input *GetBucketAccelerateConfigurationInput) (*GetBucketAccelerateConfigurationOutput, error) {
1609 req, out := c.GetBucketAccelerateConfigurationRequest(input)
1610 return out, req.Send()
1613 // GetBucketAccelerateConfigurationWithContext is the same as GetBucketAccelerateConfiguration with the addition of
1614 // the ability to pass a context and additional request options.
1616 // See GetBucketAccelerateConfiguration for details on how to use this API operation.
1618 // The context must be non-nil and will be used for request cancellation. If
1619 // the context is nil a panic will occur. In the future the SDK may create
1620 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
1621 // for more information on using Contexts.
1622 func (c *S3) GetBucketAccelerateConfigurationWithContext(ctx aws.Context, input *GetBucketAccelerateConfigurationInput, opts ...request.Option) (*GetBucketAccelerateConfigurationOutput, error) {
1623 req, out := c.GetBucketAccelerateConfigurationRequest(input)
1625 req.ApplyOptions(opts...)
1626 return out, req.Send()
1629 const opGetBucketAcl = "GetBucketAcl"
1631 // GetBucketAclRequest generates a "aws/request.Request" representing the
1632 // client's request for the GetBucketAcl operation. The "output" return
1633 // value will be populated with the request's response once the request completes
1636 // Use "Send" method on the returned Request to send the API call to the service.
1637 // the "output" return value is not valid until after Send returns without error.
1639 // See GetBucketAcl for more information on using the GetBucketAcl
1640 // API call, and error handling.
1642 // This method is useful when you want to inject custom logic or configuration
1643 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
1646 // // Example sending a request using the GetBucketAclRequest method.
1647 // req, resp := client.GetBucketAclRequest(params)
1649 // err := req.Send()
1650 // if err == nil { // resp is now filled
1651 // fmt.Println(resp)
1654 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketAcl
1655 func (c *S3) GetBucketAclRequest(input *GetBucketAclInput) (req *request.Request, output *GetBucketAclOutput) {
1656 op := &request.Operation{
1657 Name: opGetBucketAcl,
1659 HTTPPath: "/{Bucket}?acl",
1663 input = &GetBucketAclInput{}
1666 output = &GetBucketAclOutput{}
1667 req = c.newRequest(op, input, output)
1671 // GetBucketAcl API operation for Amazon Simple Storage Service.
1673 // Gets the access control policy for the bucket.
1675 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1676 // with awserr.Error's Code and Message methods to get detailed information about
1679 // See the AWS API reference guide for Amazon Simple Storage Service's
1680 // API operation GetBucketAcl for usage and error information.
1681 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketAcl
1682 func (c *S3) GetBucketAcl(input *GetBucketAclInput) (*GetBucketAclOutput, error) {
1683 req, out := c.GetBucketAclRequest(input)
1684 return out, req.Send()
1687 // GetBucketAclWithContext is the same as GetBucketAcl with the addition of
1688 // the ability to pass a context and additional request options.
1690 // See GetBucketAcl for details on how to use this API operation.
1692 // The context must be non-nil and will be used for request cancellation. If
1693 // the context is nil a panic will occur. In the future the SDK may create
1694 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
1695 // for more information on using Contexts.
1696 func (c *S3) GetBucketAclWithContext(ctx aws.Context, input *GetBucketAclInput, opts ...request.Option) (*GetBucketAclOutput, error) {
1697 req, out := c.GetBucketAclRequest(input)
1699 req.ApplyOptions(opts...)
1700 return out, req.Send()
1703 const opGetBucketAnalyticsConfiguration = "GetBucketAnalyticsConfiguration"
1705 // GetBucketAnalyticsConfigurationRequest generates a "aws/request.Request" representing the
1706 // client's request for the GetBucketAnalyticsConfiguration operation. The "output" return
1707 // value will be populated with the request's response once the request completes
1710 // Use "Send" method on the returned Request to send the API call to the service.
1711 // the "output" return value is not valid until after Send returns without error.
1713 // See GetBucketAnalyticsConfiguration for more information on using the GetBucketAnalyticsConfiguration
1714 // API call, and error handling.
1716 // This method is useful when you want to inject custom logic or configuration
1717 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
1720 // // Example sending a request using the GetBucketAnalyticsConfigurationRequest method.
1721 // req, resp := client.GetBucketAnalyticsConfigurationRequest(params)
1723 // err := req.Send()
1724 // if err == nil { // resp is now filled
1725 // fmt.Println(resp)
1728 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketAnalyticsConfiguration
1729 func (c *S3) GetBucketAnalyticsConfigurationRequest(input *GetBucketAnalyticsConfigurationInput) (req *request.Request, output *GetBucketAnalyticsConfigurationOutput) {
1730 op := &request.Operation{
1731 Name: opGetBucketAnalyticsConfiguration,
1733 HTTPPath: "/{Bucket}?analytics",
1737 input = &GetBucketAnalyticsConfigurationInput{}
1740 output = &GetBucketAnalyticsConfigurationOutput{}
1741 req = c.newRequest(op, input, output)
1745 // GetBucketAnalyticsConfiguration API operation for Amazon Simple Storage Service.
1747 // Gets an analytics configuration for the bucket (specified by the analytics
1748 // configuration ID).
1750 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1751 // with awserr.Error's Code and Message methods to get detailed information about
1754 // See the AWS API reference guide for Amazon Simple Storage Service's
1755 // API operation GetBucketAnalyticsConfiguration for usage and error information.
1756 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketAnalyticsConfiguration
1757 func (c *S3) GetBucketAnalyticsConfiguration(input *GetBucketAnalyticsConfigurationInput) (*GetBucketAnalyticsConfigurationOutput, error) {
1758 req, out := c.GetBucketAnalyticsConfigurationRequest(input)
1759 return out, req.Send()
1762 // GetBucketAnalyticsConfigurationWithContext is the same as GetBucketAnalyticsConfiguration with the addition of
1763 // the ability to pass a context and additional request options.
1765 // See GetBucketAnalyticsConfiguration for details on how to use this API operation.
1767 // The context must be non-nil and will be used for request cancellation. If
1768 // the context is nil a panic will occur. In the future the SDK may create
1769 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
1770 // for more information on using Contexts.
1771 func (c *S3) GetBucketAnalyticsConfigurationWithContext(ctx aws.Context, input *GetBucketAnalyticsConfigurationInput, opts ...request.Option) (*GetBucketAnalyticsConfigurationOutput, error) {
1772 req, out := c.GetBucketAnalyticsConfigurationRequest(input)
1774 req.ApplyOptions(opts...)
1775 return out, req.Send()
1778 const opGetBucketCors = "GetBucketCors"
1780 // GetBucketCorsRequest generates a "aws/request.Request" representing the
1781 // client's request for the GetBucketCors operation. The "output" return
1782 // value will be populated with the request's response once the request completes
1785 // Use "Send" method on the returned Request to send the API call to the service.
1786 // the "output" return value is not valid until after Send returns without error.
1788 // See GetBucketCors for more information on using the GetBucketCors
1789 // API call, and error handling.
1791 // This method is useful when you want to inject custom logic or configuration
1792 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
1795 // // Example sending a request using the GetBucketCorsRequest method.
1796 // req, resp := client.GetBucketCorsRequest(params)
1798 // err := req.Send()
1799 // if err == nil { // resp is now filled
1800 // fmt.Println(resp)
1803 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketCors
1804 func (c *S3) GetBucketCorsRequest(input *GetBucketCorsInput) (req *request.Request, output *GetBucketCorsOutput) {
1805 op := &request.Operation{
1806 Name: opGetBucketCors,
1808 HTTPPath: "/{Bucket}?cors",
1812 input = &GetBucketCorsInput{}
1815 output = &GetBucketCorsOutput{}
1816 req = c.newRequest(op, input, output)
1820 // GetBucketCors API operation for Amazon Simple Storage Service.
1822 // Returns the CORS configuration for the bucket.
1824 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1825 // with awserr.Error's Code and Message methods to get detailed information about
1828 // See the AWS API reference guide for Amazon Simple Storage Service's
1829 // API operation GetBucketCors for usage and error information.
1830 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketCors
1831 func (c *S3) GetBucketCors(input *GetBucketCorsInput) (*GetBucketCorsOutput, error) {
1832 req, out := c.GetBucketCorsRequest(input)
1833 return out, req.Send()
1836 // GetBucketCorsWithContext is the same as GetBucketCors with the addition of
1837 // the ability to pass a context and additional request options.
1839 // See GetBucketCors for details on how to use this API operation.
1841 // The context must be non-nil and will be used for request cancellation. If
1842 // the context is nil a panic will occur. In the future the SDK may create
1843 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
1844 // for more information on using Contexts.
1845 func (c *S3) GetBucketCorsWithContext(ctx aws.Context, input *GetBucketCorsInput, opts ...request.Option) (*GetBucketCorsOutput, error) {
1846 req, out := c.GetBucketCorsRequest(input)
1848 req.ApplyOptions(opts...)
1849 return out, req.Send()
1852 const opGetBucketEncryption = "GetBucketEncryption"
1854 // GetBucketEncryptionRequest generates a "aws/request.Request" representing the
1855 // client's request for the GetBucketEncryption operation. The "output" return
1856 // value will be populated with the request's response once the request completes
1859 // Use "Send" method on the returned Request to send the API call to the service.
1860 // the "output" return value is not valid until after Send returns without error.
1862 // See GetBucketEncryption for more information on using the GetBucketEncryption
1863 // API call, and error handling.
1865 // This method is useful when you want to inject custom logic or configuration
1866 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
1869 // // Example sending a request using the GetBucketEncryptionRequest method.
1870 // req, resp := client.GetBucketEncryptionRequest(params)
1872 // err := req.Send()
1873 // if err == nil { // resp is now filled
1874 // fmt.Println(resp)
1877 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketEncryption
1878 func (c *S3) GetBucketEncryptionRequest(input *GetBucketEncryptionInput) (req *request.Request, output *GetBucketEncryptionOutput) {
1879 op := &request.Operation{
1880 Name: opGetBucketEncryption,
1882 HTTPPath: "/{Bucket}?encryption",
1886 input = &GetBucketEncryptionInput{}
1889 output = &GetBucketEncryptionOutput{}
1890 req = c.newRequest(op, input, output)
1894 // GetBucketEncryption API operation for Amazon Simple Storage Service.
1896 // Returns the server-side encryption configuration of a bucket.
1898 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1899 // with awserr.Error's Code and Message methods to get detailed information about
1902 // See the AWS API reference guide for Amazon Simple Storage Service's
1903 // API operation GetBucketEncryption for usage and error information.
1904 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketEncryption
1905 func (c *S3) GetBucketEncryption(input *GetBucketEncryptionInput) (*GetBucketEncryptionOutput, error) {
1906 req, out := c.GetBucketEncryptionRequest(input)
1907 return out, req.Send()
1910 // GetBucketEncryptionWithContext is the same as GetBucketEncryption with the addition of
1911 // the ability to pass a context and additional request options.
1913 // See GetBucketEncryption for details on how to use this API operation.
1915 // The context must be non-nil and will be used for request cancellation. If
1916 // the context is nil a panic will occur. In the future the SDK may create
1917 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
1918 // for more information on using Contexts.
1919 func (c *S3) GetBucketEncryptionWithContext(ctx aws.Context, input *GetBucketEncryptionInput, opts ...request.Option) (*GetBucketEncryptionOutput, error) {
1920 req, out := c.GetBucketEncryptionRequest(input)
1922 req.ApplyOptions(opts...)
1923 return out, req.Send()
1926 const opGetBucketInventoryConfiguration = "GetBucketInventoryConfiguration"
1928 // GetBucketInventoryConfigurationRequest generates a "aws/request.Request" representing the
1929 // client's request for the GetBucketInventoryConfiguration operation. The "output" return
1930 // value will be populated with the request's response once the request completes
1933 // Use "Send" method on the returned Request to send the API call to the service.
1934 // the "output" return value is not valid until after Send returns without error.
1936 // See GetBucketInventoryConfiguration for more information on using the GetBucketInventoryConfiguration
1937 // API call, and error handling.
1939 // This method is useful when you want to inject custom logic or configuration
1940 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
1943 // // Example sending a request using the GetBucketInventoryConfigurationRequest method.
1944 // req, resp := client.GetBucketInventoryConfigurationRequest(params)
1946 // err := req.Send()
1947 // if err == nil { // resp is now filled
1948 // fmt.Println(resp)
1951 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketInventoryConfiguration
1952 func (c *S3) GetBucketInventoryConfigurationRequest(input *GetBucketInventoryConfigurationInput) (req *request.Request, output *GetBucketInventoryConfigurationOutput) {
1953 op := &request.Operation{
1954 Name: opGetBucketInventoryConfiguration,
1956 HTTPPath: "/{Bucket}?inventory",
1960 input = &GetBucketInventoryConfigurationInput{}
1963 output = &GetBucketInventoryConfigurationOutput{}
1964 req = c.newRequest(op, input, output)
1968 // GetBucketInventoryConfiguration API operation for Amazon Simple Storage Service.
1970 // Returns an inventory configuration (identified by the inventory ID) from
1973 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1974 // with awserr.Error's Code and Message methods to get detailed information about
1977 // See the AWS API reference guide for Amazon Simple Storage Service's
1978 // API operation GetBucketInventoryConfiguration for usage and error information.
1979 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketInventoryConfiguration
1980 func (c *S3) GetBucketInventoryConfiguration(input *GetBucketInventoryConfigurationInput) (*GetBucketInventoryConfigurationOutput, error) {
1981 req, out := c.GetBucketInventoryConfigurationRequest(input)
1982 return out, req.Send()
1985 // GetBucketInventoryConfigurationWithContext is the same as GetBucketInventoryConfiguration with the addition of
1986 // the ability to pass a context and additional request options.
1988 // See GetBucketInventoryConfiguration for details on how to use this API operation.
1990 // The context must be non-nil and will be used for request cancellation. If
1991 // the context is nil a panic will occur. In the future the SDK may create
1992 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
1993 // for more information on using Contexts.
1994 func (c *S3) GetBucketInventoryConfigurationWithContext(ctx aws.Context, input *GetBucketInventoryConfigurationInput, opts ...request.Option) (*GetBucketInventoryConfigurationOutput, error) {
1995 req, out := c.GetBucketInventoryConfigurationRequest(input)
1997 req.ApplyOptions(opts...)
1998 return out, req.Send()
2001 const opGetBucketLifecycle = "GetBucketLifecycle"
2003 // GetBucketLifecycleRequest generates a "aws/request.Request" representing the
2004 // client's request for the GetBucketLifecycle operation. The "output" return
2005 // value will be populated with the request's response once the request completes
2008 // Use "Send" method on the returned Request to send the API call to the service.
2009 // the "output" return value is not valid until after Send returns without error.
2011 // See GetBucketLifecycle for more information on using the GetBucketLifecycle
2012 // API call, and error handling.
2014 // This method is useful when you want to inject custom logic or configuration
2015 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
2018 // // Example sending a request using the GetBucketLifecycleRequest method.
2019 // req, resp := client.GetBucketLifecycleRequest(params)
2021 // err := req.Send()
2022 // if err == nil { // resp is now filled
2023 // fmt.Println(resp)
2026 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketLifecycle
2028 // Deprecated: GetBucketLifecycle has been deprecated
2029 func (c *S3) GetBucketLifecycleRequest(input *GetBucketLifecycleInput) (req *request.Request, output *GetBucketLifecycleOutput) {
2030 if c.Client.Config.Logger != nil {
2031 c.Client.Config.Logger.Log("This operation, GetBucketLifecycle, has been deprecated")
2033 op := &request.Operation{
2034 Name: opGetBucketLifecycle,
2036 HTTPPath: "/{Bucket}?lifecycle",
2040 input = &GetBucketLifecycleInput{}
2043 output = &GetBucketLifecycleOutput{}
2044 req = c.newRequest(op, input, output)
2048 // GetBucketLifecycle API operation for Amazon Simple Storage Service.
2050 // No longer used, see the GetBucketLifecycleConfiguration operation.
2052 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2053 // with awserr.Error's Code and Message methods to get detailed information about
2056 // See the AWS API reference guide for Amazon Simple Storage Service's
2057 // API operation GetBucketLifecycle for usage and error information.
2058 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketLifecycle
2060 // Deprecated: GetBucketLifecycle has been deprecated
2061 func (c *S3) GetBucketLifecycle(input *GetBucketLifecycleInput) (*GetBucketLifecycleOutput, error) {
2062 req, out := c.GetBucketLifecycleRequest(input)
2063 return out, req.Send()
2066 // GetBucketLifecycleWithContext is the same as GetBucketLifecycle with the addition of
2067 // the ability to pass a context and additional request options.
2069 // See GetBucketLifecycle for details on how to use this API operation.
2071 // The context must be non-nil and will be used for request cancellation. If
2072 // the context is nil a panic will occur. In the future the SDK may create
2073 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
2074 // for more information on using Contexts.
2076 // Deprecated: GetBucketLifecycleWithContext has been deprecated
2077 func (c *S3) GetBucketLifecycleWithContext(ctx aws.Context, input *GetBucketLifecycleInput, opts ...request.Option) (*GetBucketLifecycleOutput, error) {
2078 req, out := c.GetBucketLifecycleRequest(input)
2080 req.ApplyOptions(opts...)
2081 return out, req.Send()
2084 const opGetBucketLifecycleConfiguration = "GetBucketLifecycleConfiguration"
2086 // GetBucketLifecycleConfigurationRequest generates a "aws/request.Request" representing the
2087 // client's request for the GetBucketLifecycleConfiguration operation. The "output" return
2088 // value will be populated with the request's response once the request completes
2091 // Use "Send" method on the returned Request to send the API call to the service.
2092 // the "output" return value is not valid until after Send returns without error.
2094 // See GetBucketLifecycleConfiguration for more information on using the GetBucketLifecycleConfiguration
2095 // API call, and error handling.
2097 // This method is useful when you want to inject custom logic or configuration
2098 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
2101 // // Example sending a request using the GetBucketLifecycleConfigurationRequest method.
2102 // req, resp := client.GetBucketLifecycleConfigurationRequest(params)
2104 // err := req.Send()
2105 // if err == nil { // resp is now filled
2106 // fmt.Println(resp)
2109 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketLifecycleConfiguration
2110 func (c *S3) GetBucketLifecycleConfigurationRequest(input *GetBucketLifecycleConfigurationInput) (req *request.Request, output *GetBucketLifecycleConfigurationOutput) {
2111 op := &request.Operation{
2112 Name: opGetBucketLifecycleConfiguration,
2114 HTTPPath: "/{Bucket}?lifecycle",
2118 input = &GetBucketLifecycleConfigurationInput{}
2121 output = &GetBucketLifecycleConfigurationOutput{}
2122 req = c.newRequest(op, input, output)
2126 // GetBucketLifecycleConfiguration API operation for Amazon Simple Storage Service.
2128 // Returns the lifecycle configuration information set on the bucket.
2130 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2131 // with awserr.Error's Code and Message methods to get detailed information about
2134 // See the AWS API reference guide for Amazon Simple Storage Service's
2135 // API operation GetBucketLifecycleConfiguration for usage and error information.
2136 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketLifecycleConfiguration
2137 func (c *S3) GetBucketLifecycleConfiguration(input *GetBucketLifecycleConfigurationInput) (*GetBucketLifecycleConfigurationOutput, error) {
2138 req, out := c.GetBucketLifecycleConfigurationRequest(input)
2139 return out, req.Send()
2142 // GetBucketLifecycleConfigurationWithContext is the same as GetBucketLifecycleConfiguration with the addition of
2143 // the ability to pass a context and additional request options.
2145 // See GetBucketLifecycleConfiguration for details on how to use this API operation.
2147 // The context must be non-nil and will be used for request cancellation. If
2148 // the context is nil a panic will occur. In the future the SDK may create
2149 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
2150 // for more information on using Contexts.
2151 func (c *S3) GetBucketLifecycleConfigurationWithContext(ctx aws.Context, input *GetBucketLifecycleConfigurationInput, opts ...request.Option) (*GetBucketLifecycleConfigurationOutput, error) {
2152 req, out := c.GetBucketLifecycleConfigurationRequest(input)
2154 req.ApplyOptions(opts...)
2155 return out, req.Send()
2158 const opGetBucketLocation = "GetBucketLocation"
2160 // GetBucketLocationRequest generates a "aws/request.Request" representing the
2161 // client's request for the GetBucketLocation operation. The "output" return
2162 // value will be populated with the request's response once the request completes
2165 // Use "Send" method on the returned Request to send the API call to the service.
2166 // the "output" return value is not valid until after Send returns without error.
2168 // See GetBucketLocation for more information on using the GetBucketLocation
2169 // API call, and error handling.
2171 // This method is useful when you want to inject custom logic or configuration
2172 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
2175 // // Example sending a request using the GetBucketLocationRequest method.
2176 // req, resp := client.GetBucketLocationRequest(params)
2178 // err := req.Send()
2179 // if err == nil { // resp is now filled
2180 // fmt.Println(resp)
2183 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketLocation
2184 func (c *S3) GetBucketLocationRequest(input *GetBucketLocationInput) (req *request.Request, output *GetBucketLocationOutput) {
2185 op := &request.Operation{
2186 Name: opGetBucketLocation,
2188 HTTPPath: "/{Bucket}?location",
2192 input = &GetBucketLocationInput{}
2195 output = &GetBucketLocationOutput{}
2196 req = c.newRequest(op, input, output)
2200 // GetBucketLocation API operation for Amazon Simple Storage Service.
2202 // Returns the region the bucket resides in.
2204 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2205 // with awserr.Error's Code and Message methods to get detailed information about
2208 // See the AWS API reference guide for Amazon Simple Storage Service's
2209 // API operation GetBucketLocation for usage and error information.
2210 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketLocation
2211 func (c *S3) GetBucketLocation(input *GetBucketLocationInput) (*GetBucketLocationOutput, error) {
2212 req, out := c.GetBucketLocationRequest(input)
2213 return out, req.Send()
2216 // GetBucketLocationWithContext is the same as GetBucketLocation with the addition of
2217 // the ability to pass a context and additional request options.
2219 // See GetBucketLocation for details on how to use this API operation.
2221 // The context must be non-nil and will be used for request cancellation. If
2222 // the context is nil a panic will occur. In the future the SDK may create
2223 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
2224 // for more information on using Contexts.
2225 func (c *S3) GetBucketLocationWithContext(ctx aws.Context, input *GetBucketLocationInput, opts ...request.Option) (*GetBucketLocationOutput, error) {
2226 req, out := c.GetBucketLocationRequest(input)
2228 req.ApplyOptions(opts...)
2229 return out, req.Send()
2232 const opGetBucketLogging = "GetBucketLogging"
2234 // GetBucketLoggingRequest generates a "aws/request.Request" representing the
2235 // client's request for the GetBucketLogging operation. The "output" return
2236 // value will be populated with the request's response once the request completes
2239 // Use "Send" method on the returned Request to send the API call to the service.
2240 // the "output" return value is not valid until after Send returns without error.
2242 // See GetBucketLogging for more information on using the GetBucketLogging
2243 // API call, and error handling.
2245 // This method is useful when you want to inject custom logic or configuration
2246 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
2249 // // Example sending a request using the GetBucketLoggingRequest method.
2250 // req, resp := client.GetBucketLoggingRequest(params)
2252 // err := req.Send()
2253 // if err == nil { // resp is now filled
2254 // fmt.Println(resp)
2257 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketLogging
2258 func (c *S3) GetBucketLoggingRequest(input *GetBucketLoggingInput) (req *request.Request, output *GetBucketLoggingOutput) {
2259 op := &request.Operation{
2260 Name: opGetBucketLogging,
2262 HTTPPath: "/{Bucket}?logging",
2266 input = &GetBucketLoggingInput{}
2269 output = &GetBucketLoggingOutput{}
2270 req = c.newRequest(op, input, output)
2274 // GetBucketLogging API operation for Amazon Simple Storage Service.
2276 // Returns the logging status of a bucket and the permissions users have to
2277 // view and modify that status. To use GET, you must be the bucket owner.
2279 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2280 // with awserr.Error's Code and Message methods to get detailed information about
2283 // See the AWS API reference guide for Amazon Simple Storage Service's
2284 // API operation GetBucketLogging for usage and error information.
2285 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketLogging
2286 func (c *S3) GetBucketLogging(input *GetBucketLoggingInput) (*GetBucketLoggingOutput, error) {
2287 req, out := c.GetBucketLoggingRequest(input)
2288 return out, req.Send()
2291 // GetBucketLoggingWithContext is the same as GetBucketLogging with the addition of
2292 // the ability to pass a context and additional request options.
2294 // See GetBucketLogging for details on how to use this API operation.
2296 // The context must be non-nil and will be used for request cancellation. If
2297 // the context is nil a panic will occur. In the future the SDK may create
2298 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
2299 // for more information on using Contexts.
2300 func (c *S3) GetBucketLoggingWithContext(ctx aws.Context, input *GetBucketLoggingInput, opts ...request.Option) (*GetBucketLoggingOutput, error) {
2301 req, out := c.GetBucketLoggingRequest(input)
2303 req.ApplyOptions(opts...)
2304 return out, req.Send()
2307 const opGetBucketMetricsConfiguration = "GetBucketMetricsConfiguration"
2309 // GetBucketMetricsConfigurationRequest generates a "aws/request.Request" representing the
2310 // client's request for the GetBucketMetricsConfiguration operation. The "output" return
2311 // value will be populated with the request's response once the request completes
2314 // Use "Send" method on the returned Request to send the API call to the service.
2315 // the "output" return value is not valid until after Send returns without error.
2317 // See GetBucketMetricsConfiguration for more information on using the GetBucketMetricsConfiguration
2318 // API call, and error handling.
2320 // This method is useful when you want to inject custom logic or configuration
2321 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
2324 // // Example sending a request using the GetBucketMetricsConfigurationRequest method.
2325 // req, resp := client.GetBucketMetricsConfigurationRequest(params)
2327 // err := req.Send()
2328 // if err == nil { // resp is now filled
2329 // fmt.Println(resp)
2332 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketMetricsConfiguration
2333 func (c *S3) GetBucketMetricsConfigurationRequest(input *GetBucketMetricsConfigurationInput) (req *request.Request, output *GetBucketMetricsConfigurationOutput) {
2334 op := &request.Operation{
2335 Name: opGetBucketMetricsConfiguration,
2337 HTTPPath: "/{Bucket}?metrics",
2341 input = &GetBucketMetricsConfigurationInput{}
2344 output = &GetBucketMetricsConfigurationOutput{}
2345 req = c.newRequest(op, input, output)
2349 // GetBucketMetricsConfiguration API operation for Amazon Simple Storage Service.
2351 // Gets a metrics configuration (specified by the metrics configuration ID)
2354 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2355 // with awserr.Error's Code and Message methods to get detailed information about
2358 // See the AWS API reference guide for Amazon Simple Storage Service's
2359 // API operation GetBucketMetricsConfiguration for usage and error information.
2360 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketMetricsConfiguration
2361 func (c *S3) GetBucketMetricsConfiguration(input *GetBucketMetricsConfigurationInput) (*GetBucketMetricsConfigurationOutput, error) {
2362 req, out := c.GetBucketMetricsConfigurationRequest(input)
2363 return out, req.Send()
2366 // GetBucketMetricsConfigurationWithContext is the same as GetBucketMetricsConfiguration with the addition of
2367 // the ability to pass a context and additional request options.
2369 // See GetBucketMetricsConfiguration for details on how to use this API operation.
2371 // The context must be non-nil and will be used for request cancellation. If
2372 // the context is nil a panic will occur. In the future the SDK may create
2373 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
2374 // for more information on using Contexts.
2375 func (c *S3) GetBucketMetricsConfigurationWithContext(ctx aws.Context, input *GetBucketMetricsConfigurationInput, opts ...request.Option) (*GetBucketMetricsConfigurationOutput, error) {
2376 req, out := c.GetBucketMetricsConfigurationRequest(input)
2378 req.ApplyOptions(opts...)
2379 return out, req.Send()
2382 const opGetBucketNotification = "GetBucketNotification"
2384 // GetBucketNotificationRequest generates a "aws/request.Request" representing the
2385 // client's request for the GetBucketNotification operation. The "output" return
2386 // value will be populated with the request's response once the request completes
2389 // Use "Send" method on the returned Request to send the API call to the service.
2390 // the "output" return value is not valid until after Send returns without error.
2392 // See GetBucketNotification for more information on using the GetBucketNotification
2393 // API call, and error handling.
2395 // This method is useful when you want to inject custom logic or configuration
2396 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
2399 // // Example sending a request using the GetBucketNotificationRequest method.
2400 // req, resp := client.GetBucketNotificationRequest(params)
2402 // err := req.Send()
2403 // if err == nil { // resp is now filled
2404 // fmt.Println(resp)
2407 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketNotification
2409 // Deprecated: GetBucketNotification has been deprecated
2410 func (c *S3) GetBucketNotificationRequest(input *GetBucketNotificationConfigurationRequest) (req *request.Request, output *NotificationConfigurationDeprecated) {
2411 if c.Client.Config.Logger != nil {
2412 c.Client.Config.Logger.Log("This operation, GetBucketNotification, has been deprecated")
2414 op := &request.Operation{
2415 Name: opGetBucketNotification,
2417 HTTPPath: "/{Bucket}?notification",
2421 input = &GetBucketNotificationConfigurationRequest{}
2424 output = &NotificationConfigurationDeprecated{}
2425 req = c.newRequest(op, input, output)
2429 // GetBucketNotification API operation for Amazon Simple Storage Service.
2431 // No longer used, see the GetBucketNotificationConfiguration operation.
2433 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2434 // with awserr.Error's Code and Message methods to get detailed information about
2437 // See the AWS API reference guide for Amazon Simple Storage Service's
2438 // API operation GetBucketNotification for usage and error information.
2439 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketNotification
2441 // Deprecated: GetBucketNotification has been deprecated
2442 func (c *S3) GetBucketNotification(input *GetBucketNotificationConfigurationRequest) (*NotificationConfigurationDeprecated, error) {
2443 req, out := c.GetBucketNotificationRequest(input)
2444 return out, req.Send()
2447 // GetBucketNotificationWithContext is the same as GetBucketNotification with the addition of
2448 // the ability to pass a context and additional request options.
2450 // See GetBucketNotification for details on how to use this API operation.
2452 // The context must be non-nil and will be used for request cancellation. If
2453 // the context is nil a panic will occur. In the future the SDK may create
2454 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
2455 // for more information on using Contexts.
2457 // Deprecated: GetBucketNotificationWithContext has been deprecated
2458 func (c *S3) GetBucketNotificationWithContext(ctx aws.Context, input *GetBucketNotificationConfigurationRequest, opts ...request.Option) (*NotificationConfigurationDeprecated, error) {
2459 req, out := c.GetBucketNotificationRequest(input)
2461 req.ApplyOptions(opts...)
2462 return out, req.Send()
2465 const opGetBucketNotificationConfiguration = "GetBucketNotificationConfiguration"
2467 // GetBucketNotificationConfigurationRequest generates a "aws/request.Request" representing the
2468 // client's request for the GetBucketNotificationConfiguration operation. The "output" return
2469 // value will be populated with the request's response once the request completes
2472 // Use "Send" method on the returned Request to send the API call to the service.
2473 // the "output" return value is not valid until after Send returns without error.
2475 // See GetBucketNotificationConfiguration for more information on using the GetBucketNotificationConfiguration
2476 // API call, and error handling.
2478 // This method is useful when you want to inject custom logic or configuration
2479 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
2482 // // Example sending a request using the GetBucketNotificationConfigurationRequest method.
2483 // req, resp := client.GetBucketNotificationConfigurationRequest(params)
2485 // err := req.Send()
2486 // if err == nil { // resp is now filled
2487 // fmt.Println(resp)
2490 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketNotificationConfiguration
2491 func (c *S3) GetBucketNotificationConfigurationRequest(input *GetBucketNotificationConfigurationRequest) (req *request.Request, output *NotificationConfiguration) {
2492 op := &request.Operation{
2493 Name: opGetBucketNotificationConfiguration,
2495 HTTPPath: "/{Bucket}?notification",
2499 input = &GetBucketNotificationConfigurationRequest{}
2502 output = &NotificationConfiguration{}
2503 req = c.newRequest(op, input, output)
2507 // GetBucketNotificationConfiguration API operation for Amazon Simple Storage Service.
2509 // Returns the notification configuration of a bucket.
2511 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2512 // with awserr.Error's Code and Message methods to get detailed information about
2515 // See the AWS API reference guide for Amazon Simple Storage Service's
2516 // API operation GetBucketNotificationConfiguration for usage and error information.
2517 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketNotificationConfiguration
2518 func (c *S3) GetBucketNotificationConfiguration(input *GetBucketNotificationConfigurationRequest) (*NotificationConfiguration, error) {
2519 req, out := c.GetBucketNotificationConfigurationRequest(input)
2520 return out, req.Send()
2523 // GetBucketNotificationConfigurationWithContext is the same as GetBucketNotificationConfiguration with the addition of
2524 // the ability to pass a context and additional request options.
2526 // See GetBucketNotificationConfiguration for details on how to use this API operation.
2528 // The context must be non-nil and will be used for request cancellation. If
2529 // the context is nil a panic will occur. In the future the SDK may create
2530 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
2531 // for more information on using Contexts.
2532 func (c *S3) GetBucketNotificationConfigurationWithContext(ctx aws.Context, input *GetBucketNotificationConfigurationRequest, opts ...request.Option) (*NotificationConfiguration, error) {
2533 req, out := c.GetBucketNotificationConfigurationRequest(input)
2535 req.ApplyOptions(opts...)
2536 return out, req.Send()
2539 const opGetBucketPolicy = "GetBucketPolicy"
2541 // GetBucketPolicyRequest generates a "aws/request.Request" representing the
2542 // client's request for the GetBucketPolicy operation. The "output" return
2543 // value will be populated with the request's response once the request completes
2546 // Use "Send" method on the returned Request to send the API call to the service.
2547 // the "output" return value is not valid until after Send returns without error.
2549 // See GetBucketPolicy for more information on using the GetBucketPolicy
2550 // API call, and error handling.
2552 // This method is useful when you want to inject custom logic or configuration
2553 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
2556 // // Example sending a request using the GetBucketPolicyRequest method.
2557 // req, resp := client.GetBucketPolicyRequest(params)
2559 // err := req.Send()
2560 // if err == nil { // resp is now filled
2561 // fmt.Println(resp)
2564 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketPolicy
2565 func (c *S3) GetBucketPolicyRequest(input *GetBucketPolicyInput) (req *request.Request, output *GetBucketPolicyOutput) {
2566 op := &request.Operation{
2567 Name: opGetBucketPolicy,
2569 HTTPPath: "/{Bucket}?policy",
2573 input = &GetBucketPolicyInput{}
2576 output = &GetBucketPolicyOutput{}
2577 req = c.newRequest(op, input, output)
2581 // GetBucketPolicy API operation for Amazon Simple Storage Service.
2583 // Returns the policy of a specified bucket.
2585 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2586 // with awserr.Error's Code and Message methods to get detailed information about
2589 // See the AWS API reference guide for Amazon Simple Storage Service's
2590 // API operation GetBucketPolicy for usage and error information.
2591 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketPolicy
2592 func (c *S3) GetBucketPolicy(input *GetBucketPolicyInput) (*GetBucketPolicyOutput, error) {
2593 req, out := c.GetBucketPolicyRequest(input)
2594 return out, req.Send()
2597 // GetBucketPolicyWithContext is the same as GetBucketPolicy with the addition of
2598 // the ability to pass a context and additional request options.
2600 // See GetBucketPolicy for details on how to use this API operation.
2602 // The context must be non-nil and will be used for request cancellation. If
2603 // the context is nil a panic will occur. In the future the SDK may create
2604 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
2605 // for more information on using Contexts.
2606 func (c *S3) GetBucketPolicyWithContext(ctx aws.Context, input *GetBucketPolicyInput, opts ...request.Option) (*GetBucketPolicyOutput, error) {
2607 req, out := c.GetBucketPolicyRequest(input)
2609 req.ApplyOptions(opts...)
2610 return out, req.Send()
2613 const opGetBucketPolicyStatus = "GetBucketPolicyStatus"
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
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.
2623 // See GetBucketPolicyStatus for more information on using the GetBucketPolicyStatus
2624 // API call, and error handling.
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.
2630 // // Example sending a request using the GetBucketPolicyStatusRequest method.
2631 // req, resp := client.GetBucketPolicyStatusRequest(params)
2633 // err := req.Send()
2634 // if err == nil { // resp is now filled
2635 // fmt.Println(resp)
2638 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketPolicyStatus
2639 func (c *S3) GetBucketPolicyStatusRequest(input *GetBucketPolicyStatusInput) (req *request.Request, output *GetBucketPolicyStatusOutput) {
2640 op := &request.Operation{
2641 Name: opGetBucketPolicyStatus,
2643 HTTPPath: "/{Bucket}?policyStatus",
2647 input = &GetBucketPolicyStatusInput{}
2650 output = &GetBucketPolicyStatusOutput{}
2651 req = c.newRequest(op, input, output)
2655 // GetBucketPolicyStatus API operation for Amazon Simple Storage Service.
2657 // Retrieves the policy status for an Amazon S3 bucket, indicating whether the
2658 // bucket is public.
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
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
2667 func (c *S3) GetBucketPolicyStatus(input *GetBucketPolicyStatusInput) (*GetBucketPolicyStatusOutput, error) {
2668 req, out := c.GetBucketPolicyStatusRequest(input)
2669 return out, req.Send()
2672 // GetBucketPolicyStatusWithContext is the same as GetBucketPolicyStatus with the addition of
2673 // the ability to pass a context and additional request options.
2675 // See GetBucketPolicyStatus for details on how to use this API operation.
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.
2681 func (c *S3) GetBucketPolicyStatusWithContext(ctx aws.Context, input *GetBucketPolicyStatusInput, opts ...request.Option) (*GetBucketPolicyStatusOutput, error) {
2682 req, out := c.GetBucketPolicyStatusRequest(input)
2684 req.ApplyOptions(opts...)
2685 return out, req.Send()
2688 const opGetBucketReplication = "GetBucketReplication"
2690 // GetBucketReplicationRequest generates a "aws/request.Request" representing the
2691 // client's request for the GetBucketReplication operation. The "output" return
2692 // value will be populated with the request's response once the request completes
2695 // Use "Send" method on the returned Request to send the API call to the service.
2696 // the "output" return value is not valid until after Send returns without error.
2698 // See GetBucketReplication for more information on using the GetBucketReplication
2699 // API call, and error handling.
2701 // This method is useful when you want to inject custom logic or configuration
2702 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
2705 // // Example sending a request using the GetBucketReplicationRequest method.
2706 // req, resp := client.GetBucketReplicationRequest(params)
2708 // err := req.Send()
2709 // if err == nil { // resp is now filled
2710 // fmt.Println(resp)
2713 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketReplication
2714 func (c *S3) GetBucketReplicationRequest(input *GetBucketReplicationInput) (req *request.Request, output *GetBucketReplicationOutput) {
2715 op := &request.Operation{
2716 Name: opGetBucketReplication,
2718 HTTPPath: "/{Bucket}?replication",
2722 input = &GetBucketReplicationInput{}
2725 output = &GetBucketReplicationOutput{}
2726 req = c.newRequest(op, input, output)
2730 // GetBucketReplication API operation for Amazon Simple Storage Service.
2732 // Returns the replication configuration of a bucket.
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.
2738 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2739 // with awserr.Error's Code and Message methods to get detailed information about
2742 // See the AWS API reference guide for Amazon Simple Storage Service's
2743 // API operation GetBucketReplication for usage and error information.
2744 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketReplication
2745 func (c *S3) GetBucketReplication(input *GetBucketReplicationInput) (*GetBucketReplicationOutput, error) {
2746 req, out := c.GetBucketReplicationRequest(input)
2747 return out, req.Send()
2750 // GetBucketReplicationWithContext is the same as GetBucketReplication with the addition of
2751 // the ability to pass a context and additional request options.
2753 // See GetBucketReplication for details on how to use this API operation.
2755 // The context must be non-nil and will be used for request cancellation. If
2756 // the context is nil a panic will occur. In the future the SDK may create
2757 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
2758 // for more information on using Contexts.
2759 func (c *S3) GetBucketReplicationWithContext(ctx aws.Context, input *GetBucketReplicationInput, opts ...request.Option) (*GetBucketReplicationOutput, error) {
2760 req, out := c.GetBucketReplicationRequest(input)
2762 req.ApplyOptions(opts...)
2763 return out, req.Send()
2766 const opGetBucketRequestPayment = "GetBucketRequestPayment"
2768 // GetBucketRequestPaymentRequest generates a "aws/request.Request" representing the
2769 // client's request for the GetBucketRequestPayment operation. The "output" return
2770 // value will be populated with the request's response once the request completes
2773 // Use "Send" method on the returned Request to send the API call to the service.
2774 // the "output" return value is not valid until after Send returns without error.
2776 // See GetBucketRequestPayment for more information on using the GetBucketRequestPayment
2777 // API call, and error handling.
2779 // This method is useful when you want to inject custom logic or configuration
2780 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
2783 // // Example sending a request using the GetBucketRequestPaymentRequest method.
2784 // req, resp := client.GetBucketRequestPaymentRequest(params)
2786 // err := req.Send()
2787 // if err == nil { // resp is now filled
2788 // fmt.Println(resp)
2791 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketRequestPayment
2792 func (c *S3) GetBucketRequestPaymentRequest(input *GetBucketRequestPaymentInput) (req *request.Request, output *GetBucketRequestPaymentOutput) {
2793 op := &request.Operation{
2794 Name: opGetBucketRequestPayment,
2796 HTTPPath: "/{Bucket}?requestPayment",
2800 input = &GetBucketRequestPaymentInput{}
2803 output = &GetBucketRequestPaymentOutput{}
2804 req = c.newRequest(op, input, output)
2808 // GetBucketRequestPayment API operation for Amazon Simple Storage Service.
2810 // Returns the request payment configuration of a bucket.
2812 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2813 // with awserr.Error's Code and Message methods to get detailed information about
2816 // See the AWS API reference guide for Amazon Simple Storage Service's
2817 // API operation GetBucketRequestPayment for usage and error information.
2818 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketRequestPayment
2819 func (c *S3) GetBucketRequestPayment(input *GetBucketRequestPaymentInput) (*GetBucketRequestPaymentOutput, error) {
2820 req, out := c.GetBucketRequestPaymentRequest(input)
2821 return out, req.Send()
2824 // GetBucketRequestPaymentWithContext is the same as GetBucketRequestPayment with the addition of
2825 // the ability to pass a context and additional request options.
2827 // See GetBucketRequestPayment for details on how to use this API operation.
2829 // The context must be non-nil and will be used for request cancellation. If
2830 // the context is nil a panic will occur. In the future the SDK may create
2831 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
2832 // for more information on using Contexts.
2833 func (c *S3) GetBucketRequestPaymentWithContext(ctx aws.Context, input *GetBucketRequestPaymentInput, opts ...request.Option) (*GetBucketRequestPaymentOutput, error) {
2834 req, out := c.GetBucketRequestPaymentRequest(input)
2836 req.ApplyOptions(opts...)
2837 return out, req.Send()
2840 const opGetBucketTagging = "GetBucketTagging"
2842 // GetBucketTaggingRequest generates a "aws/request.Request" representing the
2843 // client's request for the GetBucketTagging operation. The "output" return
2844 // value will be populated with the request's response once the request completes
2847 // Use "Send" method on the returned Request to send the API call to the service.
2848 // the "output" return value is not valid until after Send returns without error.
2850 // See GetBucketTagging for more information on using the GetBucketTagging
2851 // API call, and error handling.
2853 // This method is useful when you want to inject custom logic or configuration
2854 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
2857 // // Example sending a request using the GetBucketTaggingRequest method.
2858 // req, resp := client.GetBucketTaggingRequest(params)
2860 // err := req.Send()
2861 // if err == nil { // resp is now filled
2862 // fmt.Println(resp)
2865 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketTagging
2866 func (c *S3) GetBucketTaggingRequest(input *GetBucketTaggingInput) (req *request.Request, output *GetBucketTaggingOutput) {
2867 op := &request.Operation{
2868 Name: opGetBucketTagging,
2870 HTTPPath: "/{Bucket}?tagging",
2874 input = &GetBucketTaggingInput{}
2877 output = &GetBucketTaggingOutput{}
2878 req = c.newRequest(op, input, output)
2882 // GetBucketTagging API operation for Amazon Simple Storage Service.
2884 // Returns the tag set associated with the bucket.
2886 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2887 // with awserr.Error's Code and Message methods to get detailed information about
2890 // See the AWS API reference guide for Amazon Simple Storage Service's
2891 // API operation GetBucketTagging for usage and error information.
2892 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketTagging
2893 func (c *S3) GetBucketTagging(input *GetBucketTaggingInput) (*GetBucketTaggingOutput, error) {
2894 req, out := c.GetBucketTaggingRequest(input)
2895 return out, req.Send()
2898 // GetBucketTaggingWithContext is the same as GetBucketTagging with the addition of
2899 // the ability to pass a context and additional request options.
2901 // See GetBucketTagging for details on how to use this API operation.
2903 // The context must be non-nil and will be used for request cancellation. If
2904 // the context is nil a panic will occur. In the future the SDK may create
2905 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
2906 // for more information on using Contexts.
2907 func (c *S3) GetBucketTaggingWithContext(ctx aws.Context, input *GetBucketTaggingInput, opts ...request.Option) (*GetBucketTaggingOutput, error) {
2908 req, out := c.GetBucketTaggingRequest(input)
2910 req.ApplyOptions(opts...)
2911 return out, req.Send()
2914 const opGetBucketVersioning = "GetBucketVersioning"
2916 // GetBucketVersioningRequest generates a "aws/request.Request" representing the
2917 // client's request for the GetBucketVersioning operation. The "output" return
2918 // value will be populated with the request's response once the request completes
2921 // Use "Send" method on the returned Request to send the API call to the service.
2922 // the "output" return value is not valid until after Send returns without error.
2924 // See GetBucketVersioning for more information on using the GetBucketVersioning
2925 // API call, and error handling.
2927 // This method is useful when you want to inject custom logic or configuration
2928 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
2931 // // Example sending a request using the GetBucketVersioningRequest method.
2932 // req, resp := client.GetBucketVersioningRequest(params)
2934 // err := req.Send()
2935 // if err == nil { // resp is now filled
2936 // fmt.Println(resp)
2939 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketVersioning
2940 func (c *S3) GetBucketVersioningRequest(input *GetBucketVersioningInput) (req *request.Request, output *GetBucketVersioningOutput) {
2941 op := &request.Operation{
2942 Name: opGetBucketVersioning,
2944 HTTPPath: "/{Bucket}?versioning",
2948 input = &GetBucketVersioningInput{}
2951 output = &GetBucketVersioningOutput{}
2952 req = c.newRequest(op, input, output)
2956 // GetBucketVersioning API operation for Amazon Simple Storage Service.
2958 // Returns the versioning state of a bucket.
2960 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2961 // with awserr.Error's Code and Message methods to get detailed information about
2964 // See the AWS API reference guide for Amazon Simple Storage Service's
2965 // API operation GetBucketVersioning for usage and error information.
2966 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketVersioning
2967 func (c *S3) GetBucketVersioning(input *GetBucketVersioningInput) (*GetBucketVersioningOutput, error) {
2968 req, out := c.GetBucketVersioningRequest(input)
2969 return out, req.Send()
2972 // GetBucketVersioningWithContext is the same as GetBucketVersioning with the addition of
2973 // the ability to pass a context and additional request options.
2975 // See GetBucketVersioning for details on how to use this API operation.
2977 // The context must be non-nil and will be used for request cancellation. If
2978 // the context is nil a panic will occur. In the future the SDK may create
2979 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
2980 // for more information on using Contexts.
2981 func (c *S3) GetBucketVersioningWithContext(ctx aws.Context, input *GetBucketVersioningInput, opts ...request.Option) (*GetBucketVersioningOutput, error) {
2982 req, out := c.GetBucketVersioningRequest(input)
2984 req.ApplyOptions(opts...)
2985 return out, req.Send()
2988 const opGetBucketWebsite = "GetBucketWebsite"
2990 // GetBucketWebsiteRequest generates a "aws/request.Request" representing the
2991 // client's request for the GetBucketWebsite operation. The "output" return
2992 // value will be populated with the request's response once the request completes
2995 // Use "Send" method on the returned Request to send the API call to the service.
2996 // the "output" return value is not valid until after Send returns without error.
2998 // See GetBucketWebsite for more information on using the GetBucketWebsite
2999 // API call, and error handling.
3001 // This method is useful when you want to inject custom logic or configuration
3002 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
3005 // // Example sending a request using the GetBucketWebsiteRequest method.
3006 // req, resp := client.GetBucketWebsiteRequest(params)
3008 // err := req.Send()
3009 // if err == nil { // resp is now filled
3010 // fmt.Println(resp)
3013 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketWebsite
3014 func (c *S3) GetBucketWebsiteRequest(input *GetBucketWebsiteInput) (req *request.Request, output *GetBucketWebsiteOutput) {
3015 op := &request.Operation{
3016 Name: opGetBucketWebsite,
3018 HTTPPath: "/{Bucket}?website",
3022 input = &GetBucketWebsiteInput{}
3025 output = &GetBucketWebsiteOutput{}
3026 req = c.newRequest(op, input, output)
3030 // GetBucketWebsite API operation for Amazon Simple Storage Service.
3032 // Returns the website configuration for a bucket.
3034 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3035 // with awserr.Error's Code and Message methods to get detailed information about
3038 // See the AWS API reference guide for Amazon Simple Storage Service's
3039 // API operation GetBucketWebsite for usage and error information.
3040 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketWebsite
3041 func (c *S3) GetBucketWebsite(input *GetBucketWebsiteInput) (*GetBucketWebsiteOutput, error) {
3042 req, out := c.GetBucketWebsiteRequest(input)
3043 return out, req.Send()
3046 // GetBucketWebsiteWithContext is the same as GetBucketWebsite with the addition of
3047 // the ability to pass a context and additional request options.
3049 // See GetBucketWebsite for details on how to use this API operation.
3051 // The context must be non-nil and will be used for request cancellation. If
3052 // the context is nil a panic will occur. In the future the SDK may create
3053 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
3054 // for more information on using Contexts.
3055 func (c *S3) GetBucketWebsiteWithContext(ctx aws.Context, input *GetBucketWebsiteInput, opts ...request.Option) (*GetBucketWebsiteOutput, error) {
3056 req, out := c.GetBucketWebsiteRequest(input)
3058 req.ApplyOptions(opts...)
3059 return out, req.Send()
3062 const opGetObject = "GetObject"
3064 // GetObjectRequest generates a "aws/request.Request" representing the
3065 // client's request for the GetObject operation. The "output" return
3066 // value will be populated with the request's response once the request completes
3069 // Use "Send" method on the returned Request to send the API call to the service.
3070 // the "output" return value is not valid until after Send returns without error.
3072 // See GetObject for more information on using the GetObject
3073 // API call, and error handling.
3075 // This method is useful when you want to inject custom logic or configuration
3076 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
3079 // // Example sending a request using the GetObjectRequest method.
3080 // req, resp := client.GetObjectRequest(params)
3082 // err := req.Send()
3083 // if err == nil { // resp is now filled
3084 // fmt.Println(resp)
3087 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObject
3088 func (c *S3) GetObjectRequest(input *GetObjectInput) (req *request.Request, output *GetObjectOutput) {
3089 op := &request.Operation{
3092 HTTPPath: "/{Bucket}/{Key+}",
3096 input = &GetObjectInput{}
3099 output = &GetObjectOutput{}
3100 req = c.newRequest(op, input, output)
3104 // GetObject API operation for Amazon Simple Storage Service.
3106 // Retrieves objects from Amazon S3.
3108 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3109 // with awserr.Error's Code and Message methods to get detailed information about
3112 // See the AWS API reference guide for Amazon Simple Storage Service's
3113 // API operation GetObject for usage and error information.
3115 // Returned Error Codes:
3116 // * ErrCodeNoSuchKey "NoSuchKey"
3117 // The specified key does not exist.
3119 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObject
3120 func (c *S3) GetObject(input *GetObjectInput) (*GetObjectOutput, error) {
3121 req, out := c.GetObjectRequest(input)
3122 return out, req.Send()
3125 // GetObjectWithContext is the same as GetObject with the addition of
3126 // the ability to pass a context and additional request options.
3128 // See GetObject for details on how to use this API operation.
3130 // The context must be non-nil and will be used for request cancellation. If
3131 // the context is nil a panic will occur. In the future the SDK may create
3132 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
3133 // for more information on using Contexts.
3134 func (c *S3) GetObjectWithContext(ctx aws.Context, input *GetObjectInput, opts ...request.Option) (*GetObjectOutput, error) {
3135 req, out := c.GetObjectRequest(input)
3137 req.ApplyOptions(opts...)
3138 return out, req.Send()
3141 const opGetObjectAcl = "GetObjectAcl"
3143 // GetObjectAclRequest generates a "aws/request.Request" representing the
3144 // client's request for the GetObjectAcl operation. The "output" return
3145 // value will be populated with the request's response once the request completes
3148 // Use "Send" method on the returned Request to send the API call to the service.
3149 // the "output" return value is not valid until after Send returns without error.
3151 // See GetObjectAcl for more information on using the GetObjectAcl
3152 // API call, and error handling.
3154 // This method is useful when you want to inject custom logic or configuration
3155 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
3158 // // Example sending a request using the GetObjectAclRequest method.
3159 // req, resp := client.GetObjectAclRequest(params)
3161 // err := req.Send()
3162 // if err == nil { // resp is now filled
3163 // fmt.Println(resp)
3166 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectAcl
3167 func (c *S3) GetObjectAclRequest(input *GetObjectAclInput) (req *request.Request, output *GetObjectAclOutput) {
3168 op := &request.Operation{
3169 Name: opGetObjectAcl,
3171 HTTPPath: "/{Bucket}/{Key+}?acl",
3175 input = &GetObjectAclInput{}
3178 output = &GetObjectAclOutput{}
3179 req = c.newRequest(op, input, output)
3183 // GetObjectAcl API operation for Amazon Simple Storage Service.
3185 // Returns the access control list (ACL) of an object.
3187 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3188 // with awserr.Error's Code and Message methods to get detailed information about
3191 // See the AWS API reference guide for Amazon Simple Storage Service's
3192 // API operation GetObjectAcl for usage and error information.
3194 // Returned Error Codes:
3195 // * ErrCodeNoSuchKey "NoSuchKey"
3196 // The specified key does not exist.
3198 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectAcl
3199 func (c *S3) GetObjectAcl(input *GetObjectAclInput) (*GetObjectAclOutput, error) {
3200 req, out := c.GetObjectAclRequest(input)
3201 return out, req.Send()
3204 // GetObjectAclWithContext is the same as GetObjectAcl with the addition of
3205 // the ability to pass a context and additional request options.
3207 // See GetObjectAcl for details on how to use this API operation.
3209 // The context must be non-nil and will be used for request cancellation. If
3210 // the context is nil a panic will occur. In the future the SDK may create
3211 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
3212 // for more information on using Contexts.
3213 func (c *S3) GetObjectAclWithContext(ctx aws.Context, input *GetObjectAclInput, opts ...request.Option) (*GetObjectAclOutput, error) {
3214 req, out := c.GetObjectAclRequest(input)
3216 req.ApplyOptions(opts...)
3217 return out, req.Send()
3220 const opGetObjectLegalHold = "GetObjectLegalHold"
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
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.
3230 // See GetObjectLegalHold for more information on using the GetObjectLegalHold
3231 // API call, and error handling.
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.
3237 // // Example sending a request using the GetObjectLegalHoldRequest method.
3238 // req, resp := client.GetObjectLegalHoldRequest(params)
3240 // err := req.Send()
3241 // if err == nil { // resp is now filled
3242 // fmt.Println(resp)
3245 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectLegalHold
3246 func (c *S3) GetObjectLegalHoldRequest(input *GetObjectLegalHoldInput) (req *request.Request, output *GetObjectLegalHoldOutput) {
3247 op := &request.Operation{
3248 Name: opGetObjectLegalHold,
3250 HTTPPath: "/{Bucket}/{Key+}?legal-hold",
3254 input = &GetObjectLegalHoldInput{}
3257 output = &GetObjectLegalHoldOutput{}
3258 req = c.newRequest(op, input, output)
3262 // GetObjectLegalHold API operation for Amazon Simple Storage Service.
3264 // Gets an object's current Legal Hold status.
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
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
3273 func (c *S3) GetObjectLegalHold(input *GetObjectLegalHoldInput) (*GetObjectLegalHoldOutput, error) {
3274 req, out := c.GetObjectLegalHoldRequest(input)
3275 return out, req.Send()
3278 // GetObjectLegalHoldWithContext is the same as GetObjectLegalHold with the addition of
3279 // the ability to pass a context and additional request options.
3281 // See GetObjectLegalHold for details on how to use this API operation.
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.
3287 func (c *S3) GetObjectLegalHoldWithContext(ctx aws.Context, input *GetObjectLegalHoldInput, opts ...request.Option) (*GetObjectLegalHoldOutput, error) {
3288 req, out := c.GetObjectLegalHoldRequest(input)
3290 req.ApplyOptions(opts...)
3291 return out, req.Send()
3294 const opGetObjectLockConfiguration = "GetObjectLockConfiguration"
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
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.
3304 // See GetObjectLockConfiguration for more information on using the GetObjectLockConfiguration
3305 // API call, and error handling.
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.
3311 // // Example sending a request using the GetObjectLockConfigurationRequest method.
3312 // req, resp := client.GetObjectLockConfigurationRequest(params)
3314 // err := req.Send()
3315 // if err == nil { // resp is now filled
3316 // fmt.Println(resp)
3319 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectLockConfiguration
3320 func (c *S3) GetObjectLockConfigurationRequest(input *GetObjectLockConfigurationInput) (req *request.Request, output *GetObjectLockConfigurationOutput) {
3321 op := &request.Operation{
3322 Name: opGetObjectLockConfiguration,
3324 HTTPPath: "/{Bucket}?object-lock",
3328 input = &GetObjectLockConfigurationInput{}
3331 output = &GetObjectLockConfigurationOutput{}
3332 req = c.newRequest(op, input, output)
3336 // GetObjectLockConfiguration API operation for Amazon Simple Storage Service.
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.
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
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
3349 func (c *S3) GetObjectLockConfiguration(input *GetObjectLockConfigurationInput) (*GetObjectLockConfigurationOutput, error) {
3350 req, out := c.GetObjectLockConfigurationRequest(input)
3351 return out, req.Send()
3354 // GetObjectLockConfigurationWithContext is the same as GetObjectLockConfiguration with the addition of
3355 // the ability to pass a context and additional request options.
3357 // See GetObjectLockConfiguration for details on how to use this API operation.
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.
3363 func (c *S3) GetObjectLockConfigurationWithContext(ctx aws.Context, input *GetObjectLockConfigurationInput, opts ...request.Option) (*GetObjectLockConfigurationOutput, error) {
3364 req, out := c.GetObjectLockConfigurationRequest(input)
3366 req.ApplyOptions(opts...)
3367 return out, req.Send()
3370 const opGetObjectRetention = "GetObjectRetention"
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
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.
3380 // See GetObjectRetention for more information on using the GetObjectRetention
3381 // API call, and error handling.
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.
3387 // // Example sending a request using the GetObjectRetentionRequest method.
3388 // req, resp := client.GetObjectRetentionRequest(params)
3390 // err := req.Send()
3391 // if err == nil { // resp is now filled
3392 // fmt.Println(resp)
3395 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectRetention
3396 func (c *S3) GetObjectRetentionRequest(input *GetObjectRetentionInput) (req *request.Request, output *GetObjectRetentionOutput) {
3397 op := &request.Operation{
3398 Name: opGetObjectRetention,
3400 HTTPPath: "/{Bucket}/{Key+}?retention",
3404 input = &GetObjectRetentionInput{}
3407 output = &GetObjectRetentionOutput{}
3408 req = c.newRequest(op, input, output)
3412 // GetObjectRetention API operation for Amazon Simple Storage Service.
3414 // Retrieves an object's retention settings.
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
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
3423 func (c *S3) GetObjectRetention(input *GetObjectRetentionInput) (*GetObjectRetentionOutput, error) {
3424 req, out := c.GetObjectRetentionRequest(input)
3425 return out, req.Send()
3428 // GetObjectRetentionWithContext is the same as GetObjectRetention with the addition of
3429 // the ability to pass a context and additional request options.
3431 // See GetObjectRetention for details on how to use this API operation.
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.
3437 func (c *S3) GetObjectRetentionWithContext(ctx aws.Context, input *GetObjectRetentionInput, opts ...request.Option) (*GetObjectRetentionOutput, error) {
3438 req, out := c.GetObjectRetentionRequest(input)
3440 req.ApplyOptions(opts...)
3441 return out, req.Send()
3444 const opGetObjectTagging = "GetObjectTagging"
3446 // GetObjectTaggingRequest generates a "aws/request.Request" representing the
3447 // client's request for the GetObjectTagging operation. The "output" return
3448 // value will be populated with the request's response once the request completes
3451 // Use "Send" method on the returned Request to send the API call to the service.
3452 // the "output" return value is not valid until after Send returns without error.
3454 // See GetObjectTagging for more information on using the GetObjectTagging
3455 // API call, and error handling.
3457 // This method is useful when you want to inject custom logic or configuration
3458 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
3461 // // Example sending a request using the GetObjectTaggingRequest method.
3462 // req, resp := client.GetObjectTaggingRequest(params)
3464 // err := req.Send()
3465 // if err == nil { // resp is now filled
3466 // fmt.Println(resp)
3469 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectTagging
3470 func (c *S3) GetObjectTaggingRequest(input *GetObjectTaggingInput) (req *request.Request, output *GetObjectTaggingOutput) {
3471 op := &request.Operation{
3472 Name: opGetObjectTagging,
3474 HTTPPath: "/{Bucket}/{Key+}?tagging",
3478 input = &GetObjectTaggingInput{}
3481 output = &GetObjectTaggingOutput{}
3482 req = c.newRequest(op, input, output)
3486 // GetObjectTagging API operation for Amazon Simple Storage Service.
3488 // Returns the tag-set of an object.
3490 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3491 // with awserr.Error's Code and Message methods to get detailed information about
3494 // See the AWS API reference guide for Amazon Simple Storage Service's
3495 // API operation GetObjectTagging for usage and error information.
3496 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectTagging
3497 func (c *S3) GetObjectTagging(input *GetObjectTaggingInput) (*GetObjectTaggingOutput, error) {
3498 req, out := c.GetObjectTaggingRequest(input)
3499 return out, req.Send()
3502 // GetObjectTaggingWithContext is the same as GetObjectTagging with the addition of
3503 // the ability to pass a context and additional request options.
3505 // See GetObjectTagging for details on how to use this API operation.
3507 // The context must be non-nil and will be used for request cancellation. If
3508 // the context is nil a panic will occur. In the future the SDK may create
3509 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
3510 // for more information on using Contexts.
3511 func (c *S3) GetObjectTaggingWithContext(ctx aws.Context, input *GetObjectTaggingInput, opts ...request.Option) (*GetObjectTaggingOutput, error) {
3512 req, out := c.GetObjectTaggingRequest(input)
3514 req.ApplyOptions(opts...)
3515 return out, req.Send()
3518 const opGetObjectTorrent = "GetObjectTorrent"
3520 // GetObjectTorrentRequest generates a "aws/request.Request" representing the
3521 // client's request for the GetObjectTorrent operation. The "output" return
3522 // value will be populated with the request's response once the request completes
3525 // Use "Send" method on the returned Request to send the API call to the service.
3526 // the "output" return value is not valid until after Send returns without error.
3528 // See GetObjectTorrent for more information on using the GetObjectTorrent
3529 // API call, and error handling.
3531 // This method is useful when you want to inject custom logic or configuration
3532 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
3535 // // Example sending a request using the GetObjectTorrentRequest method.
3536 // req, resp := client.GetObjectTorrentRequest(params)
3538 // err := req.Send()
3539 // if err == nil { // resp is now filled
3540 // fmt.Println(resp)
3543 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectTorrent
3544 func (c *S3) GetObjectTorrentRequest(input *GetObjectTorrentInput) (req *request.Request, output *GetObjectTorrentOutput) {
3545 op := &request.Operation{
3546 Name: opGetObjectTorrent,
3548 HTTPPath: "/{Bucket}/{Key+}?torrent",
3552 input = &GetObjectTorrentInput{}
3555 output = &GetObjectTorrentOutput{}
3556 req = c.newRequest(op, input, output)
3560 // GetObjectTorrent API operation for Amazon Simple Storage Service.
3562 // Return torrent files from a bucket.
3564 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3565 // with awserr.Error's Code and Message methods to get detailed information about
3568 // See the AWS API reference guide for Amazon Simple Storage Service's
3569 // API operation GetObjectTorrent for usage and error information.
3570 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectTorrent
3571 func (c *S3) GetObjectTorrent(input *GetObjectTorrentInput) (*GetObjectTorrentOutput, error) {
3572 req, out := c.GetObjectTorrentRequest(input)
3573 return out, req.Send()
3576 // GetObjectTorrentWithContext is the same as GetObjectTorrent with the addition of
3577 // the ability to pass a context and additional request options.
3579 // See GetObjectTorrent for details on how to use this API operation.
3581 // The context must be non-nil and will be used for request cancellation. If
3582 // the context is nil a panic will occur. In the future the SDK may create
3583 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
3584 // for more information on using Contexts.
3585 func (c *S3) GetObjectTorrentWithContext(ctx aws.Context, input *GetObjectTorrentInput, opts ...request.Option) (*GetObjectTorrentOutput, error) {
3586 req, out := c.GetObjectTorrentRequest(input)
3588 req.ApplyOptions(opts...)
3589 return out, req.Send()
3592 const opGetPublicAccessBlock = "GetPublicAccessBlock"
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
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.
3602 // See GetPublicAccessBlock for more information on using the GetPublicAccessBlock
3603 // API call, and error handling.
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.
3609 // // Example sending a request using the GetPublicAccessBlockRequest method.
3610 // req, resp := client.GetPublicAccessBlockRequest(params)
3612 // err := req.Send()
3613 // if err == nil { // resp is now filled
3614 // fmt.Println(resp)
3617 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetPublicAccessBlock
3618 func (c *S3) GetPublicAccessBlockRequest(input *GetPublicAccessBlockInput) (req *request.Request, output *GetPublicAccessBlockOutput) {
3619 op := &request.Operation{
3620 Name: opGetPublicAccessBlock,
3622 HTTPPath: "/{Bucket}?publicAccessBlock",
3626 input = &GetPublicAccessBlockInput{}
3629 output = &GetPublicAccessBlockOutput{}
3630 req = c.newRequest(op, input, output)
3634 // GetPublicAccessBlock API operation for Amazon Simple Storage Service.
3636 // Retrieves the PublicAccessBlock configuration for an Amazon S3 bucket.
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
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
3645 func (c *S3) GetPublicAccessBlock(input *GetPublicAccessBlockInput) (*GetPublicAccessBlockOutput, error) {
3646 req, out := c.GetPublicAccessBlockRequest(input)
3647 return out, req.Send()
3650 // GetPublicAccessBlockWithContext is the same as GetPublicAccessBlock with the addition of
3651 // the ability to pass a context and additional request options.
3653 // See GetPublicAccessBlock for details on how to use this API operation.
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.
3659 func (c *S3) GetPublicAccessBlockWithContext(ctx aws.Context, input *GetPublicAccessBlockInput, opts ...request.Option) (*GetPublicAccessBlockOutput, error) {
3660 req, out := c.GetPublicAccessBlockRequest(input)
3662 req.ApplyOptions(opts...)
3663 return out, req.Send()
3666 const opHeadBucket = "HeadBucket"
3668 // HeadBucketRequest generates a "aws/request.Request" representing the
3669 // client's request for the HeadBucket operation. The "output" return
3670 // value will be populated with the request's response once the request completes
3673 // Use "Send" method on the returned Request to send the API call to the service.
3674 // the "output" return value is not valid until after Send returns without error.
3676 // See HeadBucket for more information on using the HeadBucket
3677 // API call, and error handling.
3679 // This method is useful when you want to inject custom logic or configuration
3680 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
3683 // // Example sending a request using the HeadBucketRequest method.
3684 // req, resp := client.HeadBucketRequest(params)
3686 // err := req.Send()
3687 // if err == nil { // resp is now filled
3688 // fmt.Println(resp)
3691 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/HeadBucket
3692 func (c *S3) HeadBucketRequest(input *HeadBucketInput) (req *request.Request, output *HeadBucketOutput) {
3693 op := &request.Operation{
3696 HTTPPath: "/{Bucket}",
3700 input = &HeadBucketInput{}
3703 output = &HeadBucketOutput{}
3704 req = c.newRequest(op, input, output)
3705 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
3709 // HeadBucket API operation for Amazon Simple Storage Service.
3711 // This operation is useful to determine if a bucket exists and you have permission
3714 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3715 // with awserr.Error's Code and Message methods to get detailed information about
3718 // See the AWS API reference guide for Amazon Simple Storage Service's
3719 // API operation HeadBucket for usage and error information.
3721 // Returned Error Codes:
3722 // * ErrCodeNoSuchBucket "NoSuchBucket"
3723 // The specified bucket does not exist.
3725 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/HeadBucket
3726 func (c *S3) HeadBucket(input *HeadBucketInput) (*HeadBucketOutput, error) {
3727 req, out := c.HeadBucketRequest(input)
3728 return out, req.Send()
3731 // HeadBucketWithContext is the same as HeadBucket with the addition of
3732 // the ability to pass a context and additional request options.
3734 // See HeadBucket for details on how to use this API operation.
3736 // The context must be non-nil and will be used for request cancellation. If
3737 // the context is nil a panic will occur. In the future the SDK may create
3738 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
3739 // for more information on using Contexts.
3740 func (c *S3) HeadBucketWithContext(ctx aws.Context, input *HeadBucketInput, opts ...request.Option) (*HeadBucketOutput, error) {
3741 req, out := c.HeadBucketRequest(input)
3743 req.ApplyOptions(opts...)
3744 return out, req.Send()
3747 const opHeadObject = "HeadObject"
3749 // HeadObjectRequest generates a "aws/request.Request" representing the
3750 // client's request for the HeadObject operation. The "output" return
3751 // value will be populated with the request's response once the request completes
3754 // Use "Send" method on the returned Request to send the API call to the service.
3755 // the "output" return value is not valid until after Send returns without error.
3757 // See HeadObject for more information on using the HeadObject
3758 // API call, and error handling.
3760 // This method is useful when you want to inject custom logic or configuration
3761 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
3764 // // Example sending a request using the HeadObjectRequest method.
3765 // req, resp := client.HeadObjectRequest(params)
3767 // err := req.Send()
3768 // if err == nil { // resp is now filled
3769 // fmt.Println(resp)
3772 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/HeadObject
3773 func (c *S3) HeadObjectRequest(input *HeadObjectInput) (req *request.Request, output *HeadObjectOutput) {
3774 op := &request.Operation{
3777 HTTPPath: "/{Bucket}/{Key+}",
3781 input = &HeadObjectInput{}
3784 output = &HeadObjectOutput{}
3785 req = c.newRequest(op, input, output)
3789 // HeadObject API operation for Amazon Simple Storage Service.
3791 // The HEAD operation retrieves metadata from an object without returning the
3792 // object itself. This operation is useful if you're only interested in an object's
3793 // metadata. To use HEAD, you must have READ access to the object.
3795 // See http://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#RESTErrorResponses
3796 // for more information on returned errors.
3798 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3799 // with awserr.Error's Code and Message methods to get detailed information about
3802 // See the AWS API reference guide for Amazon Simple Storage Service's
3803 // API operation HeadObject for usage and error information.
3804 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/HeadObject
3805 func (c *S3) HeadObject(input *HeadObjectInput) (*HeadObjectOutput, error) {
3806 req, out := c.HeadObjectRequest(input)
3807 return out, req.Send()
3810 // HeadObjectWithContext is the same as HeadObject with the addition of
3811 // the ability to pass a context and additional request options.
3813 // See HeadObject for details on how to use this API operation.
3815 // The context must be non-nil and will be used for request cancellation. If
3816 // the context is nil a panic will occur. In the future the SDK may create
3817 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
3818 // for more information on using Contexts.
3819 func (c *S3) HeadObjectWithContext(ctx aws.Context, input *HeadObjectInput, opts ...request.Option) (*HeadObjectOutput, error) {
3820 req, out := c.HeadObjectRequest(input)
3822 req.ApplyOptions(opts...)
3823 return out, req.Send()
3826 const opListBucketAnalyticsConfigurations = "ListBucketAnalyticsConfigurations"
3828 // ListBucketAnalyticsConfigurationsRequest generates a "aws/request.Request" representing the
3829 // client's request for the ListBucketAnalyticsConfigurations operation. The "output" return
3830 // value will be populated with the request's response once the request completes
3833 // Use "Send" method on the returned Request to send the API call to the service.
3834 // the "output" return value is not valid until after Send returns without error.
3836 // See ListBucketAnalyticsConfigurations for more information on using the ListBucketAnalyticsConfigurations
3837 // API call, and error handling.
3839 // This method is useful when you want to inject custom logic or configuration
3840 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
3843 // // Example sending a request using the ListBucketAnalyticsConfigurationsRequest method.
3844 // req, resp := client.ListBucketAnalyticsConfigurationsRequest(params)
3846 // err := req.Send()
3847 // if err == nil { // resp is now filled
3848 // fmt.Println(resp)
3851 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListBucketAnalyticsConfigurations
3852 func (c *S3) ListBucketAnalyticsConfigurationsRequest(input *ListBucketAnalyticsConfigurationsInput) (req *request.Request, output *ListBucketAnalyticsConfigurationsOutput) {
3853 op := &request.Operation{
3854 Name: opListBucketAnalyticsConfigurations,
3856 HTTPPath: "/{Bucket}?analytics",
3860 input = &ListBucketAnalyticsConfigurationsInput{}
3863 output = &ListBucketAnalyticsConfigurationsOutput{}
3864 req = c.newRequest(op, input, output)
3868 // ListBucketAnalyticsConfigurations API operation for Amazon Simple Storage Service.
3870 // Lists the analytics configurations for the bucket.
3872 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3873 // with awserr.Error's Code and Message methods to get detailed information about
3876 // See the AWS API reference guide for Amazon Simple Storage Service's
3877 // API operation ListBucketAnalyticsConfigurations for usage and error information.
3878 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListBucketAnalyticsConfigurations
3879 func (c *S3) ListBucketAnalyticsConfigurations(input *ListBucketAnalyticsConfigurationsInput) (*ListBucketAnalyticsConfigurationsOutput, error) {
3880 req, out := c.ListBucketAnalyticsConfigurationsRequest(input)
3881 return out, req.Send()
3884 // ListBucketAnalyticsConfigurationsWithContext is the same as ListBucketAnalyticsConfigurations with the addition of
3885 // the ability to pass a context and additional request options.
3887 // See ListBucketAnalyticsConfigurations for details on how to use this API operation.
3889 // The context must be non-nil and will be used for request cancellation. If
3890 // the context is nil a panic will occur. In the future the SDK may create
3891 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
3892 // for more information on using Contexts.
3893 func (c *S3) ListBucketAnalyticsConfigurationsWithContext(ctx aws.Context, input *ListBucketAnalyticsConfigurationsInput, opts ...request.Option) (*ListBucketAnalyticsConfigurationsOutput, error) {
3894 req, out := c.ListBucketAnalyticsConfigurationsRequest(input)
3896 req.ApplyOptions(opts...)
3897 return out, req.Send()
3900 const opListBucketInventoryConfigurations = "ListBucketInventoryConfigurations"
3902 // ListBucketInventoryConfigurationsRequest generates a "aws/request.Request" representing the
3903 // client's request for the ListBucketInventoryConfigurations operation. The "output" return
3904 // value will be populated with the request's response once the request completes
3907 // Use "Send" method on the returned Request to send the API call to the service.
3908 // the "output" return value is not valid until after Send returns without error.
3910 // See ListBucketInventoryConfigurations for more information on using the ListBucketInventoryConfigurations
3911 // API call, and error handling.
3913 // This method is useful when you want to inject custom logic or configuration
3914 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
3917 // // Example sending a request using the ListBucketInventoryConfigurationsRequest method.
3918 // req, resp := client.ListBucketInventoryConfigurationsRequest(params)
3920 // err := req.Send()
3921 // if err == nil { // resp is now filled
3922 // fmt.Println(resp)
3925 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListBucketInventoryConfigurations
3926 func (c *S3) ListBucketInventoryConfigurationsRequest(input *ListBucketInventoryConfigurationsInput) (req *request.Request, output *ListBucketInventoryConfigurationsOutput) {
3927 op := &request.Operation{
3928 Name: opListBucketInventoryConfigurations,
3930 HTTPPath: "/{Bucket}?inventory",
3934 input = &ListBucketInventoryConfigurationsInput{}
3937 output = &ListBucketInventoryConfigurationsOutput{}
3938 req = c.newRequest(op, input, output)
3942 // ListBucketInventoryConfigurations API operation for Amazon Simple Storage Service.
3944 // Returns a list of inventory configurations for the bucket.
3946 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3947 // with awserr.Error's Code and Message methods to get detailed information about
3950 // See the AWS API reference guide for Amazon Simple Storage Service's
3951 // API operation ListBucketInventoryConfigurations for usage and error information.
3952 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListBucketInventoryConfigurations
3953 func (c *S3) ListBucketInventoryConfigurations(input *ListBucketInventoryConfigurationsInput) (*ListBucketInventoryConfigurationsOutput, error) {
3954 req, out := c.ListBucketInventoryConfigurationsRequest(input)
3955 return out, req.Send()
3958 // ListBucketInventoryConfigurationsWithContext is the same as ListBucketInventoryConfigurations with the addition of
3959 // the ability to pass a context and additional request options.
3961 // See ListBucketInventoryConfigurations for details on how to use this API operation.
3963 // The context must be non-nil and will be used for request cancellation. If
3964 // the context is nil a panic will occur. In the future the SDK may create
3965 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
3966 // for more information on using Contexts.
3967 func (c *S3) ListBucketInventoryConfigurationsWithContext(ctx aws.Context, input *ListBucketInventoryConfigurationsInput, opts ...request.Option) (*ListBucketInventoryConfigurationsOutput, error) {
3968 req, out := c.ListBucketInventoryConfigurationsRequest(input)
3970 req.ApplyOptions(opts...)
3971 return out, req.Send()
3974 const opListBucketMetricsConfigurations = "ListBucketMetricsConfigurations"
3976 // ListBucketMetricsConfigurationsRequest generates a "aws/request.Request" representing the
3977 // client's request for the ListBucketMetricsConfigurations operation. The "output" return
3978 // value will be populated with the request's response once the request completes
3981 // Use "Send" method on the returned Request to send the API call to the service.
3982 // the "output" return value is not valid until after Send returns without error.
3984 // See ListBucketMetricsConfigurations for more information on using the ListBucketMetricsConfigurations
3985 // API call, and error handling.
3987 // This method is useful when you want to inject custom logic or configuration
3988 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
3991 // // Example sending a request using the ListBucketMetricsConfigurationsRequest method.
3992 // req, resp := client.ListBucketMetricsConfigurationsRequest(params)
3994 // err := req.Send()
3995 // if err == nil { // resp is now filled
3996 // fmt.Println(resp)
3999 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListBucketMetricsConfigurations
4000 func (c *S3) ListBucketMetricsConfigurationsRequest(input *ListBucketMetricsConfigurationsInput) (req *request.Request, output *ListBucketMetricsConfigurationsOutput) {
4001 op := &request.Operation{
4002 Name: opListBucketMetricsConfigurations,
4004 HTTPPath: "/{Bucket}?metrics",
4008 input = &ListBucketMetricsConfigurationsInput{}
4011 output = &ListBucketMetricsConfigurationsOutput{}
4012 req = c.newRequest(op, input, output)
4016 // ListBucketMetricsConfigurations API operation for Amazon Simple Storage Service.
4018 // Lists the metrics configurations for the bucket.
4020 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4021 // with awserr.Error's Code and Message methods to get detailed information about
4024 // See the AWS API reference guide for Amazon Simple Storage Service's
4025 // API operation ListBucketMetricsConfigurations for usage and error information.
4026 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListBucketMetricsConfigurations
4027 func (c *S3) ListBucketMetricsConfigurations(input *ListBucketMetricsConfigurationsInput) (*ListBucketMetricsConfigurationsOutput, error) {
4028 req, out := c.ListBucketMetricsConfigurationsRequest(input)
4029 return out, req.Send()
4032 // ListBucketMetricsConfigurationsWithContext is the same as ListBucketMetricsConfigurations with the addition of
4033 // the ability to pass a context and additional request options.
4035 // See ListBucketMetricsConfigurations for details on how to use this API operation.
4037 // The context must be non-nil and will be used for request cancellation. If
4038 // the context is nil a panic will occur. In the future the SDK may create
4039 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
4040 // for more information on using Contexts.
4041 func (c *S3) ListBucketMetricsConfigurationsWithContext(ctx aws.Context, input *ListBucketMetricsConfigurationsInput, opts ...request.Option) (*ListBucketMetricsConfigurationsOutput, error) {
4042 req, out := c.ListBucketMetricsConfigurationsRequest(input)
4044 req.ApplyOptions(opts...)
4045 return out, req.Send()
4048 const opListBuckets = "ListBuckets"
4050 // ListBucketsRequest generates a "aws/request.Request" representing the
4051 // client's request for the ListBuckets operation. The "output" return
4052 // value will be populated with the request's response once the request completes
4055 // Use "Send" method on the returned Request to send the API call to the service.
4056 // the "output" return value is not valid until after Send returns without error.
4058 // See ListBuckets for more information on using the ListBuckets
4059 // API call, and error handling.
4061 // This method is useful when you want to inject custom logic or configuration
4062 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
4065 // // Example sending a request using the ListBucketsRequest method.
4066 // req, resp := client.ListBucketsRequest(params)
4068 // err := req.Send()
4069 // if err == nil { // resp is now filled
4070 // fmt.Println(resp)
4073 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListBuckets
4074 func (c *S3) ListBucketsRequest(input *ListBucketsInput) (req *request.Request, output *ListBucketsOutput) {
4075 op := &request.Operation{
4076 Name: opListBuckets,
4082 input = &ListBucketsInput{}
4085 output = &ListBucketsOutput{}
4086 req = c.newRequest(op, input, output)
4090 // ListBuckets API operation for Amazon Simple Storage Service.
4092 // Returns a list of all buckets owned by the authenticated sender of the request.
4094 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4095 // with awserr.Error's Code and Message methods to get detailed information about
4098 // See the AWS API reference guide for Amazon Simple Storage Service's
4099 // API operation ListBuckets for usage and error information.
4100 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListBuckets
4101 func (c *S3) ListBuckets(input *ListBucketsInput) (*ListBucketsOutput, error) {
4102 req, out := c.ListBucketsRequest(input)
4103 return out, req.Send()
4106 // ListBucketsWithContext is the same as ListBuckets with the addition of
4107 // the ability to pass a context and additional request options.
4109 // See ListBuckets for details on how to use this API operation.
4111 // The context must be non-nil and will be used for request cancellation. If
4112 // the context is nil a panic will occur. In the future the SDK may create
4113 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
4114 // for more information on using Contexts.
4115 func (c *S3) ListBucketsWithContext(ctx aws.Context, input *ListBucketsInput, opts ...request.Option) (*ListBucketsOutput, error) {
4116 req, out := c.ListBucketsRequest(input)
4118 req.ApplyOptions(opts...)
4119 return out, req.Send()
4122 const opListMultipartUploads = "ListMultipartUploads"
4124 // ListMultipartUploadsRequest generates a "aws/request.Request" representing the
4125 // client's request for the ListMultipartUploads operation. The "output" return
4126 // value will be populated with the request's response once the request completes
4129 // Use "Send" method on the returned Request to send the API call to the service.
4130 // the "output" return value is not valid until after Send returns without error.
4132 // See ListMultipartUploads for more information on using the ListMultipartUploads
4133 // API call, and error handling.
4135 // This method is useful when you want to inject custom logic or configuration
4136 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
4139 // // Example sending a request using the ListMultipartUploadsRequest method.
4140 // req, resp := client.ListMultipartUploadsRequest(params)
4142 // err := req.Send()
4143 // if err == nil { // resp is now filled
4144 // fmt.Println(resp)
4147 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListMultipartUploads
4148 func (c *S3) ListMultipartUploadsRequest(input *ListMultipartUploadsInput) (req *request.Request, output *ListMultipartUploadsOutput) {
4149 op := &request.Operation{
4150 Name: opListMultipartUploads,
4152 HTTPPath: "/{Bucket}?uploads",
4153 Paginator: &request.Paginator{
4154 InputTokens: []string{"KeyMarker", "UploadIdMarker"},
4155 OutputTokens: []string{"NextKeyMarker", "NextUploadIdMarker"},
4156 LimitToken: "MaxUploads",
4157 TruncationToken: "IsTruncated",
4162 input = &ListMultipartUploadsInput{}
4165 output = &ListMultipartUploadsOutput{}
4166 req = c.newRequest(op, input, output)
4170 // ListMultipartUploads API operation for Amazon Simple Storage Service.
4172 // This operation lists in-progress multipart uploads.
4174 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4175 // with awserr.Error's Code and Message methods to get detailed information about
4178 // See the AWS API reference guide for Amazon Simple Storage Service's
4179 // API operation ListMultipartUploads for usage and error information.
4180 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListMultipartUploads
4181 func (c *S3) ListMultipartUploads(input *ListMultipartUploadsInput) (*ListMultipartUploadsOutput, error) {
4182 req, out := c.ListMultipartUploadsRequest(input)
4183 return out, req.Send()
4186 // ListMultipartUploadsWithContext is the same as ListMultipartUploads with the addition of
4187 // the ability to pass a context and additional request options.
4189 // See ListMultipartUploads for details on how to use this API operation.
4191 // The context must be non-nil and will be used for request cancellation. If
4192 // the context is nil a panic will occur. In the future the SDK may create
4193 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
4194 // for more information on using Contexts.
4195 func (c *S3) ListMultipartUploadsWithContext(ctx aws.Context, input *ListMultipartUploadsInput, opts ...request.Option) (*ListMultipartUploadsOutput, error) {
4196 req, out := c.ListMultipartUploadsRequest(input)
4198 req.ApplyOptions(opts...)
4199 return out, req.Send()
4202 // ListMultipartUploadsPages iterates over the pages of a ListMultipartUploads operation,
4203 // calling the "fn" function with the response data for each page. To stop
4204 // iterating, return false from the fn function.
4206 // See ListMultipartUploads method for more information on how to use this operation.
4208 // Note: This operation can generate multiple requests to a service.
4210 // // Example iterating over at most 3 pages of a ListMultipartUploads operation.
4212 // err := client.ListMultipartUploadsPages(params,
4213 // func(page *ListMultipartUploadsOutput, lastPage bool) bool {
4215 // fmt.Println(page)
4216 // return pageNum <= 3
4219 func (c *S3) ListMultipartUploadsPages(input *ListMultipartUploadsInput, fn func(*ListMultipartUploadsOutput, bool) bool) error {
4220 return c.ListMultipartUploadsPagesWithContext(aws.BackgroundContext(), input, fn)
4223 // ListMultipartUploadsPagesWithContext same as ListMultipartUploadsPages except
4224 // it takes a Context and allows setting request options on the pages.
4226 // The context must be non-nil and will be used for request cancellation. If
4227 // the context is nil a panic will occur. In the future the SDK may create
4228 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
4229 // for more information on using Contexts.
4230 func (c *S3) ListMultipartUploadsPagesWithContext(ctx aws.Context, input *ListMultipartUploadsInput, fn func(*ListMultipartUploadsOutput, bool) bool, opts ...request.Option) error {
4231 p := request.Pagination{
4232 NewRequest: func() (*request.Request, error) {
4233 var inCpy *ListMultipartUploadsInput
4238 req, _ := c.ListMultipartUploadsRequest(inCpy)
4240 req.ApplyOptions(opts...)
4246 for p.Next() && cont {
4247 cont = fn(p.Page().(*ListMultipartUploadsOutput), !p.HasNextPage())
4252 const opListObjectVersions = "ListObjectVersions"
4254 // ListObjectVersionsRequest generates a "aws/request.Request" representing the
4255 // client's request for the ListObjectVersions operation. The "output" return
4256 // value will be populated with the request's response once the request completes
4259 // Use "Send" method on the returned Request to send the API call to the service.
4260 // the "output" return value is not valid until after Send returns without error.
4262 // See ListObjectVersions for more information on using the ListObjectVersions
4263 // API call, and error handling.
4265 // This method is useful when you want to inject custom logic or configuration
4266 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
4269 // // Example sending a request using the ListObjectVersionsRequest method.
4270 // req, resp := client.ListObjectVersionsRequest(params)
4272 // err := req.Send()
4273 // if err == nil { // resp is now filled
4274 // fmt.Println(resp)
4277 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListObjectVersions
4278 func (c *S3) ListObjectVersionsRequest(input *ListObjectVersionsInput) (req *request.Request, output *ListObjectVersionsOutput) {
4279 op := &request.Operation{
4280 Name: opListObjectVersions,
4282 HTTPPath: "/{Bucket}?versions",
4283 Paginator: &request.Paginator{
4284 InputTokens: []string{"KeyMarker", "VersionIdMarker"},
4285 OutputTokens: []string{"NextKeyMarker", "NextVersionIdMarker"},
4286 LimitToken: "MaxKeys",
4287 TruncationToken: "IsTruncated",
4292 input = &ListObjectVersionsInput{}
4295 output = &ListObjectVersionsOutput{}
4296 req = c.newRequest(op, input, output)
4300 // ListObjectVersions API operation for Amazon Simple Storage Service.
4302 // Returns metadata about all of the versions of objects in a bucket.
4304 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4305 // with awserr.Error's Code and Message methods to get detailed information about
4308 // See the AWS API reference guide for Amazon Simple Storage Service's
4309 // API operation ListObjectVersions for usage and error information.
4310 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListObjectVersions
4311 func (c *S3) ListObjectVersions(input *ListObjectVersionsInput) (*ListObjectVersionsOutput, error) {
4312 req, out := c.ListObjectVersionsRequest(input)
4313 return out, req.Send()
4316 // ListObjectVersionsWithContext is the same as ListObjectVersions with the addition of
4317 // the ability to pass a context and additional request options.
4319 // See ListObjectVersions for details on how to use this API operation.
4321 // The context must be non-nil and will be used for request cancellation. If
4322 // the context is nil a panic will occur. In the future the SDK may create
4323 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
4324 // for more information on using Contexts.
4325 func (c *S3) ListObjectVersionsWithContext(ctx aws.Context, input *ListObjectVersionsInput, opts ...request.Option) (*ListObjectVersionsOutput, error) {
4326 req, out := c.ListObjectVersionsRequest(input)
4328 req.ApplyOptions(opts...)
4329 return out, req.Send()
4332 // ListObjectVersionsPages iterates over the pages of a ListObjectVersions operation,
4333 // calling the "fn" function with the response data for each page. To stop
4334 // iterating, return false from the fn function.
4336 // See ListObjectVersions method for more information on how to use this operation.
4338 // Note: This operation can generate multiple requests to a service.
4340 // // Example iterating over at most 3 pages of a ListObjectVersions operation.
4342 // err := client.ListObjectVersionsPages(params,
4343 // func(page *ListObjectVersionsOutput, lastPage bool) bool {
4345 // fmt.Println(page)
4346 // return pageNum <= 3
4349 func (c *S3) ListObjectVersionsPages(input *ListObjectVersionsInput, fn func(*ListObjectVersionsOutput, bool) bool) error {
4350 return c.ListObjectVersionsPagesWithContext(aws.BackgroundContext(), input, fn)
4353 // ListObjectVersionsPagesWithContext same as ListObjectVersionsPages except
4354 // it takes a Context and allows setting request options on the pages.
4356 // The context must be non-nil and will be used for request cancellation. If
4357 // the context is nil a panic will occur. In the future the SDK may create
4358 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
4359 // for more information on using Contexts.
4360 func (c *S3) ListObjectVersionsPagesWithContext(ctx aws.Context, input *ListObjectVersionsInput, fn func(*ListObjectVersionsOutput, bool) bool, opts ...request.Option) error {
4361 p := request.Pagination{
4362 NewRequest: func() (*request.Request, error) {
4363 var inCpy *ListObjectVersionsInput
4368 req, _ := c.ListObjectVersionsRequest(inCpy)
4370 req.ApplyOptions(opts...)
4376 for p.Next() && cont {
4377 cont = fn(p.Page().(*ListObjectVersionsOutput), !p.HasNextPage())
4382 const opListObjects = "ListObjects"
4384 // ListObjectsRequest generates a "aws/request.Request" representing the
4385 // client's request for the ListObjects operation. The "output" return
4386 // value will be populated with the request's response once the request completes
4389 // Use "Send" method on the returned Request to send the API call to the service.
4390 // the "output" return value is not valid until after Send returns without error.
4392 // See ListObjects for more information on using the ListObjects
4393 // API call, and error handling.
4395 // This method is useful when you want to inject custom logic or configuration
4396 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
4399 // // Example sending a request using the ListObjectsRequest method.
4400 // req, resp := client.ListObjectsRequest(params)
4402 // err := req.Send()
4403 // if err == nil { // resp is now filled
4404 // fmt.Println(resp)
4407 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListObjects
4408 func (c *S3) ListObjectsRequest(input *ListObjectsInput) (req *request.Request, output *ListObjectsOutput) {
4409 op := &request.Operation{
4410 Name: opListObjects,
4412 HTTPPath: "/{Bucket}",
4413 Paginator: &request.Paginator{
4414 InputTokens: []string{"Marker"},
4415 OutputTokens: []string{"NextMarker || Contents[-1].Key"},
4416 LimitToken: "MaxKeys",
4417 TruncationToken: "IsTruncated",
4422 input = &ListObjectsInput{}
4425 output = &ListObjectsOutput{}
4426 req = c.newRequest(op, input, output)
4430 // ListObjects API operation for Amazon Simple Storage Service.
4432 // Returns some or all (up to 1000) of the objects in a bucket. You can use
4433 // the request parameters as selection criteria to return a subset of the objects
4436 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4437 // with awserr.Error's Code and Message methods to get detailed information about
4440 // See the AWS API reference guide for Amazon Simple Storage Service's
4441 // API operation ListObjects for usage and error information.
4443 // Returned Error Codes:
4444 // * ErrCodeNoSuchBucket "NoSuchBucket"
4445 // The specified bucket does not exist.
4447 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListObjects
4448 func (c *S3) ListObjects(input *ListObjectsInput) (*ListObjectsOutput, error) {
4449 req, out := c.ListObjectsRequest(input)
4450 return out, req.Send()
4453 // ListObjectsWithContext is the same as ListObjects with the addition of
4454 // the ability to pass a context and additional request options.
4456 // See ListObjects for details on how to use this API operation.
4458 // The context must be non-nil and will be used for request cancellation. If
4459 // the context is nil a panic will occur. In the future the SDK may create
4460 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
4461 // for more information on using Contexts.
4462 func (c *S3) ListObjectsWithContext(ctx aws.Context, input *ListObjectsInput, opts ...request.Option) (*ListObjectsOutput, error) {
4463 req, out := c.ListObjectsRequest(input)
4465 req.ApplyOptions(opts...)
4466 return out, req.Send()
4469 // ListObjectsPages iterates over the pages of a ListObjects operation,
4470 // calling the "fn" function with the response data for each page. To stop
4471 // iterating, return false from the fn function.
4473 // See ListObjects method for more information on how to use this operation.
4475 // Note: This operation can generate multiple requests to a service.
4477 // // Example iterating over at most 3 pages of a ListObjects operation.
4479 // err := client.ListObjectsPages(params,
4480 // func(page *ListObjectsOutput, lastPage bool) bool {
4482 // fmt.Println(page)
4483 // return pageNum <= 3
4486 func (c *S3) ListObjectsPages(input *ListObjectsInput, fn func(*ListObjectsOutput, bool) bool) error {
4487 return c.ListObjectsPagesWithContext(aws.BackgroundContext(), input, fn)
4490 // ListObjectsPagesWithContext same as ListObjectsPages except
4491 // it takes a Context and allows setting request options on the pages.
4493 // The context must be non-nil and will be used for request cancellation. If
4494 // the context is nil a panic will occur. In the future the SDK may create
4495 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
4496 // for more information on using Contexts.
4497 func (c *S3) ListObjectsPagesWithContext(ctx aws.Context, input *ListObjectsInput, fn func(*ListObjectsOutput, bool) bool, opts ...request.Option) error {
4498 p := request.Pagination{
4499 NewRequest: func() (*request.Request, error) {
4500 var inCpy *ListObjectsInput
4505 req, _ := c.ListObjectsRequest(inCpy)
4507 req.ApplyOptions(opts...)
4513 for p.Next() && cont {
4514 cont = fn(p.Page().(*ListObjectsOutput), !p.HasNextPage())
4519 const opListObjectsV2 = "ListObjectsV2"
4521 // ListObjectsV2Request generates a "aws/request.Request" representing the
4522 // client's request for the ListObjectsV2 operation. The "output" return
4523 // value will be populated with the request's response once the request completes
4526 // Use "Send" method on the returned Request to send the API call to the service.
4527 // the "output" return value is not valid until after Send returns without error.
4529 // See ListObjectsV2 for more information on using the ListObjectsV2
4530 // API call, and error handling.
4532 // This method is useful when you want to inject custom logic or configuration
4533 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
4536 // // Example sending a request using the ListObjectsV2Request method.
4537 // req, resp := client.ListObjectsV2Request(params)
4539 // err := req.Send()
4540 // if err == nil { // resp is now filled
4541 // fmt.Println(resp)
4544 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListObjectsV2
4545 func (c *S3) ListObjectsV2Request(input *ListObjectsV2Input) (req *request.Request, output *ListObjectsV2Output) {
4546 op := &request.Operation{
4547 Name: opListObjectsV2,
4549 HTTPPath: "/{Bucket}?list-type=2",
4550 Paginator: &request.Paginator{
4551 InputTokens: []string{"ContinuationToken"},
4552 OutputTokens: []string{"NextContinuationToken"},
4553 LimitToken: "MaxKeys",
4554 TruncationToken: "",
4559 input = &ListObjectsV2Input{}
4562 output = &ListObjectsV2Output{}
4563 req = c.newRequest(op, input, output)
4567 // ListObjectsV2 API operation for Amazon Simple Storage Service.
4569 // Returns some or all (up to 1000) of the objects in a bucket. You can use
4570 // the request parameters as selection criteria to return a subset of the objects
4571 // in a bucket. Note: ListObjectsV2 is the revised List Objects API and we recommend
4572 // you use this revised API for new application development.
4574 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4575 // with awserr.Error's Code and Message methods to get detailed information about
4578 // See the AWS API reference guide for Amazon Simple Storage Service's
4579 // API operation ListObjectsV2 for usage and error information.
4581 // Returned Error Codes:
4582 // * ErrCodeNoSuchBucket "NoSuchBucket"
4583 // The specified bucket does not exist.
4585 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListObjectsV2
4586 func (c *S3) ListObjectsV2(input *ListObjectsV2Input) (*ListObjectsV2Output, error) {
4587 req, out := c.ListObjectsV2Request(input)
4588 return out, req.Send()
4591 // ListObjectsV2WithContext is the same as ListObjectsV2 with the addition of
4592 // the ability to pass a context and additional request options.
4594 // See ListObjectsV2 for details on how to use this API operation.
4596 // The context must be non-nil and will be used for request cancellation. If
4597 // the context is nil a panic will occur. In the future the SDK may create
4598 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
4599 // for more information on using Contexts.
4600 func (c *S3) ListObjectsV2WithContext(ctx aws.Context, input *ListObjectsV2Input, opts ...request.Option) (*ListObjectsV2Output, error) {
4601 req, out := c.ListObjectsV2Request(input)
4603 req.ApplyOptions(opts...)
4604 return out, req.Send()
4607 // ListObjectsV2Pages iterates over the pages of a ListObjectsV2 operation,
4608 // calling the "fn" function with the response data for each page. To stop
4609 // iterating, return false from the fn function.
4611 // See ListObjectsV2 method for more information on how to use this operation.
4613 // Note: This operation can generate multiple requests to a service.
4615 // // Example iterating over at most 3 pages of a ListObjectsV2 operation.
4617 // err := client.ListObjectsV2Pages(params,
4618 // func(page *ListObjectsV2Output, lastPage bool) bool {
4620 // fmt.Println(page)
4621 // return pageNum <= 3
4624 func (c *S3) ListObjectsV2Pages(input *ListObjectsV2Input, fn func(*ListObjectsV2Output, bool) bool) error {
4625 return c.ListObjectsV2PagesWithContext(aws.BackgroundContext(), input, fn)
4628 // ListObjectsV2PagesWithContext same as ListObjectsV2Pages except
4629 // it takes a Context and allows setting request options on the pages.
4631 // The context must be non-nil and will be used for request cancellation. If
4632 // the context is nil a panic will occur. In the future the SDK may create
4633 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
4634 // for more information on using Contexts.
4635 func (c *S3) ListObjectsV2PagesWithContext(ctx aws.Context, input *ListObjectsV2Input, fn func(*ListObjectsV2Output, bool) bool, opts ...request.Option) error {
4636 p := request.Pagination{
4637 NewRequest: func() (*request.Request, error) {
4638 var inCpy *ListObjectsV2Input
4643 req, _ := c.ListObjectsV2Request(inCpy)
4645 req.ApplyOptions(opts...)
4651 for p.Next() && cont {
4652 cont = fn(p.Page().(*ListObjectsV2Output), !p.HasNextPage())
4657 const opListParts = "ListParts"
4659 // ListPartsRequest generates a "aws/request.Request" representing the
4660 // client's request for the ListParts operation. The "output" return
4661 // value will be populated with the request's response once the request completes
4664 // Use "Send" method on the returned Request to send the API call to the service.
4665 // the "output" return value is not valid until after Send returns without error.
4667 // See ListParts for more information on using the ListParts
4668 // API call, and error handling.
4670 // This method is useful when you want to inject custom logic or configuration
4671 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
4674 // // Example sending a request using the ListPartsRequest method.
4675 // req, resp := client.ListPartsRequest(params)
4677 // err := req.Send()
4678 // if err == nil { // resp is now filled
4679 // fmt.Println(resp)
4682 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListParts
4683 func (c *S3) ListPartsRequest(input *ListPartsInput) (req *request.Request, output *ListPartsOutput) {
4684 op := &request.Operation{
4687 HTTPPath: "/{Bucket}/{Key+}",
4688 Paginator: &request.Paginator{
4689 InputTokens: []string{"PartNumberMarker"},
4690 OutputTokens: []string{"NextPartNumberMarker"},
4691 LimitToken: "MaxParts",
4692 TruncationToken: "IsTruncated",
4697 input = &ListPartsInput{}
4700 output = &ListPartsOutput{}
4701 req = c.newRequest(op, input, output)
4705 // ListParts API operation for Amazon Simple Storage Service.
4707 // Lists the parts that have been uploaded for a specific multipart upload.
4709 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4710 // with awserr.Error's Code and Message methods to get detailed information about
4713 // See the AWS API reference guide for Amazon Simple Storage Service's
4714 // API operation ListParts for usage and error information.
4715 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListParts
4716 func (c *S3) ListParts(input *ListPartsInput) (*ListPartsOutput, error) {
4717 req, out := c.ListPartsRequest(input)
4718 return out, req.Send()
4721 // ListPartsWithContext is the same as ListParts with the addition of
4722 // the ability to pass a context and additional request options.
4724 // See ListParts for details on how to use this API operation.
4726 // The context must be non-nil and will be used for request cancellation. If
4727 // the context is nil a panic will occur. In the future the SDK may create
4728 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
4729 // for more information on using Contexts.
4730 func (c *S3) ListPartsWithContext(ctx aws.Context, input *ListPartsInput, opts ...request.Option) (*ListPartsOutput, error) {
4731 req, out := c.ListPartsRequest(input)
4733 req.ApplyOptions(opts...)
4734 return out, req.Send()
4737 // ListPartsPages iterates over the pages of a ListParts operation,
4738 // calling the "fn" function with the response data for each page. To stop
4739 // iterating, return false from the fn function.
4741 // See ListParts method for more information on how to use this operation.
4743 // Note: This operation can generate multiple requests to a service.
4745 // // Example iterating over at most 3 pages of a ListParts operation.
4747 // err := client.ListPartsPages(params,
4748 // func(page *ListPartsOutput, lastPage bool) bool {
4750 // fmt.Println(page)
4751 // return pageNum <= 3
4754 func (c *S3) ListPartsPages(input *ListPartsInput, fn func(*ListPartsOutput, bool) bool) error {
4755 return c.ListPartsPagesWithContext(aws.BackgroundContext(), input, fn)
4758 // ListPartsPagesWithContext same as ListPartsPages except
4759 // it takes a Context and allows setting request options on the pages.
4761 // The context must be non-nil and will be used for request cancellation. If
4762 // the context is nil a panic will occur. In the future the SDK may create
4763 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
4764 // for more information on using Contexts.
4765 func (c *S3) ListPartsPagesWithContext(ctx aws.Context, input *ListPartsInput, fn func(*ListPartsOutput, bool) bool, opts ...request.Option) error {
4766 p := request.Pagination{
4767 NewRequest: func() (*request.Request, error) {
4768 var inCpy *ListPartsInput
4773 req, _ := c.ListPartsRequest(inCpy)
4775 req.ApplyOptions(opts...)
4781 for p.Next() && cont {
4782 cont = fn(p.Page().(*ListPartsOutput), !p.HasNextPage())
4787 const opPutBucketAccelerateConfiguration = "PutBucketAccelerateConfiguration"
4789 // PutBucketAccelerateConfigurationRequest generates a "aws/request.Request" representing the
4790 // client's request for the PutBucketAccelerateConfiguration operation. The "output" return
4791 // value will be populated with the request's response once the request completes
4794 // Use "Send" method on the returned Request to send the API call to the service.
4795 // the "output" return value is not valid until after Send returns without error.
4797 // See PutBucketAccelerateConfiguration for more information on using the PutBucketAccelerateConfiguration
4798 // API call, and error handling.
4800 // This method is useful when you want to inject custom logic or configuration
4801 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
4804 // // Example sending a request using the PutBucketAccelerateConfigurationRequest method.
4805 // req, resp := client.PutBucketAccelerateConfigurationRequest(params)
4807 // err := req.Send()
4808 // if err == nil { // resp is now filled
4809 // fmt.Println(resp)
4812 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketAccelerateConfiguration
4813 func (c *S3) PutBucketAccelerateConfigurationRequest(input *PutBucketAccelerateConfigurationInput) (req *request.Request, output *PutBucketAccelerateConfigurationOutput) {
4814 op := &request.Operation{
4815 Name: opPutBucketAccelerateConfiguration,
4817 HTTPPath: "/{Bucket}?accelerate",
4821 input = &PutBucketAccelerateConfigurationInput{}
4824 output = &PutBucketAccelerateConfigurationOutput{}
4825 req = c.newRequest(op, input, output)
4826 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
4830 // PutBucketAccelerateConfiguration API operation for Amazon Simple Storage Service.
4832 // Sets the accelerate configuration of an existing bucket.
4834 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4835 // with awserr.Error's Code and Message methods to get detailed information about
4838 // See the AWS API reference guide for Amazon Simple Storage Service's
4839 // API operation PutBucketAccelerateConfiguration for usage and error information.
4840 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketAccelerateConfiguration
4841 func (c *S3) PutBucketAccelerateConfiguration(input *PutBucketAccelerateConfigurationInput) (*PutBucketAccelerateConfigurationOutput, error) {
4842 req, out := c.PutBucketAccelerateConfigurationRequest(input)
4843 return out, req.Send()
4846 // PutBucketAccelerateConfigurationWithContext is the same as PutBucketAccelerateConfiguration with the addition of
4847 // the ability to pass a context and additional request options.
4849 // See PutBucketAccelerateConfiguration for details on how to use this API operation.
4851 // The context must be non-nil and will be used for request cancellation. If
4852 // the context is nil a panic will occur. In the future the SDK may create
4853 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
4854 // for more information on using Contexts.
4855 func (c *S3) PutBucketAccelerateConfigurationWithContext(ctx aws.Context, input *PutBucketAccelerateConfigurationInput, opts ...request.Option) (*PutBucketAccelerateConfigurationOutput, error) {
4856 req, out := c.PutBucketAccelerateConfigurationRequest(input)
4858 req.ApplyOptions(opts...)
4859 return out, req.Send()
4862 const opPutBucketAcl = "PutBucketAcl"
4864 // PutBucketAclRequest generates a "aws/request.Request" representing the
4865 // client's request for the PutBucketAcl operation. The "output" return
4866 // value will be populated with the request's response once the request completes
4869 // Use "Send" method on the returned Request to send the API call to the service.
4870 // the "output" return value is not valid until after Send returns without error.
4872 // See PutBucketAcl for more information on using the PutBucketAcl
4873 // API call, and error handling.
4875 // This method is useful when you want to inject custom logic or configuration
4876 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
4879 // // Example sending a request using the PutBucketAclRequest method.
4880 // req, resp := client.PutBucketAclRequest(params)
4882 // err := req.Send()
4883 // if err == nil { // resp is now filled
4884 // fmt.Println(resp)
4887 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketAcl
4888 func (c *S3) PutBucketAclRequest(input *PutBucketAclInput) (req *request.Request, output *PutBucketAclOutput) {
4889 op := &request.Operation{
4890 Name: opPutBucketAcl,
4892 HTTPPath: "/{Bucket}?acl",
4896 input = &PutBucketAclInput{}
4899 output = &PutBucketAclOutput{}
4900 req = c.newRequest(op, input, output)
4901 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
4905 // PutBucketAcl API operation for Amazon Simple Storage Service.
4907 // Sets the permissions on a bucket using access control lists (ACL).
4909 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4910 // with awserr.Error's Code and Message methods to get detailed information about
4913 // See the AWS API reference guide for Amazon Simple Storage Service's
4914 // API operation PutBucketAcl for usage and error information.
4915 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketAcl
4916 func (c *S3) PutBucketAcl(input *PutBucketAclInput) (*PutBucketAclOutput, error) {
4917 req, out := c.PutBucketAclRequest(input)
4918 return out, req.Send()
4921 // PutBucketAclWithContext is the same as PutBucketAcl with the addition of
4922 // the ability to pass a context and additional request options.
4924 // See PutBucketAcl for details on how to use this API operation.
4926 // The context must be non-nil and will be used for request cancellation. If
4927 // the context is nil a panic will occur. In the future the SDK may create
4928 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
4929 // for more information on using Contexts.
4930 func (c *S3) PutBucketAclWithContext(ctx aws.Context, input *PutBucketAclInput, opts ...request.Option) (*PutBucketAclOutput, error) {
4931 req, out := c.PutBucketAclRequest(input)
4933 req.ApplyOptions(opts...)
4934 return out, req.Send()
4937 const opPutBucketAnalyticsConfiguration = "PutBucketAnalyticsConfiguration"
4939 // PutBucketAnalyticsConfigurationRequest generates a "aws/request.Request" representing the
4940 // client's request for the PutBucketAnalyticsConfiguration operation. The "output" return
4941 // value will be populated with the request's response once the request completes
4944 // Use "Send" method on the returned Request to send the API call to the service.
4945 // the "output" return value is not valid until after Send returns without error.
4947 // See PutBucketAnalyticsConfiguration for more information on using the PutBucketAnalyticsConfiguration
4948 // API call, and error handling.
4950 // This method is useful when you want to inject custom logic or configuration
4951 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
4954 // // Example sending a request using the PutBucketAnalyticsConfigurationRequest method.
4955 // req, resp := client.PutBucketAnalyticsConfigurationRequest(params)
4957 // err := req.Send()
4958 // if err == nil { // resp is now filled
4959 // fmt.Println(resp)
4962 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketAnalyticsConfiguration
4963 func (c *S3) PutBucketAnalyticsConfigurationRequest(input *PutBucketAnalyticsConfigurationInput) (req *request.Request, output *PutBucketAnalyticsConfigurationOutput) {
4964 op := &request.Operation{
4965 Name: opPutBucketAnalyticsConfiguration,
4967 HTTPPath: "/{Bucket}?analytics",
4971 input = &PutBucketAnalyticsConfigurationInput{}
4974 output = &PutBucketAnalyticsConfigurationOutput{}
4975 req = c.newRequest(op, input, output)
4976 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
4980 // PutBucketAnalyticsConfiguration API operation for Amazon Simple Storage Service.
4982 // Sets an analytics configuration for the bucket (specified by the analytics
4983 // configuration ID).
4985 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4986 // with awserr.Error's Code and Message methods to get detailed information about
4989 // See the AWS API reference guide for Amazon Simple Storage Service's
4990 // API operation PutBucketAnalyticsConfiguration for usage and error information.
4991 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketAnalyticsConfiguration
4992 func (c *S3) PutBucketAnalyticsConfiguration(input *PutBucketAnalyticsConfigurationInput) (*PutBucketAnalyticsConfigurationOutput, error) {
4993 req, out := c.PutBucketAnalyticsConfigurationRequest(input)
4994 return out, req.Send()
4997 // PutBucketAnalyticsConfigurationWithContext is the same as PutBucketAnalyticsConfiguration with the addition of
4998 // the ability to pass a context and additional request options.
5000 // See PutBucketAnalyticsConfiguration for details on how to use this API operation.
5002 // The context must be non-nil and will be used for request cancellation. If
5003 // the context is nil a panic will occur. In the future the SDK may create
5004 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
5005 // for more information on using Contexts.
5006 func (c *S3) PutBucketAnalyticsConfigurationWithContext(ctx aws.Context, input *PutBucketAnalyticsConfigurationInput, opts ...request.Option) (*PutBucketAnalyticsConfigurationOutput, error) {
5007 req, out := c.PutBucketAnalyticsConfigurationRequest(input)
5009 req.ApplyOptions(opts...)
5010 return out, req.Send()
5013 const opPutBucketCors = "PutBucketCors"
5015 // PutBucketCorsRequest generates a "aws/request.Request" representing the
5016 // client's request for the PutBucketCors operation. The "output" return
5017 // value will be populated with the request's response once the request completes
5020 // Use "Send" method on the returned Request to send the API call to the service.
5021 // the "output" return value is not valid until after Send returns without error.
5023 // See PutBucketCors for more information on using the PutBucketCors
5024 // API call, and error handling.
5026 // This method is useful when you want to inject custom logic or configuration
5027 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
5030 // // Example sending a request using the PutBucketCorsRequest method.
5031 // req, resp := client.PutBucketCorsRequest(params)
5033 // err := req.Send()
5034 // if err == nil { // resp is now filled
5035 // fmt.Println(resp)
5038 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketCors
5039 func (c *S3) PutBucketCorsRequest(input *PutBucketCorsInput) (req *request.Request, output *PutBucketCorsOutput) {
5040 op := &request.Operation{
5041 Name: opPutBucketCors,
5043 HTTPPath: "/{Bucket}?cors",
5047 input = &PutBucketCorsInput{}
5050 output = &PutBucketCorsOutput{}
5051 req = c.newRequest(op, input, output)
5052 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
5056 // PutBucketCors API operation for Amazon Simple Storage Service.
5058 // Sets the CORS configuration for a bucket.
5060 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5061 // with awserr.Error's Code and Message methods to get detailed information about
5064 // See the AWS API reference guide for Amazon Simple Storage Service's
5065 // API operation PutBucketCors for usage and error information.
5066 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketCors
5067 func (c *S3) PutBucketCors(input *PutBucketCorsInput) (*PutBucketCorsOutput, error) {
5068 req, out := c.PutBucketCorsRequest(input)
5069 return out, req.Send()
5072 // PutBucketCorsWithContext is the same as PutBucketCors with the addition of
5073 // the ability to pass a context and additional request options.
5075 // See PutBucketCors for details on how to use this API operation.
5077 // The context must be non-nil and will be used for request cancellation. If
5078 // the context is nil a panic will occur. In the future the SDK may create
5079 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
5080 // for more information on using Contexts.
5081 func (c *S3) PutBucketCorsWithContext(ctx aws.Context, input *PutBucketCorsInput, opts ...request.Option) (*PutBucketCorsOutput, error) {
5082 req, out := c.PutBucketCorsRequest(input)
5084 req.ApplyOptions(opts...)
5085 return out, req.Send()
5088 const opPutBucketEncryption = "PutBucketEncryption"
5090 // PutBucketEncryptionRequest generates a "aws/request.Request" representing the
5091 // client's request for the PutBucketEncryption operation. The "output" return
5092 // value will be populated with the request's response once the request completes
5095 // Use "Send" method on the returned Request to send the API call to the service.
5096 // the "output" return value is not valid until after Send returns without error.
5098 // See PutBucketEncryption for more information on using the PutBucketEncryption
5099 // API call, and error handling.
5101 // This method is useful when you want to inject custom logic or configuration
5102 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
5105 // // Example sending a request using the PutBucketEncryptionRequest method.
5106 // req, resp := client.PutBucketEncryptionRequest(params)
5108 // err := req.Send()
5109 // if err == nil { // resp is now filled
5110 // fmt.Println(resp)
5113 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketEncryption
5114 func (c *S3) PutBucketEncryptionRequest(input *PutBucketEncryptionInput) (req *request.Request, output *PutBucketEncryptionOutput) {
5115 op := &request.Operation{
5116 Name: opPutBucketEncryption,
5118 HTTPPath: "/{Bucket}?encryption",
5122 input = &PutBucketEncryptionInput{}
5125 output = &PutBucketEncryptionOutput{}
5126 req = c.newRequest(op, input, output)
5127 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
5131 // PutBucketEncryption API operation for Amazon Simple Storage Service.
5133 // Creates a new server-side encryption configuration (or replaces an existing
5134 // one, if present).
5136 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5137 // with awserr.Error's Code and Message methods to get detailed information about
5140 // See the AWS API reference guide for Amazon Simple Storage Service's
5141 // API operation PutBucketEncryption for usage and error information.
5142 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketEncryption
5143 func (c *S3) PutBucketEncryption(input *PutBucketEncryptionInput) (*PutBucketEncryptionOutput, error) {
5144 req, out := c.PutBucketEncryptionRequest(input)
5145 return out, req.Send()
5148 // PutBucketEncryptionWithContext is the same as PutBucketEncryption with the addition of
5149 // the ability to pass a context and additional request options.
5151 // See PutBucketEncryption for details on how to use this API operation.
5153 // The context must be non-nil and will be used for request cancellation. If
5154 // the context is nil a panic will occur. In the future the SDK may create
5155 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
5156 // for more information on using Contexts.
5157 func (c *S3) PutBucketEncryptionWithContext(ctx aws.Context, input *PutBucketEncryptionInput, opts ...request.Option) (*PutBucketEncryptionOutput, error) {
5158 req, out := c.PutBucketEncryptionRequest(input)
5160 req.ApplyOptions(opts...)
5161 return out, req.Send()
5164 const opPutBucketInventoryConfiguration = "PutBucketInventoryConfiguration"
5166 // PutBucketInventoryConfigurationRequest generates a "aws/request.Request" representing the
5167 // client's request for the PutBucketInventoryConfiguration operation. The "output" return
5168 // value will be populated with the request's response once the request completes
5171 // Use "Send" method on the returned Request to send the API call to the service.
5172 // the "output" return value is not valid until after Send returns without error.
5174 // See PutBucketInventoryConfiguration for more information on using the PutBucketInventoryConfiguration
5175 // API call, and error handling.
5177 // This method is useful when you want to inject custom logic or configuration
5178 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
5181 // // Example sending a request using the PutBucketInventoryConfigurationRequest method.
5182 // req, resp := client.PutBucketInventoryConfigurationRequest(params)
5184 // err := req.Send()
5185 // if err == nil { // resp is now filled
5186 // fmt.Println(resp)
5189 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketInventoryConfiguration
5190 func (c *S3) PutBucketInventoryConfigurationRequest(input *PutBucketInventoryConfigurationInput) (req *request.Request, output *PutBucketInventoryConfigurationOutput) {
5191 op := &request.Operation{
5192 Name: opPutBucketInventoryConfiguration,
5194 HTTPPath: "/{Bucket}?inventory",
5198 input = &PutBucketInventoryConfigurationInput{}
5201 output = &PutBucketInventoryConfigurationOutput{}
5202 req = c.newRequest(op, input, output)
5203 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
5207 // PutBucketInventoryConfiguration API operation for Amazon Simple Storage Service.
5209 // Adds an inventory configuration (identified by the inventory ID) from the
5212 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5213 // with awserr.Error's Code and Message methods to get detailed information about
5216 // See the AWS API reference guide for Amazon Simple Storage Service's
5217 // API operation PutBucketInventoryConfiguration for usage and error information.
5218 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketInventoryConfiguration
5219 func (c *S3) PutBucketInventoryConfiguration(input *PutBucketInventoryConfigurationInput) (*PutBucketInventoryConfigurationOutput, error) {
5220 req, out := c.PutBucketInventoryConfigurationRequest(input)
5221 return out, req.Send()
5224 // PutBucketInventoryConfigurationWithContext is the same as PutBucketInventoryConfiguration with the addition of
5225 // the ability to pass a context and additional request options.
5227 // See PutBucketInventoryConfiguration for details on how to use this API operation.
5229 // The context must be non-nil and will be used for request cancellation. If
5230 // the context is nil a panic will occur. In the future the SDK may create
5231 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
5232 // for more information on using Contexts.
5233 func (c *S3) PutBucketInventoryConfigurationWithContext(ctx aws.Context, input *PutBucketInventoryConfigurationInput, opts ...request.Option) (*PutBucketInventoryConfigurationOutput, error) {
5234 req, out := c.PutBucketInventoryConfigurationRequest(input)
5236 req.ApplyOptions(opts...)
5237 return out, req.Send()
5240 const opPutBucketLifecycle = "PutBucketLifecycle"
5242 // PutBucketLifecycleRequest generates a "aws/request.Request" representing the
5243 // client's request for the PutBucketLifecycle operation. The "output" return
5244 // value will be populated with the request's response once the request completes
5247 // Use "Send" method on the returned Request to send the API call to the service.
5248 // the "output" return value is not valid until after Send returns without error.
5250 // See PutBucketLifecycle for more information on using the PutBucketLifecycle
5251 // API call, and error handling.
5253 // This method is useful when you want to inject custom logic or configuration
5254 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
5257 // // Example sending a request using the PutBucketLifecycleRequest method.
5258 // req, resp := client.PutBucketLifecycleRequest(params)
5260 // err := req.Send()
5261 // if err == nil { // resp is now filled
5262 // fmt.Println(resp)
5265 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketLifecycle
5267 // Deprecated: PutBucketLifecycle has been deprecated
5268 func (c *S3) PutBucketLifecycleRequest(input *PutBucketLifecycleInput) (req *request.Request, output *PutBucketLifecycleOutput) {
5269 if c.Client.Config.Logger != nil {
5270 c.Client.Config.Logger.Log("This operation, PutBucketLifecycle, has been deprecated")
5272 op := &request.Operation{
5273 Name: opPutBucketLifecycle,
5275 HTTPPath: "/{Bucket}?lifecycle",
5279 input = &PutBucketLifecycleInput{}
5282 output = &PutBucketLifecycleOutput{}
5283 req = c.newRequest(op, input, output)
5284 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
5288 // PutBucketLifecycle API operation for Amazon Simple Storage Service.
5290 // No longer used, see the PutBucketLifecycleConfiguration operation.
5292 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5293 // with awserr.Error's Code and Message methods to get detailed information about
5296 // See the AWS API reference guide for Amazon Simple Storage Service's
5297 // API operation PutBucketLifecycle for usage and error information.
5298 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketLifecycle
5300 // Deprecated: PutBucketLifecycle has been deprecated
5301 func (c *S3) PutBucketLifecycle(input *PutBucketLifecycleInput) (*PutBucketLifecycleOutput, error) {
5302 req, out := c.PutBucketLifecycleRequest(input)
5303 return out, req.Send()
5306 // PutBucketLifecycleWithContext is the same as PutBucketLifecycle with the addition of
5307 // the ability to pass a context and additional request options.
5309 // See PutBucketLifecycle for details on how to use this API operation.
5311 // The context must be non-nil and will be used for request cancellation. If
5312 // the context is nil a panic will occur. In the future the SDK may create
5313 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
5314 // for more information on using Contexts.
5316 // Deprecated: PutBucketLifecycleWithContext has been deprecated
5317 func (c *S3) PutBucketLifecycleWithContext(ctx aws.Context, input *PutBucketLifecycleInput, opts ...request.Option) (*PutBucketLifecycleOutput, error) {
5318 req, out := c.PutBucketLifecycleRequest(input)
5320 req.ApplyOptions(opts...)
5321 return out, req.Send()
5324 const opPutBucketLifecycleConfiguration = "PutBucketLifecycleConfiguration"
5326 // PutBucketLifecycleConfigurationRequest generates a "aws/request.Request" representing the
5327 // client's request for the PutBucketLifecycleConfiguration operation. The "output" return
5328 // value will be populated with the request's response once the request completes
5331 // Use "Send" method on the returned Request to send the API call to the service.
5332 // the "output" return value is not valid until after Send returns without error.
5334 // See PutBucketLifecycleConfiguration for more information on using the PutBucketLifecycleConfiguration
5335 // API call, and error handling.
5337 // This method is useful when you want to inject custom logic or configuration
5338 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
5341 // // Example sending a request using the PutBucketLifecycleConfigurationRequest method.
5342 // req, resp := client.PutBucketLifecycleConfigurationRequest(params)
5344 // err := req.Send()
5345 // if err == nil { // resp is now filled
5346 // fmt.Println(resp)
5349 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketLifecycleConfiguration
5350 func (c *S3) PutBucketLifecycleConfigurationRequest(input *PutBucketLifecycleConfigurationInput) (req *request.Request, output *PutBucketLifecycleConfigurationOutput) {
5351 op := &request.Operation{
5352 Name: opPutBucketLifecycleConfiguration,
5354 HTTPPath: "/{Bucket}?lifecycle",
5358 input = &PutBucketLifecycleConfigurationInput{}
5361 output = &PutBucketLifecycleConfigurationOutput{}
5362 req = c.newRequest(op, input, output)
5363 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
5367 // PutBucketLifecycleConfiguration API operation for Amazon Simple Storage Service.
5369 // Sets lifecycle configuration for your bucket. If a lifecycle configuration
5370 // exists, it replaces it.
5372 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5373 // with awserr.Error's Code and Message methods to get detailed information about
5376 // See the AWS API reference guide for Amazon Simple Storage Service's
5377 // API operation PutBucketLifecycleConfiguration for usage and error information.
5378 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketLifecycleConfiguration
5379 func (c *S3) PutBucketLifecycleConfiguration(input *PutBucketLifecycleConfigurationInput) (*PutBucketLifecycleConfigurationOutput, error) {
5380 req, out := c.PutBucketLifecycleConfigurationRequest(input)
5381 return out, req.Send()
5384 // PutBucketLifecycleConfigurationWithContext is the same as PutBucketLifecycleConfiguration with the addition of
5385 // the ability to pass a context and additional request options.
5387 // See PutBucketLifecycleConfiguration for details on how to use this API operation.
5389 // The context must be non-nil and will be used for request cancellation. If
5390 // the context is nil a panic will occur. In the future the SDK may create
5391 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
5392 // for more information on using Contexts.
5393 func (c *S3) PutBucketLifecycleConfigurationWithContext(ctx aws.Context, input *PutBucketLifecycleConfigurationInput, opts ...request.Option) (*PutBucketLifecycleConfigurationOutput, error) {
5394 req, out := c.PutBucketLifecycleConfigurationRequest(input)
5396 req.ApplyOptions(opts...)
5397 return out, req.Send()
5400 const opPutBucketLogging = "PutBucketLogging"
5402 // PutBucketLoggingRequest generates a "aws/request.Request" representing the
5403 // client's request for the PutBucketLogging operation. The "output" return
5404 // value will be populated with the request's response once the request completes
5407 // Use "Send" method on the returned Request to send the API call to the service.
5408 // the "output" return value is not valid until after Send returns without error.
5410 // See PutBucketLogging for more information on using the PutBucketLogging
5411 // API call, and error handling.
5413 // This method is useful when you want to inject custom logic or configuration
5414 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
5417 // // Example sending a request using the PutBucketLoggingRequest method.
5418 // req, resp := client.PutBucketLoggingRequest(params)
5420 // err := req.Send()
5421 // if err == nil { // resp is now filled
5422 // fmt.Println(resp)
5425 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketLogging
5426 func (c *S3) PutBucketLoggingRequest(input *PutBucketLoggingInput) (req *request.Request, output *PutBucketLoggingOutput) {
5427 op := &request.Operation{
5428 Name: opPutBucketLogging,
5430 HTTPPath: "/{Bucket}?logging",
5434 input = &PutBucketLoggingInput{}
5437 output = &PutBucketLoggingOutput{}
5438 req = c.newRequest(op, input, output)
5439 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
5443 // PutBucketLogging API operation for Amazon Simple Storage Service.
5445 // Set the logging parameters for a bucket and to specify permissions for who
5446 // can view and modify the logging parameters. To set the logging status of
5447 // a bucket, you must be the bucket owner.
5449 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5450 // with awserr.Error's Code and Message methods to get detailed information about
5453 // See the AWS API reference guide for Amazon Simple Storage Service's
5454 // API operation PutBucketLogging for usage and error information.
5455 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketLogging
5456 func (c *S3) PutBucketLogging(input *PutBucketLoggingInput) (*PutBucketLoggingOutput, error) {
5457 req, out := c.PutBucketLoggingRequest(input)
5458 return out, req.Send()
5461 // PutBucketLoggingWithContext is the same as PutBucketLogging with the addition of
5462 // the ability to pass a context and additional request options.
5464 // See PutBucketLogging for details on how to use this API operation.
5466 // The context must be non-nil and will be used for request cancellation. If
5467 // the context is nil a panic will occur. In the future the SDK may create
5468 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
5469 // for more information on using Contexts.
5470 func (c *S3) PutBucketLoggingWithContext(ctx aws.Context, input *PutBucketLoggingInput, opts ...request.Option) (*PutBucketLoggingOutput, error) {
5471 req, out := c.PutBucketLoggingRequest(input)
5473 req.ApplyOptions(opts...)
5474 return out, req.Send()
5477 const opPutBucketMetricsConfiguration = "PutBucketMetricsConfiguration"
5479 // PutBucketMetricsConfigurationRequest generates a "aws/request.Request" representing the
5480 // client's request for the PutBucketMetricsConfiguration operation. The "output" return
5481 // value will be populated with the request's response once the request completes
5484 // Use "Send" method on the returned Request to send the API call to the service.
5485 // the "output" return value is not valid until after Send returns without error.
5487 // See PutBucketMetricsConfiguration for more information on using the PutBucketMetricsConfiguration
5488 // API call, and error handling.
5490 // This method is useful when you want to inject custom logic or configuration
5491 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
5494 // // Example sending a request using the PutBucketMetricsConfigurationRequest method.
5495 // req, resp := client.PutBucketMetricsConfigurationRequest(params)
5497 // err := req.Send()
5498 // if err == nil { // resp is now filled
5499 // fmt.Println(resp)
5502 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketMetricsConfiguration
5503 func (c *S3) PutBucketMetricsConfigurationRequest(input *PutBucketMetricsConfigurationInput) (req *request.Request, output *PutBucketMetricsConfigurationOutput) {
5504 op := &request.Operation{
5505 Name: opPutBucketMetricsConfiguration,
5507 HTTPPath: "/{Bucket}?metrics",
5511 input = &PutBucketMetricsConfigurationInput{}
5514 output = &PutBucketMetricsConfigurationOutput{}
5515 req = c.newRequest(op, input, output)
5516 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
5520 // PutBucketMetricsConfiguration API operation for Amazon Simple Storage Service.
5522 // Sets a metrics configuration (specified by the metrics configuration ID)
5525 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5526 // with awserr.Error's Code and Message methods to get detailed information about
5529 // See the AWS API reference guide for Amazon Simple Storage Service's
5530 // API operation PutBucketMetricsConfiguration for usage and error information.
5531 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketMetricsConfiguration
5532 func (c *S3) PutBucketMetricsConfiguration(input *PutBucketMetricsConfigurationInput) (*PutBucketMetricsConfigurationOutput, error) {
5533 req, out := c.PutBucketMetricsConfigurationRequest(input)
5534 return out, req.Send()
5537 // PutBucketMetricsConfigurationWithContext is the same as PutBucketMetricsConfiguration with the addition of
5538 // the ability to pass a context and additional request options.
5540 // See PutBucketMetricsConfiguration for details on how to use this API operation.
5542 // The context must be non-nil and will be used for request cancellation. If
5543 // the context is nil a panic will occur. In the future the SDK may create
5544 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
5545 // for more information on using Contexts.
5546 func (c *S3) PutBucketMetricsConfigurationWithContext(ctx aws.Context, input *PutBucketMetricsConfigurationInput, opts ...request.Option) (*PutBucketMetricsConfigurationOutput, error) {
5547 req, out := c.PutBucketMetricsConfigurationRequest(input)
5549 req.ApplyOptions(opts...)
5550 return out, req.Send()
5553 const opPutBucketNotification = "PutBucketNotification"
5555 // PutBucketNotificationRequest generates a "aws/request.Request" representing the
5556 // client's request for the PutBucketNotification operation. The "output" return
5557 // value will be populated with the request's response once the request completes
5560 // Use "Send" method on the returned Request to send the API call to the service.
5561 // the "output" return value is not valid until after Send returns without error.
5563 // See PutBucketNotification for more information on using the PutBucketNotification
5564 // API call, and error handling.
5566 // This method is useful when you want to inject custom logic or configuration
5567 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
5570 // // Example sending a request using the PutBucketNotificationRequest method.
5571 // req, resp := client.PutBucketNotificationRequest(params)
5573 // err := req.Send()
5574 // if err == nil { // resp is now filled
5575 // fmt.Println(resp)
5578 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketNotification
5580 // Deprecated: PutBucketNotification has been deprecated
5581 func (c *S3) PutBucketNotificationRequest(input *PutBucketNotificationInput) (req *request.Request, output *PutBucketNotificationOutput) {
5582 if c.Client.Config.Logger != nil {
5583 c.Client.Config.Logger.Log("This operation, PutBucketNotification, has been deprecated")
5585 op := &request.Operation{
5586 Name: opPutBucketNotification,
5588 HTTPPath: "/{Bucket}?notification",
5592 input = &PutBucketNotificationInput{}
5595 output = &PutBucketNotificationOutput{}
5596 req = c.newRequest(op, input, output)
5597 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
5601 // PutBucketNotification API operation for Amazon Simple Storage Service.
5603 // No longer used, see the PutBucketNotificationConfiguration operation.
5605 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5606 // with awserr.Error's Code and Message methods to get detailed information about
5609 // See the AWS API reference guide for Amazon Simple Storage Service's
5610 // API operation PutBucketNotification for usage and error information.
5611 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketNotification
5613 // Deprecated: PutBucketNotification has been deprecated
5614 func (c *S3) PutBucketNotification(input *PutBucketNotificationInput) (*PutBucketNotificationOutput, error) {
5615 req, out := c.PutBucketNotificationRequest(input)
5616 return out, req.Send()
5619 // PutBucketNotificationWithContext is the same as PutBucketNotification with the addition of
5620 // the ability to pass a context and additional request options.
5622 // See PutBucketNotification for details on how to use this API operation.
5624 // The context must be non-nil and will be used for request cancellation. If
5625 // the context is nil a panic will occur. In the future the SDK may create
5626 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
5627 // for more information on using Contexts.
5629 // Deprecated: PutBucketNotificationWithContext has been deprecated
5630 func (c *S3) PutBucketNotificationWithContext(ctx aws.Context, input *PutBucketNotificationInput, opts ...request.Option) (*PutBucketNotificationOutput, error) {
5631 req, out := c.PutBucketNotificationRequest(input)
5633 req.ApplyOptions(opts...)
5634 return out, req.Send()
5637 const opPutBucketNotificationConfiguration = "PutBucketNotificationConfiguration"
5639 // PutBucketNotificationConfigurationRequest generates a "aws/request.Request" representing the
5640 // client's request for the PutBucketNotificationConfiguration operation. The "output" return
5641 // value will be populated with the request's response once the request completes
5644 // Use "Send" method on the returned Request to send the API call to the service.
5645 // the "output" return value is not valid until after Send returns without error.
5647 // See PutBucketNotificationConfiguration for more information on using the PutBucketNotificationConfiguration
5648 // API call, and error handling.
5650 // This method is useful when you want to inject custom logic or configuration
5651 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
5654 // // Example sending a request using the PutBucketNotificationConfigurationRequest method.
5655 // req, resp := client.PutBucketNotificationConfigurationRequest(params)
5657 // err := req.Send()
5658 // if err == nil { // resp is now filled
5659 // fmt.Println(resp)
5662 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketNotificationConfiguration
5663 func (c *S3) PutBucketNotificationConfigurationRequest(input *PutBucketNotificationConfigurationInput) (req *request.Request, output *PutBucketNotificationConfigurationOutput) {
5664 op := &request.Operation{
5665 Name: opPutBucketNotificationConfiguration,
5667 HTTPPath: "/{Bucket}?notification",
5671 input = &PutBucketNotificationConfigurationInput{}
5674 output = &PutBucketNotificationConfigurationOutput{}
5675 req = c.newRequest(op, input, output)
5676 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
5680 // PutBucketNotificationConfiguration API operation for Amazon Simple Storage Service.
5682 // Enables notifications of specified events for a bucket.
5684 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5685 // with awserr.Error's Code and Message methods to get detailed information about
5688 // See the AWS API reference guide for Amazon Simple Storage Service's
5689 // API operation PutBucketNotificationConfiguration for usage and error information.
5690 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketNotificationConfiguration
5691 func (c *S3) PutBucketNotificationConfiguration(input *PutBucketNotificationConfigurationInput) (*PutBucketNotificationConfigurationOutput, error) {
5692 req, out := c.PutBucketNotificationConfigurationRequest(input)
5693 return out, req.Send()
5696 // PutBucketNotificationConfigurationWithContext is the same as PutBucketNotificationConfiguration with the addition of
5697 // the ability to pass a context and additional request options.
5699 // See PutBucketNotificationConfiguration for details on how to use this API operation.
5701 // The context must be non-nil and will be used for request cancellation. If
5702 // the context is nil a panic will occur. In the future the SDK may create
5703 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
5704 // for more information on using Contexts.
5705 func (c *S3) PutBucketNotificationConfigurationWithContext(ctx aws.Context, input *PutBucketNotificationConfigurationInput, opts ...request.Option) (*PutBucketNotificationConfigurationOutput, error) {
5706 req, out := c.PutBucketNotificationConfigurationRequest(input)
5708 req.ApplyOptions(opts...)
5709 return out, req.Send()
5712 const opPutBucketPolicy = "PutBucketPolicy"
5714 // PutBucketPolicyRequest generates a "aws/request.Request" representing the
5715 // client's request for the PutBucketPolicy operation. The "output" return
5716 // value will be populated with the request's response once the request completes
5719 // Use "Send" method on the returned Request to send the API call to the service.
5720 // the "output" return value is not valid until after Send returns without error.
5722 // See PutBucketPolicy for more information on using the PutBucketPolicy
5723 // API call, and error handling.
5725 // This method is useful when you want to inject custom logic or configuration
5726 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
5729 // // Example sending a request using the PutBucketPolicyRequest method.
5730 // req, resp := client.PutBucketPolicyRequest(params)
5732 // err := req.Send()
5733 // if err == nil { // resp is now filled
5734 // fmt.Println(resp)
5737 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketPolicy
5738 func (c *S3) PutBucketPolicyRequest(input *PutBucketPolicyInput) (req *request.Request, output *PutBucketPolicyOutput) {
5739 op := &request.Operation{
5740 Name: opPutBucketPolicy,
5742 HTTPPath: "/{Bucket}?policy",
5746 input = &PutBucketPolicyInput{}
5749 output = &PutBucketPolicyOutput{}
5750 req = c.newRequest(op, input, output)
5751 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
5755 // PutBucketPolicy API operation for Amazon Simple Storage Service.
5757 // Replaces a policy on a bucket. If the bucket already has a policy, the one
5758 // in this request completely replaces it.
5760 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5761 // with awserr.Error's Code and Message methods to get detailed information about
5764 // See the AWS API reference guide for Amazon Simple Storage Service's
5765 // API operation PutBucketPolicy for usage and error information.
5766 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketPolicy
5767 func (c *S3) PutBucketPolicy(input *PutBucketPolicyInput) (*PutBucketPolicyOutput, error) {
5768 req, out := c.PutBucketPolicyRequest(input)
5769 return out, req.Send()
5772 // PutBucketPolicyWithContext is the same as PutBucketPolicy with the addition of
5773 // the ability to pass a context and additional request options.
5775 // See PutBucketPolicy for details on how to use this API operation.
5777 // The context must be non-nil and will be used for request cancellation. If
5778 // the context is nil a panic will occur. In the future the SDK may create
5779 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
5780 // for more information on using Contexts.
5781 func (c *S3) PutBucketPolicyWithContext(ctx aws.Context, input *PutBucketPolicyInput, opts ...request.Option) (*PutBucketPolicyOutput, error) {
5782 req, out := c.PutBucketPolicyRequest(input)
5784 req.ApplyOptions(opts...)
5785 return out, req.Send()
5788 const opPutBucketReplication = "PutBucketReplication"
5790 // PutBucketReplicationRequest generates a "aws/request.Request" representing the
5791 // client's request for the PutBucketReplication operation. The "output" return
5792 // value will be populated with the request's response once the request completes
5795 // Use "Send" method on the returned Request to send the API call to the service.
5796 // the "output" return value is not valid until after Send returns without error.
5798 // See PutBucketReplication for more information on using the PutBucketReplication
5799 // API call, and error handling.
5801 // This method is useful when you want to inject custom logic or configuration
5802 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
5805 // // Example sending a request using the PutBucketReplicationRequest method.
5806 // req, resp := client.PutBucketReplicationRequest(params)
5808 // err := req.Send()
5809 // if err == nil { // resp is now filled
5810 // fmt.Println(resp)
5813 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketReplication
5814 func (c *S3) PutBucketReplicationRequest(input *PutBucketReplicationInput) (req *request.Request, output *PutBucketReplicationOutput) {
5815 op := &request.Operation{
5816 Name: opPutBucketReplication,
5818 HTTPPath: "/{Bucket}?replication",
5822 input = &PutBucketReplicationInput{}
5825 output = &PutBucketReplicationOutput{}
5826 req = c.newRequest(op, input, output)
5827 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
5831 // PutBucketReplication API operation for Amazon Simple Storage Service.
5833 // Creates a replication configuration or replaces an existing one. For more
5834 // information, see Cross-Region Replication (CRR) ( https://docs.aws.amazon.com/AmazonS3/latest/dev/crr.html)
5835 // in the Amazon S3 Developer Guide.
5837 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5838 // with awserr.Error's Code and Message methods to get detailed information about
5841 // See the AWS API reference guide for Amazon Simple Storage Service's
5842 // API operation PutBucketReplication for usage and error information.
5843 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketReplication
5844 func (c *S3) PutBucketReplication(input *PutBucketReplicationInput) (*PutBucketReplicationOutput, error) {
5845 req, out := c.PutBucketReplicationRequest(input)
5846 return out, req.Send()
5849 // PutBucketReplicationWithContext is the same as PutBucketReplication with the addition of
5850 // the ability to pass a context and additional request options.
5852 // See PutBucketReplication for details on how to use this API operation.
5854 // The context must be non-nil and will be used for request cancellation. If
5855 // the context is nil a panic will occur. In the future the SDK may create
5856 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
5857 // for more information on using Contexts.
5858 func (c *S3) PutBucketReplicationWithContext(ctx aws.Context, input *PutBucketReplicationInput, opts ...request.Option) (*PutBucketReplicationOutput, error) {
5859 req, out := c.PutBucketReplicationRequest(input)
5861 req.ApplyOptions(opts...)
5862 return out, req.Send()
5865 const opPutBucketRequestPayment = "PutBucketRequestPayment"
5867 // PutBucketRequestPaymentRequest generates a "aws/request.Request" representing the
5868 // client's request for the PutBucketRequestPayment operation. The "output" return
5869 // value will be populated with the request's response once the request completes
5872 // Use "Send" method on the returned Request to send the API call to the service.
5873 // the "output" return value is not valid until after Send returns without error.
5875 // See PutBucketRequestPayment for more information on using the PutBucketRequestPayment
5876 // API call, and error handling.
5878 // This method is useful when you want to inject custom logic or configuration
5879 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
5882 // // Example sending a request using the PutBucketRequestPaymentRequest method.
5883 // req, resp := client.PutBucketRequestPaymentRequest(params)
5885 // err := req.Send()
5886 // if err == nil { // resp is now filled
5887 // fmt.Println(resp)
5890 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketRequestPayment
5891 func (c *S3) PutBucketRequestPaymentRequest(input *PutBucketRequestPaymentInput) (req *request.Request, output *PutBucketRequestPaymentOutput) {
5892 op := &request.Operation{
5893 Name: opPutBucketRequestPayment,
5895 HTTPPath: "/{Bucket}?requestPayment",
5899 input = &PutBucketRequestPaymentInput{}
5902 output = &PutBucketRequestPaymentOutput{}
5903 req = c.newRequest(op, input, output)
5904 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
5908 // PutBucketRequestPayment API operation for Amazon Simple Storage Service.
5910 // Sets the request payment configuration for a bucket. By default, the bucket
5911 // owner pays for downloads from the bucket. This configuration parameter enables
5912 // the bucket owner (only) to specify that the person requesting the download
5913 // will be charged for the download. Documentation on requester pays buckets
5914 // can be found at http://docs.aws.amazon.com/AmazonS3/latest/dev/RequesterPaysBuckets.html
5916 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5917 // with awserr.Error's Code and Message methods to get detailed information about
5920 // See the AWS API reference guide for Amazon Simple Storage Service's
5921 // API operation PutBucketRequestPayment for usage and error information.
5922 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketRequestPayment
5923 func (c *S3) PutBucketRequestPayment(input *PutBucketRequestPaymentInput) (*PutBucketRequestPaymentOutput, error) {
5924 req, out := c.PutBucketRequestPaymentRequest(input)
5925 return out, req.Send()
5928 // PutBucketRequestPaymentWithContext is the same as PutBucketRequestPayment with the addition of
5929 // the ability to pass a context and additional request options.
5931 // See PutBucketRequestPayment for details on how to use this API operation.
5933 // The context must be non-nil and will be used for request cancellation. If
5934 // the context is nil a panic will occur. In the future the SDK may create
5935 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
5936 // for more information on using Contexts.
5937 func (c *S3) PutBucketRequestPaymentWithContext(ctx aws.Context, input *PutBucketRequestPaymentInput, opts ...request.Option) (*PutBucketRequestPaymentOutput, error) {
5938 req, out := c.PutBucketRequestPaymentRequest(input)
5940 req.ApplyOptions(opts...)
5941 return out, req.Send()
5944 const opPutBucketTagging = "PutBucketTagging"
5946 // PutBucketTaggingRequest generates a "aws/request.Request" representing the
5947 // client's request for the PutBucketTagging operation. The "output" return
5948 // value will be populated with the request's response once the request completes
5951 // Use "Send" method on the returned Request to send the API call to the service.
5952 // the "output" return value is not valid until after Send returns without error.
5954 // See PutBucketTagging for more information on using the PutBucketTagging
5955 // API call, and error handling.
5957 // This method is useful when you want to inject custom logic or configuration
5958 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
5961 // // Example sending a request using the PutBucketTaggingRequest method.
5962 // req, resp := client.PutBucketTaggingRequest(params)
5964 // err := req.Send()
5965 // if err == nil { // resp is now filled
5966 // fmt.Println(resp)
5969 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketTagging
5970 func (c *S3) PutBucketTaggingRequest(input *PutBucketTaggingInput) (req *request.Request, output *PutBucketTaggingOutput) {
5971 op := &request.Operation{
5972 Name: opPutBucketTagging,
5974 HTTPPath: "/{Bucket}?tagging",
5978 input = &PutBucketTaggingInput{}
5981 output = &PutBucketTaggingOutput{}
5982 req = c.newRequest(op, input, output)
5983 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
5987 // PutBucketTagging API operation for Amazon Simple Storage Service.
5989 // Sets the tags for a bucket.
5991 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5992 // with awserr.Error's Code and Message methods to get detailed information about
5995 // See the AWS API reference guide for Amazon Simple Storage Service's
5996 // API operation PutBucketTagging for usage and error information.
5997 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketTagging
5998 func (c *S3) PutBucketTagging(input *PutBucketTaggingInput) (*PutBucketTaggingOutput, error) {
5999 req, out := c.PutBucketTaggingRequest(input)
6000 return out, req.Send()
6003 // PutBucketTaggingWithContext is the same as PutBucketTagging with the addition of
6004 // the ability to pass a context and additional request options.
6006 // See PutBucketTagging for details on how to use this API operation.
6008 // The context must be non-nil and will be used for request cancellation. If
6009 // the context is nil a panic will occur. In the future the SDK may create
6010 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
6011 // for more information on using Contexts.
6012 func (c *S3) PutBucketTaggingWithContext(ctx aws.Context, input *PutBucketTaggingInput, opts ...request.Option) (*PutBucketTaggingOutput, error) {
6013 req, out := c.PutBucketTaggingRequest(input)
6015 req.ApplyOptions(opts...)
6016 return out, req.Send()
6019 const opPutBucketVersioning = "PutBucketVersioning"
6021 // PutBucketVersioningRequest generates a "aws/request.Request" representing the
6022 // client's request for the PutBucketVersioning operation. The "output" return
6023 // value will be populated with the request's response once the request completes
6026 // Use "Send" method on the returned Request to send the API call to the service.
6027 // the "output" return value is not valid until after Send returns without error.
6029 // See PutBucketVersioning for more information on using the PutBucketVersioning
6030 // API call, and error handling.
6032 // This method is useful when you want to inject custom logic or configuration
6033 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
6036 // // Example sending a request using the PutBucketVersioningRequest method.
6037 // req, resp := client.PutBucketVersioningRequest(params)
6039 // err := req.Send()
6040 // if err == nil { // resp is now filled
6041 // fmt.Println(resp)
6044 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketVersioning
6045 func (c *S3) PutBucketVersioningRequest(input *PutBucketVersioningInput) (req *request.Request, output *PutBucketVersioningOutput) {
6046 op := &request.Operation{
6047 Name: opPutBucketVersioning,
6049 HTTPPath: "/{Bucket}?versioning",
6053 input = &PutBucketVersioningInput{}
6056 output = &PutBucketVersioningOutput{}
6057 req = c.newRequest(op, input, output)
6058 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
6062 // PutBucketVersioning API operation for Amazon Simple Storage Service.
6064 // Sets the versioning state of an existing bucket. To set the versioning state,
6065 // you must be the bucket owner.
6067 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6068 // with awserr.Error's Code and Message methods to get detailed information about
6071 // See the AWS API reference guide for Amazon Simple Storage Service's
6072 // API operation PutBucketVersioning for usage and error information.
6073 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketVersioning
6074 func (c *S3) PutBucketVersioning(input *PutBucketVersioningInput) (*PutBucketVersioningOutput, error) {
6075 req, out := c.PutBucketVersioningRequest(input)
6076 return out, req.Send()
6079 // PutBucketVersioningWithContext is the same as PutBucketVersioning with the addition of
6080 // the ability to pass a context and additional request options.
6082 // See PutBucketVersioning for details on how to use this API operation.
6084 // The context must be non-nil and will be used for request cancellation. If
6085 // the context is nil a panic will occur. In the future the SDK may create
6086 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
6087 // for more information on using Contexts.
6088 func (c *S3) PutBucketVersioningWithContext(ctx aws.Context, input *PutBucketVersioningInput, opts ...request.Option) (*PutBucketVersioningOutput, error) {
6089 req, out := c.PutBucketVersioningRequest(input)
6091 req.ApplyOptions(opts...)
6092 return out, req.Send()
6095 const opPutBucketWebsite = "PutBucketWebsite"
6097 // PutBucketWebsiteRequest generates a "aws/request.Request" representing the
6098 // client's request for the PutBucketWebsite operation. The "output" return
6099 // value will be populated with the request's response once the request completes
6102 // Use "Send" method on the returned Request to send the API call to the service.
6103 // the "output" return value is not valid until after Send returns without error.
6105 // See PutBucketWebsite for more information on using the PutBucketWebsite
6106 // API call, and error handling.
6108 // This method is useful when you want to inject custom logic or configuration
6109 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
6112 // // Example sending a request using the PutBucketWebsiteRequest method.
6113 // req, resp := client.PutBucketWebsiteRequest(params)
6115 // err := req.Send()
6116 // if err == nil { // resp is now filled
6117 // fmt.Println(resp)
6120 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketWebsite
6121 func (c *S3) PutBucketWebsiteRequest(input *PutBucketWebsiteInput) (req *request.Request, output *PutBucketWebsiteOutput) {
6122 op := &request.Operation{
6123 Name: opPutBucketWebsite,
6125 HTTPPath: "/{Bucket}?website",
6129 input = &PutBucketWebsiteInput{}
6132 output = &PutBucketWebsiteOutput{}
6133 req = c.newRequest(op, input, output)
6134 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
6138 // PutBucketWebsite API operation for Amazon Simple Storage Service.
6140 // Set the website configuration for a bucket.
6142 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6143 // with awserr.Error's Code and Message methods to get detailed information about
6146 // See the AWS API reference guide for Amazon Simple Storage Service's
6147 // API operation PutBucketWebsite for usage and error information.
6148 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketWebsite
6149 func (c *S3) PutBucketWebsite(input *PutBucketWebsiteInput) (*PutBucketWebsiteOutput, error) {
6150 req, out := c.PutBucketWebsiteRequest(input)
6151 return out, req.Send()
6154 // PutBucketWebsiteWithContext is the same as PutBucketWebsite with the addition of
6155 // the ability to pass a context and additional request options.
6157 // See PutBucketWebsite for details on how to use this API operation.
6159 // The context must be non-nil and will be used for request cancellation. If
6160 // the context is nil a panic will occur. In the future the SDK may create
6161 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
6162 // for more information on using Contexts.
6163 func (c *S3) PutBucketWebsiteWithContext(ctx aws.Context, input *PutBucketWebsiteInput, opts ...request.Option) (*PutBucketWebsiteOutput, error) {
6164 req, out := c.PutBucketWebsiteRequest(input)
6166 req.ApplyOptions(opts...)
6167 return out, req.Send()
6170 const opPutObject = "PutObject"
6172 // PutObjectRequest generates a "aws/request.Request" representing the
6173 // client's request for the PutObject operation. The "output" return
6174 // value will be populated with the request's response once the request completes
6177 // Use "Send" method on the returned Request to send the API call to the service.
6178 // the "output" return value is not valid until after Send returns without error.
6180 // See PutObject for more information on using the PutObject
6181 // API call, and error handling.
6183 // This method is useful when you want to inject custom logic or configuration
6184 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
6187 // // Example sending a request using the PutObjectRequest method.
6188 // req, resp := client.PutObjectRequest(params)
6190 // err := req.Send()
6191 // if err == nil { // resp is now filled
6192 // fmt.Println(resp)
6195 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutObject
6196 func (c *S3) PutObjectRequest(input *PutObjectInput) (req *request.Request, output *PutObjectOutput) {
6197 op := &request.Operation{
6200 HTTPPath: "/{Bucket}/{Key+}",
6204 input = &PutObjectInput{}
6207 output = &PutObjectOutput{}
6208 req = c.newRequest(op, input, output)
6212 // PutObject API operation for Amazon Simple Storage Service.
6214 // Adds an object to a bucket.
6216 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6217 // with awserr.Error's Code and Message methods to get detailed information about
6220 // See the AWS API reference guide for Amazon Simple Storage Service's
6221 // API operation PutObject for usage and error information.
6222 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutObject
6223 func (c *S3) PutObject(input *PutObjectInput) (*PutObjectOutput, error) {
6224 req, out := c.PutObjectRequest(input)
6225 return out, req.Send()
6228 // PutObjectWithContext is the same as PutObject with the addition of
6229 // the ability to pass a context and additional request options.
6231 // See PutObject for details on how to use this API operation.
6233 // The context must be non-nil and will be used for request cancellation. If
6234 // the context is nil a panic will occur. In the future the SDK may create
6235 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
6236 // for more information on using Contexts.
6237 func (c *S3) PutObjectWithContext(ctx aws.Context, input *PutObjectInput, opts ...request.Option) (*PutObjectOutput, error) {
6238 req, out := c.PutObjectRequest(input)
6240 req.ApplyOptions(opts...)
6241 return out, req.Send()
6244 const opPutObjectAcl = "PutObjectAcl"
6246 // PutObjectAclRequest generates a "aws/request.Request" representing the
6247 // client's request for the PutObjectAcl operation. The "output" return
6248 // value will be populated with the request's response once the request completes
6251 // Use "Send" method on the returned Request to send the API call to the service.
6252 // the "output" return value is not valid until after Send returns without error.
6254 // See PutObjectAcl for more information on using the PutObjectAcl
6255 // API call, and error handling.
6257 // This method is useful when you want to inject custom logic or configuration
6258 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
6261 // // Example sending a request using the PutObjectAclRequest method.
6262 // req, resp := client.PutObjectAclRequest(params)
6264 // err := req.Send()
6265 // if err == nil { // resp is now filled
6266 // fmt.Println(resp)
6269 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutObjectAcl
6270 func (c *S3) PutObjectAclRequest(input *PutObjectAclInput) (req *request.Request, output *PutObjectAclOutput) {
6271 op := &request.Operation{
6272 Name: opPutObjectAcl,
6274 HTTPPath: "/{Bucket}/{Key+}?acl",
6278 input = &PutObjectAclInput{}
6281 output = &PutObjectAclOutput{}
6282 req = c.newRequest(op, input, output)
6286 // PutObjectAcl API operation for Amazon Simple Storage Service.
6288 // uses the acl subresource to set the access control list (ACL) permissions
6289 // for an object that already exists in a bucket
6291 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6292 // with awserr.Error's Code and Message methods to get detailed information about
6295 // See the AWS API reference guide for Amazon Simple Storage Service's
6296 // API operation PutObjectAcl for usage and error information.
6298 // Returned Error Codes:
6299 // * ErrCodeNoSuchKey "NoSuchKey"
6300 // The specified key does not exist.
6302 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutObjectAcl
6303 func (c *S3) PutObjectAcl(input *PutObjectAclInput) (*PutObjectAclOutput, error) {
6304 req, out := c.PutObjectAclRequest(input)
6305 return out, req.Send()
6308 // PutObjectAclWithContext is the same as PutObjectAcl with the addition of
6309 // the ability to pass a context and additional request options.
6311 // See PutObjectAcl for details on how to use this API operation.
6313 // The context must be non-nil and will be used for request cancellation. If
6314 // the context is nil a panic will occur. In the future the SDK may create
6315 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
6316 // for more information on using Contexts.
6317 func (c *S3) PutObjectAclWithContext(ctx aws.Context, input *PutObjectAclInput, opts ...request.Option) (*PutObjectAclOutput, error) {
6318 req, out := c.PutObjectAclRequest(input)
6320 req.ApplyOptions(opts...)
6321 return out, req.Send()
6324 const opPutObjectLegalHold = "PutObjectLegalHold"
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
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.
6334 // See PutObjectLegalHold for more information on using the PutObjectLegalHold
6335 // API call, and error handling.
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.
6341 // // Example sending a request using the PutObjectLegalHoldRequest method.
6342 // req, resp := client.PutObjectLegalHoldRequest(params)
6344 // err := req.Send()
6345 // if err == nil { // resp is now filled
6346 // fmt.Println(resp)
6349 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutObjectLegalHold
6350 func (c *S3) PutObjectLegalHoldRequest(input *PutObjectLegalHoldInput) (req *request.Request, output *PutObjectLegalHoldOutput) {
6351 op := &request.Operation{
6352 Name: opPutObjectLegalHold,
6354 HTTPPath: "/{Bucket}/{Key+}?legal-hold",
6358 input = &PutObjectLegalHoldInput{}
6361 output = &PutObjectLegalHoldOutput{}
6362 req = c.newRequest(op, input, output)
6366 // PutObjectLegalHold API operation for Amazon Simple Storage Service.
6368 // Applies a Legal Hold configuration to the specified object.
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
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
6377 func (c *S3) PutObjectLegalHold(input *PutObjectLegalHoldInput) (*PutObjectLegalHoldOutput, error) {
6378 req, out := c.PutObjectLegalHoldRequest(input)
6379 return out, req.Send()
6382 // PutObjectLegalHoldWithContext is the same as PutObjectLegalHold with the addition of
6383 // the ability to pass a context and additional request options.
6385 // See PutObjectLegalHold for details on how to use this API operation.
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.
6391 func (c *S3) PutObjectLegalHoldWithContext(ctx aws.Context, input *PutObjectLegalHoldInput, opts ...request.Option) (*PutObjectLegalHoldOutput, error) {
6392 req, out := c.PutObjectLegalHoldRequest(input)
6394 req.ApplyOptions(opts...)
6395 return out, req.Send()
6398 const opPutObjectLockConfiguration = "PutObjectLockConfiguration"
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
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.
6408 // See PutObjectLockConfiguration for more information on using the PutObjectLockConfiguration
6409 // API call, and error handling.
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.
6415 // // Example sending a request using the PutObjectLockConfigurationRequest method.
6416 // req, resp := client.PutObjectLockConfigurationRequest(params)
6418 // err := req.Send()
6419 // if err == nil { // resp is now filled
6420 // fmt.Println(resp)
6423 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutObjectLockConfiguration
6424 func (c *S3) PutObjectLockConfigurationRequest(input *PutObjectLockConfigurationInput) (req *request.Request, output *PutObjectLockConfigurationOutput) {
6425 op := &request.Operation{
6426 Name: opPutObjectLockConfiguration,
6428 HTTPPath: "/{Bucket}?object-lock",
6432 input = &PutObjectLockConfigurationInput{}
6435 output = &PutObjectLockConfigurationOutput{}
6436 req = c.newRequest(op, input, output)
6440 // PutObjectLockConfiguration API operation for Amazon Simple Storage Service.
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.
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
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
6453 func (c *S3) PutObjectLockConfiguration(input *PutObjectLockConfigurationInput) (*PutObjectLockConfigurationOutput, error) {
6454 req, out := c.PutObjectLockConfigurationRequest(input)
6455 return out, req.Send()
6458 // PutObjectLockConfigurationWithContext is the same as PutObjectLockConfiguration with the addition of
6459 // the ability to pass a context and additional request options.
6461 // See PutObjectLockConfiguration for details on how to use this API operation.
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.
6467 func (c *S3) PutObjectLockConfigurationWithContext(ctx aws.Context, input *PutObjectLockConfigurationInput, opts ...request.Option) (*PutObjectLockConfigurationOutput, error) {
6468 req, out := c.PutObjectLockConfigurationRequest(input)
6470 req.ApplyOptions(opts...)
6471 return out, req.Send()
6474 const opPutObjectRetention = "PutObjectRetention"
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
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.
6484 // See PutObjectRetention for more information on using the PutObjectRetention
6485 // API call, and error handling.
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.
6491 // // Example sending a request using the PutObjectRetentionRequest method.
6492 // req, resp := client.PutObjectRetentionRequest(params)
6494 // err := req.Send()
6495 // if err == nil { // resp is now filled
6496 // fmt.Println(resp)
6499 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutObjectRetention
6500 func (c *S3) PutObjectRetentionRequest(input *PutObjectRetentionInput) (req *request.Request, output *PutObjectRetentionOutput) {
6501 op := &request.Operation{
6502 Name: opPutObjectRetention,
6504 HTTPPath: "/{Bucket}/{Key+}?retention",
6508 input = &PutObjectRetentionInput{}
6511 output = &PutObjectRetentionOutput{}
6512 req = c.newRequest(op, input, output)
6516 // PutObjectRetention API operation for Amazon Simple Storage Service.
6518 // Places an Object Retention configuration on an object.
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
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
6527 func (c *S3) PutObjectRetention(input *PutObjectRetentionInput) (*PutObjectRetentionOutput, error) {
6528 req, out := c.PutObjectRetentionRequest(input)
6529 return out, req.Send()
6532 // PutObjectRetentionWithContext is the same as PutObjectRetention with the addition of
6533 // the ability to pass a context and additional request options.
6535 // See PutObjectRetention for details on how to use this API operation.
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.
6541 func (c *S3) PutObjectRetentionWithContext(ctx aws.Context, input *PutObjectRetentionInput, opts ...request.Option) (*PutObjectRetentionOutput, error) {
6542 req, out := c.PutObjectRetentionRequest(input)
6544 req.ApplyOptions(opts...)
6545 return out, req.Send()
6548 const opPutObjectTagging = "PutObjectTagging"
6550 // PutObjectTaggingRequest generates a "aws/request.Request" representing the
6551 // client's request for the PutObjectTagging operation. The "output" return
6552 // value will be populated with the request's response once the request completes
6555 // Use "Send" method on the returned Request to send the API call to the service.
6556 // the "output" return value is not valid until after Send returns without error.
6558 // See PutObjectTagging for more information on using the PutObjectTagging
6559 // API call, and error handling.
6561 // This method is useful when you want to inject custom logic or configuration
6562 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
6565 // // Example sending a request using the PutObjectTaggingRequest method.
6566 // req, resp := client.PutObjectTaggingRequest(params)
6568 // err := req.Send()
6569 // if err == nil { // resp is now filled
6570 // fmt.Println(resp)
6573 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutObjectTagging
6574 func (c *S3) PutObjectTaggingRequest(input *PutObjectTaggingInput) (req *request.Request, output *PutObjectTaggingOutput) {
6575 op := &request.Operation{
6576 Name: opPutObjectTagging,
6578 HTTPPath: "/{Bucket}/{Key+}?tagging",
6582 input = &PutObjectTaggingInput{}
6585 output = &PutObjectTaggingOutput{}
6586 req = c.newRequest(op, input, output)
6590 // PutObjectTagging API operation for Amazon Simple Storage Service.
6592 // Sets the supplied tag-set to an object that already exists in a bucket
6594 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6595 // with awserr.Error's Code and Message methods to get detailed information about
6598 // See the AWS API reference guide for Amazon Simple Storage Service's
6599 // API operation PutObjectTagging for usage and error information.
6600 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutObjectTagging
6601 func (c *S3) PutObjectTagging(input *PutObjectTaggingInput) (*PutObjectTaggingOutput, error) {
6602 req, out := c.PutObjectTaggingRequest(input)
6603 return out, req.Send()
6606 // PutObjectTaggingWithContext is the same as PutObjectTagging with the addition of
6607 // the ability to pass a context and additional request options.
6609 // See PutObjectTagging for details on how to use this API operation.
6611 // The context must be non-nil and will be used for request cancellation. If
6612 // the context is nil a panic will occur. In the future the SDK may create
6613 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
6614 // for more information on using Contexts.
6615 func (c *S3) PutObjectTaggingWithContext(ctx aws.Context, input *PutObjectTaggingInput, opts ...request.Option) (*PutObjectTaggingOutput, error) {
6616 req, out := c.PutObjectTaggingRequest(input)
6618 req.ApplyOptions(opts...)
6619 return out, req.Send()
6622 const opPutPublicAccessBlock = "PutPublicAccessBlock"
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
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.
6632 // See PutPublicAccessBlock for more information on using the PutPublicAccessBlock
6633 // API call, and error handling.
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.
6639 // // Example sending a request using the PutPublicAccessBlockRequest method.
6640 // req, resp := client.PutPublicAccessBlockRequest(params)
6642 // err := req.Send()
6643 // if err == nil { // resp is now filled
6644 // fmt.Println(resp)
6647 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutPublicAccessBlock
6648 func (c *S3) PutPublicAccessBlockRequest(input *PutPublicAccessBlockInput) (req *request.Request, output *PutPublicAccessBlockOutput) {
6649 op := &request.Operation{
6650 Name: opPutPublicAccessBlock,
6652 HTTPPath: "/{Bucket}?publicAccessBlock",
6656 input = &PutPublicAccessBlockInput{}
6659 output = &PutPublicAccessBlockOutput{}
6660 req = c.newRequest(op, input, output)
6661 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
6665 // PutPublicAccessBlock API operation for Amazon Simple Storage Service.
6667 // Creates or modifies the PublicAccessBlock configuration for an Amazon S3
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
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
6677 func (c *S3) PutPublicAccessBlock(input *PutPublicAccessBlockInput) (*PutPublicAccessBlockOutput, error) {
6678 req, out := c.PutPublicAccessBlockRequest(input)
6679 return out, req.Send()
6682 // PutPublicAccessBlockWithContext is the same as PutPublicAccessBlock with the addition of
6683 // the ability to pass a context and additional request options.
6685 // See PutPublicAccessBlock for details on how to use this API operation.
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.
6691 func (c *S3) PutPublicAccessBlockWithContext(ctx aws.Context, input *PutPublicAccessBlockInput, opts ...request.Option) (*PutPublicAccessBlockOutput, error) {
6692 req, out := c.PutPublicAccessBlockRequest(input)
6694 req.ApplyOptions(opts...)
6695 return out, req.Send()
6698 const opRestoreObject = "RestoreObject"
6700 // RestoreObjectRequest generates a "aws/request.Request" representing the
6701 // client's request for the RestoreObject operation. The "output" return
6702 // value will be populated with the request's response once the request completes
6705 // Use "Send" method on the returned Request to send the API call to the service.
6706 // the "output" return value is not valid until after Send returns without error.
6708 // See RestoreObject for more information on using the RestoreObject
6709 // API call, and error handling.
6711 // This method is useful when you want to inject custom logic or configuration
6712 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
6715 // // Example sending a request using the RestoreObjectRequest method.
6716 // req, resp := client.RestoreObjectRequest(params)
6718 // err := req.Send()
6719 // if err == nil { // resp is now filled
6720 // fmt.Println(resp)
6723 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/RestoreObject
6724 func (c *S3) RestoreObjectRequest(input *RestoreObjectInput) (req *request.Request, output *RestoreObjectOutput) {
6725 op := &request.Operation{
6726 Name: opRestoreObject,
6728 HTTPPath: "/{Bucket}/{Key+}?restore",
6732 input = &RestoreObjectInput{}
6735 output = &RestoreObjectOutput{}
6736 req = c.newRequest(op, input, output)
6740 // RestoreObject API operation for Amazon Simple Storage Service.
6742 // Restores an archived copy of an object back into Amazon S3
6744 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6745 // with awserr.Error's Code and Message methods to get detailed information about
6748 // See the AWS API reference guide for Amazon Simple Storage Service's
6749 // API operation RestoreObject for usage and error information.
6751 // Returned Error Codes:
6752 // * ErrCodeObjectAlreadyInActiveTierError "ObjectAlreadyInActiveTierError"
6753 // This operation is not allowed against this storage tier
6755 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/RestoreObject
6756 func (c *S3) RestoreObject(input *RestoreObjectInput) (*RestoreObjectOutput, error) {
6757 req, out := c.RestoreObjectRequest(input)
6758 return out, req.Send()
6761 // RestoreObjectWithContext is the same as RestoreObject with the addition of
6762 // the ability to pass a context and additional request options.
6764 // See RestoreObject for details on how to use this API operation.
6766 // The context must be non-nil and will be used for request cancellation. If
6767 // the context is nil a panic will occur. In the future the SDK may create
6768 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
6769 // for more information on using Contexts.
6770 func (c *S3) RestoreObjectWithContext(ctx aws.Context, input *RestoreObjectInput, opts ...request.Option) (*RestoreObjectOutput, error) {
6771 req, out := c.RestoreObjectRequest(input)
6773 req.ApplyOptions(opts...)
6774 return out, req.Send()
6777 const opSelectObjectContent = "SelectObjectContent"
6779 // SelectObjectContentRequest generates a "aws/request.Request" representing the
6780 // client's request for the SelectObjectContent operation. The "output" return
6781 // value will be populated with the request's response once the request completes
6784 // Use "Send" method on the returned Request to send the API call to the service.
6785 // the "output" return value is not valid until after Send returns without error.
6787 // See SelectObjectContent for more information on using the SelectObjectContent
6788 // API call, and error handling.
6790 // This method is useful when you want to inject custom logic or configuration
6791 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
6794 // // Example sending a request using the SelectObjectContentRequest method.
6795 // req, resp := client.SelectObjectContentRequest(params)
6797 // err := req.Send()
6798 // if err == nil { // resp is now filled
6799 // fmt.Println(resp)
6802 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/SelectObjectContent
6803 func (c *S3) SelectObjectContentRequest(input *SelectObjectContentInput) (req *request.Request, output *SelectObjectContentOutput) {
6804 op := &request.Operation{
6805 Name: opSelectObjectContent,
6807 HTTPPath: "/{Bucket}/{Key+}?select&select-type=2",
6811 input = &SelectObjectContentInput{}
6814 output = &SelectObjectContentOutput{}
6815 req = c.newRequest(op, input, output)
6816 req.Handlers.Send.Swap(client.LogHTTPResponseHandler.Name, client.LogHTTPResponseHeaderHandler)
6817 req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, rest.UnmarshalHandler)
6818 req.Handlers.Unmarshal.PushBack(output.runEventStreamLoop)
6822 // SelectObjectContent API operation for Amazon Simple Storage Service.
6824 // This operation filters the contents of an Amazon S3 object based on a simple
6825 // Structured Query Language (SQL) statement. In the request, along with the
6826 // SQL expression, you must also specify a data serialization format (JSON or
6827 // CSV) of the object. Amazon S3 uses this to parse object data into records,
6828 // and returns only records that match the specified SQL expression. You must
6829 // also specify the data serialization format for the response.
6831 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6832 // with awserr.Error's Code and Message methods to get detailed information about
6835 // See the AWS API reference guide for Amazon Simple Storage Service's
6836 // API operation SelectObjectContent for usage and error information.
6837 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/SelectObjectContent
6838 func (c *S3) SelectObjectContent(input *SelectObjectContentInput) (*SelectObjectContentOutput, error) {
6839 req, out := c.SelectObjectContentRequest(input)
6840 return out, req.Send()
6843 // SelectObjectContentWithContext is the same as SelectObjectContent with the addition of
6844 // the ability to pass a context and additional request options.
6846 // See SelectObjectContent for details on how to use this API operation.
6848 // The context must be non-nil and will be used for request cancellation. If
6849 // the context is nil a panic will occur. In the future the SDK may create
6850 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
6851 // for more information on using Contexts.
6852 func (c *S3) SelectObjectContentWithContext(ctx aws.Context, input *SelectObjectContentInput, opts ...request.Option) (*SelectObjectContentOutput, error) {
6853 req, out := c.SelectObjectContentRequest(input)
6855 req.ApplyOptions(opts...)
6856 return out, req.Send()
6859 const opUploadPart = "UploadPart"
6861 // UploadPartRequest generates a "aws/request.Request" representing the
6862 // client's request for the UploadPart operation. The "output" return
6863 // value will be populated with the request's response once the request completes
6866 // Use "Send" method on the returned Request to send the API call to the service.
6867 // the "output" return value is not valid until after Send returns without error.
6869 // See UploadPart for more information on using the UploadPart
6870 // API call, and error handling.
6872 // This method is useful when you want to inject custom logic or configuration
6873 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
6876 // // Example sending a request using the UploadPartRequest method.
6877 // req, resp := client.UploadPartRequest(params)
6879 // err := req.Send()
6880 // if err == nil { // resp is now filled
6881 // fmt.Println(resp)
6884 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/UploadPart
6885 func (c *S3) UploadPartRequest(input *UploadPartInput) (req *request.Request, output *UploadPartOutput) {
6886 op := &request.Operation{
6889 HTTPPath: "/{Bucket}/{Key+}",
6893 input = &UploadPartInput{}
6896 output = &UploadPartOutput{}
6897 req = c.newRequest(op, input, output)
6901 // UploadPart API operation for Amazon Simple Storage Service.
6903 // Uploads a part in a multipart upload.
6905 // Note: After you initiate multipart upload and upload one or more parts, you
6906 // must either complete or abort multipart upload in order to stop getting charged
6907 // for storage of the uploaded parts. Only after you either complete or abort
6908 // multipart upload, Amazon S3 frees up the parts storage and stops charging
6909 // you for the parts storage.
6911 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6912 // with awserr.Error's Code and Message methods to get detailed information about
6915 // See the AWS API reference guide for Amazon Simple Storage Service's
6916 // API operation UploadPart for usage and error information.
6917 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/UploadPart
6918 func (c *S3) UploadPart(input *UploadPartInput) (*UploadPartOutput, error) {
6919 req, out := c.UploadPartRequest(input)
6920 return out, req.Send()
6923 // UploadPartWithContext is the same as UploadPart with the addition of
6924 // the ability to pass a context and additional request options.
6926 // See UploadPart for details on how to use this API operation.
6928 // The context must be non-nil and will be used for request cancellation. If
6929 // the context is nil a panic will occur. In the future the SDK may create
6930 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
6931 // for more information on using Contexts.
6932 func (c *S3) UploadPartWithContext(ctx aws.Context, input *UploadPartInput, opts ...request.Option) (*UploadPartOutput, error) {
6933 req, out := c.UploadPartRequest(input)
6935 req.ApplyOptions(opts...)
6936 return out, req.Send()
6939 const opUploadPartCopy = "UploadPartCopy"
6941 // UploadPartCopyRequest generates a "aws/request.Request" representing the
6942 // client's request for the UploadPartCopy operation. The "output" return
6943 // value will be populated with the request's response once the request completes
6946 // Use "Send" method on the returned Request to send the API call to the service.
6947 // the "output" return value is not valid until after Send returns without error.
6949 // See UploadPartCopy for more information on using the UploadPartCopy
6950 // API call, and error handling.
6952 // This method is useful when you want to inject custom logic or configuration
6953 // into the SDK's request lifecycle. Such as custom headers, or retry logic.
6956 // // Example sending a request using the UploadPartCopyRequest method.
6957 // req, resp := client.UploadPartCopyRequest(params)
6959 // err := req.Send()
6960 // if err == nil { // resp is now filled
6961 // fmt.Println(resp)
6964 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/UploadPartCopy
6965 func (c *S3) UploadPartCopyRequest(input *UploadPartCopyInput) (req *request.Request, output *UploadPartCopyOutput) {
6966 op := &request.Operation{
6967 Name: opUploadPartCopy,
6969 HTTPPath: "/{Bucket}/{Key+}",
6973 input = &UploadPartCopyInput{}
6976 output = &UploadPartCopyOutput{}
6977 req = c.newRequest(op, input, output)
6981 // UploadPartCopy API operation for Amazon Simple Storage Service.
6983 // Uploads a part by copying data from an existing object as data source.
6985 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6986 // with awserr.Error's Code and Message methods to get detailed information about
6989 // See the AWS API reference guide for Amazon Simple Storage Service's
6990 // API operation UploadPartCopy for usage and error information.
6991 // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/UploadPartCopy
6992 func (c *S3) UploadPartCopy(input *UploadPartCopyInput) (*UploadPartCopyOutput, error) {
6993 req, out := c.UploadPartCopyRequest(input)
6994 return out, req.Send()
6997 // UploadPartCopyWithContext is the same as UploadPartCopy with the addition of
6998 // the ability to pass a context and additional request options.
7000 // See UploadPartCopy for details on how to use this API operation.
7002 // The context must be non-nil and will be used for request cancellation. If
7003 // the context is nil a panic will occur. In the future the SDK may create
7004 // sub-contexts for http.Requests. See https://golang.org/pkg/context/
7005 // for more information on using Contexts.
7006 func (c *S3) UploadPartCopyWithContext(ctx aws.Context, input *UploadPartCopyInput, opts ...request.Option) (*UploadPartCopyOutput, error) {
7007 req, out := c.UploadPartCopyRequest(input)
7009 req.ApplyOptions(opts...)
7010 return out, req.Send()
7013 // Specifies the days since the initiation of an Incomplete Multipart Upload
7014 // that Lifecycle will wait before permanently removing all parts of the upload.
7015 type AbortIncompleteMultipartUpload struct {
7016 _ struct{} `type:"structure"`
7018 // Indicates the number of days that must pass since initiation for Lifecycle
7019 // to abort an Incomplete Multipart Upload.
7020 DaysAfterInitiation *int64 `type:"integer"`
7023 // String returns the string representation
7024 func (s AbortIncompleteMultipartUpload) String() string {
7025 return awsutil.Prettify(s)
7028 // GoString returns the string representation
7029 func (s AbortIncompleteMultipartUpload) GoString() string {
7033 // SetDaysAfterInitiation sets the DaysAfterInitiation field's value.
7034 func (s *AbortIncompleteMultipartUpload) SetDaysAfterInitiation(v int64) *AbortIncompleteMultipartUpload {
7035 s.DaysAfterInitiation = &v
7039 type AbortMultipartUploadInput struct {
7040 _ struct{} `type:"structure"`
7042 // Bucket is a required field
7043 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
7045 // Key is a required field
7046 Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"`
7048 // Confirms that the requester knows that she or he will be charged for the
7049 // request. Bucket owners need not specify this parameter in their requests.
7050 // Documentation on downloading objects from requester pays buckets can be found
7051 // at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
7052 RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
7054 // UploadId is a required field
7055 UploadId *string `location:"querystring" locationName:"uploadId" type:"string" required:"true"`
7058 // String returns the string representation
7059 func (s AbortMultipartUploadInput) String() string {
7060 return awsutil.Prettify(s)
7063 // GoString returns the string representation
7064 func (s AbortMultipartUploadInput) GoString() string {
7068 // Validate inspects the fields of the type to determine if they are valid.
7069 func (s *AbortMultipartUploadInput) Validate() error {
7070 invalidParams := request.ErrInvalidParams{Context: "AbortMultipartUploadInput"}
7071 if s.Bucket == nil {
7072 invalidParams.Add(request.NewErrParamRequired("Bucket"))
7074 if s.Bucket != nil && len(*s.Bucket) < 1 {
7075 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
7078 invalidParams.Add(request.NewErrParamRequired("Key"))
7080 if s.Key != nil && len(*s.Key) < 1 {
7081 invalidParams.Add(request.NewErrParamMinLen("Key", 1))
7083 if s.UploadId == nil {
7084 invalidParams.Add(request.NewErrParamRequired("UploadId"))
7087 if invalidParams.Len() > 0 {
7088 return invalidParams
7093 // SetBucket sets the Bucket field's value.
7094 func (s *AbortMultipartUploadInput) SetBucket(v string) *AbortMultipartUploadInput {
7099 func (s *AbortMultipartUploadInput) getBucket() (v string) {
7100 if s.Bucket == nil {
7106 // SetKey sets the Key field's value.
7107 func (s *AbortMultipartUploadInput) SetKey(v string) *AbortMultipartUploadInput {
7112 // SetRequestPayer sets the RequestPayer field's value.
7113 func (s *AbortMultipartUploadInput) SetRequestPayer(v string) *AbortMultipartUploadInput {
7118 // SetUploadId sets the UploadId field's value.
7119 func (s *AbortMultipartUploadInput) SetUploadId(v string) *AbortMultipartUploadInput {
7124 type AbortMultipartUploadOutput struct {
7125 _ struct{} `type:"structure"`
7127 // If present, indicates that the requester was successfully charged for the
7129 RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"`
7132 // String returns the string representation
7133 func (s AbortMultipartUploadOutput) String() string {
7134 return awsutil.Prettify(s)
7137 // GoString returns the string representation
7138 func (s AbortMultipartUploadOutput) GoString() string {
7142 // SetRequestCharged sets the RequestCharged field's value.
7143 func (s *AbortMultipartUploadOutput) SetRequestCharged(v string) *AbortMultipartUploadOutput {
7144 s.RequestCharged = &v
7148 type AccelerateConfiguration struct {
7149 _ struct{} `type:"structure"`
7151 // The accelerate configuration of the bucket.
7152 Status *string `type:"string" enum:"BucketAccelerateStatus"`
7155 // String returns the string representation
7156 func (s AccelerateConfiguration) String() string {
7157 return awsutil.Prettify(s)
7160 // GoString returns the string representation
7161 func (s AccelerateConfiguration) GoString() string {
7165 // SetStatus sets the Status field's value.
7166 func (s *AccelerateConfiguration) SetStatus(v string) *AccelerateConfiguration {
7171 type AccessControlPolicy struct {
7172 _ struct{} `type:"structure"`
7174 // A list of grants.
7175 Grants []*Grant `locationName:"AccessControlList" locationNameList:"Grant" type:"list"`
7177 Owner *Owner `type:"structure"`
7180 // String returns the string representation
7181 func (s AccessControlPolicy) String() string {
7182 return awsutil.Prettify(s)
7185 // GoString returns the string representation
7186 func (s AccessControlPolicy) GoString() string {
7190 // Validate inspects the fields of the type to determine if they are valid.
7191 func (s *AccessControlPolicy) Validate() error {
7192 invalidParams := request.ErrInvalidParams{Context: "AccessControlPolicy"}
7193 if s.Grants != nil {
7194 for i, v := range s.Grants {
7198 if err := v.Validate(); err != nil {
7199 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Grants", i), err.(request.ErrInvalidParams))
7204 if invalidParams.Len() > 0 {
7205 return invalidParams
7210 // SetGrants sets the Grants field's value.
7211 func (s *AccessControlPolicy) SetGrants(v []*Grant) *AccessControlPolicy {
7216 // SetOwner sets the Owner field's value.
7217 func (s *AccessControlPolicy) SetOwner(v *Owner) *AccessControlPolicy {
7222 // A container for information about access control for replicas.
7223 type AccessControlTranslation struct {
7224 _ struct{} `type:"structure"`
7226 // The override value for the owner of the replica object.
7228 // Owner is a required field
7229 Owner *string `type:"string" required:"true" enum:"OwnerOverride"`
7232 // String returns the string representation
7233 func (s AccessControlTranslation) String() string {
7234 return awsutil.Prettify(s)
7237 // GoString returns the string representation
7238 func (s AccessControlTranslation) GoString() string {
7242 // Validate inspects the fields of the type to determine if they are valid.
7243 func (s *AccessControlTranslation) Validate() error {
7244 invalidParams := request.ErrInvalidParams{Context: "AccessControlTranslation"}
7246 invalidParams.Add(request.NewErrParamRequired("Owner"))
7249 if invalidParams.Len() > 0 {
7250 return invalidParams
7255 // SetOwner sets the Owner field's value.
7256 func (s *AccessControlTranslation) SetOwner(v string) *AccessControlTranslation {
7261 type AnalyticsAndOperator struct {
7262 _ struct{} `type:"structure"`
7264 // The prefix to use when evaluating an AND predicate.
7265 Prefix *string `type:"string"`
7267 // The list of tags to use when evaluating an AND predicate.
7268 Tags []*Tag `locationName:"Tag" locationNameList:"Tag" type:"list" flattened:"true"`
7271 // String returns the string representation
7272 func (s AnalyticsAndOperator) String() string {
7273 return awsutil.Prettify(s)
7276 // GoString returns the string representation
7277 func (s AnalyticsAndOperator) GoString() string {
7281 // Validate inspects the fields of the type to determine if they are valid.
7282 func (s *AnalyticsAndOperator) Validate() error {
7283 invalidParams := request.ErrInvalidParams{Context: "AnalyticsAndOperator"}
7285 for i, v := range s.Tags {
7289 if err := v.Validate(); err != nil {
7290 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
7295 if invalidParams.Len() > 0 {
7296 return invalidParams
7301 // SetPrefix sets the Prefix field's value.
7302 func (s *AnalyticsAndOperator) SetPrefix(v string) *AnalyticsAndOperator {
7307 // SetTags sets the Tags field's value.
7308 func (s *AnalyticsAndOperator) SetTags(v []*Tag) *AnalyticsAndOperator {
7313 type AnalyticsConfiguration struct {
7314 _ struct{} `type:"structure"`
7316 // The filter used to describe a set of objects for analyses. A filter must
7317 // have exactly one prefix, one tag, or one conjunction (AnalyticsAndOperator).
7318 // If no filter is provided, all objects will be considered in any analysis.
7319 Filter *AnalyticsFilter `type:"structure"`
7321 // The identifier used to represent an analytics configuration.
7323 // Id is a required field
7324 Id *string `type:"string" required:"true"`
7326 // If present, it indicates that data related to access patterns will be collected
7327 // and made available to analyze the tradeoffs between different storage classes.
7329 // StorageClassAnalysis is a required field
7330 StorageClassAnalysis *StorageClassAnalysis `type:"structure" required:"true"`
7333 // String returns the string representation
7334 func (s AnalyticsConfiguration) String() string {
7335 return awsutil.Prettify(s)
7338 // GoString returns the string representation
7339 func (s AnalyticsConfiguration) GoString() string {
7343 // Validate inspects the fields of the type to determine if they are valid.
7344 func (s *AnalyticsConfiguration) Validate() error {
7345 invalidParams := request.ErrInvalidParams{Context: "AnalyticsConfiguration"}
7347 invalidParams.Add(request.NewErrParamRequired("Id"))
7349 if s.StorageClassAnalysis == nil {
7350 invalidParams.Add(request.NewErrParamRequired("StorageClassAnalysis"))
7352 if s.Filter != nil {
7353 if err := s.Filter.Validate(); err != nil {
7354 invalidParams.AddNested("Filter", err.(request.ErrInvalidParams))
7357 if s.StorageClassAnalysis != nil {
7358 if err := s.StorageClassAnalysis.Validate(); err != nil {
7359 invalidParams.AddNested("StorageClassAnalysis", err.(request.ErrInvalidParams))
7363 if invalidParams.Len() > 0 {
7364 return invalidParams
7369 // SetFilter sets the Filter field's value.
7370 func (s *AnalyticsConfiguration) SetFilter(v *AnalyticsFilter) *AnalyticsConfiguration {
7375 // SetId sets the Id field's value.
7376 func (s *AnalyticsConfiguration) SetId(v string) *AnalyticsConfiguration {
7381 // SetStorageClassAnalysis sets the StorageClassAnalysis field's value.
7382 func (s *AnalyticsConfiguration) SetStorageClassAnalysis(v *StorageClassAnalysis) *AnalyticsConfiguration {
7383 s.StorageClassAnalysis = v
7387 type AnalyticsExportDestination struct {
7388 _ struct{} `type:"structure"`
7390 // A destination signifying output to an S3 bucket.
7392 // S3BucketDestination is a required field
7393 S3BucketDestination *AnalyticsS3BucketDestination `type:"structure" required:"true"`
7396 // String returns the string representation
7397 func (s AnalyticsExportDestination) String() string {
7398 return awsutil.Prettify(s)
7401 // GoString returns the string representation
7402 func (s AnalyticsExportDestination) GoString() string {
7406 // Validate inspects the fields of the type to determine if they are valid.
7407 func (s *AnalyticsExportDestination) Validate() error {
7408 invalidParams := request.ErrInvalidParams{Context: "AnalyticsExportDestination"}
7409 if s.S3BucketDestination == nil {
7410 invalidParams.Add(request.NewErrParamRequired("S3BucketDestination"))
7412 if s.S3BucketDestination != nil {
7413 if err := s.S3BucketDestination.Validate(); err != nil {
7414 invalidParams.AddNested("S3BucketDestination", err.(request.ErrInvalidParams))
7418 if invalidParams.Len() > 0 {
7419 return invalidParams
7424 // SetS3BucketDestination sets the S3BucketDestination field's value.
7425 func (s *AnalyticsExportDestination) SetS3BucketDestination(v *AnalyticsS3BucketDestination) *AnalyticsExportDestination {
7426 s.S3BucketDestination = v
7430 type AnalyticsFilter struct {
7431 _ struct{} `type:"structure"`
7433 // A conjunction (logical AND) of predicates, which is used in evaluating an
7434 // analytics filter. The operator must have at least two predicates.
7435 And *AnalyticsAndOperator `type:"structure"`
7437 // The prefix to use when evaluating an analytics filter.
7438 Prefix *string `type:"string"`
7440 // The tag to use when evaluating an analytics filter.
7441 Tag *Tag `type:"structure"`
7444 // String returns the string representation
7445 func (s AnalyticsFilter) String() string {
7446 return awsutil.Prettify(s)
7449 // GoString returns the string representation
7450 func (s AnalyticsFilter) GoString() string {
7454 // Validate inspects the fields of the type to determine if they are valid.
7455 func (s *AnalyticsFilter) Validate() error {
7456 invalidParams := request.ErrInvalidParams{Context: "AnalyticsFilter"}
7458 if err := s.And.Validate(); err != nil {
7459 invalidParams.AddNested("And", err.(request.ErrInvalidParams))
7463 if err := s.Tag.Validate(); err != nil {
7464 invalidParams.AddNested("Tag", err.(request.ErrInvalidParams))
7468 if invalidParams.Len() > 0 {
7469 return invalidParams
7474 // SetAnd sets the And field's value.
7475 func (s *AnalyticsFilter) SetAnd(v *AnalyticsAndOperator) *AnalyticsFilter {
7480 // SetPrefix sets the Prefix field's value.
7481 func (s *AnalyticsFilter) SetPrefix(v string) *AnalyticsFilter {
7486 // SetTag sets the Tag field's value.
7487 func (s *AnalyticsFilter) SetTag(v *Tag) *AnalyticsFilter {
7492 type AnalyticsS3BucketDestination struct {
7493 _ struct{} `type:"structure"`
7495 // The Amazon resource name (ARN) of the bucket to which data is exported.
7497 // Bucket is a required field
7498 Bucket *string `type:"string" required:"true"`
7500 // The account ID that owns the destination bucket. If no account ID is provided,
7501 // the owner will not be validated prior to exporting data.
7502 BucketAccountId *string `type:"string"`
7504 // The file format used when exporting data to Amazon S3.
7506 // Format is a required field
7507 Format *string `type:"string" required:"true" enum:"AnalyticsS3ExportFileFormat"`
7509 // The prefix to use when exporting data. The exported data begins with this
7511 Prefix *string `type:"string"`
7514 // String returns the string representation
7515 func (s AnalyticsS3BucketDestination) String() string {
7516 return awsutil.Prettify(s)
7519 // GoString returns the string representation
7520 func (s AnalyticsS3BucketDestination) GoString() string {
7524 // Validate inspects the fields of the type to determine if they are valid.
7525 func (s *AnalyticsS3BucketDestination) Validate() error {
7526 invalidParams := request.ErrInvalidParams{Context: "AnalyticsS3BucketDestination"}
7527 if s.Bucket == nil {
7528 invalidParams.Add(request.NewErrParamRequired("Bucket"))
7530 if s.Format == nil {
7531 invalidParams.Add(request.NewErrParamRequired("Format"))
7534 if invalidParams.Len() > 0 {
7535 return invalidParams
7540 // SetBucket sets the Bucket field's value.
7541 func (s *AnalyticsS3BucketDestination) SetBucket(v string) *AnalyticsS3BucketDestination {
7546 func (s *AnalyticsS3BucketDestination) getBucket() (v string) {
7547 if s.Bucket == nil {
7553 // SetBucketAccountId sets the BucketAccountId field's value.
7554 func (s *AnalyticsS3BucketDestination) SetBucketAccountId(v string) *AnalyticsS3BucketDestination {
7555 s.BucketAccountId = &v
7559 // SetFormat sets the Format field's value.
7560 func (s *AnalyticsS3BucketDestination) SetFormat(v string) *AnalyticsS3BucketDestination {
7565 // SetPrefix sets the Prefix field's value.
7566 func (s *AnalyticsS3BucketDestination) SetPrefix(v string) *AnalyticsS3BucketDestination {
7571 type Bucket struct {
7572 _ struct{} `type:"structure"`
7574 // Date the bucket was created.
7575 CreationDate *time.Time `type:"timestamp"`
7577 // The name of the bucket.
7578 Name *string `type:"string"`
7581 // String returns the string representation
7582 func (s Bucket) String() string {
7583 return awsutil.Prettify(s)
7586 // GoString returns the string representation
7587 func (s Bucket) GoString() string {
7591 // SetCreationDate sets the CreationDate field's value.
7592 func (s *Bucket) SetCreationDate(v time.Time) *Bucket {
7597 // SetName sets the Name field's value.
7598 func (s *Bucket) SetName(v string) *Bucket {
7603 type BucketLifecycleConfiguration struct {
7604 _ struct{} `type:"structure"`
7606 // Rules is a required field
7607 Rules []*LifecycleRule `locationName:"Rule" type:"list" flattened:"true" required:"true"`
7610 // String returns the string representation
7611 func (s BucketLifecycleConfiguration) String() string {
7612 return awsutil.Prettify(s)
7615 // GoString returns the string representation
7616 func (s BucketLifecycleConfiguration) GoString() string {
7620 // Validate inspects the fields of the type to determine if they are valid.
7621 func (s *BucketLifecycleConfiguration) Validate() error {
7622 invalidParams := request.ErrInvalidParams{Context: "BucketLifecycleConfiguration"}
7624 invalidParams.Add(request.NewErrParamRequired("Rules"))
7627 for i, v := range s.Rules {
7631 if err := v.Validate(); err != nil {
7632 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Rules", i), err.(request.ErrInvalidParams))
7637 if invalidParams.Len() > 0 {
7638 return invalidParams
7643 // SetRules sets the Rules field's value.
7644 func (s *BucketLifecycleConfiguration) SetRules(v []*LifecycleRule) *BucketLifecycleConfiguration {
7649 type BucketLoggingStatus struct {
7650 _ struct{} `type:"structure"`
7652 // Container for logging information. Presence of this element indicates that
7653 // logging is enabled. Parameters TargetBucket and TargetPrefix are required
7655 LoggingEnabled *LoggingEnabled `type:"structure"`
7658 // String returns the string representation
7659 func (s BucketLoggingStatus) String() string {
7660 return awsutil.Prettify(s)
7663 // GoString returns the string representation
7664 func (s BucketLoggingStatus) GoString() string {
7668 // Validate inspects the fields of the type to determine if they are valid.
7669 func (s *BucketLoggingStatus) Validate() error {
7670 invalidParams := request.ErrInvalidParams{Context: "BucketLoggingStatus"}
7671 if s.LoggingEnabled != nil {
7672 if err := s.LoggingEnabled.Validate(); err != nil {
7673 invalidParams.AddNested("LoggingEnabled", err.(request.ErrInvalidParams))
7677 if invalidParams.Len() > 0 {
7678 return invalidParams
7683 // SetLoggingEnabled sets the LoggingEnabled field's value.
7684 func (s *BucketLoggingStatus) SetLoggingEnabled(v *LoggingEnabled) *BucketLoggingStatus {
7685 s.LoggingEnabled = v
7689 type CORSConfiguration struct {
7690 _ struct{} `type:"structure"`
7692 // CORSRules is a required field
7693 CORSRules []*CORSRule `locationName:"CORSRule" type:"list" flattened:"true" required:"true"`
7696 // String returns the string representation
7697 func (s CORSConfiguration) String() string {
7698 return awsutil.Prettify(s)
7701 // GoString returns the string representation
7702 func (s CORSConfiguration) GoString() string {
7706 // Validate inspects the fields of the type to determine if they are valid.
7707 func (s *CORSConfiguration) Validate() error {
7708 invalidParams := request.ErrInvalidParams{Context: "CORSConfiguration"}
7709 if s.CORSRules == nil {
7710 invalidParams.Add(request.NewErrParamRequired("CORSRules"))
7712 if s.CORSRules != nil {
7713 for i, v := range s.CORSRules {
7717 if err := v.Validate(); err != nil {
7718 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "CORSRules", i), err.(request.ErrInvalidParams))
7723 if invalidParams.Len() > 0 {
7724 return invalidParams
7729 // SetCORSRules sets the CORSRules field's value.
7730 func (s *CORSConfiguration) SetCORSRules(v []*CORSRule) *CORSConfiguration {
7735 type CORSRule struct {
7736 _ struct{} `type:"structure"`
7738 // Specifies which headers are allowed in a pre-flight OPTIONS request.
7739 AllowedHeaders []*string `locationName:"AllowedHeader" type:"list" flattened:"true"`
7741 // Identifies HTTP methods that the domain/origin specified in the rule is allowed
7744 // AllowedMethods is a required field
7745 AllowedMethods []*string `locationName:"AllowedMethod" type:"list" flattened:"true" required:"true"`
7747 // One or more origins you want customers to be able to access the bucket from.
7749 // AllowedOrigins is a required field
7750 AllowedOrigins []*string `locationName:"AllowedOrigin" type:"list" flattened:"true" required:"true"`
7752 // One or more headers in the response that you want customers to be able to
7753 // access from their applications (for example, from a JavaScript XMLHttpRequest
7755 ExposeHeaders []*string `locationName:"ExposeHeader" type:"list" flattened:"true"`
7757 // The time in seconds that your browser is to cache the preflight response
7758 // for the specified resource.
7759 MaxAgeSeconds *int64 `type:"integer"`
7762 // String returns the string representation
7763 func (s CORSRule) String() string {
7764 return awsutil.Prettify(s)
7767 // GoString returns the string representation
7768 func (s CORSRule) GoString() string {
7772 // Validate inspects the fields of the type to determine if they are valid.
7773 func (s *CORSRule) Validate() error {
7774 invalidParams := request.ErrInvalidParams{Context: "CORSRule"}
7775 if s.AllowedMethods == nil {
7776 invalidParams.Add(request.NewErrParamRequired("AllowedMethods"))
7778 if s.AllowedOrigins == nil {
7779 invalidParams.Add(request.NewErrParamRequired("AllowedOrigins"))
7782 if invalidParams.Len() > 0 {
7783 return invalidParams
7788 // SetAllowedHeaders sets the AllowedHeaders field's value.
7789 func (s *CORSRule) SetAllowedHeaders(v []*string) *CORSRule {
7790 s.AllowedHeaders = v
7794 // SetAllowedMethods sets the AllowedMethods field's value.
7795 func (s *CORSRule) SetAllowedMethods(v []*string) *CORSRule {
7796 s.AllowedMethods = v
7800 // SetAllowedOrigins sets the AllowedOrigins field's value.
7801 func (s *CORSRule) SetAllowedOrigins(v []*string) *CORSRule {
7802 s.AllowedOrigins = v
7806 // SetExposeHeaders sets the ExposeHeaders field's value.
7807 func (s *CORSRule) SetExposeHeaders(v []*string) *CORSRule {
7812 // SetMaxAgeSeconds sets the MaxAgeSeconds field's value.
7813 func (s *CORSRule) SetMaxAgeSeconds(v int64) *CORSRule {
7814 s.MaxAgeSeconds = &v
7818 // Describes how a CSV-formatted input object is formatted.
7819 type CSVInput struct {
7820 _ struct{} `type:"structure"`
7822 // Specifies that CSV field values may contain quoted record delimiters and
7823 // such records should be allowed. Default value is FALSE. Setting this value
7824 // to TRUE may lower performance.
7825 AllowQuotedRecordDelimiter *bool `type:"boolean"`
7827 // The single character used to indicate a row should be ignored when present
7828 // at the start of a row.
7829 Comments *string `type:"string"`
7831 // The value used to separate individual fields in a record.
7832 FieldDelimiter *string `type:"string"`
7834 // Describes the first line of input. Valid values: None, Ignore, Use.
7835 FileHeaderInfo *string `type:"string" enum:"FileHeaderInfo"`
7837 // Value used for escaping where the field delimiter is part of the value.
7838 QuoteCharacter *string `type:"string"`
7840 // The single character used for escaping the quote character inside an already
7842 QuoteEscapeCharacter *string `type:"string"`
7844 // The value used to separate individual records.
7845 RecordDelimiter *string `type:"string"`
7848 // String returns the string representation
7849 func (s CSVInput) String() string {
7850 return awsutil.Prettify(s)
7853 // GoString returns the string representation
7854 func (s CSVInput) GoString() string {
7858 // SetAllowQuotedRecordDelimiter sets the AllowQuotedRecordDelimiter field's value.
7859 func (s *CSVInput) SetAllowQuotedRecordDelimiter(v bool) *CSVInput {
7860 s.AllowQuotedRecordDelimiter = &v
7864 // SetComments sets the Comments field's value.
7865 func (s *CSVInput) SetComments(v string) *CSVInput {
7870 // SetFieldDelimiter sets the FieldDelimiter field's value.
7871 func (s *CSVInput) SetFieldDelimiter(v string) *CSVInput {
7872 s.FieldDelimiter = &v
7876 // SetFileHeaderInfo sets the FileHeaderInfo field's value.
7877 func (s *CSVInput) SetFileHeaderInfo(v string) *CSVInput {
7878 s.FileHeaderInfo = &v
7882 // SetQuoteCharacter sets the QuoteCharacter field's value.
7883 func (s *CSVInput) SetQuoteCharacter(v string) *CSVInput {
7884 s.QuoteCharacter = &v
7888 // SetQuoteEscapeCharacter sets the QuoteEscapeCharacter field's value.
7889 func (s *CSVInput) SetQuoteEscapeCharacter(v string) *CSVInput {
7890 s.QuoteEscapeCharacter = &v
7894 // SetRecordDelimiter sets the RecordDelimiter field's value.
7895 func (s *CSVInput) SetRecordDelimiter(v string) *CSVInput {
7896 s.RecordDelimiter = &v
7900 // Describes how CSV-formatted results are formatted.
7901 type CSVOutput struct {
7902 _ struct{} `type:"structure"`
7904 // The value used to separate individual fields in a record.
7905 FieldDelimiter *string `type:"string"`
7907 // The value used for escaping where the field delimiter is part of the value.
7908 QuoteCharacter *string `type:"string"`
7910 // Th single character used for escaping the quote character inside an already
7912 QuoteEscapeCharacter *string `type:"string"`
7914 // Indicates whether or not all output fields should be quoted.
7915 QuoteFields *string `type:"string" enum:"QuoteFields"`
7917 // The value used to separate individual records.
7918 RecordDelimiter *string `type:"string"`
7921 // String returns the string representation
7922 func (s CSVOutput) String() string {
7923 return awsutil.Prettify(s)
7926 // GoString returns the string representation
7927 func (s CSVOutput) GoString() string {
7931 // SetFieldDelimiter sets the FieldDelimiter field's value.
7932 func (s *CSVOutput) SetFieldDelimiter(v string) *CSVOutput {
7933 s.FieldDelimiter = &v
7937 // SetQuoteCharacter sets the QuoteCharacter field's value.
7938 func (s *CSVOutput) SetQuoteCharacter(v string) *CSVOutput {
7939 s.QuoteCharacter = &v
7943 // SetQuoteEscapeCharacter sets the QuoteEscapeCharacter field's value.
7944 func (s *CSVOutput) SetQuoteEscapeCharacter(v string) *CSVOutput {
7945 s.QuoteEscapeCharacter = &v
7949 // SetQuoteFields sets the QuoteFields field's value.
7950 func (s *CSVOutput) SetQuoteFields(v string) *CSVOutput {
7955 // SetRecordDelimiter sets the RecordDelimiter field's value.
7956 func (s *CSVOutput) SetRecordDelimiter(v string) *CSVOutput {
7957 s.RecordDelimiter = &v
7961 type CloudFunctionConfiguration struct {
7962 _ struct{} `type:"structure"`
7964 CloudFunction *string `type:"string"`
7966 // The bucket event for which to send notifications.
7968 // Deprecated: Event has been deprecated
7969 Event *string `deprecated:"true" type:"string" enum:"Event"`
7971 Events []*string `locationName:"Event" type:"list" flattened:"true"`
7973 // An optional unique identifier for configurations in a notification configuration.
7974 // If you don't provide one, Amazon S3 will assign an ID.
7975 Id *string `type:"string"`
7977 InvocationRole *string `type:"string"`
7980 // String returns the string representation
7981 func (s CloudFunctionConfiguration) String() string {
7982 return awsutil.Prettify(s)
7985 // GoString returns the string representation
7986 func (s CloudFunctionConfiguration) GoString() string {
7990 // SetCloudFunction sets the CloudFunction field's value.
7991 func (s *CloudFunctionConfiguration) SetCloudFunction(v string) *CloudFunctionConfiguration {
7992 s.CloudFunction = &v
7996 // SetEvent sets the Event field's value.
7997 func (s *CloudFunctionConfiguration) SetEvent(v string) *CloudFunctionConfiguration {
8002 // SetEvents sets the Events field's value.
8003 func (s *CloudFunctionConfiguration) SetEvents(v []*string) *CloudFunctionConfiguration {
8008 // SetId sets the Id field's value.
8009 func (s *CloudFunctionConfiguration) SetId(v string) *CloudFunctionConfiguration {
8014 // SetInvocationRole sets the InvocationRole field's value.
8015 func (s *CloudFunctionConfiguration) SetInvocationRole(v string) *CloudFunctionConfiguration {
8016 s.InvocationRole = &v
8020 type CommonPrefix struct {
8021 _ struct{} `type:"structure"`
8023 Prefix *string `type:"string"`
8026 // String returns the string representation
8027 func (s CommonPrefix) String() string {
8028 return awsutil.Prettify(s)
8031 // GoString returns the string representation
8032 func (s CommonPrefix) GoString() string {
8036 // SetPrefix sets the Prefix field's value.
8037 func (s *CommonPrefix) SetPrefix(v string) *CommonPrefix {
8042 type CompleteMultipartUploadInput struct {
8043 _ struct{} `type:"structure" payload:"MultipartUpload"`
8045 // Bucket is a required field
8046 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
8048 // Key is a required field
8049 Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"`
8051 MultipartUpload *CompletedMultipartUpload `locationName:"CompleteMultipartUpload" type:"structure" xmlURI:"http://s3.amazonaws.com/doc/2006-03-01/"`
8053 // Confirms that the requester knows that she or he will be charged for the
8054 // request. Bucket owners need not specify this parameter in their requests.
8055 // Documentation on downloading objects from requester pays buckets can be found
8056 // at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
8057 RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
8059 // UploadId is a required field
8060 UploadId *string `location:"querystring" locationName:"uploadId" type:"string" required:"true"`
8063 // String returns the string representation
8064 func (s CompleteMultipartUploadInput) String() string {
8065 return awsutil.Prettify(s)
8068 // GoString returns the string representation
8069 func (s CompleteMultipartUploadInput) GoString() string {
8073 // Validate inspects the fields of the type to determine if they are valid.
8074 func (s *CompleteMultipartUploadInput) Validate() error {
8075 invalidParams := request.ErrInvalidParams{Context: "CompleteMultipartUploadInput"}
8076 if s.Bucket == nil {
8077 invalidParams.Add(request.NewErrParamRequired("Bucket"))
8079 if s.Bucket != nil && len(*s.Bucket) < 1 {
8080 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
8083 invalidParams.Add(request.NewErrParamRequired("Key"))
8085 if s.Key != nil && len(*s.Key) < 1 {
8086 invalidParams.Add(request.NewErrParamMinLen("Key", 1))
8088 if s.UploadId == nil {
8089 invalidParams.Add(request.NewErrParamRequired("UploadId"))
8092 if invalidParams.Len() > 0 {
8093 return invalidParams
8098 // SetBucket sets the Bucket field's value.
8099 func (s *CompleteMultipartUploadInput) SetBucket(v string) *CompleteMultipartUploadInput {
8104 func (s *CompleteMultipartUploadInput) getBucket() (v string) {
8105 if s.Bucket == nil {
8111 // SetKey sets the Key field's value.
8112 func (s *CompleteMultipartUploadInput) SetKey(v string) *CompleteMultipartUploadInput {
8117 // SetMultipartUpload sets the MultipartUpload field's value.
8118 func (s *CompleteMultipartUploadInput) SetMultipartUpload(v *CompletedMultipartUpload) *CompleteMultipartUploadInput {
8119 s.MultipartUpload = v
8123 // SetRequestPayer sets the RequestPayer field's value.
8124 func (s *CompleteMultipartUploadInput) SetRequestPayer(v string) *CompleteMultipartUploadInput {
8129 // SetUploadId sets the UploadId field's value.
8130 func (s *CompleteMultipartUploadInput) SetUploadId(v string) *CompleteMultipartUploadInput {
8135 type CompleteMultipartUploadOutput struct {
8136 _ struct{} `type:"structure"`
8138 Bucket *string `type:"string"`
8140 // Entity tag of the object.
8141 ETag *string `type:"string"`
8143 // If the object expiration is configured, this will contain the expiration
8144 // date (expiry-date) and rule ID (rule-id). The value of rule-id is URL encoded.
8145 Expiration *string `location:"header" locationName:"x-amz-expiration" type:"string"`
8147 Key *string `min:"1" type:"string"`
8149 Location *string `type:"string"`
8151 // If present, indicates that the requester was successfully charged for the
8153 RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"`
8155 // If present, specifies the ID of the AWS Key Management Service (KMS) master
8156 // encryption key that was used for the object.
8157 SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string" sensitive:"true"`
8159 // The Server-side encryption algorithm used when storing this object in S3
8160 // (e.g., AES256, aws:kms).
8161 ServerSideEncryption *string `location:"header" locationName:"x-amz-server-side-encryption" type:"string" enum:"ServerSideEncryption"`
8163 // Version of the object.
8164 VersionId *string `location:"header" locationName:"x-amz-version-id" type:"string"`
8167 // String returns the string representation
8168 func (s CompleteMultipartUploadOutput) String() string {
8169 return awsutil.Prettify(s)
8172 // GoString returns the string representation
8173 func (s CompleteMultipartUploadOutput) GoString() string {
8177 // SetBucket sets the Bucket field's value.
8178 func (s *CompleteMultipartUploadOutput) SetBucket(v string) *CompleteMultipartUploadOutput {
8183 func (s *CompleteMultipartUploadOutput) getBucket() (v string) {
8184 if s.Bucket == nil {
8190 // SetETag sets the ETag field's value.
8191 func (s *CompleteMultipartUploadOutput) SetETag(v string) *CompleteMultipartUploadOutput {
8196 // SetExpiration sets the Expiration field's value.
8197 func (s *CompleteMultipartUploadOutput) SetExpiration(v string) *CompleteMultipartUploadOutput {
8202 // SetKey sets the Key field's value.
8203 func (s *CompleteMultipartUploadOutput) SetKey(v string) *CompleteMultipartUploadOutput {
8208 // SetLocation sets the Location field's value.
8209 func (s *CompleteMultipartUploadOutput) SetLocation(v string) *CompleteMultipartUploadOutput {
8214 // SetRequestCharged sets the RequestCharged field's value.
8215 func (s *CompleteMultipartUploadOutput) SetRequestCharged(v string) *CompleteMultipartUploadOutput {
8216 s.RequestCharged = &v
8220 // SetSSEKMSKeyId sets the SSEKMSKeyId field's value.
8221 func (s *CompleteMultipartUploadOutput) SetSSEKMSKeyId(v string) *CompleteMultipartUploadOutput {
8226 // SetServerSideEncryption sets the ServerSideEncryption field's value.
8227 func (s *CompleteMultipartUploadOutput) SetServerSideEncryption(v string) *CompleteMultipartUploadOutput {
8228 s.ServerSideEncryption = &v
8232 // SetVersionId sets the VersionId field's value.
8233 func (s *CompleteMultipartUploadOutput) SetVersionId(v string) *CompleteMultipartUploadOutput {
8238 type CompletedMultipartUpload struct {
8239 _ struct{} `type:"structure"`
8241 Parts []*CompletedPart `locationName:"Part" type:"list" flattened:"true"`
8244 // String returns the string representation
8245 func (s CompletedMultipartUpload) String() string {
8246 return awsutil.Prettify(s)
8249 // GoString returns the string representation
8250 func (s CompletedMultipartUpload) GoString() string {
8254 // SetParts sets the Parts field's value.
8255 func (s *CompletedMultipartUpload) SetParts(v []*CompletedPart) *CompletedMultipartUpload {
8260 type CompletedPart struct {
8261 _ struct{} `type:"structure"`
8263 // Entity tag returned when the part was uploaded.
8264 ETag *string `type:"string"`
8266 // Part number that identifies the part. This is a positive integer between
8268 PartNumber *int64 `type:"integer"`
8271 // String returns the string representation
8272 func (s CompletedPart) String() string {
8273 return awsutil.Prettify(s)
8276 // GoString returns the string representation
8277 func (s CompletedPart) GoString() string {
8281 // SetETag sets the ETag field's value.
8282 func (s *CompletedPart) SetETag(v string) *CompletedPart {
8287 // SetPartNumber sets the PartNumber field's value.
8288 func (s *CompletedPart) SetPartNumber(v int64) *CompletedPart {
8293 type Condition struct {
8294 _ struct{} `type:"structure"`
8296 // The HTTP error code when the redirect is applied. In the event of an error,
8297 // if the error code equals this value, then the specified redirect is applied.
8298 // Required when parent element Condition is specified and sibling KeyPrefixEquals
8299 // is not specified. If both are specified, then both must be true for the redirect
8301 HttpErrorCodeReturnedEquals *string `type:"string"`
8303 // The object key name prefix when the redirect is applied. For example, to
8304 // redirect requests for ExamplePage.html, the key prefix will be ExamplePage.html.
8305 // To redirect request for all pages with the prefix docs/, the key prefix will
8306 // be /docs, which identifies all objects in the docs/ folder. Required when
8307 // the parent element Condition is specified and sibling HttpErrorCodeReturnedEquals
8308 // is not specified. If both conditions are specified, both must be true for
8309 // the redirect to be applied.
8310 KeyPrefixEquals *string `type:"string"`
8313 // String returns the string representation
8314 func (s Condition) String() string {
8315 return awsutil.Prettify(s)
8318 // GoString returns the string representation
8319 func (s Condition) GoString() string {
8323 // SetHttpErrorCodeReturnedEquals sets the HttpErrorCodeReturnedEquals field's value.
8324 func (s *Condition) SetHttpErrorCodeReturnedEquals(v string) *Condition {
8325 s.HttpErrorCodeReturnedEquals = &v
8329 // SetKeyPrefixEquals sets the KeyPrefixEquals field's value.
8330 func (s *Condition) SetKeyPrefixEquals(v string) *Condition {
8331 s.KeyPrefixEquals = &v
8335 type ContinuationEvent struct {
8336 _ struct{} `locationName:"ContinuationEvent" type:"structure"`
8339 // String returns the string representation
8340 func (s ContinuationEvent) String() string {
8341 return awsutil.Prettify(s)
8344 // GoString returns the string representation
8345 func (s ContinuationEvent) GoString() string {
8349 // The ContinuationEvent is and event in the SelectObjectContentEventStream group of events.
8350 func (s *ContinuationEvent) eventSelectObjectContentEventStream() {}
8352 // UnmarshalEvent unmarshals the EventStream Message into the ContinuationEvent value.
8353 // This method is only used internally within the SDK's EventStream handling.
8354 func (s *ContinuationEvent) UnmarshalEvent(
8355 payloadUnmarshaler protocol.PayloadUnmarshaler,
8356 msg eventstream.Message,
8361 type CopyObjectInput struct {
8362 _ struct{} `type:"structure"`
8364 // The canned ACL to apply to the object.
8365 ACL *string `location:"header" locationName:"x-amz-acl" type:"string" enum:"ObjectCannedACL"`
8367 // Bucket is a required field
8368 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
8370 // Specifies caching behavior along the request/reply chain.
8371 CacheControl *string `location:"header" locationName:"Cache-Control" type:"string"`
8373 // Specifies presentational information for the object.
8374 ContentDisposition *string `location:"header" locationName:"Content-Disposition" type:"string"`
8376 // Specifies what content encodings have been applied to the object and thus
8377 // what decoding mechanisms must be applied to obtain the media-type referenced
8378 // by the Content-Type header field.
8379 ContentEncoding *string `location:"header" locationName:"Content-Encoding" type:"string"`
8381 // The language the content is in.
8382 ContentLanguage *string `location:"header" locationName:"Content-Language" type:"string"`
8384 // A standard MIME type describing the format of the object data.
8385 ContentType *string `location:"header" locationName:"Content-Type" type:"string"`
8387 // The name of the source bucket and key name of the source object, separated
8388 // by a slash (/). Must be URL-encoded.
8390 // CopySource is a required field
8391 CopySource *string `location:"header" locationName:"x-amz-copy-source" type:"string" required:"true"`
8393 // Copies the object if its entity tag (ETag) matches the specified tag.
8394 CopySourceIfMatch *string `location:"header" locationName:"x-amz-copy-source-if-match" type:"string"`
8396 // Copies the object if it has been modified since the specified time.
8397 CopySourceIfModifiedSince *time.Time `location:"header" locationName:"x-amz-copy-source-if-modified-since" type:"timestamp"`
8399 // Copies the object if its entity tag (ETag) is different than the specified
8401 CopySourceIfNoneMatch *string `location:"header" locationName:"x-amz-copy-source-if-none-match" type:"string"`
8403 // Copies the object if it hasn't been modified since the specified time.
8404 CopySourceIfUnmodifiedSince *time.Time `location:"header" locationName:"x-amz-copy-source-if-unmodified-since" type:"timestamp"`
8406 // Specifies the algorithm to use when decrypting the source object (e.g., AES256).
8407 CopySourceSSECustomerAlgorithm *string `location:"header" locationName:"x-amz-copy-source-server-side-encryption-customer-algorithm" type:"string"`
8409 // Specifies the customer-provided encryption key for Amazon S3 to use to decrypt
8410 // the source object. The encryption key provided in this header must be one
8411 // that was used when the source object was created.
8412 CopySourceSSECustomerKey *string `location:"header" locationName:"x-amz-copy-source-server-side-encryption-customer-key" type:"string" sensitive:"true"`
8414 // Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321.
8415 // Amazon S3 uses this header for a message integrity check to ensure the encryption
8416 // key was transmitted without error.
8417 CopySourceSSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-copy-source-server-side-encryption-customer-key-MD5" type:"string"`
8419 // The date and time at which the object is no longer cacheable.
8420 Expires *time.Time `location:"header" locationName:"Expires" type:"timestamp"`
8422 // Gives the grantee READ, READ_ACP, and WRITE_ACP permissions on the object.
8423 GrantFullControl *string `location:"header" locationName:"x-amz-grant-full-control" type:"string"`
8425 // Allows grantee to read the object data and its metadata.
8426 GrantRead *string `location:"header" locationName:"x-amz-grant-read" type:"string"`
8428 // Allows grantee to read the object ACL.
8429 GrantReadACP *string `location:"header" locationName:"x-amz-grant-read-acp" type:"string"`
8431 // Allows grantee to write the ACL for the applicable object.
8432 GrantWriteACP *string `location:"header" locationName:"x-amz-grant-write-acp" type:"string"`
8434 // Key is a required field
8435 Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"`
8437 // A map of metadata to store with the object in S3.
8438 Metadata map[string]*string `location:"headers" locationName:"x-amz-meta-" type:"map"`
8440 // Specifies whether the metadata is copied from the source object or replaced
8441 // with metadata provided in the request.
8442 MetadataDirective *string `location:"header" locationName:"x-amz-metadata-directive" type:"string" enum:"MetadataDirective"`
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"`
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"`
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"`
8453 // Confirms that the requester knows that she or he will be charged for the
8454 // request. Bucket owners need not specify this parameter in their requests.
8455 // Documentation on downloading objects from requester pays buckets can be found
8456 // at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
8457 RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
8459 // Specifies the algorithm to use to when encrypting the object (e.g., AES256).
8460 SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"`
8462 // Specifies the customer-provided encryption key for Amazon S3 to use in encrypting
8463 // data. This value is used to store the object and then it is discarded; Amazon
8464 // does not store the encryption key. The key must be appropriate for use with
8465 // the algorithm specified in the x-amz-server-side​-encryption​-customer-algorithm
8467 SSECustomerKey *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key" type:"string" sensitive:"true"`
8469 // Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321.
8470 // Amazon S3 uses this header for a message integrity check to ensure the encryption
8471 // key was transmitted without error.
8472 SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"`
8474 // Specifies the AWS KMS key ID to use for object encryption. All GET and PUT
8475 // requests for an object protected by AWS KMS will fail if not made via SSL
8476 // or using SigV4. Documentation on configuring any of the officially supported
8477 // AWS SDKs and CLI can be found at http://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version
8478 SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string" sensitive:"true"`
8480 // The Server-side encryption algorithm used when storing this object in S3
8481 // (e.g., AES256, aws:kms).
8482 ServerSideEncryption *string `location:"header" locationName:"x-amz-server-side-encryption" type:"string" enum:"ServerSideEncryption"`
8484 // The type of storage to use for the object. Defaults to 'STANDARD'.
8485 StorageClass *string `location:"header" locationName:"x-amz-storage-class" type:"string" enum:"StorageClass"`
8487 // The tag-set for the object destination object this value must be used in
8488 // conjunction with the TaggingDirective. The tag-set must be encoded as URL
8490 Tagging *string `location:"header" locationName:"x-amz-tagging" type:"string"`
8492 // Specifies whether the object tag-set are copied from the source object or
8493 // replaced with tag-set provided in the request.
8494 TaggingDirective *string `location:"header" locationName:"x-amz-tagging-directive" type:"string" enum:"TaggingDirective"`
8496 // If the bucket is configured as a website, redirects requests for this object
8497 // to another object in the same bucket or to an external URL. Amazon S3 stores
8498 // the value of this header in the object metadata.
8499 WebsiteRedirectLocation *string `location:"header" locationName:"x-amz-website-redirect-location" type:"string"`
8502 // String returns the string representation
8503 func (s CopyObjectInput) String() string {
8504 return awsutil.Prettify(s)
8507 // GoString returns the string representation
8508 func (s CopyObjectInput) GoString() string {
8512 // Validate inspects the fields of the type to determine if they are valid.
8513 func (s *CopyObjectInput) Validate() error {
8514 invalidParams := request.ErrInvalidParams{Context: "CopyObjectInput"}
8515 if s.Bucket == nil {
8516 invalidParams.Add(request.NewErrParamRequired("Bucket"))
8518 if s.Bucket != nil && len(*s.Bucket) < 1 {
8519 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
8521 if s.CopySource == nil {
8522 invalidParams.Add(request.NewErrParamRequired("CopySource"))
8525 invalidParams.Add(request.NewErrParamRequired("Key"))
8527 if s.Key != nil && len(*s.Key) < 1 {
8528 invalidParams.Add(request.NewErrParamMinLen("Key", 1))
8531 if invalidParams.Len() > 0 {
8532 return invalidParams
8537 // SetACL sets the ACL field's value.
8538 func (s *CopyObjectInput) SetACL(v string) *CopyObjectInput {
8543 // SetBucket sets the Bucket field's value.
8544 func (s *CopyObjectInput) SetBucket(v string) *CopyObjectInput {
8549 func (s *CopyObjectInput) getBucket() (v string) {
8550 if s.Bucket == nil {
8556 // SetCacheControl sets the CacheControl field's value.
8557 func (s *CopyObjectInput) SetCacheControl(v string) *CopyObjectInput {
8562 // SetContentDisposition sets the ContentDisposition field's value.
8563 func (s *CopyObjectInput) SetContentDisposition(v string) *CopyObjectInput {
8564 s.ContentDisposition = &v
8568 // SetContentEncoding sets the ContentEncoding field's value.
8569 func (s *CopyObjectInput) SetContentEncoding(v string) *CopyObjectInput {
8570 s.ContentEncoding = &v
8574 // SetContentLanguage sets the ContentLanguage field's value.
8575 func (s *CopyObjectInput) SetContentLanguage(v string) *CopyObjectInput {
8576 s.ContentLanguage = &v
8580 // SetContentType sets the ContentType field's value.
8581 func (s *CopyObjectInput) SetContentType(v string) *CopyObjectInput {
8586 // SetCopySource sets the CopySource field's value.
8587 func (s *CopyObjectInput) SetCopySource(v string) *CopyObjectInput {
8592 // SetCopySourceIfMatch sets the CopySourceIfMatch field's value.
8593 func (s *CopyObjectInput) SetCopySourceIfMatch(v string) *CopyObjectInput {
8594 s.CopySourceIfMatch = &v
8598 // SetCopySourceIfModifiedSince sets the CopySourceIfModifiedSince field's value.
8599 func (s *CopyObjectInput) SetCopySourceIfModifiedSince(v time.Time) *CopyObjectInput {
8600 s.CopySourceIfModifiedSince = &v
8604 // SetCopySourceIfNoneMatch sets the CopySourceIfNoneMatch field's value.
8605 func (s *CopyObjectInput) SetCopySourceIfNoneMatch(v string) *CopyObjectInput {
8606 s.CopySourceIfNoneMatch = &v
8610 // SetCopySourceIfUnmodifiedSince sets the CopySourceIfUnmodifiedSince field's value.
8611 func (s *CopyObjectInput) SetCopySourceIfUnmodifiedSince(v time.Time) *CopyObjectInput {
8612 s.CopySourceIfUnmodifiedSince = &v
8616 // SetCopySourceSSECustomerAlgorithm sets the CopySourceSSECustomerAlgorithm field's value.
8617 func (s *CopyObjectInput) SetCopySourceSSECustomerAlgorithm(v string) *CopyObjectInput {
8618 s.CopySourceSSECustomerAlgorithm = &v
8622 // SetCopySourceSSECustomerKey sets the CopySourceSSECustomerKey field's value.
8623 func (s *CopyObjectInput) SetCopySourceSSECustomerKey(v string) *CopyObjectInput {
8624 s.CopySourceSSECustomerKey = &v
8628 func (s *CopyObjectInput) getCopySourceSSECustomerKey() (v string) {
8629 if s.CopySourceSSECustomerKey == nil {
8632 return *s.CopySourceSSECustomerKey
8635 // SetCopySourceSSECustomerKeyMD5 sets the CopySourceSSECustomerKeyMD5 field's value.
8636 func (s *CopyObjectInput) SetCopySourceSSECustomerKeyMD5(v string) *CopyObjectInput {
8637 s.CopySourceSSECustomerKeyMD5 = &v
8641 // SetExpires sets the Expires field's value.
8642 func (s *CopyObjectInput) SetExpires(v time.Time) *CopyObjectInput {
8647 // SetGrantFullControl sets the GrantFullControl field's value.
8648 func (s *CopyObjectInput) SetGrantFullControl(v string) *CopyObjectInput {
8649 s.GrantFullControl = &v
8653 // SetGrantRead sets the GrantRead field's value.
8654 func (s *CopyObjectInput) SetGrantRead(v string) *CopyObjectInput {
8659 // SetGrantReadACP sets the GrantReadACP field's value.
8660 func (s *CopyObjectInput) SetGrantReadACP(v string) *CopyObjectInput {
8665 // SetGrantWriteACP sets the GrantWriteACP field's value.
8666 func (s *CopyObjectInput) SetGrantWriteACP(v string) *CopyObjectInput {
8667 s.GrantWriteACP = &v
8671 // SetKey sets the Key field's value.
8672 func (s *CopyObjectInput) SetKey(v string) *CopyObjectInput {
8677 // SetMetadata sets the Metadata field's value.
8678 func (s *CopyObjectInput) SetMetadata(v map[string]*string) *CopyObjectInput {
8683 // SetMetadataDirective sets the MetadataDirective field's value.
8684 func (s *CopyObjectInput) SetMetadataDirective(v string) *CopyObjectInput {
8685 s.MetadataDirective = &v
8689 // SetObjectLockLegalHoldStatus sets the ObjectLockLegalHoldStatus field's value.
8690 func (s *CopyObjectInput) SetObjectLockLegalHoldStatus(v string) *CopyObjectInput {
8691 s.ObjectLockLegalHoldStatus = &v
8695 // SetObjectLockMode sets the ObjectLockMode field's value.
8696 func (s *CopyObjectInput) SetObjectLockMode(v string) *CopyObjectInput {
8697 s.ObjectLockMode = &v
8701 // SetObjectLockRetainUntilDate sets the ObjectLockRetainUntilDate field's value.
8702 func (s *CopyObjectInput) SetObjectLockRetainUntilDate(v time.Time) *CopyObjectInput {
8703 s.ObjectLockRetainUntilDate = &v
8707 // SetRequestPayer sets the RequestPayer field's value.
8708 func (s *CopyObjectInput) SetRequestPayer(v string) *CopyObjectInput {
8713 // SetSSECustomerAlgorithm sets the SSECustomerAlgorithm field's value.
8714 func (s *CopyObjectInput) SetSSECustomerAlgorithm(v string) *CopyObjectInput {
8715 s.SSECustomerAlgorithm = &v
8719 // SetSSECustomerKey sets the SSECustomerKey field's value.
8720 func (s *CopyObjectInput) SetSSECustomerKey(v string) *CopyObjectInput {
8721 s.SSECustomerKey = &v
8725 func (s *CopyObjectInput) getSSECustomerKey() (v string) {
8726 if s.SSECustomerKey == nil {
8729 return *s.SSECustomerKey
8732 // SetSSECustomerKeyMD5 sets the SSECustomerKeyMD5 field's value.
8733 func (s *CopyObjectInput) SetSSECustomerKeyMD5(v string) *CopyObjectInput {
8734 s.SSECustomerKeyMD5 = &v
8738 // SetSSEKMSKeyId sets the SSEKMSKeyId field's value.
8739 func (s *CopyObjectInput) SetSSEKMSKeyId(v string) *CopyObjectInput {
8744 // SetServerSideEncryption sets the ServerSideEncryption field's value.
8745 func (s *CopyObjectInput) SetServerSideEncryption(v string) *CopyObjectInput {
8746 s.ServerSideEncryption = &v
8750 // SetStorageClass sets the StorageClass field's value.
8751 func (s *CopyObjectInput) SetStorageClass(v string) *CopyObjectInput {
8756 // SetTagging sets the Tagging field's value.
8757 func (s *CopyObjectInput) SetTagging(v string) *CopyObjectInput {
8762 // SetTaggingDirective sets the TaggingDirective field's value.
8763 func (s *CopyObjectInput) SetTaggingDirective(v string) *CopyObjectInput {
8764 s.TaggingDirective = &v
8768 // SetWebsiteRedirectLocation sets the WebsiteRedirectLocation field's value.
8769 func (s *CopyObjectInput) SetWebsiteRedirectLocation(v string) *CopyObjectInput {
8770 s.WebsiteRedirectLocation = &v
8774 type CopyObjectOutput struct {
8775 _ struct{} `type:"structure" payload:"CopyObjectResult"`
8777 CopyObjectResult *CopyObjectResult `type:"structure"`
8779 CopySourceVersionId *string `location:"header" locationName:"x-amz-copy-source-version-id" type:"string"`
8781 // If the object expiration is configured, the response includes this header.
8782 Expiration *string `location:"header" locationName:"x-amz-expiration" type:"string"`
8784 // If present, indicates that the requester was successfully charged for the
8786 RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"`
8788 // If server-side encryption with a customer-provided encryption key was requested,
8789 // the response will include this header confirming the encryption algorithm
8791 SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"`
8793 // If server-side encryption with a customer-provided encryption key was requested,
8794 // the response will include this header to provide round trip message integrity
8795 // verification of the customer-provided encryption key.
8796 SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"`
8798 // If present, specifies the ID of the AWS Key Management Service (KMS) master
8799 // encryption key that was used for the object.
8800 SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string" sensitive:"true"`
8802 // The Server-side encryption algorithm used when storing this object in S3
8803 // (e.g., AES256, aws:kms).
8804 ServerSideEncryption *string `location:"header" locationName:"x-amz-server-side-encryption" type:"string" enum:"ServerSideEncryption"`
8806 // Version ID of the newly created copy.
8807 VersionId *string `location:"header" locationName:"x-amz-version-id" type:"string"`
8810 // String returns the string representation
8811 func (s CopyObjectOutput) String() string {
8812 return awsutil.Prettify(s)
8815 // GoString returns the string representation
8816 func (s CopyObjectOutput) GoString() string {
8820 // SetCopyObjectResult sets the CopyObjectResult field's value.
8821 func (s *CopyObjectOutput) SetCopyObjectResult(v *CopyObjectResult) *CopyObjectOutput {
8822 s.CopyObjectResult = v
8826 // SetCopySourceVersionId sets the CopySourceVersionId field's value.
8827 func (s *CopyObjectOutput) SetCopySourceVersionId(v string) *CopyObjectOutput {
8828 s.CopySourceVersionId = &v
8832 // SetExpiration sets the Expiration field's value.
8833 func (s *CopyObjectOutput) SetExpiration(v string) *CopyObjectOutput {
8838 // SetRequestCharged sets the RequestCharged field's value.
8839 func (s *CopyObjectOutput) SetRequestCharged(v string) *CopyObjectOutput {
8840 s.RequestCharged = &v
8844 // SetSSECustomerAlgorithm sets the SSECustomerAlgorithm field's value.
8845 func (s *CopyObjectOutput) SetSSECustomerAlgorithm(v string) *CopyObjectOutput {
8846 s.SSECustomerAlgorithm = &v
8850 // SetSSECustomerKeyMD5 sets the SSECustomerKeyMD5 field's value.
8851 func (s *CopyObjectOutput) SetSSECustomerKeyMD5(v string) *CopyObjectOutput {
8852 s.SSECustomerKeyMD5 = &v
8856 // SetSSEKMSKeyId sets the SSEKMSKeyId field's value.
8857 func (s *CopyObjectOutput) SetSSEKMSKeyId(v string) *CopyObjectOutput {
8862 // SetServerSideEncryption sets the ServerSideEncryption field's value.
8863 func (s *CopyObjectOutput) SetServerSideEncryption(v string) *CopyObjectOutput {
8864 s.ServerSideEncryption = &v
8868 // SetVersionId sets the VersionId field's value.
8869 func (s *CopyObjectOutput) SetVersionId(v string) *CopyObjectOutput {
8874 type CopyObjectResult struct {
8875 _ struct{} `type:"structure"`
8877 ETag *string `type:"string"`
8879 LastModified *time.Time `type:"timestamp"`
8882 // String returns the string representation
8883 func (s CopyObjectResult) String() string {
8884 return awsutil.Prettify(s)
8887 // GoString returns the string representation
8888 func (s CopyObjectResult) GoString() string {
8892 // SetETag sets the ETag field's value.
8893 func (s *CopyObjectResult) SetETag(v string) *CopyObjectResult {
8898 // SetLastModified sets the LastModified field's value.
8899 func (s *CopyObjectResult) SetLastModified(v time.Time) *CopyObjectResult {
8904 type CopyPartResult struct {
8905 _ struct{} `type:"structure"`
8907 // Entity tag of the object.
8908 ETag *string `type:"string"`
8910 // Date and time at which the object was uploaded.
8911 LastModified *time.Time `type:"timestamp"`
8914 // String returns the string representation
8915 func (s CopyPartResult) String() string {
8916 return awsutil.Prettify(s)
8919 // GoString returns the string representation
8920 func (s CopyPartResult) GoString() string {
8924 // SetETag sets the ETag field's value.
8925 func (s *CopyPartResult) SetETag(v string) *CopyPartResult {
8930 // SetLastModified sets the LastModified field's value.
8931 func (s *CopyPartResult) SetLastModified(v time.Time) *CopyPartResult {
8936 type CreateBucketConfiguration struct {
8937 _ struct{} `type:"structure"`
8939 // Specifies the region where the bucket will be created. If you don't specify
8940 // a region, the bucket is created in US East (N. Virginia) Region (us-east-1).
8941 LocationConstraint *string `type:"string" enum:"BucketLocationConstraint"`
8944 // String returns the string representation
8945 func (s CreateBucketConfiguration) String() string {
8946 return awsutil.Prettify(s)
8949 // GoString returns the string representation
8950 func (s CreateBucketConfiguration) GoString() string {
8954 // SetLocationConstraint sets the LocationConstraint field's value.
8955 func (s *CreateBucketConfiguration) SetLocationConstraint(v string) *CreateBucketConfiguration {
8956 s.LocationConstraint = &v
8960 type CreateBucketInput struct {
8961 _ struct{} `type:"structure" payload:"CreateBucketConfiguration"`
8963 // The canned ACL to apply to the bucket.
8964 ACL *string `location:"header" locationName:"x-amz-acl" type:"string" enum:"BucketCannedACL"`
8966 // Bucket is a required field
8967 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
8969 CreateBucketConfiguration *CreateBucketConfiguration `locationName:"CreateBucketConfiguration" type:"structure" xmlURI:"http://s3.amazonaws.com/doc/2006-03-01/"`
8971 // Allows grantee the read, write, read ACP, and write ACP permissions on the
8973 GrantFullControl *string `location:"header" locationName:"x-amz-grant-full-control" type:"string"`
8975 // Allows grantee to list the objects in the bucket.
8976 GrantRead *string `location:"header" locationName:"x-amz-grant-read" type:"string"`
8978 // Allows grantee to read the bucket ACL.
8979 GrantReadACP *string `location:"header" locationName:"x-amz-grant-read-acp" type:"string"`
8981 // Allows grantee to create, overwrite, and delete any object in the bucket.
8982 GrantWrite *string `location:"header" locationName:"x-amz-grant-write" type:"string"`
8984 // Allows grantee to write the ACL for the applicable bucket.
8985 GrantWriteACP *string `location:"header" locationName:"x-amz-grant-write-acp" type:"string"`
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"`
8991 // String returns the string representation
8992 func (s CreateBucketInput) String() string {
8993 return awsutil.Prettify(s)
8996 // GoString returns the string representation
8997 func (s CreateBucketInput) GoString() string {
9001 // Validate inspects the fields of the type to determine if they are valid.
9002 func (s *CreateBucketInput) Validate() error {
9003 invalidParams := request.ErrInvalidParams{Context: "CreateBucketInput"}
9004 if s.Bucket == nil {
9005 invalidParams.Add(request.NewErrParamRequired("Bucket"))
9007 if s.Bucket != nil && len(*s.Bucket) < 1 {
9008 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
9011 if invalidParams.Len() > 0 {
9012 return invalidParams
9017 // SetACL sets the ACL field's value.
9018 func (s *CreateBucketInput) SetACL(v string) *CreateBucketInput {
9023 // SetBucket sets the Bucket field's value.
9024 func (s *CreateBucketInput) SetBucket(v string) *CreateBucketInput {
9029 func (s *CreateBucketInput) getBucket() (v string) {
9030 if s.Bucket == nil {
9036 // SetCreateBucketConfiguration sets the CreateBucketConfiguration field's value.
9037 func (s *CreateBucketInput) SetCreateBucketConfiguration(v *CreateBucketConfiguration) *CreateBucketInput {
9038 s.CreateBucketConfiguration = v
9042 // SetGrantFullControl sets the GrantFullControl field's value.
9043 func (s *CreateBucketInput) SetGrantFullControl(v string) *CreateBucketInput {
9044 s.GrantFullControl = &v
9048 // SetGrantRead sets the GrantRead field's value.
9049 func (s *CreateBucketInput) SetGrantRead(v string) *CreateBucketInput {
9054 // SetGrantReadACP sets the GrantReadACP field's value.
9055 func (s *CreateBucketInput) SetGrantReadACP(v string) *CreateBucketInput {
9060 // SetGrantWrite sets the GrantWrite field's value.
9061 func (s *CreateBucketInput) SetGrantWrite(v string) *CreateBucketInput {
9066 // SetGrantWriteACP sets the GrantWriteACP field's value.
9067 func (s *CreateBucketInput) SetGrantWriteACP(v string) *CreateBucketInput {
9068 s.GrantWriteACP = &v
9072 // SetObjectLockEnabledForBucket sets the ObjectLockEnabledForBucket field's value.
9073 func (s *CreateBucketInput) SetObjectLockEnabledForBucket(v bool) *CreateBucketInput {
9074 s.ObjectLockEnabledForBucket = &v
9078 type CreateBucketOutput struct {
9079 _ struct{} `type:"structure"`
9081 Location *string `location:"header" locationName:"Location" type:"string"`
9084 // String returns the string representation
9085 func (s CreateBucketOutput) String() string {
9086 return awsutil.Prettify(s)
9089 // GoString returns the string representation
9090 func (s CreateBucketOutput) GoString() string {
9094 // SetLocation sets the Location field's value.
9095 func (s *CreateBucketOutput) SetLocation(v string) *CreateBucketOutput {
9100 type CreateMultipartUploadInput struct {
9101 _ struct{} `type:"structure"`
9103 // The canned ACL to apply to the object.
9104 ACL *string `location:"header" locationName:"x-amz-acl" type:"string" enum:"ObjectCannedACL"`
9106 // Bucket is a required field
9107 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
9109 // Specifies caching behavior along the request/reply chain.
9110 CacheControl *string `location:"header" locationName:"Cache-Control" type:"string"`
9112 // Specifies presentational information for the object.
9113 ContentDisposition *string `location:"header" locationName:"Content-Disposition" type:"string"`
9115 // Specifies what content encodings have been applied to the object and thus
9116 // what decoding mechanisms must be applied to obtain the media-type referenced
9117 // by the Content-Type header field.
9118 ContentEncoding *string `location:"header" locationName:"Content-Encoding" type:"string"`
9120 // The language the content is in.
9121 ContentLanguage *string `location:"header" locationName:"Content-Language" type:"string"`
9123 // A standard MIME type describing the format of the object data.
9124 ContentType *string `location:"header" locationName:"Content-Type" type:"string"`
9126 // The date and time at which the object is no longer cacheable.
9127 Expires *time.Time `location:"header" locationName:"Expires" type:"timestamp"`
9129 // Gives the grantee READ, READ_ACP, and WRITE_ACP permissions on the object.
9130 GrantFullControl *string `location:"header" locationName:"x-amz-grant-full-control" type:"string"`
9132 // Allows grantee to read the object data and its metadata.
9133 GrantRead *string `location:"header" locationName:"x-amz-grant-read" type:"string"`
9135 // Allows grantee to read the object ACL.
9136 GrantReadACP *string `location:"header" locationName:"x-amz-grant-read-acp" type:"string"`
9138 // Allows grantee to write the ACL for the applicable object.
9139 GrantWriteACP *string `location:"header" locationName:"x-amz-grant-write-acp" type:"string"`
9141 // Key is a required field
9142 Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"`
9144 // A map of metadata to store with the object in S3.
9145 Metadata map[string]*string `location:"headers" locationName:"x-amz-meta-" type:"map"`
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"`
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"`
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"`
9156 // Confirms that the requester knows that she or he will be charged for the
9157 // request. Bucket owners need not specify this parameter in their requests.
9158 // Documentation on downloading objects from requester pays buckets can be found
9159 // at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
9160 RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
9162 // Specifies the algorithm to use to when encrypting the object (e.g., AES256).
9163 SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"`
9165 // Specifies the customer-provided encryption key for Amazon S3 to use in encrypting
9166 // data. This value is used to store the object and then it is discarded; Amazon
9167 // does not store the encryption key. The key must be appropriate for use with
9168 // the algorithm specified in the x-amz-server-side​-encryption​-customer-algorithm
9170 SSECustomerKey *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key" type:"string" sensitive:"true"`
9172 // Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321.
9173 // Amazon S3 uses this header for a message integrity check to ensure the encryption
9174 // key was transmitted without error.
9175 SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"`
9177 // Specifies the AWS KMS key ID to use for object encryption. All GET and PUT
9178 // requests for an object protected by AWS KMS will fail if not made via SSL
9179 // or using SigV4. Documentation on configuring any of the officially supported
9180 // AWS SDKs and CLI can be found at http://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version
9181 SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string" sensitive:"true"`
9183 // The Server-side encryption algorithm used when storing this object in S3
9184 // (e.g., AES256, aws:kms).
9185 ServerSideEncryption *string `location:"header" locationName:"x-amz-server-side-encryption" type:"string" enum:"ServerSideEncryption"`
9187 // The type of storage to use for the object. Defaults to 'STANDARD'.
9188 StorageClass *string `location:"header" locationName:"x-amz-storage-class" type:"string" enum:"StorageClass"`
9190 // The tag-set for the object. The tag-set must be encoded as URL Query parameters
9191 Tagging *string `location:"header" locationName:"x-amz-tagging" type:"string"`
9193 // If the bucket is configured as a website, redirects requests for this object
9194 // to another object in the same bucket or to an external URL. Amazon S3 stores
9195 // the value of this header in the object metadata.
9196 WebsiteRedirectLocation *string `location:"header" locationName:"x-amz-website-redirect-location" type:"string"`
9199 // String returns the string representation
9200 func (s CreateMultipartUploadInput) String() string {
9201 return awsutil.Prettify(s)
9204 // GoString returns the string representation
9205 func (s CreateMultipartUploadInput) GoString() string {
9209 // Validate inspects the fields of the type to determine if they are valid.
9210 func (s *CreateMultipartUploadInput) Validate() error {
9211 invalidParams := request.ErrInvalidParams{Context: "CreateMultipartUploadInput"}
9212 if s.Bucket == nil {
9213 invalidParams.Add(request.NewErrParamRequired("Bucket"))
9215 if s.Bucket != nil && len(*s.Bucket) < 1 {
9216 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
9219 invalidParams.Add(request.NewErrParamRequired("Key"))
9221 if s.Key != nil && len(*s.Key) < 1 {
9222 invalidParams.Add(request.NewErrParamMinLen("Key", 1))
9225 if invalidParams.Len() > 0 {
9226 return invalidParams
9231 // SetACL sets the ACL field's value.
9232 func (s *CreateMultipartUploadInput) SetACL(v string) *CreateMultipartUploadInput {
9237 // SetBucket sets the Bucket field's value.
9238 func (s *CreateMultipartUploadInput) SetBucket(v string) *CreateMultipartUploadInput {
9243 func (s *CreateMultipartUploadInput) getBucket() (v string) {
9244 if s.Bucket == nil {
9250 // SetCacheControl sets the CacheControl field's value.
9251 func (s *CreateMultipartUploadInput) SetCacheControl(v string) *CreateMultipartUploadInput {
9256 // SetContentDisposition sets the ContentDisposition field's value.
9257 func (s *CreateMultipartUploadInput) SetContentDisposition(v string) *CreateMultipartUploadInput {
9258 s.ContentDisposition = &v
9262 // SetContentEncoding sets the ContentEncoding field's value.
9263 func (s *CreateMultipartUploadInput) SetContentEncoding(v string) *CreateMultipartUploadInput {
9264 s.ContentEncoding = &v
9268 // SetContentLanguage sets the ContentLanguage field's value.
9269 func (s *CreateMultipartUploadInput) SetContentLanguage(v string) *CreateMultipartUploadInput {
9270 s.ContentLanguage = &v
9274 // SetContentType sets the ContentType field's value.
9275 func (s *CreateMultipartUploadInput) SetContentType(v string) *CreateMultipartUploadInput {
9280 // SetExpires sets the Expires field's value.
9281 func (s *CreateMultipartUploadInput) SetExpires(v time.Time) *CreateMultipartUploadInput {
9286 // SetGrantFullControl sets the GrantFullControl field's value.
9287 func (s *CreateMultipartUploadInput) SetGrantFullControl(v string) *CreateMultipartUploadInput {
9288 s.GrantFullControl = &v
9292 // SetGrantRead sets the GrantRead field's value.
9293 func (s *CreateMultipartUploadInput) SetGrantRead(v string) *CreateMultipartUploadInput {
9298 // SetGrantReadACP sets the GrantReadACP field's value.
9299 func (s *CreateMultipartUploadInput) SetGrantReadACP(v string) *CreateMultipartUploadInput {
9304 // SetGrantWriteACP sets the GrantWriteACP field's value.
9305 func (s *CreateMultipartUploadInput) SetGrantWriteACP(v string) *CreateMultipartUploadInput {
9306 s.GrantWriteACP = &v
9310 // SetKey sets the Key field's value.
9311 func (s *CreateMultipartUploadInput) SetKey(v string) *CreateMultipartUploadInput {
9316 // SetMetadata sets the Metadata field's value.
9317 func (s *CreateMultipartUploadInput) SetMetadata(v map[string]*string) *CreateMultipartUploadInput {
9322 // SetObjectLockLegalHoldStatus sets the ObjectLockLegalHoldStatus field's value.
9323 func (s *CreateMultipartUploadInput) SetObjectLockLegalHoldStatus(v string) *CreateMultipartUploadInput {
9324 s.ObjectLockLegalHoldStatus = &v
9328 // SetObjectLockMode sets the ObjectLockMode field's value.
9329 func (s *CreateMultipartUploadInput) SetObjectLockMode(v string) *CreateMultipartUploadInput {
9330 s.ObjectLockMode = &v
9334 // SetObjectLockRetainUntilDate sets the ObjectLockRetainUntilDate field's value.
9335 func (s *CreateMultipartUploadInput) SetObjectLockRetainUntilDate(v time.Time) *CreateMultipartUploadInput {
9336 s.ObjectLockRetainUntilDate = &v
9340 // SetRequestPayer sets the RequestPayer field's value.
9341 func (s *CreateMultipartUploadInput) SetRequestPayer(v string) *CreateMultipartUploadInput {
9346 // SetSSECustomerAlgorithm sets the SSECustomerAlgorithm field's value.
9347 func (s *CreateMultipartUploadInput) SetSSECustomerAlgorithm(v string) *CreateMultipartUploadInput {
9348 s.SSECustomerAlgorithm = &v
9352 // SetSSECustomerKey sets the SSECustomerKey field's value.
9353 func (s *CreateMultipartUploadInput) SetSSECustomerKey(v string) *CreateMultipartUploadInput {
9354 s.SSECustomerKey = &v
9358 func (s *CreateMultipartUploadInput) getSSECustomerKey() (v string) {
9359 if s.SSECustomerKey == nil {
9362 return *s.SSECustomerKey
9365 // SetSSECustomerKeyMD5 sets the SSECustomerKeyMD5 field's value.
9366 func (s *CreateMultipartUploadInput) SetSSECustomerKeyMD5(v string) *CreateMultipartUploadInput {
9367 s.SSECustomerKeyMD5 = &v
9371 // SetSSEKMSKeyId sets the SSEKMSKeyId field's value.
9372 func (s *CreateMultipartUploadInput) SetSSEKMSKeyId(v string) *CreateMultipartUploadInput {
9377 // SetServerSideEncryption sets the ServerSideEncryption field's value.
9378 func (s *CreateMultipartUploadInput) SetServerSideEncryption(v string) *CreateMultipartUploadInput {
9379 s.ServerSideEncryption = &v
9383 // SetStorageClass sets the StorageClass field's value.
9384 func (s *CreateMultipartUploadInput) SetStorageClass(v string) *CreateMultipartUploadInput {
9389 // SetTagging sets the Tagging field's value.
9390 func (s *CreateMultipartUploadInput) SetTagging(v string) *CreateMultipartUploadInput {
9395 // SetWebsiteRedirectLocation sets the WebsiteRedirectLocation field's value.
9396 func (s *CreateMultipartUploadInput) SetWebsiteRedirectLocation(v string) *CreateMultipartUploadInput {
9397 s.WebsiteRedirectLocation = &v
9401 type CreateMultipartUploadOutput struct {
9402 _ struct{} `type:"structure"`
9404 // Date when multipart upload will become eligible for abort operation by lifecycle.
9405 AbortDate *time.Time `location:"header" locationName:"x-amz-abort-date" type:"timestamp"`
9407 // Id of the lifecycle rule that makes a multipart upload eligible for abort
9409 AbortRuleId *string `location:"header" locationName:"x-amz-abort-rule-id" type:"string"`
9411 // Name of the bucket to which the multipart upload was initiated.
9412 Bucket *string `locationName:"Bucket" type:"string"`
9414 // Object key for which the multipart upload was initiated.
9415 Key *string `min:"1" type:"string"`
9417 // If present, indicates that the requester was successfully charged for the
9419 RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"`
9421 // If server-side encryption with a customer-provided encryption key was requested,
9422 // the response will include this header confirming the encryption algorithm
9424 SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"`
9426 // If server-side encryption with a customer-provided encryption key was requested,
9427 // the response will include this header to provide round trip message integrity
9428 // verification of the customer-provided encryption key.
9429 SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"`
9431 // If present, specifies the ID of the AWS Key Management Service (KMS) master
9432 // encryption key that was used for the object.
9433 SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string" sensitive:"true"`
9435 // The Server-side encryption algorithm used when storing this object in S3
9436 // (e.g., AES256, aws:kms).
9437 ServerSideEncryption *string `location:"header" locationName:"x-amz-server-side-encryption" type:"string" enum:"ServerSideEncryption"`
9439 // ID for the initiated multipart upload.
9440 UploadId *string `type:"string"`
9443 // String returns the string representation
9444 func (s CreateMultipartUploadOutput) String() string {
9445 return awsutil.Prettify(s)
9448 // GoString returns the string representation
9449 func (s CreateMultipartUploadOutput) GoString() string {
9453 // SetAbortDate sets the AbortDate field's value.
9454 func (s *CreateMultipartUploadOutput) SetAbortDate(v time.Time) *CreateMultipartUploadOutput {
9459 // SetAbortRuleId sets the AbortRuleId field's value.
9460 func (s *CreateMultipartUploadOutput) SetAbortRuleId(v string) *CreateMultipartUploadOutput {
9465 // SetBucket sets the Bucket field's value.
9466 func (s *CreateMultipartUploadOutput) SetBucket(v string) *CreateMultipartUploadOutput {
9471 func (s *CreateMultipartUploadOutput) getBucket() (v string) {
9472 if s.Bucket == nil {
9478 // SetKey sets the Key field's value.
9479 func (s *CreateMultipartUploadOutput) SetKey(v string) *CreateMultipartUploadOutput {
9484 // SetRequestCharged sets the RequestCharged field's value.
9485 func (s *CreateMultipartUploadOutput) SetRequestCharged(v string) *CreateMultipartUploadOutput {
9486 s.RequestCharged = &v
9490 // SetSSECustomerAlgorithm sets the SSECustomerAlgorithm field's value.
9491 func (s *CreateMultipartUploadOutput) SetSSECustomerAlgorithm(v string) *CreateMultipartUploadOutput {
9492 s.SSECustomerAlgorithm = &v
9496 // SetSSECustomerKeyMD5 sets the SSECustomerKeyMD5 field's value.
9497 func (s *CreateMultipartUploadOutput) SetSSECustomerKeyMD5(v string) *CreateMultipartUploadOutput {
9498 s.SSECustomerKeyMD5 = &v
9502 // SetSSEKMSKeyId sets the SSEKMSKeyId field's value.
9503 func (s *CreateMultipartUploadOutput) SetSSEKMSKeyId(v string) *CreateMultipartUploadOutput {
9508 // SetServerSideEncryption sets the ServerSideEncryption field's value.
9509 func (s *CreateMultipartUploadOutput) SetServerSideEncryption(v string) *CreateMultipartUploadOutput {
9510 s.ServerSideEncryption = &v
9514 // SetUploadId sets the UploadId field's value.
9515 func (s *CreateMultipartUploadOutput) SetUploadId(v string) *CreateMultipartUploadOutput {
9520 // The container element for specifying the default Object Lock retention settings
9521 // for new objects placed in the specified bucket.
9522 type DefaultRetention struct {
9523 _ struct{} `type:"structure"`
9525 // The number of days that you want to specify for the default retention period.
9526 Days *int64 `type:"integer"`
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"`
9532 // The number of years that you want to specify for the default retention period.
9533 Years *int64 `type:"integer"`
9536 // String returns the string representation
9537 func (s DefaultRetention) String() string {
9538 return awsutil.Prettify(s)
9541 // GoString returns the string representation
9542 func (s DefaultRetention) GoString() string {
9546 // SetDays sets the Days field's value.
9547 func (s *DefaultRetention) SetDays(v int64) *DefaultRetention {
9552 // SetMode sets the Mode field's value.
9553 func (s *DefaultRetention) SetMode(v string) *DefaultRetention {
9558 // SetYears sets the Years field's value.
9559 func (s *DefaultRetention) SetYears(v int64) *DefaultRetention {
9564 type Delete struct {
9565 _ struct{} `type:"structure"`
9567 // Objects is a required field
9568 Objects []*ObjectIdentifier `locationName:"Object" type:"list" flattened:"true" required:"true"`
9570 // Element to enable quiet mode for the request. When you add this element,
9571 // you must set its value to true.
9572 Quiet *bool `type:"boolean"`
9575 // String returns the string representation
9576 func (s Delete) String() string {
9577 return awsutil.Prettify(s)
9580 // GoString returns the string representation
9581 func (s Delete) GoString() string {
9585 // Validate inspects the fields of the type to determine if they are valid.
9586 func (s *Delete) Validate() error {
9587 invalidParams := request.ErrInvalidParams{Context: "Delete"}
9588 if s.Objects == nil {
9589 invalidParams.Add(request.NewErrParamRequired("Objects"))
9591 if s.Objects != nil {
9592 for i, v := range s.Objects {
9596 if err := v.Validate(); err != nil {
9597 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Objects", i), err.(request.ErrInvalidParams))
9602 if invalidParams.Len() > 0 {
9603 return invalidParams
9608 // SetObjects sets the Objects field's value.
9609 func (s *Delete) SetObjects(v []*ObjectIdentifier) *Delete {
9614 // SetQuiet sets the Quiet field's value.
9615 func (s *Delete) SetQuiet(v bool) *Delete {
9620 type DeleteBucketAnalyticsConfigurationInput struct {
9621 _ struct{} `type:"structure"`
9623 // The name of the bucket from which an analytics configuration is deleted.
9625 // Bucket is a required field
9626 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
9628 // The identifier used to represent an analytics configuration.
9630 // Id is a required field
9631 Id *string `location:"querystring" locationName:"id" type:"string" required:"true"`
9634 // String returns the string representation
9635 func (s DeleteBucketAnalyticsConfigurationInput) String() string {
9636 return awsutil.Prettify(s)
9639 // GoString returns the string representation
9640 func (s DeleteBucketAnalyticsConfigurationInput) GoString() string {
9644 // Validate inspects the fields of the type to determine if they are valid.
9645 func (s *DeleteBucketAnalyticsConfigurationInput) Validate() error {
9646 invalidParams := request.ErrInvalidParams{Context: "DeleteBucketAnalyticsConfigurationInput"}
9647 if s.Bucket == nil {
9648 invalidParams.Add(request.NewErrParamRequired("Bucket"))
9650 if s.Bucket != nil && len(*s.Bucket) < 1 {
9651 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
9654 invalidParams.Add(request.NewErrParamRequired("Id"))
9657 if invalidParams.Len() > 0 {
9658 return invalidParams
9663 // SetBucket sets the Bucket field's value.
9664 func (s *DeleteBucketAnalyticsConfigurationInput) SetBucket(v string) *DeleteBucketAnalyticsConfigurationInput {
9669 func (s *DeleteBucketAnalyticsConfigurationInput) getBucket() (v string) {
9670 if s.Bucket == nil {
9676 // SetId sets the Id field's value.
9677 func (s *DeleteBucketAnalyticsConfigurationInput) SetId(v string) *DeleteBucketAnalyticsConfigurationInput {
9682 type DeleteBucketAnalyticsConfigurationOutput struct {
9683 _ struct{} `type:"structure"`
9686 // String returns the string representation
9687 func (s DeleteBucketAnalyticsConfigurationOutput) String() string {
9688 return awsutil.Prettify(s)
9691 // GoString returns the string representation
9692 func (s DeleteBucketAnalyticsConfigurationOutput) GoString() string {
9696 type DeleteBucketCorsInput struct {
9697 _ struct{} `type:"structure"`
9699 // Bucket is a required field
9700 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
9703 // String returns the string representation
9704 func (s DeleteBucketCorsInput) String() string {
9705 return awsutil.Prettify(s)
9708 // GoString returns the string representation
9709 func (s DeleteBucketCorsInput) GoString() string {
9713 // Validate inspects the fields of the type to determine if they are valid.
9714 func (s *DeleteBucketCorsInput) Validate() error {
9715 invalidParams := request.ErrInvalidParams{Context: "DeleteBucketCorsInput"}
9716 if s.Bucket == nil {
9717 invalidParams.Add(request.NewErrParamRequired("Bucket"))
9719 if s.Bucket != nil && len(*s.Bucket) < 1 {
9720 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
9723 if invalidParams.Len() > 0 {
9724 return invalidParams
9729 // SetBucket sets the Bucket field's value.
9730 func (s *DeleteBucketCorsInput) SetBucket(v string) *DeleteBucketCorsInput {
9735 func (s *DeleteBucketCorsInput) getBucket() (v string) {
9736 if s.Bucket == nil {
9742 type DeleteBucketCorsOutput struct {
9743 _ struct{} `type:"structure"`
9746 // String returns the string representation
9747 func (s DeleteBucketCorsOutput) String() string {
9748 return awsutil.Prettify(s)
9751 // GoString returns the string representation
9752 func (s DeleteBucketCorsOutput) GoString() string {
9756 type DeleteBucketEncryptionInput struct {
9757 _ struct{} `type:"structure"`
9759 // The name of the bucket containing the server-side encryption configuration
9762 // Bucket is a required field
9763 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
9766 // String returns the string representation
9767 func (s DeleteBucketEncryptionInput) String() string {
9768 return awsutil.Prettify(s)
9771 // GoString returns the string representation
9772 func (s DeleteBucketEncryptionInput) GoString() string {
9776 // Validate inspects the fields of the type to determine if they are valid.
9777 func (s *DeleteBucketEncryptionInput) Validate() error {
9778 invalidParams := request.ErrInvalidParams{Context: "DeleteBucketEncryptionInput"}
9779 if s.Bucket == nil {
9780 invalidParams.Add(request.NewErrParamRequired("Bucket"))
9782 if s.Bucket != nil && len(*s.Bucket) < 1 {
9783 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
9786 if invalidParams.Len() > 0 {
9787 return invalidParams
9792 // SetBucket sets the Bucket field's value.
9793 func (s *DeleteBucketEncryptionInput) SetBucket(v string) *DeleteBucketEncryptionInput {
9798 func (s *DeleteBucketEncryptionInput) getBucket() (v string) {
9799 if s.Bucket == nil {
9805 type DeleteBucketEncryptionOutput struct {
9806 _ struct{} `type:"structure"`
9809 // String returns the string representation
9810 func (s DeleteBucketEncryptionOutput) String() string {
9811 return awsutil.Prettify(s)
9814 // GoString returns the string representation
9815 func (s DeleteBucketEncryptionOutput) GoString() string {
9819 type DeleteBucketInput struct {
9820 _ struct{} `type:"structure"`
9822 // Bucket is a required field
9823 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
9826 // String returns the string representation
9827 func (s DeleteBucketInput) String() string {
9828 return awsutil.Prettify(s)
9831 // GoString returns the string representation
9832 func (s DeleteBucketInput) GoString() string {
9836 // Validate inspects the fields of the type to determine if they are valid.
9837 func (s *DeleteBucketInput) Validate() error {
9838 invalidParams := request.ErrInvalidParams{Context: "DeleteBucketInput"}
9839 if s.Bucket == nil {
9840 invalidParams.Add(request.NewErrParamRequired("Bucket"))
9842 if s.Bucket != nil && len(*s.Bucket) < 1 {
9843 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
9846 if invalidParams.Len() > 0 {
9847 return invalidParams
9852 // SetBucket sets the Bucket field's value.
9853 func (s *DeleteBucketInput) SetBucket(v string) *DeleteBucketInput {
9858 func (s *DeleteBucketInput) getBucket() (v string) {
9859 if s.Bucket == nil {
9865 type DeleteBucketInventoryConfigurationInput struct {
9866 _ struct{} `type:"structure"`
9868 // The name of the bucket containing the inventory configuration to delete.
9870 // Bucket is a required field
9871 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
9873 // The ID used to identify the inventory configuration.
9875 // Id is a required field
9876 Id *string `location:"querystring" locationName:"id" type:"string" required:"true"`
9879 // String returns the string representation
9880 func (s DeleteBucketInventoryConfigurationInput) String() string {
9881 return awsutil.Prettify(s)
9884 // GoString returns the string representation
9885 func (s DeleteBucketInventoryConfigurationInput) GoString() string {
9889 // Validate inspects the fields of the type to determine if they are valid.
9890 func (s *DeleteBucketInventoryConfigurationInput) Validate() error {
9891 invalidParams := request.ErrInvalidParams{Context: "DeleteBucketInventoryConfigurationInput"}
9892 if s.Bucket == nil {
9893 invalidParams.Add(request.NewErrParamRequired("Bucket"))
9895 if s.Bucket != nil && len(*s.Bucket) < 1 {
9896 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
9899 invalidParams.Add(request.NewErrParamRequired("Id"))
9902 if invalidParams.Len() > 0 {
9903 return invalidParams
9908 // SetBucket sets the Bucket field's value.
9909 func (s *DeleteBucketInventoryConfigurationInput) SetBucket(v string) *DeleteBucketInventoryConfigurationInput {
9914 func (s *DeleteBucketInventoryConfigurationInput) getBucket() (v string) {
9915 if s.Bucket == nil {
9921 // SetId sets the Id field's value.
9922 func (s *DeleteBucketInventoryConfigurationInput) SetId(v string) *DeleteBucketInventoryConfigurationInput {
9927 type DeleteBucketInventoryConfigurationOutput struct {
9928 _ struct{} `type:"structure"`
9931 // String returns the string representation
9932 func (s DeleteBucketInventoryConfigurationOutput) String() string {
9933 return awsutil.Prettify(s)
9936 // GoString returns the string representation
9937 func (s DeleteBucketInventoryConfigurationOutput) GoString() string {
9941 type DeleteBucketLifecycleInput struct {
9942 _ struct{} `type:"structure"`
9944 // Bucket is a required field
9945 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
9948 // String returns the string representation
9949 func (s DeleteBucketLifecycleInput) String() string {
9950 return awsutil.Prettify(s)
9953 // GoString returns the string representation
9954 func (s DeleteBucketLifecycleInput) GoString() string {
9958 // Validate inspects the fields of the type to determine if they are valid.
9959 func (s *DeleteBucketLifecycleInput) Validate() error {
9960 invalidParams := request.ErrInvalidParams{Context: "DeleteBucketLifecycleInput"}
9961 if s.Bucket == nil {
9962 invalidParams.Add(request.NewErrParamRequired("Bucket"))
9964 if s.Bucket != nil && len(*s.Bucket) < 1 {
9965 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
9968 if invalidParams.Len() > 0 {
9969 return invalidParams
9974 // SetBucket sets the Bucket field's value.
9975 func (s *DeleteBucketLifecycleInput) SetBucket(v string) *DeleteBucketLifecycleInput {
9980 func (s *DeleteBucketLifecycleInput) getBucket() (v string) {
9981 if s.Bucket == nil {
9987 type DeleteBucketLifecycleOutput struct {
9988 _ struct{} `type:"structure"`
9991 // String returns the string representation
9992 func (s DeleteBucketLifecycleOutput) String() string {
9993 return awsutil.Prettify(s)
9996 // GoString returns the string representation
9997 func (s DeleteBucketLifecycleOutput) GoString() string {
10001 type DeleteBucketMetricsConfigurationInput struct {
10002 _ struct{} `type:"structure"`
10004 // The name of the bucket containing the metrics configuration to delete.
10006 // Bucket is a required field
10007 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
10009 // The ID used to identify the metrics configuration.
10011 // Id is a required field
10012 Id *string `location:"querystring" locationName:"id" type:"string" required:"true"`
10015 // String returns the string representation
10016 func (s DeleteBucketMetricsConfigurationInput) String() string {
10017 return awsutil.Prettify(s)
10020 // GoString returns the string representation
10021 func (s DeleteBucketMetricsConfigurationInput) GoString() string {
10025 // Validate inspects the fields of the type to determine if they are valid.
10026 func (s *DeleteBucketMetricsConfigurationInput) Validate() error {
10027 invalidParams := request.ErrInvalidParams{Context: "DeleteBucketMetricsConfigurationInput"}
10028 if s.Bucket == nil {
10029 invalidParams.Add(request.NewErrParamRequired("Bucket"))
10031 if s.Bucket != nil && len(*s.Bucket) < 1 {
10032 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
10035 invalidParams.Add(request.NewErrParamRequired("Id"))
10038 if invalidParams.Len() > 0 {
10039 return invalidParams
10044 // SetBucket sets the Bucket field's value.
10045 func (s *DeleteBucketMetricsConfigurationInput) SetBucket(v string) *DeleteBucketMetricsConfigurationInput {
10050 func (s *DeleteBucketMetricsConfigurationInput) getBucket() (v string) {
10051 if s.Bucket == nil {
10057 // SetId sets the Id field's value.
10058 func (s *DeleteBucketMetricsConfigurationInput) SetId(v string) *DeleteBucketMetricsConfigurationInput {
10063 type DeleteBucketMetricsConfigurationOutput struct {
10064 _ struct{} `type:"structure"`
10067 // String returns the string representation
10068 func (s DeleteBucketMetricsConfigurationOutput) String() string {
10069 return awsutil.Prettify(s)
10072 // GoString returns the string representation
10073 func (s DeleteBucketMetricsConfigurationOutput) GoString() string {
10077 type DeleteBucketOutput struct {
10078 _ struct{} `type:"structure"`
10081 // String returns the string representation
10082 func (s DeleteBucketOutput) String() string {
10083 return awsutil.Prettify(s)
10086 // GoString returns the string representation
10087 func (s DeleteBucketOutput) GoString() string {
10091 type DeleteBucketPolicyInput struct {
10092 _ struct{} `type:"structure"`
10094 // Bucket is a required field
10095 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
10098 // String returns the string representation
10099 func (s DeleteBucketPolicyInput) String() string {
10100 return awsutil.Prettify(s)
10103 // GoString returns the string representation
10104 func (s DeleteBucketPolicyInput) GoString() string {
10108 // Validate inspects the fields of the type to determine if they are valid.
10109 func (s *DeleteBucketPolicyInput) Validate() error {
10110 invalidParams := request.ErrInvalidParams{Context: "DeleteBucketPolicyInput"}
10111 if s.Bucket == nil {
10112 invalidParams.Add(request.NewErrParamRequired("Bucket"))
10114 if s.Bucket != nil && len(*s.Bucket) < 1 {
10115 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
10118 if invalidParams.Len() > 0 {
10119 return invalidParams
10124 // SetBucket sets the Bucket field's value.
10125 func (s *DeleteBucketPolicyInput) SetBucket(v string) *DeleteBucketPolicyInput {
10130 func (s *DeleteBucketPolicyInput) getBucket() (v string) {
10131 if s.Bucket == nil {
10137 type DeleteBucketPolicyOutput struct {
10138 _ struct{} `type:"structure"`
10141 // String returns the string representation
10142 func (s DeleteBucketPolicyOutput) String() string {
10143 return awsutil.Prettify(s)
10146 // GoString returns the string representation
10147 func (s DeleteBucketPolicyOutput) GoString() string {
10151 type DeleteBucketReplicationInput struct {
10152 _ struct{} `type:"structure"`
10154 // The bucket name.
10156 // It can take a while to propagate the deletion of a replication configuration
10157 // to all Amazon S3 systems.
10159 // Bucket is a required field
10160 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
10163 // String returns the string representation
10164 func (s DeleteBucketReplicationInput) String() string {
10165 return awsutil.Prettify(s)
10168 // GoString returns the string representation
10169 func (s DeleteBucketReplicationInput) GoString() string {
10173 // Validate inspects the fields of the type to determine if they are valid.
10174 func (s *DeleteBucketReplicationInput) Validate() error {
10175 invalidParams := request.ErrInvalidParams{Context: "DeleteBucketReplicationInput"}
10176 if s.Bucket == nil {
10177 invalidParams.Add(request.NewErrParamRequired("Bucket"))
10179 if s.Bucket != nil && len(*s.Bucket) < 1 {
10180 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
10183 if invalidParams.Len() > 0 {
10184 return invalidParams
10189 // SetBucket sets the Bucket field's value.
10190 func (s *DeleteBucketReplicationInput) SetBucket(v string) *DeleteBucketReplicationInput {
10195 func (s *DeleteBucketReplicationInput) getBucket() (v string) {
10196 if s.Bucket == nil {
10202 type DeleteBucketReplicationOutput struct {
10203 _ struct{} `type:"structure"`
10206 // String returns the string representation
10207 func (s DeleteBucketReplicationOutput) String() string {
10208 return awsutil.Prettify(s)
10211 // GoString returns the string representation
10212 func (s DeleteBucketReplicationOutput) GoString() string {
10216 type DeleteBucketTaggingInput struct {
10217 _ struct{} `type:"structure"`
10219 // Bucket is a required field
10220 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
10223 // String returns the string representation
10224 func (s DeleteBucketTaggingInput) String() string {
10225 return awsutil.Prettify(s)
10228 // GoString returns the string representation
10229 func (s DeleteBucketTaggingInput) GoString() string {
10233 // Validate inspects the fields of the type to determine if they are valid.
10234 func (s *DeleteBucketTaggingInput) Validate() error {
10235 invalidParams := request.ErrInvalidParams{Context: "DeleteBucketTaggingInput"}
10236 if s.Bucket == nil {
10237 invalidParams.Add(request.NewErrParamRequired("Bucket"))
10239 if s.Bucket != nil && len(*s.Bucket) < 1 {
10240 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
10243 if invalidParams.Len() > 0 {
10244 return invalidParams
10249 // SetBucket sets the Bucket field's value.
10250 func (s *DeleteBucketTaggingInput) SetBucket(v string) *DeleteBucketTaggingInput {
10255 func (s *DeleteBucketTaggingInput) getBucket() (v string) {
10256 if s.Bucket == nil {
10262 type DeleteBucketTaggingOutput struct {
10263 _ struct{} `type:"structure"`
10266 // String returns the string representation
10267 func (s DeleteBucketTaggingOutput) String() string {
10268 return awsutil.Prettify(s)
10271 // GoString returns the string representation
10272 func (s DeleteBucketTaggingOutput) GoString() string {
10276 type DeleteBucketWebsiteInput struct {
10277 _ struct{} `type:"structure"`
10279 // Bucket is a required field
10280 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
10283 // String returns the string representation
10284 func (s DeleteBucketWebsiteInput) String() string {
10285 return awsutil.Prettify(s)
10288 // GoString returns the string representation
10289 func (s DeleteBucketWebsiteInput) GoString() string {
10293 // Validate inspects the fields of the type to determine if they are valid.
10294 func (s *DeleteBucketWebsiteInput) Validate() error {
10295 invalidParams := request.ErrInvalidParams{Context: "DeleteBucketWebsiteInput"}
10296 if s.Bucket == nil {
10297 invalidParams.Add(request.NewErrParamRequired("Bucket"))
10299 if s.Bucket != nil && len(*s.Bucket) < 1 {
10300 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
10303 if invalidParams.Len() > 0 {
10304 return invalidParams
10309 // SetBucket sets the Bucket field's value.
10310 func (s *DeleteBucketWebsiteInput) SetBucket(v string) *DeleteBucketWebsiteInput {
10315 func (s *DeleteBucketWebsiteInput) getBucket() (v string) {
10316 if s.Bucket == nil {
10322 type DeleteBucketWebsiteOutput struct {
10323 _ struct{} `type:"structure"`
10326 // String returns the string representation
10327 func (s DeleteBucketWebsiteOutput) String() string {
10328 return awsutil.Prettify(s)
10331 // GoString returns the string representation
10332 func (s DeleteBucketWebsiteOutput) GoString() string {
10336 type DeleteMarkerEntry struct {
10337 _ struct{} `type:"structure"`
10339 // Specifies whether the object is (true) or is not (false) the latest version
10341 IsLatest *bool `type:"boolean"`
10344 Key *string `min:"1" type:"string"`
10346 // Date and time the object was last modified.
10347 LastModified *time.Time `type:"timestamp"`
10349 Owner *Owner `type:"structure"`
10351 // Version ID of an object.
10352 VersionId *string `type:"string"`
10355 // String returns the string representation
10356 func (s DeleteMarkerEntry) String() string {
10357 return awsutil.Prettify(s)
10360 // GoString returns the string representation
10361 func (s DeleteMarkerEntry) GoString() string {
10365 // SetIsLatest sets the IsLatest field's value.
10366 func (s *DeleteMarkerEntry) SetIsLatest(v bool) *DeleteMarkerEntry {
10371 // SetKey sets the Key field's value.
10372 func (s *DeleteMarkerEntry) SetKey(v string) *DeleteMarkerEntry {
10377 // SetLastModified sets the LastModified field's value.
10378 func (s *DeleteMarkerEntry) SetLastModified(v time.Time) *DeleteMarkerEntry {
10379 s.LastModified = &v
10383 // SetOwner sets the Owner field's value.
10384 func (s *DeleteMarkerEntry) SetOwner(v *Owner) *DeleteMarkerEntry {
10389 // SetVersionId sets the VersionId field's value.
10390 func (s *DeleteMarkerEntry) SetVersionId(v string) *DeleteMarkerEntry {
10395 // Specifies whether Amazon S3 should replicate delete makers.
10396 type DeleteMarkerReplication struct {
10397 _ struct{} `type:"structure"`
10399 // The status of the delete marker replication.
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"`
10406 // String returns the string representation
10407 func (s DeleteMarkerReplication) String() string {
10408 return awsutil.Prettify(s)
10411 // GoString returns the string representation
10412 func (s DeleteMarkerReplication) GoString() string {
10416 // SetStatus sets the Status field's value.
10417 func (s *DeleteMarkerReplication) SetStatus(v string) *DeleteMarkerReplication {
10422 type DeleteObjectInput struct {
10423 _ struct{} `type:"structure"`
10425 // Bucket is a required field
10426 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
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"`
10432 // Key is a required field
10433 Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"`
10435 // The concatenation of the authentication device's serial number, a space,
10436 // and the value that is displayed on your authentication device.
10437 MFA *string `location:"header" locationName:"x-amz-mfa" type:"string"`
10439 // Confirms that the requester knows that she or he will be charged for the
10440 // request. Bucket owners need not specify this parameter in their requests.
10441 // Documentation on downloading objects from requester pays buckets can be found
10442 // at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
10443 RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
10445 // VersionId used to reference a specific version of the object.
10446 VersionId *string `location:"querystring" locationName:"versionId" type:"string"`
10449 // String returns the string representation
10450 func (s DeleteObjectInput) String() string {
10451 return awsutil.Prettify(s)
10454 // GoString returns the string representation
10455 func (s DeleteObjectInput) GoString() string {
10459 // Validate inspects the fields of the type to determine if they are valid.
10460 func (s *DeleteObjectInput) Validate() error {
10461 invalidParams := request.ErrInvalidParams{Context: "DeleteObjectInput"}
10462 if s.Bucket == nil {
10463 invalidParams.Add(request.NewErrParamRequired("Bucket"))
10465 if s.Bucket != nil && len(*s.Bucket) < 1 {
10466 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
10469 invalidParams.Add(request.NewErrParamRequired("Key"))
10471 if s.Key != nil && len(*s.Key) < 1 {
10472 invalidParams.Add(request.NewErrParamMinLen("Key", 1))
10475 if invalidParams.Len() > 0 {
10476 return invalidParams
10481 // SetBucket sets the Bucket field's value.
10482 func (s *DeleteObjectInput) SetBucket(v string) *DeleteObjectInput {
10487 func (s *DeleteObjectInput) getBucket() (v string) {
10488 if s.Bucket == nil {
10494 // SetBypassGovernanceRetention sets the BypassGovernanceRetention field's value.
10495 func (s *DeleteObjectInput) SetBypassGovernanceRetention(v bool) *DeleteObjectInput {
10496 s.BypassGovernanceRetention = &v
10500 // SetKey sets the Key field's value.
10501 func (s *DeleteObjectInput) SetKey(v string) *DeleteObjectInput {
10506 // SetMFA sets the MFA field's value.
10507 func (s *DeleteObjectInput) SetMFA(v string) *DeleteObjectInput {
10512 // SetRequestPayer sets the RequestPayer field's value.
10513 func (s *DeleteObjectInput) SetRequestPayer(v string) *DeleteObjectInput {
10514 s.RequestPayer = &v
10518 // SetVersionId sets the VersionId field's value.
10519 func (s *DeleteObjectInput) SetVersionId(v string) *DeleteObjectInput {
10524 type DeleteObjectOutput struct {
10525 _ struct{} `type:"structure"`
10527 // Specifies whether the versioned object that was permanently deleted was (true)
10528 // or was not (false) a delete marker.
10529 DeleteMarker *bool `location:"header" locationName:"x-amz-delete-marker" type:"boolean"`
10531 // If present, indicates that the requester was successfully charged for the
10533 RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"`
10535 // Returns the version ID of the delete marker created as a result of the DELETE
10537 VersionId *string `location:"header" locationName:"x-amz-version-id" type:"string"`
10540 // String returns the string representation
10541 func (s DeleteObjectOutput) String() string {
10542 return awsutil.Prettify(s)
10545 // GoString returns the string representation
10546 func (s DeleteObjectOutput) GoString() string {
10550 // SetDeleteMarker sets the DeleteMarker field's value.
10551 func (s *DeleteObjectOutput) SetDeleteMarker(v bool) *DeleteObjectOutput {
10552 s.DeleteMarker = &v
10556 // SetRequestCharged sets the RequestCharged field's value.
10557 func (s *DeleteObjectOutput) SetRequestCharged(v string) *DeleteObjectOutput {
10558 s.RequestCharged = &v
10562 // SetVersionId sets the VersionId field's value.
10563 func (s *DeleteObjectOutput) SetVersionId(v string) *DeleteObjectOutput {
10568 type DeleteObjectTaggingInput struct {
10569 _ struct{} `type:"structure"`
10571 // Bucket is a required field
10572 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
10574 // Key is a required field
10575 Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"`
10577 // The versionId of the object that the tag-set will be removed from.
10578 VersionId *string `location:"querystring" locationName:"versionId" type:"string"`
10581 // String returns the string representation
10582 func (s DeleteObjectTaggingInput) String() string {
10583 return awsutil.Prettify(s)
10586 // GoString returns the string representation
10587 func (s DeleteObjectTaggingInput) GoString() string {
10591 // Validate inspects the fields of the type to determine if they are valid.
10592 func (s *DeleteObjectTaggingInput) Validate() error {
10593 invalidParams := request.ErrInvalidParams{Context: "DeleteObjectTaggingInput"}
10594 if s.Bucket == nil {
10595 invalidParams.Add(request.NewErrParamRequired("Bucket"))
10597 if s.Bucket != nil && len(*s.Bucket) < 1 {
10598 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
10601 invalidParams.Add(request.NewErrParamRequired("Key"))
10603 if s.Key != nil && len(*s.Key) < 1 {
10604 invalidParams.Add(request.NewErrParamMinLen("Key", 1))
10607 if invalidParams.Len() > 0 {
10608 return invalidParams
10613 // SetBucket sets the Bucket field's value.
10614 func (s *DeleteObjectTaggingInput) SetBucket(v string) *DeleteObjectTaggingInput {
10619 func (s *DeleteObjectTaggingInput) getBucket() (v string) {
10620 if s.Bucket == nil {
10626 // SetKey sets the Key field's value.
10627 func (s *DeleteObjectTaggingInput) SetKey(v string) *DeleteObjectTaggingInput {
10632 // SetVersionId sets the VersionId field's value.
10633 func (s *DeleteObjectTaggingInput) SetVersionId(v string) *DeleteObjectTaggingInput {
10638 type DeleteObjectTaggingOutput struct {
10639 _ struct{} `type:"structure"`
10641 // The versionId of the object the tag-set was removed from.
10642 VersionId *string `location:"header" locationName:"x-amz-version-id" type:"string"`
10645 // String returns the string representation
10646 func (s DeleteObjectTaggingOutput) String() string {
10647 return awsutil.Prettify(s)
10650 // GoString returns the string representation
10651 func (s DeleteObjectTaggingOutput) GoString() string {
10655 // SetVersionId sets the VersionId field's value.
10656 func (s *DeleteObjectTaggingOutput) SetVersionId(v string) *DeleteObjectTaggingOutput {
10661 type DeleteObjectsInput struct {
10662 _ struct{} `type:"structure" payload:"Delete"`
10664 // Bucket is a required field
10665 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
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
10670 BypassGovernanceRetention *bool `location:"header" locationName:"x-amz-bypass-governance-retention" type:"boolean"`
10672 // Delete is a required field
10673 Delete *Delete `locationName:"Delete" type:"structure" required:"true" xmlURI:"http://s3.amazonaws.com/doc/2006-03-01/"`
10675 // The concatenation of the authentication device's serial number, a space,
10676 // and the value that is displayed on your authentication device.
10677 MFA *string `location:"header" locationName:"x-amz-mfa" type:"string"`
10679 // Confirms that the requester knows that she or he will be charged for the
10680 // request. Bucket owners need not specify this parameter in their requests.
10681 // Documentation on downloading objects from requester pays buckets can be found
10682 // at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
10683 RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
10686 // String returns the string representation
10687 func (s DeleteObjectsInput) String() string {
10688 return awsutil.Prettify(s)
10691 // GoString returns the string representation
10692 func (s DeleteObjectsInput) GoString() string {
10696 // Validate inspects the fields of the type to determine if they are valid.
10697 func (s *DeleteObjectsInput) Validate() error {
10698 invalidParams := request.ErrInvalidParams{Context: "DeleteObjectsInput"}
10699 if s.Bucket == nil {
10700 invalidParams.Add(request.NewErrParamRequired("Bucket"))
10702 if s.Bucket != nil && len(*s.Bucket) < 1 {
10703 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
10705 if s.Delete == nil {
10706 invalidParams.Add(request.NewErrParamRequired("Delete"))
10708 if s.Delete != nil {
10709 if err := s.Delete.Validate(); err != nil {
10710 invalidParams.AddNested("Delete", err.(request.ErrInvalidParams))
10714 if invalidParams.Len() > 0 {
10715 return invalidParams
10720 // SetBucket sets the Bucket field's value.
10721 func (s *DeleteObjectsInput) SetBucket(v string) *DeleteObjectsInput {
10726 func (s *DeleteObjectsInput) getBucket() (v string) {
10727 if s.Bucket == nil {
10733 // SetBypassGovernanceRetention sets the BypassGovernanceRetention field's value.
10734 func (s *DeleteObjectsInput) SetBypassGovernanceRetention(v bool) *DeleteObjectsInput {
10735 s.BypassGovernanceRetention = &v
10739 // SetDelete sets the Delete field's value.
10740 func (s *DeleteObjectsInput) SetDelete(v *Delete) *DeleteObjectsInput {
10745 // SetMFA sets the MFA field's value.
10746 func (s *DeleteObjectsInput) SetMFA(v string) *DeleteObjectsInput {
10751 // SetRequestPayer sets the RequestPayer field's value.
10752 func (s *DeleteObjectsInput) SetRequestPayer(v string) *DeleteObjectsInput {
10753 s.RequestPayer = &v
10757 type DeleteObjectsOutput struct {
10758 _ struct{} `type:"structure"`
10760 Deleted []*DeletedObject `type:"list" flattened:"true"`
10762 Errors []*Error `locationName:"Error" type:"list" flattened:"true"`
10764 // If present, indicates that the requester was successfully charged for the
10766 RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"`
10769 // String returns the string representation
10770 func (s DeleteObjectsOutput) String() string {
10771 return awsutil.Prettify(s)
10774 // GoString returns the string representation
10775 func (s DeleteObjectsOutput) GoString() string {
10779 // SetDeleted sets the Deleted field's value.
10780 func (s *DeleteObjectsOutput) SetDeleted(v []*DeletedObject) *DeleteObjectsOutput {
10785 // SetErrors sets the Errors field's value.
10786 func (s *DeleteObjectsOutput) SetErrors(v []*Error) *DeleteObjectsOutput {
10791 // SetRequestCharged sets the RequestCharged field's value.
10792 func (s *DeleteObjectsOutput) SetRequestCharged(v string) *DeleteObjectsOutput {
10793 s.RequestCharged = &v
10797 type DeletePublicAccessBlockInput struct {
10798 _ struct{} `type:"structure"`
10800 // The Amazon S3 bucket whose PublicAccessBlock configuration you want to delete.
10802 // Bucket is a required field
10803 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
10806 // String returns the string representation
10807 func (s DeletePublicAccessBlockInput) String() string {
10808 return awsutil.Prettify(s)
10811 // GoString returns the string representation
10812 func (s DeletePublicAccessBlockInput) GoString() string {
10816 // Validate inspects the fields of the type to determine if they are valid.
10817 func (s *DeletePublicAccessBlockInput) Validate() error {
10818 invalidParams := request.ErrInvalidParams{Context: "DeletePublicAccessBlockInput"}
10819 if s.Bucket == nil {
10820 invalidParams.Add(request.NewErrParamRequired("Bucket"))
10822 if s.Bucket != nil && len(*s.Bucket) < 1 {
10823 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
10826 if invalidParams.Len() > 0 {
10827 return invalidParams
10832 // SetBucket sets the Bucket field's value.
10833 func (s *DeletePublicAccessBlockInput) SetBucket(v string) *DeletePublicAccessBlockInput {
10838 func (s *DeletePublicAccessBlockInput) getBucket() (v string) {
10839 if s.Bucket == nil {
10845 type DeletePublicAccessBlockOutput struct {
10846 _ struct{} `type:"structure"`
10849 // String returns the string representation
10850 func (s DeletePublicAccessBlockOutput) String() string {
10851 return awsutil.Prettify(s)
10854 // GoString returns the string representation
10855 func (s DeletePublicAccessBlockOutput) GoString() string {
10859 type DeletedObject struct {
10860 _ struct{} `type:"structure"`
10862 DeleteMarker *bool `type:"boolean"`
10864 DeleteMarkerVersionId *string `type:"string"`
10866 Key *string `min:"1" type:"string"`
10868 VersionId *string `type:"string"`
10871 // String returns the string representation
10872 func (s DeletedObject) String() string {
10873 return awsutil.Prettify(s)
10876 // GoString returns the string representation
10877 func (s DeletedObject) GoString() string {
10881 // SetDeleteMarker sets the DeleteMarker field's value.
10882 func (s *DeletedObject) SetDeleteMarker(v bool) *DeletedObject {
10883 s.DeleteMarker = &v
10887 // SetDeleteMarkerVersionId sets the DeleteMarkerVersionId field's value.
10888 func (s *DeletedObject) SetDeleteMarkerVersionId(v string) *DeletedObject {
10889 s.DeleteMarkerVersionId = &v
10893 // SetKey sets the Key field's value.
10894 func (s *DeletedObject) SetKey(v string) *DeletedObject {
10899 // SetVersionId sets the VersionId field's value.
10900 func (s *DeletedObject) SetVersionId(v string) *DeletedObject {
10905 // A container for information about the replication destination.
10906 type Destination struct {
10907 _ struct{} `type:"structure"`
10909 // A container for information about access control for replicas.
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
10916 AccessControlTranslation *AccessControlTranslation `type:"structure"`
10918 // The account ID of the destination bucket. Currently, Amazon S3 verifies this
10919 // value only if Access Control Translation is enabled.
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.
10924 Account *string `type:"string"`
10926 // The Amazon Resource Name (ARN) of the bucket where you want Amazon S3 to
10927 // store replicas of the object identified by the rule.
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.
10933 // Bucket is a required field
10934 Bucket *string `type:"string" required:"true"`
10936 // A container that provides information about encryption. If SourceSelectionCriteria
10937 // is specified, you must specify this element.
10938 EncryptionConfiguration *EncryptionConfiguration `type:"structure"`
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.
10942 StorageClass *string `type:"string" enum:"StorageClass"`
10945 // String returns the string representation
10946 func (s Destination) String() string {
10947 return awsutil.Prettify(s)
10950 // GoString returns the string representation
10951 func (s Destination) GoString() string {
10955 // Validate inspects the fields of the type to determine if they are valid.
10956 func (s *Destination) Validate() error {
10957 invalidParams := request.ErrInvalidParams{Context: "Destination"}
10958 if s.Bucket == nil {
10959 invalidParams.Add(request.NewErrParamRequired("Bucket"))
10961 if s.AccessControlTranslation != nil {
10962 if err := s.AccessControlTranslation.Validate(); err != nil {
10963 invalidParams.AddNested("AccessControlTranslation", err.(request.ErrInvalidParams))
10967 if invalidParams.Len() > 0 {
10968 return invalidParams
10973 // SetAccessControlTranslation sets the AccessControlTranslation field's value.
10974 func (s *Destination) SetAccessControlTranslation(v *AccessControlTranslation) *Destination {
10975 s.AccessControlTranslation = v
10979 // SetAccount sets the Account field's value.
10980 func (s *Destination) SetAccount(v string) *Destination {
10985 // SetBucket sets the Bucket field's value.
10986 func (s *Destination) SetBucket(v string) *Destination {
10991 func (s *Destination) getBucket() (v string) {
10992 if s.Bucket == nil {
10998 // SetEncryptionConfiguration sets the EncryptionConfiguration field's value.
10999 func (s *Destination) SetEncryptionConfiguration(v *EncryptionConfiguration) *Destination {
11000 s.EncryptionConfiguration = v
11004 // SetStorageClass sets the StorageClass field's value.
11005 func (s *Destination) SetStorageClass(v string) *Destination {
11006 s.StorageClass = &v
11010 // Describes the server-side encryption that will be applied to the restore
11012 type Encryption struct {
11013 _ struct{} `type:"structure"`
11015 // The server-side encryption algorithm used when storing job results in Amazon
11016 // S3 (e.g., AES256, aws:kms).
11018 // EncryptionType is a required field
11019 EncryptionType *string `type:"string" required:"true" enum:"ServerSideEncryption"`
11021 // If the encryption type is aws:kms, this optional value can be used to specify
11022 // the encryption context for the restore results.
11023 KMSContext *string `type:"string"`
11025 // If the encryption type is aws:kms, this optional value specifies the AWS
11026 // KMS key ID to use for encryption of job results.
11027 KMSKeyId *string `type:"string" sensitive:"true"`
11030 // String returns the string representation
11031 func (s Encryption) String() string {
11032 return awsutil.Prettify(s)
11035 // GoString returns the string representation
11036 func (s Encryption) GoString() string {
11040 // Validate inspects the fields of the type to determine if they are valid.
11041 func (s *Encryption) Validate() error {
11042 invalidParams := request.ErrInvalidParams{Context: "Encryption"}
11043 if s.EncryptionType == nil {
11044 invalidParams.Add(request.NewErrParamRequired("EncryptionType"))
11047 if invalidParams.Len() > 0 {
11048 return invalidParams
11053 // SetEncryptionType sets the EncryptionType field's value.
11054 func (s *Encryption) SetEncryptionType(v string) *Encryption {
11055 s.EncryptionType = &v
11059 // SetKMSContext sets the KMSContext field's value.
11060 func (s *Encryption) SetKMSContext(v string) *Encryption {
11065 // SetKMSKeyId sets the KMSKeyId field's value.
11066 func (s *Encryption) SetKMSKeyId(v string) *Encryption {
11071 // A container for information about the encryption-based configuration for
11073 type EncryptionConfiguration struct {
11074 _ struct{} `type:"structure"`
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.
11078 ReplicaKmsKeyID *string `type:"string"`
11081 // String returns the string representation
11082 func (s EncryptionConfiguration) String() string {
11083 return awsutil.Prettify(s)
11086 // GoString returns the string representation
11087 func (s EncryptionConfiguration) GoString() string {
11091 // SetReplicaKmsKeyID sets the ReplicaKmsKeyID field's value.
11092 func (s *EncryptionConfiguration) SetReplicaKmsKeyID(v string) *EncryptionConfiguration {
11093 s.ReplicaKmsKeyID = &v
11097 type EndEvent struct {
11098 _ struct{} `locationName:"EndEvent" type:"structure"`
11101 // String returns the string representation
11102 func (s EndEvent) String() string {
11103 return awsutil.Prettify(s)
11106 // GoString returns the string representation
11107 func (s EndEvent) GoString() string {
11111 // The EndEvent is and event in the SelectObjectContentEventStream group of events.
11112 func (s *EndEvent) eventSelectObjectContentEventStream() {}
11114 // UnmarshalEvent unmarshals the EventStream Message into the EndEvent value.
11115 // This method is only used internally within the SDK's EventStream handling.
11116 func (s *EndEvent) UnmarshalEvent(
11117 payloadUnmarshaler protocol.PayloadUnmarshaler,
11118 msg eventstream.Message,
11123 type Error struct {
11124 _ struct{} `type:"structure"`
11126 Code *string `type:"string"`
11128 Key *string `min:"1" type:"string"`
11130 Message *string `type:"string"`
11132 VersionId *string `type:"string"`
11135 // String returns the string representation
11136 func (s Error) String() string {
11137 return awsutil.Prettify(s)
11140 // GoString returns the string representation
11141 func (s Error) GoString() string {
11145 // SetCode sets the Code field's value.
11146 func (s *Error) SetCode(v string) *Error {
11151 // SetKey sets the Key field's value.
11152 func (s *Error) SetKey(v string) *Error {
11157 // SetMessage sets the Message field's value.
11158 func (s *Error) SetMessage(v string) *Error {
11163 // SetVersionId sets the VersionId field's value.
11164 func (s *Error) SetVersionId(v string) *Error {
11169 type ErrorDocument struct {
11170 _ struct{} `type:"structure"`
11172 // The object key name to use when a 4XX class error occurs.
11174 // Key is a required field
11175 Key *string `min:"1" type:"string" required:"true"`
11178 // String returns the string representation
11179 func (s ErrorDocument) String() string {
11180 return awsutil.Prettify(s)
11183 // GoString returns the string representation
11184 func (s ErrorDocument) GoString() string {
11188 // Validate inspects the fields of the type to determine if they are valid.
11189 func (s *ErrorDocument) Validate() error {
11190 invalidParams := request.ErrInvalidParams{Context: "ErrorDocument"}
11192 invalidParams.Add(request.NewErrParamRequired("Key"))
11194 if s.Key != nil && len(*s.Key) < 1 {
11195 invalidParams.Add(request.NewErrParamMinLen("Key", 1))
11198 if invalidParams.Len() > 0 {
11199 return invalidParams
11204 // SetKey sets the Key field's value.
11205 func (s *ErrorDocument) SetKey(v string) *ErrorDocument {
11210 // A container for a key value pair that defines the criteria for the filter
11212 type FilterRule struct {
11213 _ struct{} `type:"structure"`
11215 // The object key name prefix or suffix identifying one or more objects to which
11216 // the filtering rule applies. The maximum prefix length is 1,024 characters.
11217 // Overlapping prefixes and suffixes are not supported. For more information,
11218 // see Configuring Event Notifications (https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html)
11219 // in the Amazon Simple Storage Service Developer Guide.
11220 Name *string `type:"string" enum:"FilterRuleName"`
11222 Value *string `type:"string"`
11225 // String returns the string representation
11226 func (s FilterRule) String() string {
11227 return awsutil.Prettify(s)
11230 // GoString returns the string representation
11231 func (s FilterRule) GoString() string {
11235 // SetName sets the Name field's value.
11236 func (s *FilterRule) SetName(v string) *FilterRule {
11241 // SetValue sets the Value field's value.
11242 func (s *FilterRule) SetValue(v string) *FilterRule {
11247 type GetBucketAccelerateConfigurationInput struct {
11248 _ struct{} `type:"structure"`
11250 // Name of the bucket for which the accelerate configuration is retrieved.
11252 // Bucket is a required field
11253 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
11256 // String returns the string representation
11257 func (s GetBucketAccelerateConfigurationInput) String() string {
11258 return awsutil.Prettify(s)
11261 // GoString returns the string representation
11262 func (s GetBucketAccelerateConfigurationInput) GoString() string {
11266 // Validate inspects the fields of the type to determine if they are valid.
11267 func (s *GetBucketAccelerateConfigurationInput) Validate() error {
11268 invalidParams := request.ErrInvalidParams{Context: "GetBucketAccelerateConfigurationInput"}
11269 if s.Bucket == nil {
11270 invalidParams.Add(request.NewErrParamRequired("Bucket"))
11272 if s.Bucket != nil && len(*s.Bucket) < 1 {
11273 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
11276 if invalidParams.Len() > 0 {
11277 return invalidParams
11282 // SetBucket sets the Bucket field's value.
11283 func (s *GetBucketAccelerateConfigurationInput) SetBucket(v string) *GetBucketAccelerateConfigurationInput {
11288 func (s *GetBucketAccelerateConfigurationInput) getBucket() (v string) {
11289 if s.Bucket == nil {
11295 type GetBucketAccelerateConfigurationOutput struct {
11296 _ struct{} `type:"structure"`
11298 // The accelerate configuration of the bucket.
11299 Status *string `type:"string" enum:"BucketAccelerateStatus"`
11302 // String returns the string representation
11303 func (s GetBucketAccelerateConfigurationOutput) String() string {
11304 return awsutil.Prettify(s)
11307 // GoString returns the string representation
11308 func (s GetBucketAccelerateConfigurationOutput) GoString() string {
11312 // SetStatus sets the Status field's value.
11313 func (s *GetBucketAccelerateConfigurationOutput) SetStatus(v string) *GetBucketAccelerateConfigurationOutput {
11318 type GetBucketAclInput struct {
11319 _ struct{} `type:"structure"`
11321 // Bucket is a required field
11322 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
11325 // String returns the string representation
11326 func (s GetBucketAclInput) String() string {
11327 return awsutil.Prettify(s)
11330 // GoString returns the string representation
11331 func (s GetBucketAclInput) GoString() string {
11335 // Validate inspects the fields of the type to determine if they are valid.
11336 func (s *GetBucketAclInput) Validate() error {
11337 invalidParams := request.ErrInvalidParams{Context: "GetBucketAclInput"}
11338 if s.Bucket == nil {
11339 invalidParams.Add(request.NewErrParamRequired("Bucket"))
11341 if s.Bucket != nil && len(*s.Bucket) < 1 {
11342 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
11345 if invalidParams.Len() > 0 {
11346 return invalidParams
11351 // SetBucket sets the Bucket field's value.
11352 func (s *GetBucketAclInput) SetBucket(v string) *GetBucketAclInput {
11357 func (s *GetBucketAclInput) getBucket() (v string) {
11358 if s.Bucket == nil {
11364 type GetBucketAclOutput struct {
11365 _ struct{} `type:"structure"`
11367 // A list of grants.
11368 Grants []*Grant `locationName:"AccessControlList" locationNameList:"Grant" type:"list"`
11370 Owner *Owner `type:"structure"`
11373 // String returns the string representation
11374 func (s GetBucketAclOutput) String() string {
11375 return awsutil.Prettify(s)
11378 // GoString returns the string representation
11379 func (s GetBucketAclOutput) GoString() string {
11383 // SetGrants sets the Grants field's value.
11384 func (s *GetBucketAclOutput) SetGrants(v []*Grant) *GetBucketAclOutput {
11389 // SetOwner sets the Owner field's value.
11390 func (s *GetBucketAclOutput) SetOwner(v *Owner) *GetBucketAclOutput {
11395 type GetBucketAnalyticsConfigurationInput struct {
11396 _ struct{} `type:"structure"`
11398 // The name of the bucket from which an analytics configuration is retrieved.
11400 // Bucket is a required field
11401 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
11403 // The identifier used to represent an analytics configuration.
11405 // Id is a required field
11406 Id *string `location:"querystring" locationName:"id" type:"string" required:"true"`
11409 // String returns the string representation
11410 func (s GetBucketAnalyticsConfigurationInput) String() string {
11411 return awsutil.Prettify(s)
11414 // GoString returns the string representation
11415 func (s GetBucketAnalyticsConfigurationInput) GoString() string {
11419 // Validate inspects the fields of the type to determine if they are valid.
11420 func (s *GetBucketAnalyticsConfigurationInput) Validate() error {
11421 invalidParams := request.ErrInvalidParams{Context: "GetBucketAnalyticsConfigurationInput"}
11422 if s.Bucket == nil {
11423 invalidParams.Add(request.NewErrParamRequired("Bucket"))
11425 if s.Bucket != nil && len(*s.Bucket) < 1 {
11426 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
11429 invalidParams.Add(request.NewErrParamRequired("Id"))
11432 if invalidParams.Len() > 0 {
11433 return invalidParams
11438 // SetBucket sets the Bucket field's value.
11439 func (s *GetBucketAnalyticsConfigurationInput) SetBucket(v string) *GetBucketAnalyticsConfigurationInput {
11444 func (s *GetBucketAnalyticsConfigurationInput) getBucket() (v string) {
11445 if s.Bucket == nil {
11451 // SetId sets the Id field's value.
11452 func (s *GetBucketAnalyticsConfigurationInput) SetId(v string) *GetBucketAnalyticsConfigurationInput {
11457 type GetBucketAnalyticsConfigurationOutput struct {
11458 _ struct{} `type:"structure" payload:"AnalyticsConfiguration"`
11460 // The configuration and any analyses for the analytics filter.
11461 AnalyticsConfiguration *AnalyticsConfiguration `type:"structure"`
11464 // String returns the string representation
11465 func (s GetBucketAnalyticsConfigurationOutput) String() string {
11466 return awsutil.Prettify(s)
11469 // GoString returns the string representation
11470 func (s GetBucketAnalyticsConfigurationOutput) GoString() string {
11474 // SetAnalyticsConfiguration sets the AnalyticsConfiguration field's value.
11475 func (s *GetBucketAnalyticsConfigurationOutput) SetAnalyticsConfiguration(v *AnalyticsConfiguration) *GetBucketAnalyticsConfigurationOutput {
11476 s.AnalyticsConfiguration = v
11480 type GetBucketCorsInput struct {
11481 _ struct{} `type:"structure"`
11483 // Bucket is a required field
11484 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
11487 // String returns the string representation
11488 func (s GetBucketCorsInput) String() string {
11489 return awsutil.Prettify(s)
11492 // GoString returns the string representation
11493 func (s GetBucketCorsInput) GoString() string {
11497 // Validate inspects the fields of the type to determine if they are valid.
11498 func (s *GetBucketCorsInput) Validate() error {
11499 invalidParams := request.ErrInvalidParams{Context: "GetBucketCorsInput"}
11500 if s.Bucket == nil {
11501 invalidParams.Add(request.NewErrParamRequired("Bucket"))
11503 if s.Bucket != nil && len(*s.Bucket) < 1 {
11504 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
11507 if invalidParams.Len() > 0 {
11508 return invalidParams
11513 // SetBucket sets the Bucket field's value.
11514 func (s *GetBucketCorsInput) SetBucket(v string) *GetBucketCorsInput {
11519 func (s *GetBucketCorsInput) getBucket() (v string) {
11520 if s.Bucket == nil {
11526 type GetBucketCorsOutput struct {
11527 _ struct{} `type:"structure"`
11529 CORSRules []*CORSRule `locationName:"CORSRule" type:"list" flattened:"true"`
11532 // String returns the string representation
11533 func (s GetBucketCorsOutput) String() string {
11534 return awsutil.Prettify(s)
11537 // GoString returns the string representation
11538 func (s GetBucketCorsOutput) GoString() string {
11542 // SetCORSRules sets the CORSRules field's value.
11543 func (s *GetBucketCorsOutput) SetCORSRules(v []*CORSRule) *GetBucketCorsOutput {
11548 type GetBucketEncryptionInput struct {
11549 _ struct{} `type:"structure"`
11551 // The name of the bucket from which the server-side encryption configuration
11554 // Bucket is a required field
11555 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
11558 // String returns the string representation
11559 func (s GetBucketEncryptionInput) String() string {
11560 return awsutil.Prettify(s)
11563 // GoString returns the string representation
11564 func (s GetBucketEncryptionInput) GoString() string {
11568 // Validate inspects the fields of the type to determine if they are valid.
11569 func (s *GetBucketEncryptionInput) Validate() error {
11570 invalidParams := request.ErrInvalidParams{Context: "GetBucketEncryptionInput"}
11571 if s.Bucket == nil {
11572 invalidParams.Add(request.NewErrParamRequired("Bucket"))
11574 if s.Bucket != nil && len(*s.Bucket) < 1 {
11575 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
11578 if invalidParams.Len() > 0 {
11579 return invalidParams
11584 // SetBucket sets the Bucket field's value.
11585 func (s *GetBucketEncryptionInput) SetBucket(v string) *GetBucketEncryptionInput {
11590 func (s *GetBucketEncryptionInput) getBucket() (v string) {
11591 if s.Bucket == nil {
11597 type GetBucketEncryptionOutput struct {
11598 _ struct{} `type:"structure" payload:"ServerSideEncryptionConfiguration"`
11600 // Container for server-side encryption configuration rules. Currently S3 supports
11602 ServerSideEncryptionConfiguration *ServerSideEncryptionConfiguration `type:"structure"`
11605 // String returns the string representation
11606 func (s GetBucketEncryptionOutput) String() string {
11607 return awsutil.Prettify(s)
11610 // GoString returns the string representation
11611 func (s GetBucketEncryptionOutput) GoString() string {
11615 // SetServerSideEncryptionConfiguration sets the ServerSideEncryptionConfiguration field's value.
11616 func (s *GetBucketEncryptionOutput) SetServerSideEncryptionConfiguration(v *ServerSideEncryptionConfiguration) *GetBucketEncryptionOutput {
11617 s.ServerSideEncryptionConfiguration = v
11621 type GetBucketInventoryConfigurationInput struct {
11622 _ struct{} `type:"structure"`
11624 // The name of the bucket containing the inventory configuration to retrieve.
11626 // Bucket is a required field
11627 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
11629 // The ID used to identify the inventory configuration.
11631 // Id is a required field
11632 Id *string `location:"querystring" locationName:"id" type:"string" required:"true"`
11635 // String returns the string representation
11636 func (s GetBucketInventoryConfigurationInput) String() string {
11637 return awsutil.Prettify(s)
11640 // GoString returns the string representation
11641 func (s GetBucketInventoryConfigurationInput) GoString() string {
11645 // Validate inspects the fields of the type to determine if they are valid.
11646 func (s *GetBucketInventoryConfigurationInput) Validate() error {
11647 invalidParams := request.ErrInvalidParams{Context: "GetBucketInventoryConfigurationInput"}
11648 if s.Bucket == nil {
11649 invalidParams.Add(request.NewErrParamRequired("Bucket"))
11651 if s.Bucket != nil && len(*s.Bucket) < 1 {
11652 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
11655 invalidParams.Add(request.NewErrParamRequired("Id"))
11658 if invalidParams.Len() > 0 {
11659 return invalidParams
11664 // SetBucket sets the Bucket field's value.
11665 func (s *GetBucketInventoryConfigurationInput) SetBucket(v string) *GetBucketInventoryConfigurationInput {
11670 func (s *GetBucketInventoryConfigurationInput) getBucket() (v string) {
11671 if s.Bucket == nil {
11677 // SetId sets the Id field's value.
11678 func (s *GetBucketInventoryConfigurationInput) SetId(v string) *GetBucketInventoryConfigurationInput {
11683 type GetBucketInventoryConfigurationOutput struct {
11684 _ struct{} `type:"structure" payload:"InventoryConfiguration"`
11686 // Specifies the inventory configuration.
11687 InventoryConfiguration *InventoryConfiguration `type:"structure"`
11690 // String returns the string representation
11691 func (s GetBucketInventoryConfigurationOutput) String() string {
11692 return awsutil.Prettify(s)
11695 // GoString returns the string representation
11696 func (s GetBucketInventoryConfigurationOutput) GoString() string {
11700 // SetInventoryConfiguration sets the InventoryConfiguration field's value.
11701 func (s *GetBucketInventoryConfigurationOutput) SetInventoryConfiguration(v *InventoryConfiguration) *GetBucketInventoryConfigurationOutput {
11702 s.InventoryConfiguration = v
11706 type GetBucketLifecycleConfigurationInput struct {
11707 _ struct{} `type:"structure"`
11709 // Bucket is a required field
11710 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
11713 // String returns the string representation
11714 func (s GetBucketLifecycleConfigurationInput) String() string {
11715 return awsutil.Prettify(s)
11718 // GoString returns the string representation
11719 func (s GetBucketLifecycleConfigurationInput) GoString() string {
11723 // Validate inspects the fields of the type to determine if they are valid.
11724 func (s *GetBucketLifecycleConfigurationInput) Validate() error {
11725 invalidParams := request.ErrInvalidParams{Context: "GetBucketLifecycleConfigurationInput"}
11726 if s.Bucket == nil {
11727 invalidParams.Add(request.NewErrParamRequired("Bucket"))
11729 if s.Bucket != nil && len(*s.Bucket) < 1 {
11730 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
11733 if invalidParams.Len() > 0 {
11734 return invalidParams
11739 // SetBucket sets the Bucket field's value.
11740 func (s *GetBucketLifecycleConfigurationInput) SetBucket(v string) *GetBucketLifecycleConfigurationInput {
11745 func (s *GetBucketLifecycleConfigurationInput) getBucket() (v string) {
11746 if s.Bucket == nil {
11752 type GetBucketLifecycleConfigurationOutput struct {
11753 _ struct{} `type:"structure"`
11755 Rules []*LifecycleRule `locationName:"Rule" type:"list" flattened:"true"`
11758 // String returns the string representation
11759 func (s GetBucketLifecycleConfigurationOutput) String() string {
11760 return awsutil.Prettify(s)
11763 // GoString returns the string representation
11764 func (s GetBucketLifecycleConfigurationOutput) GoString() string {
11768 // SetRules sets the Rules field's value.
11769 func (s *GetBucketLifecycleConfigurationOutput) SetRules(v []*LifecycleRule) *GetBucketLifecycleConfigurationOutput {
11774 type GetBucketLifecycleInput struct {
11775 _ struct{} `type:"structure"`
11777 // Bucket is a required field
11778 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
11781 // String returns the string representation
11782 func (s GetBucketLifecycleInput) String() string {
11783 return awsutil.Prettify(s)
11786 // GoString returns the string representation
11787 func (s GetBucketLifecycleInput) GoString() string {
11791 // Validate inspects the fields of the type to determine if they are valid.
11792 func (s *GetBucketLifecycleInput) Validate() error {
11793 invalidParams := request.ErrInvalidParams{Context: "GetBucketLifecycleInput"}
11794 if s.Bucket == nil {
11795 invalidParams.Add(request.NewErrParamRequired("Bucket"))
11797 if s.Bucket != nil && len(*s.Bucket) < 1 {
11798 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
11801 if invalidParams.Len() > 0 {
11802 return invalidParams
11807 // SetBucket sets the Bucket field's value.
11808 func (s *GetBucketLifecycleInput) SetBucket(v string) *GetBucketLifecycleInput {
11813 func (s *GetBucketLifecycleInput) getBucket() (v string) {
11814 if s.Bucket == nil {
11820 type GetBucketLifecycleOutput struct {
11821 _ struct{} `type:"structure"`
11823 Rules []*Rule `locationName:"Rule" type:"list" flattened:"true"`
11826 // String returns the string representation
11827 func (s GetBucketLifecycleOutput) String() string {
11828 return awsutil.Prettify(s)
11831 // GoString returns the string representation
11832 func (s GetBucketLifecycleOutput) GoString() string {
11836 // SetRules sets the Rules field's value.
11837 func (s *GetBucketLifecycleOutput) SetRules(v []*Rule) *GetBucketLifecycleOutput {
11842 type GetBucketLocationInput struct {
11843 _ struct{} `type:"structure"`
11845 // Bucket is a required field
11846 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
11849 // String returns the string representation
11850 func (s GetBucketLocationInput) String() string {
11851 return awsutil.Prettify(s)
11854 // GoString returns the string representation
11855 func (s GetBucketLocationInput) GoString() string {
11859 // Validate inspects the fields of the type to determine if they are valid.
11860 func (s *GetBucketLocationInput) Validate() error {
11861 invalidParams := request.ErrInvalidParams{Context: "GetBucketLocationInput"}
11862 if s.Bucket == nil {
11863 invalidParams.Add(request.NewErrParamRequired("Bucket"))
11865 if s.Bucket != nil && len(*s.Bucket) < 1 {
11866 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
11869 if invalidParams.Len() > 0 {
11870 return invalidParams
11875 // SetBucket sets the Bucket field's value.
11876 func (s *GetBucketLocationInput) SetBucket(v string) *GetBucketLocationInput {
11881 func (s *GetBucketLocationInput) getBucket() (v string) {
11882 if s.Bucket == nil {
11888 type GetBucketLocationOutput struct {
11889 _ struct{} `type:"structure"`
11891 LocationConstraint *string `type:"string" enum:"BucketLocationConstraint"`
11894 // String returns the string representation
11895 func (s GetBucketLocationOutput) String() string {
11896 return awsutil.Prettify(s)
11899 // GoString returns the string representation
11900 func (s GetBucketLocationOutput) GoString() string {
11904 // SetLocationConstraint sets the LocationConstraint field's value.
11905 func (s *GetBucketLocationOutput) SetLocationConstraint(v string) *GetBucketLocationOutput {
11906 s.LocationConstraint = &v
11910 type GetBucketLoggingInput struct {
11911 _ struct{} `type:"structure"`
11913 // Bucket is a required field
11914 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
11917 // String returns the string representation
11918 func (s GetBucketLoggingInput) String() string {
11919 return awsutil.Prettify(s)
11922 // GoString returns the string representation
11923 func (s GetBucketLoggingInput) GoString() string {
11927 // Validate inspects the fields of the type to determine if they are valid.
11928 func (s *GetBucketLoggingInput) Validate() error {
11929 invalidParams := request.ErrInvalidParams{Context: "GetBucketLoggingInput"}
11930 if s.Bucket == nil {
11931 invalidParams.Add(request.NewErrParamRequired("Bucket"))
11933 if s.Bucket != nil && len(*s.Bucket) < 1 {
11934 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
11937 if invalidParams.Len() > 0 {
11938 return invalidParams
11943 // SetBucket sets the Bucket field's value.
11944 func (s *GetBucketLoggingInput) SetBucket(v string) *GetBucketLoggingInput {
11949 func (s *GetBucketLoggingInput) getBucket() (v string) {
11950 if s.Bucket == nil {
11956 type GetBucketLoggingOutput struct {
11957 _ struct{} `type:"structure"`
11959 // Container for logging information. Presence of this element indicates that
11960 // logging is enabled. Parameters TargetBucket and TargetPrefix are required
11962 LoggingEnabled *LoggingEnabled `type:"structure"`
11965 // String returns the string representation
11966 func (s GetBucketLoggingOutput) String() string {
11967 return awsutil.Prettify(s)
11970 // GoString returns the string representation
11971 func (s GetBucketLoggingOutput) GoString() string {
11975 // SetLoggingEnabled sets the LoggingEnabled field's value.
11976 func (s *GetBucketLoggingOutput) SetLoggingEnabled(v *LoggingEnabled) *GetBucketLoggingOutput {
11977 s.LoggingEnabled = v
11981 type GetBucketMetricsConfigurationInput struct {
11982 _ struct{} `type:"structure"`
11984 // The name of the bucket containing the metrics configuration to retrieve.
11986 // Bucket is a required field
11987 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
11989 // The ID used to identify the metrics configuration.
11991 // Id is a required field
11992 Id *string `location:"querystring" locationName:"id" type:"string" required:"true"`
11995 // String returns the string representation
11996 func (s GetBucketMetricsConfigurationInput) String() string {
11997 return awsutil.Prettify(s)
12000 // GoString returns the string representation
12001 func (s GetBucketMetricsConfigurationInput) GoString() string {
12005 // Validate inspects the fields of the type to determine if they are valid.
12006 func (s *GetBucketMetricsConfigurationInput) Validate() error {
12007 invalidParams := request.ErrInvalidParams{Context: "GetBucketMetricsConfigurationInput"}
12008 if s.Bucket == nil {
12009 invalidParams.Add(request.NewErrParamRequired("Bucket"))
12011 if s.Bucket != nil && len(*s.Bucket) < 1 {
12012 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
12015 invalidParams.Add(request.NewErrParamRequired("Id"))
12018 if invalidParams.Len() > 0 {
12019 return invalidParams
12024 // SetBucket sets the Bucket field's value.
12025 func (s *GetBucketMetricsConfigurationInput) SetBucket(v string) *GetBucketMetricsConfigurationInput {
12030 func (s *GetBucketMetricsConfigurationInput) getBucket() (v string) {
12031 if s.Bucket == nil {
12037 // SetId sets the Id field's value.
12038 func (s *GetBucketMetricsConfigurationInput) SetId(v string) *GetBucketMetricsConfigurationInput {
12043 type GetBucketMetricsConfigurationOutput struct {
12044 _ struct{} `type:"structure" payload:"MetricsConfiguration"`
12046 // Specifies the metrics configuration.
12047 MetricsConfiguration *MetricsConfiguration `type:"structure"`
12050 // String returns the string representation
12051 func (s GetBucketMetricsConfigurationOutput) String() string {
12052 return awsutil.Prettify(s)
12055 // GoString returns the string representation
12056 func (s GetBucketMetricsConfigurationOutput) GoString() string {
12060 // SetMetricsConfiguration sets the MetricsConfiguration field's value.
12061 func (s *GetBucketMetricsConfigurationOutput) SetMetricsConfiguration(v *MetricsConfiguration) *GetBucketMetricsConfigurationOutput {
12062 s.MetricsConfiguration = v
12066 type GetBucketNotificationConfigurationRequest struct {
12067 _ struct{} `type:"structure"`
12069 // Name of the bucket to get the notification configuration for.
12071 // Bucket is a required field
12072 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
12075 // String returns the string representation
12076 func (s GetBucketNotificationConfigurationRequest) String() string {
12077 return awsutil.Prettify(s)
12080 // GoString returns the string representation
12081 func (s GetBucketNotificationConfigurationRequest) GoString() string {
12085 // Validate inspects the fields of the type to determine if they are valid.
12086 func (s *GetBucketNotificationConfigurationRequest) Validate() error {
12087 invalidParams := request.ErrInvalidParams{Context: "GetBucketNotificationConfigurationRequest"}
12088 if s.Bucket == nil {
12089 invalidParams.Add(request.NewErrParamRequired("Bucket"))
12091 if s.Bucket != nil && len(*s.Bucket) < 1 {
12092 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
12095 if invalidParams.Len() > 0 {
12096 return invalidParams
12101 // SetBucket sets the Bucket field's value.
12102 func (s *GetBucketNotificationConfigurationRequest) SetBucket(v string) *GetBucketNotificationConfigurationRequest {
12107 func (s *GetBucketNotificationConfigurationRequest) getBucket() (v string) {
12108 if s.Bucket == nil {
12114 type GetBucketPolicyInput struct {
12115 _ struct{} `type:"structure"`
12117 // Bucket is a required field
12118 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
12121 // String returns the string representation
12122 func (s GetBucketPolicyInput) String() string {
12123 return awsutil.Prettify(s)
12126 // GoString returns the string representation
12127 func (s GetBucketPolicyInput) GoString() string {
12131 // Validate inspects the fields of the type to determine if they are valid.
12132 func (s *GetBucketPolicyInput) Validate() error {
12133 invalidParams := request.ErrInvalidParams{Context: "GetBucketPolicyInput"}
12134 if s.Bucket == nil {
12135 invalidParams.Add(request.NewErrParamRequired("Bucket"))
12137 if s.Bucket != nil && len(*s.Bucket) < 1 {
12138 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
12141 if invalidParams.Len() > 0 {
12142 return invalidParams
12147 // SetBucket sets the Bucket field's value.
12148 func (s *GetBucketPolicyInput) SetBucket(v string) *GetBucketPolicyInput {
12153 func (s *GetBucketPolicyInput) getBucket() (v string) {
12154 if s.Bucket == nil {
12160 type GetBucketPolicyOutput struct {
12161 _ struct{} `type:"structure" payload:"Policy"`
12163 // The bucket policy as a JSON document.
12164 Policy *string `type:"string"`
12167 // String returns the string representation
12168 func (s GetBucketPolicyOutput) String() string {
12169 return awsutil.Prettify(s)
12172 // GoString returns the string representation
12173 func (s GetBucketPolicyOutput) GoString() string {
12177 // SetPolicy sets the Policy field's value.
12178 func (s *GetBucketPolicyOutput) SetPolicy(v string) *GetBucketPolicyOutput {
12183 type GetBucketPolicyStatusInput struct {
12184 _ struct{} `type:"structure"`
12186 // The name of the Amazon S3 bucket whose policy status you want to retrieve.
12188 // Bucket is a required field
12189 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
12192 // String returns the string representation
12193 func (s GetBucketPolicyStatusInput) String() string {
12194 return awsutil.Prettify(s)
12197 // GoString returns the string representation
12198 func (s GetBucketPolicyStatusInput) GoString() string {
12202 // Validate inspects the fields of the type to determine if they are valid.
12203 func (s *GetBucketPolicyStatusInput) Validate() error {
12204 invalidParams := request.ErrInvalidParams{Context: "GetBucketPolicyStatusInput"}
12205 if s.Bucket == nil {
12206 invalidParams.Add(request.NewErrParamRequired("Bucket"))
12208 if s.Bucket != nil && len(*s.Bucket) < 1 {
12209 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
12212 if invalidParams.Len() > 0 {
12213 return invalidParams
12218 // SetBucket sets the Bucket field's value.
12219 func (s *GetBucketPolicyStatusInput) SetBucket(v string) *GetBucketPolicyStatusInput {
12224 func (s *GetBucketPolicyStatusInput) getBucket() (v string) {
12225 if s.Bucket == nil {
12231 type GetBucketPolicyStatusOutput struct {
12232 _ struct{} `type:"structure" payload:"PolicyStatus"`
12234 // The policy status for the specified bucket.
12235 PolicyStatus *PolicyStatus `type:"structure"`
12238 // String returns the string representation
12239 func (s GetBucketPolicyStatusOutput) String() string {
12240 return awsutil.Prettify(s)
12243 // GoString returns the string representation
12244 func (s GetBucketPolicyStatusOutput) GoString() string {
12248 // SetPolicyStatus sets the PolicyStatus field's value.
12249 func (s *GetBucketPolicyStatusOutput) SetPolicyStatus(v *PolicyStatus) *GetBucketPolicyStatusOutput {
12254 type GetBucketReplicationInput struct {
12255 _ struct{} `type:"structure"`
12257 // Bucket is a required field
12258 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
12261 // String returns the string representation
12262 func (s GetBucketReplicationInput) String() string {
12263 return awsutil.Prettify(s)
12266 // GoString returns the string representation
12267 func (s GetBucketReplicationInput) GoString() string {
12271 // Validate inspects the fields of the type to determine if they are valid.
12272 func (s *GetBucketReplicationInput) Validate() error {
12273 invalidParams := request.ErrInvalidParams{Context: "GetBucketReplicationInput"}
12274 if s.Bucket == nil {
12275 invalidParams.Add(request.NewErrParamRequired("Bucket"))
12277 if s.Bucket != nil && len(*s.Bucket) < 1 {
12278 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
12281 if invalidParams.Len() > 0 {
12282 return invalidParams
12287 // SetBucket sets the Bucket field's value.
12288 func (s *GetBucketReplicationInput) SetBucket(v string) *GetBucketReplicationInput {
12293 func (s *GetBucketReplicationInput) getBucket() (v string) {
12294 if s.Bucket == nil {
12300 type GetBucketReplicationOutput struct {
12301 _ struct{} `type:"structure" payload:"ReplicationConfiguration"`
12303 // A container for replication rules. You can add up to 1,000 rules. The maximum
12304 // size of a replication configuration is 2 MB.
12305 ReplicationConfiguration *ReplicationConfiguration `type:"structure"`
12308 // String returns the string representation
12309 func (s GetBucketReplicationOutput) String() string {
12310 return awsutil.Prettify(s)
12313 // GoString returns the string representation
12314 func (s GetBucketReplicationOutput) GoString() string {
12318 // SetReplicationConfiguration sets the ReplicationConfiguration field's value.
12319 func (s *GetBucketReplicationOutput) SetReplicationConfiguration(v *ReplicationConfiguration) *GetBucketReplicationOutput {
12320 s.ReplicationConfiguration = v
12324 type GetBucketRequestPaymentInput struct {
12325 _ struct{} `type:"structure"`
12327 // Bucket is a required field
12328 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
12331 // String returns the string representation
12332 func (s GetBucketRequestPaymentInput) String() string {
12333 return awsutil.Prettify(s)
12336 // GoString returns the string representation
12337 func (s GetBucketRequestPaymentInput) GoString() string {
12341 // Validate inspects the fields of the type to determine if they are valid.
12342 func (s *GetBucketRequestPaymentInput) Validate() error {
12343 invalidParams := request.ErrInvalidParams{Context: "GetBucketRequestPaymentInput"}
12344 if s.Bucket == nil {
12345 invalidParams.Add(request.NewErrParamRequired("Bucket"))
12347 if s.Bucket != nil && len(*s.Bucket) < 1 {
12348 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
12351 if invalidParams.Len() > 0 {
12352 return invalidParams
12357 // SetBucket sets the Bucket field's value.
12358 func (s *GetBucketRequestPaymentInput) SetBucket(v string) *GetBucketRequestPaymentInput {
12363 func (s *GetBucketRequestPaymentInput) getBucket() (v string) {
12364 if s.Bucket == nil {
12370 type GetBucketRequestPaymentOutput struct {
12371 _ struct{} `type:"structure"`
12373 // Specifies who pays for the download and request fees.
12374 Payer *string `type:"string" enum:"Payer"`
12377 // String returns the string representation
12378 func (s GetBucketRequestPaymentOutput) String() string {
12379 return awsutil.Prettify(s)
12382 // GoString returns the string representation
12383 func (s GetBucketRequestPaymentOutput) GoString() string {
12387 // SetPayer sets the Payer field's value.
12388 func (s *GetBucketRequestPaymentOutput) SetPayer(v string) *GetBucketRequestPaymentOutput {
12393 type GetBucketTaggingInput struct {
12394 _ struct{} `type:"structure"`
12396 // Bucket is a required field
12397 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
12400 // String returns the string representation
12401 func (s GetBucketTaggingInput) String() string {
12402 return awsutil.Prettify(s)
12405 // GoString returns the string representation
12406 func (s GetBucketTaggingInput) GoString() string {
12410 // Validate inspects the fields of the type to determine if they are valid.
12411 func (s *GetBucketTaggingInput) Validate() error {
12412 invalidParams := request.ErrInvalidParams{Context: "GetBucketTaggingInput"}
12413 if s.Bucket == nil {
12414 invalidParams.Add(request.NewErrParamRequired("Bucket"))
12416 if s.Bucket != nil && len(*s.Bucket) < 1 {
12417 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
12420 if invalidParams.Len() > 0 {
12421 return invalidParams
12426 // SetBucket sets the Bucket field's value.
12427 func (s *GetBucketTaggingInput) SetBucket(v string) *GetBucketTaggingInput {
12432 func (s *GetBucketTaggingInput) getBucket() (v string) {
12433 if s.Bucket == nil {
12439 type GetBucketTaggingOutput struct {
12440 _ struct{} `type:"structure"`
12442 // TagSet is a required field
12443 TagSet []*Tag `locationNameList:"Tag" type:"list" required:"true"`
12446 // String returns the string representation
12447 func (s GetBucketTaggingOutput) String() string {
12448 return awsutil.Prettify(s)
12451 // GoString returns the string representation
12452 func (s GetBucketTaggingOutput) GoString() string {
12456 // SetTagSet sets the TagSet field's value.
12457 func (s *GetBucketTaggingOutput) SetTagSet(v []*Tag) *GetBucketTaggingOutput {
12462 type GetBucketVersioningInput struct {
12463 _ struct{} `type:"structure"`
12465 // Bucket is a required field
12466 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
12469 // String returns the string representation
12470 func (s GetBucketVersioningInput) String() string {
12471 return awsutil.Prettify(s)
12474 // GoString returns the string representation
12475 func (s GetBucketVersioningInput) GoString() string {
12479 // Validate inspects the fields of the type to determine if they are valid.
12480 func (s *GetBucketVersioningInput) Validate() error {
12481 invalidParams := request.ErrInvalidParams{Context: "GetBucketVersioningInput"}
12482 if s.Bucket == nil {
12483 invalidParams.Add(request.NewErrParamRequired("Bucket"))
12485 if s.Bucket != nil && len(*s.Bucket) < 1 {
12486 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
12489 if invalidParams.Len() > 0 {
12490 return invalidParams
12495 // SetBucket sets the Bucket field's value.
12496 func (s *GetBucketVersioningInput) SetBucket(v string) *GetBucketVersioningInput {
12501 func (s *GetBucketVersioningInput) getBucket() (v string) {
12502 if s.Bucket == nil {
12508 type GetBucketVersioningOutput struct {
12509 _ struct{} `type:"structure"`
12511 // Specifies whether MFA delete is enabled in the bucket versioning configuration.
12512 // This element is only returned if the bucket has been configured with MFA
12513 // delete. If the bucket has never been so configured, this element is not returned.
12514 MFADelete *string `locationName:"MfaDelete" type:"string" enum:"MFADeleteStatus"`
12516 // The versioning state of the bucket.
12517 Status *string `type:"string" enum:"BucketVersioningStatus"`
12520 // String returns the string representation
12521 func (s GetBucketVersioningOutput) String() string {
12522 return awsutil.Prettify(s)
12525 // GoString returns the string representation
12526 func (s GetBucketVersioningOutput) GoString() string {
12530 // SetMFADelete sets the MFADelete field's value.
12531 func (s *GetBucketVersioningOutput) SetMFADelete(v string) *GetBucketVersioningOutput {
12536 // SetStatus sets the Status field's value.
12537 func (s *GetBucketVersioningOutput) SetStatus(v string) *GetBucketVersioningOutput {
12542 type GetBucketWebsiteInput struct {
12543 _ struct{} `type:"structure"`
12545 // Bucket is a required field
12546 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
12549 // String returns the string representation
12550 func (s GetBucketWebsiteInput) String() string {
12551 return awsutil.Prettify(s)
12554 // GoString returns the string representation
12555 func (s GetBucketWebsiteInput) GoString() string {
12559 // Validate inspects the fields of the type to determine if they are valid.
12560 func (s *GetBucketWebsiteInput) Validate() error {
12561 invalidParams := request.ErrInvalidParams{Context: "GetBucketWebsiteInput"}
12562 if s.Bucket == nil {
12563 invalidParams.Add(request.NewErrParamRequired("Bucket"))
12565 if s.Bucket != nil && len(*s.Bucket) < 1 {
12566 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
12569 if invalidParams.Len() > 0 {
12570 return invalidParams
12575 // SetBucket sets the Bucket field's value.
12576 func (s *GetBucketWebsiteInput) SetBucket(v string) *GetBucketWebsiteInput {
12581 func (s *GetBucketWebsiteInput) getBucket() (v string) {
12582 if s.Bucket == nil {
12588 type GetBucketWebsiteOutput struct {
12589 _ struct{} `type:"structure"`
12591 ErrorDocument *ErrorDocument `type:"structure"`
12593 IndexDocument *IndexDocument `type:"structure"`
12595 RedirectAllRequestsTo *RedirectAllRequestsTo `type:"structure"`
12597 RoutingRules []*RoutingRule `locationNameList:"RoutingRule" type:"list"`
12600 // String returns the string representation
12601 func (s GetBucketWebsiteOutput) String() string {
12602 return awsutil.Prettify(s)
12605 // GoString returns the string representation
12606 func (s GetBucketWebsiteOutput) GoString() string {
12610 // SetErrorDocument sets the ErrorDocument field's value.
12611 func (s *GetBucketWebsiteOutput) SetErrorDocument(v *ErrorDocument) *GetBucketWebsiteOutput {
12612 s.ErrorDocument = v
12616 // SetIndexDocument sets the IndexDocument field's value.
12617 func (s *GetBucketWebsiteOutput) SetIndexDocument(v *IndexDocument) *GetBucketWebsiteOutput {
12618 s.IndexDocument = v
12622 // SetRedirectAllRequestsTo sets the RedirectAllRequestsTo field's value.
12623 func (s *GetBucketWebsiteOutput) SetRedirectAllRequestsTo(v *RedirectAllRequestsTo) *GetBucketWebsiteOutput {
12624 s.RedirectAllRequestsTo = v
12628 // SetRoutingRules sets the RoutingRules field's value.
12629 func (s *GetBucketWebsiteOutput) SetRoutingRules(v []*RoutingRule) *GetBucketWebsiteOutput {
12634 type GetObjectAclInput struct {
12635 _ struct{} `type:"structure"`
12637 // Bucket is a required field
12638 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
12640 // Key is a required field
12641 Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"`
12643 // Confirms that the requester knows that she or he will be charged for the
12644 // request. Bucket owners need not specify this parameter in their requests.
12645 // Documentation on downloading objects from requester pays buckets can be found
12646 // at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
12647 RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
12649 // VersionId used to reference a specific version of the object.
12650 VersionId *string `location:"querystring" locationName:"versionId" type:"string"`
12653 // String returns the string representation
12654 func (s GetObjectAclInput) String() string {
12655 return awsutil.Prettify(s)
12658 // GoString returns the string representation
12659 func (s GetObjectAclInput) GoString() string {
12663 // Validate inspects the fields of the type to determine if they are valid.
12664 func (s *GetObjectAclInput) Validate() error {
12665 invalidParams := request.ErrInvalidParams{Context: "GetObjectAclInput"}
12666 if s.Bucket == nil {
12667 invalidParams.Add(request.NewErrParamRequired("Bucket"))
12669 if s.Bucket != nil && len(*s.Bucket) < 1 {
12670 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
12673 invalidParams.Add(request.NewErrParamRequired("Key"))
12675 if s.Key != nil && len(*s.Key) < 1 {
12676 invalidParams.Add(request.NewErrParamMinLen("Key", 1))
12679 if invalidParams.Len() > 0 {
12680 return invalidParams
12685 // SetBucket sets the Bucket field's value.
12686 func (s *GetObjectAclInput) SetBucket(v string) *GetObjectAclInput {
12691 func (s *GetObjectAclInput) getBucket() (v string) {
12692 if s.Bucket == nil {
12698 // SetKey sets the Key field's value.
12699 func (s *GetObjectAclInput) SetKey(v string) *GetObjectAclInput {
12704 // SetRequestPayer sets the RequestPayer field's value.
12705 func (s *GetObjectAclInput) SetRequestPayer(v string) *GetObjectAclInput {
12706 s.RequestPayer = &v
12710 // SetVersionId sets the VersionId field's value.
12711 func (s *GetObjectAclInput) SetVersionId(v string) *GetObjectAclInput {
12716 type GetObjectAclOutput struct {
12717 _ struct{} `type:"structure"`
12719 // A list of grants.
12720 Grants []*Grant `locationName:"AccessControlList" locationNameList:"Grant" type:"list"`
12722 Owner *Owner `type:"structure"`
12724 // If present, indicates that the requester was successfully charged for the
12726 RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"`
12729 // String returns the string representation
12730 func (s GetObjectAclOutput) String() string {
12731 return awsutil.Prettify(s)
12734 // GoString returns the string representation
12735 func (s GetObjectAclOutput) GoString() string {
12739 // SetGrants sets the Grants field's value.
12740 func (s *GetObjectAclOutput) SetGrants(v []*Grant) *GetObjectAclOutput {
12745 // SetOwner sets the Owner field's value.
12746 func (s *GetObjectAclOutput) SetOwner(v *Owner) *GetObjectAclOutput {
12751 // SetRequestCharged sets the RequestCharged field's value.
12752 func (s *GetObjectAclOutput) SetRequestCharged(v string) *GetObjectAclOutput {
12753 s.RequestCharged = &v
12757 type GetObjectInput struct {
12758 _ struct{} `type:"structure"`
12760 // Bucket is a required field
12761 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
12763 // Return the object only if its entity tag (ETag) is the same as the one specified,
12764 // otherwise return a 412 (precondition failed).
12765 IfMatch *string `location:"header" locationName:"If-Match" type:"string"`
12767 // Return the object only if it has been modified since the specified time,
12768 // otherwise return a 304 (not modified).
12769 IfModifiedSince *time.Time `location:"header" locationName:"If-Modified-Since" type:"timestamp"`
12771 // Return the object only if its entity tag (ETag) is different from the one
12772 // specified, otherwise return a 304 (not modified).
12773 IfNoneMatch *string `location:"header" locationName:"If-None-Match" type:"string"`
12775 // Return the object only if it has not been modified since the specified time,
12776 // otherwise return a 412 (precondition failed).
12777 IfUnmodifiedSince *time.Time `location:"header" locationName:"If-Unmodified-Since" type:"timestamp"`
12779 // Key is a required field
12780 Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"`
12782 // Part number of the object being read. This is a positive integer between
12783 // 1 and 10,000. Effectively performs a 'ranged' GET request for the part specified.
12784 // Useful for downloading just a part of an object.
12785 PartNumber *int64 `location:"querystring" locationName:"partNumber" type:"integer"`
12787 // Downloads the specified range bytes of an object. For more information about
12788 // the HTTP Range header, go to http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35.
12789 Range *string `location:"header" locationName:"Range" type:"string"`
12791 // Confirms that the requester knows that she or he will be charged for the
12792 // request. Bucket owners need not specify this parameter in their requests.
12793 // Documentation on downloading objects from requester pays buckets can be found
12794 // at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
12795 RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
12797 // Sets the Cache-Control header of the response.
12798 ResponseCacheControl *string `location:"querystring" locationName:"response-cache-control" type:"string"`
12800 // Sets the Content-Disposition header of the response
12801 ResponseContentDisposition *string `location:"querystring" locationName:"response-content-disposition" type:"string"`
12803 // Sets the Content-Encoding header of the response.
12804 ResponseContentEncoding *string `location:"querystring" locationName:"response-content-encoding" type:"string"`
12806 // Sets the Content-Language header of the response.
12807 ResponseContentLanguage *string `location:"querystring" locationName:"response-content-language" type:"string"`
12809 // Sets the Content-Type header of the response.
12810 ResponseContentType *string `location:"querystring" locationName:"response-content-type" type:"string"`
12812 // Sets the Expires header of the response.
12813 ResponseExpires *time.Time `location:"querystring" locationName:"response-expires" type:"timestamp"`
12815 // Specifies the algorithm to use to when encrypting the object (e.g., AES256).
12816 SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"`
12818 // Specifies the customer-provided encryption key for Amazon S3 to use in encrypting
12819 // data. This value is used to store the object and then it is discarded; Amazon
12820 // does not store the encryption key. The key must be appropriate for use with
12821 // the algorithm specified in the x-amz-server-side​-encryption​-customer-algorithm
12823 SSECustomerKey *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key" type:"string" sensitive:"true"`
12825 // Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321.
12826 // Amazon S3 uses this header for a message integrity check to ensure the encryption
12827 // key was transmitted without error.
12828 SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"`
12830 // VersionId used to reference a specific version of the object.
12831 VersionId *string `location:"querystring" locationName:"versionId" type:"string"`
12834 // String returns the string representation
12835 func (s GetObjectInput) String() string {
12836 return awsutil.Prettify(s)
12839 // GoString returns the string representation
12840 func (s GetObjectInput) GoString() string {
12844 // Validate inspects the fields of the type to determine if they are valid.
12845 func (s *GetObjectInput) Validate() error {
12846 invalidParams := request.ErrInvalidParams{Context: "GetObjectInput"}
12847 if s.Bucket == nil {
12848 invalidParams.Add(request.NewErrParamRequired("Bucket"))
12850 if s.Bucket != nil && len(*s.Bucket) < 1 {
12851 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
12854 invalidParams.Add(request.NewErrParamRequired("Key"))
12856 if s.Key != nil && len(*s.Key) < 1 {
12857 invalidParams.Add(request.NewErrParamMinLen("Key", 1))
12860 if invalidParams.Len() > 0 {
12861 return invalidParams
12866 // SetBucket sets the Bucket field's value.
12867 func (s *GetObjectInput) SetBucket(v string) *GetObjectInput {
12872 func (s *GetObjectInput) getBucket() (v string) {
12873 if s.Bucket == nil {
12879 // SetIfMatch sets the IfMatch field's value.
12880 func (s *GetObjectInput) SetIfMatch(v string) *GetObjectInput {
12885 // SetIfModifiedSince sets the IfModifiedSince field's value.
12886 func (s *GetObjectInput) SetIfModifiedSince(v time.Time) *GetObjectInput {
12887 s.IfModifiedSince = &v
12891 // SetIfNoneMatch sets the IfNoneMatch field's value.
12892 func (s *GetObjectInput) SetIfNoneMatch(v string) *GetObjectInput {
12897 // SetIfUnmodifiedSince sets the IfUnmodifiedSince field's value.
12898 func (s *GetObjectInput) SetIfUnmodifiedSince(v time.Time) *GetObjectInput {
12899 s.IfUnmodifiedSince = &v
12903 // SetKey sets the Key field's value.
12904 func (s *GetObjectInput) SetKey(v string) *GetObjectInput {
12909 // SetPartNumber sets the PartNumber field's value.
12910 func (s *GetObjectInput) SetPartNumber(v int64) *GetObjectInput {
12915 // SetRange sets the Range field's value.
12916 func (s *GetObjectInput) SetRange(v string) *GetObjectInput {
12921 // SetRequestPayer sets the RequestPayer field's value.
12922 func (s *GetObjectInput) SetRequestPayer(v string) *GetObjectInput {
12923 s.RequestPayer = &v
12927 // SetResponseCacheControl sets the ResponseCacheControl field's value.
12928 func (s *GetObjectInput) SetResponseCacheControl(v string) *GetObjectInput {
12929 s.ResponseCacheControl = &v
12933 // SetResponseContentDisposition sets the ResponseContentDisposition field's value.
12934 func (s *GetObjectInput) SetResponseContentDisposition(v string) *GetObjectInput {
12935 s.ResponseContentDisposition = &v
12939 // SetResponseContentEncoding sets the ResponseContentEncoding field's value.
12940 func (s *GetObjectInput) SetResponseContentEncoding(v string) *GetObjectInput {
12941 s.ResponseContentEncoding = &v
12945 // SetResponseContentLanguage sets the ResponseContentLanguage field's value.
12946 func (s *GetObjectInput) SetResponseContentLanguage(v string) *GetObjectInput {
12947 s.ResponseContentLanguage = &v
12951 // SetResponseContentType sets the ResponseContentType field's value.
12952 func (s *GetObjectInput) SetResponseContentType(v string) *GetObjectInput {
12953 s.ResponseContentType = &v
12957 // SetResponseExpires sets the ResponseExpires field's value.
12958 func (s *GetObjectInput) SetResponseExpires(v time.Time) *GetObjectInput {
12959 s.ResponseExpires = &v
12963 // SetSSECustomerAlgorithm sets the SSECustomerAlgorithm field's value.
12964 func (s *GetObjectInput) SetSSECustomerAlgorithm(v string) *GetObjectInput {
12965 s.SSECustomerAlgorithm = &v
12969 // SetSSECustomerKey sets the SSECustomerKey field's value.
12970 func (s *GetObjectInput) SetSSECustomerKey(v string) *GetObjectInput {
12971 s.SSECustomerKey = &v
12975 func (s *GetObjectInput) getSSECustomerKey() (v string) {
12976 if s.SSECustomerKey == nil {
12979 return *s.SSECustomerKey
12982 // SetSSECustomerKeyMD5 sets the SSECustomerKeyMD5 field's value.
12983 func (s *GetObjectInput) SetSSECustomerKeyMD5(v string) *GetObjectInput {
12984 s.SSECustomerKeyMD5 = &v
12988 // SetVersionId sets the VersionId field's value.
12989 func (s *GetObjectInput) SetVersionId(v string) *GetObjectInput {
12994 type GetObjectLegalHoldInput struct {
12995 _ struct{} `type:"structure"`
12997 // The bucket containing the object whose Legal Hold status you want to retrieve.
12999 // Bucket is a required field
13000 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
13002 // The key name for the object whose Legal Hold status you want to retrieve.
13004 // Key is a required field
13005 Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"`
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"`
13013 // The version ID of the object whose Legal Hold status you want to retrieve.
13014 VersionId *string `location:"querystring" locationName:"versionId" type:"string"`
13017 // String returns the string representation
13018 func (s GetObjectLegalHoldInput) String() string {
13019 return awsutil.Prettify(s)
13022 // GoString returns the string representation
13023 func (s GetObjectLegalHoldInput) GoString() string {
13027 // Validate inspects the fields of the type to determine if they are valid.
13028 func (s *GetObjectLegalHoldInput) Validate() error {
13029 invalidParams := request.ErrInvalidParams{Context: "GetObjectLegalHoldInput"}
13030 if s.Bucket == nil {
13031 invalidParams.Add(request.NewErrParamRequired("Bucket"))
13033 if s.Bucket != nil && len(*s.Bucket) < 1 {
13034 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
13037 invalidParams.Add(request.NewErrParamRequired("Key"))
13039 if s.Key != nil && len(*s.Key) < 1 {
13040 invalidParams.Add(request.NewErrParamMinLen("Key", 1))
13043 if invalidParams.Len() > 0 {
13044 return invalidParams
13049 // SetBucket sets the Bucket field's value.
13050 func (s *GetObjectLegalHoldInput) SetBucket(v string) *GetObjectLegalHoldInput {
13055 func (s *GetObjectLegalHoldInput) getBucket() (v string) {
13056 if s.Bucket == nil {
13062 // SetKey sets the Key field's value.
13063 func (s *GetObjectLegalHoldInput) SetKey(v string) *GetObjectLegalHoldInput {
13068 // SetRequestPayer sets the RequestPayer field's value.
13069 func (s *GetObjectLegalHoldInput) SetRequestPayer(v string) *GetObjectLegalHoldInput {
13070 s.RequestPayer = &v
13074 // SetVersionId sets the VersionId field's value.
13075 func (s *GetObjectLegalHoldInput) SetVersionId(v string) *GetObjectLegalHoldInput {
13080 type GetObjectLegalHoldOutput struct {
13081 _ struct{} `type:"structure" payload:"LegalHold"`
13083 // The current Legal Hold status for the specified object.
13084 LegalHold *ObjectLockLegalHold `type:"structure"`
13087 // String returns the string representation
13088 func (s GetObjectLegalHoldOutput) String() string {
13089 return awsutil.Prettify(s)
13092 // GoString returns the string representation
13093 func (s GetObjectLegalHoldOutput) GoString() string {
13097 // SetLegalHold sets the LegalHold field's value.
13098 func (s *GetObjectLegalHoldOutput) SetLegalHold(v *ObjectLockLegalHold) *GetObjectLegalHoldOutput {
13103 type GetObjectLockConfigurationInput struct {
13104 _ struct{} `type:"structure"`
13106 // The bucket whose Object Lock configuration you want to retrieve.
13108 // Bucket is a required field
13109 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
13112 // String returns the string representation
13113 func (s GetObjectLockConfigurationInput) String() string {
13114 return awsutil.Prettify(s)
13117 // GoString returns the string representation
13118 func (s GetObjectLockConfigurationInput) GoString() string {
13122 // Validate inspects the fields of the type to determine if they are valid.
13123 func (s *GetObjectLockConfigurationInput) Validate() error {
13124 invalidParams := request.ErrInvalidParams{Context: "GetObjectLockConfigurationInput"}
13125 if s.Bucket == nil {
13126 invalidParams.Add(request.NewErrParamRequired("Bucket"))
13128 if s.Bucket != nil && len(*s.Bucket) < 1 {
13129 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
13132 if invalidParams.Len() > 0 {
13133 return invalidParams
13138 // SetBucket sets the Bucket field's value.
13139 func (s *GetObjectLockConfigurationInput) SetBucket(v string) *GetObjectLockConfigurationInput {
13144 func (s *GetObjectLockConfigurationInput) getBucket() (v string) {
13145 if s.Bucket == nil {
13151 type GetObjectLockConfigurationOutput struct {
13152 _ struct{} `type:"structure" payload:"ObjectLockConfiguration"`
13154 // The specified bucket's Object Lock configuration.
13155 ObjectLockConfiguration *ObjectLockConfiguration `type:"structure"`
13158 // String returns the string representation
13159 func (s GetObjectLockConfigurationOutput) String() string {
13160 return awsutil.Prettify(s)
13163 // GoString returns the string representation
13164 func (s GetObjectLockConfigurationOutput) GoString() string {
13168 // SetObjectLockConfiguration sets the ObjectLockConfiguration field's value.
13169 func (s *GetObjectLockConfigurationOutput) SetObjectLockConfiguration(v *ObjectLockConfiguration) *GetObjectLockConfigurationOutput {
13170 s.ObjectLockConfiguration = v
13174 type GetObjectOutput struct {
13175 _ struct{} `type:"structure" payload:"Body"`
13177 AcceptRanges *string `location:"header" locationName:"accept-ranges" type:"string"`
13180 Body io.ReadCloser `type:"blob"`
13182 // Specifies caching behavior along the request/reply chain.
13183 CacheControl *string `location:"header" locationName:"Cache-Control" type:"string"`
13185 // Specifies presentational information for the object.
13186 ContentDisposition *string `location:"header" locationName:"Content-Disposition" type:"string"`
13188 // Specifies what content encodings have been applied to the object and thus
13189 // what decoding mechanisms must be applied to obtain the media-type referenced
13190 // by the Content-Type header field.
13191 ContentEncoding *string `location:"header" locationName:"Content-Encoding" type:"string"`
13193 // The language the content is in.
13194 ContentLanguage *string `location:"header" locationName:"Content-Language" type:"string"`
13196 // Size of the body in bytes.
13197 ContentLength *int64 `location:"header" locationName:"Content-Length" type:"long"`
13199 // The portion of the object returned in the response.
13200 ContentRange *string `location:"header" locationName:"Content-Range" type:"string"`
13202 // A standard MIME type describing the format of the object data.
13203 ContentType *string `location:"header" locationName:"Content-Type" type:"string"`
13205 // Specifies whether the object retrieved was (true) or was not (false) a Delete
13206 // Marker. If false, this response header does not appear in the response.
13207 DeleteMarker *bool `location:"header" locationName:"x-amz-delete-marker" type:"boolean"`
13209 // An ETag is an opaque identifier assigned by a web server to a specific version
13210 // of a resource found at a URL
13211 ETag *string `location:"header" locationName:"ETag" type:"string"`
13213 // If the object expiration is configured (see PUT Bucket lifecycle), the response
13214 // includes this header. It includes the expiry-date and rule-id key value pairs
13215 // providing object expiration information. The value of the rule-id is URL
13217 Expiration *string `location:"header" locationName:"x-amz-expiration" type:"string"`
13219 // The date and time at which the object is no longer cacheable.
13220 Expires *string `location:"header" locationName:"Expires" type:"string"`
13222 // Last modified date of the object
13223 LastModified *time.Time `location:"header" locationName:"Last-Modified" type:"timestamp"`
13225 // A map of metadata to store with the object in S3.
13226 Metadata map[string]*string `location:"headers" locationName:"x-amz-meta-" type:"map"`
13228 // This is set to the number of metadata entries not returned in x-amz-meta
13229 // headers. This can happen if you create metadata using an API like SOAP that
13230 // supports more flexible metadata than the REST API. For example, using SOAP,
13231 // you can create metadata whose values are not legal HTTP headers.
13232 MissingMeta *int64 `location:"header" locationName:"x-amz-missing-meta" type:"integer"`
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"`
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"`
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"`
13244 // The count of parts this object has.
13245 PartsCount *int64 `location:"header" locationName:"x-amz-mp-parts-count" type:"integer"`
13247 ReplicationStatus *string `location:"header" locationName:"x-amz-replication-status" type:"string" enum:"ReplicationStatus"`
13249 // If present, indicates that the requester was successfully charged for the
13251 RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"`
13253 // Provides information about object restoration operation and expiration time
13254 // of the restored object copy.
13255 Restore *string `location:"header" locationName:"x-amz-restore" type:"string"`
13257 // If server-side encryption with a customer-provided encryption key was requested,
13258 // the response will include this header confirming the encryption algorithm
13260 SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"`
13262 // If server-side encryption with a customer-provided encryption key was requested,
13263 // the response will include this header to provide round trip message integrity
13264 // verification of the customer-provided encryption key.
13265 SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"`
13267 // If present, specifies the ID of the AWS Key Management Service (KMS) master
13268 // encryption key that was used for the object.
13269 SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string" sensitive:"true"`
13271 // The Server-side encryption algorithm used when storing this object in S3
13272 // (e.g., AES256, aws:kms).
13273 ServerSideEncryption *string `location:"header" locationName:"x-amz-server-side-encryption" type:"string" enum:"ServerSideEncryption"`
13275 StorageClass *string `location:"header" locationName:"x-amz-storage-class" type:"string" enum:"StorageClass"`
13277 // The number of tags, if any, on the object.
13278 TagCount *int64 `location:"header" locationName:"x-amz-tagging-count" type:"integer"`
13280 // Version of the object.
13281 VersionId *string `location:"header" locationName:"x-amz-version-id" type:"string"`
13283 // If the bucket is configured as a website, redirects requests for this object
13284 // to another object in the same bucket or to an external URL. Amazon S3 stores
13285 // the value of this header in the object metadata.
13286 WebsiteRedirectLocation *string `location:"header" locationName:"x-amz-website-redirect-location" type:"string"`
13289 // String returns the string representation
13290 func (s GetObjectOutput) String() string {
13291 return awsutil.Prettify(s)
13294 // GoString returns the string representation
13295 func (s GetObjectOutput) GoString() string {
13299 // SetAcceptRanges sets the AcceptRanges field's value.
13300 func (s *GetObjectOutput) SetAcceptRanges(v string) *GetObjectOutput {
13301 s.AcceptRanges = &v
13305 // SetBody sets the Body field's value.
13306 func (s *GetObjectOutput) SetBody(v io.ReadCloser) *GetObjectOutput {
13311 // SetCacheControl sets the CacheControl field's value.
13312 func (s *GetObjectOutput) SetCacheControl(v string) *GetObjectOutput {
13313 s.CacheControl = &v
13317 // SetContentDisposition sets the ContentDisposition field's value.
13318 func (s *GetObjectOutput) SetContentDisposition(v string) *GetObjectOutput {
13319 s.ContentDisposition = &v
13323 // SetContentEncoding sets the ContentEncoding field's value.
13324 func (s *GetObjectOutput) SetContentEncoding(v string) *GetObjectOutput {
13325 s.ContentEncoding = &v
13329 // SetContentLanguage sets the ContentLanguage field's value.
13330 func (s *GetObjectOutput) SetContentLanguage(v string) *GetObjectOutput {
13331 s.ContentLanguage = &v
13335 // SetContentLength sets the ContentLength field's value.
13336 func (s *GetObjectOutput) SetContentLength(v int64) *GetObjectOutput {
13337 s.ContentLength = &v
13341 // SetContentRange sets the ContentRange field's value.
13342 func (s *GetObjectOutput) SetContentRange(v string) *GetObjectOutput {
13343 s.ContentRange = &v
13347 // SetContentType sets the ContentType field's value.
13348 func (s *GetObjectOutput) SetContentType(v string) *GetObjectOutput {
13353 // SetDeleteMarker sets the DeleteMarker field's value.
13354 func (s *GetObjectOutput) SetDeleteMarker(v bool) *GetObjectOutput {
13355 s.DeleteMarker = &v
13359 // SetETag sets the ETag field's value.
13360 func (s *GetObjectOutput) SetETag(v string) *GetObjectOutput {
13365 // SetExpiration sets the Expiration field's value.
13366 func (s *GetObjectOutput) SetExpiration(v string) *GetObjectOutput {
13371 // SetExpires sets the Expires field's value.
13372 func (s *GetObjectOutput) SetExpires(v string) *GetObjectOutput {
13377 // SetLastModified sets the LastModified field's value.
13378 func (s *GetObjectOutput) SetLastModified(v time.Time) *GetObjectOutput {
13379 s.LastModified = &v
13383 // SetMetadata sets the Metadata field's value.
13384 func (s *GetObjectOutput) SetMetadata(v map[string]*string) *GetObjectOutput {
13389 // SetMissingMeta sets the MissingMeta field's value.
13390 func (s *GetObjectOutput) SetMissingMeta(v int64) *GetObjectOutput {
13395 // SetObjectLockLegalHoldStatus sets the ObjectLockLegalHoldStatus field's value.
13396 func (s *GetObjectOutput) SetObjectLockLegalHoldStatus(v string) *GetObjectOutput {
13397 s.ObjectLockLegalHoldStatus = &v
13401 // SetObjectLockMode sets the ObjectLockMode field's value.
13402 func (s *GetObjectOutput) SetObjectLockMode(v string) *GetObjectOutput {
13403 s.ObjectLockMode = &v
13407 // SetObjectLockRetainUntilDate sets the ObjectLockRetainUntilDate field's value.
13408 func (s *GetObjectOutput) SetObjectLockRetainUntilDate(v time.Time) *GetObjectOutput {
13409 s.ObjectLockRetainUntilDate = &v
13413 // SetPartsCount sets the PartsCount field's value.
13414 func (s *GetObjectOutput) SetPartsCount(v int64) *GetObjectOutput {
13419 // SetReplicationStatus sets the ReplicationStatus field's value.
13420 func (s *GetObjectOutput) SetReplicationStatus(v string) *GetObjectOutput {
13421 s.ReplicationStatus = &v
13425 // SetRequestCharged sets the RequestCharged field's value.
13426 func (s *GetObjectOutput) SetRequestCharged(v string) *GetObjectOutput {
13427 s.RequestCharged = &v
13431 // SetRestore sets the Restore field's value.
13432 func (s *GetObjectOutput) SetRestore(v string) *GetObjectOutput {
13437 // SetSSECustomerAlgorithm sets the SSECustomerAlgorithm field's value.
13438 func (s *GetObjectOutput) SetSSECustomerAlgorithm(v string) *GetObjectOutput {
13439 s.SSECustomerAlgorithm = &v
13443 // SetSSECustomerKeyMD5 sets the SSECustomerKeyMD5 field's value.
13444 func (s *GetObjectOutput) SetSSECustomerKeyMD5(v string) *GetObjectOutput {
13445 s.SSECustomerKeyMD5 = &v
13449 // SetSSEKMSKeyId sets the SSEKMSKeyId field's value.
13450 func (s *GetObjectOutput) SetSSEKMSKeyId(v string) *GetObjectOutput {
13455 // SetServerSideEncryption sets the ServerSideEncryption field's value.
13456 func (s *GetObjectOutput) SetServerSideEncryption(v string) *GetObjectOutput {
13457 s.ServerSideEncryption = &v
13461 // SetStorageClass sets the StorageClass field's value.
13462 func (s *GetObjectOutput) SetStorageClass(v string) *GetObjectOutput {
13463 s.StorageClass = &v
13467 // SetTagCount sets the TagCount field's value.
13468 func (s *GetObjectOutput) SetTagCount(v int64) *GetObjectOutput {
13473 // SetVersionId sets the VersionId field's value.
13474 func (s *GetObjectOutput) SetVersionId(v string) *GetObjectOutput {
13479 // SetWebsiteRedirectLocation sets the WebsiteRedirectLocation field's value.
13480 func (s *GetObjectOutput) SetWebsiteRedirectLocation(v string) *GetObjectOutput {
13481 s.WebsiteRedirectLocation = &v
13485 type GetObjectRetentionInput struct {
13486 _ struct{} `type:"structure"`
13488 // The bucket containing the object whose retention settings you want to retrieve.
13490 // Bucket is a required field
13491 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
13493 // The key name for the object whose retention settings you want to retrieve.
13495 // Key is a required field
13496 Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"`
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"`
13504 // The version ID for the object whose retention settings you want to retrieve.
13505 VersionId *string `location:"querystring" locationName:"versionId" type:"string"`
13508 // String returns the string representation
13509 func (s GetObjectRetentionInput) String() string {
13510 return awsutil.Prettify(s)
13513 // GoString returns the string representation
13514 func (s GetObjectRetentionInput) GoString() string {
13518 // Validate inspects the fields of the type to determine if they are valid.
13519 func (s *GetObjectRetentionInput) Validate() error {
13520 invalidParams := request.ErrInvalidParams{Context: "GetObjectRetentionInput"}
13521 if s.Bucket == nil {
13522 invalidParams.Add(request.NewErrParamRequired("Bucket"))
13524 if s.Bucket != nil && len(*s.Bucket) < 1 {
13525 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
13528 invalidParams.Add(request.NewErrParamRequired("Key"))
13530 if s.Key != nil && len(*s.Key) < 1 {
13531 invalidParams.Add(request.NewErrParamMinLen("Key", 1))
13534 if invalidParams.Len() > 0 {
13535 return invalidParams
13540 // SetBucket sets the Bucket field's value.
13541 func (s *GetObjectRetentionInput) SetBucket(v string) *GetObjectRetentionInput {
13546 func (s *GetObjectRetentionInput) getBucket() (v string) {
13547 if s.Bucket == nil {
13553 // SetKey sets the Key field's value.
13554 func (s *GetObjectRetentionInput) SetKey(v string) *GetObjectRetentionInput {
13559 // SetRequestPayer sets the RequestPayer field's value.
13560 func (s *GetObjectRetentionInput) SetRequestPayer(v string) *GetObjectRetentionInput {
13561 s.RequestPayer = &v
13565 // SetVersionId sets the VersionId field's value.
13566 func (s *GetObjectRetentionInput) SetVersionId(v string) *GetObjectRetentionInput {
13571 type GetObjectRetentionOutput struct {
13572 _ struct{} `type:"structure" payload:"Retention"`
13574 // The container element for an object's retention settings.
13575 Retention *ObjectLockRetention `type:"structure"`
13578 // String returns the string representation
13579 func (s GetObjectRetentionOutput) String() string {
13580 return awsutil.Prettify(s)
13583 // GoString returns the string representation
13584 func (s GetObjectRetentionOutput) GoString() string {
13588 // SetRetention sets the Retention field's value.
13589 func (s *GetObjectRetentionOutput) SetRetention(v *ObjectLockRetention) *GetObjectRetentionOutput {
13594 type GetObjectTaggingInput struct {
13595 _ struct{} `type:"structure"`
13597 // Bucket is a required field
13598 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
13600 // Key is a required field
13601 Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"`
13603 VersionId *string `location:"querystring" locationName:"versionId" type:"string"`
13606 // String returns the string representation
13607 func (s GetObjectTaggingInput) String() string {
13608 return awsutil.Prettify(s)
13611 // GoString returns the string representation
13612 func (s GetObjectTaggingInput) GoString() string {
13616 // Validate inspects the fields of the type to determine if they are valid.
13617 func (s *GetObjectTaggingInput) Validate() error {
13618 invalidParams := request.ErrInvalidParams{Context: "GetObjectTaggingInput"}
13619 if s.Bucket == nil {
13620 invalidParams.Add(request.NewErrParamRequired("Bucket"))
13622 if s.Bucket != nil && len(*s.Bucket) < 1 {
13623 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
13626 invalidParams.Add(request.NewErrParamRequired("Key"))
13628 if s.Key != nil && len(*s.Key) < 1 {
13629 invalidParams.Add(request.NewErrParamMinLen("Key", 1))
13632 if invalidParams.Len() > 0 {
13633 return invalidParams
13638 // SetBucket sets the Bucket field's value.
13639 func (s *GetObjectTaggingInput) SetBucket(v string) *GetObjectTaggingInput {
13644 func (s *GetObjectTaggingInput) getBucket() (v string) {
13645 if s.Bucket == nil {
13651 // SetKey sets the Key field's value.
13652 func (s *GetObjectTaggingInput) SetKey(v string) *GetObjectTaggingInput {
13657 // SetVersionId sets the VersionId field's value.
13658 func (s *GetObjectTaggingInput) SetVersionId(v string) *GetObjectTaggingInput {
13663 type GetObjectTaggingOutput struct {
13664 _ struct{} `type:"structure"`
13666 // TagSet is a required field
13667 TagSet []*Tag `locationNameList:"Tag" type:"list" required:"true"`
13669 VersionId *string `location:"header" locationName:"x-amz-version-id" type:"string"`
13672 // String returns the string representation
13673 func (s GetObjectTaggingOutput) String() string {
13674 return awsutil.Prettify(s)
13677 // GoString returns the string representation
13678 func (s GetObjectTaggingOutput) GoString() string {
13682 // SetTagSet sets the TagSet field's value.
13683 func (s *GetObjectTaggingOutput) SetTagSet(v []*Tag) *GetObjectTaggingOutput {
13688 // SetVersionId sets the VersionId field's value.
13689 func (s *GetObjectTaggingOutput) SetVersionId(v string) *GetObjectTaggingOutput {
13694 type GetObjectTorrentInput struct {
13695 _ struct{} `type:"structure"`
13697 // Bucket is a required field
13698 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
13700 // Key is a required field
13701 Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"`
13703 // Confirms that the requester knows that she or he will be charged for the
13704 // request. Bucket owners need not specify this parameter in their requests.
13705 // Documentation on downloading objects from requester pays buckets can be found
13706 // at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
13707 RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
13710 // String returns the string representation
13711 func (s GetObjectTorrentInput) String() string {
13712 return awsutil.Prettify(s)
13715 // GoString returns the string representation
13716 func (s GetObjectTorrentInput) GoString() string {
13720 // Validate inspects the fields of the type to determine if they are valid.
13721 func (s *GetObjectTorrentInput) Validate() error {
13722 invalidParams := request.ErrInvalidParams{Context: "GetObjectTorrentInput"}
13723 if s.Bucket == nil {
13724 invalidParams.Add(request.NewErrParamRequired("Bucket"))
13726 if s.Bucket != nil && len(*s.Bucket) < 1 {
13727 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
13730 invalidParams.Add(request.NewErrParamRequired("Key"))
13732 if s.Key != nil && len(*s.Key) < 1 {
13733 invalidParams.Add(request.NewErrParamMinLen("Key", 1))
13736 if invalidParams.Len() > 0 {
13737 return invalidParams
13742 // SetBucket sets the Bucket field's value.
13743 func (s *GetObjectTorrentInput) SetBucket(v string) *GetObjectTorrentInput {
13748 func (s *GetObjectTorrentInput) getBucket() (v string) {
13749 if s.Bucket == nil {
13755 // SetKey sets the Key field's value.
13756 func (s *GetObjectTorrentInput) SetKey(v string) *GetObjectTorrentInput {
13761 // SetRequestPayer sets the RequestPayer field's value.
13762 func (s *GetObjectTorrentInput) SetRequestPayer(v string) *GetObjectTorrentInput {
13763 s.RequestPayer = &v
13767 type GetObjectTorrentOutput struct {
13768 _ struct{} `type:"structure" payload:"Body"`
13770 Body io.ReadCloser `type:"blob"`
13772 // If present, indicates that the requester was successfully charged for the
13774 RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"`
13777 // String returns the string representation
13778 func (s GetObjectTorrentOutput) String() string {
13779 return awsutil.Prettify(s)
13782 // GoString returns the string representation
13783 func (s GetObjectTorrentOutput) GoString() string {
13787 // SetBody sets the Body field's value.
13788 func (s *GetObjectTorrentOutput) SetBody(v io.ReadCloser) *GetObjectTorrentOutput {
13793 // SetRequestCharged sets the RequestCharged field's value.
13794 func (s *GetObjectTorrentOutput) SetRequestCharged(v string) *GetObjectTorrentOutput {
13795 s.RequestCharged = &v
13799 type GetPublicAccessBlockInput struct {
13800 _ struct{} `type:"structure"`
13802 // The name of the Amazon S3 bucket whose PublicAccessBlock configuration you
13803 // want to retrieve.
13805 // Bucket is a required field
13806 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
13809 // String returns the string representation
13810 func (s GetPublicAccessBlockInput) String() string {
13811 return awsutil.Prettify(s)
13814 // GoString returns the string representation
13815 func (s GetPublicAccessBlockInput) GoString() string {
13819 // Validate inspects the fields of the type to determine if they are valid.
13820 func (s *GetPublicAccessBlockInput) Validate() error {
13821 invalidParams := request.ErrInvalidParams{Context: "GetPublicAccessBlockInput"}
13822 if s.Bucket == nil {
13823 invalidParams.Add(request.NewErrParamRequired("Bucket"))
13825 if s.Bucket != nil && len(*s.Bucket) < 1 {
13826 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
13829 if invalidParams.Len() > 0 {
13830 return invalidParams
13835 // SetBucket sets the Bucket field's value.
13836 func (s *GetPublicAccessBlockInput) SetBucket(v string) *GetPublicAccessBlockInput {
13841 func (s *GetPublicAccessBlockInput) getBucket() (v string) {
13842 if s.Bucket == nil {
13848 type GetPublicAccessBlockOutput struct {
13849 _ struct{} `type:"structure" payload:"PublicAccessBlockConfiguration"`
13851 // The PublicAccessBlock configuration currently in effect for this Amazon S3
13853 PublicAccessBlockConfiguration *PublicAccessBlockConfiguration `type:"structure"`
13856 // String returns the string representation
13857 func (s GetPublicAccessBlockOutput) String() string {
13858 return awsutil.Prettify(s)
13861 // GoString returns the string representation
13862 func (s GetPublicAccessBlockOutput) GoString() string {
13866 // SetPublicAccessBlockConfiguration sets the PublicAccessBlockConfiguration field's value.
13867 func (s *GetPublicAccessBlockOutput) SetPublicAccessBlockConfiguration(v *PublicAccessBlockConfiguration) *GetPublicAccessBlockOutput {
13868 s.PublicAccessBlockConfiguration = v
13872 type GlacierJobParameters struct {
13873 _ struct{} `type:"structure"`
13875 // Glacier retrieval tier at which the restore will be processed.
13877 // Tier is a required field
13878 Tier *string `type:"string" required:"true" enum:"Tier"`
13881 // String returns the string representation
13882 func (s GlacierJobParameters) String() string {
13883 return awsutil.Prettify(s)
13886 // GoString returns the string representation
13887 func (s GlacierJobParameters) GoString() string {
13891 // Validate inspects the fields of the type to determine if they are valid.
13892 func (s *GlacierJobParameters) Validate() error {
13893 invalidParams := request.ErrInvalidParams{Context: "GlacierJobParameters"}
13895 invalidParams.Add(request.NewErrParamRequired("Tier"))
13898 if invalidParams.Len() > 0 {
13899 return invalidParams
13904 // SetTier sets the Tier field's value.
13905 func (s *GlacierJobParameters) SetTier(v string) *GlacierJobParameters {
13910 type Grant struct {
13911 _ struct{} `type:"structure"`
13913 Grantee *Grantee `type:"structure" xmlPrefix:"xsi" xmlURI:"http://www.w3.org/2001/XMLSchema-instance"`
13915 // Specifies the permission given to the grantee.
13916 Permission *string `type:"string" enum:"Permission"`
13919 // String returns the string representation
13920 func (s Grant) String() string {
13921 return awsutil.Prettify(s)
13924 // GoString returns the string representation
13925 func (s Grant) GoString() string {
13929 // Validate inspects the fields of the type to determine if they are valid.
13930 func (s *Grant) Validate() error {
13931 invalidParams := request.ErrInvalidParams{Context: "Grant"}
13932 if s.Grantee != nil {
13933 if err := s.Grantee.Validate(); err != nil {
13934 invalidParams.AddNested("Grantee", err.(request.ErrInvalidParams))
13938 if invalidParams.Len() > 0 {
13939 return invalidParams
13944 // SetGrantee sets the Grantee field's value.
13945 func (s *Grant) SetGrantee(v *Grantee) *Grant {
13950 // SetPermission sets the Permission field's value.
13951 func (s *Grant) SetPermission(v string) *Grant {
13956 type Grantee struct {
13957 _ struct{} `type:"structure" xmlPrefix:"xsi" xmlURI:"http://www.w3.org/2001/XMLSchema-instance"`
13959 // Screen name of the grantee.
13960 DisplayName *string `type:"string"`
13962 // Email address of the grantee.
13963 EmailAddress *string `type:"string"`
13965 // The canonical user ID of the grantee.
13966 ID *string `type:"string"`
13970 // Type is a required field
13971 Type *string `locationName:"xsi:type" type:"string" xmlAttribute:"true" required:"true" enum:"Type"`
13973 // URI of the grantee group.
13974 URI *string `type:"string"`
13977 // String returns the string representation
13978 func (s Grantee) String() string {
13979 return awsutil.Prettify(s)
13982 // GoString returns the string representation
13983 func (s Grantee) GoString() string {
13987 // Validate inspects the fields of the type to determine if they are valid.
13988 func (s *Grantee) Validate() error {
13989 invalidParams := request.ErrInvalidParams{Context: "Grantee"}
13991 invalidParams.Add(request.NewErrParamRequired("Type"))
13994 if invalidParams.Len() > 0 {
13995 return invalidParams
14000 // SetDisplayName sets the DisplayName field's value.
14001 func (s *Grantee) SetDisplayName(v string) *Grantee {
14006 // SetEmailAddress sets the EmailAddress field's value.
14007 func (s *Grantee) SetEmailAddress(v string) *Grantee {
14008 s.EmailAddress = &v
14012 // SetID sets the ID field's value.
14013 func (s *Grantee) SetID(v string) *Grantee {
14018 // SetType sets the Type field's value.
14019 func (s *Grantee) SetType(v string) *Grantee {
14024 // SetURI sets the URI field's value.
14025 func (s *Grantee) SetURI(v string) *Grantee {
14030 type HeadBucketInput struct {
14031 _ struct{} `type:"structure"`
14033 // Bucket is a required field
14034 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
14037 // String returns the string representation
14038 func (s HeadBucketInput) String() string {
14039 return awsutil.Prettify(s)
14042 // GoString returns the string representation
14043 func (s HeadBucketInput) GoString() string {
14047 // Validate inspects the fields of the type to determine if they are valid.
14048 func (s *HeadBucketInput) Validate() error {
14049 invalidParams := request.ErrInvalidParams{Context: "HeadBucketInput"}
14050 if s.Bucket == nil {
14051 invalidParams.Add(request.NewErrParamRequired("Bucket"))
14053 if s.Bucket != nil && len(*s.Bucket) < 1 {
14054 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
14057 if invalidParams.Len() > 0 {
14058 return invalidParams
14063 // SetBucket sets the Bucket field's value.
14064 func (s *HeadBucketInput) SetBucket(v string) *HeadBucketInput {
14069 func (s *HeadBucketInput) getBucket() (v string) {
14070 if s.Bucket == nil {
14076 type HeadBucketOutput struct {
14077 _ struct{} `type:"structure"`
14080 // String returns the string representation
14081 func (s HeadBucketOutput) String() string {
14082 return awsutil.Prettify(s)
14085 // GoString returns the string representation
14086 func (s HeadBucketOutput) GoString() string {
14090 type HeadObjectInput struct {
14091 _ struct{} `type:"structure"`
14093 // Bucket is a required field
14094 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
14096 // Return the object only if its entity tag (ETag) is the same as the one specified,
14097 // otherwise return a 412 (precondition failed).
14098 IfMatch *string `location:"header" locationName:"If-Match" type:"string"`
14100 // Return the object only if it has been modified since the specified time,
14101 // otherwise return a 304 (not modified).
14102 IfModifiedSince *time.Time `location:"header" locationName:"If-Modified-Since" type:"timestamp"`
14104 // Return the object only if its entity tag (ETag) is different from the one
14105 // specified, otherwise return a 304 (not modified).
14106 IfNoneMatch *string `location:"header" locationName:"If-None-Match" type:"string"`
14108 // Return the object only if it has not been modified since the specified time,
14109 // otherwise return a 412 (precondition failed).
14110 IfUnmodifiedSince *time.Time `location:"header" locationName:"If-Unmodified-Since" type:"timestamp"`
14112 // Key is a required field
14113 Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"`
14115 // Part number of the object being read. This is a positive integer between
14116 // 1 and 10,000. Effectively performs a 'ranged' HEAD request for the part specified.
14117 // Useful querying about the size of the part and the number of parts in this
14119 PartNumber *int64 `location:"querystring" locationName:"partNumber" type:"integer"`
14121 // Downloads the specified range bytes of an object. For more information about
14122 // the HTTP Range header, go to http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35.
14123 Range *string `location:"header" locationName:"Range" type:"string"`
14125 // Confirms that the requester knows that she or he will be charged for the
14126 // request. Bucket owners need not specify this parameter in their requests.
14127 // Documentation on downloading objects from requester pays buckets can be found
14128 // at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
14129 RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
14131 // Specifies the algorithm to use to when encrypting the object (e.g., AES256).
14132 SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"`
14134 // Specifies the customer-provided encryption key for Amazon S3 to use in encrypting
14135 // data. This value is used to store the object and then it is discarded; Amazon
14136 // does not store the encryption key. The key must be appropriate for use with
14137 // the algorithm specified in the x-amz-server-side​-encryption​-customer-algorithm
14139 SSECustomerKey *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key" type:"string" sensitive:"true"`
14141 // Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321.
14142 // Amazon S3 uses this header for a message integrity check to ensure the encryption
14143 // key was transmitted without error.
14144 SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"`
14146 // VersionId used to reference a specific version of the object.
14147 VersionId *string `location:"querystring" locationName:"versionId" type:"string"`
14150 // String returns the string representation
14151 func (s HeadObjectInput) String() string {
14152 return awsutil.Prettify(s)
14155 // GoString returns the string representation
14156 func (s HeadObjectInput) GoString() string {
14160 // Validate inspects the fields of the type to determine if they are valid.
14161 func (s *HeadObjectInput) Validate() error {
14162 invalidParams := request.ErrInvalidParams{Context: "HeadObjectInput"}
14163 if s.Bucket == nil {
14164 invalidParams.Add(request.NewErrParamRequired("Bucket"))
14166 if s.Bucket != nil && len(*s.Bucket) < 1 {
14167 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
14170 invalidParams.Add(request.NewErrParamRequired("Key"))
14172 if s.Key != nil && len(*s.Key) < 1 {
14173 invalidParams.Add(request.NewErrParamMinLen("Key", 1))
14176 if invalidParams.Len() > 0 {
14177 return invalidParams
14182 // SetBucket sets the Bucket field's value.
14183 func (s *HeadObjectInput) SetBucket(v string) *HeadObjectInput {
14188 func (s *HeadObjectInput) getBucket() (v string) {
14189 if s.Bucket == nil {
14195 // SetIfMatch sets the IfMatch field's value.
14196 func (s *HeadObjectInput) SetIfMatch(v string) *HeadObjectInput {
14201 // SetIfModifiedSince sets the IfModifiedSince field's value.
14202 func (s *HeadObjectInput) SetIfModifiedSince(v time.Time) *HeadObjectInput {
14203 s.IfModifiedSince = &v
14207 // SetIfNoneMatch sets the IfNoneMatch field's value.
14208 func (s *HeadObjectInput) SetIfNoneMatch(v string) *HeadObjectInput {
14213 // SetIfUnmodifiedSince sets the IfUnmodifiedSince field's value.
14214 func (s *HeadObjectInput) SetIfUnmodifiedSince(v time.Time) *HeadObjectInput {
14215 s.IfUnmodifiedSince = &v
14219 // SetKey sets the Key field's value.
14220 func (s *HeadObjectInput) SetKey(v string) *HeadObjectInput {
14225 // SetPartNumber sets the PartNumber field's value.
14226 func (s *HeadObjectInput) SetPartNumber(v int64) *HeadObjectInput {
14231 // SetRange sets the Range field's value.
14232 func (s *HeadObjectInput) SetRange(v string) *HeadObjectInput {
14237 // SetRequestPayer sets the RequestPayer field's value.
14238 func (s *HeadObjectInput) SetRequestPayer(v string) *HeadObjectInput {
14239 s.RequestPayer = &v
14243 // SetSSECustomerAlgorithm sets the SSECustomerAlgorithm field's value.
14244 func (s *HeadObjectInput) SetSSECustomerAlgorithm(v string) *HeadObjectInput {
14245 s.SSECustomerAlgorithm = &v
14249 // SetSSECustomerKey sets the SSECustomerKey field's value.
14250 func (s *HeadObjectInput) SetSSECustomerKey(v string) *HeadObjectInput {
14251 s.SSECustomerKey = &v
14255 func (s *HeadObjectInput) getSSECustomerKey() (v string) {
14256 if s.SSECustomerKey == nil {
14259 return *s.SSECustomerKey
14262 // SetSSECustomerKeyMD5 sets the SSECustomerKeyMD5 field's value.
14263 func (s *HeadObjectInput) SetSSECustomerKeyMD5(v string) *HeadObjectInput {
14264 s.SSECustomerKeyMD5 = &v
14268 // SetVersionId sets the VersionId field's value.
14269 func (s *HeadObjectInput) SetVersionId(v string) *HeadObjectInput {
14274 type HeadObjectOutput struct {
14275 _ struct{} `type:"structure"`
14277 AcceptRanges *string `location:"header" locationName:"accept-ranges" type:"string"`
14279 // Specifies caching behavior along the request/reply chain.
14280 CacheControl *string `location:"header" locationName:"Cache-Control" type:"string"`
14282 // Specifies presentational information for the object.
14283 ContentDisposition *string `location:"header" locationName:"Content-Disposition" type:"string"`
14285 // Specifies what content encodings have been applied to the object and thus
14286 // what decoding mechanisms must be applied to obtain the media-type referenced
14287 // by the Content-Type header field.
14288 ContentEncoding *string `location:"header" locationName:"Content-Encoding" type:"string"`
14290 // The language the content is in.
14291 ContentLanguage *string `location:"header" locationName:"Content-Language" type:"string"`
14293 // Size of the body in bytes.
14294 ContentLength *int64 `location:"header" locationName:"Content-Length" type:"long"`
14296 // A standard MIME type describing the format of the object data.
14297 ContentType *string `location:"header" locationName:"Content-Type" type:"string"`
14299 // Specifies whether the object retrieved was (true) or was not (false) a Delete
14300 // Marker. If false, this response header does not appear in the response.
14301 DeleteMarker *bool `location:"header" locationName:"x-amz-delete-marker" type:"boolean"`
14303 // An ETag is an opaque identifier assigned by a web server to a specific version
14304 // of a resource found at a URL
14305 ETag *string `location:"header" locationName:"ETag" type:"string"`
14307 // If the object expiration is configured (see PUT Bucket lifecycle), the response
14308 // includes this header. It includes the expiry-date and rule-id key value pairs
14309 // providing object expiration information. The value of the rule-id is URL
14311 Expiration *string `location:"header" locationName:"x-amz-expiration" type:"string"`
14313 // The date and time at which the object is no longer cacheable.
14314 Expires *string `location:"header" locationName:"Expires" type:"string"`
14316 // Last modified date of the object
14317 LastModified *time.Time `location:"header" locationName:"Last-Modified" type:"timestamp"`
14319 // A map of metadata to store with the object in S3.
14320 Metadata map[string]*string `location:"headers" locationName:"x-amz-meta-" type:"map"`
14322 // This is set to the number of metadata entries not returned in x-amz-meta
14323 // headers. This can happen if you create metadata using an API like SOAP that
14324 // supports more flexible metadata than the REST API. For example, using SOAP,
14325 // you can create metadata whose values are not legal HTTP headers.
14326 MissingMeta *int64 `location:"header" locationName:"x-amz-missing-meta" type:"integer"`
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"`
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"`
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"`
14337 // The count of parts this object has.
14338 PartsCount *int64 `location:"header" locationName:"x-amz-mp-parts-count" type:"integer"`
14340 ReplicationStatus *string `location:"header" locationName:"x-amz-replication-status" type:"string" enum:"ReplicationStatus"`
14342 // If present, indicates that the requester was successfully charged for the
14344 RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"`
14346 // Provides information about object restoration operation and expiration time
14347 // of the restored object copy.
14348 Restore *string `location:"header" locationName:"x-amz-restore" type:"string"`
14350 // If server-side encryption with a customer-provided encryption key was requested,
14351 // the response will include this header confirming the encryption algorithm
14353 SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"`
14355 // If server-side encryption with a customer-provided encryption key was requested,
14356 // the response will include this header to provide round trip message integrity
14357 // verification of the customer-provided encryption key.
14358 SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"`
14360 // If present, specifies the ID of the AWS Key Management Service (KMS) master
14361 // encryption key that was used for the object.
14362 SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string" sensitive:"true"`
14364 // The Server-side encryption algorithm used when storing this object in S3
14365 // (e.g., AES256, aws:kms).
14366 ServerSideEncryption *string `location:"header" locationName:"x-amz-server-side-encryption" type:"string" enum:"ServerSideEncryption"`
14368 StorageClass *string `location:"header" locationName:"x-amz-storage-class" type:"string" enum:"StorageClass"`
14370 // Version of the object.
14371 VersionId *string `location:"header" locationName:"x-amz-version-id" type:"string"`
14373 // If the bucket is configured as a website, redirects requests for this object
14374 // to another object in the same bucket or to an external URL. Amazon S3 stores
14375 // the value of this header in the object metadata.
14376 WebsiteRedirectLocation *string `location:"header" locationName:"x-amz-website-redirect-location" type:"string"`
14379 // String returns the string representation
14380 func (s HeadObjectOutput) String() string {
14381 return awsutil.Prettify(s)
14384 // GoString returns the string representation
14385 func (s HeadObjectOutput) GoString() string {
14389 // SetAcceptRanges sets the AcceptRanges field's value.
14390 func (s *HeadObjectOutput) SetAcceptRanges(v string) *HeadObjectOutput {
14391 s.AcceptRanges = &v
14395 // SetCacheControl sets the CacheControl field's value.
14396 func (s *HeadObjectOutput) SetCacheControl(v string) *HeadObjectOutput {
14397 s.CacheControl = &v
14401 // SetContentDisposition sets the ContentDisposition field's value.
14402 func (s *HeadObjectOutput) SetContentDisposition(v string) *HeadObjectOutput {
14403 s.ContentDisposition = &v
14407 // SetContentEncoding sets the ContentEncoding field's value.
14408 func (s *HeadObjectOutput) SetContentEncoding(v string) *HeadObjectOutput {
14409 s.ContentEncoding = &v
14413 // SetContentLanguage sets the ContentLanguage field's value.
14414 func (s *HeadObjectOutput) SetContentLanguage(v string) *HeadObjectOutput {
14415 s.ContentLanguage = &v
14419 // SetContentLength sets the ContentLength field's value.
14420 func (s *HeadObjectOutput) SetContentLength(v int64) *HeadObjectOutput {
14421 s.ContentLength = &v
14425 // SetContentType sets the ContentType field's value.
14426 func (s *HeadObjectOutput) SetContentType(v string) *HeadObjectOutput {
14431 // SetDeleteMarker sets the DeleteMarker field's value.
14432 func (s *HeadObjectOutput) SetDeleteMarker(v bool) *HeadObjectOutput {
14433 s.DeleteMarker = &v
14437 // SetETag sets the ETag field's value.
14438 func (s *HeadObjectOutput) SetETag(v string) *HeadObjectOutput {
14443 // SetExpiration sets the Expiration field's value.
14444 func (s *HeadObjectOutput) SetExpiration(v string) *HeadObjectOutput {
14449 // SetExpires sets the Expires field's value.
14450 func (s *HeadObjectOutput) SetExpires(v string) *HeadObjectOutput {
14455 // SetLastModified sets the LastModified field's value.
14456 func (s *HeadObjectOutput) SetLastModified(v time.Time) *HeadObjectOutput {
14457 s.LastModified = &v
14461 // SetMetadata sets the Metadata field's value.
14462 func (s *HeadObjectOutput) SetMetadata(v map[string]*string) *HeadObjectOutput {
14467 // SetMissingMeta sets the MissingMeta field's value.
14468 func (s *HeadObjectOutput) SetMissingMeta(v int64) *HeadObjectOutput {
14473 // SetObjectLockLegalHoldStatus sets the ObjectLockLegalHoldStatus field's value.
14474 func (s *HeadObjectOutput) SetObjectLockLegalHoldStatus(v string) *HeadObjectOutput {
14475 s.ObjectLockLegalHoldStatus = &v
14479 // SetObjectLockMode sets the ObjectLockMode field's value.
14480 func (s *HeadObjectOutput) SetObjectLockMode(v string) *HeadObjectOutput {
14481 s.ObjectLockMode = &v
14485 // SetObjectLockRetainUntilDate sets the ObjectLockRetainUntilDate field's value.
14486 func (s *HeadObjectOutput) SetObjectLockRetainUntilDate(v time.Time) *HeadObjectOutput {
14487 s.ObjectLockRetainUntilDate = &v
14491 // SetPartsCount sets the PartsCount field's value.
14492 func (s *HeadObjectOutput) SetPartsCount(v int64) *HeadObjectOutput {
14497 // SetReplicationStatus sets the ReplicationStatus field's value.
14498 func (s *HeadObjectOutput) SetReplicationStatus(v string) *HeadObjectOutput {
14499 s.ReplicationStatus = &v
14503 // SetRequestCharged sets the RequestCharged field's value.
14504 func (s *HeadObjectOutput) SetRequestCharged(v string) *HeadObjectOutput {
14505 s.RequestCharged = &v
14509 // SetRestore sets the Restore field's value.
14510 func (s *HeadObjectOutput) SetRestore(v string) *HeadObjectOutput {
14515 // SetSSECustomerAlgorithm sets the SSECustomerAlgorithm field's value.
14516 func (s *HeadObjectOutput) SetSSECustomerAlgorithm(v string) *HeadObjectOutput {
14517 s.SSECustomerAlgorithm = &v
14521 // SetSSECustomerKeyMD5 sets the SSECustomerKeyMD5 field's value.
14522 func (s *HeadObjectOutput) SetSSECustomerKeyMD5(v string) *HeadObjectOutput {
14523 s.SSECustomerKeyMD5 = &v
14527 // SetSSEKMSKeyId sets the SSEKMSKeyId field's value.
14528 func (s *HeadObjectOutput) SetSSEKMSKeyId(v string) *HeadObjectOutput {
14533 // SetServerSideEncryption sets the ServerSideEncryption field's value.
14534 func (s *HeadObjectOutput) SetServerSideEncryption(v string) *HeadObjectOutput {
14535 s.ServerSideEncryption = &v
14539 // SetStorageClass sets the StorageClass field's value.
14540 func (s *HeadObjectOutput) SetStorageClass(v string) *HeadObjectOutput {
14541 s.StorageClass = &v
14545 // SetVersionId sets the VersionId field's value.
14546 func (s *HeadObjectOutput) SetVersionId(v string) *HeadObjectOutput {
14551 // SetWebsiteRedirectLocation sets the WebsiteRedirectLocation field's value.
14552 func (s *HeadObjectOutput) SetWebsiteRedirectLocation(v string) *HeadObjectOutput {
14553 s.WebsiteRedirectLocation = &v
14557 type IndexDocument struct {
14558 _ struct{} `type:"structure"`
14560 // A suffix that is appended to a request that is for a directory on the website
14561 // endpoint (e.g. if the suffix is index.html and you make a request to samplebucket/images/
14562 // the data that is returned will be for the object with the key name images/index.html)
14563 // The suffix must not be empty and must not include a slash character.
14565 // Suffix is a required field
14566 Suffix *string `type:"string" required:"true"`
14569 // String returns the string representation
14570 func (s IndexDocument) String() string {
14571 return awsutil.Prettify(s)
14574 // GoString returns the string representation
14575 func (s IndexDocument) GoString() string {
14579 // Validate inspects the fields of the type to determine if they are valid.
14580 func (s *IndexDocument) Validate() error {
14581 invalidParams := request.ErrInvalidParams{Context: "IndexDocument"}
14582 if s.Suffix == nil {
14583 invalidParams.Add(request.NewErrParamRequired("Suffix"))
14586 if invalidParams.Len() > 0 {
14587 return invalidParams
14592 // SetSuffix sets the Suffix field's value.
14593 func (s *IndexDocument) SetSuffix(v string) *IndexDocument {
14598 type Initiator struct {
14599 _ struct{} `type:"structure"`
14601 // Name of the Principal.
14602 DisplayName *string `type:"string"`
14604 // If the principal is an AWS account, it provides the Canonical User ID. If
14605 // the principal is an IAM User, it provides a user ARN value.
14606 ID *string `type:"string"`
14609 // String returns the string representation
14610 func (s Initiator) String() string {
14611 return awsutil.Prettify(s)
14614 // GoString returns the string representation
14615 func (s Initiator) GoString() string {
14619 // SetDisplayName sets the DisplayName field's value.
14620 func (s *Initiator) SetDisplayName(v string) *Initiator {
14625 // SetID sets the ID field's value.
14626 func (s *Initiator) SetID(v string) *Initiator {
14631 // Describes the serialization format of the object.
14632 type InputSerialization struct {
14633 _ struct{} `type:"structure"`
14635 // Describes the serialization of a CSV-encoded object.
14636 CSV *CSVInput `type:"structure"`
14638 // Specifies object's compression format. Valid values: NONE, GZIP, BZIP2. Default
14640 CompressionType *string `type:"string" enum:"CompressionType"`
14642 // Specifies JSON as object's input serialization format.
14643 JSON *JSONInput `type:"structure"`
14645 // Specifies Parquet as object's input serialization format.
14646 Parquet *ParquetInput `type:"structure"`
14649 // String returns the string representation
14650 func (s InputSerialization) String() string {
14651 return awsutil.Prettify(s)
14654 // GoString returns the string representation
14655 func (s InputSerialization) GoString() string {
14659 // SetCSV sets the CSV field's value.
14660 func (s *InputSerialization) SetCSV(v *CSVInput) *InputSerialization {
14665 // SetCompressionType sets the CompressionType field's value.
14666 func (s *InputSerialization) SetCompressionType(v string) *InputSerialization {
14667 s.CompressionType = &v
14671 // SetJSON sets the JSON field's value.
14672 func (s *InputSerialization) SetJSON(v *JSONInput) *InputSerialization {
14677 // SetParquet sets the Parquet field's value.
14678 func (s *InputSerialization) SetParquet(v *ParquetInput) *InputSerialization {
14683 type InventoryConfiguration struct {
14684 _ struct{} `type:"structure"`
14686 // Contains information about where to publish the inventory results.
14688 // Destination is a required field
14689 Destination *InventoryDestination `type:"structure" required:"true"`
14691 // Specifies an inventory filter. The inventory only includes objects that meet
14692 // the filter's criteria.
14693 Filter *InventoryFilter `type:"structure"`
14695 // The ID used to identify the inventory configuration.
14697 // Id is a required field
14698 Id *string `type:"string" required:"true"`
14700 // Specifies which object version(s) to included in the inventory results.
14702 // IncludedObjectVersions is a required field
14703 IncludedObjectVersions *string `type:"string" required:"true" enum:"InventoryIncludedObjectVersions"`
14705 // Specifies whether the inventory is enabled or disabled.
14707 // IsEnabled is a required field
14708 IsEnabled *bool `type:"boolean" required:"true"`
14710 // Contains the optional fields that are included in the inventory results.
14711 OptionalFields []*string `locationNameList:"Field" type:"list"`
14713 // Specifies the schedule for generating inventory results.
14715 // Schedule is a required field
14716 Schedule *InventorySchedule `type:"structure" required:"true"`
14719 // String returns the string representation
14720 func (s InventoryConfiguration) String() string {
14721 return awsutil.Prettify(s)
14724 // GoString returns the string representation
14725 func (s InventoryConfiguration) GoString() string {
14729 // Validate inspects the fields of the type to determine if they are valid.
14730 func (s *InventoryConfiguration) Validate() error {
14731 invalidParams := request.ErrInvalidParams{Context: "InventoryConfiguration"}
14732 if s.Destination == nil {
14733 invalidParams.Add(request.NewErrParamRequired("Destination"))
14736 invalidParams.Add(request.NewErrParamRequired("Id"))
14738 if s.IncludedObjectVersions == nil {
14739 invalidParams.Add(request.NewErrParamRequired("IncludedObjectVersions"))
14741 if s.IsEnabled == nil {
14742 invalidParams.Add(request.NewErrParamRequired("IsEnabled"))
14744 if s.Schedule == nil {
14745 invalidParams.Add(request.NewErrParamRequired("Schedule"))
14747 if s.Destination != nil {
14748 if err := s.Destination.Validate(); err != nil {
14749 invalidParams.AddNested("Destination", err.(request.ErrInvalidParams))
14752 if s.Filter != nil {
14753 if err := s.Filter.Validate(); err != nil {
14754 invalidParams.AddNested("Filter", err.(request.ErrInvalidParams))
14757 if s.Schedule != nil {
14758 if err := s.Schedule.Validate(); err != nil {
14759 invalidParams.AddNested("Schedule", err.(request.ErrInvalidParams))
14763 if invalidParams.Len() > 0 {
14764 return invalidParams
14769 // SetDestination sets the Destination field's value.
14770 func (s *InventoryConfiguration) SetDestination(v *InventoryDestination) *InventoryConfiguration {
14775 // SetFilter sets the Filter field's value.
14776 func (s *InventoryConfiguration) SetFilter(v *InventoryFilter) *InventoryConfiguration {
14781 // SetId sets the Id field's value.
14782 func (s *InventoryConfiguration) SetId(v string) *InventoryConfiguration {
14787 // SetIncludedObjectVersions sets the IncludedObjectVersions field's value.
14788 func (s *InventoryConfiguration) SetIncludedObjectVersions(v string) *InventoryConfiguration {
14789 s.IncludedObjectVersions = &v
14793 // SetIsEnabled sets the IsEnabled field's value.
14794 func (s *InventoryConfiguration) SetIsEnabled(v bool) *InventoryConfiguration {
14799 // SetOptionalFields sets the OptionalFields field's value.
14800 func (s *InventoryConfiguration) SetOptionalFields(v []*string) *InventoryConfiguration {
14801 s.OptionalFields = v
14805 // SetSchedule sets the Schedule field's value.
14806 func (s *InventoryConfiguration) SetSchedule(v *InventorySchedule) *InventoryConfiguration {
14811 type InventoryDestination struct {
14812 _ struct{} `type:"structure"`
14814 // Contains the bucket name, file format, bucket owner (optional), and prefix
14815 // (optional) where inventory results are published.
14817 // S3BucketDestination is a required field
14818 S3BucketDestination *InventoryS3BucketDestination `type:"structure" required:"true"`
14821 // String returns the string representation
14822 func (s InventoryDestination) String() string {
14823 return awsutil.Prettify(s)
14826 // GoString returns the string representation
14827 func (s InventoryDestination) GoString() string {
14831 // Validate inspects the fields of the type to determine if they are valid.
14832 func (s *InventoryDestination) Validate() error {
14833 invalidParams := request.ErrInvalidParams{Context: "InventoryDestination"}
14834 if s.S3BucketDestination == nil {
14835 invalidParams.Add(request.NewErrParamRequired("S3BucketDestination"))
14837 if s.S3BucketDestination != nil {
14838 if err := s.S3BucketDestination.Validate(); err != nil {
14839 invalidParams.AddNested("S3BucketDestination", err.(request.ErrInvalidParams))
14843 if invalidParams.Len() > 0 {
14844 return invalidParams
14849 // SetS3BucketDestination sets the S3BucketDestination field's value.
14850 func (s *InventoryDestination) SetS3BucketDestination(v *InventoryS3BucketDestination) *InventoryDestination {
14851 s.S3BucketDestination = v
14855 // Contains the type of server-side encryption used to encrypt the inventory
14857 type InventoryEncryption struct {
14858 _ struct{} `type:"structure"`
14860 // Specifies the use of SSE-KMS to encrypt delivered Inventory reports.
14861 SSEKMS *SSEKMS `locationName:"SSE-KMS" type:"structure"`
14863 // Specifies the use of SSE-S3 to encrypt delivered Inventory reports.
14864 SSES3 *SSES3 `locationName:"SSE-S3" type:"structure"`
14867 // String returns the string representation
14868 func (s InventoryEncryption) String() string {
14869 return awsutil.Prettify(s)
14872 // GoString returns the string representation
14873 func (s InventoryEncryption) GoString() string {
14877 // Validate inspects the fields of the type to determine if they are valid.
14878 func (s *InventoryEncryption) Validate() error {
14879 invalidParams := request.ErrInvalidParams{Context: "InventoryEncryption"}
14880 if s.SSEKMS != nil {
14881 if err := s.SSEKMS.Validate(); err != nil {
14882 invalidParams.AddNested("SSEKMS", err.(request.ErrInvalidParams))
14886 if invalidParams.Len() > 0 {
14887 return invalidParams
14892 // SetSSEKMS sets the SSEKMS field's value.
14893 func (s *InventoryEncryption) SetSSEKMS(v *SSEKMS) *InventoryEncryption {
14898 // SetSSES3 sets the SSES3 field's value.
14899 func (s *InventoryEncryption) SetSSES3(v *SSES3) *InventoryEncryption {
14904 type InventoryFilter struct {
14905 _ struct{} `type:"structure"`
14907 // The prefix that an object must have to be included in the inventory results.
14909 // Prefix is a required field
14910 Prefix *string `type:"string" required:"true"`
14913 // String returns the string representation
14914 func (s InventoryFilter) String() string {
14915 return awsutil.Prettify(s)
14918 // GoString returns the string representation
14919 func (s InventoryFilter) GoString() string {
14923 // Validate inspects the fields of the type to determine if they are valid.
14924 func (s *InventoryFilter) Validate() error {
14925 invalidParams := request.ErrInvalidParams{Context: "InventoryFilter"}
14926 if s.Prefix == nil {
14927 invalidParams.Add(request.NewErrParamRequired("Prefix"))
14930 if invalidParams.Len() > 0 {
14931 return invalidParams
14936 // SetPrefix sets the Prefix field's value.
14937 func (s *InventoryFilter) SetPrefix(v string) *InventoryFilter {
14942 type InventoryS3BucketDestination struct {
14943 _ struct{} `type:"structure"`
14945 // The ID of the account that owns the destination bucket.
14946 AccountId *string `type:"string"`
14948 // The Amazon resource name (ARN) of the bucket where inventory results will
14951 // Bucket is a required field
14952 Bucket *string `type:"string" required:"true"`
14954 // Contains the type of server-side encryption used to encrypt the inventory
14956 Encryption *InventoryEncryption `type:"structure"`
14958 // Specifies the output format of the inventory results.
14960 // Format is a required field
14961 Format *string `type:"string" required:"true" enum:"InventoryFormat"`
14963 // The prefix that is prepended to all inventory results.
14964 Prefix *string `type:"string"`
14967 // String returns the string representation
14968 func (s InventoryS3BucketDestination) String() string {
14969 return awsutil.Prettify(s)
14972 // GoString returns the string representation
14973 func (s InventoryS3BucketDestination) GoString() string {
14977 // Validate inspects the fields of the type to determine if they are valid.
14978 func (s *InventoryS3BucketDestination) Validate() error {
14979 invalidParams := request.ErrInvalidParams{Context: "InventoryS3BucketDestination"}
14980 if s.Bucket == nil {
14981 invalidParams.Add(request.NewErrParamRequired("Bucket"))
14983 if s.Format == nil {
14984 invalidParams.Add(request.NewErrParamRequired("Format"))
14986 if s.Encryption != nil {
14987 if err := s.Encryption.Validate(); err != nil {
14988 invalidParams.AddNested("Encryption", err.(request.ErrInvalidParams))
14992 if invalidParams.Len() > 0 {
14993 return invalidParams
14998 // SetAccountId sets the AccountId field's value.
14999 func (s *InventoryS3BucketDestination) SetAccountId(v string) *InventoryS3BucketDestination {
15004 // SetBucket sets the Bucket field's value.
15005 func (s *InventoryS3BucketDestination) SetBucket(v string) *InventoryS3BucketDestination {
15010 func (s *InventoryS3BucketDestination) getBucket() (v string) {
15011 if s.Bucket == nil {
15017 // SetEncryption sets the Encryption field's value.
15018 func (s *InventoryS3BucketDestination) SetEncryption(v *InventoryEncryption) *InventoryS3BucketDestination {
15023 // SetFormat sets the Format field's value.
15024 func (s *InventoryS3BucketDestination) SetFormat(v string) *InventoryS3BucketDestination {
15029 // SetPrefix sets the Prefix field's value.
15030 func (s *InventoryS3BucketDestination) SetPrefix(v string) *InventoryS3BucketDestination {
15035 type InventorySchedule struct {
15036 _ struct{} `type:"structure"`
15038 // Specifies how frequently inventory results are produced.
15040 // Frequency is a required field
15041 Frequency *string `type:"string" required:"true" enum:"InventoryFrequency"`
15044 // String returns the string representation
15045 func (s InventorySchedule) String() string {
15046 return awsutil.Prettify(s)
15049 // GoString returns the string representation
15050 func (s InventorySchedule) GoString() string {
15054 // Validate inspects the fields of the type to determine if they are valid.
15055 func (s *InventorySchedule) Validate() error {
15056 invalidParams := request.ErrInvalidParams{Context: "InventorySchedule"}
15057 if s.Frequency == nil {
15058 invalidParams.Add(request.NewErrParamRequired("Frequency"))
15061 if invalidParams.Len() > 0 {
15062 return invalidParams
15067 // SetFrequency sets the Frequency field's value.
15068 func (s *InventorySchedule) SetFrequency(v string) *InventorySchedule {
15073 type JSONInput struct {
15074 _ struct{} `type:"structure"`
15076 // The type of JSON. Valid values: Document, Lines.
15077 Type *string `type:"string" enum:"JSONType"`
15080 // String returns the string representation
15081 func (s JSONInput) String() string {
15082 return awsutil.Prettify(s)
15085 // GoString returns the string representation
15086 func (s JSONInput) GoString() string {
15090 // SetType sets the Type field's value.
15091 func (s *JSONInput) SetType(v string) *JSONInput {
15096 type JSONOutput struct {
15097 _ struct{} `type:"structure"`
15099 // The value used to separate individual records in the output.
15100 RecordDelimiter *string `type:"string"`
15103 // String returns the string representation
15104 func (s JSONOutput) String() string {
15105 return awsutil.Prettify(s)
15108 // GoString returns the string representation
15109 func (s JSONOutput) GoString() string {
15113 // SetRecordDelimiter sets the RecordDelimiter field's value.
15114 func (s *JSONOutput) SetRecordDelimiter(v string) *JSONOutput {
15115 s.RecordDelimiter = &v
15119 // A container for object key name prefix and suffix filtering rules.
15120 type KeyFilter struct {
15121 _ struct{} `type:"structure"`
15123 // A list of containers for the key value pair that defines the criteria for
15124 // the filter rule.
15125 FilterRules []*FilterRule `locationName:"FilterRule" type:"list" flattened:"true"`
15128 // String returns the string representation
15129 func (s KeyFilter) String() string {
15130 return awsutil.Prettify(s)
15133 // GoString returns the string representation
15134 func (s KeyFilter) GoString() string {
15138 // SetFilterRules sets the FilterRules field's value.
15139 func (s *KeyFilter) SetFilterRules(v []*FilterRule) *KeyFilter {
15144 // A container for specifying the configuration for AWS Lambda notifications.
15145 type LambdaFunctionConfiguration struct {
15146 _ struct{} `type:"structure"`
15148 // Events is a required field
15149 Events []*string `locationName:"Event" type:"list" flattened:"true" required:"true"`
15151 // A container for object key name filtering rules. For information about key
15152 // name filtering, see Configuring Event Notifications (https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html)
15153 // in the Amazon Simple Storage Service Developer Guide.
15154 Filter *NotificationConfigurationFilter `type:"structure"`
15156 // An optional unique identifier for configurations in a notification configuration.
15157 // If you don't provide one, Amazon S3 will assign an ID.
15158 Id *string `type:"string"`
15160 // The Amazon Resource Name (ARN) of the Lambda cloud function that Amazon S3
15161 // can invoke when it detects events of the specified type.
15163 // LambdaFunctionArn is a required field
15164 LambdaFunctionArn *string `locationName:"CloudFunction" type:"string" required:"true"`
15167 // String returns the string representation
15168 func (s LambdaFunctionConfiguration) String() string {
15169 return awsutil.Prettify(s)
15172 // GoString returns the string representation
15173 func (s LambdaFunctionConfiguration) GoString() string {
15177 // Validate inspects the fields of the type to determine if they are valid.
15178 func (s *LambdaFunctionConfiguration) Validate() error {
15179 invalidParams := request.ErrInvalidParams{Context: "LambdaFunctionConfiguration"}
15180 if s.Events == nil {
15181 invalidParams.Add(request.NewErrParamRequired("Events"))
15183 if s.LambdaFunctionArn == nil {
15184 invalidParams.Add(request.NewErrParamRequired("LambdaFunctionArn"))
15187 if invalidParams.Len() > 0 {
15188 return invalidParams
15193 // SetEvents sets the Events field's value.
15194 func (s *LambdaFunctionConfiguration) SetEvents(v []*string) *LambdaFunctionConfiguration {
15199 // SetFilter sets the Filter field's value.
15200 func (s *LambdaFunctionConfiguration) SetFilter(v *NotificationConfigurationFilter) *LambdaFunctionConfiguration {
15205 // SetId sets the Id field's value.
15206 func (s *LambdaFunctionConfiguration) SetId(v string) *LambdaFunctionConfiguration {
15211 // SetLambdaFunctionArn sets the LambdaFunctionArn field's value.
15212 func (s *LambdaFunctionConfiguration) SetLambdaFunctionArn(v string) *LambdaFunctionConfiguration {
15213 s.LambdaFunctionArn = &v
15217 type LifecycleConfiguration struct {
15218 _ struct{} `type:"structure"`
15220 // Rules is a required field
15221 Rules []*Rule `locationName:"Rule" type:"list" flattened:"true" required:"true"`
15224 // String returns the string representation
15225 func (s LifecycleConfiguration) String() string {
15226 return awsutil.Prettify(s)
15229 // GoString returns the string representation
15230 func (s LifecycleConfiguration) GoString() string {
15234 // Validate inspects the fields of the type to determine if they are valid.
15235 func (s *LifecycleConfiguration) Validate() error {
15236 invalidParams := request.ErrInvalidParams{Context: "LifecycleConfiguration"}
15237 if s.Rules == nil {
15238 invalidParams.Add(request.NewErrParamRequired("Rules"))
15240 if s.Rules != nil {
15241 for i, v := range s.Rules {
15245 if err := v.Validate(); err != nil {
15246 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Rules", i), err.(request.ErrInvalidParams))
15251 if invalidParams.Len() > 0 {
15252 return invalidParams
15257 // SetRules sets the Rules field's value.
15258 func (s *LifecycleConfiguration) SetRules(v []*Rule) *LifecycleConfiguration {
15263 type LifecycleExpiration struct {
15264 _ struct{} `type:"structure"`
15266 // Indicates at what date the object is to be moved or deleted. Should be in
15267 // GMT ISO 8601 Format.
15268 Date *time.Time `type:"timestamp" timestampFormat:"iso8601"`
15270 // Indicates the lifetime, in days, of the objects that are subject to the rule.
15271 // The value must be a non-zero positive integer.
15272 Days *int64 `type:"integer"`
15274 // Indicates whether Amazon S3 will remove a delete marker with no noncurrent
15275 // versions. If set to true, the delete marker will be expired; if set to false
15276 // the policy takes no action. This cannot be specified with Days or Date in
15277 // a Lifecycle Expiration Policy.
15278 ExpiredObjectDeleteMarker *bool `type:"boolean"`
15281 // String returns the string representation
15282 func (s LifecycleExpiration) String() string {
15283 return awsutil.Prettify(s)
15286 // GoString returns the string representation
15287 func (s LifecycleExpiration) GoString() string {
15291 // SetDate sets the Date field's value.
15292 func (s *LifecycleExpiration) SetDate(v time.Time) *LifecycleExpiration {
15297 // SetDays sets the Days field's value.
15298 func (s *LifecycleExpiration) SetDays(v int64) *LifecycleExpiration {
15303 // SetExpiredObjectDeleteMarker sets the ExpiredObjectDeleteMarker field's value.
15304 func (s *LifecycleExpiration) SetExpiredObjectDeleteMarker(v bool) *LifecycleExpiration {
15305 s.ExpiredObjectDeleteMarker = &v
15309 type LifecycleRule struct {
15310 _ struct{} `type:"structure"`
15312 // Specifies the days since the initiation of an Incomplete Multipart Upload
15313 // that Lifecycle will wait before permanently removing all parts of the upload.
15314 AbortIncompleteMultipartUpload *AbortIncompleteMultipartUpload `type:"structure"`
15316 Expiration *LifecycleExpiration `type:"structure"`
15318 // The Filter is used to identify objects that a Lifecycle Rule applies to.
15319 // A Filter must have exactly one of Prefix, Tag, or And specified.
15320 Filter *LifecycleRuleFilter `type:"structure"`
15322 // Unique identifier for the rule. The value cannot be longer than 255 characters.
15323 ID *string `type:"string"`
15325 // Specifies when noncurrent object versions expire. Upon expiration, Amazon
15326 // S3 permanently deletes the noncurrent object versions. You set this lifecycle
15327 // configuration action on a bucket that has versioning enabled (or suspended)
15328 // to request that Amazon S3 delete noncurrent object versions at a specific
15329 // period in the object's lifetime.
15330 NoncurrentVersionExpiration *NoncurrentVersionExpiration `type:"structure"`
15332 NoncurrentVersionTransitions []*NoncurrentVersionTransition `locationName:"NoncurrentVersionTransition" type:"list" flattened:"true"`
15334 // Prefix identifying one or more objects to which the rule applies. This is
15335 // No longer used; use Filter instead.
15337 // Deprecated: Prefix has been deprecated
15338 Prefix *string `deprecated:"true" type:"string"`
15340 // If 'Enabled', the rule is currently being applied. If 'Disabled', the rule
15341 // is not currently being applied.
15343 // Status is a required field
15344 Status *string `type:"string" required:"true" enum:"ExpirationStatus"`
15346 Transitions []*Transition `locationName:"Transition" type:"list" flattened:"true"`
15349 // String returns the string representation
15350 func (s LifecycleRule) String() string {
15351 return awsutil.Prettify(s)
15354 // GoString returns the string representation
15355 func (s LifecycleRule) GoString() string {
15359 // Validate inspects the fields of the type to determine if they are valid.
15360 func (s *LifecycleRule) Validate() error {
15361 invalidParams := request.ErrInvalidParams{Context: "LifecycleRule"}
15362 if s.Status == nil {
15363 invalidParams.Add(request.NewErrParamRequired("Status"))
15365 if s.Filter != nil {
15366 if err := s.Filter.Validate(); err != nil {
15367 invalidParams.AddNested("Filter", err.(request.ErrInvalidParams))
15371 if invalidParams.Len() > 0 {
15372 return invalidParams
15377 // SetAbortIncompleteMultipartUpload sets the AbortIncompleteMultipartUpload field's value.
15378 func (s *LifecycleRule) SetAbortIncompleteMultipartUpload(v *AbortIncompleteMultipartUpload) *LifecycleRule {
15379 s.AbortIncompleteMultipartUpload = v
15383 // SetExpiration sets the Expiration field's value.
15384 func (s *LifecycleRule) SetExpiration(v *LifecycleExpiration) *LifecycleRule {
15389 // SetFilter sets the Filter field's value.
15390 func (s *LifecycleRule) SetFilter(v *LifecycleRuleFilter) *LifecycleRule {
15395 // SetID sets the ID field's value.
15396 func (s *LifecycleRule) SetID(v string) *LifecycleRule {
15401 // SetNoncurrentVersionExpiration sets the NoncurrentVersionExpiration field's value.
15402 func (s *LifecycleRule) SetNoncurrentVersionExpiration(v *NoncurrentVersionExpiration) *LifecycleRule {
15403 s.NoncurrentVersionExpiration = v
15407 // SetNoncurrentVersionTransitions sets the NoncurrentVersionTransitions field's value.
15408 func (s *LifecycleRule) SetNoncurrentVersionTransitions(v []*NoncurrentVersionTransition) *LifecycleRule {
15409 s.NoncurrentVersionTransitions = v
15413 // SetPrefix sets the Prefix field's value.
15414 func (s *LifecycleRule) SetPrefix(v string) *LifecycleRule {
15419 // SetStatus sets the Status field's value.
15420 func (s *LifecycleRule) SetStatus(v string) *LifecycleRule {
15425 // SetTransitions sets the Transitions field's value.
15426 func (s *LifecycleRule) SetTransitions(v []*Transition) *LifecycleRule {
15431 // This is used in a Lifecycle Rule Filter to apply a logical AND to two or
15432 // more predicates. The Lifecycle Rule will apply to any object matching all
15433 // of the predicates configured inside the And operator.
15434 type LifecycleRuleAndOperator struct {
15435 _ struct{} `type:"structure"`
15437 Prefix *string `type:"string"`
15439 // All of these tags must exist in the object's tag set in order for the rule
15441 Tags []*Tag `locationName:"Tag" locationNameList:"Tag" type:"list" flattened:"true"`
15444 // String returns the string representation
15445 func (s LifecycleRuleAndOperator) String() string {
15446 return awsutil.Prettify(s)
15449 // GoString returns the string representation
15450 func (s LifecycleRuleAndOperator) GoString() string {
15454 // Validate inspects the fields of the type to determine if they are valid.
15455 func (s *LifecycleRuleAndOperator) Validate() error {
15456 invalidParams := request.ErrInvalidParams{Context: "LifecycleRuleAndOperator"}
15458 for i, v := range s.Tags {
15462 if err := v.Validate(); err != nil {
15463 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
15468 if invalidParams.Len() > 0 {
15469 return invalidParams
15474 // SetPrefix sets the Prefix field's value.
15475 func (s *LifecycleRuleAndOperator) SetPrefix(v string) *LifecycleRuleAndOperator {
15480 // SetTags sets the Tags field's value.
15481 func (s *LifecycleRuleAndOperator) SetTags(v []*Tag) *LifecycleRuleAndOperator {
15486 // The Filter is used to identify objects that a Lifecycle Rule applies to.
15487 // A Filter must have exactly one of Prefix, Tag, or And specified.
15488 type LifecycleRuleFilter struct {
15489 _ struct{} `type:"structure"`
15491 // This is used in a Lifecycle Rule Filter to apply a logical AND to two or
15492 // more predicates. The Lifecycle Rule will apply to any object matching all
15493 // of the predicates configured inside the And operator.
15494 And *LifecycleRuleAndOperator `type:"structure"`
15496 // Prefix identifying one or more objects to which the rule applies.
15497 Prefix *string `type:"string"`
15499 // This tag must exist in the object's tag set in order for the rule to apply.
15500 Tag *Tag `type:"structure"`
15503 // String returns the string representation
15504 func (s LifecycleRuleFilter) String() string {
15505 return awsutil.Prettify(s)
15508 // GoString returns the string representation
15509 func (s LifecycleRuleFilter) GoString() string {
15513 // Validate inspects the fields of the type to determine if they are valid.
15514 func (s *LifecycleRuleFilter) Validate() error {
15515 invalidParams := request.ErrInvalidParams{Context: "LifecycleRuleFilter"}
15517 if err := s.And.Validate(); err != nil {
15518 invalidParams.AddNested("And", err.(request.ErrInvalidParams))
15522 if err := s.Tag.Validate(); err != nil {
15523 invalidParams.AddNested("Tag", err.(request.ErrInvalidParams))
15527 if invalidParams.Len() > 0 {
15528 return invalidParams
15533 // SetAnd sets the And field's value.
15534 func (s *LifecycleRuleFilter) SetAnd(v *LifecycleRuleAndOperator) *LifecycleRuleFilter {
15539 // SetPrefix sets the Prefix field's value.
15540 func (s *LifecycleRuleFilter) SetPrefix(v string) *LifecycleRuleFilter {
15545 // SetTag sets the Tag field's value.
15546 func (s *LifecycleRuleFilter) SetTag(v *Tag) *LifecycleRuleFilter {
15551 type ListBucketAnalyticsConfigurationsInput struct {
15552 _ struct{} `type:"structure"`
15554 // The name of the bucket from which analytics configurations are retrieved.
15556 // Bucket is a required field
15557 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
15559 // The ContinuationToken that represents a placeholder from where this request
15561 ContinuationToken *string `location:"querystring" locationName:"continuation-token" type:"string"`
15564 // String returns the string representation
15565 func (s ListBucketAnalyticsConfigurationsInput) String() string {
15566 return awsutil.Prettify(s)
15569 // GoString returns the string representation
15570 func (s ListBucketAnalyticsConfigurationsInput) GoString() string {
15574 // Validate inspects the fields of the type to determine if they are valid.
15575 func (s *ListBucketAnalyticsConfigurationsInput) Validate() error {
15576 invalidParams := request.ErrInvalidParams{Context: "ListBucketAnalyticsConfigurationsInput"}
15577 if s.Bucket == nil {
15578 invalidParams.Add(request.NewErrParamRequired("Bucket"))
15580 if s.Bucket != nil && len(*s.Bucket) < 1 {
15581 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
15584 if invalidParams.Len() > 0 {
15585 return invalidParams
15590 // SetBucket sets the Bucket field's value.
15591 func (s *ListBucketAnalyticsConfigurationsInput) SetBucket(v string) *ListBucketAnalyticsConfigurationsInput {
15596 func (s *ListBucketAnalyticsConfigurationsInput) getBucket() (v string) {
15597 if s.Bucket == nil {
15603 // SetContinuationToken sets the ContinuationToken field's value.
15604 func (s *ListBucketAnalyticsConfigurationsInput) SetContinuationToken(v string) *ListBucketAnalyticsConfigurationsInput {
15605 s.ContinuationToken = &v
15609 type ListBucketAnalyticsConfigurationsOutput struct {
15610 _ struct{} `type:"structure"`
15612 // The list of analytics configurations for a bucket.
15613 AnalyticsConfigurationList []*AnalyticsConfiguration `locationName:"AnalyticsConfiguration" type:"list" flattened:"true"`
15615 // The ContinuationToken that represents where this request began.
15616 ContinuationToken *string `type:"string"`
15618 // Indicates whether the returned list of analytics configurations is complete.
15619 // A value of true indicates that the list is not complete and the NextContinuationToken
15620 // will be provided for a subsequent request.
15621 IsTruncated *bool `type:"boolean"`
15623 // NextContinuationToken is sent when isTruncated is true, which indicates that
15624 // there are more analytics configurations to list. The next request must include
15625 // this NextContinuationToken. The token is obfuscated and is not a usable value.
15626 NextContinuationToken *string `type:"string"`
15629 // String returns the string representation
15630 func (s ListBucketAnalyticsConfigurationsOutput) String() string {
15631 return awsutil.Prettify(s)
15634 // GoString returns the string representation
15635 func (s ListBucketAnalyticsConfigurationsOutput) GoString() string {
15639 // SetAnalyticsConfigurationList sets the AnalyticsConfigurationList field's value.
15640 func (s *ListBucketAnalyticsConfigurationsOutput) SetAnalyticsConfigurationList(v []*AnalyticsConfiguration) *ListBucketAnalyticsConfigurationsOutput {
15641 s.AnalyticsConfigurationList = v
15645 // SetContinuationToken sets the ContinuationToken field's value.
15646 func (s *ListBucketAnalyticsConfigurationsOutput) SetContinuationToken(v string) *ListBucketAnalyticsConfigurationsOutput {
15647 s.ContinuationToken = &v
15651 // SetIsTruncated sets the IsTruncated field's value.
15652 func (s *ListBucketAnalyticsConfigurationsOutput) SetIsTruncated(v bool) *ListBucketAnalyticsConfigurationsOutput {
15657 // SetNextContinuationToken sets the NextContinuationToken field's value.
15658 func (s *ListBucketAnalyticsConfigurationsOutput) SetNextContinuationToken(v string) *ListBucketAnalyticsConfigurationsOutput {
15659 s.NextContinuationToken = &v
15663 type ListBucketInventoryConfigurationsInput struct {
15664 _ struct{} `type:"structure"`
15666 // The name of the bucket containing the inventory configurations to retrieve.
15668 // Bucket is a required field
15669 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
15671 // The marker used to continue an inventory configuration listing that has been
15672 // truncated. Use the NextContinuationToken from a previously truncated list
15673 // response to continue the listing. The continuation token is an opaque value
15674 // that Amazon S3 understands.
15675 ContinuationToken *string `location:"querystring" locationName:"continuation-token" type:"string"`
15678 // String returns the string representation
15679 func (s ListBucketInventoryConfigurationsInput) String() string {
15680 return awsutil.Prettify(s)
15683 // GoString returns the string representation
15684 func (s ListBucketInventoryConfigurationsInput) GoString() string {
15688 // Validate inspects the fields of the type to determine if they are valid.
15689 func (s *ListBucketInventoryConfigurationsInput) Validate() error {
15690 invalidParams := request.ErrInvalidParams{Context: "ListBucketInventoryConfigurationsInput"}
15691 if s.Bucket == nil {
15692 invalidParams.Add(request.NewErrParamRequired("Bucket"))
15694 if s.Bucket != nil && len(*s.Bucket) < 1 {
15695 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
15698 if invalidParams.Len() > 0 {
15699 return invalidParams
15704 // SetBucket sets the Bucket field's value.
15705 func (s *ListBucketInventoryConfigurationsInput) SetBucket(v string) *ListBucketInventoryConfigurationsInput {
15710 func (s *ListBucketInventoryConfigurationsInput) getBucket() (v string) {
15711 if s.Bucket == nil {
15717 // SetContinuationToken sets the ContinuationToken field's value.
15718 func (s *ListBucketInventoryConfigurationsInput) SetContinuationToken(v string) *ListBucketInventoryConfigurationsInput {
15719 s.ContinuationToken = &v
15723 type ListBucketInventoryConfigurationsOutput struct {
15724 _ struct{} `type:"structure"`
15726 // If sent in the request, the marker that is used as a starting point for this
15727 // inventory configuration list response.
15728 ContinuationToken *string `type:"string"`
15730 // The list of inventory configurations for a bucket.
15731 InventoryConfigurationList []*InventoryConfiguration `locationName:"InventoryConfiguration" type:"list" flattened:"true"`
15733 // Indicates whether the returned list of inventory configurations is truncated
15734 // in this response. A value of true indicates that the list is truncated.
15735 IsTruncated *bool `type:"boolean"`
15737 // The marker used to continue this inventory configuration listing. Use the
15738 // NextContinuationToken from this response to continue the listing in a subsequent
15739 // request. The continuation token is an opaque value that Amazon S3 understands.
15740 NextContinuationToken *string `type:"string"`
15743 // String returns the string representation
15744 func (s ListBucketInventoryConfigurationsOutput) String() string {
15745 return awsutil.Prettify(s)
15748 // GoString returns the string representation
15749 func (s ListBucketInventoryConfigurationsOutput) GoString() string {
15753 // SetContinuationToken sets the ContinuationToken field's value.
15754 func (s *ListBucketInventoryConfigurationsOutput) SetContinuationToken(v string) *ListBucketInventoryConfigurationsOutput {
15755 s.ContinuationToken = &v
15759 // SetInventoryConfigurationList sets the InventoryConfigurationList field's value.
15760 func (s *ListBucketInventoryConfigurationsOutput) SetInventoryConfigurationList(v []*InventoryConfiguration) *ListBucketInventoryConfigurationsOutput {
15761 s.InventoryConfigurationList = v
15765 // SetIsTruncated sets the IsTruncated field's value.
15766 func (s *ListBucketInventoryConfigurationsOutput) SetIsTruncated(v bool) *ListBucketInventoryConfigurationsOutput {
15771 // SetNextContinuationToken sets the NextContinuationToken field's value.
15772 func (s *ListBucketInventoryConfigurationsOutput) SetNextContinuationToken(v string) *ListBucketInventoryConfigurationsOutput {
15773 s.NextContinuationToken = &v
15777 type ListBucketMetricsConfigurationsInput struct {
15778 _ struct{} `type:"structure"`
15780 // The name of the bucket containing the metrics configurations to retrieve.
15782 // Bucket is a required field
15783 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
15785 // The marker that is used to continue a metrics configuration listing that
15786 // has been truncated. Use the NextContinuationToken from a previously truncated
15787 // list response to continue the listing. The continuation token is an opaque
15788 // value that Amazon S3 understands.
15789 ContinuationToken *string `location:"querystring" locationName:"continuation-token" type:"string"`
15792 // String returns the string representation
15793 func (s ListBucketMetricsConfigurationsInput) String() string {
15794 return awsutil.Prettify(s)
15797 // GoString returns the string representation
15798 func (s ListBucketMetricsConfigurationsInput) GoString() string {
15802 // Validate inspects the fields of the type to determine if they are valid.
15803 func (s *ListBucketMetricsConfigurationsInput) Validate() error {
15804 invalidParams := request.ErrInvalidParams{Context: "ListBucketMetricsConfigurationsInput"}
15805 if s.Bucket == nil {
15806 invalidParams.Add(request.NewErrParamRequired("Bucket"))
15808 if s.Bucket != nil && len(*s.Bucket) < 1 {
15809 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
15812 if invalidParams.Len() > 0 {
15813 return invalidParams
15818 // SetBucket sets the Bucket field's value.
15819 func (s *ListBucketMetricsConfigurationsInput) SetBucket(v string) *ListBucketMetricsConfigurationsInput {
15824 func (s *ListBucketMetricsConfigurationsInput) getBucket() (v string) {
15825 if s.Bucket == nil {
15831 // SetContinuationToken sets the ContinuationToken field's value.
15832 func (s *ListBucketMetricsConfigurationsInput) SetContinuationToken(v string) *ListBucketMetricsConfigurationsInput {
15833 s.ContinuationToken = &v
15837 type ListBucketMetricsConfigurationsOutput struct {
15838 _ struct{} `type:"structure"`
15840 // The marker that is used as a starting point for this metrics configuration
15841 // list response. This value is present if it was sent in the request.
15842 ContinuationToken *string `type:"string"`
15844 // Indicates whether the returned list of metrics configurations is complete.
15845 // A value of true indicates that the list is not complete and the NextContinuationToken
15846 // will be provided for a subsequent request.
15847 IsTruncated *bool `type:"boolean"`
15849 // The list of metrics configurations for a bucket.
15850 MetricsConfigurationList []*MetricsConfiguration `locationName:"MetricsConfiguration" type:"list" flattened:"true"`
15852 // The marker used to continue a metrics configuration listing that has been
15853 // truncated. Use the NextContinuationToken from a previously truncated list
15854 // response to continue the listing. The continuation token is an opaque value
15855 // that Amazon S3 understands.
15856 NextContinuationToken *string `type:"string"`
15859 // String returns the string representation
15860 func (s ListBucketMetricsConfigurationsOutput) String() string {
15861 return awsutil.Prettify(s)
15864 // GoString returns the string representation
15865 func (s ListBucketMetricsConfigurationsOutput) GoString() string {
15869 // SetContinuationToken sets the ContinuationToken field's value.
15870 func (s *ListBucketMetricsConfigurationsOutput) SetContinuationToken(v string) *ListBucketMetricsConfigurationsOutput {
15871 s.ContinuationToken = &v
15875 // SetIsTruncated sets the IsTruncated field's value.
15876 func (s *ListBucketMetricsConfigurationsOutput) SetIsTruncated(v bool) *ListBucketMetricsConfigurationsOutput {
15881 // SetMetricsConfigurationList sets the MetricsConfigurationList field's value.
15882 func (s *ListBucketMetricsConfigurationsOutput) SetMetricsConfigurationList(v []*MetricsConfiguration) *ListBucketMetricsConfigurationsOutput {
15883 s.MetricsConfigurationList = v
15887 // SetNextContinuationToken sets the NextContinuationToken field's value.
15888 func (s *ListBucketMetricsConfigurationsOutput) SetNextContinuationToken(v string) *ListBucketMetricsConfigurationsOutput {
15889 s.NextContinuationToken = &v
15893 type ListBucketsInput struct {
15894 _ struct{} `type:"structure"`
15897 // String returns the string representation
15898 func (s ListBucketsInput) String() string {
15899 return awsutil.Prettify(s)
15902 // GoString returns the string representation
15903 func (s ListBucketsInput) GoString() string {
15907 type ListBucketsOutput struct {
15908 _ struct{} `type:"structure"`
15910 Buckets []*Bucket `locationNameList:"Bucket" type:"list"`
15912 Owner *Owner `type:"structure"`
15915 // String returns the string representation
15916 func (s ListBucketsOutput) String() string {
15917 return awsutil.Prettify(s)
15920 // GoString returns the string representation
15921 func (s ListBucketsOutput) GoString() string {
15925 // SetBuckets sets the Buckets field's value.
15926 func (s *ListBucketsOutput) SetBuckets(v []*Bucket) *ListBucketsOutput {
15931 // SetOwner sets the Owner field's value.
15932 func (s *ListBucketsOutput) SetOwner(v *Owner) *ListBucketsOutput {
15937 type ListMultipartUploadsInput struct {
15938 _ struct{} `type:"structure"`
15940 // Bucket is a required field
15941 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
15943 // Character you use to group keys.
15944 Delimiter *string `location:"querystring" locationName:"delimiter" type:"string"`
15946 // Requests Amazon S3 to encode the object keys in the response and specifies
15947 // the encoding method to use. An object key may contain any Unicode character;
15948 // however, XML 1.0 parser cannot parse some characters, such as characters
15949 // with an ASCII value from 0 to 10. For characters that are not supported in
15950 // XML 1.0, you can add this parameter to request that Amazon S3 encode the
15951 // keys in the response.
15952 EncodingType *string `location:"querystring" locationName:"encoding-type" type:"string" enum:"EncodingType"`
15954 // Together with upload-id-marker, this parameter specifies the multipart upload
15955 // after which listing should begin.
15956 KeyMarker *string `location:"querystring" locationName:"key-marker" type:"string"`
15958 // Sets the maximum number of multipart uploads, from 1 to 1,000, to return
15959 // in the response body. 1,000 is the maximum number of uploads that can be
15960 // returned in a response.
15961 MaxUploads *int64 `location:"querystring" locationName:"max-uploads" type:"integer"`
15963 // Lists in-progress uploads only for those keys that begin with the specified
15965 Prefix *string `location:"querystring" locationName:"prefix" type:"string"`
15967 // Together with key-marker, specifies the multipart upload after which listing
15968 // should begin. If key-marker is not specified, the upload-id-marker parameter
15970 UploadIdMarker *string `location:"querystring" locationName:"upload-id-marker" type:"string"`
15973 // String returns the string representation
15974 func (s ListMultipartUploadsInput) String() string {
15975 return awsutil.Prettify(s)
15978 // GoString returns the string representation
15979 func (s ListMultipartUploadsInput) GoString() string {
15983 // Validate inspects the fields of the type to determine if they are valid.
15984 func (s *ListMultipartUploadsInput) Validate() error {
15985 invalidParams := request.ErrInvalidParams{Context: "ListMultipartUploadsInput"}
15986 if s.Bucket == nil {
15987 invalidParams.Add(request.NewErrParamRequired("Bucket"))
15989 if s.Bucket != nil && len(*s.Bucket) < 1 {
15990 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
15993 if invalidParams.Len() > 0 {
15994 return invalidParams
15999 // SetBucket sets the Bucket field's value.
16000 func (s *ListMultipartUploadsInput) SetBucket(v string) *ListMultipartUploadsInput {
16005 func (s *ListMultipartUploadsInput) getBucket() (v string) {
16006 if s.Bucket == nil {
16012 // SetDelimiter sets the Delimiter field's value.
16013 func (s *ListMultipartUploadsInput) SetDelimiter(v string) *ListMultipartUploadsInput {
16018 // SetEncodingType sets the EncodingType field's value.
16019 func (s *ListMultipartUploadsInput) SetEncodingType(v string) *ListMultipartUploadsInput {
16020 s.EncodingType = &v
16024 // SetKeyMarker sets the KeyMarker field's value.
16025 func (s *ListMultipartUploadsInput) SetKeyMarker(v string) *ListMultipartUploadsInput {
16030 // SetMaxUploads sets the MaxUploads field's value.
16031 func (s *ListMultipartUploadsInput) SetMaxUploads(v int64) *ListMultipartUploadsInput {
16036 // SetPrefix sets the Prefix field's value.
16037 func (s *ListMultipartUploadsInput) SetPrefix(v string) *ListMultipartUploadsInput {
16042 // SetUploadIdMarker sets the UploadIdMarker field's value.
16043 func (s *ListMultipartUploadsInput) SetUploadIdMarker(v string) *ListMultipartUploadsInput {
16044 s.UploadIdMarker = &v
16048 type ListMultipartUploadsOutput struct {
16049 _ struct{} `type:"structure"`
16051 // Name of the bucket to which the multipart upload was initiated.
16052 Bucket *string `type:"string"`
16054 CommonPrefixes []*CommonPrefix `type:"list" flattened:"true"`
16056 Delimiter *string `type:"string"`
16058 // Encoding type used by Amazon S3 to encode object keys in the response.
16059 EncodingType *string `type:"string" enum:"EncodingType"`
16061 // Indicates whether the returned list of multipart uploads is truncated. A
16062 // value of true indicates that the list was truncated. The list can be truncated
16063 // if the number of multipart uploads exceeds the limit allowed or specified
16065 IsTruncated *bool `type:"boolean"`
16067 // The key at or after which the listing began.
16068 KeyMarker *string `type:"string"`
16070 // Maximum number of multipart uploads that could have been included in the
16072 MaxUploads *int64 `type:"integer"`
16074 // When a list is truncated, this element specifies the value that should be
16075 // used for the key-marker request parameter in a subsequent request.
16076 NextKeyMarker *string `type:"string"`
16078 // When a list is truncated, this element specifies the value that should be
16079 // used for the upload-id-marker request parameter in a subsequent request.
16080 NextUploadIdMarker *string `type:"string"`
16082 // When a prefix is provided in the request, this field contains the specified
16083 // prefix. The result contains only keys starting with the specified prefix.
16084 Prefix *string `type:"string"`
16086 // Upload ID after which listing began.
16087 UploadIdMarker *string `type:"string"`
16089 Uploads []*MultipartUpload `locationName:"Upload" type:"list" flattened:"true"`
16092 // String returns the string representation
16093 func (s ListMultipartUploadsOutput) String() string {
16094 return awsutil.Prettify(s)
16097 // GoString returns the string representation
16098 func (s ListMultipartUploadsOutput) GoString() string {
16102 // SetBucket sets the Bucket field's value.
16103 func (s *ListMultipartUploadsOutput) SetBucket(v string) *ListMultipartUploadsOutput {
16108 func (s *ListMultipartUploadsOutput) getBucket() (v string) {
16109 if s.Bucket == nil {
16115 // SetCommonPrefixes sets the CommonPrefixes field's value.
16116 func (s *ListMultipartUploadsOutput) SetCommonPrefixes(v []*CommonPrefix) *ListMultipartUploadsOutput {
16117 s.CommonPrefixes = v
16121 // SetDelimiter sets the Delimiter field's value.
16122 func (s *ListMultipartUploadsOutput) SetDelimiter(v string) *ListMultipartUploadsOutput {
16127 // SetEncodingType sets the EncodingType field's value.
16128 func (s *ListMultipartUploadsOutput) SetEncodingType(v string) *ListMultipartUploadsOutput {
16129 s.EncodingType = &v
16133 // SetIsTruncated sets the IsTruncated field's value.
16134 func (s *ListMultipartUploadsOutput) SetIsTruncated(v bool) *ListMultipartUploadsOutput {
16139 // SetKeyMarker sets the KeyMarker field's value.
16140 func (s *ListMultipartUploadsOutput) SetKeyMarker(v string) *ListMultipartUploadsOutput {
16145 // SetMaxUploads sets the MaxUploads field's value.
16146 func (s *ListMultipartUploadsOutput) SetMaxUploads(v int64) *ListMultipartUploadsOutput {
16151 // SetNextKeyMarker sets the NextKeyMarker field's value.
16152 func (s *ListMultipartUploadsOutput) SetNextKeyMarker(v string) *ListMultipartUploadsOutput {
16153 s.NextKeyMarker = &v
16157 // SetNextUploadIdMarker sets the NextUploadIdMarker field's value.
16158 func (s *ListMultipartUploadsOutput) SetNextUploadIdMarker(v string) *ListMultipartUploadsOutput {
16159 s.NextUploadIdMarker = &v
16163 // SetPrefix sets the Prefix field's value.
16164 func (s *ListMultipartUploadsOutput) SetPrefix(v string) *ListMultipartUploadsOutput {
16169 // SetUploadIdMarker sets the UploadIdMarker field's value.
16170 func (s *ListMultipartUploadsOutput) SetUploadIdMarker(v string) *ListMultipartUploadsOutput {
16171 s.UploadIdMarker = &v
16175 // SetUploads sets the Uploads field's value.
16176 func (s *ListMultipartUploadsOutput) SetUploads(v []*MultipartUpload) *ListMultipartUploadsOutput {
16181 type ListObjectVersionsInput struct {
16182 _ struct{} `type:"structure"`
16184 // Bucket is a required field
16185 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
16187 // A delimiter is a character you use to group keys.
16188 Delimiter *string `location:"querystring" locationName:"delimiter" type:"string"`
16190 // Requests Amazon S3 to encode the object keys in the response and specifies
16191 // the encoding method to use. An object key may contain any Unicode character;
16192 // however, XML 1.0 parser cannot parse some characters, such as characters
16193 // with an ASCII value from 0 to 10. For characters that are not supported in
16194 // XML 1.0, you can add this parameter to request that Amazon S3 encode the
16195 // keys in the response.
16196 EncodingType *string `location:"querystring" locationName:"encoding-type" type:"string" enum:"EncodingType"`
16198 // Specifies the key to start with when listing objects in a bucket.
16199 KeyMarker *string `location:"querystring" locationName:"key-marker" type:"string"`
16201 // Sets the maximum number of keys returned in the response. The response might
16202 // contain fewer keys but will never contain more.
16203 MaxKeys *int64 `location:"querystring" locationName:"max-keys" type:"integer"`
16205 // Limits the response to keys that begin with the specified prefix.
16206 Prefix *string `location:"querystring" locationName:"prefix" type:"string"`
16208 // Specifies the object version you want to start listing from.
16209 VersionIdMarker *string `location:"querystring" locationName:"version-id-marker" type:"string"`
16212 // String returns the string representation
16213 func (s ListObjectVersionsInput) String() string {
16214 return awsutil.Prettify(s)
16217 // GoString returns the string representation
16218 func (s ListObjectVersionsInput) GoString() string {
16222 // Validate inspects the fields of the type to determine if they are valid.
16223 func (s *ListObjectVersionsInput) Validate() error {
16224 invalidParams := request.ErrInvalidParams{Context: "ListObjectVersionsInput"}
16225 if s.Bucket == nil {
16226 invalidParams.Add(request.NewErrParamRequired("Bucket"))
16228 if s.Bucket != nil && len(*s.Bucket) < 1 {
16229 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
16232 if invalidParams.Len() > 0 {
16233 return invalidParams
16238 // SetBucket sets the Bucket field's value.
16239 func (s *ListObjectVersionsInput) SetBucket(v string) *ListObjectVersionsInput {
16244 func (s *ListObjectVersionsInput) getBucket() (v string) {
16245 if s.Bucket == nil {
16251 // SetDelimiter sets the Delimiter field's value.
16252 func (s *ListObjectVersionsInput) SetDelimiter(v string) *ListObjectVersionsInput {
16257 // SetEncodingType sets the EncodingType field's value.
16258 func (s *ListObjectVersionsInput) SetEncodingType(v string) *ListObjectVersionsInput {
16259 s.EncodingType = &v
16263 // SetKeyMarker sets the KeyMarker field's value.
16264 func (s *ListObjectVersionsInput) SetKeyMarker(v string) *ListObjectVersionsInput {
16269 // SetMaxKeys sets the MaxKeys field's value.
16270 func (s *ListObjectVersionsInput) SetMaxKeys(v int64) *ListObjectVersionsInput {
16275 // SetPrefix sets the Prefix field's value.
16276 func (s *ListObjectVersionsInput) SetPrefix(v string) *ListObjectVersionsInput {
16281 // SetVersionIdMarker sets the VersionIdMarker field's value.
16282 func (s *ListObjectVersionsInput) SetVersionIdMarker(v string) *ListObjectVersionsInput {
16283 s.VersionIdMarker = &v
16287 type ListObjectVersionsOutput struct {
16288 _ struct{} `type:"structure"`
16290 CommonPrefixes []*CommonPrefix `type:"list" flattened:"true"`
16292 DeleteMarkers []*DeleteMarkerEntry `locationName:"DeleteMarker" type:"list" flattened:"true"`
16294 Delimiter *string `type:"string"`
16296 // Encoding type used by Amazon S3 to encode object keys in the response.
16297 EncodingType *string `type:"string" enum:"EncodingType"`
16299 // A flag that indicates whether or not Amazon S3 returned all of the results
16300 // that satisfied the search criteria. If your results were truncated, you can
16301 // make a follow-up paginated request using the NextKeyMarker and NextVersionIdMarker
16302 // response parameters as a starting place in another request to return the
16303 // rest of the results.
16304 IsTruncated *bool `type:"boolean"`
16306 // Marks the last Key returned in a truncated response.
16307 KeyMarker *string `type:"string"`
16309 MaxKeys *int64 `type:"integer"`
16311 Name *string `type:"string"`
16313 // Use this value for the key marker request parameter in a subsequent request.
16314 NextKeyMarker *string `type:"string"`
16316 // Use this value for the next version id marker parameter in a subsequent request.
16317 NextVersionIdMarker *string `type:"string"`
16319 Prefix *string `type:"string"`
16321 VersionIdMarker *string `type:"string"`
16323 Versions []*ObjectVersion `locationName:"Version" type:"list" flattened:"true"`
16326 // String returns the string representation
16327 func (s ListObjectVersionsOutput) String() string {
16328 return awsutil.Prettify(s)
16331 // GoString returns the string representation
16332 func (s ListObjectVersionsOutput) GoString() string {
16336 // SetCommonPrefixes sets the CommonPrefixes field's value.
16337 func (s *ListObjectVersionsOutput) SetCommonPrefixes(v []*CommonPrefix) *ListObjectVersionsOutput {
16338 s.CommonPrefixes = v
16342 // SetDeleteMarkers sets the DeleteMarkers field's value.
16343 func (s *ListObjectVersionsOutput) SetDeleteMarkers(v []*DeleteMarkerEntry) *ListObjectVersionsOutput {
16344 s.DeleteMarkers = v
16348 // SetDelimiter sets the Delimiter field's value.
16349 func (s *ListObjectVersionsOutput) SetDelimiter(v string) *ListObjectVersionsOutput {
16354 // SetEncodingType sets the EncodingType field's value.
16355 func (s *ListObjectVersionsOutput) SetEncodingType(v string) *ListObjectVersionsOutput {
16356 s.EncodingType = &v
16360 // SetIsTruncated sets the IsTruncated field's value.
16361 func (s *ListObjectVersionsOutput) SetIsTruncated(v bool) *ListObjectVersionsOutput {
16366 // SetKeyMarker sets the KeyMarker field's value.
16367 func (s *ListObjectVersionsOutput) SetKeyMarker(v string) *ListObjectVersionsOutput {
16372 // SetMaxKeys sets the MaxKeys field's value.
16373 func (s *ListObjectVersionsOutput) SetMaxKeys(v int64) *ListObjectVersionsOutput {
16378 // SetName sets the Name field's value.
16379 func (s *ListObjectVersionsOutput) SetName(v string) *ListObjectVersionsOutput {
16384 // SetNextKeyMarker sets the NextKeyMarker field's value.
16385 func (s *ListObjectVersionsOutput) SetNextKeyMarker(v string) *ListObjectVersionsOutput {
16386 s.NextKeyMarker = &v
16390 // SetNextVersionIdMarker sets the NextVersionIdMarker field's value.
16391 func (s *ListObjectVersionsOutput) SetNextVersionIdMarker(v string) *ListObjectVersionsOutput {
16392 s.NextVersionIdMarker = &v
16396 // SetPrefix sets the Prefix field's value.
16397 func (s *ListObjectVersionsOutput) SetPrefix(v string) *ListObjectVersionsOutput {
16402 // SetVersionIdMarker sets the VersionIdMarker field's value.
16403 func (s *ListObjectVersionsOutput) SetVersionIdMarker(v string) *ListObjectVersionsOutput {
16404 s.VersionIdMarker = &v
16408 // SetVersions sets the Versions field's value.
16409 func (s *ListObjectVersionsOutput) SetVersions(v []*ObjectVersion) *ListObjectVersionsOutput {
16414 type ListObjectsInput struct {
16415 _ struct{} `type:"structure"`
16417 // Bucket is a required field
16418 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
16420 // A delimiter is a character you use to group keys.
16421 Delimiter *string `location:"querystring" locationName:"delimiter" type:"string"`
16423 // Requests Amazon S3 to encode the object keys in the response and specifies
16424 // the encoding method to use. An object key may contain any Unicode character;
16425 // however, XML 1.0 parser cannot parse some characters, such as characters
16426 // with an ASCII value from 0 to 10. For characters that are not supported in
16427 // XML 1.0, you can add this parameter to request that Amazon S3 encode the
16428 // keys in the response.
16429 EncodingType *string `location:"querystring" locationName:"encoding-type" type:"string" enum:"EncodingType"`
16431 // Specifies the key to start with when listing objects in a bucket.
16432 Marker *string `location:"querystring" locationName:"marker" type:"string"`
16434 // Sets the maximum number of keys returned in the response. The response might
16435 // contain fewer keys but will never contain more.
16436 MaxKeys *int64 `location:"querystring" locationName:"max-keys" type:"integer"`
16438 // Limits the response to keys that begin with the specified prefix.
16439 Prefix *string `location:"querystring" locationName:"prefix" type:"string"`
16441 // Confirms that the requester knows that she or he will be charged for the
16442 // list objects request. Bucket owners need not specify this parameter in their
16444 RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
16447 // String returns the string representation
16448 func (s ListObjectsInput) String() string {
16449 return awsutil.Prettify(s)
16452 // GoString returns the string representation
16453 func (s ListObjectsInput) GoString() string {
16457 // Validate inspects the fields of the type to determine if they are valid.
16458 func (s *ListObjectsInput) Validate() error {
16459 invalidParams := request.ErrInvalidParams{Context: "ListObjectsInput"}
16460 if s.Bucket == nil {
16461 invalidParams.Add(request.NewErrParamRequired("Bucket"))
16463 if s.Bucket != nil && len(*s.Bucket) < 1 {
16464 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
16467 if invalidParams.Len() > 0 {
16468 return invalidParams
16473 // SetBucket sets the Bucket field's value.
16474 func (s *ListObjectsInput) SetBucket(v string) *ListObjectsInput {
16479 func (s *ListObjectsInput) getBucket() (v string) {
16480 if s.Bucket == nil {
16486 // SetDelimiter sets the Delimiter field's value.
16487 func (s *ListObjectsInput) SetDelimiter(v string) *ListObjectsInput {
16492 // SetEncodingType sets the EncodingType field's value.
16493 func (s *ListObjectsInput) SetEncodingType(v string) *ListObjectsInput {
16494 s.EncodingType = &v
16498 // SetMarker sets the Marker field's value.
16499 func (s *ListObjectsInput) SetMarker(v string) *ListObjectsInput {
16504 // SetMaxKeys sets the MaxKeys field's value.
16505 func (s *ListObjectsInput) SetMaxKeys(v int64) *ListObjectsInput {
16510 // SetPrefix sets the Prefix field's value.
16511 func (s *ListObjectsInput) SetPrefix(v string) *ListObjectsInput {
16516 // SetRequestPayer sets the RequestPayer field's value.
16517 func (s *ListObjectsInput) SetRequestPayer(v string) *ListObjectsInput {
16518 s.RequestPayer = &v
16522 type ListObjectsOutput struct {
16523 _ struct{} `type:"structure"`
16525 CommonPrefixes []*CommonPrefix `type:"list" flattened:"true"`
16527 Contents []*Object `type:"list" flattened:"true"`
16529 Delimiter *string `type:"string"`
16531 // Encoding type used by Amazon S3 to encode object keys in the response.
16532 EncodingType *string `type:"string" enum:"EncodingType"`
16534 // A flag that indicates whether or not Amazon S3 returned all of the results
16535 // that satisfied the search criteria.
16536 IsTruncated *bool `type:"boolean"`
16538 Marker *string `type:"string"`
16540 MaxKeys *int64 `type:"integer"`
16542 Name *string `type:"string"`
16544 // When response is truncated (the IsTruncated element value in the response
16545 // is true), you can use the key name in this field as marker in the subsequent
16546 // request to get next set of objects. Amazon S3 lists objects in alphabetical
16547 // order Note: This element is returned only if you have delimiter request parameter
16548 // specified. If response does not include the NextMaker and it is truncated,
16549 // you can use the value of the last Key in the response as the marker in the
16550 // subsequent request to get the next set of object keys.
16551 NextMarker *string `type:"string"`
16553 Prefix *string `type:"string"`
16556 // String returns the string representation
16557 func (s ListObjectsOutput) String() string {
16558 return awsutil.Prettify(s)
16561 // GoString returns the string representation
16562 func (s ListObjectsOutput) GoString() string {
16566 // SetCommonPrefixes sets the CommonPrefixes field's value.
16567 func (s *ListObjectsOutput) SetCommonPrefixes(v []*CommonPrefix) *ListObjectsOutput {
16568 s.CommonPrefixes = v
16572 // SetContents sets the Contents field's value.
16573 func (s *ListObjectsOutput) SetContents(v []*Object) *ListObjectsOutput {
16578 // SetDelimiter sets the Delimiter field's value.
16579 func (s *ListObjectsOutput) SetDelimiter(v string) *ListObjectsOutput {
16584 // SetEncodingType sets the EncodingType field's value.
16585 func (s *ListObjectsOutput) SetEncodingType(v string) *ListObjectsOutput {
16586 s.EncodingType = &v
16590 // SetIsTruncated sets the IsTruncated field's value.
16591 func (s *ListObjectsOutput) SetIsTruncated(v bool) *ListObjectsOutput {
16596 // SetMarker sets the Marker field's value.
16597 func (s *ListObjectsOutput) SetMarker(v string) *ListObjectsOutput {
16602 // SetMaxKeys sets the MaxKeys field's value.
16603 func (s *ListObjectsOutput) SetMaxKeys(v int64) *ListObjectsOutput {
16608 // SetName sets the Name field's value.
16609 func (s *ListObjectsOutput) SetName(v string) *ListObjectsOutput {
16614 // SetNextMarker sets the NextMarker field's value.
16615 func (s *ListObjectsOutput) SetNextMarker(v string) *ListObjectsOutput {
16620 // SetPrefix sets the Prefix field's value.
16621 func (s *ListObjectsOutput) SetPrefix(v string) *ListObjectsOutput {
16626 type ListObjectsV2Input struct {
16627 _ struct{} `type:"structure"`
16629 // Name of the bucket to list.
16631 // Bucket is a required field
16632 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
16634 // ContinuationToken indicates Amazon S3 that the list is being continued on
16635 // this bucket with a token. ContinuationToken is obfuscated and is not a real
16637 ContinuationToken *string `location:"querystring" locationName:"continuation-token" type:"string"`
16639 // A delimiter is a character you use to group keys.
16640 Delimiter *string `location:"querystring" locationName:"delimiter" type:"string"`
16642 // Encoding type used by Amazon S3 to encode object keys in the response.
16643 EncodingType *string `location:"querystring" locationName:"encoding-type" type:"string" enum:"EncodingType"`
16645 // The owner field is not present in listV2 by default, if you want to return
16646 // owner field with each key in the result then set the fetch owner field to
16648 FetchOwner *bool `location:"querystring" locationName:"fetch-owner" type:"boolean"`
16650 // Sets the maximum number of keys returned in the response. The response might
16651 // contain fewer keys but will never contain more.
16652 MaxKeys *int64 `location:"querystring" locationName:"max-keys" type:"integer"`
16654 // Limits the response to keys that begin with the specified prefix.
16655 Prefix *string `location:"querystring" locationName:"prefix" type:"string"`
16657 // Confirms that the requester knows that she or he will be charged for the
16658 // list objects request in V2 style. Bucket owners need not specify this parameter
16659 // in their requests.
16660 RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
16662 // StartAfter is where you want Amazon S3 to start listing from. Amazon S3 starts
16663 // listing after this specified key. StartAfter can be any key in the bucket
16664 StartAfter *string `location:"querystring" locationName:"start-after" type:"string"`
16667 // String returns the string representation
16668 func (s ListObjectsV2Input) String() string {
16669 return awsutil.Prettify(s)
16672 // GoString returns the string representation
16673 func (s ListObjectsV2Input) GoString() string {
16677 // Validate inspects the fields of the type to determine if they are valid.
16678 func (s *ListObjectsV2Input) Validate() error {
16679 invalidParams := request.ErrInvalidParams{Context: "ListObjectsV2Input"}
16680 if s.Bucket == nil {
16681 invalidParams.Add(request.NewErrParamRequired("Bucket"))
16683 if s.Bucket != nil && len(*s.Bucket) < 1 {
16684 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
16687 if invalidParams.Len() > 0 {
16688 return invalidParams
16693 // SetBucket sets the Bucket field's value.
16694 func (s *ListObjectsV2Input) SetBucket(v string) *ListObjectsV2Input {
16699 func (s *ListObjectsV2Input) getBucket() (v string) {
16700 if s.Bucket == nil {
16706 // SetContinuationToken sets the ContinuationToken field's value.
16707 func (s *ListObjectsV2Input) SetContinuationToken(v string) *ListObjectsV2Input {
16708 s.ContinuationToken = &v
16712 // SetDelimiter sets the Delimiter field's value.
16713 func (s *ListObjectsV2Input) SetDelimiter(v string) *ListObjectsV2Input {
16718 // SetEncodingType sets the EncodingType field's value.
16719 func (s *ListObjectsV2Input) SetEncodingType(v string) *ListObjectsV2Input {
16720 s.EncodingType = &v
16724 // SetFetchOwner sets the FetchOwner field's value.
16725 func (s *ListObjectsV2Input) SetFetchOwner(v bool) *ListObjectsV2Input {
16730 // SetMaxKeys sets the MaxKeys field's value.
16731 func (s *ListObjectsV2Input) SetMaxKeys(v int64) *ListObjectsV2Input {
16736 // SetPrefix sets the Prefix field's value.
16737 func (s *ListObjectsV2Input) SetPrefix(v string) *ListObjectsV2Input {
16742 // SetRequestPayer sets the RequestPayer field's value.
16743 func (s *ListObjectsV2Input) SetRequestPayer(v string) *ListObjectsV2Input {
16744 s.RequestPayer = &v
16748 // SetStartAfter sets the StartAfter field's value.
16749 func (s *ListObjectsV2Input) SetStartAfter(v string) *ListObjectsV2Input {
16754 type ListObjectsV2Output struct {
16755 _ struct{} `type:"structure"`
16757 // CommonPrefixes contains all (if there are any) keys between Prefix and the
16758 // next occurrence of the string specified by delimiter
16759 CommonPrefixes []*CommonPrefix `type:"list" flattened:"true"`
16761 // Metadata about each object returned.
16762 Contents []*Object `type:"list" flattened:"true"`
16764 // ContinuationToken indicates Amazon S3 that the list is being continued on
16765 // this bucket with a token. ContinuationToken is obfuscated and is not a real
16767 ContinuationToken *string `type:"string"`
16769 // A delimiter is a character you use to group keys.
16770 Delimiter *string `type:"string"`
16772 // Encoding type used by Amazon S3 to encode object keys in the response.
16773 EncodingType *string `type:"string" enum:"EncodingType"`
16775 // A flag that indicates whether or not Amazon S3 returned all of the results
16776 // that satisfied the search criteria.
16777 IsTruncated *bool `type:"boolean"`
16779 // KeyCount is the number of keys returned with this request. KeyCount will
16780 // always be less than equals to MaxKeys field. Say you ask for 50 keys, your
16781 // result will include less than equals 50 keys
16782 KeyCount *int64 `type:"integer"`
16784 // Sets the maximum number of keys returned in the response. The response might
16785 // contain fewer keys but will never contain more.
16786 MaxKeys *int64 `type:"integer"`
16788 // Name of the bucket to list.
16789 Name *string `type:"string"`
16791 // NextContinuationToken is sent when isTruncated is true which means there
16792 // are more keys in the bucket that can be listed. The next list requests to
16793 // Amazon S3 can be continued with this NextContinuationToken. NextContinuationToken
16794 // is obfuscated and is not a real key
16795 NextContinuationToken *string `type:"string"`
16797 // Limits the response to keys that begin with the specified prefix.
16798 Prefix *string `type:"string"`
16800 // StartAfter is where you want Amazon S3 to start listing from. Amazon S3 starts
16801 // listing after this specified key. StartAfter can be any key in the bucket
16802 StartAfter *string `type:"string"`
16805 // String returns the string representation
16806 func (s ListObjectsV2Output) String() string {
16807 return awsutil.Prettify(s)
16810 // GoString returns the string representation
16811 func (s ListObjectsV2Output) GoString() string {
16815 // SetCommonPrefixes sets the CommonPrefixes field's value.
16816 func (s *ListObjectsV2Output) SetCommonPrefixes(v []*CommonPrefix) *ListObjectsV2Output {
16817 s.CommonPrefixes = v
16821 // SetContents sets the Contents field's value.
16822 func (s *ListObjectsV2Output) SetContents(v []*Object) *ListObjectsV2Output {
16827 // SetContinuationToken sets the ContinuationToken field's value.
16828 func (s *ListObjectsV2Output) SetContinuationToken(v string) *ListObjectsV2Output {
16829 s.ContinuationToken = &v
16833 // SetDelimiter sets the Delimiter field's value.
16834 func (s *ListObjectsV2Output) SetDelimiter(v string) *ListObjectsV2Output {
16839 // SetEncodingType sets the EncodingType field's value.
16840 func (s *ListObjectsV2Output) SetEncodingType(v string) *ListObjectsV2Output {
16841 s.EncodingType = &v
16845 // SetIsTruncated sets the IsTruncated field's value.
16846 func (s *ListObjectsV2Output) SetIsTruncated(v bool) *ListObjectsV2Output {
16851 // SetKeyCount sets the KeyCount field's value.
16852 func (s *ListObjectsV2Output) SetKeyCount(v int64) *ListObjectsV2Output {
16857 // SetMaxKeys sets the MaxKeys field's value.
16858 func (s *ListObjectsV2Output) SetMaxKeys(v int64) *ListObjectsV2Output {
16863 // SetName sets the Name field's value.
16864 func (s *ListObjectsV2Output) SetName(v string) *ListObjectsV2Output {
16869 // SetNextContinuationToken sets the NextContinuationToken field's value.
16870 func (s *ListObjectsV2Output) SetNextContinuationToken(v string) *ListObjectsV2Output {
16871 s.NextContinuationToken = &v
16875 // SetPrefix sets the Prefix field's value.
16876 func (s *ListObjectsV2Output) SetPrefix(v string) *ListObjectsV2Output {
16881 // SetStartAfter sets the StartAfter field's value.
16882 func (s *ListObjectsV2Output) SetStartAfter(v string) *ListObjectsV2Output {
16887 type ListPartsInput struct {
16888 _ struct{} `type:"structure"`
16890 // Bucket is a required field
16891 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
16893 // Key is a required field
16894 Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"`
16896 // Sets the maximum number of parts to return.
16897 MaxParts *int64 `location:"querystring" locationName:"max-parts" type:"integer"`
16899 // Specifies the part after which listing should begin. Only parts with higher
16900 // part numbers will be listed.
16901 PartNumberMarker *int64 `location:"querystring" locationName:"part-number-marker" type:"integer"`
16903 // Confirms that the requester knows that she or he will be charged for the
16904 // request. Bucket owners need not specify this parameter in their requests.
16905 // Documentation on downloading objects from requester pays buckets can be found
16906 // at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
16907 RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
16909 // Upload ID identifying the multipart upload whose parts are being listed.
16911 // UploadId is a required field
16912 UploadId *string `location:"querystring" locationName:"uploadId" type:"string" required:"true"`
16915 // String returns the string representation
16916 func (s ListPartsInput) String() string {
16917 return awsutil.Prettify(s)
16920 // GoString returns the string representation
16921 func (s ListPartsInput) GoString() string {
16925 // Validate inspects the fields of the type to determine if they are valid.
16926 func (s *ListPartsInput) Validate() error {
16927 invalidParams := request.ErrInvalidParams{Context: "ListPartsInput"}
16928 if s.Bucket == nil {
16929 invalidParams.Add(request.NewErrParamRequired("Bucket"))
16931 if s.Bucket != nil && len(*s.Bucket) < 1 {
16932 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
16935 invalidParams.Add(request.NewErrParamRequired("Key"))
16937 if s.Key != nil && len(*s.Key) < 1 {
16938 invalidParams.Add(request.NewErrParamMinLen("Key", 1))
16940 if s.UploadId == nil {
16941 invalidParams.Add(request.NewErrParamRequired("UploadId"))
16944 if invalidParams.Len() > 0 {
16945 return invalidParams
16950 // SetBucket sets the Bucket field's value.
16951 func (s *ListPartsInput) SetBucket(v string) *ListPartsInput {
16956 func (s *ListPartsInput) getBucket() (v string) {
16957 if s.Bucket == nil {
16963 // SetKey sets the Key field's value.
16964 func (s *ListPartsInput) SetKey(v string) *ListPartsInput {
16969 // SetMaxParts sets the MaxParts field's value.
16970 func (s *ListPartsInput) SetMaxParts(v int64) *ListPartsInput {
16975 // SetPartNumberMarker sets the PartNumberMarker field's value.
16976 func (s *ListPartsInput) SetPartNumberMarker(v int64) *ListPartsInput {
16977 s.PartNumberMarker = &v
16981 // SetRequestPayer sets the RequestPayer field's value.
16982 func (s *ListPartsInput) SetRequestPayer(v string) *ListPartsInput {
16983 s.RequestPayer = &v
16987 // SetUploadId sets the UploadId field's value.
16988 func (s *ListPartsInput) SetUploadId(v string) *ListPartsInput {
16993 type ListPartsOutput struct {
16994 _ struct{} `type:"structure"`
16996 // Date when multipart upload will become eligible for abort operation by lifecycle.
16997 AbortDate *time.Time `location:"header" locationName:"x-amz-abort-date" type:"timestamp"`
16999 // Id of the lifecycle rule that makes a multipart upload eligible for abort
17001 AbortRuleId *string `location:"header" locationName:"x-amz-abort-rule-id" type:"string"`
17003 // Name of the bucket to which the multipart upload was initiated.
17004 Bucket *string `type:"string"`
17006 // Identifies who initiated the multipart upload.
17007 Initiator *Initiator `type:"structure"`
17009 // Indicates whether the returned list of parts is truncated.
17010 IsTruncated *bool `type:"boolean"`
17012 // Object key for which the multipart upload was initiated.
17013 Key *string `min:"1" type:"string"`
17015 // Maximum number of parts that were allowed in the response.
17016 MaxParts *int64 `type:"integer"`
17018 // When a list is truncated, this element specifies the last part in the list,
17019 // as well as the value to use for the part-number-marker request parameter
17020 // in a subsequent request.
17021 NextPartNumberMarker *int64 `type:"integer"`
17023 Owner *Owner `type:"structure"`
17025 // Part number after which listing begins.
17026 PartNumberMarker *int64 `type:"integer"`
17028 Parts []*Part `locationName:"Part" type:"list" flattened:"true"`
17030 // If present, indicates that the requester was successfully charged for the
17032 RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"`
17034 // The class of storage used to store the object.
17035 StorageClass *string `type:"string" enum:"StorageClass"`
17037 // Upload ID identifying the multipart upload whose parts are being listed.
17038 UploadId *string `type:"string"`
17041 // String returns the string representation
17042 func (s ListPartsOutput) String() string {
17043 return awsutil.Prettify(s)
17046 // GoString returns the string representation
17047 func (s ListPartsOutput) GoString() string {
17051 // SetAbortDate sets the AbortDate field's value.
17052 func (s *ListPartsOutput) SetAbortDate(v time.Time) *ListPartsOutput {
17057 // SetAbortRuleId sets the AbortRuleId field's value.
17058 func (s *ListPartsOutput) SetAbortRuleId(v string) *ListPartsOutput {
17063 // SetBucket sets the Bucket field's value.
17064 func (s *ListPartsOutput) SetBucket(v string) *ListPartsOutput {
17069 func (s *ListPartsOutput) getBucket() (v string) {
17070 if s.Bucket == nil {
17076 // SetInitiator sets the Initiator field's value.
17077 func (s *ListPartsOutput) SetInitiator(v *Initiator) *ListPartsOutput {
17082 // SetIsTruncated sets the IsTruncated field's value.
17083 func (s *ListPartsOutput) SetIsTruncated(v bool) *ListPartsOutput {
17088 // SetKey sets the Key field's value.
17089 func (s *ListPartsOutput) SetKey(v string) *ListPartsOutput {
17094 // SetMaxParts sets the MaxParts field's value.
17095 func (s *ListPartsOutput) SetMaxParts(v int64) *ListPartsOutput {
17100 // SetNextPartNumberMarker sets the NextPartNumberMarker field's value.
17101 func (s *ListPartsOutput) SetNextPartNumberMarker(v int64) *ListPartsOutput {
17102 s.NextPartNumberMarker = &v
17106 // SetOwner sets the Owner field's value.
17107 func (s *ListPartsOutput) SetOwner(v *Owner) *ListPartsOutput {
17112 // SetPartNumberMarker sets the PartNumberMarker field's value.
17113 func (s *ListPartsOutput) SetPartNumberMarker(v int64) *ListPartsOutput {
17114 s.PartNumberMarker = &v
17118 // SetParts sets the Parts field's value.
17119 func (s *ListPartsOutput) SetParts(v []*Part) *ListPartsOutput {
17124 // SetRequestCharged sets the RequestCharged field's value.
17125 func (s *ListPartsOutput) SetRequestCharged(v string) *ListPartsOutput {
17126 s.RequestCharged = &v
17130 // SetStorageClass sets the StorageClass field's value.
17131 func (s *ListPartsOutput) SetStorageClass(v string) *ListPartsOutput {
17132 s.StorageClass = &v
17136 // SetUploadId sets the UploadId field's value.
17137 func (s *ListPartsOutput) SetUploadId(v string) *ListPartsOutput {
17142 // Describes an S3 location that will receive the results of the restore request.
17143 type Location struct {
17144 _ struct{} `type:"structure"`
17146 // A list of grants that control access to the staged results.
17147 AccessControlList []*Grant `locationNameList:"Grant" type:"list"`
17149 // The name of the bucket where the restore results will be placed.
17151 // BucketName is a required field
17152 BucketName *string `type:"string" required:"true"`
17154 // The canned ACL to apply to the restore results.
17155 CannedACL *string `type:"string" enum:"ObjectCannedACL"`
17157 // Describes the server-side encryption that will be applied to the restore
17159 Encryption *Encryption `type:"structure"`
17161 // The prefix that is prepended to the restore results for this request.
17163 // Prefix is a required field
17164 Prefix *string `type:"string" required:"true"`
17166 // The class of storage used to store the restore results.
17167 StorageClass *string `type:"string" enum:"StorageClass"`
17169 // The tag-set that is applied to the restore results.
17170 Tagging *Tagging `type:"structure"`
17172 // A list of metadata to store with the restore results in S3.
17173 UserMetadata []*MetadataEntry `locationNameList:"MetadataEntry" type:"list"`
17176 // String returns the string representation
17177 func (s Location) String() string {
17178 return awsutil.Prettify(s)
17181 // GoString returns the string representation
17182 func (s Location) GoString() string {
17186 // Validate inspects the fields of the type to determine if they are valid.
17187 func (s *Location) Validate() error {
17188 invalidParams := request.ErrInvalidParams{Context: "Location"}
17189 if s.BucketName == nil {
17190 invalidParams.Add(request.NewErrParamRequired("BucketName"))
17192 if s.Prefix == nil {
17193 invalidParams.Add(request.NewErrParamRequired("Prefix"))
17195 if s.AccessControlList != nil {
17196 for i, v := range s.AccessControlList {
17200 if err := v.Validate(); err != nil {
17201 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "AccessControlList", i), err.(request.ErrInvalidParams))
17205 if s.Encryption != nil {
17206 if err := s.Encryption.Validate(); err != nil {
17207 invalidParams.AddNested("Encryption", err.(request.ErrInvalidParams))
17210 if s.Tagging != nil {
17211 if err := s.Tagging.Validate(); err != nil {
17212 invalidParams.AddNested("Tagging", err.(request.ErrInvalidParams))
17216 if invalidParams.Len() > 0 {
17217 return invalidParams
17222 // SetAccessControlList sets the AccessControlList field's value.
17223 func (s *Location) SetAccessControlList(v []*Grant) *Location {
17224 s.AccessControlList = v
17228 // SetBucketName sets the BucketName field's value.
17229 func (s *Location) SetBucketName(v string) *Location {
17234 // SetCannedACL sets the CannedACL field's value.
17235 func (s *Location) SetCannedACL(v string) *Location {
17240 // SetEncryption sets the Encryption field's value.
17241 func (s *Location) SetEncryption(v *Encryption) *Location {
17246 // SetPrefix sets the Prefix field's value.
17247 func (s *Location) SetPrefix(v string) *Location {
17252 // SetStorageClass sets the StorageClass field's value.
17253 func (s *Location) SetStorageClass(v string) *Location {
17254 s.StorageClass = &v
17258 // SetTagging sets the Tagging field's value.
17259 func (s *Location) SetTagging(v *Tagging) *Location {
17264 // SetUserMetadata sets the UserMetadata field's value.
17265 func (s *Location) SetUserMetadata(v []*MetadataEntry) *Location {
17270 // Container for logging information. Presence of this element indicates that
17271 // logging is enabled. Parameters TargetBucket and TargetPrefix are required
17273 type LoggingEnabled struct {
17274 _ struct{} `type:"structure"`
17276 // Specifies the bucket where you want Amazon S3 to store server access logs.
17277 // You can have your logs delivered to any bucket that you own, including the
17278 // same bucket that is being logged. You can also configure multiple buckets
17279 // to deliver their logs to the same target bucket. In this case you should
17280 // choose a different TargetPrefix for each source bucket so that the delivered
17281 // log files can be distinguished by key.
17283 // TargetBucket is a required field
17284 TargetBucket *string `type:"string" required:"true"`
17286 TargetGrants []*TargetGrant `locationNameList:"Grant" type:"list"`
17288 // This element lets you specify a prefix for the keys that the log files will
17289 // be stored under.
17291 // TargetPrefix is a required field
17292 TargetPrefix *string `type:"string" required:"true"`
17295 // String returns the string representation
17296 func (s LoggingEnabled) String() string {
17297 return awsutil.Prettify(s)
17300 // GoString returns the string representation
17301 func (s LoggingEnabled) GoString() string {
17305 // Validate inspects the fields of the type to determine if they are valid.
17306 func (s *LoggingEnabled) Validate() error {
17307 invalidParams := request.ErrInvalidParams{Context: "LoggingEnabled"}
17308 if s.TargetBucket == nil {
17309 invalidParams.Add(request.NewErrParamRequired("TargetBucket"))
17311 if s.TargetPrefix == nil {
17312 invalidParams.Add(request.NewErrParamRequired("TargetPrefix"))
17314 if s.TargetGrants != nil {
17315 for i, v := range s.TargetGrants {
17319 if err := v.Validate(); err != nil {
17320 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "TargetGrants", i), err.(request.ErrInvalidParams))
17325 if invalidParams.Len() > 0 {
17326 return invalidParams
17331 // SetTargetBucket sets the TargetBucket field's value.
17332 func (s *LoggingEnabled) SetTargetBucket(v string) *LoggingEnabled {
17333 s.TargetBucket = &v
17337 // SetTargetGrants sets the TargetGrants field's value.
17338 func (s *LoggingEnabled) SetTargetGrants(v []*TargetGrant) *LoggingEnabled {
17343 // SetTargetPrefix sets the TargetPrefix field's value.
17344 func (s *LoggingEnabled) SetTargetPrefix(v string) *LoggingEnabled {
17345 s.TargetPrefix = &v
17349 // A metadata key-value pair to store with an object.
17350 type MetadataEntry struct {
17351 _ struct{} `type:"structure"`
17353 Name *string `type:"string"`
17355 Value *string `type:"string"`
17358 // String returns the string representation
17359 func (s MetadataEntry) String() string {
17360 return awsutil.Prettify(s)
17363 // GoString returns the string representation
17364 func (s MetadataEntry) GoString() string {
17368 // SetName sets the Name field's value.
17369 func (s *MetadataEntry) SetName(v string) *MetadataEntry {
17374 // SetValue sets the Value field's value.
17375 func (s *MetadataEntry) SetValue(v string) *MetadataEntry {
17380 type MetricsAndOperator struct {
17381 _ struct{} `type:"structure"`
17383 // The prefix used when evaluating an AND predicate.
17384 Prefix *string `type:"string"`
17386 // The list of tags used when evaluating an AND predicate.
17387 Tags []*Tag `locationName:"Tag" locationNameList:"Tag" type:"list" flattened:"true"`
17390 // String returns the string representation
17391 func (s MetricsAndOperator) String() string {
17392 return awsutil.Prettify(s)
17395 // GoString returns the string representation
17396 func (s MetricsAndOperator) GoString() string {
17400 // Validate inspects the fields of the type to determine if they are valid.
17401 func (s *MetricsAndOperator) Validate() error {
17402 invalidParams := request.ErrInvalidParams{Context: "MetricsAndOperator"}
17404 for i, v := range s.Tags {
17408 if err := v.Validate(); err != nil {
17409 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
17414 if invalidParams.Len() > 0 {
17415 return invalidParams
17420 // SetPrefix sets the Prefix field's value.
17421 func (s *MetricsAndOperator) SetPrefix(v string) *MetricsAndOperator {
17426 // SetTags sets the Tags field's value.
17427 func (s *MetricsAndOperator) SetTags(v []*Tag) *MetricsAndOperator {
17432 type MetricsConfiguration struct {
17433 _ struct{} `type:"structure"`
17435 // Specifies a metrics configuration filter. The metrics configuration will
17436 // only include objects that meet the filter's criteria. A filter must be a
17437 // prefix, a tag, or a conjunction (MetricsAndOperator).
17438 Filter *MetricsFilter `type:"structure"`
17440 // The ID used to identify the metrics configuration.
17442 // Id is a required field
17443 Id *string `type:"string" required:"true"`
17446 // String returns the string representation
17447 func (s MetricsConfiguration) String() string {
17448 return awsutil.Prettify(s)
17451 // GoString returns the string representation
17452 func (s MetricsConfiguration) GoString() string {
17456 // Validate inspects the fields of the type to determine if they are valid.
17457 func (s *MetricsConfiguration) Validate() error {
17458 invalidParams := request.ErrInvalidParams{Context: "MetricsConfiguration"}
17460 invalidParams.Add(request.NewErrParamRequired("Id"))
17462 if s.Filter != nil {
17463 if err := s.Filter.Validate(); err != nil {
17464 invalidParams.AddNested("Filter", err.(request.ErrInvalidParams))
17468 if invalidParams.Len() > 0 {
17469 return invalidParams
17474 // SetFilter sets the Filter field's value.
17475 func (s *MetricsConfiguration) SetFilter(v *MetricsFilter) *MetricsConfiguration {
17480 // SetId sets the Id field's value.
17481 func (s *MetricsConfiguration) SetId(v string) *MetricsConfiguration {
17486 type MetricsFilter struct {
17487 _ struct{} `type:"structure"`
17489 // A conjunction (logical AND) of predicates, which is used in evaluating a
17490 // metrics filter. The operator must have at least two predicates, and an object
17491 // must match all of the predicates in order for the filter to apply.
17492 And *MetricsAndOperator `type:"structure"`
17494 // The prefix used when evaluating a metrics filter.
17495 Prefix *string `type:"string"`
17497 // The tag used when evaluating a metrics filter.
17498 Tag *Tag `type:"structure"`
17501 // String returns the string representation
17502 func (s MetricsFilter) String() string {
17503 return awsutil.Prettify(s)
17506 // GoString returns the string representation
17507 func (s MetricsFilter) GoString() string {
17511 // Validate inspects the fields of the type to determine if they are valid.
17512 func (s *MetricsFilter) Validate() error {
17513 invalidParams := request.ErrInvalidParams{Context: "MetricsFilter"}
17515 if err := s.And.Validate(); err != nil {
17516 invalidParams.AddNested("And", err.(request.ErrInvalidParams))
17520 if err := s.Tag.Validate(); err != nil {
17521 invalidParams.AddNested("Tag", err.(request.ErrInvalidParams))
17525 if invalidParams.Len() > 0 {
17526 return invalidParams
17531 // SetAnd sets the And field's value.
17532 func (s *MetricsFilter) SetAnd(v *MetricsAndOperator) *MetricsFilter {
17537 // SetPrefix sets the Prefix field's value.
17538 func (s *MetricsFilter) SetPrefix(v string) *MetricsFilter {
17543 // SetTag sets the Tag field's value.
17544 func (s *MetricsFilter) SetTag(v *Tag) *MetricsFilter {
17549 type MultipartUpload struct {
17550 _ struct{} `type:"structure"`
17552 // Date and time at which the multipart upload was initiated.
17553 Initiated *time.Time `type:"timestamp"`
17555 // Identifies who initiated the multipart upload.
17556 Initiator *Initiator `type:"structure"`
17558 // Key of the object for which the multipart upload was initiated.
17559 Key *string `min:"1" type:"string"`
17561 Owner *Owner `type:"structure"`
17563 // The class of storage used to store the object.
17564 StorageClass *string `type:"string" enum:"StorageClass"`
17566 // Upload ID that identifies the multipart upload.
17567 UploadId *string `type:"string"`
17570 // String returns the string representation
17571 func (s MultipartUpload) String() string {
17572 return awsutil.Prettify(s)
17575 // GoString returns the string representation
17576 func (s MultipartUpload) GoString() string {
17580 // SetInitiated sets the Initiated field's value.
17581 func (s *MultipartUpload) SetInitiated(v time.Time) *MultipartUpload {
17586 // SetInitiator sets the Initiator field's value.
17587 func (s *MultipartUpload) SetInitiator(v *Initiator) *MultipartUpload {
17592 // SetKey sets the Key field's value.
17593 func (s *MultipartUpload) SetKey(v string) *MultipartUpload {
17598 // SetOwner sets the Owner field's value.
17599 func (s *MultipartUpload) SetOwner(v *Owner) *MultipartUpload {
17604 // SetStorageClass sets the StorageClass field's value.
17605 func (s *MultipartUpload) SetStorageClass(v string) *MultipartUpload {
17606 s.StorageClass = &v
17610 // SetUploadId sets the UploadId field's value.
17611 func (s *MultipartUpload) SetUploadId(v string) *MultipartUpload {
17616 // Specifies when noncurrent object versions expire. Upon expiration, Amazon
17617 // S3 permanently deletes the noncurrent object versions. You set this lifecycle
17618 // configuration action on a bucket that has versioning enabled (or suspended)
17619 // to request that Amazon S3 delete noncurrent object versions at a specific
17620 // period in the object's lifetime.
17621 type NoncurrentVersionExpiration struct {
17622 _ struct{} `type:"structure"`
17624 // Specifies the number of days an object is noncurrent before Amazon S3 can
17625 // perform the associated action. For information about the noncurrent days
17626 // calculations, see How Amazon S3 Calculates When an Object Became Noncurrent
17627 // (https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html)
17628 // in the Amazon Simple Storage Service Developer Guide.
17629 NoncurrentDays *int64 `type:"integer"`
17632 // String returns the string representation
17633 func (s NoncurrentVersionExpiration) String() string {
17634 return awsutil.Prettify(s)
17637 // GoString returns the string representation
17638 func (s NoncurrentVersionExpiration) GoString() string {
17642 // SetNoncurrentDays sets the NoncurrentDays field's value.
17643 func (s *NoncurrentVersionExpiration) SetNoncurrentDays(v int64) *NoncurrentVersionExpiration {
17644 s.NoncurrentDays = &v
17648 // Container for the transition rule that describes when noncurrent objects
17649 // transition to the STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER or
17650 // DEEP_ARCHIVE storage class. If your bucket is versioning-enabled (or versioning
17651 // is suspended), you can set this action to request that Amazon S3 transition
17652 // noncurrent object versions to the STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING,
17653 // GLACIER or DEEP_ARCHIVE storage class at a specific period in the object's
17655 type NoncurrentVersionTransition struct {
17656 _ struct{} `type:"structure"`
17658 // Specifies the number of days an object is noncurrent before Amazon S3 can
17659 // perform the associated action. For information about the noncurrent days
17660 // calculations, see How Amazon S3 Calculates When an Object Became Noncurrent
17661 // (https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html)
17662 // in the Amazon Simple Storage Service Developer Guide.
17663 NoncurrentDays *int64 `type:"integer"`
17665 // The class of storage used to store the object.
17666 StorageClass *string `type:"string" enum:"TransitionStorageClass"`
17669 // String returns the string representation
17670 func (s NoncurrentVersionTransition) String() string {
17671 return awsutil.Prettify(s)
17674 // GoString returns the string representation
17675 func (s NoncurrentVersionTransition) GoString() string {
17679 // SetNoncurrentDays sets the NoncurrentDays field's value.
17680 func (s *NoncurrentVersionTransition) SetNoncurrentDays(v int64) *NoncurrentVersionTransition {
17681 s.NoncurrentDays = &v
17685 // SetStorageClass sets the StorageClass field's value.
17686 func (s *NoncurrentVersionTransition) SetStorageClass(v string) *NoncurrentVersionTransition {
17687 s.StorageClass = &v
17691 // A container for specifying the notification configuration of the bucket.
17692 // If this element is empty, notifications are turned off for the bucket.
17693 type NotificationConfiguration struct {
17694 _ struct{} `type:"structure"`
17696 LambdaFunctionConfigurations []*LambdaFunctionConfiguration `locationName:"CloudFunctionConfiguration" type:"list" flattened:"true"`
17698 QueueConfigurations []*QueueConfiguration `locationName:"QueueConfiguration" type:"list" flattened:"true"`
17700 TopicConfigurations []*TopicConfiguration `locationName:"TopicConfiguration" type:"list" flattened:"true"`
17703 // String returns the string representation
17704 func (s NotificationConfiguration) String() string {
17705 return awsutil.Prettify(s)
17708 // GoString returns the string representation
17709 func (s NotificationConfiguration) GoString() string {
17713 // Validate inspects the fields of the type to determine if they are valid.
17714 func (s *NotificationConfiguration) Validate() error {
17715 invalidParams := request.ErrInvalidParams{Context: "NotificationConfiguration"}
17716 if s.LambdaFunctionConfigurations != nil {
17717 for i, v := range s.LambdaFunctionConfigurations {
17721 if err := v.Validate(); err != nil {
17722 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "LambdaFunctionConfigurations", i), err.(request.ErrInvalidParams))
17726 if s.QueueConfigurations != nil {
17727 for i, v := range s.QueueConfigurations {
17731 if err := v.Validate(); err != nil {
17732 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "QueueConfigurations", i), err.(request.ErrInvalidParams))
17736 if s.TopicConfigurations != nil {
17737 for i, v := range s.TopicConfigurations {
17741 if err := v.Validate(); err != nil {
17742 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "TopicConfigurations", i), err.(request.ErrInvalidParams))
17747 if invalidParams.Len() > 0 {
17748 return invalidParams
17753 // SetLambdaFunctionConfigurations sets the LambdaFunctionConfigurations field's value.
17754 func (s *NotificationConfiguration) SetLambdaFunctionConfigurations(v []*LambdaFunctionConfiguration) *NotificationConfiguration {
17755 s.LambdaFunctionConfigurations = v
17759 // SetQueueConfigurations sets the QueueConfigurations field's value.
17760 func (s *NotificationConfiguration) SetQueueConfigurations(v []*QueueConfiguration) *NotificationConfiguration {
17761 s.QueueConfigurations = v
17765 // SetTopicConfigurations sets the TopicConfigurations field's value.
17766 func (s *NotificationConfiguration) SetTopicConfigurations(v []*TopicConfiguration) *NotificationConfiguration {
17767 s.TopicConfigurations = v
17771 type NotificationConfigurationDeprecated struct {
17772 _ struct{} `type:"structure"`
17774 CloudFunctionConfiguration *CloudFunctionConfiguration `type:"structure"`
17776 QueueConfiguration *QueueConfigurationDeprecated `type:"structure"`
17778 TopicConfiguration *TopicConfigurationDeprecated `type:"structure"`
17781 // String returns the string representation
17782 func (s NotificationConfigurationDeprecated) String() string {
17783 return awsutil.Prettify(s)
17786 // GoString returns the string representation
17787 func (s NotificationConfigurationDeprecated) GoString() string {
17791 // SetCloudFunctionConfiguration sets the CloudFunctionConfiguration field's value.
17792 func (s *NotificationConfigurationDeprecated) SetCloudFunctionConfiguration(v *CloudFunctionConfiguration) *NotificationConfigurationDeprecated {
17793 s.CloudFunctionConfiguration = v
17797 // SetQueueConfiguration sets the QueueConfiguration field's value.
17798 func (s *NotificationConfigurationDeprecated) SetQueueConfiguration(v *QueueConfigurationDeprecated) *NotificationConfigurationDeprecated {
17799 s.QueueConfiguration = v
17803 // SetTopicConfiguration sets the TopicConfiguration field's value.
17804 func (s *NotificationConfigurationDeprecated) SetTopicConfiguration(v *TopicConfigurationDeprecated) *NotificationConfigurationDeprecated {
17805 s.TopicConfiguration = v
17809 // A container for object key name filtering rules. For information about key
17810 // name filtering, see Configuring Event Notifications (https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html)
17811 // in the Amazon Simple Storage Service Developer Guide.
17812 type NotificationConfigurationFilter struct {
17813 _ struct{} `type:"structure"`
17815 // A container for object key name prefix and suffix filtering rules.
17816 Key *KeyFilter `locationName:"S3Key" type:"structure"`
17819 // String returns the string representation
17820 func (s NotificationConfigurationFilter) String() string {
17821 return awsutil.Prettify(s)
17824 // GoString returns the string representation
17825 func (s NotificationConfigurationFilter) GoString() string {
17829 // SetKey sets the Key field's value.
17830 func (s *NotificationConfigurationFilter) SetKey(v *KeyFilter) *NotificationConfigurationFilter {
17835 type Object struct {
17836 _ struct{} `type:"structure"`
17838 ETag *string `type:"string"`
17840 Key *string `min:"1" type:"string"`
17842 LastModified *time.Time `type:"timestamp"`
17844 Owner *Owner `type:"structure"`
17846 Size *int64 `type:"integer"`
17848 // The class of storage used to store the object.
17849 StorageClass *string `type:"string" enum:"ObjectStorageClass"`
17852 // String returns the string representation
17853 func (s Object) String() string {
17854 return awsutil.Prettify(s)
17857 // GoString returns the string representation
17858 func (s Object) GoString() string {
17862 // SetETag sets the ETag field's value.
17863 func (s *Object) SetETag(v string) *Object {
17868 // SetKey sets the Key field's value.
17869 func (s *Object) SetKey(v string) *Object {
17874 // SetLastModified sets the LastModified field's value.
17875 func (s *Object) SetLastModified(v time.Time) *Object {
17876 s.LastModified = &v
17880 // SetOwner sets the Owner field's value.
17881 func (s *Object) SetOwner(v *Owner) *Object {
17886 // SetSize sets the Size field's value.
17887 func (s *Object) SetSize(v int64) *Object {
17892 // SetStorageClass sets the StorageClass field's value.
17893 func (s *Object) SetStorageClass(v string) *Object {
17894 s.StorageClass = &v
17898 type ObjectIdentifier struct {
17899 _ struct{} `type:"structure"`
17901 // Key name of the object to delete.
17903 // Key is a required field
17904 Key *string `min:"1" type:"string" required:"true"`
17906 // VersionId for the specific version of the object to delete.
17907 VersionId *string `type:"string"`
17910 // String returns the string representation
17911 func (s ObjectIdentifier) String() string {
17912 return awsutil.Prettify(s)
17915 // GoString returns the string representation
17916 func (s ObjectIdentifier) GoString() string {
17920 // Validate inspects the fields of the type to determine if they are valid.
17921 func (s *ObjectIdentifier) Validate() error {
17922 invalidParams := request.ErrInvalidParams{Context: "ObjectIdentifier"}
17924 invalidParams.Add(request.NewErrParamRequired("Key"))
17926 if s.Key != nil && len(*s.Key) < 1 {
17927 invalidParams.Add(request.NewErrParamMinLen("Key", 1))
17930 if invalidParams.Len() > 0 {
17931 return invalidParams
17936 // SetKey sets the Key field's value.
17937 func (s *ObjectIdentifier) SetKey(v string) *ObjectIdentifier {
17942 // SetVersionId sets the VersionId field's value.
17943 func (s *ObjectIdentifier) SetVersionId(v string) *ObjectIdentifier {
17948 // The container element for Object Lock configuration parameters.
17949 type ObjectLockConfiguration struct {
17950 _ struct{} `type:"structure"`
17952 // Indicates whether this bucket has an Object Lock configuration enabled.
17953 ObjectLockEnabled *string `type:"string" enum:"ObjectLockEnabled"`
17955 // The Object Lock rule in place for the specified object.
17956 Rule *ObjectLockRule `type:"structure"`
17959 // String returns the string representation
17960 func (s ObjectLockConfiguration) String() string {
17961 return awsutil.Prettify(s)
17964 // GoString returns the string representation
17965 func (s ObjectLockConfiguration) GoString() string {
17969 // SetObjectLockEnabled sets the ObjectLockEnabled field's value.
17970 func (s *ObjectLockConfiguration) SetObjectLockEnabled(v string) *ObjectLockConfiguration {
17971 s.ObjectLockEnabled = &v
17975 // SetRule sets the Rule field's value.
17976 func (s *ObjectLockConfiguration) SetRule(v *ObjectLockRule) *ObjectLockConfiguration {
17981 // A Legal Hold configuration for an object.
17982 type ObjectLockLegalHold struct {
17983 _ struct{} `type:"structure"`
17985 // Indicates whether the specified object has a Legal Hold in place.
17986 Status *string `type:"string" enum:"ObjectLockLegalHoldStatus"`
17989 // String returns the string representation
17990 func (s ObjectLockLegalHold) String() string {
17991 return awsutil.Prettify(s)
17994 // GoString returns the string representation
17995 func (s ObjectLockLegalHold) GoString() string {
17999 // SetStatus sets the Status field's value.
18000 func (s *ObjectLockLegalHold) SetStatus(v string) *ObjectLockLegalHold {
18005 // A Retention configuration for an object.
18006 type ObjectLockRetention struct {
18007 _ struct{} `type:"structure"`
18009 // Indicates the Retention mode for the specified object.
18010 Mode *string `type:"string" enum:"ObjectLockRetentionMode"`
18012 // The date on which this Object Lock Retention will expire.
18013 RetainUntilDate *time.Time `type:"timestamp" timestampFormat:"iso8601"`
18016 // String returns the string representation
18017 func (s ObjectLockRetention) String() string {
18018 return awsutil.Prettify(s)
18021 // GoString returns the string representation
18022 func (s ObjectLockRetention) GoString() string {
18026 // SetMode sets the Mode field's value.
18027 func (s *ObjectLockRetention) SetMode(v string) *ObjectLockRetention {
18032 // SetRetainUntilDate sets the RetainUntilDate field's value.
18033 func (s *ObjectLockRetention) SetRetainUntilDate(v time.Time) *ObjectLockRetention {
18034 s.RetainUntilDate = &v
18038 // The container element for an Object Lock rule.
18039 type ObjectLockRule struct {
18040 _ struct{} `type:"structure"`
18042 // The default retention period that you want to apply to new objects placed
18043 // in the specified bucket.
18044 DefaultRetention *DefaultRetention `type:"structure"`
18047 // String returns the string representation
18048 func (s ObjectLockRule) String() string {
18049 return awsutil.Prettify(s)
18052 // GoString returns the string representation
18053 func (s ObjectLockRule) GoString() string {
18057 // SetDefaultRetention sets the DefaultRetention field's value.
18058 func (s *ObjectLockRule) SetDefaultRetention(v *DefaultRetention) *ObjectLockRule {
18059 s.DefaultRetention = v
18063 type ObjectVersion struct {
18064 _ struct{} `type:"structure"`
18066 ETag *string `type:"string"`
18068 // Specifies whether the object is (true) or is not (false) the latest version
18070 IsLatest *bool `type:"boolean"`
18073 Key *string `min:"1" type:"string"`
18075 // Date and time the object was last modified.
18076 LastModified *time.Time `type:"timestamp"`
18078 Owner *Owner `type:"structure"`
18080 // Size in bytes of the object.
18081 Size *int64 `type:"integer"`
18083 // The class of storage used to store the object.
18084 StorageClass *string `type:"string" enum:"ObjectVersionStorageClass"`
18086 // Version ID of an object.
18087 VersionId *string `type:"string"`
18090 // String returns the string representation
18091 func (s ObjectVersion) String() string {
18092 return awsutil.Prettify(s)
18095 // GoString returns the string representation
18096 func (s ObjectVersion) GoString() string {
18100 // SetETag sets the ETag field's value.
18101 func (s *ObjectVersion) SetETag(v string) *ObjectVersion {
18106 // SetIsLatest sets the IsLatest field's value.
18107 func (s *ObjectVersion) SetIsLatest(v bool) *ObjectVersion {
18112 // SetKey sets the Key field's value.
18113 func (s *ObjectVersion) SetKey(v string) *ObjectVersion {
18118 // SetLastModified sets the LastModified field's value.
18119 func (s *ObjectVersion) SetLastModified(v time.Time) *ObjectVersion {
18120 s.LastModified = &v
18124 // SetOwner sets the Owner field's value.
18125 func (s *ObjectVersion) SetOwner(v *Owner) *ObjectVersion {
18130 // SetSize sets the Size field's value.
18131 func (s *ObjectVersion) SetSize(v int64) *ObjectVersion {
18136 // SetStorageClass sets the StorageClass field's value.
18137 func (s *ObjectVersion) SetStorageClass(v string) *ObjectVersion {
18138 s.StorageClass = &v
18142 // SetVersionId sets the VersionId field's value.
18143 func (s *ObjectVersion) SetVersionId(v string) *ObjectVersion {
18148 // Describes the location where the restore job's output is stored.
18149 type OutputLocation struct {
18150 _ struct{} `type:"structure"`
18152 // Describes an S3 location that will receive the results of the restore request.
18153 S3 *Location `type:"structure"`
18156 // String returns the string representation
18157 func (s OutputLocation) String() string {
18158 return awsutil.Prettify(s)
18161 // GoString returns the string representation
18162 func (s OutputLocation) GoString() string {
18166 // Validate inspects the fields of the type to determine if they are valid.
18167 func (s *OutputLocation) Validate() error {
18168 invalidParams := request.ErrInvalidParams{Context: "OutputLocation"}
18170 if err := s.S3.Validate(); err != nil {
18171 invalidParams.AddNested("S3", err.(request.ErrInvalidParams))
18175 if invalidParams.Len() > 0 {
18176 return invalidParams
18181 // SetS3 sets the S3 field's value.
18182 func (s *OutputLocation) SetS3(v *Location) *OutputLocation {
18187 // Describes how results of the Select job are serialized.
18188 type OutputSerialization struct {
18189 _ struct{} `type:"structure"`
18191 // Describes the serialization of CSV-encoded Select results.
18192 CSV *CSVOutput `type:"structure"`
18194 // Specifies JSON as request's output serialization format.
18195 JSON *JSONOutput `type:"structure"`
18198 // String returns the string representation
18199 func (s OutputSerialization) String() string {
18200 return awsutil.Prettify(s)
18203 // GoString returns the string representation
18204 func (s OutputSerialization) GoString() string {
18208 // SetCSV sets the CSV field's value.
18209 func (s *OutputSerialization) SetCSV(v *CSVOutput) *OutputSerialization {
18214 // SetJSON sets the JSON field's value.
18215 func (s *OutputSerialization) SetJSON(v *JSONOutput) *OutputSerialization {
18220 type Owner struct {
18221 _ struct{} `type:"structure"`
18223 DisplayName *string `type:"string"`
18225 ID *string `type:"string"`
18228 // String returns the string representation
18229 func (s Owner) String() string {
18230 return awsutil.Prettify(s)
18233 // GoString returns the string representation
18234 func (s Owner) GoString() string {
18238 // SetDisplayName sets the DisplayName field's value.
18239 func (s *Owner) SetDisplayName(v string) *Owner {
18244 // SetID sets the ID field's value.
18245 func (s *Owner) SetID(v string) *Owner {
18250 type ParquetInput struct {
18251 _ struct{} `type:"structure"`
18254 // String returns the string representation
18255 func (s ParquetInput) String() string {
18256 return awsutil.Prettify(s)
18259 // GoString returns the string representation
18260 func (s ParquetInput) GoString() string {
18265 _ struct{} `type:"structure"`
18267 // Entity tag returned when the part was uploaded.
18268 ETag *string `type:"string"`
18270 // Date and time at which the part was uploaded.
18271 LastModified *time.Time `type:"timestamp"`
18273 // Part number identifying the part. This is a positive integer between 1 and
18275 PartNumber *int64 `type:"integer"`
18277 // Size in bytes of the uploaded part data.
18278 Size *int64 `type:"integer"`
18281 // String returns the string representation
18282 func (s Part) String() string {
18283 return awsutil.Prettify(s)
18286 // GoString returns the string representation
18287 func (s Part) GoString() string {
18291 // SetETag sets the ETag field's value.
18292 func (s *Part) SetETag(v string) *Part {
18297 // SetLastModified sets the LastModified field's value.
18298 func (s *Part) SetLastModified(v time.Time) *Part {
18299 s.LastModified = &v
18303 // SetPartNumber sets the PartNumber field's value.
18304 func (s *Part) SetPartNumber(v int64) *Part {
18309 // SetSize sets the Size field's value.
18310 func (s *Part) SetSize(v int64) *Part {
18315 // The container element for a bucket's policy status.
18316 type PolicyStatus struct {
18317 _ struct{} `type:"structure"`
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"`
18324 // String returns the string representation
18325 func (s PolicyStatus) String() string {
18326 return awsutil.Prettify(s)
18329 // GoString returns the string representation
18330 func (s PolicyStatus) GoString() string {
18334 // SetIsPublic sets the IsPublic field's value.
18335 func (s *PolicyStatus) SetIsPublic(v bool) *PolicyStatus {
18340 type Progress struct {
18341 _ struct{} `type:"structure"`
18343 // The current number of uncompressed object bytes processed.
18344 BytesProcessed *int64 `type:"long"`
18346 // The current number of bytes of records payload data returned.
18347 BytesReturned *int64 `type:"long"`
18349 // The current number of object bytes scanned.
18350 BytesScanned *int64 `type:"long"`
18353 // String returns the string representation
18354 func (s Progress) String() string {
18355 return awsutil.Prettify(s)
18358 // GoString returns the string representation
18359 func (s Progress) GoString() string {
18363 // SetBytesProcessed sets the BytesProcessed field's value.
18364 func (s *Progress) SetBytesProcessed(v int64) *Progress {
18365 s.BytesProcessed = &v
18369 // SetBytesReturned sets the BytesReturned field's value.
18370 func (s *Progress) SetBytesReturned(v int64) *Progress {
18371 s.BytesReturned = &v
18375 // SetBytesScanned sets the BytesScanned field's value.
18376 func (s *Progress) SetBytesScanned(v int64) *Progress {
18377 s.BytesScanned = &v
18381 type ProgressEvent struct {
18382 _ struct{} `locationName:"ProgressEvent" type:"structure" payload:"Details"`
18384 // The Progress event details.
18385 Details *Progress `locationName:"Details" type:"structure"`
18388 // String returns the string representation
18389 func (s ProgressEvent) String() string {
18390 return awsutil.Prettify(s)
18393 // GoString returns the string representation
18394 func (s ProgressEvent) GoString() string {
18398 // SetDetails sets the Details field's value.
18399 func (s *ProgressEvent) SetDetails(v *Progress) *ProgressEvent {
18404 // The ProgressEvent is and event in the SelectObjectContentEventStream group of events.
18405 func (s *ProgressEvent) eventSelectObjectContentEventStream() {}
18407 // UnmarshalEvent unmarshals the EventStream Message into the ProgressEvent value.
18408 // This method is only used internally within the SDK's EventStream handling.
18409 func (s *ProgressEvent) UnmarshalEvent(
18410 payloadUnmarshaler protocol.PayloadUnmarshaler,
18411 msg eventstream.Message,
18413 if err := payloadUnmarshaler.UnmarshalPayload(
18414 bytes.NewReader(msg.Payload), s,
18421 type PublicAccessBlockConfiguration struct {
18422 _ struct{} `type:"structure"`
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:
18428 // * PUT Bucket acl and PUT Object acl calls fail if the specified ACL is
18431 // * PUT Object calls fail if the request includes a public ACL.
18433 // Enabling this setting doesn't affect existing policies or ACLs.
18434 BlockPublicAcls *bool `locationName:"BlockPublicAcls" type:"boolean"`
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.
18440 // Enabling this setting doesn't affect existing bucket policies.
18441 BlockPublicPolicy *bool `locationName:"BlockPublicPolicy" type:"boolean"`
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.
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"`
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
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"`
18462 // String returns the string representation
18463 func (s PublicAccessBlockConfiguration) String() string {
18464 return awsutil.Prettify(s)
18467 // GoString returns the string representation
18468 func (s PublicAccessBlockConfiguration) GoString() string {
18472 // SetBlockPublicAcls sets the BlockPublicAcls field's value.
18473 func (s *PublicAccessBlockConfiguration) SetBlockPublicAcls(v bool) *PublicAccessBlockConfiguration {
18474 s.BlockPublicAcls = &v
18478 // SetBlockPublicPolicy sets the BlockPublicPolicy field's value.
18479 func (s *PublicAccessBlockConfiguration) SetBlockPublicPolicy(v bool) *PublicAccessBlockConfiguration {
18480 s.BlockPublicPolicy = &v
18484 // SetIgnorePublicAcls sets the IgnorePublicAcls field's value.
18485 func (s *PublicAccessBlockConfiguration) SetIgnorePublicAcls(v bool) *PublicAccessBlockConfiguration {
18486 s.IgnorePublicAcls = &v
18490 // SetRestrictPublicBuckets sets the RestrictPublicBuckets field's value.
18491 func (s *PublicAccessBlockConfiguration) SetRestrictPublicBuckets(v bool) *PublicAccessBlockConfiguration {
18492 s.RestrictPublicBuckets = &v
18496 type PutBucketAccelerateConfigurationInput struct {
18497 _ struct{} `type:"structure" payload:"AccelerateConfiguration"`
18499 // Specifies the Accelerate Configuration you want to set for the bucket.
18501 // AccelerateConfiguration is a required field
18502 AccelerateConfiguration *AccelerateConfiguration `locationName:"AccelerateConfiguration" type:"structure" required:"true" xmlURI:"http://s3.amazonaws.com/doc/2006-03-01/"`
18504 // Name of the bucket for which the accelerate configuration is set.
18506 // Bucket is a required field
18507 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
18510 // String returns the string representation
18511 func (s PutBucketAccelerateConfigurationInput) String() string {
18512 return awsutil.Prettify(s)
18515 // GoString returns the string representation
18516 func (s PutBucketAccelerateConfigurationInput) GoString() string {
18520 // Validate inspects the fields of the type to determine if they are valid.
18521 func (s *PutBucketAccelerateConfigurationInput) Validate() error {
18522 invalidParams := request.ErrInvalidParams{Context: "PutBucketAccelerateConfigurationInput"}
18523 if s.AccelerateConfiguration == nil {
18524 invalidParams.Add(request.NewErrParamRequired("AccelerateConfiguration"))
18526 if s.Bucket == nil {
18527 invalidParams.Add(request.NewErrParamRequired("Bucket"))
18529 if s.Bucket != nil && len(*s.Bucket) < 1 {
18530 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
18533 if invalidParams.Len() > 0 {
18534 return invalidParams
18539 // SetAccelerateConfiguration sets the AccelerateConfiguration field's value.
18540 func (s *PutBucketAccelerateConfigurationInput) SetAccelerateConfiguration(v *AccelerateConfiguration) *PutBucketAccelerateConfigurationInput {
18541 s.AccelerateConfiguration = v
18545 // SetBucket sets the Bucket field's value.
18546 func (s *PutBucketAccelerateConfigurationInput) SetBucket(v string) *PutBucketAccelerateConfigurationInput {
18551 func (s *PutBucketAccelerateConfigurationInput) getBucket() (v string) {
18552 if s.Bucket == nil {
18558 type PutBucketAccelerateConfigurationOutput struct {
18559 _ struct{} `type:"structure"`
18562 // String returns the string representation
18563 func (s PutBucketAccelerateConfigurationOutput) String() string {
18564 return awsutil.Prettify(s)
18567 // GoString returns the string representation
18568 func (s PutBucketAccelerateConfigurationOutput) GoString() string {
18572 type PutBucketAclInput struct {
18573 _ struct{} `type:"structure" payload:"AccessControlPolicy"`
18575 // The canned ACL to apply to the bucket.
18576 ACL *string `location:"header" locationName:"x-amz-acl" type:"string" enum:"BucketCannedACL"`
18578 AccessControlPolicy *AccessControlPolicy `locationName:"AccessControlPolicy" type:"structure" xmlURI:"http://s3.amazonaws.com/doc/2006-03-01/"`
18580 // Bucket is a required field
18581 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
18583 // Allows grantee the read, write, read ACP, and write ACP permissions on the
18585 GrantFullControl *string `location:"header" locationName:"x-amz-grant-full-control" type:"string"`
18587 // Allows grantee to list the objects in the bucket.
18588 GrantRead *string `location:"header" locationName:"x-amz-grant-read" type:"string"`
18590 // Allows grantee to read the bucket ACL.
18591 GrantReadACP *string `location:"header" locationName:"x-amz-grant-read-acp" type:"string"`
18593 // Allows grantee to create, overwrite, and delete any object in the bucket.
18594 GrantWrite *string `location:"header" locationName:"x-amz-grant-write" type:"string"`
18596 // Allows grantee to write the ACL for the applicable bucket.
18597 GrantWriteACP *string `location:"header" locationName:"x-amz-grant-write-acp" type:"string"`
18600 // String returns the string representation
18601 func (s PutBucketAclInput) String() string {
18602 return awsutil.Prettify(s)
18605 // GoString returns the string representation
18606 func (s PutBucketAclInput) GoString() string {
18610 // Validate inspects the fields of the type to determine if they are valid.
18611 func (s *PutBucketAclInput) Validate() error {
18612 invalidParams := request.ErrInvalidParams{Context: "PutBucketAclInput"}
18613 if s.Bucket == nil {
18614 invalidParams.Add(request.NewErrParamRequired("Bucket"))
18616 if s.Bucket != nil && len(*s.Bucket) < 1 {
18617 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
18619 if s.AccessControlPolicy != nil {
18620 if err := s.AccessControlPolicy.Validate(); err != nil {
18621 invalidParams.AddNested("AccessControlPolicy", err.(request.ErrInvalidParams))
18625 if invalidParams.Len() > 0 {
18626 return invalidParams
18631 // SetACL sets the ACL field's value.
18632 func (s *PutBucketAclInput) SetACL(v string) *PutBucketAclInput {
18637 // SetAccessControlPolicy sets the AccessControlPolicy field's value.
18638 func (s *PutBucketAclInput) SetAccessControlPolicy(v *AccessControlPolicy) *PutBucketAclInput {
18639 s.AccessControlPolicy = v
18643 // SetBucket sets the Bucket field's value.
18644 func (s *PutBucketAclInput) SetBucket(v string) *PutBucketAclInput {
18649 func (s *PutBucketAclInput) getBucket() (v string) {
18650 if s.Bucket == nil {
18656 // SetGrantFullControl sets the GrantFullControl field's value.
18657 func (s *PutBucketAclInput) SetGrantFullControl(v string) *PutBucketAclInput {
18658 s.GrantFullControl = &v
18662 // SetGrantRead sets the GrantRead field's value.
18663 func (s *PutBucketAclInput) SetGrantRead(v string) *PutBucketAclInput {
18668 // SetGrantReadACP sets the GrantReadACP field's value.
18669 func (s *PutBucketAclInput) SetGrantReadACP(v string) *PutBucketAclInput {
18670 s.GrantReadACP = &v
18674 // SetGrantWrite sets the GrantWrite field's value.
18675 func (s *PutBucketAclInput) SetGrantWrite(v string) *PutBucketAclInput {
18680 // SetGrantWriteACP sets the GrantWriteACP field's value.
18681 func (s *PutBucketAclInput) SetGrantWriteACP(v string) *PutBucketAclInput {
18682 s.GrantWriteACP = &v
18686 type PutBucketAclOutput struct {
18687 _ struct{} `type:"structure"`
18690 // String returns the string representation
18691 func (s PutBucketAclOutput) String() string {
18692 return awsutil.Prettify(s)
18695 // GoString returns the string representation
18696 func (s PutBucketAclOutput) GoString() string {
18700 type PutBucketAnalyticsConfigurationInput struct {
18701 _ struct{} `type:"structure" payload:"AnalyticsConfiguration"`
18703 // The configuration and any analyses for the analytics filter.
18705 // AnalyticsConfiguration is a required field
18706 AnalyticsConfiguration *AnalyticsConfiguration `locationName:"AnalyticsConfiguration" type:"structure" required:"true" xmlURI:"http://s3.amazonaws.com/doc/2006-03-01/"`
18708 // The name of the bucket to which an analytics configuration is stored.
18710 // Bucket is a required field
18711 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
18713 // The identifier used to represent an analytics configuration.
18715 // Id is a required field
18716 Id *string `location:"querystring" locationName:"id" type:"string" required:"true"`
18719 // String returns the string representation
18720 func (s PutBucketAnalyticsConfigurationInput) String() string {
18721 return awsutil.Prettify(s)
18724 // GoString returns the string representation
18725 func (s PutBucketAnalyticsConfigurationInput) GoString() string {
18729 // Validate inspects the fields of the type to determine if they are valid.
18730 func (s *PutBucketAnalyticsConfigurationInput) Validate() error {
18731 invalidParams := request.ErrInvalidParams{Context: "PutBucketAnalyticsConfigurationInput"}
18732 if s.AnalyticsConfiguration == nil {
18733 invalidParams.Add(request.NewErrParamRequired("AnalyticsConfiguration"))
18735 if s.Bucket == nil {
18736 invalidParams.Add(request.NewErrParamRequired("Bucket"))
18738 if s.Bucket != nil && len(*s.Bucket) < 1 {
18739 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
18742 invalidParams.Add(request.NewErrParamRequired("Id"))
18744 if s.AnalyticsConfiguration != nil {
18745 if err := s.AnalyticsConfiguration.Validate(); err != nil {
18746 invalidParams.AddNested("AnalyticsConfiguration", err.(request.ErrInvalidParams))
18750 if invalidParams.Len() > 0 {
18751 return invalidParams
18756 // SetAnalyticsConfiguration sets the AnalyticsConfiguration field's value.
18757 func (s *PutBucketAnalyticsConfigurationInput) SetAnalyticsConfiguration(v *AnalyticsConfiguration) *PutBucketAnalyticsConfigurationInput {
18758 s.AnalyticsConfiguration = v
18762 // SetBucket sets the Bucket field's value.
18763 func (s *PutBucketAnalyticsConfigurationInput) SetBucket(v string) *PutBucketAnalyticsConfigurationInput {
18768 func (s *PutBucketAnalyticsConfigurationInput) getBucket() (v string) {
18769 if s.Bucket == nil {
18775 // SetId sets the Id field's value.
18776 func (s *PutBucketAnalyticsConfigurationInput) SetId(v string) *PutBucketAnalyticsConfigurationInput {
18781 type PutBucketAnalyticsConfigurationOutput struct {
18782 _ struct{} `type:"structure"`
18785 // String returns the string representation
18786 func (s PutBucketAnalyticsConfigurationOutput) String() string {
18787 return awsutil.Prettify(s)
18790 // GoString returns the string representation
18791 func (s PutBucketAnalyticsConfigurationOutput) GoString() string {
18795 type PutBucketCorsInput struct {
18796 _ struct{} `type:"structure" payload:"CORSConfiguration"`
18798 // Bucket is a required field
18799 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
18801 // CORSConfiguration is a required field
18802 CORSConfiguration *CORSConfiguration `locationName:"CORSConfiguration" type:"structure" required:"true" xmlURI:"http://s3.amazonaws.com/doc/2006-03-01/"`
18805 // String returns the string representation
18806 func (s PutBucketCorsInput) String() string {
18807 return awsutil.Prettify(s)
18810 // GoString returns the string representation
18811 func (s PutBucketCorsInput) GoString() string {
18815 // Validate inspects the fields of the type to determine if they are valid.
18816 func (s *PutBucketCorsInput) Validate() error {
18817 invalidParams := request.ErrInvalidParams{Context: "PutBucketCorsInput"}
18818 if s.Bucket == nil {
18819 invalidParams.Add(request.NewErrParamRequired("Bucket"))
18821 if s.Bucket != nil && len(*s.Bucket) < 1 {
18822 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
18824 if s.CORSConfiguration == nil {
18825 invalidParams.Add(request.NewErrParamRequired("CORSConfiguration"))
18827 if s.CORSConfiguration != nil {
18828 if err := s.CORSConfiguration.Validate(); err != nil {
18829 invalidParams.AddNested("CORSConfiguration", err.(request.ErrInvalidParams))
18833 if invalidParams.Len() > 0 {
18834 return invalidParams
18839 // SetBucket sets the Bucket field's value.
18840 func (s *PutBucketCorsInput) SetBucket(v string) *PutBucketCorsInput {
18845 func (s *PutBucketCorsInput) getBucket() (v string) {
18846 if s.Bucket == nil {
18852 // SetCORSConfiguration sets the CORSConfiguration field's value.
18853 func (s *PutBucketCorsInput) SetCORSConfiguration(v *CORSConfiguration) *PutBucketCorsInput {
18854 s.CORSConfiguration = v
18858 type PutBucketCorsOutput struct {
18859 _ struct{} `type:"structure"`
18862 // String returns the string representation
18863 func (s PutBucketCorsOutput) String() string {
18864 return awsutil.Prettify(s)
18867 // GoString returns the string representation
18868 func (s PutBucketCorsOutput) GoString() string {
18872 type PutBucketEncryptionInput struct {
18873 _ struct{} `type:"structure" payload:"ServerSideEncryptionConfiguration"`
18875 // The name of the bucket for which the server-side encryption configuration
18878 // Bucket is a required field
18879 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
18881 // Container for server-side encryption configuration rules. Currently S3 supports
18884 // ServerSideEncryptionConfiguration is a required field
18885 ServerSideEncryptionConfiguration *ServerSideEncryptionConfiguration `locationName:"ServerSideEncryptionConfiguration" type:"structure" required:"true" xmlURI:"http://s3.amazonaws.com/doc/2006-03-01/"`
18888 // String returns the string representation
18889 func (s PutBucketEncryptionInput) String() string {
18890 return awsutil.Prettify(s)
18893 // GoString returns the string representation
18894 func (s PutBucketEncryptionInput) GoString() string {
18898 // Validate inspects the fields of the type to determine if they are valid.
18899 func (s *PutBucketEncryptionInput) Validate() error {
18900 invalidParams := request.ErrInvalidParams{Context: "PutBucketEncryptionInput"}
18901 if s.Bucket == nil {
18902 invalidParams.Add(request.NewErrParamRequired("Bucket"))
18904 if s.Bucket != nil && len(*s.Bucket) < 1 {
18905 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
18907 if s.ServerSideEncryptionConfiguration == nil {
18908 invalidParams.Add(request.NewErrParamRequired("ServerSideEncryptionConfiguration"))
18910 if s.ServerSideEncryptionConfiguration != nil {
18911 if err := s.ServerSideEncryptionConfiguration.Validate(); err != nil {
18912 invalidParams.AddNested("ServerSideEncryptionConfiguration", err.(request.ErrInvalidParams))
18916 if invalidParams.Len() > 0 {
18917 return invalidParams
18922 // SetBucket sets the Bucket field's value.
18923 func (s *PutBucketEncryptionInput) SetBucket(v string) *PutBucketEncryptionInput {
18928 func (s *PutBucketEncryptionInput) getBucket() (v string) {
18929 if s.Bucket == nil {
18935 // SetServerSideEncryptionConfiguration sets the ServerSideEncryptionConfiguration field's value.
18936 func (s *PutBucketEncryptionInput) SetServerSideEncryptionConfiguration(v *ServerSideEncryptionConfiguration) *PutBucketEncryptionInput {
18937 s.ServerSideEncryptionConfiguration = v
18941 type PutBucketEncryptionOutput struct {
18942 _ struct{} `type:"structure"`
18945 // String returns the string representation
18946 func (s PutBucketEncryptionOutput) String() string {
18947 return awsutil.Prettify(s)
18950 // GoString returns the string representation
18951 func (s PutBucketEncryptionOutput) GoString() string {
18955 type PutBucketInventoryConfigurationInput struct {
18956 _ struct{} `type:"structure" payload:"InventoryConfiguration"`
18958 // The name of the bucket where the inventory configuration will be stored.
18960 // Bucket is a required field
18961 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
18963 // The ID used to identify the inventory configuration.
18965 // Id is a required field
18966 Id *string `location:"querystring" locationName:"id" type:"string" required:"true"`
18968 // Specifies the inventory configuration.
18970 // InventoryConfiguration is a required field
18971 InventoryConfiguration *InventoryConfiguration `locationName:"InventoryConfiguration" type:"structure" required:"true" xmlURI:"http://s3.amazonaws.com/doc/2006-03-01/"`
18974 // String returns the string representation
18975 func (s PutBucketInventoryConfigurationInput) String() string {
18976 return awsutil.Prettify(s)
18979 // GoString returns the string representation
18980 func (s PutBucketInventoryConfigurationInput) GoString() string {
18984 // Validate inspects the fields of the type to determine if they are valid.
18985 func (s *PutBucketInventoryConfigurationInput) Validate() error {
18986 invalidParams := request.ErrInvalidParams{Context: "PutBucketInventoryConfigurationInput"}
18987 if s.Bucket == nil {
18988 invalidParams.Add(request.NewErrParamRequired("Bucket"))
18990 if s.Bucket != nil && len(*s.Bucket) < 1 {
18991 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
18994 invalidParams.Add(request.NewErrParamRequired("Id"))
18996 if s.InventoryConfiguration == nil {
18997 invalidParams.Add(request.NewErrParamRequired("InventoryConfiguration"))
18999 if s.InventoryConfiguration != nil {
19000 if err := s.InventoryConfiguration.Validate(); err != nil {
19001 invalidParams.AddNested("InventoryConfiguration", err.(request.ErrInvalidParams))
19005 if invalidParams.Len() > 0 {
19006 return invalidParams
19011 // SetBucket sets the Bucket field's value.
19012 func (s *PutBucketInventoryConfigurationInput) SetBucket(v string) *PutBucketInventoryConfigurationInput {
19017 func (s *PutBucketInventoryConfigurationInput) getBucket() (v string) {
19018 if s.Bucket == nil {
19024 // SetId sets the Id field's value.
19025 func (s *PutBucketInventoryConfigurationInput) SetId(v string) *PutBucketInventoryConfigurationInput {
19030 // SetInventoryConfiguration sets the InventoryConfiguration field's value.
19031 func (s *PutBucketInventoryConfigurationInput) SetInventoryConfiguration(v *InventoryConfiguration) *PutBucketInventoryConfigurationInput {
19032 s.InventoryConfiguration = v
19036 type PutBucketInventoryConfigurationOutput struct {
19037 _ struct{} `type:"structure"`
19040 // String returns the string representation
19041 func (s PutBucketInventoryConfigurationOutput) String() string {
19042 return awsutil.Prettify(s)
19045 // GoString returns the string representation
19046 func (s PutBucketInventoryConfigurationOutput) GoString() string {
19050 type PutBucketLifecycleConfigurationInput struct {
19051 _ struct{} `type:"structure" payload:"LifecycleConfiguration"`
19053 // Bucket is a required field
19054 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
19056 LifecycleConfiguration *BucketLifecycleConfiguration `locationName:"LifecycleConfiguration" type:"structure" xmlURI:"http://s3.amazonaws.com/doc/2006-03-01/"`
19059 // String returns the string representation
19060 func (s PutBucketLifecycleConfigurationInput) String() string {
19061 return awsutil.Prettify(s)
19064 // GoString returns the string representation
19065 func (s PutBucketLifecycleConfigurationInput) GoString() string {
19069 // Validate inspects the fields of the type to determine if they are valid.
19070 func (s *PutBucketLifecycleConfigurationInput) Validate() error {
19071 invalidParams := request.ErrInvalidParams{Context: "PutBucketLifecycleConfigurationInput"}
19072 if s.Bucket == nil {
19073 invalidParams.Add(request.NewErrParamRequired("Bucket"))
19075 if s.Bucket != nil && len(*s.Bucket) < 1 {
19076 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
19078 if s.LifecycleConfiguration != nil {
19079 if err := s.LifecycleConfiguration.Validate(); err != nil {
19080 invalidParams.AddNested("LifecycleConfiguration", err.(request.ErrInvalidParams))
19084 if invalidParams.Len() > 0 {
19085 return invalidParams
19090 // SetBucket sets the Bucket field's value.
19091 func (s *PutBucketLifecycleConfigurationInput) SetBucket(v string) *PutBucketLifecycleConfigurationInput {
19096 func (s *PutBucketLifecycleConfigurationInput) getBucket() (v string) {
19097 if s.Bucket == nil {
19103 // SetLifecycleConfiguration sets the LifecycleConfiguration field's value.
19104 func (s *PutBucketLifecycleConfigurationInput) SetLifecycleConfiguration(v *BucketLifecycleConfiguration) *PutBucketLifecycleConfigurationInput {
19105 s.LifecycleConfiguration = v
19109 type PutBucketLifecycleConfigurationOutput struct {
19110 _ struct{} `type:"structure"`
19113 // String returns the string representation
19114 func (s PutBucketLifecycleConfigurationOutput) String() string {
19115 return awsutil.Prettify(s)
19118 // GoString returns the string representation
19119 func (s PutBucketLifecycleConfigurationOutput) GoString() string {
19123 type PutBucketLifecycleInput struct {
19124 _ struct{} `type:"structure" payload:"LifecycleConfiguration"`
19126 // Bucket is a required field
19127 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
19129 LifecycleConfiguration *LifecycleConfiguration `locationName:"LifecycleConfiguration" type:"structure" xmlURI:"http://s3.amazonaws.com/doc/2006-03-01/"`
19132 // String returns the string representation
19133 func (s PutBucketLifecycleInput) String() string {
19134 return awsutil.Prettify(s)
19137 // GoString returns the string representation
19138 func (s PutBucketLifecycleInput) GoString() string {
19142 // Validate inspects the fields of the type to determine if they are valid.
19143 func (s *PutBucketLifecycleInput) Validate() error {
19144 invalidParams := request.ErrInvalidParams{Context: "PutBucketLifecycleInput"}
19145 if s.Bucket == nil {
19146 invalidParams.Add(request.NewErrParamRequired("Bucket"))
19148 if s.Bucket != nil && len(*s.Bucket) < 1 {
19149 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
19151 if s.LifecycleConfiguration != nil {
19152 if err := s.LifecycleConfiguration.Validate(); err != nil {
19153 invalidParams.AddNested("LifecycleConfiguration", err.(request.ErrInvalidParams))
19157 if invalidParams.Len() > 0 {
19158 return invalidParams
19163 // SetBucket sets the Bucket field's value.
19164 func (s *PutBucketLifecycleInput) SetBucket(v string) *PutBucketLifecycleInput {
19169 func (s *PutBucketLifecycleInput) getBucket() (v string) {
19170 if s.Bucket == nil {
19176 // SetLifecycleConfiguration sets the LifecycleConfiguration field's value.
19177 func (s *PutBucketLifecycleInput) SetLifecycleConfiguration(v *LifecycleConfiguration) *PutBucketLifecycleInput {
19178 s.LifecycleConfiguration = v
19182 type PutBucketLifecycleOutput struct {
19183 _ struct{} `type:"structure"`
19186 // String returns the string representation
19187 func (s PutBucketLifecycleOutput) String() string {
19188 return awsutil.Prettify(s)
19191 // GoString returns the string representation
19192 func (s PutBucketLifecycleOutput) GoString() string {
19196 type PutBucketLoggingInput struct {
19197 _ struct{} `type:"structure" payload:"BucketLoggingStatus"`
19199 // Bucket is a required field
19200 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
19202 // BucketLoggingStatus is a required field
19203 BucketLoggingStatus *BucketLoggingStatus `locationName:"BucketLoggingStatus" type:"structure" required:"true" xmlURI:"http://s3.amazonaws.com/doc/2006-03-01/"`
19206 // String returns the string representation
19207 func (s PutBucketLoggingInput) String() string {
19208 return awsutil.Prettify(s)
19211 // GoString returns the string representation
19212 func (s PutBucketLoggingInput) GoString() string {
19216 // Validate inspects the fields of the type to determine if they are valid.
19217 func (s *PutBucketLoggingInput) Validate() error {
19218 invalidParams := request.ErrInvalidParams{Context: "PutBucketLoggingInput"}
19219 if s.Bucket == nil {
19220 invalidParams.Add(request.NewErrParamRequired("Bucket"))
19222 if s.Bucket != nil && len(*s.Bucket) < 1 {
19223 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
19225 if s.BucketLoggingStatus == nil {
19226 invalidParams.Add(request.NewErrParamRequired("BucketLoggingStatus"))
19228 if s.BucketLoggingStatus != nil {
19229 if err := s.BucketLoggingStatus.Validate(); err != nil {
19230 invalidParams.AddNested("BucketLoggingStatus", err.(request.ErrInvalidParams))
19234 if invalidParams.Len() > 0 {
19235 return invalidParams
19240 // SetBucket sets the Bucket field's value.
19241 func (s *PutBucketLoggingInput) SetBucket(v string) *PutBucketLoggingInput {
19246 func (s *PutBucketLoggingInput) getBucket() (v string) {
19247 if s.Bucket == nil {
19253 // SetBucketLoggingStatus sets the BucketLoggingStatus field's value.
19254 func (s *PutBucketLoggingInput) SetBucketLoggingStatus(v *BucketLoggingStatus) *PutBucketLoggingInput {
19255 s.BucketLoggingStatus = v
19259 type PutBucketLoggingOutput struct {
19260 _ struct{} `type:"structure"`
19263 // String returns the string representation
19264 func (s PutBucketLoggingOutput) String() string {
19265 return awsutil.Prettify(s)
19268 // GoString returns the string representation
19269 func (s PutBucketLoggingOutput) GoString() string {
19273 type PutBucketMetricsConfigurationInput struct {
19274 _ struct{} `type:"structure" payload:"MetricsConfiguration"`
19276 // The name of the bucket for which the metrics configuration is set.
19278 // Bucket is a required field
19279 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
19281 // The ID used to identify the metrics configuration.
19283 // Id is a required field
19284 Id *string `location:"querystring" locationName:"id" type:"string" required:"true"`
19286 // Specifies the metrics configuration.
19288 // MetricsConfiguration is a required field
19289 MetricsConfiguration *MetricsConfiguration `locationName:"MetricsConfiguration" type:"structure" required:"true" xmlURI:"http://s3.amazonaws.com/doc/2006-03-01/"`
19292 // String returns the string representation
19293 func (s PutBucketMetricsConfigurationInput) String() string {
19294 return awsutil.Prettify(s)
19297 // GoString returns the string representation
19298 func (s PutBucketMetricsConfigurationInput) GoString() string {
19302 // Validate inspects the fields of the type to determine if they are valid.
19303 func (s *PutBucketMetricsConfigurationInput) Validate() error {
19304 invalidParams := request.ErrInvalidParams{Context: "PutBucketMetricsConfigurationInput"}
19305 if s.Bucket == nil {
19306 invalidParams.Add(request.NewErrParamRequired("Bucket"))
19308 if s.Bucket != nil && len(*s.Bucket) < 1 {
19309 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
19312 invalidParams.Add(request.NewErrParamRequired("Id"))
19314 if s.MetricsConfiguration == nil {
19315 invalidParams.Add(request.NewErrParamRequired("MetricsConfiguration"))
19317 if s.MetricsConfiguration != nil {
19318 if err := s.MetricsConfiguration.Validate(); err != nil {
19319 invalidParams.AddNested("MetricsConfiguration", err.(request.ErrInvalidParams))
19323 if invalidParams.Len() > 0 {
19324 return invalidParams
19329 // SetBucket sets the Bucket field's value.
19330 func (s *PutBucketMetricsConfigurationInput) SetBucket(v string) *PutBucketMetricsConfigurationInput {
19335 func (s *PutBucketMetricsConfigurationInput) getBucket() (v string) {
19336 if s.Bucket == nil {
19342 // SetId sets the Id field's value.
19343 func (s *PutBucketMetricsConfigurationInput) SetId(v string) *PutBucketMetricsConfigurationInput {
19348 // SetMetricsConfiguration sets the MetricsConfiguration field's value.
19349 func (s *PutBucketMetricsConfigurationInput) SetMetricsConfiguration(v *MetricsConfiguration) *PutBucketMetricsConfigurationInput {
19350 s.MetricsConfiguration = v
19354 type PutBucketMetricsConfigurationOutput struct {
19355 _ struct{} `type:"structure"`
19358 // String returns the string representation
19359 func (s PutBucketMetricsConfigurationOutput) String() string {
19360 return awsutil.Prettify(s)
19363 // GoString returns the string representation
19364 func (s PutBucketMetricsConfigurationOutput) GoString() string {
19368 type PutBucketNotificationConfigurationInput struct {
19369 _ struct{} `type:"structure" payload:"NotificationConfiguration"`
19371 // Bucket is a required field
19372 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
19374 // A container for specifying the notification configuration of the bucket.
19375 // If this element is empty, notifications are turned off for the bucket.
19377 // NotificationConfiguration is a required field
19378 NotificationConfiguration *NotificationConfiguration `locationName:"NotificationConfiguration" type:"structure" required:"true" xmlURI:"http://s3.amazonaws.com/doc/2006-03-01/"`
19381 // String returns the string representation
19382 func (s PutBucketNotificationConfigurationInput) String() string {
19383 return awsutil.Prettify(s)
19386 // GoString returns the string representation
19387 func (s PutBucketNotificationConfigurationInput) GoString() string {
19391 // Validate inspects the fields of the type to determine if they are valid.
19392 func (s *PutBucketNotificationConfigurationInput) Validate() error {
19393 invalidParams := request.ErrInvalidParams{Context: "PutBucketNotificationConfigurationInput"}
19394 if s.Bucket == nil {
19395 invalidParams.Add(request.NewErrParamRequired("Bucket"))
19397 if s.Bucket != nil && len(*s.Bucket) < 1 {
19398 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
19400 if s.NotificationConfiguration == nil {
19401 invalidParams.Add(request.NewErrParamRequired("NotificationConfiguration"))
19403 if s.NotificationConfiguration != nil {
19404 if err := s.NotificationConfiguration.Validate(); err != nil {
19405 invalidParams.AddNested("NotificationConfiguration", err.(request.ErrInvalidParams))
19409 if invalidParams.Len() > 0 {
19410 return invalidParams
19415 // SetBucket sets the Bucket field's value.
19416 func (s *PutBucketNotificationConfigurationInput) SetBucket(v string) *PutBucketNotificationConfigurationInput {
19421 func (s *PutBucketNotificationConfigurationInput) getBucket() (v string) {
19422 if s.Bucket == nil {
19428 // SetNotificationConfiguration sets the NotificationConfiguration field's value.
19429 func (s *PutBucketNotificationConfigurationInput) SetNotificationConfiguration(v *NotificationConfiguration) *PutBucketNotificationConfigurationInput {
19430 s.NotificationConfiguration = v
19434 type PutBucketNotificationConfigurationOutput struct {
19435 _ struct{} `type:"structure"`
19438 // String returns the string representation
19439 func (s PutBucketNotificationConfigurationOutput) String() string {
19440 return awsutil.Prettify(s)
19443 // GoString returns the string representation
19444 func (s PutBucketNotificationConfigurationOutput) GoString() string {
19448 type PutBucketNotificationInput struct {
19449 _ struct{} `type:"structure" payload:"NotificationConfiguration"`
19451 // Bucket is a required field
19452 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
19454 // NotificationConfiguration is a required field
19455 NotificationConfiguration *NotificationConfigurationDeprecated `locationName:"NotificationConfiguration" type:"structure" required:"true" xmlURI:"http://s3.amazonaws.com/doc/2006-03-01/"`
19458 // String returns the string representation
19459 func (s PutBucketNotificationInput) String() string {
19460 return awsutil.Prettify(s)
19463 // GoString returns the string representation
19464 func (s PutBucketNotificationInput) GoString() string {
19468 // Validate inspects the fields of the type to determine if they are valid.
19469 func (s *PutBucketNotificationInput) Validate() error {
19470 invalidParams := request.ErrInvalidParams{Context: "PutBucketNotificationInput"}
19471 if s.Bucket == nil {
19472 invalidParams.Add(request.NewErrParamRequired("Bucket"))
19474 if s.Bucket != nil && len(*s.Bucket) < 1 {
19475 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
19477 if s.NotificationConfiguration == nil {
19478 invalidParams.Add(request.NewErrParamRequired("NotificationConfiguration"))
19481 if invalidParams.Len() > 0 {
19482 return invalidParams
19487 // SetBucket sets the Bucket field's value.
19488 func (s *PutBucketNotificationInput) SetBucket(v string) *PutBucketNotificationInput {
19493 func (s *PutBucketNotificationInput) getBucket() (v string) {
19494 if s.Bucket == nil {
19500 // SetNotificationConfiguration sets the NotificationConfiguration field's value.
19501 func (s *PutBucketNotificationInput) SetNotificationConfiguration(v *NotificationConfigurationDeprecated) *PutBucketNotificationInput {
19502 s.NotificationConfiguration = v
19506 type PutBucketNotificationOutput struct {
19507 _ struct{} `type:"structure"`
19510 // String returns the string representation
19511 func (s PutBucketNotificationOutput) String() string {
19512 return awsutil.Prettify(s)
19515 // GoString returns the string representation
19516 func (s PutBucketNotificationOutput) GoString() string {
19520 type PutBucketPolicyInput struct {
19521 _ struct{} `type:"structure" payload:"Policy"`
19523 // Bucket is a required field
19524 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
19526 // Set this parameter to true to confirm that you want to remove your permissions
19527 // to change this bucket policy in the future.
19528 ConfirmRemoveSelfBucketAccess *bool `location:"header" locationName:"x-amz-confirm-remove-self-bucket-access" type:"boolean"`
19530 // The bucket policy as a JSON document.
19532 // Policy is a required field
19533 Policy *string `type:"string" required:"true"`
19536 // String returns the string representation
19537 func (s PutBucketPolicyInput) String() string {
19538 return awsutil.Prettify(s)
19541 // GoString returns the string representation
19542 func (s PutBucketPolicyInput) GoString() string {
19546 // Validate inspects the fields of the type to determine if they are valid.
19547 func (s *PutBucketPolicyInput) Validate() error {
19548 invalidParams := request.ErrInvalidParams{Context: "PutBucketPolicyInput"}
19549 if s.Bucket == nil {
19550 invalidParams.Add(request.NewErrParamRequired("Bucket"))
19552 if s.Bucket != nil && len(*s.Bucket) < 1 {
19553 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
19555 if s.Policy == nil {
19556 invalidParams.Add(request.NewErrParamRequired("Policy"))
19559 if invalidParams.Len() > 0 {
19560 return invalidParams
19565 // SetBucket sets the Bucket field's value.
19566 func (s *PutBucketPolicyInput) SetBucket(v string) *PutBucketPolicyInput {
19571 func (s *PutBucketPolicyInput) getBucket() (v string) {
19572 if s.Bucket == nil {
19578 // SetConfirmRemoveSelfBucketAccess sets the ConfirmRemoveSelfBucketAccess field's value.
19579 func (s *PutBucketPolicyInput) SetConfirmRemoveSelfBucketAccess(v bool) *PutBucketPolicyInput {
19580 s.ConfirmRemoveSelfBucketAccess = &v
19584 // SetPolicy sets the Policy field's value.
19585 func (s *PutBucketPolicyInput) SetPolicy(v string) *PutBucketPolicyInput {
19590 type PutBucketPolicyOutput struct {
19591 _ struct{} `type:"structure"`
19594 // String returns the string representation
19595 func (s PutBucketPolicyOutput) String() string {
19596 return awsutil.Prettify(s)
19599 // GoString returns the string representation
19600 func (s PutBucketPolicyOutput) GoString() string {
19604 type PutBucketReplicationInput struct {
19605 _ struct{} `type:"structure" payload:"ReplicationConfiguration"`
19607 // Bucket is a required field
19608 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
19610 // A container for replication rules. You can add up to 1,000 rules. The maximum
19611 // size of a replication configuration is 2 MB.
19613 // ReplicationConfiguration is a required field
19614 ReplicationConfiguration *ReplicationConfiguration `locationName:"ReplicationConfiguration" type:"structure" required:"true" xmlURI:"http://s3.amazonaws.com/doc/2006-03-01/"`
19617 // String returns the string representation
19618 func (s PutBucketReplicationInput) String() string {
19619 return awsutil.Prettify(s)
19622 // GoString returns the string representation
19623 func (s PutBucketReplicationInput) GoString() string {
19627 // Validate inspects the fields of the type to determine if they are valid.
19628 func (s *PutBucketReplicationInput) Validate() error {
19629 invalidParams := request.ErrInvalidParams{Context: "PutBucketReplicationInput"}
19630 if s.Bucket == nil {
19631 invalidParams.Add(request.NewErrParamRequired("Bucket"))
19633 if s.Bucket != nil && len(*s.Bucket) < 1 {
19634 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
19636 if s.ReplicationConfiguration == nil {
19637 invalidParams.Add(request.NewErrParamRequired("ReplicationConfiguration"))
19639 if s.ReplicationConfiguration != nil {
19640 if err := s.ReplicationConfiguration.Validate(); err != nil {
19641 invalidParams.AddNested("ReplicationConfiguration", err.(request.ErrInvalidParams))
19645 if invalidParams.Len() > 0 {
19646 return invalidParams
19651 // SetBucket sets the Bucket field's value.
19652 func (s *PutBucketReplicationInput) SetBucket(v string) *PutBucketReplicationInput {
19657 func (s *PutBucketReplicationInput) getBucket() (v string) {
19658 if s.Bucket == nil {
19664 // SetReplicationConfiguration sets the ReplicationConfiguration field's value.
19665 func (s *PutBucketReplicationInput) SetReplicationConfiguration(v *ReplicationConfiguration) *PutBucketReplicationInput {
19666 s.ReplicationConfiguration = v
19670 type PutBucketReplicationOutput struct {
19671 _ struct{} `type:"structure"`
19674 // String returns the string representation
19675 func (s PutBucketReplicationOutput) String() string {
19676 return awsutil.Prettify(s)
19679 // GoString returns the string representation
19680 func (s PutBucketReplicationOutput) GoString() string {
19684 type PutBucketRequestPaymentInput struct {
19685 _ struct{} `type:"structure" payload:"RequestPaymentConfiguration"`
19687 // Bucket is a required field
19688 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
19690 // RequestPaymentConfiguration is a required field
19691 RequestPaymentConfiguration *RequestPaymentConfiguration `locationName:"RequestPaymentConfiguration" type:"structure" required:"true" xmlURI:"http://s3.amazonaws.com/doc/2006-03-01/"`
19694 // String returns the string representation
19695 func (s PutBucketRequestPaymentInput) String() string {
19696 return awsutil.Prettify(s)
19699 // GoString returns the string representation
19700 func (s PutBucketRequestPaymentInput) GoString() string {
19704 // Validate inspects the fields of the type to determine if they are valid.
19705 func (s *PutBucketRequestPaymentInput) Validate() error {
19706 invalidParams := request.ErrInvalidParams{Context: "PutBucketRequestPaymentInput"}
19707 if s.Bucket == nil {
19708 invalidParams.Add(request.NewErrParamRequired("Bucket"))
19710 if s.Bucket != nil && len(*s.Bucket) < 1 {
19711 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
19713 if s.RequestPaymentConfiguration == nil {
19714 invalidParams.Add(request.NewErrParamRequired("RequestPaymentConfiguration"))
19716 if s.RequestPaymentConfiguration != nil {
19717 if err := s.RequestPaymentConfiguration.Validate(); err != nil {
19718 invalidParams.AddNested("RequestPaymentConfiguration", err.(request.ErrInvalidParams))
19722 if invalidParams.Len() > 0 {
19723 return invalidParams
19728 // SetBucket sets the Bucket field's value.
19729 func (s *PutBucketRequestPaymentInput) SetBucket(v string) *PutBucketRequestPaymentInput {
19734 func (s *PutBucketRequestPaymentInput) getBucket() (v string) {
19735 if s.Bucket == nil {
19741 // SetRequestPaymentConfiguration sets the RequestPaymentConfiguration field's value.
19742 func (s *PutBucketRequestPaymentInput) SetRequestPaymentConfiguration(v *RequestPaymentConfiguration) *PutBucketRequestPaymentInput {
19743 s.RequestPaymentConfiguration = v
19747 type PutBucketRequestPaymentOutput struct {
19748 _ struct{} `type:"structure"`
19751 // String returns the string representation
19752 func (s PutBucketRequestPaymentOutput) String() string {
19753 return awsutil.Prettify(s)
19756 // GoString returns the string representation
19757 func (s PutBucketRequestPaymentOutput) GoString() string {
19761 type PutBucketTaggingInput struct {
19762 _ struct{} `type:"structure" payload:"Tagging"`
19764 // Bucket is a required field
19765 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
19767 // Tagging is a required field
19768 Tagging *Tagging `locationName:"Tagging" type:"structure" required:"true" xmlURI:"http://s3.amazonaws.com/doc/2006-03-01/"`
19771 // String returns the string representation
19772 func (s PutBucketTaggingInput) String() string {
19773 return awsutil.Prettify(s)
19776 // GoString returns the string representation
19777 func (s PutBucketTaggingInput) GoString() string {
19781 // Validate inspects the fields of the type to determine if they are valid.
19782 func (s *PutBucketTaggingInput) Validate() error {
19783 invalidParams := request.ErrInvalidParams{Context: "PutBucketTaggingInput"}
19784 if s.Bucket == nil {
19785 invalidParams.Add(request.NewErrParamRequired("Bucket"))
19787 if s.Bucket != nil && len(*s.Bucket) < 1 {
19788 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
19790 if s.Tagging == nil {
19791 invalidParams.Add(request.NewErrParamRequired("Tagging"))
19793 if s.Tagging != nil {
19794 if err := s.Tagging.Validate(); err != nil {
19795 invalidParams.AddNested("Tagging", err.(request.ErrInvalidParams))
19799 if invalidParams.Len() > 0 {
19800 return invalidParams
19805 // SetBucket sets the Bucket field's value.
19806 func (s *PutBucketTaggingInput) SetBucket(v string) *PutBucketTaggingInput {
19811 func (s *PutBucketTaggingInput) getBucket() (v string) {
19812 if s.Bucket == nil {
19818 // SetTagging sets the Tagging field's value.
19819 func (s *PutBucketTaggingInput) SetTagging(v *Tagging) *PutBucketTaggingInput {
19824 type PutBucketTaggingOutput struct {
19825 _ struct{} `type:"structure"`
19828 // String returns the string representation
19829 func (s PutBucketTaggingOutput) String() string {
19830 return awsutil.Prettify(s)
19833 // GoString returns the string representation
19834 func (s PutBucketTaggingOutput) GoString() string {
19838 type PutBucketVersioningInput struct {
19839 _ struct{} `type:"structure" payload:"VersioningConfiguration"`
19841 // Bucket is a required field
19842 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
19844 // The concatenation of the authentication device's serial number, a space,
19845 // and the value that is displayed on your authentication device.
19846 MFA *string `location:"header" locationName:"x-amz-mfa" type:"string"`
19848 // VersioningConfiguration is a required field
19849 VersioningConfiguration *VersioningConfiguration `locationName:"VersioningConfiguration" type:"structure" required:"true" xmlURI:"http://s3.amazonaws.com/doc/2006-03-01/"`
19852 // String returns the string representation
19853 func (s PutBucketVersioningInput) String() string {
19854 return awsutil.Prettify(s)
19857 // GoString returns the string representation
19858 func (s PutBucketVersioningInput) GoString() string {
19862 // Validate inspects the fields of the type to determine if they are valid.
19863 func (s *PutBucketVersioningInput) Validate() error {
19864 invalidParams := request.ErrInvalidParams{Context: "PutBucketVersioningInput"}
19865 if s.Bucket == nil {
19866 invalidParams.Add(request.NewErrParamRequired("Bucket"))
19868 if s.Bucket != nil && len(*s.Bucket) < 1 {
19869 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
19871 if s.VersioningConfiguration == nil {
19872 invalidParams.Add(request.NewErrParamRequired("VersioningConfiguration"))
19875 if invalidParams.Len() > 0 {
19876 return invalidParams
19881 // SetBucket sets the Bucket field's value.
19882 func (s *PutBucketVersioningInput) SetBucket(v string) *PutBucketVersioningInput {
19887 func (s *PutBucketVersioningInput) getBucket() (v string) {
19888 if s.Bucket == nil {
19894 // SetMFA sets the MFA field's value.
19895 func (s *PutBucketVersioningInput) SetMFA(v string) *PutBucketVersioningInput {
19900 // SetVersioningConfiguration sets the VersioningConfiguration field's value.
19901 func (s *PutBucketVersioningInput) SetVersioningConfiguration(v *VersioningConfiguration) *PutBucketVersioningInput {
19902 s.VersioningConfiguration = v
19906 type PutBucketVersioningOutput struct {
19907 _ struct{} `type:"structure"`
19910 // String returns the string representation
19911 func (s PutBucketVersioningOutput) String() string {
19912 return awsutil.Prettify(s)
19915 // GoString returns the string representation
19916 func (s PutBucketVersioningOutput) GoString() string {
19920 type PutBucketWebsiteInput struct {
19921 _ struct{} `type:"structure" payload:"WebsiteConfiguration"`
19923 // Bucket is a required field
19924 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
19926 // WebsiteConfiguration is a required field
19927 WebsiteConfiguration *WebsiteConfiguration `locationName:"WebsiteConfiguration" type:"structure" required:"true" xmlURI:"http://s3.amazonaws.com/doc/2006-03-01/"`
19930 // String returns the string representation
19931 func (s PutBucketWebsiteInput) String() string {
19932 return awsutil.Prettify(s)
19935 // GoString returns the string representation
19936 func (s PutBucketWebsiteInput) GoString() string {
19940 // Validate inspects the fields of the type to determine if they are valid.
19941 func (s *PutBucketWebsiteInput) Validate() error {
19942 invalidParams := request.ErrInvalidParams{Context: "PutBucketWebsiteInput"}
19943 if s.Bucket == nil {
19944 invalidParams.Add(request.NewErrParamRequired("Bucket"))
19946 if s.Bucket != nil && len(*s.Bucket) < 1 {
19947 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
19949 if s.WebsiteConfiguration == nil {
19950 invalidParams.Add(request.NewErrParamRequired("WebsiteConfiguration"))
19952 if s.WebsiteConfiguration != nil {
19953 if err := s.WebsiteConfiguration.Validate(); err != nil {
19954 invalidParams.AddNested("WebsiteConfiguration", err.(request.ErrInvalidParams))
19958 if invalidParams.Len() > 0 {
19959 return invalidParams
19964 // SetBucket sets the Bucket field's value.
19965 func (s *PutBucketWebsiteInput) SetBucket(v string) *PutBucketWebsiteInput {
19970 func (s *PutBucketWebsiteInput) getBucket() (v string) {
19971 if s.Bucket == nil {
19977 // SetWebsiteConfiguration sets the WebsiteConfiguration field's value.
19978 func (s *PutBucketWebsiteInput) SetWebsiteConfiguration(v *WebsiteConfiguration) *PutBucketWebsiteInput {
19979 s.WebsiteConfiguration = v
19983 type PutBucketWebsiteOutput struct {
19984 _ struct{} `type:"structure"`
19987 // String returns the string representation
19988 func (s PutBucketWebsiteOutput) String() string {
19989 return awsutil.Prettify(s)
19992 // GoString returns the string representation
19993 func (s PutBucketWebsiteOutput) GoString() string {
19997 type PutObjectAclInput struct {
19998 _ struct{} `type:"structure" payload:"AccessControlPolicy"`
20000 // The canned ACL to apply to the object.
20001 ACL *string `location:"header" locationName:"x-amz-acl" type:"string" enum:"ObjectCannedACL"`
20003 AccessControlPolicy *AccessControlPolicy `locationName:"AccessControlPolicy" type:"structure" xmlURI:"http://s3.amazonaws.com/doc/2006-03-01/"`
20005 // Bucket is a required field
20006 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
20008 // Allows grantee the read, write, read ACP, and write ACP permissions on the
20010 GrantFullControl *string `location:"header" locationName:"x-amz-grant-full-control" type:"string"`
20012 // Allows grantee to list the objects in the bucket.
20013 GrantRead *string `location:"header" locationName:"x-amz-grant-read" type:"string"`
20015 // Allows grantee to read the bucket ACL.
20016 GrantReadACP *string `location:"header" locationName:"x-amz-grant-read-acp" type:"string"`
20018 // Allows grantee to create, overwrite, and delete any object in the bucket.
20019 GrantWrite *string `location:"header" locationName:"x-amz-grant-write" type:"string"`
20021 // Allows grantee to write the ACL for the applicable bucket.
20022 GrantWriteACP *string `location:"header" locationName:"x-amz-grant-write-acp" type:"string"`
20024 // Key is a required field
20025 Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"`
20027 // Confirms that the requester knows that she or he will be charged for the
20028 // request. Bucket owners need not specify this parameter in their requests.
20029 // Documentation on downloading objects from requester pays buckets can be found
20030 // at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
20031 RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
20033 // VersionId used to reference a specific version of the object.
20034 VersionId *string `location:"querystring" locationName:"versionId" type:"string"`
20037 // String returns the string representation
20038 func (s PutObjectAclInput) String() string {
20039 return awsutil.Prettify(s)
20042 // GoString returns the string representation
20043 func (s PutObjectAclInput) GoString() string {
20047 // Validate inspects the fields of the type to determine if they are valid.
20048 func (s *PutObjectAclInput) Validate() error {
20049 invalidParams := request.ErrInvalidParams{Context: "PutObjectAclInput"}
20050 if s.Bucket == nil {
20051 invalidParams.Add(request.NewErrParamRequired("Bucket"))
20053 if s.Bucket != nil && len(*s.Bucket) < 1 {
20054 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
20057 invalidParams.Add(request.NewErrParamRequired("Key"))
20059 if s.Key != nil && len(*s.Key) < 1 {
20060 invalidParams.Add(request.NewErrParamMinLen("Key", 1))
20062 if s.AccessControlPolicy != nil {
20063 if err := s.AccessControlPolicy.Validate(); err != nil {
20064 invalidParams.AddNested("AccessControlPolicy", err.(request.ErrInvalidParams))
20068 if invalidParams.Len() > 0 {
20069 return invalidParams
20074 // SetACL sets the ACL field's value.
20075 func (s *PutObjectAclInput) SetACL(v string) *PutObjectAclInput {
20080 // SetAccessControlPolicy sets the AccessControlPolicy field's value.
20081 func (s *PutObjectAclInput) SetAccessControlPolicy(v *AccessControlPolicy) *PutObjectAclInput {
20082 s.AccessControlPolicy = v
20086 // SetBucket sets the Bucket field's value.
20087 func (s *PutObjectAclInput) SetBucket(v string) *PutObjectAclInput {
20092 func (s *PutObjectAclInput) getBucket() (v string) {
20093 if s.Bucket == nil {
20099 // SetGrantFullControl sets the GrantFullControl field's value.
20100 func (s *PutObjectAclInput) SetGrantFullControl(v string) *PutObjectAclInput {
20101 s.GrantFullControl = &v
20105 // SetGrantRead sets the GrantRead field's value.
20106 func (s *PutObjectAclInput) SetGrantRead(v string) *PutObjectAclInput {
20111 // SetGrantReadACP sets the GrantReadACP field's value.
20112 func (s *PutObjectAclInput) SetGrantReadACP(v string) *PutObjectAclInput {
20113 s.GrantReadACP = &v
20117 // SetGrantWrite sets the GrantWrite field's value.
20118 func (s *PutObjectAclInput) SetGrantWrite(v string) *PutObjectAclInput {
20123 // SetGrantWriteACP sets the GrantWriteACP field's value.
20124 func (s *PutObjectAclInput) SetGrantWriteACP(v string) *PutObjectAclInput {
20125 s.GrantWriteACP = &v
20129 // SetKey sets the Key field's value.
20130 func (s *PutObjectAclInput) SetKey(v string) *PutObjectAclInput {
20135 // SetRequestPayer sets the RequestPayer field's value.
20136 func (s *PutObjectAclInput) SetRequestPayer(v string) *PutObjectAclInput {
20137 s.RequestPayer = &v
20141 // SetVersionId sets the VersionId field's value.
20142 func (s *PutObjectAclInput) SetVersionId(v string) *PutObjectAclInput {
20147 type PutObjectAclOutput struct {
20148 _ struct{} `type:"structure"`
20150 // If present, indicates that the requester was successfully charged for the
20152 RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"`
20155 // String returns the string representation
20156 func (s PutObjectAclOutput) String() string {
20157 return awsutil.Prettify(s)
20160 // GoString returns the string representation
20161 func (s PutObjectAclOutput) GoString() string {
20165 // SetRequestCharged sets the RequestCharged field's value.
20166 func (s *PutObjectAclOutput) SetRequestCharged(v string) *PutObjectAclOutput {
20167 s.RequestCharged = &v
20171 type PutObjectInput struct {
20172 _ struct{} `type:"structure" payload:"Body"`
20174 // The canned ACL to apply to the object.
20175 ACL *string `location:"header" locationName:"x-amz-acl" type:"string" enum:"ObjectCannedACL"`
20178 Body io.ReadSeeker `type:"blob"`
20180 // Name of the bucket to which the PUT operation was initiated.
20182 // Bucket is a required field
20183 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
20185 // Specifies caching behavior along the request/reply chain.
20186 CacheControl *string `location:"header" locationName:"Cache-Control" type:"string"`
20188 // Specifies presentational information for the object.
20189 ContentDisposition *string `location:"header" locationName:"Content-Disposition" type:"string"`
20191 // Specifies what content encodings have been applied to the object and thus
20192 // what decoding mechanisms must be applied to obtain the media-type referenced
20193 // by the Content-Type header field.
20194 ContentEncoding *string `location:"header" locationName:"Content-Encoding" type:"string"`
20196 // The language the content is in.
20197 ContentLanguage *string `location:"header" locationName:"Content-Language" type:"string"`
20199 // Size of the body in bytes. This parameter is useful when the size of the
20200 // body cannot be determined automatically.
20201 ContentLength *int64 `location:"header" locationName:"Content-Length" type:"long"`
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
20205 ContentMD5 *string `location:"header" locationName:"Content-MD5" type:"string"`
20207 // A standard MIME type describing the format of the object data.
20208 ContentType *string `location:"header" locationName:"Content-Type" type:"string"`
20210 // The date and time at which the object is no longer cacheable.
20211 Expires *time.Time `location:"header" locationName:"Expires" type:"timestamp"`
20213 // Gives the grantee READ, READ_ACP, and WRITE_ACP permissions on the object.
20214 GrantFullControl *string `location:"header" locationName:"x-amz-grant-full-control" type:"string"`
20216 // Allows grantee to read the object data and its metadata.
20217 GrantRead *string `location:"header" locationName:"x-amz-grant-read" type:"string"`
20219 // Allows grantee to read the object ACL.
20220 GrantReadACP *string `location:"header" locationName:"x-amz-grant-read-acp" type:"string"`
20222 // Allows grantee to write the ACL for the applicable object.
20223 GrantWriteACP *string `location:"header" locationName:"x-amz-grant-write-acp" type:"string"`
20225 // Object key for which the PUT operation was initiated.
20227 // Key is a required field
20228 Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"`
20230 // A map of metadata to store with the object in S3.
20231 Metadata map[string]*string `location:"headers" locationName:"x-amz-meta-" type:"map"`
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"`
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"`
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"`
20242 // Confirms that the requester knows that she or he will be charged for the
20243 // request. Bucket owners need not specify this parameter in their requests.
20244 // Documentation on downloading objects from requester pays buckets can be found
20245 // at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
20246 RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
20248 // Specifies the algorithm to use to when encrypting the object (e.g., AES256).
20249 SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"`
20251 // Specifies the customer-provided encryption key for Amazon S3 to use in encrypting
20252 // data. This value is used to store the object and then it is discarded; Amazon
20253 // does not store the encryption key. The key must be appropriate for use with
20254 // the algorithm specified in the x-amz-server-side​-encryption​-customer-algorithm
20256 SSECustomerKey *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key" type:"string" sensitive:"true"`
20258 // Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321.
20259 // Amazon S3 uses this header for a message integrity check to ensure the encryption
20260 // key was transmitted without error.
20261 SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"`
20263 // Specifies the AWS KMS key ID to use for object encryption. All GET and PUT
20264 // requests for an object protected by AWS KMS will fail if not made via SSL
20265 // or using SigV4. Documentation on configuring any of the officially supported
20266 // AWS SDKs and CLI can be found at http://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version
20267 SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string" sensitive:"true"`
20269 // The Server-side encryption algorithm used when storing this object in S3
20270 // (e.g., AES256, aws:kms).
20271 ServerSideEncryption *string `location:"header" locationName:"x-amz-server-side-encryption" type:"string" enum:"ServerSideEncryption"`
20273 // The type of storage to use for the object. Defaults to 'STANDARD'.
20274 StorageClass *string `location:"header" locationName:"x-amz-storage-class" type:"string" enum:"StorageClass"`
20276 // The tag-set for the object. The tag-set must be encoded as URL Query parameters.
20277 // (For example, "Key1=Value1")
20278 Tagging *string `location:"header" locationName:"x-amz-tagging" type:"string"`
20280 // If the bucket is configured as a website, redirects requests for this object
20281 // to another object in the same bucket or to an external URL. Amazon S3 stores
20282 // the value of this header in the object metadata.
20283 WebsiteRedirectLocation *string `location:"header" locationName:"x-amz-website-redirect-location" type:"string"`
20286 // String returns the string representation
20287 func (s PutObjectInput) String() string {
20288 return awsutil.Prettify(s)
20291 // GoString returns the string representation
20292 func (s PutObjectInput) GoString() string {
20296 // Validate inspects the fields of the type to determine if they are valid.
20297 func (s *PutObjectInput) Validate() error {
20298 invalidParams := request.ErrInvalidParams{Context: "PutObjectInput"}
20299 if s.Bucket == nil {
20300 invalidParams.Add(request.NewErrParamRequired("Bucket"))
20302 if s.Bucket != nil && len(*s.Bucket) < 1 {
20303 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
20306 invalidParams.Add(request.NewErrParamRequired("Key"))
20308 if s.Key != nil && len(*s.Key) < 1 {
20309 invalidParams.Add(request.NewErrParamMinLen("Key", 1))
20312 if invalidParams.Len() > 0 {
20313 return invalidParams
20318 // SetACL sets the ACL field's value.
20319 func (s *PutObjectInput) SetACL(v string) *PutObjectInput {
20324 // SetBody sets the Body field's value.
20325 func (s *PutObjectInput) SetBody(v io.ReadSeeker) *PutObjectInput {
20330 // SetBucket sets the Bucket field's value.
20331 func (s *PutObjectInput) SetBucket(v string) *PutObjectInput {
20336 func (s *PutObjectInput) getBucket() (v string) {
20337 if s.Bucket == nil {
20343 // SetCacheControl sets the CacheControl field's value.
20344 func (s *PutObjectInput) SetCacheControl(v string) *PutObjectInput {
20345 s.CacheControl = &v
20349 // SetContentDisposition sets the ContentDisposition field's value.
20350 func (s *PutObjectInput) SetContentDisposition(v string) *PutObjectInput {
20351 s.ContentDisposition = &v
20355 // SetContentEncoding sets the ContentEncoding field's value.
20356 func (s *PutObjectInput) SetContentEncoding(v string) *PutObjectInput {
20357 s.ContentEncoding = &v
20361 // SetContentLanguage sets the ContentLanguage field's value.
20362 func (s *PutObjectInput) SetContentLanguage(v string) *PutObjectInput {
20363 s.ContentLanguage = &v
20367 // SetContentLength sets the ContentLength field's value.
20368 func (s *PutObjectInput) SetContentLength(v int64) *PutObjectInput {
20369 s.ContentLength = &v
20373 // SetContentMD5 sets the ContentMD5 field's value.
20374 func (s *PutObjectInput) SetContentMD5(v string) *PutObjectInput {
20379 // SetContentType sets the ContentType field's value.
20380 func (s *PutObjectInput) SetContentType(v string) *PutObjectInput {
20385 // SetExpires sets the Expires field's value.
20386 func (s *PutObjectInput) SetExpires(v time.Time) *PutObjectInput {
20391 // SetGrantFullControl sets the GrantFullControl field's value.
20392 func (s *PutObjectInput) SetGrantFullControl(v string) *PutObjectInput {
20393 s.GrantFullControl = &v
20397 // SetGrantRead sets the GrantRead field's value.
20398 func (s *PutObjectInput) SetGrantRead(v string) *PutObjectInput {
20403 // SetGrantReadACP sets the GrantReadACP field's value.
20404 func (s *PutObjectInput) SetGrantReadACP(v string) *PutObjectInput {
20405 s.GrantReadACP = &v
20409 // SetGrantWriteACP sets the GrantWriteACP field's value.
20410 func (s *PutObjectInput) SetGrantWriteACP(v string) *PutObjectInput {
20411 s.GrantWriteACP = &v
20415 // SetKey sets the Key field's value.
20416 func (s *PutObjectInput) SetKey(v string) *PutObjectInput {
20421 // SetMetadata sets the Metadata field's value.
20422 func (s *PutObjectInput) SetMetadata(v map[string]*string) *PutObjectInput {
20427 // SetObjectLockLegalHoldStatus sets the ObjectLockLegalHoldStatus field's value.
20428 func (s *PutObjectInput) SetObjectLockLegalHoldStatus(v string) *PutObjectInput {
20429 s.ObjectLockLegalHoldStatus = &v
20433 // SetObjectLockMode sets the ObjectLockMode field's value.
20434 func (s *PutObjectInput) SetObjectLockMode(v string) *PutObjectInput {
20435 s.ObjectLockMode = &v
20439 // SetObjectLockRetainUntilDate sets the ObjectLockRetainUntilDate field's value.
20440 func (s *PutObjectInput) SetObjectLockRetainUntilDate(v time.Time) *PutObjectInput {
20441 s.ObjectLockRetainUntilDate = &v
20445 // SetRequestPayer sets the RequestPayer field's value.
20446 func (s *PutObjectInput) SetRequestPayer(v string) *PutObjectInput {
20447 s.RequestPayer = &v
20451 // SetSSECustomerAlgorithm sets the SSECustomerAlgorithm field's value.
20452 func (s *PutObjectInput) SetSSECustomerAlgorithm(v string) *PutObjectInput {
20453 s.SSECustomerAlgorithm = &v
20457 // SetSSECustomerKey sets the SSECustomerKey field's value.
20458 func (s *PutObjectInput) SetSSECustomerKey(v string) *PutObjectInput {
20459 s.SSECustomerKey = &v
20463 func (s *PutObjectInput) getSSECustomerKey() (v string) {
20464 if s.SSECustomerKey == nil {
20467 return *s.SSECustomerKey
20470 // SetSSECustomerKeyMD5 sets the SSECustomerKeyMD5 field's value.
20471 func (s *PutObjectInput) SetSSECustomerKeyMD5(v string) *PutObjectInput {
20472 s.SSECustomerKeyMD5 = &v
20476 // SetSSEKMSKeyId sets the SSEKMSKeyId field's value.
20477 func (s *PutObjectInput) SetSSEKMSKeyId(v string) *PutObjectInput {
20482 // SetServerSideEncryption sets the ServerSideEncryption field's value.
20483 func (s *PutObjectInput) SetServerSideEncryption(v string) *PutObjectInput {
20484 s.ServerSideEncryption = &v
20488 // SetStorageClass sets the StorageClass field's value.
20489 func (s *PutObjectInput) SetStorageClass(v string) *PutObjectInput {
20490 s.StorageClass = &v
20494 // SetTagging sets the Tagging field's value.
20495 func (s *PutObjectInput) SetTagging(v string) *PutObjectInput {
20500 // SetWebsiteRedirectLocation sets the WebsiteRedirectLocation field's value.
20501 func (s *PutObjectInput) SetWebsiteRedirectLocation(v string) *PutObjectInput {
20502 s.WebsiteRedirectLocation = &v
20506 type PutObjectLegalHoldInput struct {
20507 _ struct{} `type:"structure" payload:"LegalHold"`
20509 // The bucket containing the object that you want to place a Legal Hold on.
20511 // Bucket is a required field
20512 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
20514 // The key name for the object that you want to place a Legal Hold on.
20516 // Key is a required field
20517 Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"`
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/"`
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"`
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"`
20533 // String returns the string representation
20534 func (s PutObjectLegalHoldInput) String() string {
20535 return awsutil.Prettify(s)
20538 // GoString returns the string representation
20539 func (s PutObjectLegalHoldInput) GoString() string {
20543 // Validate inspects the fields of the type to determine if they are valid.
20544 func (s *PutObjectLegalHoldInput) Validate() error {
20545 invalidParams := request.ErrInvalidParams{Context: "PutObjectLegalHoldInput"}
20546 if s.Bucket == nil {
20547 invalidParams.Add(request.NewErrParamRequired("Bucket"))
20549 if s.Bucket != nil && len(*s.Bucket) < 1 {
20550 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
20553 invalidParams.Add(request.NewErrParamRequired("Key"))
20555 if s.Key != nil && len(*s.Key) < 1 {
20556 invalidParams.Add(request.NewErrParamMinLen("Key", 1))
20559 if invalidParams.Len() > 0 {
20560 return invalidParams
20565 // SetBucket sets the Bucket field's value.
20566 func (s *PutObjectLegalHoldInput) SetBucket(v string) *PutObjectLegalHoldInput {
20571 func (s *PutObjectLegalHoldInput) getBucket() (v string) {
20572 if s.Bucket == nil {
20578 // SetKey sets the Key field's value.
20579 func (s *PutObjectLegalHoldInput) SetKey(v string) *PutObjectLegalHoldInput {
20584 // SetLegalHold sets the LegalHold field's value.
20585 func (s *PutObjectLegalHoldInput) SetLegalHold(v *ObjectLockLegalHold) *PutObjectLegalHoldInput {
20590 // SetRequestPayer sets the RequestPayer field's value.
20591 func (s *PutObjectLegalHoldInput) SetRequestPayer(v string) *PutObjectLegalHoldInput {
20592 s.RequestPayer = &v
20596 // SetVersionId sets the VersionId field's value.
20597 func (s *PutObjectLegalHoldInput) SetVersionId(v string) *PutObjectLegalHoldInput {
20602 type PutObjectLegalHoldOutput struct {
20603 _ struct{} `type:"structure"`
20605 // If present, indicates that the requester was successfully charged for the
20607 RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"`
20610 // String returns the string representation
20611 func (s PutObjectLegalHoldOutput) String() string {
20612 return awsutil.Prettify(s)
20615 // GoString returns the string representation
20616 func (s PutObjectLegalHoldOutput) GoString() string {
20620 // SetRequestCharged sets the RequestCharged field's value.
20621 func (s *PutObjectLegalHoldOutput) SetRequestCharged(v string) *PutObjectLegalHoldOutput {
20622 s.RequestCharged = &v
20626 type PutObjectLockConfigurationInput struct {
20627 _ struct{} `type:"structure" payload:"ObjectLockConfiguration"`
20629 // The bucket whose Object Lock configuration you want to create or replace.
20631 // Bucket is a required field
20632 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
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/"`
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"`
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"`
20647 // String returns the string representation
20648 func (s PutObjectLockConfigurationInput) String() string {
20649 return awsutil.Prettify(s)
20652 // GoString returns the string representation
20653 func (s PutObjectLockConfigurationInput) GoString() string {
20657 // Validate inspects the fields of the type to determine if they are valid.
20658 func (s *PutObjectLockConfigurationInput) Validate() error {
20659 invalidParams := request.ErrInvalidParams{Context: "PutObjectLockConfigurationInput"}
20660 if s.Bucket == nil {
20661 invalidParams.Add(request.NewErrParamRequired("Bucket"))
20663 if s.Bucket != nil && len(*s.Bucket) < 1 {
20664 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
20667 if invalidParams.Len() > 0 {
20668 return invalidParams
20673 // SetBucket sets the Bucket field's value.
20674 func (s *PutObjectLockConfigurationInput) SetBucket(v string) *PutObjectLockConfigurationInput {
20679 func (s *PutObjectLockConfigurationInput) getBucket() (v string) {
20680 if s.Bucket == nil {
20686 // SetObjectLockConfiguration sets the ObjectLockConfiguration field's value.
20687 func (s *PutObjectLockConfigurationInput) SetObjectLockConfiguration(v *ObjectLockConfiguration) *PutObjectLockConfigurationInput {
20688 s.ObjectLockConfiguration = v
20692 // SetRequestPayer sets the RequestPayer field's value.
20693 func (s *PutObjectLockConfigurationInput) SetRequestPayer(v string) *PutObjectLockConfigurationInput {
20694 s.RequestPayer = &v
20698 // SetToken sets the Token field's value.
20699 func (s *PutObjectLockConfigurationInput) SetToken(v string) *PutObjectLockConfigurationInput {
20704 type PutObjectLockConfigurationOutput struct {
20705 _ struct{} `type:"structure"`
20707 // If present, indicates that the requester was successfully charged for the
20709 RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"`
20712 // String returns the string representation
20713 func (s PutObjectLockConfigurationOutput) String() string {
20714 return awsutil.Prettify(s)
20717 // GoString returns the string representation
20718 func (s PutObjectLockConfigurationOutput) GoString() string {
20722 // SetRequestCharged sets the RequestCharged field's value.
20723 func (s *PutObjectLockConfigurationOutput) SetRequestCharged(v string) *PutObjectLockConfigurationOutput {
20724 s.RequestCharged = &v
20728 type PutObjectOutput struct {
20729 _ struct{} `type:"structure"`
20731 // Entity tag for the uploaded object.
20732 ETag *string `location:"header" locationName:"ETag" type:"string"`
20734 // If the object expiration is configured, this will contain the expiration
20735 // date (expiry-date) and rule ID (rule-id). The value of rule-id is URL encoded.
20736 Expiration *string `location:"header" locationName:"x-amz-expiration" type:"string"`
20738 // If present, indicates that the requester was successfully charged for the
20740 RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"`
20742 // If server-side encryption with a customer-provided encryption key was requested,
20743 // the response will include this header confirming the encryption algorithm
20745 SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"`
20747 // If server-side encryption with a customer-provided encryption key was requested,
20748 // the response will include this header to provide round trip message integrity
20749 // verification of the customer-provided encryption key.
20750 SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"`
20752 // If present, specifies the ID of the AWS Key Management Service (KMS) master
20753 // encryption key that was used for the object.
20754 SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string" sensitive:"true"`
20756 // The Server-side encryption algorithm used when storing this object in S3
20757 // (e.g., AES256, aws:kms).
20758 ServerSideEncryption *string `location:"header" locationName:"x-amz-server-side-encryption" type:"string" enum:"ServerSideEncryption"`
20760 // Version of the object.
20761 VersionId *string `location:"header" locationName:"x-amz-version-id" type:"string"`
20764 // String returns the string representation
20765 func (s PutObjectOutput) String() string {
20766 return awsutil.Prettify(s)
20769 // GoString returns the string representation
20770 func (s PutObjectOutput) GoString() string {
20774 // SetETag sets the ETag field's value.
20775 func (s *PutObjectOutput) SetETag(v string) *PutObjectOutput {
20780 // SetExpiration sets the Expiration field's value.
20781 func (s *PutObjectOutput) SetExpiration(v string) *PutObjectOutput {
20786 // SetRequestCharged sets the RequestCharged field's value.
20787 func (s *PutObjectOutput) SetRequestCharged(v string) *PutObjectOutput {
20788 s.RequestCharged = &v
20792 // SetSSECustomerAlgorithm sets the SSECustomerAlgorithm field's value.
20793 func (s *PutObjectOutput) SetSSECustomerAlgorithm(v string) *PutObjectOutput {
20794 s.SSECustomerAlgorithm = &v
20798 // SetSSECustomerKeyMD5 sets the SSECustomerKeyMD5 field's value.
20799 func (s *PutObjectOutput) SetSSECustomerKeyMD5(v string) *PutObjectOutput {
20800 s.SSECustomerKeyMD5 = &v
20804 // SetSSEKMSKeyId sets the SSEKMSKeyId field's value.
20805 func (s *PutObjectOutput) SetSSEKMSKeyId(v string) *PutObjectOutput {
20810 // SetServerSideEncryption sets the ServerSideEncryption field's value.
20811 func (s *PutObjectOutput) SetServerSideEncryption(v string) *PutObjectOutput {
20812 s.ServerSideEncryption = &v
20816 // SetVersionId sets the VersionId field's value.
20817 func (s *PutObjectOutput) SetVersionId(v string) *PutObjectOutput {
20822 type PutObjectRetentionInput struct {
20823 _ struct{} `type:"structure" payload:"Retention"`
20825 // The bucket that contains the object you want to apply this Object Retention
20826 // configuration to.
20828 // Bucket is a required field
20829 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
20831 // Indicates whether this operation should bypass Governance-mode restrictions.j
20832 BypassGovernanceRetention *bool `location:"header" locationName:"x-amz-bypass-governance-retention" type:"boolean"`
20834 // The key name for the object that you want to apply this Object Retention
20835 // configuration to.
20837 // Key is a required field
20838 Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"`
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"`
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/"`
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"`
20854 // String returns the string representation
20855 func (s PutObjectRetentionInput) String() string {
20856 return awsutil.Prettify(s)
20859 // GoString returns the string representation
20860 func (s PutObjectRetentionInput) GoString() string {
20864 // Validate inspects the fields of the type to determine if they are valid.
20865 func (s *PutObjectRetentionInput) Validate() error {
20866 invalidParams := request.ErrInvalidParams{Context: "PutObjectRetentionInput"}
20867 if s.Bucket == nil {
20868 invalidParams.Add(request.NewErrParamRequired("Bucket"))
20870 if s.Bucket != nil && len(*s.Bucket) < 1 {
20871 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
20874 invalidParams.Add(request.NewErrParamRequired("Key"))
20876 if s.Key != nil && len(*s.Key) < 1 {
20877 invalidParams.Add(request.NewErrParamMinLen("Key", 1))
20880 if invalidParams.Len() > 0 {
20881 return invalidParams
20886 // SetBucket sets the Bucket field's value.
20887 func (s *PutObjectRetentionInput) SetBucket(v string) *PutObjectRetentionInput {
20892 func (s *PutObjectRetentionInput) getBucket() (v string) {
20893 if s.Bucket == nil {
20899 // SetBypassGovernanceRetention sets the BypassGovernanceRetention field's value.
20900 func (s *PutObjectRetentionInput) SetBypassGovernanceRetention(v bool) *PutObjectRetentionInput {
20901 s.BypassGovernanceRetention = &v
20905 // SetKey sets the Key field's value.
20906 func (s *PutObjectRetentionInput) SetKey(v string) *PutObjectRetentionInput {
20911 // SetRequestPayer sets the RequestPayer field's value.
20912 func (s *PutObjectRetentionInput) SetRequestPayer(v string) *PutObjectRetentionInput {
20913 s.RequestPayer = &v
20917 // SetRetention sets the Retention field's value.
20918 func (s *PutObjectRetentionInput) SetRetention(v *ObjectLockRetention) *PutObjectRetentionInput {
20923 // SetVersionId sets the VersionId field's value.
20924 func (s *PutObjectRetentionInput) SetVersionId(v string) *PutObjectRetentionInput {
20929 type PutObjectRetentionOutput struct {
20930 _ struct{} `type:"structure"`
20932 // If present, indicates that the requester was successfully charged for the
20934 RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"`
20937 // String returns the string representation
20938 func (s PutObjectRetentionOutput) String() string {
20939 return awsutil.Prettify(s)
20942 // GoString returns the string representation
20943 func (s PutObjectRetentionOutput) GoString() string {
20947 // SetRequestCharged sets the RequestCharged field's value.
20948 func (s *PutObjectRetentionOutput) SetRequestCharged(v string) *PutObjectRetentionOutput {
20949 s.RequestCharged = &v
20953 type PutObjectTaggingInput struct {
20954 _ struct{} `type:"structure" payload:"Tagging"`
20956 // Bucket is a required field
20957 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
20959 // Key is a required field
20960 Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"`
20962 // Tagging is a required field
20963 Tagging *Tagging `locationName:"Tagging" type:"structure" required:"true" xmlURI:"http://s3.amazonaws.com/doc/2006-03-01/"`
20965 VersionId *string `location:"querystring" locationName:"versionId" type:"string"`
20968 // String returns the string representation
20969 func (s PutObjectTaggingInput) String() string {
20970 return awsutil.Prettify(s)
20973 // GoString returns the string representation
20974 func (s PutObjectTaggingInput) GoString() string {
20978 // Validate inspects the fields of the type to determine if they are valid.
20979 func (s *PutObjectTaggingInput) Validate() error {
20980 invalidParams := request.ErrInvalidParams{Context: "PutObjectTaggingInput"}
20981 if s.Bucket == nil {
20982 invalidParams.Add(request.NewErrParamRequired("Bucket"))
20984 if s.Bucket != nil && len(*s.Bucket) < 1 {
20985 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
20988 invalidParams.Add(request.NewErrParamRequired("Key"))
20990 if s.Key != nil && len(*s.Key) < 1 {
20991 invalidParams.Add(request.NewErrParamMinLen("Key", 1))
20993 if s.Tagging == nil {
20994 invalidParams.Add(request.NewErrParamRequired("Tagging"))
20996 if s.Tagging != nil {
20997 if err := s.Tagging.Validate(); err != nil {
20998 invalidParams.AddNested("Tagging", err.(request.ErrInvalidParams))
21002 if invalidParams.Len() > 0 {
21003 return invalidParams
21008 // SetBucket sets the Bucket field's value.
21009 func (s *PutObjectTaggingInput) SetBucket(v string) *PutObjectTaggingInput {
21014 func (s *PutObjectTaggingInput) getBucket() (v string) {
21015 if s.Bucket == nil {
21021 // SetKey sets the Key field's value.
21022 func (s *PutObjectTaggingInput) SetKey(v string) *PutObjectTaggingInput {
21027 // SetTagging sets the Tagging field's value.
21028 func (s *PutObjectTaggingInput) SetTagging(v *Tagging) *PutObjectTaggingInput {
21033 // SetVersionId sets the VersionId field's value.
21034 func (s *PutObjectTaggingInput) SetVersionId(v string) *PutObjectTaggingInput {
21039 type PutObjectTaggingOutput struct {
21040 _ struct{} `type:"structure"`
21042 VersionId *string `location:"header" locationName:"x-amz-version-id" type:"string"`
21045 // String returns the string representation
21046 func (s PutObjectTaggingOutput) String() string {
21047 return awsutil.Prettify(s)
21050 // GoString returns the string representation
21051 func (s PutObjectTaggingOutput) GoString() string {
21055 // SetVersionId sets the VersionId field's value.
21056 func (s *PutObjectTaggingOutput) SetVersionId(v string) *PutObjectTaggingOutput {
21061 type PutPublicAccessBlockInput struct {
21062 _ struct{} `type:"structure" payload:"PublicAccessBlockConfiguration"`
21064 // The name of the Amazon S3 bucket whose PublicAccessBlock configuration you
21067 // Bucket is a required field
21068 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
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.
21076 // PublicAccessBlockConfiguration is a required field
21077 PublicAccessBlockConfiguration *PublicAccessBlockConfiguration `locationName:"PublicAccessBlockConfiguration" type:"structure" required:"true" xmlURI:"http://s3.amazonaws.com/doc/2006-03-01/"`
21080 // String returns the string representation
21081 func (s PutPublicAccessBlockInput) String() string {
21082 return awsutil.Prettify(s)
21085 // GoString returns the string representation
21086 func (s PutPublicAccessBlockInput) GoString() string {
21090 // Validate inspects the fields of the type to determine if they are valid.
21091 func (s *PutPublicAccessBlockInput) Validate() error {
21092 invalidParams := request.ErrInvalidParams{Context: "PutPublicAccessBlockInput"}
21093 if s.Bucket == nil {
21094 invalidParams.Add(request.NewErrParamRequired("Bucket"))
21096 if s.Bucket != nil && len(*s.Bucket) < 1 {
21097 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
21099 if s.PublicAccessBlockConfiguration == nil {
21100 invalidParams.Add(request.NewErrParamRequired("PublicAccessBlockConfiguration"))
21103 if invalidParams.Len() > 0 {
21104 return invalidParams
21109 // SetBucket sets the Bucket field's value.
21110 func (s *PutPublicAccessBlockInput) SetBucket(v string) *PutPublicAccessBlockInput {
21115 func (s *PutPublicAccessBlockInput) getBucket() (v string) {
21116 if s.Bucket == nil {
21122 // SetPublicAccessBlockConfiguration sets the PublicAccessBlockConfiguration field's value.
21123 func (s *PutPublicAccessBlockInput) SetPublicAccessBlockConfiguration(v *PublicAccessBlockConfiguration) *PutPublicAccessBlockInput {
21124 s.PublicAccessBlockConfiguration = v
21128 type PutPublicAccessBlockOutput struct {
21129 _ struct{} `type:"structure"`
21132 // String returns the string representation
21133 func (s PutPublicAccessBlockOutput) String() string {
21134 return awsutil.Prettify(s)
21137 // GoString returns the string representation
21138 func (s PutPublicAccessBlockOutput) GoString() string {
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.
21145 type QueueConfiguration struct {
21146 _ struct{} `type:"structure"`
21148 // Events is a required field
21149 Events []*string `locationName:"Event" type:"list" flattened:"true" required:"true"`
21151 // A container for object key name filtering rules. For information about key
21152 // name filtering, see Configuring Event Notifications (https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html)
21153 // in the Amazon Simple Storage Service Developer Guide.
21154 Filter *NotificationConfigurationFilter `type:"structure"`
21156 // An optional unique identifier for configurations in a notification configuration.
21157 // If you don't provide one, Amazon S3 will assign an ID.
21158 Id *string `type:"string"`
21160 // The Amazon Resource Name (ARN) of the Amazon SQS queue to which Amazon S3
21161 // will publish a message when it detects events of the specified type.
21163 // QueueArn is a required field
21164 QueueArn *string `locationName:"Queue" type:"string" required:"true"`
21167 // String returns the string representation
21168 func (s QueueConfiguration) String() string {
21169 return awsutil.Prettify(s)
21172 // GoString returns the string representation
21173 func (s QueueConfiguration) GoString() string {
21177 // Validate inspects the fields of the type to determine if they are valid.
21178 func (s *QueueConfiguration) Validate() error {
21179 invalidParams := request.ErrInvalidParams{Context: "QueueConfiguration"}
21180 if s.Events == nil {
21181 invalidParams.Add(request.NewErrParamRequired("Events"))
21183 if s.QueueArn == nil {
21184 invalidParams.Add(request.NewErrParamRequired("QueueArn"))
21187 if invalidParams.Len() > 0 {
21188 return invalidParams
21193 // SetEvents sets the Events field's value.
21194 func (s *QueueConfiguration) SetEvents(v []*string) *QueueConfiguration {
21199 // SetFilter sets the Filter field's value.
21200 func (s *QueueConfiguration) SetFilter(v *NotificationConfigurationFilter) *QueueConfiguration {
21205 // SetId sets the Id field's value.
21206 func (s *QueueConfiguration) SetId(v string) *QueueConfiguration {
21211 // SetQueueArn sets the QueueArn field's value.
21212 func (s *QueueConfiguration) SetQueueArn(v string) *QueueConfiguration {
21217 type QueueConfigurationDeprecated struct {
21218 _ struct{} `type:"structure"`
21220 // The bucket event for which to send notifications.
21222 // Deprecated: Event has been deprecated
21223 Event *string `deprecated:"true" type:"string" enum:"Event"`
21225 Events []*string `locationName:"Event" type:"list" flattened:"true"`
21227 // An optional unique identifier for configurations in a notification configuration.
21228 // If you don't provide one, Amazon S3 will assign an ID.
21229 Id *string `type:"string"`
21231 Queue *string `type:"string"`
21234 // String returns the string representation
21235 func (s QueueConfigurationDeprecated) String() string {
21236 return awsutil.Prettify(s)
21239 // GoString returns the string representation
21240 func (s QueueConfigurationDeprecated) GoString() string {
21244 // SetEvent sets the Event field's value.
21245 func (s *QueueConfigurationDeprecated) SetEvent(v string) *QueueConfigurationDeprecated {
21250 // SetEvents sets the Events field's value.
21251 func (s *QueueConfigurationDeprecated) SetEvents(v []*string) *QueueConfigurationDeprecated {
21256 // SetId sets the Id field's value.
21257 func (s *QueueConfigurationDeprecated) SetId(v string) *QueueConfigurationDeprecated {
21262 // SetQueue sets the Queue field's value.
21263 func (s *QueueConfigurationDeprecated) SetQueue(v string) *QueueConfigurationDeprecated {
21268 type RecordsEvent struct {
21269 _ struct{} `locationName:"RecordsEvent" type:"structure" payload:"Payload"`
21271 // The byte array of partial, one or more result records.
21273 // Payload is automatically base64 encoded/decoded by the SDK.
21274 Payload []byte `type:"blob"`
21277 // String returns the string representation
21278 func (s RecordsEvent) String() string {
21279 return awsutil.Prettify(s)
21282 // GoString returns the string representation
21283 func (s RecordsEvent) GoString() string {
21287 // SetPayload sets the Payload field's value.
21288 func (s *RecordsEvent) SetPayload(v []byte) *RecordsEvent {
21293 // The RecordsEvent is and event in the SelectObjectContentEventStream group of events.
21294 func (s *RecordsEvent) eventSelectObjectContentEventStream() {}
21296 // UnmarshalEvent unmarshals the EventStream Message into the RecordsEvent value.
21297 // This method is only used internally within the SDK's EventStream handling.
21298 func (s *RecordsEvent) UnmarshalEvent(
21299 payloadUnmarshaler protocol.PayloadUnmarshaler,
21300 msg eventstream.Message,
21302 s.Payload = make([]byte, len(msg.Payload))
21303 copy(s.Payload, msg.Payload)
21307 type Redirect struct {
21308 _ struct{} `type:"structure"`
21310 // The host name to use in the redirect request.
21311 HostName *string `type:"string"`
21313 // The HTTP redirect code to use on the response. Not required if one of the
21314 // siblings is present.
21315 HttpRedirectCode *string `type:"string"`
21317 // Protocol to use (http, https) when redirecting requests. The default is the
21318 // protocol that is used in the original request.
21319 Protocol *string `type:"string" enum:"Protocol"`
21321 // The object key prefix to use in the redirect request. For example, to redirect
21322 // requests for all pages with prefix docs/ (objects in the docs/ folder) to
21323 // documents/, you can set a condition block with KeyPrefixEquals set to docs/
21324 // and in the Redirect set ReplaceKeyPrefixWith to /documents. Not required
21325 // if one of the siblings is present. Can be present only if ReplaceKeyWith
21326 // is not provided.
21327 ReplaceKeyPrefixWith *string `type:"string"`
21329 // The specific object key to use in the redirect request. For example, redirect
21330 // request to error.html. Not required if one of the sibling is present. Can
21331 // be present only if ReplaceKeyPrefixWith is not provided.
21332 ReplaceKeyWith *string `type:"string"`
21335 // String returns the string representation
21336 func (s Redirect) String() string {
21337 return awsutil.Prettify(s)
21340 // GoString returns the string representation
21341 func (s Redirect) GoString() string {
21345 // SetHostName sets the HostName field's value.
21346 func (s *Redirect) SetHostName(v string) *Redirect {
21351 // SetHttpRedirectCode sets the HttpRedirectCode field's value.
21352 func (s *Redirect) SetHttpRedirectCode(v string) *Redirect {
21353 s.HttpRedirectCode = &v
21357 // SetProtocol sets the Protocol field's value.
21358 func (s *Redirect) SetProtocol(v string) *Redirect {
21363 // SetReplaceKeyPrefixWith sets the ReplaceKeyPrefixWith field's value.
21364 func (s *Redirect) SetReplaceKeyPrefixWith(v string) *Redirect {
21365 s.ReplaceKeyPrefixWith = &v
21369 // SetReplaceKeyWith sets the ReplaceKeyWith field's value.
21370 func (s *Redirect) SetReplaceKeyWith(v string) *Redirect {
21371 s.ReplaceKeyWith = &v
21375 type RedirectAllRequestsTo struct {
21376 _ struct{} `type:"structure"`
21378 // Name of the host where requests will be redirected.
21380 // HostName is a required field
21381 HostName *string `type:"string" required:"true"`
21383 // Protocol to use (http, https) when redirecting requests. The default is the
21384 // protocol that is used in the original request.
21385 Protocol *string `type:"string" enum:"Protocol"`
21388 // String returns the string representation
21389 func (s RedirectAllRequestsTo) String() string {
21390 return awsutil.Prettify(s)
21393 // GoString returns the string representation
21394 func (s RedirectAllRequestsTo) GoString() string {
21398 // Validate inspects the fields of the type to determine if they are valid.
21399 func (s *RedirectAllRequestsTo) Validate() error {
21400 invalidParams := request.ErrInvalidParams{Context: "RedirectAllRequestsTo"}
21401 if s.HostName == nil {
21402 invalidParams.Add(request.NewErrParamRequired("HostName"))
21405 if invalidParams.Len() > 0 {
21406 return invalidParams
21411 // SetHostName sets the HostName field's value.
21412 func (s *RedirectAllRequestsTo) SetHostName(v string) *RedirectAllRequestsTo {
21417 // SetProtocol sets the Protocol field's value.
21418 func (s *RedirectAllRequestsTo) SetProtocol(v string) *RedirectAllRequestsTo {
21423 // A container for replication rules. You can add up to 1,000 rules. The maximum
21424 // size of a replication configuration is 2 MB.
21425 type ReplicationConfiguration struct {
21426 _ struct{} `type:"structure"`
21428 // The Amazon Resource Name (ARN) of the AWS Identity and Access Management
21429 // (IAM) role that Amazon S3 can assume when replicating the objects.
21431 // Role is a required field
21432 Role *string `type:"string" required:"true"`
21434 // A container for one or more replication rules. A replication configuration
21435 // must have at least one rule and can contain a maximum of 1,000 rules.
21437 // Rules is a required field
21438 Rules []*ReplicationRule `locationName:"Rule" type:"list" flattened:"true" required:"true"`
21441 // String returns the string representation
21442 func (s ReplicationConfiguration) String() string {
21443 return awsutil.Prettify(s)
21446 // GoString returns the string representation
21447 func (s ReplicationConfiguration) GoString() string {
21451 // Validate inspects the fields of the type to determine if they are valid.
21452 func (s *ReplicationConfiguration) Validate() error {
21453 invalidParams := request.ErrInvalidParams{Context: "ReplicationConfiguration"}
21455 invalidParams.Add(request.NewErrParamRequired("Role"))
21457 if s.Rules == nil {
21458 invalidParams.Add(request.NewErrParamRequired("Rules"))
21460 if s.Rules != nil {
21461 for i, v := range s.Rules {
21465 if err := v.Validate(); err != nil {
21466 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Rules", i), err.(request.ErrInvalidParams))
21471 if invalidParams.Len() > 0 {
21472 return invalidParams
21477 // SetRole sets the Role field's value.
21478 func (s *ReplicationConfiguration) SetRole(v string) *ReplicationConfiguration {
21483 // SetRules sets the Rules field's value.
21484 func (s *ReplicationConfiguration) SetRules(v []*ReplicationRule) *ReplicationConfiguration {
21489 // A container for information about a specific replication rule.
21490 type ReplicationRule struct {
21491 _ struct{} `type:"structure"`
21493 // Specifies whether Amazon S3 should replicate delete makers.
21494 DeleteMarkerReplication *DeleteMarkerReplication `type:"structure"`
21496 // A container for information about the replication destination.
21498 // Destination is a required field
21499 Destination *Destination `type:"structure" required:"true"`
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"`
21505 // A unique identifier for the rule. The maximum value is 255 characters.
21506 ID *string `type:"string"`
21508 // An object keyname prefix that identifies the object or objects to which the
21509 // rule applies. The maximum prefix length is 1,024 characters.
21511 // Deprecated: Prefix has been deprecated
21512 Prefix *string `deprecated:"true" type:"string"`
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:
21519 // * Same object quality prefix based filter criteria If prefixes you specified
21520 // in multiple rules overlap
21522 // * Same object qualify tag based filter criteria specified in multiple
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"`
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).
21535 // If you want Amazon S3 to replicate objects created with server-side encryption
21536 // using AWS KMS-Managed Keys.
21537 SourceSelectionCriteria *SourceSelectionCriteria `type:"structure"`
21539 // If status isn't enabled, the rule is ignored.
21541 // Status is a required field
21542 Status *string `type:"string" required:"true" enum:"ReplicationRuleStatus"`
21545 // String returns the string representation
21546 func (s ReplicationRule) String() string {
21547 return awsutil.Prettify(s)
21550 // GoString returns the string representation
21551 func (s ReplicationRule) GoString() string {
21555 // Validate inspects the fields of the type to determine if they are valid.
21556 func (s *ReplicationRule) Validate() error {
21557 invalidParams := request.ErrInvalidParams{Context: "ReplicationRule"}
21558 if s.Destination == nil {
21559 invalidParams.Add(request.NewErrParamRequired("Destination"))
21561 if s.Status == nil {
21562 invalidParams.Add(request.NewErrParamRequired("Status"))
21564 if s.Destination != nil {
21565 if err := s.Destination.Validate(); err != nil {
21566 invalidParams.AddNested("Destination", err.(request.ErrInvalidParams))
21569 if s.Filter != nil {
21570 if err := s.Filter.Validate(); err != nil {
21571 invalidParams.AddNested("Filter", err.(request.ErrInvalidParams))
21574 if s.SourceSelectionCriteria != nil {
21575 if err := s.SourceSelectionCriteria.Validate(); err != nil {
21576 invalidParams.AddNested("SourceSelectionCriteria", err.(request.ErrInvalidParams))
21580 if invalidParams.Len() > 0 {
21581 return invalidParams
21586 // SetDeleteMarkerReplication sets the DeleteMarkerReplication field's value.
21587 func (s *ReplicationRule) SetDeleteMarkerReplication(v *DeleteMarkerReplication) *ReplicationRule {
21588 s.DeleteMarkerReplication = v
21592 // SetDestination sets the Destination field's value.
21593 func (s *ReplicationRule) SetDestination(v *Destination) *ReplicationRule {
21598 // SetFilter sets the Filter field's value.
21599 func (s *ReplicationRule) SetFilter(v *ReplicationRuleFilter) *ReplicationRule {
21604 // SetID sets the ID field's value.
21605 func (s *ReplicationRule) SetID(v string) *ReplicationRule {
21610 // SetPrefix sets the Prefix field's value.
21611 func (s *ReplicationRule) SetPrefix(v string) *ReplicationRule {
21616 // SetPriority sets the Priority field's value.
21617 func (s *ReplicationRule) SetPriority(v int64) *ReplicationRule {
21622 // SetSourceSelectionCriteria sets the SourceSelectionCriteria field's value.
21623 func (s *ReplicationRule) SetSourceSelectionCriteria(v *SourceSelectionCriteria) *ReplicationRule {
21624 s.SourceSelectionCriteria = v
21628 // SetStatus sets the Status field's value.
21629 func (s *ReplicationRule) SetStatus(v string) *ReplicationRule {
21634 type ReplicationRuleAndOperator struct {
21635 _ struct{} `type:"structure"`
21637 Prefix *string `type:"string"`
21639 Tags []*Tag `locationName:"Tag" locationNameList:"Tag" type:"list" flattened:"true"`
21642 // String returns the string representation
21643 func (s ReplicationRuleAndOperator) String() string {
21644 return awsutil.Prettify(s)
21647 // GoString returns the string representation
21648 func (s ReplicationRuleAndOperator) GoString() string {
21652 // Validate inspects the fields of the type to determine if they are valid.
21653 func (s *ReplicationRuleAndOperator) Validate() error {
21654 invalidParams := request.ErrInvalidParams{Context: "ReplicationRuleAndOperator"}
21656 for i, v := range s.Tags {
21660 if err := v.Validate(); err != nil {
21661 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
21666 if invalidParams.Len() > 0 {
21667 return invalidParams
21672 // SetPrefix sets the Prefix field's value.
21673 func (s *ReplicationRuleAndOperator) SetPrefix(v string) *ReplicationRuleAndOperator {
21678 // SetTags sets the Tags field's value.
21679 func (s *ReplicationRuleAndOperator) SetTags(v []*Tag) *ReplicationRuleAndOperator {
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.
21686 type ReplicationRuleFilter struct {
21687 _ struct{} `type:"structure"`
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:
21693 // * If you specify both a Prefix and a Tag filter, wrap these filters in
21696 // * If you specify a filter based on multiple tags, wrap the Tag elements
21698 And *ReplicationRuleAndOperator `type:"structure"`
21700 // An object keyname prefix that identifies the subset of objects to which the
21702 Prefix *string `type:"string"`
21704 // A container for specifying a tag key and value.
21706 // The rule applies only to objects that have the tag in their tag set.
21707 Tag *Tag `type:"structure"`
21710 // String returns the string representation
21711 func (s ReplicationRuleFilter) String() string {
21712 return awsutil.Prettify(s)
21715 // GoString returns the string representation
21716 func (s ReplicationRuleFilter) GoString() string {
21720 // Validate inspects the fields of the type to determine if they are valid.
21721 func (s *ReplicationRuleFilter) Validate() error {
21722 invalidParams := request.ErrInvalidParams{Context: "ReplicationRuleFilter"}
21724 if err := s.And.Validate(); err != nil {
21725 invalidParams.AddNested("And", err.(request.ErrInvalidParams))
21729 if err := s.Tag.Validate(); err != nil {
21730 invalidParams.AddNested("Tag", err.(request.ErrInvalidParams))
21734 if invalidParams.Len() > 0 {
21735 return invalidParams
21740 // SetAnd sets the And field's value.
21741 func (s *ReplicationRuleFilter) SetAnd(v *ReplicationRuleAndOperator) *ReplicationRuleFilter {
21746 // SetPrefix sets the Prefix field's value.
21747 func (s *ReplicationRuleFilter) SetPrefix(v string) *ReplicationRuleFilter {
21752 // SetTag sets the Tag field's value.
21753 func (s *ReplicationRuleFilter) SetTag(v *Tag) *ReplicationRuleFilter {
21758 type RequestPaymentConfiguration struct {
21759 _ struct{} `type:"structure"`
21761 // Specifies who pays for the download and request fees.
21763 // Payer is a required field
21764 Payer *string `type:"string" required:"true" enum:"Payer"`
21767 // String returns the string representation
21768 func (s RequestPaymentConfiguration) String() string {
21769 return awsutil.Prettify(s)
21772 // GoString returns the string representation
21773 func (s RequestPaymentConfiguration) GoString() string {
21777 // Validate inspects the fields of the type to determine if they are valid.
21778 func (s *RequestPaymentConfiguration) Validate() error {
21779 invalidParams := request.ErrInvalidParams{Context: "RequestPaymentConfiguration"}
21780 if s.Payer == nil {
21781 invalidParams.Add(request.NewErrParamRequired("Payer"))
21784 if invalidParams.Len() > 0 {
21785 return invalidParams
21790 // SetPayer sets the Payer field's value.
21791 func (s *RequestPaymentConfiguration) SetPayer(v string) *RequestPaymentConfiguration {
21796 type RequestProgress struct {
21797 _ struct{} `type:"structure"`
21799 // Specifies whether periodic QueryProgress frames should be sent. Valid values:
21800 // TRUE, FALSE. Default value: FALSE.
21801 Enabled *bool `type:"boolean"`
21804 // String returns the string representation
21805 func (s RequestProgress) String() string {
21806 return awsutil.Prettify(s)
21809 // GoString returns the string representation
21810 func (s RequestProgress) GoString() string {
21814 // SetEnabled sets the Enabled field's value.
21815 func (s *RequestProgress) SetEnabled(v bool) *RequestProgress {
21820 type RestoreObjectInput struct {
21821 _ struct{} `type:"structure" payload:"RestoreRequest"`
21823 // Bucket is a required field
21824 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
21826 // Key is a required field
21827 Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"`
21829 // Confirms that the requester knows that she or he will be charged for the
21830 // request. Bucket owners need not specify this parameter in their requests.
21831 // Documentation on downloading objects from requester pays buckets can be found
21832 // at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
21833 RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
21835 // Container for restore job parameters.
21836 RestoreRequest *RestoreRequest `locationName:"RestoreRequest" type:"structure" xmlURI:"http://s3.amazonaws.com/doc/2006-03-01/"`
21838 VersionId *string `location:"querystring" locationName:"versionId" type:"string"`
21841 // String returns the string representation
21842 func (s RestoreObjectInput) String() string {
21843 return awsutil.Prettify(s)
21846 // GoString returns the string representation
21847 func (s RestoreObjectInput) GoString() string {
21851 // Validate inspects the fields of the type to determine if they are valid.
21852 func (s *RestoreObjectInput) Validate() error {
21853 invalidParams := request.ErrInvalidParams{Context: "RestoreObjectInput"}
21854 if s.Bucket == nil {
21855 invalidParams.Add(request.NewErrParamRequired("Bucket"))
21857 if s.Bucket != nil && len(*s.Bucket) < 1 {
21858 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
21861 invalidParams.Add(request.NewErrParamRequired("Key"))
21863 if s.Key != nil && len(*s.Key) < 1 {
21864 invalidParams.Add(request.NewErrParamMinLen("Key", 1))
21866 if s.RestoreRequest != nil {
21867 if err := s.RestoreRequest.Validate(); err != nil {
21868 invalidParams.AddNested("RestoreRequest", err.(request.ErrInvalidParams))
21872 if invalidParams.Len() > 0 {
21873 return invalidParams
21878 // SetBucket sets the Bucket field's value.
21879 func (s *RestoreObjectInput) SetBucket(v string) *RestoreObjectInput {
21884 func (s *RestoreObjectInput) getBucket() (v string) {
21885 if s.Bucket == nil {
21891 // SetKey sets the Key field's value.
21892 func (s *RestoreObjectInput) SetKey(v string) *RestoreObjectInput {
21897 // SetRequestPayer sets the RequestPayer field's value.
21898 func (s *RestoreObjectInput) SetRequestPayer(v string) *RestoreObjectInput {
21899 s.RequestPayer = &v
21903 // SetRestoreRequest sets the RestoreRequest field's value.
21904 func (s *RestoreObjectInput) SetRestoreRequest(v *RestoreRequest) *RestoreObjectInput {
21905 s.RestoreRequest = v
21909 // SetVersionId sets the VersionId field's value.
21910 func (s *RestoreObjectInput) SetVersionId(v string) *RestoreObjectInput {
21915 type RestoreObjectOutput struct {
21916 _ struct{} `type:"structure"`
21918 // If present, indicates that the requester was successfully charged for the
21920 RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"`
21922 // Indicates the path in the provided S3 output location where Select results
21923 // will be restored to.
21924 RestoreOutputPath *string `location:"header" locationName:"x-amz-restore-output-path" type:"string"`
21927 // String returns the string representation
21928 func (s RestoreObjectOutput) String() string {
21929 return awsutil.Prettify(s)
21932 // GoString returns the string representation
21933 func (s RestoreObjectOutput) GoString() string {
21937 // SetRequestCharged sets the RequestCharged field's value.
21938 func (s *RestoreObjectOutput) SetRequestCharged(v string) *RestoreObjectOutput {
21939 s.RequestCharged = &v
21943 // SetRestoreOutputPath sets the RestoreOutputPath field's value.
21944 func (s *RestoreObjectOutput) SetRestoreOutputPath(v string) *RestoreObjectOutput {
21945 s.RestoreOutputPath = &v
21949 // Container for restore job parameters.
21950 type RestoreRequest struct {
21951 _ struct{} `type:"structure"`
21953 // Lifetime of the active copy in days. Do not use with restores that specify
21955 Days *int64 `type:"integer"`
21957 // The optional description for the job.
21958 Description *string `type:"string"`
21960 // Glacier related parameters pertaining to this job. Do not use with restores
21961 // that specify OutputLocation.
21962 GlacierJobParameters *GlacierJobParameters `type:"structure"`
21964 // Describes the location where the restore job's output is stored.
21965 OutputLocation *OutputLocation `type:"structure"`
21967 // Describes the parameters for Select job types.
21968 SelectParameters *SelectParameters `type:"structure"`
21970 // Glacier retrieval tier at which the restore will be processed.
21971 Tier *string `type:"string" enum:"Tier"`
21973 // Type of restore request.
21974 Type *string `type:"string" enum:"RestoreRequestType"`
21977 // String returns the string representation
21978 func (s RestoreRequest) String() string {
21979 return awsutil.Prettify(s)
21982 // GoString returns the string representation
21983 func (s RestoreRequest) GoString() string {
21987 // Validate inspects the fields of the type to determine if they are valid.
21988 func (s *RestoreRequest) Validate() error {
21989 invalidParams := request.ErrInvalidParams{Context: "RestoreRequest"}
21990 if s.GlacierJobParameters != nil {
21991 if err := s.GlacierJobParameters.Validate(); err != nil {
21992 invalidParams.AddNested("GlacierJobParameters", err.(request.ErrInvalidParams))
21995 if s.OutputLocation != nil {
21996 if err := s.OutputLocation.Validate(); err != nil {
21997 invalidParams.AddNested("OutputLocation", err.(request.ErrInvalidParams))
22000 if s.SelectParameters != nil {
22001 if err := s.SelectParameters.Validate(); err != nil {
22002 invalidParams.AddNested("SelectParameters", err.(request.ErrInvalidParams))
22006 if invalidParams.Len() > 0 {
22007 return invalidParams
22012 // SetDays sets the Days field's value.
22013 func (s *RestoreRequest) SetDays(v int64) *RestoreRequest {
22018 // SetDescription sets the Description field's value.
22019 func (s *RestoreRequest) SetDescription(v string) *RestoreRequest {
22024 // SetGlacierJobParameters sets the GlacierJobParameters field's value.
22025 func (s *RestoreRequest) SetGlacierJobParameters(v *GlacierJobParameters) *RestoreRequest {
22026 s.GlacierJobParameters = v
22030 // SetOutputLocation sets the OutputLocation field's value.
22031 func (s *RestoreRequest) SetOutputLocation(v *OutputLocation) *RestoreRequest {
22032 s.OutputLocation = v
22036 // SetSelectParameters sets the SelectParameters field's value.
22037 func (s *RestoreRequest) SetSelectParameters(v *SelectParameters) *RestoreRequest {
22038 s.SelectParameters = v
22042 // SetTier sets the Tier field's value.
22043 func (s *RestoreRequest) SetTier(v string) *RestoreRequest {
22048 // SetType sets the Type field's value.
22049 func (s *RestoreRequest) SetType(v string) *RestoreRequest {
22054 type RoutingRule struct {
22055 _ struct{} `type:"structure"`
22057 // A container for describing a condition that must be met for the specified
22058 // redirect to apply. For example, 1. If request is for pages in the /docs folder,
22059 // redirect to the /documents folder. 2. If request results in HTTP error 4xx,
22060 // redirect request to another host where you might process the error.
22061 Condition *Condition `type:"structure"`
22063 // Container for redirect information. You can redirect requests to another
22064 // host, to another page, or with another protocol. In the event of an error,
22065 // you can specify a different error code to return.
22067 // Redirect is a required field
22068 Redirect *Redirect `type:"structure" required:"true"`
22071 // String returns the string representation
22072 func (s RoutingRule) String() string {
22073 return awsutil.Prettify(s)
22076 // GoString returns the string representation
22077 func (s RoutingRule) GoString() string {
22081 // Validate inspects the fields of the type to determine if they are valid.
22082 func (s *RoutingRule) Validate() error {
22083 invalidParams := request.ErrInvalidParams{Context: "RoutingRule"}
22084 if s.Redirect == nil {
22085 invalidParams.Add(request.NewErrParamRequired("Redirect"))
22088 if invalidParams.Len() > 0 {
22089 return invalidParams
22094 // SetCondition sets the Condition field's value.
22095 func (s *RoutingRule) SetCondition(v *Condition) *RoutingRule {
22100 // SetRedirect sets the Redirect field's value.
22101 func (s *RoutingRule) SetRedirect(v *Redirect) *RoutingRule {
22107 _ struct{} `type:"structure"`
22109 // Specifies the days since the initiation of an Incomplete Multipart Upload
22110 // that Lifecycle will wait before permanently removing all parts of the upload.
22111 AbortIncompleteMultipartUpload *AbortIncompleteMultipartUpload `type:"structure"`
22113 Expiration *LifecycleExpiration `type:"structure"`
22115 // Unique identifier for the rule. The value cannot be longer than 255 characters.
22116 ID *string `type:"string"`
22118 // Specifies when noncurrent object versions expire. Upon expiration, Amazon
22119 // S3 permanently deletes the noncurrent object versions. You set this lifecycle
22120 // configuration action on a bucket that has versioning enabled (or suspended)
22121 // to request that Amazon S3 delete noncurrent object versions at a specific
22122 // period in the object's lifetime.
22123 NoncurrentVersionExpiration *NoncurrentVersionExpiration `type:"structure"`
22125 // Container for the transition rule that describes when noncurrent objects
22126 // transition to the STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER or
22127 // DEEP_ARCHIVE storage class. If your bucket is versioning-enabled (or versioning
22128 // is suspended), you can set this action to request that Amazon S3 transition
22129 // noncurrent object versions to the STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING,
22130 // GLACIER or DEEP_ARCHIVE storage class at a specific period in the object's
22132 NoncurrentVersionTransition *NoncurrentVersionTransition `type:"structure"`
22134 // Prefix identifying one or more objects to which the rule applies.
22136 // Prefix is a required field
22137 Prefix *string `type:"string" required:"true"`
22139 // If 'Enabled', the rule is currently being applied. If 'Disabled', the rule
22140 // is not currently being applied.
22142 // Status is a required field
22143 Status *string `type:"string" required:"true" enum:"ExpirationStatus"`
22145 Transition *Transition `type:"structure"`
22148 // String returns the string representation
22149 func (s Rule) String() string {
22150 return awsutil.Prettify(s)
22153 // GoString returns the string representation
22154 func (s Rule) GoString() string {
22158 // Validate inspects the fields of the type to determine if they are valid.
22159 func (s *Rule) Validate() error {
22160 invalidParams := request.ErrInvalidParams{Context: "Rule"}
22161 if s.Prefix == nil {
22162 invalidParams.Add(request.NewErrParamRequired("Prefix"))
22164 if s.Status == nil {
22165 invalidParams.Add(request.NewErrParamRequired("Status"))
22168 if invalidParams.Len() > 0 {
22169 return invalidParams
22174 // SetAbortIncompleteMultipartUpload sets the AbortIncompleteMultipartUpload field's value.
22175 func (s *Rule) SetAbortIncompleteMultipartUpload(v *AbortIncompleteMultipartUpload) *Rule {
22176 s.AbortIncompleteMultipartUpload = v
22180 // SetExpiration sets the Expiration field's value.
22181 func (s *Rule) SetExpiration(v *LifecycleExpiration) *Rule {
22186 // SetID sets the ID field's value.
22187 func (s *Rule) SetID(v string) *Rule {
22192 // SetNoncurrentVersionExpiration sets the NoncurrentVersionExpiration field's value.
22193 func (s *Rule) SetNoncurrentVersionExpiration(v *NoncurrentVersionExpiration) *Rule {
22194 s.NoncurrentVersionExpiration = v
22198 // SetNoncurrentVersionTransition sets the NoncurrentVersionTransition field's value.
22199 func (s *Rule) SetNoncurrentVersionTransition(v *NoncurrentVersionTransition) *Rule {
22200 s.NoncurrentVersionTransition = v
22204 // SetPrefix sets the Prefix field's value.
22205 func (s *Rule) SetPrefix(v string) *Rule {
22210 // SetStatus sets the Status field's value.
22211 func (s *Rule) SetStatus(v string) *Rule {
22216 // SetTransition sets the Transition field's value.
22217 func (s *Rule) SetTransition(v *Transition) *Rule {
22222 // Specifies the use of SSE-KMS to encrypt delivered Inventory reports.
22223 type SSEKMS struct {
22224 _ struct{} `locationName:"SSE-KMS" type:"structure"`
22226 // Specifies the ID of the AWS Key Management Service (KMS) master encryption
22227 // key to use for encrypting Inventory reports.
22229 // KeyId is a required field
22230 KeyId *string `type:"string" required:"true" sensitive:"true"`
22233 // String returns the string representation
22234 func (s SSEKMS) String() string {
22235 return awsutil.Prettify(s)
22238 // GoString returns the string representation
22239 func (s SSEKMS) GoString() string {
22243 // Validate inspects the fields of the type to determine if they are valid.
22244 func (s *SSEKMS) Validate() error {
22245 invalidParams := request.ErrInvalidParams{Context: "SSEKMS"}
22246 if s.KeyId == nil {
22247 invalidParams.Add(request.NewErrParamRequired("KeyId"))
22250 if invalidParams.Len() > 0 {
22251 return invalidParams
22256 // SetKeyId sets the KeyId field's value.
22257 func (s *SSEKMS) SetKeyId(v string) *SSEKMS {
22262 // Specifies the use of SSE-S3 to encrypt delivered Inventory reports.
22263 type SSES3 struct {
22264 _ struct{} `locationName:"SSE-S3" type:"structure"`
22267 // String returns the string representation
22268 func (s SSES3) String() string {
22269 return awsutil.Prettify(s)
22272 // GoString returns the string representation
22273 func (s SSES3) GoString() string {
22277 // SelectObjectContentEventStream provides handling of EventStreams for
22278 // the SelectObjectContent API.
22280 // Use this type to receive SelectObjectContentEventStream events. The events
22281 // can be read from the Events channel member.
22283 // The events that can be received are:
22285 // * ContinuationEvent
22290 type SelectObjectContentEventStream struct {
22291 // Reader is the EventStream reader for the SelectObjectContentEventStream
22292 // events. This value is automatically set by the SDK when the API call is made
22293 // Use this member when unit testing your code with the SDK to mock out the
22294 // EventStream Reader.
22296 // Must not be nil.
22297 Reader SelectObjectContentEventStreamReader
22299 // StreamCloser is the io.Closer for the EventStream connection. For HTTP
22300 // EventStream this is the response Body. The stream will be closed when
22301 // the Close method of the EventStream is called.
22302 StreamCloser io.Closer
22305 // Close closes the EventStream. This will also cause the Events channel to be
22306 // closed. You can use the closing of the Events channel to terminate your
22307 // application's read from the API's EventStream.
22309 // Will close the underlying EventStream reader. For EventStream over HTTP
22310 // connection this will also close the HTTP connection.
22312 // Close must be called when done using the EventStream API. Not calling Close
22313 // may result in resource leaks.
22314 func (es *SelectObjectContentEventStream) Close() (err error) {
22319 // Err returns any error that occurred while reading EventStream Events from
22320 // the service API's response. Returns nil if there were no errors.
22321 func (es *SelectObjectContentEventStream) Err() error {
22322 if err := es.Reader.Err(); err != nil {
22325 es.StreamCloser.Close()
22330 // Events returns a channel to read EventStream Events from the
22331 // SelectObjectContent API.
22333 // These events are:
22335 // * ContinuationEvent
22340 func (es *SelectObjectContentEventStream) Events() <-chan SelectObjectContentEventStreamEvent {
22341 return es.Reader.Events()
22344 // SelectObjectContentEventStreamEvent groups together all EventStream
22345 // events read from the SelectObjectContent API.
22347 // These events are:
22349 // * ContinuationEvent
22354 type SelectObjectContentEventStreamEvent interface {
22355 eventSelectObjectContentEventStream()
22358 // SelectObjectContentEventStreamReader provides the interface for reading EventStream
22359 // Events from the SelectObjectContent API. The
22360 // default implementation for this interface will be SelectObjectContentEventStream.
22362 // The reader's Close method must allow multiple concurrent calls.
22364 // These events are:
22366 // * ContinuationEvent
22371 type SelectObjectContentEventStreamReader interface {
22372 // Returns a channel of events as they are read from the event stream.
22373 Events() <-chan SelectObjectContentEventStreamEvent
22375 // Close will close the underlying event stream reader. For event stream over
22376 // HTTP this will also close the HTTP connection.
22379 // Returns any error that has occurred while reading from the event stream.
22383 type readSelectObjectContentEventStream struct {
22384 eventReader *eventstreamapi.EventReader
22385 stream chan SelectObjectContentEventStreamEvent
22386 errVal atomic.Value
22389 closeOnce sync.Once
22392 func newReadSelectObjectContentEventStream(
22393 reader io.ReadCloser,
22394 unmarshalers request.HandlerList,
22396 logLevel aws.LogLevelType,
22397 ) *readSelectObjectContentEventStream {
22398 r := &readSelectObjectContentEventStream{
22399 stream: make(chan SelectObjectContentEventStreamEvent),
22400 done: make(chan struct{}),
22403 r.eventReader = eventstreamapi.NewEventReader(
22405 protocol.HandlerPayloadUnmarshal{
22406 Unmarshalers: unmarshalers,
22408 r.unmarshalerForEventType,
22410 r.eventReader.UseLogger(logger, logLevel)
22415 // Close will close the underlying event stream reader. For EventStream over
22416 // HTTP this will also close the HTTP connection.
22417 func (r *readSelectObjectContentEventStream) Close() error {
22418 r.closeOnce.Do(r.safeClose)
22423 func (r *readSelectObjectContentEventStream) safeClose() {
22425 err := r.eventReader.Close()
22427 r.errVal.Store(err)
22431 func (r *readSelectObjectContentEventStream) Err() error {
22432 if v := r.errVal.Load(); v != nil {
22439 func (r *readSelectObjectContentEventStream) Events() <-chan SelectObjectContentEventStreamEvent {
22443 func (r *readSelectObjectContentEventStream) readEventStream() {
22444 defer close(r.stream)
22447 event, err := r.eventReader.ReadEvent()
22454 // If closed already ignore the error
22458 r.errVal.Store(err)
22463 case r.stream <- event.(SelectObjectContentEventStreamEvent):
22470 func (r *readSelectObjectContentEventStream) unmarshalerForEventType(
22472 ) (eventstreamapi.Unmarshaler, error) {
22475 return &ContinuationEvent{}, nil
22478 return &EndEvent{}, nil
22481 return &ProgressEvent{}, nil
22484 return &RecordsEvent{}, nil
22487 return &StatsEvent{}, nil
22489 return nil, awserr.New(
22490 request.ErrCodeSerialization,
22491 fmt.Sprintf("unknown event type name, %s, for SelectObjectContentEventStream", eventType),
22497 // Request to filter the contents of an Amazon S3 object based on a simple Structured
22498 // Query Language (SQL) statement. In the request, along with the SQL expression,
22499 // you must specify a data serialization format (JSON or CSV) of the object.
22500 // Amazon S3 uses this to parse object data into records. It returns only records
22501 // that match the specified SQL expression. You must also specify the data serialization
22502 // format for the response. For more information, see S3Select API Documentation
22503 // (https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectSELECTContent.html).
22504 type SelectObjectContentInput struct {
22505 _ struct{} `locationName:"SelectObjectContentRequest" type:"structure" xmlURI:"http://s3.amazonaws.com/doc/2006-03-01/"`
22509 // Bucket is a required field
22510 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
22512 // The expression that is used to query the object.
22514 // Expression is a required field
22515 Expression *string `type:"string" required:"true"`
22517 // The type of the provided expression (for example., SQL).
22519 // ExpressionType is a required field
22520 ExpressionType *string `type:"string" required:"true" enum:"ExpressionType"`
22522 // Describes the format of the data in the object that is being queried.
22524 // InputSerialization is a required field
22525 InputSerialization *InputSerialization `type:"structure" required:"true"`
22529 // Key is a required field
22530 Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"`
22532 // Describes the format of the data that you want Amazon S3 to return in response.
22534 // OutputSerialization is a required field
22535 OutputSerialization *OutputSerialization `type:"structure" required:"true"`
22537 // Specifies if periodic request progress information should be enabled.
22538 RequestProgress *RequestProgress `type:"structure"`
22540 // The SSE Algorithm used to encrypt the object. For more information, see
22541 // Server-Side Encryption (Using Customer-Provided Encryption Keys (https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html).
22542 SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"`
22544 // The SSE Customer Key. For more information, see Server-Side Encryption (Using
22545 // Customer-Provided Encryption Keys (https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html).
22546 SSECustomerKey *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key" type:"string" sensitive:"true"`
22548 // The SSE Customer Key MD5. For more information, see Server-Side Encryption
22549 // (Using Customer-Provided Encryption Keys (https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html).
22550 SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"`
22553 // String returns the string representation
22554 func (s SelectObjectContentInput) String() string {
22555 return awsutil.Prettify(s)
22558 // GoString returns the string representation
22559 func (s SelectObjectContentInput) GoString() string {
22563 // Validate inspects the fields of the type to determine if they are valid.
22564 func (s *SelectObjectContentInput) Validate() error {
22565 invalidParams := request.ErrInvalidParams{Context: "SelectObjectContentInput"}
22566 if s.Bucket == nil {
22567 invalidParams.Add(request.NewErrParamRequired("Bucket"))
22569 if s.Bucket != nil && len(*s.Bucket) < 1 {
22570 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
22572 if s.Expression == nil {
22573 invalidParams.Add(request.NewErrParamRequired("Expression"))
22575 if s.ExpressionType == nil {
22576 invalidParams.Add(request.NewErrParamRequired("ExpressionType"))
22578 if s.InputSerialization == nil {
22579 invalidParams.Add(request.NewErrParamRequired("InputSerialization"))
22582 invalidParams.Add(request.NewErrParamRequired("Key"))
22584 if s.Key != nil && len(*s.Key) < 1 {
22585 invalidParams.Add(request.NewErrParamMinLen("Key", 1))
22587 if s.OutputSerialization == nil {
22588 invalidParams.Add(request.NewErrParamRequired("OutputSerialization"))
22591 if invalidParams.Len() > 0 {
22592 return invalidParams
22597 // SetBucket sets the Bucket field's value.
22598 func (s *SelectObjectContentInput) SetBucket(v string) *SelectObjectContentInput {
22603 func (s *SelectObjectContentInput) getBucket() (v string) {
22604 if s.Bucket == nil {
22610 // SetExpression sets the Expression field's value.
22611 func (s *SelectObjectContentInput) SetExpression(v string) *SelectObjectContentInput {
22616 // SetExpressionType sets the ExpressionType field's value.
22617 func (s *SelectObjectContentInput) SetExpressionType(v string) *SelectObjectContentInput {
22618 s.ExpressionType = &v
22622 // SetInputSerialization sets the InputSerialization field's value.
22623 func (s *SelectObjectContentInput) SetInputSerialization(v *InputSerialization) *SelectObjectContentInput {
22624 s.InputSerialization = v
22628 // SetKey sets the Key field's value.
22629 func (s *SelectObjectContentInput) SetKey(v string) *SelectObjectContentInput {
22634 // SetOutputSerialization sets the OutputSerialization field's value.
22635 func (s *SelectObjectContentInput) SetOutputSerialization(v *OutputSerialization) *SelectObjectContentInput {
22636 s.OutputSerialization = v
22640 // SetRequestProgress sets the RequestProgress field's value.
22641 func (s *SelectObjectContentInput) SetRequestProgress(v *RequestProgress) *SelectObjectContentInput {
22642 s.RequestProgress = v
22646 // SetSSECustomerAlgorithm sets the SSECustomerAlgorithm field's value.
22647 func (s *SelectObjectContentInput) SetSSECustomerAlgorithm(v string) *SelectObjectContentInput {
22648 s.SSECustomerAlgorithm = &v
22652 // SetSSECustomerKey sets the SSECustomerKey field's value.
22653 func (s *SelectObjectContentInput) SetSSECustomerKey(v string) *SelectObjectContentInput {
22654 s.SSECustomerKey = &v
22658 func (s *SelectObjectContentInput) getSSECustomerKey() (v string) {
22659 if s.SSECustomerKey == nil {
22662 return *s.SSECustomerKey
22665 // SetSSECustomerKeyMD5 sets the SSECustomerKeyMD5 field's value.
22666 func (s *SelectObjectContentInput) SetSSECustomerKeyMD5(v string) *SelectObjectContentInput {
22667 s.SSECustomerKeyMD5 = &v
22671 type SelectObjectContentOutput struct {
22672 _ struct{} `type:"structure" payload:"Payload"`
22674 // Use EventStream to use the API's stream.
22675 EventStream *SelectObjectContentEventStream `type:"structure"`
22678 // String returns the string representation
22679 func (s SelectObjectContentOutput) String() string {
22680 return awsutil.Prettify(s)
22683 // GoString returns the string representation
22684 func (s SelectObjectContentOutput) GoString() string {
22688 // SetEventStream sets the EventStream field's value.
22689 func (s *SelectObjectContentOutput) SetEventStream(v *SelectObjectContentEventStream) *SelectObjectContentOutput {
22694 func (s *SelectObjectContentOutput) runEventStreamLoop(r *request.Request) {
22695 if r.Error != nil {
22698 reader := newReadSelectObjectContentEventStream(
22699 r.HTTPResponse.Body,
22700 r.Handlers.UnmarshalStream,
22702 r.Config.LogLevel.Value(),
22704 go reader.readEventStream()
22706 eventStream := &SelectObjectContentEventStream{
22707 StreamCloser: r.HTTPResponse.Body,
22710 s.EventStream = eventStream
22713 // Describes the parameters for Select job types.
22714 type SelectParameters struct {
22715 _ struct{} `type:"structure"`
22717 // The expression that is used to query the object.
22719 // Expression is a required field
22720 Expression *string `type:"string" required:"true"`
22722 // The type of the provided expression (e.g., SQL).
22724 // ExpressionType is a required field
22725 ExpressionType *string `type:"string" required:"true" enum:"ExpressionType"`
22727 // Describes the serialization format of the object.
22729 // InputSerialization is a required field
22730 InputSerialization *InputSerialization `type:"structure" required:"true"`
22732 // Describes how the results of the Select job are serialized.
22734 // OutputSerialization is a required field
22735 OutputSerialization *OutputSerialization `type:"structure" required:"true"`
22738 // String returns the string representation
22739 func (s SelectParameters) String() string {
22740 return awsutil.Prettify(s)
22743 // GoString returns the string representation
22744 func (s SelectParameters) GoString() string {
22748 // Validate inspects the fields of the type to determine if they are valid.
22749 func (s *SelectParameters) Validate() error {
22750 invalidParams := request.ErrInvalidParams{Context: "SelectParameters"}
22751 if s.Expression == nil {
22752 invalidParams.Add(request.NewErrParamRequired("Expression"))
22754 if s.ExpressionType == nil {
22755 invalidParams.Add(request.NewErrParamRequired("ExpressionType"))
22757 if s.InputSerialization == nil {
22758 invalidParams.Add(request.NewErrParamRequired("InputSerialization"))
22760 if s.OutputSerialization == nil {
22761 invalidParams.Add(request.NewErrParamRequired("OutputSerialization"))
22764 if invalidParams.Len() > 0 {
22765 return invalidParams
22770 // SetExpression sets the Expression field's value.
22771 func (s *SelectParameters) SetExpression(v string) *SelectParameters {
22776 // SetExpressionType sets the ExpressionType field's value.
22777 func (s *SelectParameters) SetExpressionType(v string) *SelectParameters {
22778 s.ExpressionType = &v
22782 // SetInputSerialization sets the InputSerialization field's value.
22783 func (s *SelectParameters) SetInputSerialization(v *InputSerialization) *SelectParameters {
22784 s.InputSerialization = v
22788 // SetOutputSerialization sets the OutputSerialization field's value.
22789 func (s *SelectParameters) SetOutputSerialization(v *OutputSerialization) *SelectParameters {
22790 s.OutputSerialization = v
22794 // Describes the default server-side encryption to apply to new objects in the
22795 // bucket. If Put Object request does not specify any server-side encryption,
22796 // this default encryption will be applied.
22797 type ServerSideEncryptionByDefault struct {
22798 _ struct{} `type:"structure"`
22800 // KMS master key ID to use for the default encryption. This parameter is allowed
22801 // if SSEAlgorithm is aws:kms.
22802 KMSMasterKeyID *string `type:"string" sensitive:"true"`
22804 // Server-side encryption algorithm to use for the default encryption.
22806 // SSEAlgorithm is a required field
22807 SSEAlgorithm *string `type:"string" required:"true" enum:"ServerSideEncryption"`
22810 // String returns the string representation
22811 func (s ServerSideEncryptionByDefault) String() string {
22812 return awsutil.Prettify(s)
22815 // GoString returns the string representation
22816 func (s ServerSideEncryptionByDefault) GoString() string {
22820 // Validate inspects the fields of the type to determine if they are valid.
22821 func (s *ServerSideEncryptionByDefault) Validate() error {
22822 invalidParams := request.ErrInvalidParams{Context: "ServerSideEncryptionByDefault"}
22823 if s.SSEAlgorithm == nil {
22824 invalidParams.Add(request.NewErrParamRequired("SSEAlgorithm"))
22827 if invalidParams.Len() > 0 {
22828 return invalidParams
22833 // SetKMSMasterKeyID sets the KMSMasterKeyID field's value.
22834 func (s *ServerSideEncryptionByDefault) SetKMSMasterKeyID(v string) *ServerSideEncryptionByDefault {
22835 s.KMSMasterKeyID = &v
22839 // SetSSEAlgorithm sets the SSEAlgorithm field's value.
22840 func (s *ServerSideEncryptionByDefault) SetSSEAlgorithm(v string) *ServerSideEncryptionByDefault {
22841 s.SSEAlgorithm = &v
22845 // Container for server-side encryption configuration rules. Currently S3 supports
22847 type ServerSideEncryptionConfiguration struct {
22848 _ struct{} `type:"structure"`
22850 // Container for information about a particular server-side encryption configuration
22853 // Rules is a required field
22854 Rules []*ServerSideEncryptionRule `locationName:"Rule" type:"list" flattened:"true" required:"true"`
22857 // String returns the string representation
22858 func (s ServerSideEncryptionConfiguration) String() string {
22859 return awsutil.Prettify(s)
22862 // GoString returns the string representation
22863 func (s ServerSideEncryptionConfiguration) GoString() string {
22867 // Validate inspects the fields of the type to determine if they are valid.
22868 func (s *ServerSideEncryptionConfiguration) Validate() error {
22869 invalidParams := request.ErrInvalidParams{Context: "ServerSideEncryptionConfiguration"}
22870 if s.Rules == nil {
22871 invalidParams.Add(request.NewErrParamRequired("Rules"))
22873 if s.Rules != nil {
22874 for i, v := range s.Rules {
22878 if err := v.Validate(); err != nil {
22879 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Rules", i), err.(request.ErrInvalidParams))
22884 if invalidParams.Len() > 0 {
22885 return invalidParams
22890 // SetRules sets the Rules field's value.
22891 func (s *ServerSideEncryptionConfiguration) SetRules(v []*ServerSideEncryptionRule) *ServerSideEncryptionConfiguration {
22896 // Container for information about a particular server-side encryption configuration
22898 type ServerSideEncryptionRule struct {
22899 _ struct{} `type:"structure"`
22901 // Describes the default server-side encryption to apply to new objects in the
22902 // bucket. If Put Object request does not specify any server-side encryption,
22903 // this default encryption will be applied.
22904 ApplyServerSideEncryptionByDefault *ServerSideEncryptionByDefault `type:"structure"`
22907 // String returns the string representation
22908 func (s ServerSideEncryptionRule) String() string {
22909 return awsutil.Prettify(s)
22912 // GoString returns the string representation
22913 func (s ServerSideEncryptionRule) GoString() string {
22917 // Validate inspects the fields of the type to determine if they are valid.
22918 func (s *ServerSideEncryptionRule) Validate() error {
22919 invalidParams := request.ErrInvalidParams{Context: "ServerSideEncryptionRule"}
22920 if s.ApplyServerSideEncryptionByDefault != nil {
22921 if err := s.ApplyServerSideEncryptionByDefault.Validate(); err != nil {
22922 invalidParams.AddNested("ApplyServerSideEncryptionByDefault", err.(request.ErrInvalidParams))
22926 if invalidParams.Len() > 0 {
22927 return invalidParams
22932 // SetApplyServerSideEncryptionByDefault sets the ApplyServerSideEncryptionByDefault field's value.
22933 func (s *ServerSideEncryptionRule) SetApplyServerSideEncryptionByDefault(v *ServerSideEncryptionByDefault) *ServerSideEncryptionRule {
22934 s.ApplyServerSideEncryptionByDefault = v
22938 // A container for filters that define which source objects should be replicated.
22939 type SourceSelectionCriteria struct {
22940 _ struct{} `type:"structure"`
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.
22945 SseKmsEncryptedObjects *SseKmsEncryptedObjects `type:"structure"`
22948 // String returns the string representation
22949 func (s SourceSelectionCriteria) String() string {
22950 return awsutil.Prettify(s)
22953 // GoString returns the string representation
22954 func (s SourceSelectionCriteria) GoString() string {
22958 // Validate inspects the fields of the type to determine if they are valid.
22959 func (s *SourceSelectionCriteria) Validate() error {
22960 invalidParams := request.ErrInvalidParams{Context: "SourceSelectionCriteria"}
22961 if s.SseKmsEncryptedObjects != nil {
22962 if err := s.SseKmsEncryptedObjects.Validate(); err != nil {
22963 invalidParams.AddNested("SseKmsEncryptedObjects", err.(request.ErrInvalidParams))
22967 if invalidParams.Len() > 0 {
22968 return invalidParams
22973 // SetSseKmsEncryptedObjects sets the SseKmsEncryptedObjects field's value.
22974 func (s *SourceSelectionCriteria) SetSseKmsEncryptedObjects(v *SseKmsEncryptedObjects) *SourceSelectionCriteria {
22975 s.SseKmsEncryptedObjects = v
22979 // A container for filter information for the selection of S3 objects encrypted
22981 type SseKmsEncryptedObjects struct {
22982 _ struct{} `type:"structure"`
22984 // If the status is not Enabled, replication for S3 objects encrypted with AWS
22985 // KMS is disabled.
22987 // Status is a required field
22988 Status *string `type:"string" required:"true" enum:"SseKmsEncryptedObjectsStatus"`
22991 // String returns the string representation
22992 func (s SseKmsEncryptedObjects) String() string {
22993 return awsutil.Prettify(s)
22996 // GoString returns the string representation
22997 func (s SseKmsEncryptedObjects) GoString() string {
23001 // Validate inspects the fields of the type to determine if they are valid.
23002 func (s *SseKmsEncryptedObjects) Validate() error {
23003 invalidParams := request.ErrInvalidParams{Context: "SseKmsEncryptedObjects"}
23004 if s.Status == nil {
23005 invalidParams.Add(request.NewErrParamRequired("Status"))
23008 if invalidParams.Len() > 0 {
23009 return invalidParams
23014 // SetStatus sets the Status field's value.
23015 func (s *SseKmsEncryptedObjects) SetStatus(v string) *SseKmsEncryptedObjects {
23020 type Stats struct {
23021 _ struct{} `type:"structure"`
23023 // The total number of uncompressed object bytes processed.
23024 BytesProcessed *int64 `type:"long"`
23026 // The total number of bytes of records payload data returned.
23027 BytesReturned *int64 `type:"long"`
23029 // The total number of object bytes scanned.
23030 BytesScanned *int64 `type:"long"`
23033 // String returns the string representation
23034 func (s Stats) String() string {
23035 return awsutil.Prettify(s)
23038 // GoString returns the string representation
23039 func (s Stats) GoString() string {
23043 // SetBytesProcessed sets the BytesProcessed field's value.
23044 func (s *Stats) SetBytesProcessed(v int64) *Stats {
23045 s.BytesProcessed = &v
23049 // SetBytesReturned sets the BytesReturned field's value.
23050 func (s *Stats) SetBytesReturned(v int64) *Stats {
23051 s.BytesReturned = &v
23055 // SetBytesScanned sets the BytesScanned field's value.
23056 func (s *Stats) SetBytesScanned(v int64) *Stats {
23057 s.BytesScanned = &v
23061 type StatsEvent struct {
23062 _ struct{} `locationName:"StatsEvent" type:"structure" payload:"Details"`
23064 // The Stats event details.
23065 Details *Stats `locationName:"Details" type:"structure"`
23068 // String returns the string representation
23069 func (s StatsEvent) String() string {
23070 return awsutil.Prettify(s)
23073 // GoString returns the string representation
23074 func (s StatsEvent) GoString() string {
23078 // SetDetails sets the Details field's value.
23079 func (s *StatsEvent) SetDetails(v *Stats) *StatsEvent {
23084 // The StatsEvent is and event in the SelectObjectContentEventStream group of events.
23085 func (s *StatsEvent) eventSelectObjectContentEventStream() {}
23087 // UnmarshalEvent unmarshals the EventStream Message into the StatsEvent value.
23088 // This method is only used internally within the SDK's EventStream handling.
23089 func (s *StatsEvent) UnmarshalEvent(
23090 payloadUnmarshaler protocol.PayloadUnmarshaler,
23091 msg eventstream.Message,
23093 if err := payloadUnmarshaler.UnmarshalPayload(
23094 bytes.NewReader(msg.Payload), s,
23101 type StorageClassAnalysis struct {
23102 _ struct{} `type:"structure"`
23104 // A container used to describe how data related to the storage class analysis
23105 // should be exported.
23106 DataExport *StorageClassAnalysisDataExport `type:"structure"`
23109 // String returns the string representation
23110 func (s StorageClassAnalysis) String() string {
23111 return awsutil.Prettify(s)
23114 // GoString returns the string representation
23115 func (s StorageClassAnalysis) GoString() string {
23119 // Validate inspects the fields of the type to determine if they are valid.
23120 func (s *StorageClassAnalysis) Validate() error {
23121 invalidParams := request.ErrInvalidParams{Context: "StorageClassAnalysis"}
23122 if s.DataExport != nil {
23123 if err := s.DataExport.Validate(); err != nil {
23124 invalidParams.AddNested("DataExport", err.(request.ErrInvalidParams))
23128 if invalidParams.Len() > 0 {
23129 return invalidParams
23134 // SetDataExport sets the DataExport field's value.
23135 func (s *StorageClassAnalysis) SetDataExport(v *StorageClassAnalysisDataExport) *StorageClassAnalysis {
23140 type StorageClassAnalysisDataExport struct {
23141 _ struct{} `type:"structure"`
23143 // The place to store the data for an analysis.
23145 // Destination is a required field
23146 Destination *AnalyticsExportDestination `type:"structure" required:"true"`
23148 // The version of the output schema to use when exporting data. Must be V_1.
23150 // OutputSchemaVersion is a required field
23151 OutputSchemaVersion *string `type:"string" required:"true" enum:"StorageClassAnalysisSchemaVersion"`
23154 // String returns the string representation
23155 func (s StorageClassAnalysisDataExport) String() string {
23156 return awsutil.Prettify(s)
23159 // GoString returns the string representation
23160 func (s StorageClassAnalysisDataExport) GoString() string {
23164 // Validate inspects the fields of the type to determine if they are valid.
23165 func (s *StorageClassAnalysisDataExport) Validate() error {
23166 invalidParams := request.ErrInvalidParams{Context: "StorageClassAnalysisDataExport"}
23167 if s.Destination == nil {
23168 invalidParams.Add(request.NewErrParamRequired("Destination"))
23170 if s.OutputSchemaVersion == nil {
23171 invalidParams.Add(request.NewErrParamRequired("OutputSchemaVersion"))
23173 if s.Destination != nil {
23174 if err := s.Destination.Validate(); err != nil {
23175 invalidParams.AddNested("Destination", err.(request.ErrInvalidParams))
23179 if invalidParams.Len() > 0 {
23180 return invalidParams
23185 // SetDestination sets the Destination field's value.
23186 func (s *StorageClassAnalysisDataExport) SetDestination(v *AnalyticsExportDestination) *StorageClassAnalysisDataExport {
23191 // SetOutputSchemaVersion sets the OutputSchemaVersion field's value.
23192 func (s *StorageClassAnalysisDataExport) SetOutputSchemaVersion(v string) *StorageClassAnalysisDataExport {
23193 s.OutputSchemaVersion = &v
23198 _ struct{} `type:"structure"`
23200 // Name of the tag.
23202 // Key is a required field
23203 Key *string `min:"1" type:"string" required:"true"`
23205 // Value of the tag.
23207 // Value is a required field
23208 Value *string `type:"string" required:"true"`
23211 // String returns the string representation
23212 func (s Tag) String() string {
23213 return awsutil.Prettify(s)
23216 // GoString returns the string representation
23217 func (s Tag) GoString() string {
23221 // Validate inspects the fields of the type to determine if they are valid.
23222 func (s *Tag) Validate() error {
23223 invalidParams := request.ErrInvalidParams{Context: "Tag"}
23225 invalidParams.Add(request.NewErrParamRequired("Key"))
23227 if s.Key != nil && len(*s.Key) < 1 {
23228 invalidParams.Add(request.NewErrParamMinLen("Key", 1))
23230 if s.Value == nil {
23231 invalidParams.Add(request.NewErrParamRequired("Value"))
23234 if invalidParams.Len() > 0 {
23235 return invalidParams
23240 // SetKey sets the Key field's value.
23241 func (s *Tag) SetKey(v string) *Tag {
23246 // SetValue sets the Value field's value.
23247 func (s *Tag) SetValue(v string) *Tag {
23252 type Tagging struct {
23253 _ struct{} `type:"structure"`
23255 // TagSet is a required field
23256 TagSet []*Tag `locationNameList:"Tag" type:"list" required:"true"`
23259 // String returns the string representation
23260 func (s Tagging) String() string {
23261 return awsutil.Prettify(s)
23264 // GoString returns the string representation
23265 func (s Tagging) GoString() string {
23269 // Validate inspects the fields of the type to determine if they are valid.
23270 func (s *Tagging) Validate() error {
23271 invalidParams := request.ErrInvalidParams{Context: "Tagging"}
23272 if s.TagSet == nil {
23273 invalidParams.Add(request.NewErrParamRequired("TagSet"))
23275 if s.TagSet != nil {
23276 for i, v := range s.TagSet {
23280 if err := v.Validate(); err != nil {
23281 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "TagSet", i), err.(request.ErrInvalidParams))
23286 if invalidParams.Len() > 0 {
23287 return invalidParams
23292 // SetTagSet sets the TagSet field's value.
23293 func (s *Tagging) SetTagSet(v []*Tag) *Tagging {
23298 type TargetGrant struct {
23299 _ struct{} `type:"structure"`
23301 Grantee *Grantee `type:"structure" xmlPrefix:"xsi" xmlURI:"http://www.w3.org/2001/XMLSchema-instance"`
23303 // Logging permissions assigned to the Grantee for the bucket.
23304 Permission *string `type:"string" enum:"BucketLogsPermission"`
23307 // String returns the string representation
23308 func (s TargetGrant) String() string {
23309 return awsutil.Prettify(s)
23312 // GoString returns the string representation
23313 func (s TargetGrant) GoString() string {
23317 // Validate inspects the fields of the type to determine if they are valid.
23318 func (s *TargetGrant) Validate() error {
23319 invalidParams := request.ErrInvalidParams{Context: "TargetGrant"}
23320 if s.Grantee != nil {
23321 if err := s.Grantee.Validate(); err != nil {
23322 invalidParams.AddNested("Grantee", err.(request.ErrInvalidParams))
23326 if invalidParams.Len() > 0 {
23327 return invalidParams
23332 // SetGrantee sets the Grantee field's value.
23333 func (s *TargetGrant) SetGrantee(v *Grantee) *TargetGrant {
23338 // SetPermission sets the Permission field's value.
23339 func (s *TargetGrant) SetPermission(v string) *TargetGrant {
23344 // A container for specifying the configuration for publication of messages
23345 // to an Amazon Simple Notification Service (Amazon SNS) topic.when Amazon S3
23346 // detects specified events.
23347 type TopicConfiguration struct {
23348 _ struct{} `type:"structure"`
23350 // Events is a required field
23351 Events []*string `locationName:"Event" type:"list" flattened:"true" required:"true"`
23353 // A container for object key name filtering rules. For information about key
23354 // name filtering, see Configuring Event Notifications (https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html)
23355 // in the Amazon Simple Storage Service Developer Guide.
23356 Filter *NotificationConfigurationFilter `type:"structure"`
23358 // An optional unique identifier for configurations in a notification configuration.
23359 // If you don't provide one, Amazon S3 will assign an ID.
23360 Id *string `type:"string"`
23362 // The Amazon Resource Name (ARN) of the Amazon SNS topic to which Amazon S3
23363 // will publish a message when it detects events of the specified type.
23365 // TopicArn is a required field
23366 TopicArn *string `locationName:"Topic" type:"string" required:"true"`
23369 // String returns the string representation
23370 func (s TopicConfiguration) String() string {
23371 return awsutil.Prettify(s)
23374 // GoString returns the string representation
23375 func (s TopicConfiguration) GoString() string {
23379 // Validate inspects the fields of the type to determine if they are valid.
23380 func (s *TopicConfiguration) Validate() error {
23381 invalidParams := request.ErrInvalidParams{Context: "TopicConfiguration"}
23382 if s.Events == nil {
23383 invalidParams.Add(request.NewErrParamRequired("Events"))
23385 if s.TopicArn == nil {
23386 invalidParams.Add(request.NewErrParamRequired("TopicArn"))
23389 if invalidParams.Len() > 0 {
23390 return invalidParams
23395 // SetEvents sets the Events field's value.
23396 func (s *TopicConfiguration) SetEvents(v []*string) *TopicConfiguration {
23401 // SetFilter sets the Filter field's value.
23402 func (s *TopicConfiguration) SetFilter(v *NotificationConfigurationFilter) *TopicConfiguration {
23407 // SetId sets the Id field's value.
23408 func (s *TopicConfiguration) SetId(v string) *TopicConfiguration {
23413 // SetTopicArn sets the TopicArn field's value.
23414 func (s *TopicConfiguration) SetTopicArn(v string) *TopicConfiguration {
23419 type TopicConfigurationDeprecated struct {
23420 _ struct{} `type:"structure"`
23422 // Bucket event for which to send notifications.
23424 // Deprecated: Event has been deprecated
23425 Event *string `deprecated:"true" type:"string" enum:"Event"`
23427 Events []*string `locationName:"Event" type:"list" flattened:"true"`
23429 // An optional unique identifier for configurations in a notification configuration.
23430 // If you don't provide one, Amazon S3 will assign an ID.
23431 Id *string `type:"string"`
23433 // Amazon SNS topic to which Amazon S3 will publish a message to report the
23434 // specified events for the bucket.
23435 Topic *string `type:"string"`
23438 // String returns the string representation
23439 func (s TopicConfigurationDeprecated) String() string {
23440 return awsutil.Prettify(s)
23443 // GoString returns the string representation
23444 func (s TopicConfigurationDeprecated) GoString() string {
23448 // SetEvent sets the Event field's value.
23449 func (s *TopicConfigurationDeprecated) SetEvent(v string) *TopicConfigurationDeprecated {
23454 // SetEvents sets the Events field's value.
23455 func (s *TopicConfigurationDeprecated) SetEvents(v []*string) *TopicConfigurationDeprecated {
23460 // SetId sets the Id field's value.
23461 func (s *TopicConfigurationDeprecated) SetId(v string) *TopicConfigurationDeprecated {
23466 // SetTopic sets the Topic field's value.
23467 func (s *TopicConfigurationDeprecated) SetTopic(v string) *TopicConfigurationDeprecated {
23472 type Transition struct {
23473 _ struct{} `type:"structure"`
23475 // Indicates at what date the object is to be moved or deleted. Should be in
23476 // GMT ISO 8601 Format.
23477 Date *time.Time `type:"timestamp" timestampFormat:"iso8601"`
23479 // Indicates the lifetime, in days, of the objects that are subject to the rule.
23480 // The value must be a non-zero positive integer.
23481 Days *int64 `type:"integer"`
23483 // The class of storage used to store the object.
23484 StorageClass *string `type:"string" enum:"TransitionStorageClass"`
23487 // String returns the string representation
23488 func (s Transition) String() string {
23489 return awsutil.Prettify(s)
23492 // GoString returns the string representation
23493 func (s Transition) GoString() string {
23497 // SetDate sets the Date field's value.
23498 func (s *Transition) SetDate(v time.Time) *Transition {
23503 // SetDays sets the Days field's value.
23504 func (s *Transition) SetDays(v int64) *Transition {
23509 // SetStorageClass sets the StorageClass field's value.
23510 func (s *Transition) SetStorageClass(v string) *Transition {
23511 s.StorageClass = &v
23515 type UploadPartCopyInput struct {
23516 _ struct{} `type:"structure"`
23518 // Bucket is a required field
23519 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
23521 // The name of the source bucket and key name of the source object, separated
23522 // by a slash (/). Must be URL-encoded.
23524 // CopySource is a required field
23525 CopySource *string `location:"header" locationName:"x-amz-copy-source" type:"string" required:"true"`
23527 // Copies the object if its entity tag (ETag) matches the specified tag.
23528 CopySourceIfMatch *string `location:"header" locationName:"x-amz-copy-source-if-match" type:"string"`
23530 // Copies the object if it has been modified since the specified time.
23531 CopySourceIfModifiedSince *time.Time `location:"header" locationName:"x-amz-copy-source-if-modified-since" type:"timestamp"`
23533 // Copies the object if its entity tag (ETag) is different than the specified
23535 CopySourceIfNoneMatch *string `location:"header" locationName:"x-amz-copy-source-if-none-match" type:"string"`
23537 // Copies the object if it hasn't been modified since the specified time.
23538 CopySourceIfUnmodifiedSince *time.Time `location:"header" locationName:"x-amz-copy-source-if-unmodified-since" type:"timestamp"`
23540 // The range of bytes to copy from the source object. The range value must use
23541 // the form bytes=first-last, where the first and last are the zero-based byte
23542 // offsets to copy. For example, bytes=0-9 indicates that you want to copy the
23543 // first ten bytes of the source. You can copy a range only if the source object
23544 // is greater than 5 MB.
23545 CopySourceRange *string `location:"header" locationName:"x-amz-copy-source-range" type:"string"`
23547 // Specifies the algorithm to use when decrypting the source object (e.g., AES256).
23548 CopySourceSSECustomerAlgorithm *string `location:"header" locationName:"x-amz-copy-source-server-side-encryption-customer-algorithm" type:"string"`
23550 // Specifies the customer-provided encryption key for Amazon S3 to use to decrypt
23551 // the source object. The encryption key provided in this header must be one
23552 // that was used when the source object was created.
23553 CopySourceSSECustomerKey *string `location:"header" locationName:"x-amz-copy-source-server-side-encryption-customer-key" type:"string" sensitive:"true"`
23555 // Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321.
23556 // Amazon S3 uses this header for a message integrity check to ensure the encryption
23557 // key was transmitted without error.
23558 CopySourceSSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-copy-source-server-side-encryption-customer-key-MD5" type:"string"`
23560 // Key is a required field
23561 Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"`
23563 // Part number of part being copied. This is a positive integer between 1 and
23566 // PartNumber is a required field
23567 PartNumber *int64 `location:"querystring" locationName:"partNumber" type:"integer" required:"true"`
23569 // Confirms that the requester knows that she or he will be charged for the
23570 // request. Bucket owners need not specify this parameter in their requests.
23571 // Documentation on downloading objects from requester pays buckets can be found
23572 // at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
23573 RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
23575 // Specifies the algorithm to use to when encrypting the object (e.g., AES256).
23576 SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"`
23578 // Specifies the customer-provided encryption key for Amazon S3 to use in encrypting
23579 // data. This value is used to store the object and then it is discarded; Amazon
23580 // does not store the encryption key. The key must be appropriate for use with
23581 // the algorithm specified in the x-amz-server-side​-encryption​-customer-algorithm
23582 // header. This must be the same encryption key specified in the initiate multipart
23584 SSECustomerKey *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key" type:"string" sensitive:"true"`
23586 // Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321.
23587 // Amazon S3 uses this header for a message integrity check to ensure the encryption
23588 // key was transmitted without error.
23589 SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"`
23591 // Upload ID identifying the multipart upload whose part is being copied.
23593 // UploadId is a required field
23594 UploadId *string `location:"querystring" locationName:"uploadId" type:"string" required:"true"`
23597 // String returns the string representation
23598 func (s UploadPartCopyInput) String() string {
23599 return awsutil.Prettify(s)
23602 // GoString returns the string representation
23603 func (s UploadPartCopyInput) GoString() string {
23607 // Validate inspects the fields of the type to determine if they are valid.
23608 func (s *UploadPartCopyInput) Validate() error {
23609 invalidParams := request.ErrInvalidParams{Context: "UploadPartCopyInput"}
23610 if s.Bucket == nil {
23611 invalidParams.Add(request.NewErrParamRequired("Bucket"))
23613 if s.Bucket != nil && len(*s.Bucket) < 1 {
23614 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
23616 if s.CopySource == nil {
23617 invalidParams.Add(request.NewErrParamRequired("CopySource"))
23620 invalidParams.Add(request.NewErrParamRequired("Key"))
23622 if s.Key != nil && len(*s.Key) < 1 {
23623 invalidParams.Add(request.NewErrParamMinLen("Key", 1))
23625 if s.PartNumber == nil {
23626 invalidParams.Add(request.NewErrParamRequired("PartNumber"))
23628 if s.UploadId == nil {
23629 invalidParams.Add(request.NewErrParamRequired("UploadId"))
23632 if invalidParams.Len() > 0 {
23633 return invalidParams
23638 // SetBucket sets the Bucket field's value.
23639 func (s *UploadPartCopyInput) SetBucket(v string) *UploadPartCopyInput {
23644 func (s *UploadPartCopyInput) getBucket() (v string) {
23645 if s.Bucket == nil {
23651 // SetCopySource sets the CopySource field's value.
23652 func (s *UploadPartCopyInput) SetCopySource(v string) *UploadPartCopyInput {
23657 // SetCopySourceIfMatch sets the CopySourceIfMatch field's value.
23658 func (s *UploadPartCopyInput) SetCopySourceIfMatch(v string) *UploadPartCopyInput {
23659 s.CopySourceIfMatch = &v
23663 // SetCopySourceIfModifiedSince sets the CopySourceIfModifiedSince field's value.
23664 func (s *UploadPartCopyInput) SetCopySourceIfModifiedSince(v time.Time) *UploadPartCopyInput {
23665 s.CopySourceIfModifiedSince = &v
23669 // SetCopySourceIfNoneMatch sets the CopySourceIfNoneMatch field's value.
23670 func (s *UploadPartCopyInput) SetCopySourceIfNoneMatch(v string) *UploadPartCopyInput {
23671 s.CopySourceIfNoneMatch = &v
23675 // SetCopySourceIfUnmodifiedSince sets the CopySourceIfUnmodifiedSince field's value.
23676 func (s *UploadPartCopyInput) SetCopySourceIfUnmodifiedSince(v time.Time) *UploadPartCopyInput {
23677 s.CopySourceIfUnmodifiedSince = &v
23681 // SetCopySourceRange sets the CopySourceRange field's value.
23682 func (s *UploadPartCopyInput) SetCopySourceRange(v string) *UploadPartCopyInput {
23683 s.CopySourceRange = &v
23687 // SetCopySourceSSECustomerAlgorithm sets the CopySourceSSECustomerAlgorithm field's value.
23688 func (s *UploadPartCopyInput) SetCopySourceSSECustomerAlgorithm(v string) *UploadPartCopyInput {
23689 s.CopySourceSSECustomerAlgorithm = &v
23693 // SetCopySourceSSECustomerKey sets the CopySourceSSECustomerKey field's value.
23694 func (s *UploadPartCopyInput) SetCopySourceSSECustomerKey(v string) *UploadPartCopyInput {
23695 s.CopySourceSSECustomerKey = &v
23699 func (s *UploadPartCopyInput) getCopySourceSSECustomerKey() (v string) {
23700 if s.CopySourceSSECustomerKey == nil {
23703 return *s.CopySourceSSECustomerKey
23706 // SetCopySourceSSECustomerKeyMD5 sets the CopySourceSSECustomerKeyMD5 field's value.
23707 func (s *UploadPartCopyInput) SetCopySourceSSECustomerKeyMD5(v string) *UploadPartCopyInput {
23708 s.CopySourceSSECustomerKeyMD5 = &v
23712 // SetKey sets the Key field's value.
23713 func (s *UploadPartCopyInput) SetKey(v string) *UploadPartCopyInput {
23718 // SetPartNumber sets the PartNumber field's value.
23719 func (s *UploadPartCopyInput) SetPartNumber(v int64) *UploadPartCopyInput {
23724 // SetRequestPayer sets the RequestPayer field's value.
23725 func (s *UploadPartCopyInput) SetRequestPayer(v string) *UploadPartCopyInput {
23726 s.RequestPayer = &v
23730 // SetSSECustomerAlgorithm sets the SSECustomerAlgorithm field's value.
23731 func (s *UploadPartCopyInput) SetSSECustomerAlgorithm(v string) *UploadPartCopyInput {
23732 s.SSECustomerAlgorithm = &v
23736 // SetSSECustomerKey sets the SSECustomerKey field's value.
23737 func (s *UploadPartCopyInput) SetSSECustomerKey(v string) *UploadPartCopyInput {
23738 s.SSECustomerKey = &v
23742 func (s *UploadPartCopyInput) getSSECustomerKey() (v string) {
23743 if s.SSECustomerKey == nil {
23746 return *s.SSECustomerKey
23749 // SetSSECustomerKeyMD5 sets the SSECustomerKeyMD5 field's value.
23750 func (s *UploadPartCopyInput) SetSSECustomerKeyMD5(v string) *UploadPartCopyInput {
23751 s.SSECustomerKeyMD5 = &v
23755 // SetUploadId sets the UploadId field's value.
23756 func (s *UploadPartCopyInput) SetUploadId(v string) *UploadPartCopyInput {
23761 type UploadPartCopyOutput struct {
23762 _ struct{} `type:"structure" payload:"CopyPartResult"`
23764 CopyPartResult *CopyPartResult `type:"structure"`
23766 // The version of the source object that was copied, if you have enabled versioning
23767 // on the source bucket.
23768 CopySourceVersionId *string `location:"header" locationName:"x-amz-copy-source-version-id" type:"string"`
23770 // If present, indicates that the requester was successfully charged for the
23772 RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"`
23774 // If server-side encryption with a customer-provided encryption key was requested,
23775 // the response will include this header confirming the encryption algorithm
23777 SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"`
23779 // If server-side encryption with a customer-provided encryption key was requested,
23780 // the response will include this header to provide round trip message integrity
23781 // verification of the customer-provided encryption key.
23782 SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"`
23784 // If present, specifies the ID of the AWS Key Management Service (KMS) master
23785 // encryption key that was used for the object.
23786 SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string" sensitive:"true"`
23788 // The Server-side encryption algorithm used when storing this object in S3
23789 // (e.g., AES256, aws:kms).
23790 ServerSideEncryption *string `location:"header" locationName:"x-amz-server-side-encryption" type:"string" enum:"ServerSideEncryption"`
23793 // String returns the string representation
23794 func (s UploadPartCopyOutput) String() string {
23795 return awsutil.Prettify(s)
23798 // GoString returns the string representation
23799 func (s UploadPartCopyOutput) GoString() string {
23803 // SetCopyPartResult sets the CopyPartResult field's value.
23804 func (s *UploadPartCopyOutput) SetCopyPartResult(v *CopyPartResult) *UploadPartCopyOutput {
23805 s.CopyPartResult = v
23809 // SetCopySourceVersionId sets the CopySourceVersionId field's value.
23810 func (s *UploadPartCopyOutput) SetCopySourceVersionId(v string) *UploadPartCopyOutput {
23811 s.CopySourceVersionId = &v
23815 // SetRequestCharged sets the RequestCharged field's value.
23816 func (s *UploadPartCopyOutput) SetRequestCharged(v string) *UploadPartCopyOutput {
23817 s.RequestCharged = &v
23821 // SetSSECustomerAlgorithm sets the SSECustomerAlgorithm field's value.
23822 func (s *UploadPartCopyOutput) SetSSECustomerAlgorithm(v string) *UploadPartCopyOutput {
23823 s.SSECustomerAlgorithm = &v
23827 // SetSSECustomerKeyMD5 sets the SSECustomerKeyMD5 field's value.
23828 func (s *UploadPartCopyOutput) SetSSECustomerKeyMD5(v string) *UploadPartCopyOutput {
23829 s.SSECustomerKeyMD5 = &v
23833 // SetSSEKMSKeyId sets the SSEKMSKeyId field's value.
23834 func (s *UploadPartCopyOutput) SetSSEKMSKeyId(v string) *UploadPartCopyOutput {
23839 // SetServerSideEncryption sets the ServerSideEncryption field's value.
23840 func (s *UploadPartCopyOutput) SetServerSideEncryption(v string) *UploadPartCopyOutput {
23841 s.ServerSideEncryption = &v
23845 type UploadPartInput struct {
23846 _ struct{} `type:"structure" payload:"Body"`
23849 Body io.ReadSeeker `type:"blob"`
23851 // Name of the bucket to which the multipart upload was initiated.
23853 // Bucket is a required field
23854 Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
23856 // Size of the body in bytes. This parameter is useful when the size of the
23857 // body cannot be determined automatically.
23858 ContentLength *int64 `location:"header" locationName:"Content-Length" type:"long"`
23860 // The base64-encoded 128-bit MD5 digest of the part data.
23861 ContentMD5 *string `location:"header" locationName:"Content-MD5" type:"string"`
23863 // Object key for which the multipart upload was initiated.
23865 // Key is a required field
23866 Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"`
23868 // Part number of part being uploaded. This is a positive integer between 1
23871 // PartNumber is a required field
23872 PartNumber *int64 `location:"querystring" locationName:"partNumber" type:"integer" required:"true"`
23874 // Confirms that the requester knows that she or he will be charged for the
23875 // request. Bucket owners need not specify this parameter in their requests.
23876 // Documentation on downloading objects from requester pays buckets can be found
23877 // at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
23878 RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
23880 // Specifies the algorithm to use to when encrypting the object (e.g., AES256).
23881 SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"`
23883 // Specifies the customer-provided encryption key for Amazon S3 to use in encrypting
23884 // data. This value is used to store the object and then it is discarded; Amazon
23885 // does not store the encryption key. The key must be appropriate for use with
23886 // the algorithm specified in the x-amz-server-side​-encryption​-customer-algorithm
23887 // header. This must be the same encryption key specified in the initiate multipart
23889 SSECustomerKey *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key" type:"string" sensitive:"true"`
23891 // Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321.
23892 // Amazon S3 uses this header for a message integrity check to ensure the encryption
23893 // key was transmitted without error.
23894 SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"`
23896 // Upload ID identifying the multipart upload whose part is being uploaded.
23898 // UploadId is a required field
23899 UploadId *string `location:"querystring" locationName:"uploadId" type:"string" required:"true"`
23902 // String returns the string representation
23903 func (s UploadPartInput) String() string {
23904 return awsutil.Prettify(s)
23907 // GoString returns the string representation
23908 func (s UploadPartInput) GoString() string {
23912 // Validate inspects the fields of the type to determine if they are valid.
23913 func (s *UploadPartInput) Validate() error {
23914 invalidParams := request.ErrInvalidParams{Context: "UploadPartInput"}
23915 if s.Bucket == nil {
23916 invalidParams.Add(request.NewErrParamRequired("Bucket"))
23918 if s.Bucket != nil && len(*s.Bucket) < 1 {
23919 invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
23922 invalidParams.Add(request.NewErrParamRequired("Key"))
23924 if s.Key != nil && len(*s.Key) < 1 {
23925 invalidParams.Add(request.NewErrParamMinLen("Key", 1))
23927 if s.PartNumber == nil {
23928 invalidParams.Add(request.NewErrParamRequired("PartNumber"))
23930 if s.UploadId == nil {
23931 invalidParams.Add(request.NewErrParamRequired("UploadId"))
23934 if invalidParams.Len() > 0 {
23935 return invalidParams
23940 // SetBody sets the Body field's value.
23941 func (s *UploadPartInput) SetBody(v io.ReadSeeker) *UploadPartInput {
23946 // SetBucket sets the Bucket field's value.
23947 func (s *UploadPartInput) SetBucket(v string) *UploadPartInput {
23952 func (s *UploadPartInput) getBucket() (v string) {
23953 if s.Bucket == nil {
23959 // SetContentLength sets the ContentLength field's value.
23960 func (s *UploadPartInput) SetContentLength(v int64) *UploadPartInput {
23961 s.ContentLength = &v
23965 // SetContentMD5 sets the ContentMD5 field's value.
23966 func (s *UploadPartInput) SetContentMD5(v string) *UploadPartInput {
23971 // SetKey sets the Key field's value.
23972 func (s *UploadPartInput) SetKey(v string) *UploadPartInput {
23977 // SetPartNumber sets the PartNumber field's value.
23978 func (s *UploadPartInput) SetPartNumber(v int64) *UploadPartInput {
23983 // SetRequestPayer sets the RequestPayer field's value.
23984 func (s *UploadPartInput) SetRequestPayer(v string) *UploadPartInput {
23985 s.RequestPayer = &v
23989 // SetSSECustomerAlgorithm sets the SSECustomerAlgorithm field's value.
23990 func (s *UploadPartInput) SetSSECustomerAlgorithm(v string) *UploadPartInput {
23991 s.SSECustomerAlgorithm = &v
23995 // SetSSECustomerKey sets the SSECustomerKey field's value.
23996 func (s *UploadPartInput) SetSSECustomerKey(v string) *UploadPartInput {
23997 s.SSECustomerKey = &v
24001 func (s *UploadPartInput) getSSECustomerKey() (v string) {
24002 if s.SSECustomerKey == nil {
24005 return *s.SSECustomerKey
24008 // SetSSECustomerKeyMD5 sets the SSECustomerKeyMD5 field's value.
24009 func (s *UploadPartInput) SetSSECustomerKeyMD5(v string) *UploadPartInput {
24010 s.SSECustomerKeyMD5 = &v
24014 // SetUploadId sets the UploadId field's value.
24015 func (s *UploadPartInput) SetUploadId(v string) *UploadPartInput {
24020 type UploadPartOutput struct {
24021 _ struct{} `type:"structure"`
24023 // Entity tag for the uploaded object.
24024 ETag *string `location:"header" locationName:"ETag" type:"string"`
24026 // If present, indicates that the requester was successfully charged for the
24028 RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"`
24030 // If server-side encryption with a customer-provided encryption key was requested,
24031 // the response will include this header confirming the encryption algorithm
24033 SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"`
24035 // If server-side encryption with a customer-provided encryption key was requested,
24036 // the response will include this header to provide round trip message integrity
24037 // verification of the customer-provided encryption key.
24038 SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"`
24040 // If present, specifies the ID of the AWS Key Management Service (KMS) master
24041 // encryption key that was used for the object.
24042 SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string" sensitive:"true"`
24044 // The Server-side encryption algorithm used when storing this object in S3
24045 // (e.g., AES256, aws:kms).
24046 ServerSideEncryption *string `location:"header" locationName:"x-amz-server-side-encryption" type:"string" enum:"ServerSideEncryption"`
24049 // String returns the string representation
24050 func (s UploadPartOutput) String() string {
24051 return awsutil.Prettify(s)
24054 // GoString returns the string representation
24055 func (s UploadPartOutput) GoString() string {
24059 // SetETag sets the ETag field's value.
24060 func (s *UploadPartOutput) SetETag(v string) *UploadPartOutput {
24065 // SetRequestCharged sets the RequestCharged field's value.
24066 func (s *UploadPartOutput) SetRequestCharged(v string) *UploadPartOutput {
24067 s.RequestCharged = &v
24071 // SetSSECustomerAlgorithm sets the SSECustomerAlgorithm field's value.
24072 func (s *UploadPartOutput) SetSSECustomerAlgorithm(v string) *UploadPartOutput {
24073 s.SSECustomerAlgorithm = &v
24077 // SetSSECustomerKeyMD5 sets the SSECustomerKeyMD5 field's value.
24078 func (s *UploadPartOutput) SetSSECustomerKeyMD5(v string) *UploadPartOutput {
24079 s.SSECustomerKeyMD5 = &v
24083 // SetSSEKMSKeyId sets the SSEKMSKeyId field's value.
24084 func (s *UploadPartOutput) SetSSEKMSKeyId(v string) *UploadPartOutput {
24089 // SetServerSideEncryption sets the ServerSideEncryption field's value.
24090 func (s *UploadPartOutput) SetServerSideEncryption(v string) *UploadPartOutput {
24091 s.ServerSideEncryption = &v
24095 type VersioningConfiguration struct {
24096 _ struct{} `type:"structure"`
24098 // Specifies whether MFA delete is enabled in the bucket versioning configuration.
24099 // This element is only returned if the bucket has been configured with MFA
24100 // delete. If the bucket has never been so configured, this element is not returned.
24101 MFADelete *string `locationName:"MfaDelete" type:"string" enum:"MFADelete"`
24103 // The versioning state of the bucket.
24104 Status *string `type:"string" enum:"BucketVersioningStatus"`
24107 // String returns the string representation
24108 func (s VersioningConfiguration) String() string {
24109 return awsutil.Prettify(s)
24112 // GoString returns the string representation
24113 func (s VersioningConfiguration) GoString() string {
24117 // SetMFADelete sets the MFADelete field's value.
24118 func (s *VersioningConfiguration) SetMFADelete(v string) *VersioningConfiguration {
24123 // SetStatus sets the Status field's value.
24124 func (s *VersioningConfiguration) SetStatus(v string) *VersioningConfiguration {
24129 type WebsiteConfiguration struct {
24130 _ struct{} `type:"structure"`
24132 ErrorDocument *ErrorDocument `type:"structure"`
24134 IndexDocument *IndexDocument `type:"structure"`
24136 RedirectAllRequestsTo *RedirectAllRequestsTo `type:"structure"`
24138 RoutingRules []*RoutingRule `locationNameList:"RoutingRule" type:"list"`
24141 // String returns the string representation
24142 func (s WebsiteConfiguration) String() string {
24143 return awsutil.Prettify(s)
24146 // GoString returns the string representation
24147 func (s WebsiteConfiguration) GoString() string {
24151 // Validate inspects the fields of the type to determine if they are valid.
24152 func (s *WebsiteConfiguration) Validate() error {
24153 invalidParams := request.ErrInvalidParams{Context: "WebsiteConfiguration"}
24154 if s.ErrorDocument != nil {
24155 if err := s.ErrorDocument.Validate(); err != nil {
24156 invalidParams.AddNested("ErrorDocument", err.(request.ErrInvalidParams))
24159 if s.IndexDocument != nil {
24160 if err := s.IndexDocument.Validate(); err != nil {
24161 invalidParams.AddNested("IndexDocument", err.(request.ErrInvalidParams))
24164 if s.RedirectAllRequestsTo != nil {
24165 if err := s.RedirectAllRequestsTo.Validate(); err != nil {
24166 invalidParams.AddNested("RedirectAllRequestsTo", err.(request.ErrInvalidParams))
24169 if s.RoutingRules != nil {
24170 for i, v := range s.RoutingRules {
24174 if err := v.Validate(); err != nil {
24175 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "RoutingRules", i), err.(request.ErrInvalidParams))
24180 if invalidParams.Len() > 0 {
24181 return invalidParams
24186 // SetErrorDocument sets the ErrorDocument field's value.
24187 func (s *WebsiteConfiguration) SetErrorDocument(v *ErrorDocument) *WebsiteConfiguration {
24188 s.ErrorDocument = v
24192 // SetIndexDocument sets the IndexDocument field's value.
24193 func (s *WebsiteConfiguration) SetIndexDocument(v *IndexDocument) *WebsiteConfiguration {
24194 s.IndexDocument = v
24198 // SetRedirectAllRequestsTo sets the RedirectAllRequestsTo field's value.
24199 func (s *WebsiteConfiguration) SetRedirectAllRequestsTo(v *RedirectAllRequestsTo) *WebsiteConfiguration {
24200 s.RedirectAllRequestsTo = v
24204 // SetRoutingRules sets the RoutingRules field's value.
24205 func (s *WebsiteConfiguration) SetRoutingRules(v []*RoutingRule) *WebsiteConfiguration {
24211 // AnalyticsS3ExportFileFormatCsv is a AnalyticsS3ExportFileFormat enum value
24212 AnalyticsS3ExportFileFormatCsv = "CSV"
24216 // BucketAccelerateStatusEnabled is a BucketAccelerateStatus enum value
24217 BucketAccelerateStatusEnabled = "Enabled"
24219 // BucketAccelerateStatusSuspended is a BucketAccelerateStatus enum value
24220 BucketAccelerateStatusSuspended = "Suspended"
24224 // BucketCannedACLPrivate is a BucketCannedACL enum value
24225 BucketCannedACLPrivate = "private"
24227 // BucketCannedACLPublicRead is a BucketCannedACL enum value
24228 BucketCannedACLPublicRead = "public-read"
24230 // BucketCannedACLPublicReadWrite is a BucketCannedACL enum value
24231 BucketCannedACLPublicReadWrite = "public-read-write"
24233 // BucketCannedACLAuthenticatedRead is a BucketCannedACL enum value
24234 BucketCannedACLAuthenticatedRead = "authenticated-read"
24238 // BucketLocationConstraintEu is a BucketLocationConstraint enum value
24239 BucketLocationConstraintEu = "EU"
24241 // BucketLocationConstraintEuWest1 is a BucketLocationConstraint enum value
24242 BucketLocationConstraintEuWest1 = "eu-west-1"
24244 // BucketLocationConstraintUsWest1 is a BucketLocationConstraint enum value
24245 BucketLocationConstraintUsWest1 = "us-west-1"
24247 // BucketLocationConstraintUsWest2 is a BucketLocationConstraint enum value
24248 BucketLocationConstraintUsWest2 = "us-west-2"
24250 // BucketLocationConstraintApSouth1 is a BucketLocationConstraint enum value
24251 BucketLocationConstraintApSouth1 = "ap-south-1"
24253 // BucketLocationConstraintApSoutheast1 is a BucketLocationConstraint enum value
24254 BucketLocationConstraintApSoutheast1 = "ap-southeast-1"
24256 // BucketLocationConstraintApSoutheast2 is a BucketLocationConstraint enum value
24257 BucketLocationConstraintApSoutheast2 = "ap-southeast-2"
24259 // BucketLocationConstraintApNortheast1 is a BucketLocationConstraint enum value
24260 BucketLocationConstraintApNortheast1 = "ap-northeast-1"
24262 // BucketLocationConstraintSaEast1 is a BucketLocationConstraint enum value
24263 BucketLocationConstraintSaEast1 = "sa-east-1"
24265 // BucketLocationConstraintCnNorth1 is a BucketLocationConstraint enum value
24266 BucketLocationConstraintCnNorth1 = "cn-north-1"
24268 // BucketLocationConstraintEuCentral1 is a BucketLocationConstraint enum value
24269 BucketLocationConstraintEuCentral1 = "eu-central-1"
24273 // BucketLogsPermissionFullControl is a BucketLogsPermission enum value
24274 BucketLogsPermissionFullControl = "FULL_CONTROL"
24276 // BucketLogsPermissionRead is a BucketLogsPermission enum value
24277 BucketLogsPermissionRead = "READ"
24279 // BucketLogsPermissionWrite is a BucketLogsPermission enum value
24280 BucketLogsPermissionWrite = "WRITE"
24284 // BucketVersioningStatusEnabled is a BucketVersioningStatus enum value
24285 BucketVersioningStatusEnabled = "Enabled"
24287 // BucketVersioningStatusSuspended is a BucketVersioningStatus enum value
24288 BucketVersioningStatusSuspended = "Suspended"
24292 // CompressionTypeNone is a CompressionType enum value
24293 CompressionTypeNone = "NONE"
24295 // CompressionTypeGzip is a CompressionType enum value
24296 CompressionTypeGzip = "GZIP"
24298 // CompressionTypeBzip2 is a CompressionType enum value
24299 CompressionTypeBzip2 = "BZIP2"
24303 // DeleteMarkerReplicationStatusEnabled is a DeleteMarkerReplicationStatus enum value
24304 DeleteMarkerReplicationStatusEnabled = "Enabled"
24306 // DeleteMarkerReplicationStatusDisabled is a DeleteMarkerReplicationStatus enum value
24307 DeleteMarkerReplicationStatusDisabled = "Disabled"
24310 // Requests Amazon S3 to encode the object keys in the response and specifies
24311 // the encoding method to use. An object key may contain any Unicode character;
24312 // however, XML 1.0 parser cannot parse some characters, such as characters
24313 // with an ASCII value from 0 to 10. For characters that are not supported in
24314 // XML 1.0, you can add this parameter to request that Amazon S3 encode the
24315 // keys in the response.
24317 // EncodingTypeUrl is a EncodingType enum value
24318 EncodingTypeUrl = "url"
24321 // The bucket event for which to send notifications.
24323 // EventS3ReducedRedundancyLostObject is a Event enum value
24324 EventS3ReducedRedundancyLostObject = "s3:ReducedRedundancyLostObject"
24326 // EventS3ObjectCreated is a Event enum value
24327 EventS3ObjectCreated = "s3:ObjectCreated:*"
24329 // EventS3ObjectCreatedPut is a Event enum value
24330 EventS3ObjectCreatedPut = "s3:ObjectCreated:Put"
24332 // EventS3ObjectCreatedPost is a Event enum value
24333 EventS3ObjectCreatedPost = "s3:ObjectCreated:Post"
24335 // EventS3ObjectCreatedCopy is a Event enum value
24336 EventS3ObjectCreatedCopy = "s3:ObjectCreated:Copy"
24338 // EventS3ObjectCreatedCompleteMultipartUpload is a Event enum value
24339 EventS3ObjectCreatedCompleteMultipartUpload = "s3:ObjectCreated:CompleteMultipartUpload"
24341 // EventS3ObjectRemoved is a Event enum value
24342 EventS3ObjectRemoved = "s3:ObjectRemoved:*"
24344 // EventS3ObjectRemovedDelete is a Event enum value
24345 EventS3ObjectRemovedDelete = "s3:ObjectRemoved:Delete"
24347 // EventS3ObjectRemovedDeleteMarkerCreated is a Event enum value
24348 EventS3ObjectRemovedDeleteMarkerCreated = "s3:ObjectRemoved:DeleteMarkerCreated"
24350 // EventS3ObjectRestorePost is a Event enum value
24351 EventS3ObjectRestorePost = "s3:ObjectRestore:Post"
24353 // EventS3ObjectRestoreCompleted is a Event enum value
24354 EventS3ObjectRestoreCompleted = "s3:ObjectRestore:Completed"
24358 // ExpirationStatusEnabled is a ExpirationStatus enum value
24359 ExpirationStatusEnabled = "Enabled"
24361 // ExpirationStatusDisabled is a ExpirationStatus enum value
24362 ExpirationStatusDisabled = "Disabled"
24366 // ExpressionTypeSql is a ExpressionType enum value
24367 ExpressionTypeSql = "SQL"
24371 // FileHeaderInfoUse is a FileHeaderInfo enum value
24372 FileHeaderInfoUse = "USE"
24374 // FileHeaderInfoIgnore is a FileHeaderInfo enum value
24375 FileHeaderInfoIgnore = "IGNORE"
24377 // FileHeaderInfoNone is a FileHeaderInfo enum value
24378 FileHeaderInfoNone = "NONE"
24382 // FilterRuleNamePrefix is a FilterRuleName enum value
24383 FilterRuleNamePrefix = "prefix"
24385 // FilterRuleNameSuffix is a FilterRuleName enum value
24386 FilterRuleNameSuffix = "suffix"
24390 // InventoryFormatCsv is a InventoryFormat enum value
24391 InventoryFormatCsv = "CSV"
24393 // InventoryFormatOrc is a InventoryFormat enum value
24394 InventoryFormatOrc = "ORC"
24396 // InventoryFormatParquet is a InventoryFormat enum value
24397 InventoryFormatParquet = "Parquet"
24401 // InventoryFrequencyDaily is a InventoryFrequency enum value
24402 InventoryFrequencyDaily = "Daily"
24404 // InventoryFrequencyWeekly is a InventoryFrequency enum value
24405 InventoryFrequencyWeekly = "Weekly"
24409 // InventoryIncludedObjectVersionsAll is a InventoryIncludedObjectVersions enum value
24410 InventoryIncludedObjectVersionsAll = "All"
24412 // InventoryIncludedObjectVersionsCurrent is a InventoryIncludedObjectVersions enum value
24413 InventoryIncludedObjectVersionsCurrent = "Current"
24417 // InventoryOptionalFieldSize is a InventoryOptionalField enum value
24418 InventoryOptionalFieldSize = "Size"
24420 // InventoryOptionalFieldLastModifiedDate is a InventoryOptionalField enum value
24421 InventoryOptionalFieldLastModifiedDate = "LastModifiedDate"
24423 // InventoryOptionalFieldStorageClass is a InventoryOptionalField enum value
24424 InventoryOptionalFieldStorageClass = "StorageClass"
24426 // InventoryOptionalFieldEtag is a InventoryOptionalField enum value
24427 InventoryOptionalFieldEtag = "ETag"
24429 // InventoryOptionalFieldIsMultipartUploaded is a InventoryOptionalField enum value
24430 InventoryOptionalFieldIsMultipartUploaded = "IsMultipartUploaded"
24432 // InventoryOptionalFieldReplicationStatus is a InventoryOptionalField enum value
24433 InventoryOptionalFieldReplicationStatus = "ReplicationStatus"
24435 // InventoryOptionalFieldEncryptionStatus is a InventoryOptionalField enum value
24436 InventoryOptionalFieldEncryptionStatus = "EncryptionStatus"
24438 // InventoryOptionalFieldObjectLockRetainUntilDate is a InventoryOptionalField enum value
24439 InventoryOptionalFieldObjectLockRetainUntilDate = "ObjectLockRetainUntilDate"
24441 // InventoryOptionalFieldObjectLockMode is a InventoryOptionalField enum value
24442 InventoryOptionalFieldObjectLockMode = "ObjectLockMode"
24444 // InventoryOptionalFieldObjectLockLegalHoldStatus is a InventoryOptionalField enum value
24445 InventoryOptionalFieldObjectLockLegalHoldStatus = "ObjectLockLegalHoldStatus"
24449 // JSONTypeDocument is a JSONType enum value
24450 JSONTypeDocument = "DOCUMENT"
24452 // JSONTypeLines is a JSONType enum value
24453 JSONTypeLines = "LINES"
24457 // MFADeleteEnabled is a MFADelete enum value
24458 MFADeleteEnabled = "Enabled"
24460 // MFADeleteDisabled is a MFADelete enum value
24461 MFADeleteDisabled = "Disabled"
24465 // MFADeleteStatusEnabled is a MFADeleteStatus enum value
24466 MFADeleteStatusEnabled = "Enabled"
24468 // MFADeleteStatusDisabled is a MFADeleteStatus enum value
24469 MFADeleteStatusDisabled = "Disabled"
24473 // MetadataDirectiveCopy is a MetadataDirective enum value
24474 MetadataDirectiveCopy = "COPY"
24476 // MetadataDirectiveReplace is a MetadataDirective enum value
24477 MetadataDirectiveReplace = "REPLACE"
24481 // ObjectCannedACLPrivate is a ObjectCannedACL enum value
24482 ObjectCannedACLPrivate = "private"
24484 // ObjectCannedACLPublicRead is a ObjectCannedACL enum value
24485 ObjectCannedACLPublicRead = "public-read"
24487 // ObjectCannedACLPublicReadWrite is a ObjectCannedACL enum value
24488 ObjectCannedACLPublicReadWrite = "public-read-write"
24490 // ObjectCannedACLAuthenticatedRead is a ObjectCannedACL enum value
24491 ObjectCannedACLAuthenticatedRead = "authenticated-read"
24493 // ObjectCannedACLAwsExecRead is a ObjectCannedACL enum value
24494 ObjectCannedACLAwsExecRead = "aws-exec-read"
24496 // ObjectCannedACLBucketOwnerRead is a ObjectCannedACL enum value
24497 ObjectCannedACLBucketOwnerRead = "bucket-owner-read"
24499 // ObjectCannedACLBucketOwnerFullControl is a ObjectCannedACL enum value
24500 ObjectCannedACLBucketOwnerFullControl = "bucket-owner-full-control"
24504 // ObjectLockEnabledEnabled is a ObjectLockEnabled enum value
24505 ObjectLockEnabledEnabled = "Enabled"
24509 // ObjectLockLegalHoldStatusOn is a ObjectLockLegalHoldStatus enum value
24510 ObjectLockLegalHoldStatusOn = "ON"
24512 // ObjectLockLegalHoldStatusOff is a ObjectLockLegalHoldStatus enum value
24513 ObjectLockLegalHoldStatusOff = "OFF"
24517 // ObjectLockModeGovernance is a ObjectLockMode enum value
24518 ObjectLockModeGovernance = "GOVERNANCE"
24520 // ObjectLockModeCompliance is a ObjectLockMode enum value
24521 ObjectLockModeCompliance = "COMPLIANCE"
24525 // ObjectLockRetentionModeGovernance is a ObjectLockRetentionMode enum value
24526 ObjectLockRetentionModeGovernance = "GOVERNANCE"
24528 // ObjectLockRetentionModeCompliance is a ObjectLockRetentionMode enum value
24529 ObjectLockRetentionModeCompliance = "COMPLIANCE"
24533 // ObjectStorageClassStandard is a ObjectStorageClass enum value
24534 ObjectStorageClassStandard = "STANDARD"
24536 // ObjectStorageClassReducedRedundancy is a ObjectStorageClass enum value
24537 ObjectStorageClassReducedRedundancy = "REDUCED_REDUNDANCY"
24539 // ObjectStorageClassGlacier is a ObjectStorageClass enum value
24540 ObjectStorageClassGlacier = "GLACIER"
24542 // ObjectStorageClassStandardIa is a ObjectStorageClass enum value
24543 ObjectStorageClassStandardIa = "STANDARD_IA"
24545 // ObjectStorageClassOnezoneIa is a ObjectStorageClass enum value
24546 ObjectStorageClassOnezoneIa = "ONEZONE_IA"
24548 // ObjectStorageClassIntelligentTiering is a ObjectStorageClass enum value
24549 ObjectStorageClassIntelligentTiering = "INTELLIGENT_TIERING"
24551 // ObjectStorageClassDeepArchive is a ObjectStorageClass enum value
24552 ObjectStorageClassDeepArchive = "DEEP_ARCHIVE"
24556 // ObjectVersionStorageClassStandard is a ObjectVersionStorageClass enum value
24557 ObjectVersionStorageClassStandard = "STANDARD"
24561 // OwnerOverrideDestination is a OwnerOverride enum value
24562 OwnerOverrideDestination = "Destination"
24566 // PayerRequester is a Payer enum value
24567 PayerRequester = "Requester"
24569 // PayerBucketOwner is a Payer enum value
24570 PayerBucketOwner = "BucketOwner"
24574 // PermissionFullControl is a Permission enum value
24575 PermissionFullControl = "FULL_CONTROL"
24577 // PermissionWrite is a Permission enum value
24578 PermissionWrite = "WRITE"
24580 // PermissionWriteAcp is a Permission enum value
24581 PermissionWriteAcp = "WRITE_ACP"
24583 // PermissionRead is a Permission enum value
24584 PermissionRead = "READ"
24586 // PermissionReadAcp is a Permission enum value
24587 PermissionReadAcp = "READ_ACP"
24591 // ProtocolHttp is a Protocol enum value
24592 ProtocolHttp = "http"
24594 // ProtocolHttps is a Protocol enum value
24595 ProtocolHttps = "https"
24599 // QuoteFieldsAlways is a QuoteFields enum value
24600 QuoteFieldsAlways = "ALWAYS"
24602 // QuoteFieldsAsneeded is a QuoteFields enum value
24603 QuoteFieldsAsneeded = "ASNEEDED"
24607 // ReplicationRuleStatusEnabled is a ReplicationRuleStatus enum value
24608 ReplicationRuleStatusEnabled = "Enabled"
24610 // ReplicationRuleStatusDisabled is a ReplicationRuleStatus enum value
24611 ReplicationRuleStatusDisabled = "Disabled"
24615 // ReplicationStatusComplete is a ReplicationStatus enum value
24616 ReplicationStatusComplete = "COMPLETE"
24618 // ReplicationStatusPending is a ReplicationStatus enum value
24619 ReplicationStatusPending = "PENDING"
24621 // ReplicationStatusFailed is a ReplicationStatus enum value
24622 ReplicationStatusFailed = "FAILED"
24624 // ReplicationStatusReplica is a ReplicationStatus enum value
24625 ReplicationStatusReplica = "REPLICA"
24628 // If present, indicates that the requester was successfully charged for the
24631 // RequestChargedRequester is a RequestCharged enum value
24632 RequestChargedRequester = "requester"
24635 // Confirms that the requester knows that she or he will be charged for the
24636 // request. Bucket owners need not specify this parameter in their requests.
24637 // Documentation on downloading objects from requester pays buckets can be found
24638 // at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
24640 // RequestPayerRequester is a RequestPayer enum value
24641 RequestPayerRequester = "requester"
24645 // RestoreRequestTypeSelect is a RestoreRequestType enum value
24646 RestoreRequestTypeSelect = "SELECT"
24650 // ServerSideEncryptionAes256 is a ServerSideEncryption enum value
24651 ServerSideEncryptionAes256 = "AES256"
24653 // ServerSideEncryptionAwsKms is a ServerSideEncryption enum value
24654 ServerSideEncryptionAwsKms = "aws:kms"
24658 // SseKmsEncryptedObjectsStatusEnabled is a SseKmsEncryptedObjectsStatus enum value
24659 SseKmsEncryptedObjectsStatusEnabled = "Enabled"
24661 // SseKmsEncryptedObjectsStatusDisabled is a SseKmsEncryptedObjectsStatus enum value
24662 SseKmsEncryptedObjectsStatusDisabled = "Disabled"
24666 // StorageClassStandard is a StorageClass enum value
24667 StorageClassStandard = "STANDARD"
24669 // StorageClassReducedRedundancy is a StorageClass enum value
24670 StorageClassReducedRedundancy = "REDUCED_REDUNDANCY"
24672 // StorageClassStandardIa is a StorageClass enum value
24673 StorageClassStandardIa = "STANDARD_IA"
24675 // StorageClassOnezoneIa is a StorageClass enum value
24676 StorageClassOnezoneIa = "ONEZONE_IA"
24678 // StorageClassIntelligentTiering is a StorageClass enum value
24679 StorageClassIntelligentTiering = "INTELLIGENT_TIERING"
24681 // StorageClassGlacier is a StorageClass enum value
24682 StorageClassGlacier = "GLACIER"
24684 // StorageClassDeepArchive is a StorageClass enum value
24685 StorageClassDeepArchive = "DEEP_ARCHIVE"
24689 // StorageClassAnalysisSchemaVersionV1 is a StorageClassAnalysisSchemaVersion enum value
24690 StorageClassAnalysisSchemaVersionV1 = "V_1"
24694 // TaggingDirectiveCopy is a TaggingDirective enum value
24695 TaggingDirectiveCopy = "COPY"
24697 // TaggingDirectiveReplace is a TaggingDirective enum value
24698 TaggingDirectiveReplace = "REPLACE"
24702 // TierStandard is a Tier enum value
24703 TierStandard = "Standard"
24705 // TierBulk is a Tier enum value
24708 // TierExpedited is a Tier enum value
24709 TierExpedited = "Expedited"
24713 // TransitionStorageClassGlacier is a TransitionStorageClass enum value
24714 TransitionStorageClassGlacier = "GLACIER"
24716 // TransitionStorageClassStandardIa is a TransitionStorageClass enum value
24717 TransitionStorageClassStandardIa = "STANDARD_IA"
24719 // TransitionStorageClassOnezoneIa is a TransitionStorageClass enum value
24720 TransitionStorageClassOnezoneIa = "ONEZONE_IA"
24722 // TransitionStorageClassIntelligentTiering is a TransitionStorageClass enum value
24723 TransitionStorageClassIntelligentTiering = "INTELLIGENT_TIERING"
24725 // TransitionStorageClassDeepArchive is a TransitionStorageClass enum value
24726 TransitionStorageClassDeepArchive = "DEEP_ARCHIVE"
24730 // TypeCanonicalUser is a Type enum value
24731 TypeCanonicalUser = "CanonicalUser"
24733 // TypeAmazonCustomerByEmail is a Type enum value
24734 TypeAmazonCustomerByEmail = "AmazonCustomerByEmail"
24736 // TypeGroup is a Type enum value
24737 TypeGroup = "Group"