// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. package s3control import ( "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/internal/s3shared/arn" "github.com/aws/aws-sdk-go/private/checksum" "github.com/aws/aws-sdk-go/private/protocol" "github.com/aws/aws-sdk-go/private/protocol/restxml" ) const opCreateAccessPoint = "CreateAccessPoint" // CreateAccessPointRequest generates a "aws/request.Request" representing the // client's request for the CreateAccessPoint operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See CreateAccessPoint for more information on using the CreateAccessPoint // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the CreateAccessPointRequest method. // req, resp := client.CreateAccessPointRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/CreateAccessPoint func (c *S3Control) CreateAccessPointRequest(input *CreateAccessPointInput) (req *request.Request, output *CreateAccessPointOutput) { op := &request.Operation{ Name: opCreateAccessPoint, HTTPMethod: "PUT", HTTPPath: "/v20180820/accesspoint/{name}", } if input == nil { input = &CreateAccessPointInput{} } output = &CreateAccessPointOutput{} req = c.newRequest(op, input, output) // update account id or check if provided input for account id member matches // the account id present in ARN req.Handlers.Validate.PushFrontNamed(updateAccountIDWithARNHandler) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } // CreateAccessPoint API operation for AWS S3 Control. // // Creates an access point and associates it with the specified bucket. For // more information, see Managing Data Access with Amazon S3 Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-points.html) // in the Amazon S3 User Guide. // // S3 on Outposts only supports VPC-style access points. // // For more information, see Accessing Amazon S3 on Outposts using virtual private // cloud (VPC) only access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) // in the Amazon S3 User Guide. // // All Amazon S3 on Outposts REST API requests for this action require an additional // parameter of x-amz-outpost-id to be passed with the request. In addition, // you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. // For an example of the request syntax for Amazon S3 on Outposts that uses // the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived // by using the access point ARN, see the Examples (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateAccessPoint.html#API_control_CreateAccessPoint_Examples) // section. // // The following actions are related to CreateAccessPoint: // // * GetAccessPoint (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetAccessPoint.html) // // * DeleteAccessPoint (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DeleteAccessPoint.html) // // * ListAccessPoints (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_ListAccessPoints.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation CreateAccessPoint for usage and error information. // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/CreateAccessPoint func (c *S3Control) CreateAccessPoint(input *CreateAccessPointInput) (*CreateAccessPointOutput, error) { req, out := c.CreateAccessPointRequest(input) return out, req.Send() } // CreateAccessPointWithContext is the same as CreateAccessPoint with the addition of // the ability to pass a context and additional request options. // // See CreateAccessPoint for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) CreateAccessPointWithContext(ctx aws.Context, input *CreateAccessPointInput, opts ...request.Option) (*CreateAccessPointOutput, error) { req, out := c.CreateAccessPointRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opCreateAccessPointForObjectLambda = "CreateAccessPointForObjectLambda" // CreateAccessPointForObjectLambdaRequest generates a "aws/request.Request" representing the // client's request for the CreateAccessPointForObjectLambda operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See CreateAccessPointForObjectLambda for more information on using the CreateAccessPointForObjectLambda // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the CreateAccessPointForObjectLambdaRequest method. // req, resp := client.CreateAccessPointForObjectLambdaRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/CreateAccessPointForObjectLambda func (c *S3Control) CreateAccessPointForObjectLambdaRequest(input *CreateAccessPointForObjectLambdaInput) (req *request.Request, output *CreateAccessPointForObjectLambdaOutput) { op := &request.Operation{ Name: opCreateAccessPointForObjectLambda, HTTPMethod: "PUT", HTTPPath: "/v20180820/accesspointforobjectlambda/{name}", } if input == nil { input = &CreateAccessPointForObjectLambdaInput{} } output = &CreateAccessPointForObjectLambdaOutput{} req = c.newRequest(op, input, output) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } // CreateAccessPointForObjectLambda API operation for AWS S3 Control. // // Creates an Object Lambda Access Point. For more information, see Transforming // objects with Object Lambda Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/transforming-objects.html) // in the Amazon S3 User Guide. // // The following actions are related to CreateAccessPointForObjectLambda: // // * DeleteAccessPointForObjectLambda (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DeleteAccessPointForObjectLambda.html) // // * GetAccessPointForObjectLambda (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetAccessPointForObjectLambda.html) // // * ListAccessPointsForObjectLambda (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_ListAccessPointsForObjectLambda.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation CreateAccessPointForObjectLambda for usage and error information. // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/CreateAccessPointForObjectLambda func (c *S3Control) CreateAccessPointForObjectLambda(input *CreateAccessPointForObjectLambdaInput) (*CreateAccessPointForObjectLambdaOutput, error) { req, out := c.CreateAccessPointForObjectLambdaRequest(input) return out, req.Send() } // CreateAccessPointForObjectLambdaWithContext is the same as CreateAccessPointForObjectLambda with the addition of // the ability to pass a context and additional request options. // // See CreateAccessPointForObjectLambda for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) CreateAccessPointForObjectLambdaWithContext(ctx aws.Context, input *CreateAccessPointForObjectLambdaInput, opts ...request.Option) (*CreateAccessPointForObjectLambdaOutput, error) { req, out := c.CreateAccessPointForObjectLambdaRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opCreateBucket = "CreateBucket" // CreateBucketRequest generates a "aws/request.Request" representing the // client's request for the CreateBucket operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See CreateBucket for more information on using the CreateBucket // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the CreateBucketRequest method. // req, resp := client.CreateBucketRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/CreateBucket func (c *S3Control) CreateBucketRequest(input *CreateBucketInput) (req *request.Request, output *CreateBucketOutput) { op := &request.Operation{ Name: opCreateBucket, HTTPMethod: "PUT", HTTPPath: "/v20180820/bucket/{name}", } if input == nil { input = &CreateBucketInput{} } output = &CreateBucketOutput{} req = c.newRequest(op, input, output) req.Handlers.Build.PushBackNamed(request.NamedHandler{ Name: "contentMd5Handler", Fn: checksum.AddBodyContentMD5Handler, }) return } // CreateBucket API operation for AWS S3 Control. // // // This action creates an Amazon S3 on Outposts bucket. To create an S3 bucket, // see Create Bucket (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html) // in the Amazon S3 API Reference. // // Creates a new Outposts bucket. By creating the bucket, you become the bucket // owner. To create an Outposts bucket, you must have S3 on Outposts. For more // information, see Using Amazon S3 on Outposts (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) // in Amazon S3 User Guide. // // Not every string is an acceptable bucket name. For information on bucket // naming restrictions, see Working with Amazon S3 Buckets (https://docs.aws.amazon.com/AmazonS3/latest/userguide/BucketRestrictions.html#bucketnamingrules). // // S3 on Outposts buckets support: // // * Tags // // * LifecycleConfigurations for deleting expired objects // // For a complete list of restrictions and Amazon S3 feature limitations on // S3 on Outposts, see Amazon S3 on Outposts Restrictions and Limitations (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3OnOutpostsRestrictionsLimitations.html). // // For an example of the request syntax for Amazon S3 on Outposts that uses // the S3 on Outposts endpoint hostname prefix and x-amz-outpost-id in your // API request, see the Examples (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateBucket.html#API_control_CreateBucket_Examples) // section. // // The following actions are related to CreateBucket for Amazon S3 on Outposts: // // * PutObject (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html) // // * GetBucket (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetBucket.html) // // * DeleteBucket (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DeleteBucket.html) // // * CreateAccessPoint (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateAccessPoint.html) // // * PutAccessPointPolicy (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_PutAccessPointPolicy.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation CreateBucket for usage and error information. // // Returned Error Codes: // * ErrCodeBucketAlreadyExists "BucketAlreadyExists" // The requested Outposts bucket name is not available. The bucket namespace // is shared by all users of the Outposts in this Region. Select a different // name and try again. // // * ErrCodeBucketAlreadyOwnedByYou "BucketAlreadyOwnedByYou" // The Outposts bucket you tried to create already exists, and you own it. // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/CreateBucket func (c *S3Control) CreateBucket(input *CreateBucketInput) (*CreateBucketOutput, error) { req, out := c.CreateBucketRequest(input) return out, req.Send() } // CreateBucketWithContext is the same as CreateBucket with the addition of // the ability to pass a context and additional request options. // // See CreateBucket for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) CreateBucketWithContext(ctx aws.Context, input *CreateBucketInput, opts ...request.Option) (*CreateBucketOutput, error) { req, out := c.CreateBucketRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opCreateJob = "CreateJob" // CreateJobRequest generates a "aws/request.Request" representing the // client's request for the CreateJob operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See CreateJob for more information on using the CreateJob // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the CreateJobRequest method. // req, resp := client.CreateJobRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/CreateJob func (c *S3Control) CreateJobRequest(input *CreateJobInput) (req *request.Request, output *CreateJobOutput) { op := &request.Operation{ Name: opCreateJob, HTTPMethod: "POST", HTTPPath: "/v20180820/jobs", } if input == nil { input = &CreateJobInput{} } output = &CreateJobOutput{} req = c.newRequest(op, input, output) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } // CreateJob API operation for AWS S3 Control. // // You can use S3 Batch Operations to perform large-scale batch actions on Amazon // S3 objects. Batch Operations can run a single action on lists of Amazon S3 // objects that you specify. For more information, see S3 Batch Operations (https://docs.aws.amazon.com/AmazonS3/latest/userguide/batch-ops.html) // in the Amazon S3 User Guide. // // This action creates a S3 Batch Operations job. // // Related actions include: // // * DescribeJob (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DescribeJob.html) // // * ListJobs (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_ListJobs.html) // // * UpdateJobPriority (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_UpdateJobPriority.html) // // * UpdateJobStatus (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_UpdateJobStatus.html) // // * JobOperation (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_JobOperation.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation CreateJob for usage and error information. // // Returned Error Codes: // * ErrCodeTooManyRequestsException "TooManyRequestsException" // // * ErrCodeBadRequestException "BadRequestException" // // * ErrCodeIdempotencyException "IdempotencyException" // // * ErrCodeInternalServiceException "InternalServiceException" // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/CreateJob func (c *S3Control) CreateJob(input *CreateJobInput) (*CreateJobOutput, error) { req, out := c.CreateJobRequest(input) return out, req.Send() } // CreateJobWithContext is the same as CreateJob with the addition of // the ability to pass a context and additional request options. // // See CreateJob for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) CreateJobWithContext(ctx aws.Context, input *CreateJobInput, opts ...request.Option) (*CreateJobOutput, error) { req, out := c.CreateJobRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opCreateMultiRegionAccessPoint = "CreateMultiRegionAccessPoint" // CreateMultiRegionAccessPointRequest generates a "aws/request.Request" representing the // client's request for the CreateMultiRegionAccessPoint operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See CreateMultiRegionAccessPoint for more information on using the CreateMultiRegionAccessPoint // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the CreateMultiRegionAccessPointRequest method. // req, resp := client.CreateMultiRegionAccessPointRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/CreateMultiRegionAccessPoint func (c *S3Control) CreateMultiRegionAccessPointRequest(input *CreateMultiRegionAccessPointInput) (req *request.Request, output *CreateMultiRegionAccessPointOutput) { op := &request.Operation{ Name: opCreateMultiRegionAccessPoint, HTTPMethod: "POST", HTTPPath: "/v20180820/async-requests/mrap/create", } if input == nil { input = &CreateMultiRegionAccessPointInput{} } output = &CreateMultiRegionAccessPointOutput{} req = c.newRequest(op, input, output) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) req.Handlers.Build.PushBackNamed(request.NamedHandler{ Name: "contentMd5Handler", Fn: checksum.AddBodyContentMD5Handler, }) return } // CreateMultiRegionAccessPoint API operation for AWS S3 Control. // // Creates a Multi-Region Access Point and associates it with the specified // buckets. For more information about creating Multi-Region Access Points, // see Creating Multi-Region Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/CreatingMultiRegionAccessPoints.html) // in the Amazon S3 User Guide. // // This action will always be routed to the US West (Oregon) Region. For more // information about the restrictions around managing Multi-Region Access Points, // see Managing Multi-Region Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/ManagingMultiRegionAccessPoints.html) // in the Amazon S3 User Guide. // // This request is asynchronous, meaning that you might receive a response before // the command has completed. When this request provides a response, it provides // a token that you can use to monitor the status of the request with DescribeMultiRegionAccessPointOperation. // // The following actions are related to CreateMultiRegionAccessPoint: // // * DeleteMultiRegionAccessPoint (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DeleteMultiRegionAccessPoint.html) // // * DescribeMultiRegionAccessPointOperation (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DescribeMultiRegionAccessPointOperation.html) // // * GetMultiRegionAccessPoint (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetMultiRegionAccessPoint.html) // // * ListMultiRegionAccessPoints (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_ListMultiRegionAccessPoints.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation CreateMultiRegionAccessPoint for usage and error information. // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/CreateMultiRegionAccessPoint func (c *S3Control) CreateMultiRegionAccessPoint(input *CreateMultiRegionAccessPointInput) (*CreateMultiRegionAccessPointOutput, error) { req, out := c.CreateMultiRegionAccessPointRequest(input) return out, req.Send() } // CreateMultiRegionAccessPointWithContext is the same as CreateMultiRegionAccessPoint with the addition of // the ability to pass a context and additional request options. // // See CreateMultiRegionAccessPoint for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) CreateMultiRegionAccessPointWithContext(ctx aws.Context, input *CreateMultiRegionAccessPointInput, opts ...request.Option) (*CreateMultiRegionAccessPointOutput, error) { req, out := c.CreateMultiRegionAccessPointRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opDeleteAccessPoint = "DeleteAccessPoint" // DeleteAccessPointRequest generates a "aws/request.Request" representing the // client's request for the DeleteAccessPoint operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See DeleteAccessPoint for more information on using the DeleteAccessPoint // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the DeleteAccessPointRequest method. // req, resp := client.DeleteAccessPointRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/DeleteAccessPoint func (c *S3Control) DeleteAccessPointRequest(input *DeleteAccessPointInput) (req *request.Request, output *DeleteAccessPointOutput) { op := &request.Operation{ Name: opDeleteAccessPoint, HTTPMethod: "DELETE", HTTPPath: "/v20180820/accesspoint/{name}", } if input == nil { input = &DeleteAccessPointInput{} } output = &DeleteAccessPointOutput{} req = c.newRequest(op, input, output) // update account id or check if provided input for account id member matches // the account id present in ARN req.Handlers.Validate.PushFrontNamed(updateAccountIDWithARNHandler) req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } // DeleteAccessPoint API operation for AWS S3 Control. // // Deletes the specified access point. // // All Amazon S3 on Outposts REST API requests for this action require an additional // parameter of x-amz-outpost-id to be passed with the request. In addition, // you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. // For an example of the request syntax for Amazon S3 on Outposts that uses // the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived // by using the access point ARN, see the Examples (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DeleteAccessPoint.html#API_control_DeleteAccessPoint_Examples) // section. // // The following actions are related to DeleteAccessPoint: // // * CreateAccessPoint (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateAccessPoint.html) // // * GetAccessPoint (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetAccessPoint.html) // // * ListAccessPoints (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_ListAccessPoints.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation DeleteAccessPoint for usage and error information. // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/DeleteAccessPoint func (c *S3Control) DeleteAccessPoint(input *DeleteAccessPointInput) (*DeleteAccessPointOutput, error) { req, out := c.DeleteAccessPointRequest(input) return out, req.Send() } // DeleteAccessPointWithContext is the same as DeleteAccessPoint with the addition of // the ability to pass a context and additional request options. // // See DeleteAccessPoint for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) DeleteAccessPointWithContext(ctx aws.Context, input *DeleteAccessPointInput, opts ...request.Option) (*DeleteAccessPointOutput, error) { req, out := c.DeleteAccessPointRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opDeleteAccessPointForObjectLambda = "DeleteAccessPointForObjectLambda" // DeleteAccessPointForObjectLambdaRequest generates a "aws/request.Request" representing the // client's request for the DeleteAccessPointForObjectLambda operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See DeleteAccessPointForObjectLambda for more information on using the DeleteAccessPointForObjectLambda // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the DeleteAccessPointForObjectLambdaRequest method. // req, resp := client.DeleteAccessPointForObjectLambdaRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/DeleteAccessPointForObjectLambda func (c *S3Control) DeleteAccessPointForObjectLambdaRequest(input *DeleteAccessPointForObjectLambdaInput) (req *request.Request, output *DeleteAccessPointForObjectLambdaOutput) { op := &request.Operation{ Name: opDeleteAccessPointForObjectLambda, HTTPMethod: "DELETE", HTTPPath: "/v20180820/accesspointforobjectlambda/{name}", } if input == nil { input = &DeleteAccessPointForObjectLambdaInput{} } output = &DeleteAccessPointForObjectLambdaOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } // DeleteAccessPointForObjectLambda API operation for AWS S3 Control. // // Deletes the specified Object Lambda Access Point. // // The following actions are related to DeleteAccessPointForObjectLambda: // // * CreateAccessPointForObjectLambda (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateAccessPointForObjectLambda.html) // // * GetAccessPointForObjectLambda (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetAccessPointForObjectLambda.html) // // * ListAccessPointsForObjectLambda (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_ListAccessPointsForObjectLambda.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation DeleteAccessPointForObjectLambda for usage and error information. // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/DeleteAccessPointForObjectLambda func (c *S3Control) DeleteAccessPointForObjectLambda(input *DeleteAccessPointForObjectLambdaInput) (*DeleteAccessPointForObjectLambdaOutput, error) { req, out := c.DeleteAccessPointForObjectLambdaRequest(input) return out, req.Send() } // DeleteAccessPointForObjectLambdaWithContext is the same as DeleteAccessPointForObjectLambda with the addition of // the ability to pass a context and additional request options. // // See DeleteAccessPointForObjectLambda for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) DeleteAccessPointForObjectLambdaWithContext(ctx aws.Context, input *DeleteAccessPointForObjectLambdaInput, opts ...request.Option) (*DeleteAccessPointForObjectLambdaOutput, error) { req, out := c.DeleteAccessPointForObjectLambdaRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opDeleteAccessPointPolicy = "DeleteAccessPointPolicy" // DeleteAccessPointPolicyRequest generates a "aws/request.Request" representing the // client's request for the DeleteAccessPointPolicy operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See DeleteAccessPointPolicy for more information on using the DeleteAccessPointPolicy // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the DeleteAccessPointPolicyRequest method. // req, resp := client.DeleteAccessPointPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/DeleteAccessPointPolicy func (c *S3Control) DeleteAccessPointPolicyRequest(input *DeleteAccessPointPolicyInput) (req *request.Request, output *DeleteAccessPointPolicyOutput) { op := &request.Operation{ Name: opDeleteAccessPointPolicy, HTTPMethod: "DELETE", HTTPPath: "/v20180820/accesspoint/{name}/policy", } if input == nil { input = &DeleteAccessPointPolicyInput{} } output = &DeleteAccessPointPolicyOutput{} req = c.newRequest(op, input, output) // update account id or check if provided input for account id member matches // the account id present in ARN req.Handlers.Validate.PushFrontNamed(updateAccountIDWithARNHandler) req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } // DeleteAccessPointPolicy API operation for AWS S3 Control. // // Deletes the access point policy for the specified access point. // // All Amazon S3 on Outposts REST API requests for this action require an additional // parameter of x-amz-outpost-id to be passed with the request. In addition, // you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. // For an example of the request syntax for Amazon S3 on Outposts that uses // the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived // by using the access point ARN, see the Examples (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DeleteAccessPointPolicy.html#API_control_DeleteAccessPointPolicy_Examples) // section. // // The following actions are related to DeleteAccessPointPolicy: // // * PutAccessPointPolicy (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_PutAccessPointPolicy.html) // // * GetAccessPointPolicy (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetAccessPointPolicy.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation DeleteAccessPointPolicy for usage and error information. // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/DeleteAccessPointPolicy func (c *S3Control) DeleteAccessPointPolicy(input *DeleteAccessPointPolicyInput) (*DeleteAccessPointPolicyOutput, error) { req, out := c.DeleteAccessPointPolicyRequest(input) return out, req.Send() } // DeleteAccessPointPolicyWithContext is the same as DeleteAccessPointPolicy with the addition of // the ability to pass a context and additional request options. // // See DeleteAccessPointPolicy for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) DeleteAccessPointPolicyWithContext(ctx aws.Context, input *DeleteAccessPointPolicyInput, opts ...request.Option) (*DeleteAccessPointPolicyOutput, error) { req, out := c.DeleteAccessPointPolicyRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opDeleteAccessPointPolicyForObjectLambda = "DeleteAccessPointPolicyForObjectLambda" // DeleteAccessPointPolicyForObjectLambdaRequest generates a "aws/request.Request" representing the // client's request for the DeleteAccessPointPolicyForObjectLambda operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See DeleteAccessPointPolicyForObjectLambda for more information on using the DeleteAccessPointPolicyForObjectLambda // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the DeleteAccessPointPolicyForObjectLambdaRequest method. // req, resp := client.DeleteAccessPointPolicyForObjectLambdaRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/DeleteAccessPointPolicyForObjectLambda func (c *S3Control) DeleteAccessPointPolicyForObjectLambdaRequest(input *DeleteAccessPointPolicyForObjectLambdaInput) (req *request.Request, output *DeleteAccessPointPolicyForObjectLambdaOutput) { op := &request.Operation{ Name: opDeleteAccessPointPolicyForObjectLambda, HTTPMethod: "DELETE", HTTPPath: "/v20180820/accesspointforobjectlambda/{name}/policy", } if input == nil { input = &DeleteAccessPointPolicyForObjectLambdaInput{} } output = &DeleteAccessPointPolicyForObjectLambdaOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } // DeleteAccessPointPolicyForObjectLambda API operation for AWS S3 Control. // // Removes the resource policy for an Object Lambda Access Point. // // The following actions are related to DeleteAccessPointPolicyForObjectLambda: // // * GetAccessPointPolicyForObjectLambda (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetAccessPointPolicyForObjectLambda.html) // // * PutAccessPointPolicyForObjectLambda (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_PutAccessPointPolicyForObjectLambda.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation DeleteAccessPointPolicyForObjectLambda for usage and error information. // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/DeleteAccessPointPolicyForObjectLambda func (c *S3Control) DeleteAccessPointPolicyForObjectLambda(input *DeleteAccessPointPolicyForObjectLambdaInput) (*DeleteAccessPointPolicyForObjectLambdaOutput, error) { req, out := c.DeleteAccessPointPolicyForObjectLambdaRequest(input) return out, req.Send() } // DeleteAccessPointPolicyForObjectLambdaWithContext is the same as DeleteAccessPointPolicyForObjectLambda with the addition of // the ability to pass a context and additional request options. // // See DeleteAccessPointPolicyForObjectLambda for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) DeleteAccessPointPolicyForObjectLambdaWithContext(ctx aws.Context, input *DeleteAccessPointPolicyForObjectLambdaInput, opts ...request.Option) (*DeleteAccessPointPolicyForObjectLambdaOutput, error) { req, out := c.DeleteAccessPointPolicyForObjectLambdaRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opDeleteBucket = "DeleteBucket" // DeleteBucketRequest generates a "aws/request.Request" representing the // client's request for the DeleteBucket operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See DeleteBucket for more information on using the DeleteBucket // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the DeleteBucketRequest method. // req, resp := client.DeleteBucketRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/DeleteBucket func (c *S3Control) DeleteBucketRequest(input *DeleteBucketInput) (req *request.Request, output *DeleteBucketOutput) { op := &request.Operation{ Name: opDeleteBucket, HTTPMethod: "DELETE", HTTPPath: "/v20180820/bucket/{name}", } if input == nil { input = &DeleteBucketInput{} } output = &DeleteBucketOutput{} req = c.newRequest(op, input, output) // update account id or check if provided input for account id member matches // the account id present in ARN req.Handlers.Validate.PushFrontNamed(updateAccountIDWithARNHandler) req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } // DeleteBucket API operation for AWS S3 Control. // // // This action deletes an Amazon S3 on Outposts bucket. To delete an S3 bucket, // see DeleteBucket (https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucket.html) // in the Amazon S3 API Reference. // // Deletes the Amazon S3 on Outposts bucket. All objects (including all object // versions and delete markers) in the bucket must be deleted before the bucket // itself can be deleted. For more information, see Using Amazon S3 on Outposts // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) // in Amazon S3 User Guide. // // All Amazon S3 on Outposts REST API requests for this action require an additional // parameter of x-amz-outpost-id to be passed with the request. In addition, // you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. // For an example of the request syntax for Amazon S3 on Outposts that uses // the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived // by using the access point ARN, see the Examples (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DeleteBucket.html#API_control_DeleteBucket_Examples) // section. // // Related Resources // // * CreateBucket (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateBucket.html) // // * GetBucket (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetBucket.html) // // * DeleteObject (https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObject.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation DeleteBucket for usage and error information. // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/DeleteBucket func (c *S3Control) DeleteBucket(input *DeleteBucketInput) (*DeleteBucketOutput, error) { req, out := c.DeleteBucketRequest(input) return out, req.Send() } // DeleteBucketWithContext is the same as DeleteBucket with the addition of // the ability to pass a context and additional request options. // // See DeleteBucket for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) DeleteBucketWithContext(ctx aws.Context, input *DeleteBucketInput, opts ...request.Option) (*DeleteBucketOutput, error) { req, out := c.DeleteBucketRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opDeleteBucketLifecycleConfiguration = "DeleteBucketLifecycleConfiguration" // DeleteBucketLifecycleConfigurationRequest generates a "aws/request.Request" representing the // client's request for the DeleteBucketLifecycleConfiguration operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See DeleteBucketLifecycleConfiguration for more information on using the DeleteBucketLifecycleConfiguration // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the DeleteBucketLifecycleConfigurationRequest method. // req, resp := client.DeleteBucketLifecycleConfigurationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/DeleteBucketLifecycleConfiguration func (c *S3Control) DeleteBucketLifecycleConfigurationRequest(input *DeleteBucketLifecycleConfigurationInput) (req *request.Request, output *DeleteBucketLifecycleConfigurationOutput) { op := &request.Operation{ Name: opDeleteBucketLifecycleConfiguration, HTTPMethod: "DELETE", HTTPPath: "/v20180820/bucket/{name}/lifecycleconfiguration", } if input == nil { input = &DeleteBucketLifecycleConfigurationInput{} } output = &DeleteBucketLifecycleConfigurationOutput{} req = c.newRequest(op, input, output) // update account id or check if provided input for account id member matches // the account id present in ARN req.Handlers.Validate.PushFrontNamed(updateAccountIDWithARNHandler) req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } // DeleteBucketLifecycleConfiguration API operation for AWS S3 Control. // // // This action deletes an Amazon S3 on Outposts bucket's lifecycle configuration. // To delete an S3 bucket's lifecycle configuration, see DeleteBucketLifecycle // (https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketLifecycle.html) // in the Amazon S3 API Reference. // // Deletes the lifecycle configuration from the specified Outposts bucket. Amazon // S3 on Outposts removes all the lifecycle configuration rules in the lifecycle // subresource associated with the bucket. Your objects never expire, and Amazon // S3 on Outposts no longer automatically deletes any objects on the basis of // rules contained in the deleted lifecycle configuration. For more information, // see Using Amazon S3 on Outposts (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) // in Amazon S3 User Guide. // // To use this action, you must have permission to perform the s3-outposts:DeleteLifecycleConfiguration // action. By default, the bucket owner has this permission and the Outposts // bucket owner can grant this permission to others. // // All Amazon S3 on Outposts REST API requests for this action require an additional // parameter of x-amz-outpost-id to be passed with the request. In addition, // you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. // For an example of the request syntax for Amazon S3 on Outposts that uses // the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived // by using the access point ARN, see the Examples (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DeleteBucketLifecycleConfiguration.html#API_control_DeleteBucketLifecycleConfiguration_Examples) // section. // // For more information about object expiration, see Elements to Describe Lifecycle // Actions (https://docs.aws.amazon.com/AmazonS3/latest/dev/intro-lifecycle-rules.html#intro-lifecycle-rules-actions). // // Related actions include: // // * PutBucketLifecycleConfiguration (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_PutBucketLifecycleConfiguration.html) // // * GetBucketLifecycleConfiguration (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetBucketLifecycleConfiguration.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation DeleteBucketLifecycleConfiguration for usage and error information. // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/DeleteBucketLifecycleConfiguration func (c *S3Control) DeleteBucketLifecycleConfiguration(input *DeleteBucketLifecycleConfigurationInput) (*DeleteBucketLifecycleConfigurationOutput, error) { req, out := c.DeleteBucketLifecycleConfigurationRequest(input) return out, req.Send() } // DeleteBucketLifecycleConfigurationWithContext is the same as DeleteBucketLifecycleConfiguration with the addition of // the ability to pass a context and additional request options. // // See DeleteBucketLifecycleConfiguration for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) DeleteBucketLifecycleConfigurationWithContext(ctx aws.Context, input *DeleteBucketLifecycleConfigurationInput, opts ...request.Option) (*DeleteBucketLifecycleConfigurationOutput, error) { req, out := c.DeleteBucketLifecycleConfigurationRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opDeleteBucketPolicy = "DeleteBucketPolicy" // DeleteBucketPolicyRequest generates a "aws/request.Request" representing the // client's request for the DeleteBucketPolicy operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See DeleteBucketPolicy for more information on using the DeleteBucketPolicy // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the DeleteBucketPolicyRequest method. // req, resp := client.DeleteBucketPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/DeleteBucketPolicy func (c *S3Control) DeleteBucketPolicyRequest(input *DeleteBucketPolicyInput) (req *request.Request, output *DeleteBucketPolicyOutput) { op := &request.Operation{ Name: opDeleteBucketPolicy, HTTPMethod: "DELETE", HTTPPath: "/v20180820/bucket/{name}/policy", } if input == nil { input = &DeleteBucketPolicyInput{} } output = &DeleteBucketPolicyOutput{} req = c.newRequest(op, input, output) // update account id or check if provided input for account id member matches // the account id present in ARN req.Handlers.Validate.PushFrontNamed(updateAccountIDWithARNHandler) req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } // DeleteBucketPolicy API operation for AWS S3 Control. // // // This action deletes an Amazon S3 on Outposts bucket policy. To delete an // S3 bucket policy, see DeleteBucketPolicy (https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketPolicy.html) // in the Amazon S3 API Reference. // // This implementation of the DELETE action uses the policy subresource to delete // the policy of a specified Amazon S3 on Outposts bucket. If you are using // an identity other than the root user of the Amazon Web Services account that // owns the bucket, the calling identity must have the s3-outposts:DeleteBucketPolicy // permissions on the specified Outposts bucket and belong to the bucket owner's // account to use this action. For more information, see Using Amazon S3 on // Outposts (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) // in Amazon S3 User Guide. // // If you don't have DeleteBucketPolicy permissions, Amazon S3 returns a 403 // Access Denied error. If you have the correct permissions, but you're not // using an identity that belongs to the bucket owner's account, Amazon S3 returns // a 405 Method Not Allowed error. // // As a security precaution, the root user of the Amazon Web Services account // that owns a bucket can always use this action, even if the policy explicitly // denies the root user the ability to perform this action. // // For more information about bucket policies, see Using Bucket Policies and // User Policies (https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html). // // All Amazon S3 on Outposts REST API requests for this action require an additional // parameter of x-amz-outpost-id to be passed with the request. In addition, // you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. // For an example of the request syntax for Amazon S3 on Outposts that uses // the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived // by using the access point ARN, see the Examples (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DeleteBucketPolicy.html#API_control_DeleteBucketPolicy_Examples) // section. // // The following actions are related to DeleteBucketPolicy: // // * GetBucketPolicy (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetBucketPolicy.html) // // * PutBucketPolicy (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_PutBucketPolicy.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation DeleteBucketPolicy for usage and error information. // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/DeleteBucketPolicy func (c *S3Control) DeleteBucketPolicy(input *DeleteBucketPolicyInput) (*DeleteBucketPolicyOutput, error) { req, out := c.DeleteBucketPolicyRequest(input) return out, req.Send() } // DeleteBucketPolicyWithContext is the same as DeleteBucketPolicy with the addition of // the ability to pass a context and additional request options. // // See DeleteBucketPolicy for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) DeleteBucketPolicyWithContext(ctx aws.Context, input *DeleteBucketPolicyInput, opts ...request.Option) (*DeleteBucketPolicyOutput, error) { req, out := c.DeleteBucketPolicyRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opDeleteBucketReplication = "DeleteBucketReplication" // DeleteBucketReplicationRequest generates a "aws/request.Request" representing the // client's request for the DeleteBucketReplication operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See DeleteBucketReplication for more information on using the DeleteBucketReplication // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the DeleteBucketReplicationRequest method. // req, resp := client.DeleteBucketReplicationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/DeleteBucketReplication func (c *S3Control) DeleteBucketReplicationRequest(input *DeleteBucketReplicationInput) (req *request.Request, output *DeleteBucketReplicationOutput) { op := &request.Operation{ Name: opDeleteBucketReplication, HTTPMethod: "DELETE", HTTPPath: "/v20180820/bucket/{name}/replication", } if input == nil { input = &DeleteBucketReplicationInput{} } output = &DeleteBucketReplicationOutput{} req = c.newRequest(op, input, output) // update account id or check if provided input for account id member matches // the account id present in ARN req.Handlers.Validate.PushFrontNamed(updateAccountIDWithARNHandler) req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } // DeleteBucketReplication API operation for AWS S3 Control. // // // This operation deletes an Amazon S3 on Outposts bucket's replication configuration. // To delete an S3 bucket's replication configuration, see DeleteBucketReplication // (https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketReplication.html) // in the Amazon S3 API Reference. // // Deletes the replication configuration from the specified S3 on Outposts bucket. // // To use this operation, you must have permissions to perform the s3-outposts:PutReplicationConfiguration // action. The Outposts bucket owner has this permission by default and can // grant it to others. For more information about permissions, see Setting up // IAM with S3 on Outposts (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3OutpostsIAM.html) // and Managing access to S3 on Outposts buckets (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3OutpostsBucketPolicy.html) // in the Amazon S3 User Guide. // // It can take a while to propagate PUT or DELETE requests for a replication // configuration to all S3 on Outposts systems. Therefore, the replication configuration // that's returned by a GET request soon after a PUT or DELETE request might // return a more recent result than what's on the Outpost. If an Outpost is // offline, the delay in updating the replication configuration on that Outpost // can be significant. // // All Amazon S3 on Outposts REST API requests for this action require an additional // parameter of x-amz-outpost-id to be passed with the request. In addition, // you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. // For an example of the request syntax for Amazon S3 on Outposts that uses // the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived // by using the access point ARN, see the Examples (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DeleteBucketReplication.html#API_control_DeleteBucketReplication_Examples) // section. // // For information about S3 replication on Outposts configuration, see Replicating // objects for S3 on Outposts (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3OutpostsReplication.html) // in the Amazon S3 User Guide. // // The following operations are related to DeleteBucketReplication: // // * PutBucketReplication (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_PutBucketReplication.html) // // * GetBucketReplication (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetBucketReplication.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation DeleteBucketReplication for usage and error information. // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/DeleteBucketReplication func (c *S3Control) DeleteBucketReplication(input *DeleteBucketReplicationInput) (*DeleteBucketReplicationOutput, error) { req, out := c.DeleteBucketReplicationRequest(input) return out, req.Send() } // DeleteBucketReplicationWithContext is the same as DeleteBucketReplication with the addition of // the ability to pass a context and additional request options. // // See DeleteBucketReplication for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) DeleteBucketReplicationWithContext(ctx aws.Context, input *DeleteBucketReplicationInput, opts ...request.Option) (*DeleteBucketReplicationOutput, error) { req, out := c.DeleteBucketReplicationRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opDeleteBucketTagging = "DeleteBucketTagging" // DeleteBucketTaggingRequest generates a "aws/request.Request" representing the // client's request for the DeleteBucketTagging operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See DeleteBucketTagging for more information on using the DeleteBucketTagging // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the DeleteBucketTaggingRequest method. // req, resp := client.DeleteBucketTaggingRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/DeleteBucketTagging func (c *S3Control) DeleteBucketTaggingRequest(input *DeleteBucketTaggingInput) (req *request.Request, output *DeleteBucketTaggingOutput) { op := &request.Operation{ Name: opDeleteBucketTagging, HTTPMethod: "DELETE", HTTPPath: "/v20180820/bucket/{name}/tagging", } if input == nil { input = &DeleteBucketTaggingInput{} } output = &DeleteBucketTaggingOutput{} req = c.newRequest(op, input, output) // update account id or check if provided input for account id member matches // the account id present in ARN req.Handlers.Validate.PushFrontNamed(updateAccountIDWithARNHandler) req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } // DeleteBucketTagging API operation for AWS S3 Control. // // // This action deletes an Amazon S3 on Outposts bucket's tags. To delete an // S3 bucket tags, see DeleteBucketTagging (https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketTagging.html) // in the Amazon S3 API Reference. // // Deletes the tags from the Outposts bucket. For more information, see Using // Amazon S3 on Outposts (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) // in Amazon S3 User Guide. // // To use this action, you must have permission to perform the PutBucketTagging // action. By default, the bucket owner has this permission and can grant this // permission to others. // // All Amazon S3 on Outposts REST API requests for this action require an additional // parameter of x-amz-outpost-id to be passed with the request. In addition, // you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. // For an example of the request syntax for Amazon S3 on Outposts that uses // the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived // by using the access point ARN, see the Examples (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DeleteBucketTagging.html#API_control_DeleteBucketTagging_Examples) // section. // // The following actions are related to DeleteBucketTagging: // // * GetBucketTagging (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetBucketTagging.html) // // * PutBucketTagging (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_PutBucketTagging.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation DeleteBucketTagging for usage and error information. // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/DeleteBucketTagging func (c *S3Control) DeleteBucketTagging(input *DeleteBucketTaggingInput) (*DeleteBucketTaggingOutput, error) { req, out := c.DeleteBucketTaggingRequest(input) return out, req.Send() } // DeleteBucketTaggingWithContext is the same as DeleteBucketTagging with the addition of // the ability to pass a context and additional request options. // // See DeleteBucketTagging for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) DeleteBucketTaggingWithContext(ctx aws.Context, input *DeleteBucketTaggingInput, opts ...request.Option) (*DeleteBucketTaggingOutput, error) { req, out := c.DeleteBucketTaggingRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opDeleteJobTagging = "DeleteJobTagging" // DeleteJobTaggingRequest generates a "aws/request.Request" representing the // client's request for the DeleteJobTagging operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See DeleteJobTagging for more information on using the DeleteJobTagging // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the DeleteJobTaggingRequest method. // req, resp := client.DeleteJobTaggingRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/DeleteJobTagging func (c *S3Control) DeleteJobTaggingRequest(input *DeleteJobTaggingInput) (req *request.Request, output *DeleteJobTaggingOutput) { op := &request.Operation{ Name: opDeleteJobTagging, HTTPMethod: "DELETE", HTTPPath: "/v20180820/jobs/{id}/tagging", } if input == nil { input = &DeleteJobTaggingInput{} } output = &DeleteJobTaggingOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } // DeleteJobTagging API operation for AWS S3 Control. // // Removes the entire tag set from the specified S3 Batch Operations job. To // use the DeleteJobTagging operation, you must have permission to perform the // s3:DeleteJobTagging action. For more information, see Controlling access // and labeling jobs using tags (https://docs.aws.amazon.com/AmazonS3/latest/dev/batch-ops-managing-jobs.html#batch-ops-job-tags) // in the Amazon S3 User Guide. // // Related actions include: // // * CreateJob (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateJob.html) // // * GetJobTagging (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetJobTagging.html) // // * PutJobTagging (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_PutJobTagging.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation DeleteJobTagging for usage and error information. // // Returned Error Codes: // * ErrCodeInternalServiceException "InternalServiceException" // // * ErrCodeTooManyRequestsException "TooManyRequestsException" // // * ErrCodeNotFoundException "NotFoundException" // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/DeleteJobTagging func (c *S3Control) DeleteJobTagging(input *DeleteJobTaggingInput) (*DeleteJobTaggingOutput, error) { req, out := c.DeleteJobTaggingRequest(input) return out, req.Send() } // DeleteJobTaggingWithContext is the same as DeleteJobTagging with the addition of // the ability to pass a context and additional request options. // // See DeleteJobTagging for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) DeleteJobTaggingWithContext(ctx aws.Context, input *DeleteJobTaggingInput, opts ...request.Option) (*DeleteJobTaggingOutput, error) { req, out := c.DeleteJobTaggingRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opDeleteMultiRegionAccessPoint = "DeleteMultiRegionAccessPoint" // DeleteMultiRegionAccessPointRequest generates a "aws/request.Request" representing the // client's request for the DeleteMultiRegionAccessPoint operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See DeleteMultiRegionAccessPoint for more information on using the DeleteMultiRegionAccessPoint // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the DeleteMultiRegionAccessPointRequest method. // req, resp := client.DeleteMultiRegionAccessPointRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/DeleteMultiRegionAccessPoint func (c *S3Control) DeleteMultiRegionAccessPointRequest(input *DeleteMultiRegionAccessPointInput) (req *request.Request, output *DeleteMultiRegionAccessPointOutput) { op := &request.Operation{ Name: opDeleteMultiRegionAccessPoint, HTTPMethod: "POST", HTTPPath: "/v20180820/async-requests/mrap/delete", } if input == nil { input = &DeleteMultiRegionAccessPointInput{} } output = &DeleteMultiRegionAccessPointOutput{} req = c.newRequest(op, input, output) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) req.Handlers.Build.PushBackNamed(request.NamedHandler{ Name: "contentMd5Handler", Fn: checksum.AddBodyContentMD5Handler, }) return } // DeleteMultiRegionAccessPoint API operation for AWS S3 Control. // // Deletes a Multi-Region Access Point. This action does not delete the buckets // associated with the Multi-Region Access Point, only the Multi-Region Access // Point itself. // // This action will always be routed to the US West (Oregon) Region. For more // information about the restrictions around managing Multi-Region Access Points, // see Managing Multi-Region Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/ManagingMultiRegionAccessPoints.html) // in the Amazon S3 User Guide. // // This request is asynchronous, meaning that you might receive a response before // the command has completed. When this request provides a response, it provides // a token that you can use to monitor the status of the request with DescribeMultiRegionAccessPointOperation. // // The following actions are related to DeleteMultiRegionAccessPoint: // // * CreateMultiRegionAccessPoint (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateMultiRegionAccessPoint.html) // // * DescribeMultiRegionAccessPointOperation (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DescribeMultiRegionAccessPointOperation.html) // // * GetMultiRegionAccessPoint (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetMultiRegionAccessPoint.html) // // * ListMultiRegionAccessPoints (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_ListMultiRegionAccessPoints.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation DeleteMultiRegionAccessPoint for usage and error information. // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/DeleteMultiRegionAccessPoint func (c *S3Control) DeleteMultiRegionAccessPoint(input *DeleteMultiRegionAccessPointInput) (*DeleteMultiRegionAccessPointOutput, error) { req, out := c.DeleteMultiRegionAccessPointRequest(input) return out, req.Send() } // DeleteMultiRegionAccessPointWithContext is the same as DeleteMultiRegionAccessPoint with the addition of // the ability to pass a context and additional request options. // // See DeleteMultiRegionAccessPoint for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) DeleteMultiRegionAccessPointWithContext(ctx aws.Context, input *DeleteMultiRegionAccessPointInput, opts ...request.Option) (*DeleteMultiRegionAccessPointOutput, error) { req, out := c.DeleteMultiRegionAccessPointRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opDeletePublicAccessBlock = "DeletePublicAccessBlock" // DeletePublicAccessBlockRequest generates a "aws/request.Request" representing the // client's request for the DeletePublicAccessBlock operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See DeletePublicAccessBlock for more information on using the DeletePublicAccessBlock // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the DeletePublicAccessBlockRequest method. // req, resp := client.DeletePublicAccessBlockRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/DeletePublicAccessBlock func (c *S3Control) DeletePublicAccessBlockRequest(input *DeletePublicAccessBlockInput) (req *request.Request, output *DeletePublicAccessBlockOutput) { op := &request.Operation{ Name: opDeletePublicAccessBlock, HTTPMethod: "DELETE", HTTPPath: "/v20180820/configuration/publicAccessBlock", } if input == nil { input = &DeletePublicAccessBlockInput{} } output = &DeletePublicAccessBlockOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } // DeletePublicAccessBlock API operation for AWS S3 Control. // // Removes the PublicAccessBlock configuration for an Amazon Web Services account. // For more information, see Using Amazon S3 block public access (https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html). // // Related actions include: // // * GetPublicAccessBlock (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetPublicAccessBlock.html) // // * PutPublicAccessBlock (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_PutPublicAccessBlock.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation DeletePublicAccessBlock for usage and error information. // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/DeletePublicAccessBlock func (c *S3Control) DeletePublicAccessBlock(input *DeletePublicAccessBlockInput) (*DeletePublicAccessBlockOutput, error) { req, out := c.DeletePublicAccessBlockRequest(input) return out, req.Send() } // DeletePublicAccessBlockWithContext is the same as DeletePublicAccessBlock with the addition of // the ability to pass a context and additional request options. // // See DeletePublicAccessBlock for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) DeletePublicAccessBlockWithContext(ctx aws.Context, input *DeletePublicAccessBlockInput, opts ...request.Option) (*DeletePublicAccessBlockOutput, error) { req, out := c.DeletePublicAccessBlockRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opDeleteStorageLensConfiguration = "DeleteStorageLensConfiguration" // DeleteStorageLensConfigurationRequest generates a "aws/request.Request" representing the // client's request for the DeleteStorageLensConfiguration operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See DeleteStorageLensConfiguration for more information on using the DeleteStorageLensConfiguration // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the DeleteStorageLensConfigurationRequest method. // req, resp := client.DeleteStorageLensConfigurationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/DeleteStorageLensConfiguration func (c *S3Control) DeleteStorageLensConfigurationRequest(input *DeleteStorageLensConfigurationInput) (req *request.Request, output *DeleteStorageLensConfigurationOutput) { op := &request.Operation{ Name: opDeleteStorageLensConfiguration, HTTPMethod: "DELETE", HTTPPath: "/v20180820/storagelens/{storagelensid}", } if input == nil { input = &DeleteStorageLensConfigurationInput{} } output = &DeleteStorageLensConfigurationOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } // DeleteStorageLensConfiguration API operation for AWS S3 Control. // // Deletes the Amazon S3 Storage Lens configuration. For more information about // S3 Storage Lens, see Assessing your storage activity and usage with Amazon // S3 Storage Lens (https://docs.aws.amazon.com/AmazonS3/latest/dev/storage_lens.html) // in the Amazon S3 User Guide. // // To use this action, you must have permission to perform the s3:DeleteStorageLensConfiguration // action. For more information, see Setting permissions to use Amazon S3 Storage // Lens (https://docs.aws.amazon.com/AmazonS3/latest/dev/storage_lens_iam_permissions.html) // in the Amazon S3 User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation DeleteStorageLensConfiguration for usage and error information. // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/DeleteStorageLensConfiguration func (c *S3Control) DeleteStorageLensConfiguration(input *DeleteStorageLensConfigurationInput) (*DeleteStorageLensConfigurationOutput, error) { req, out := c.DeleteStorageLensConfigurationRequest(input) return out, req.Send() } // DeleteStorageLensConfigurationWithContext is the same as DeleteStorageLensConfiguration with the addition of // the ability to pass a context and additional request options. // // See DeleteStorageLensConfiguration for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) DeleteStorageLensConfigurationWithContext(ctx aws.Context, input *DeleteStorageLensConfigurationInput, opts ...request.Option) (*DeleteStorageLensConfigurationOutput, error) { req, out := c.DeleteStorageLensConfigurationRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opDeleteStorageLensConfigurationTagging = "DeleteStorageLensConfigurationTagging" // DeleteStorageLensConfigurationTaggingRequest generates a "aws/request.Request" representing the // client's request for the DeleteStorageLensConfigurationTagging operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See DeleteStorageLensConfigurationTagging for more information on using the DeleteStorageLensConfigurationTagging // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the DeleteStorageLensConfigurationTaggingRequest method. // req, resp := client.DeleteStorageLensConfigurationTaggingRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/DeleteStorageLensConfigurationTagging func (c *S3Control) DeleteStorageLensConfigurationTaggingRequest(input *DeleteStorageLensConfigurationTaggingInput) (req *request.Request, output *DeleteStorageLensConfigurationTaggingOutput) { op := &request.Operation{ Name: opDeleteStorageLensConfigurationTagging, HTTPMethod: "DELETE", HTTPPath: "/v20180820/storagelens/{storagelensid}/tagging", } if input == nil { input = &DeleteStorageLensConfigurationTaggingInput{} } output = &DeleteStorageLensConfigurationTaggingOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } // DeleteStorageLensConfigurationTagging API operation for AWS S3 Control. // // Deletes the Amazon S3 Storage Lens configuration tags. For more information // about S3 Storage Lens, see Assessing your storage activity and usage with // Amazon S3 Storage Lens (https://docs.aws.amazon.com/AmazonS3/latest/dev/storage_lens.html) // in the Amazon S3 User Guide. // // To use this action, you must have permission to perform the s3:DeleteStorageLensConfigurationTagging // action. For more information, see Setting permissions to use Amazon S3 Storage // Lens (https://docs.aws.amazon.com/AmazonS3/latest/dev/storage_lens_iam_permissions.html) // in the Amazon S3 User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation DeleteStorageLensConfigurationTagging for usage and error information. // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/DeleteStorageLensConfigurationTagging func (c *S3Control) DeleteStorageLensConfigurationTagging(input *DeleteStorageLensConfigurationTaggingInput) (*DeleteStorageLensConfigurationTaggingOutput, error) { req, out := c.DeleteStorageLensConfigurationTaggingRequest(input) return out, req.Send() } // DeleteStorageLensConfigurationTaggingWithContext is the same as DeleteStorageLensConfigurationTagging with the addition of // the ability to pass a context and additional request options. // // See DeleteStorageLensConfigurationTagging for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) DeleteStorageLensConfigurationTaggingWithContext(ctx aws.Context, input *DeleteStorageLensConfigurationTaggingInput, opts ...request.Option) (*DeleteStorageLensConfigurationTaggingOutput, error) { req, out := c.DeleteStorageLensConfigurationTaggingRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opDescribeJob = "DescribeJob" // DescribeJobRequest generates a "aws/request.Request" representing the // client's request for the DescribeJob operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See DescribeJob for more information on using the DescribeJob // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the DescribeJobRequest method. // req, resp := client.DescribeJobRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/DescribeJob func (c *S3Control) DescribeJobRequest(input *DescribeJobInput) (req *request.Request, output *DescribeJobOutput) { op := &request.Operation{ Name: opDescribeJob, HTTPMethod: "GET", HTTPPath: "/v20180820/jobs/{id}", } if input == nil { input = &DescribeJobInput{} } output = &DescribeJobOutput{} req = c.newRequest(op, input, output) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } // DescribeJob API operation for AWS S3 Control. // // Retrieves the configuration parameters and status for a Batch Operations // job. For more information, see S3 Batch Operations (https://docs.aws.amazon.com/AmazonS3/latest/userguide/batch-ops.html) // in the Amazon S3 User Guide. // // Related actions include: // // * CreateJob (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateJob.html) // // * ListJobs (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_ListJobs.html) // // * UpdateJobPriority (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_UpdateJobPriority.html) // // * UpdateJobStatus (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_UpdateJobStatus.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation DescribeJob for usage and error information. // // Returned Error Codes: // * ErrCodeBadRequestException "BadRequestException" // // * ErrCodeTooManyRequestsException "TooManyRequestsException" // // * ErrCodeNotFoundException "NotFoundException" // // * ErrCodeInternalServiceException "InternalServiceException" // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/DescribeJob func (c *S3Control) DescribeJob(input *DescribeJobInput) (*DescribeJobOutput, error) { req, out := c.DescribeJobRequest(input) return out, req.Send() } // DescribeJobWithContext is the same as DescribeJob with the addition of // the ability to pass a context and additional request options. // // See DescribeJob for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) DescribeJobWithContext(ctx aws.Context, input *DescribeJobInput, opts ...request.Option) (*DescribeJobOutput, error) { req, out := c.DescribeJobRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opDescribeMultiRegionAccessPointOperation = "DescribeMultiRegionAccessPointOperation" // DescribeMultiRegionAccessPointOperationRequest generates a "aws/request.Request" representing the // client's request for the DescribeMultiRegionAccessPointOperation operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See DescribeMultiRegionAccessPointOperation for more information on using the DescribeMultiRegionAccessPointOperation // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the DescribeMultiRegionAccessPointOperationRequest method. // req, resp := client.DescribeMultiRegionAccessPointOperationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/DescribeMultiRegionAccessPointOperation func (c *S3Control) DescribeMultiRegionAccessPointOperationRequest(input *DescribeMultiRegionAccessPointOperationInput) (req *request.Request, output *DescribeMultiRegionAccessPointOperationOutput) { op := &request.Operation{ Name: opDescribeMultiRegionAccessPointOperation, HTTPMethod: "GET", HTTPPath: "/v20180820/async-requests/mrap/{request_token+}", } if input == nil { input = &DescribeMultiRegionAccessPointOperationInput{} } output = &DescribeMultiRegionAccessPointOperationOutput{} req = c.newRequest(op, input, output) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) req.Handlers.Build.PushBackNamed(request.NamedHandler{ Name: "contentMd5Handler", Fn: checksum.AddBodyContentMD5Handler, }) return } // DescribeMultiRegionAccessPointOperation API operation for AWS S3 Control. // // Retrieves the status of an asynchronous request to manage a Multi-Region // Access Point. For more information about managing Multi-Region Access Points // and how asynchronous requests work, see Managing Multi-Region Access Points // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/ManagingMultiRegionAccessPoints.html) // in the Amazon S3 User Guide. // // The following actions are related to GetMultiRegionAccessPoint: // // * CreateMultiRegionAccessPoint (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateMultiRegionAccessPoint.html) // // * DeleteMultiRegionAccessPoint (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DeleteMultiRegionAccessPoint.html) // // * GetMultiRegionAccessPoint (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetMultiRegionAccessPoint.html) // // * ListMultiRegionAccessPoints (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_ListMultiRegionAccessPoints.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation DescribeMultiRegionAccessPointOperation for usage and error information. // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/DescribeMultiRegionAccessPointOperation func (c *S3Control) DescribeMultiRegionAccessPointOperation(input *DescribeMultiRegionAccessPointOperationInput) (*DescribeMultiRegionAccessPointOperationOutput, error) { req, out := c.DescribeMultiRegionAccessPointOperationRequest(input) return out, req.Send() } // DescribeMultiRegionAccessPointOperationWithContext is the same as DescribeMultiRegionAccessPointOperation with the addition of // the ability to pass a context and additional request options. // // See DescribeMultiRegionAccessPointOperation for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) DescribeMultiRegionAccessPointOperationWithContext(ctx aws.Context, input *DescribeMultiRegionAccessPointOperationInput, opts ...request.Option) (*DescribeMultiRegionAccessPointOperationOutput, error) { req, out := c.DescribeMultiRegionAccessPointOperationRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opGetAccessPoint = "GetAccessPoint" // GetAccessPointRequest generates a "aws/request.Request" representing the // client's request for the GetAccessPoint operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See GetAccessPoint for more information on using the GetAccessPoint // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the GetAccessPointRequest method. // req, resp := client.GetAccessPointRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetAccessPoint func (c *S3Control) GetAccessPointRequest(input *GetAccessPointInput) (req *request.Request, output *GetAccessPointOutput) { op := &request.Operation{ Name: opGetAccessPoint, HTTPMethod: "GET", HTTPPath: "/v20180820/accesspoint/{name}", } if input == nil { input = &GetAccessPointInput{} } output = &GetAccessPointOutput{} req = c.newRequest(op, input, output) // update account id or check if provided input for account id member matches // the account id present in ARN req.Handlers.Validate.PushFrontNamed(updateAccountIDWithARNHandler) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } // GetAccessPoint API operation for AWS S3 Control. // // Returns configuration information about the specified access point. // // All Amazon S3 on Outposts REST API requests for this action require an additional // parameter of x-amz-outpost-id to be passed with the request. In addition, // you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. // For an example of the request syntax for Amazon S3 on Outposts that uses // the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived // by using the access point ARN, see the Examples (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetAccessPoint.html#API_control_GetAccessPoint_Examples) // section. // // The following actions are related to GetAccessPoint: // // * CreateAccessPoint (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateAccessPoint.html) // // * DeleteAccessPoint (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DeleteAccessPoint.html) // // * ListAccessPoints (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_ListAccessPoints.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation GetAccessPoint for usage and error information. // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetAccessPoint func (c *S3Control) GetAccessPoint(input *GetAccessPointInput) (*GetAccessPointOutput, error) { req, out := c.GetAccessPointRequest(input) return out, req.Send() } // GetAccessPointWithContext is the same as GetAccessPoint with the addition of // the ability to pass a context and additional request options. // // See GetAccessPoint for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) GetAccessPointWithContext(ctx aws.Context, input *GetAccessPointInput, opts ...request.Option) (*GetAccessPointOutput, error) { req, out := c.GetAccessPointRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opGetAccessPointConfigurationForObjectLambda = "GetAccessPointConfigurationForObjectLambda" // GetAccessPointConfigurationForObjectLambdaRequest generates a "aws/request.Request" representing the // client's request for the GetAccessPointConfigurationForObjectLambda operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See GetAccessPointConfigurationForObjectLambda for more information on using the GetAccessPointConfigurationForObjectLambda // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the GetAccessPointConfigurationForObjectLambdaRequest method. // req, resp := client.GetAccessPointConfigurationForObjectLambdaRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetAccessPointConfigurationForObjectLambda func (c *S3Control) GetAccessPointConfigurationForObjectLambdaRequest(input *GetAccessPointConfigurationForObjectLambdaInput) (req *request.Request, output *GetAccessPointConfigurationForObjectLambdaOutput) { op := &request.Operation{ Name: opGetAccessPointConfigurationForObjectLambda, HTTPMethod: "GET", HTTPPath: "/v20180820/accesspointforobjectlambda/{name}/configuration", } if input == nil { input = &GetAccessPointConfigurationForObjectLambdaInput{} } output = &GetAccessPointConfigurationForObjectLambdaOutput{} req = c.newRequest(op, input, output) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } // GetAccessPointConfigurationForObjectLambda API operation for AWS S3 Control. // // Returns configuration for an Object Lambda Access Point. // // The following actions are related to GetAccessPointConfigurationForObjectLambda: // // * PutAccessPointConfigurationForObjectLambda (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_PutAccessPointConfigurationForObjectLambda.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation GetAccessPointConfigurationForObjectLambda for usage and error information. // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetAccessPointConfigurationForObjectLambda func (c *S3Control) GetAccessPointConfigurationForObjectLambda(input *GetAccessPointConfigurationForObjectLambdaInput) (*GetAccessPointConfigurationForObjectLambdaOutput, error) { req, out := c.GetAccessPointConfigurationForObjectLambdaRequest(input) return out, req.Send() } // GetAccessPointConfigurationForObjectLambdaWithContext is the same as GetAccessPointConfigurationForObjectLambda with the addition of // the ability to pass a context and additional request options. // // See GetAccessPointConfigurationForObjectLambda for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) GetAccessPointConfigurationForObjectLambdaWithContext(ctx aws.Context, input *GetAccessPointConfigurationForObjectLambdaInput, opts ...request.Option) (*GetAccessPointConfigurationForObjectLambdaOutput, error) { req, out := c.GetAccessPointConfigurationForObjectLambdaRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opGetAccessPointForObjectLambda = "GetAccessPointForObjectLambda" // GetAccessPointForObjectLambdaRequest generates a "aws/request.Request" representing the // client's request for the GetAccessPointForObjectLambda operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See GetAccessPointForObjectLambda for more information on using the GetAccessPointForObjectLambda // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the GetAccessPointForObjectLambdaRequest method. // req, resp := client.GetAccessPointForObjectLambdaRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetAccessPointForObjectLambda func (c *S3Control) GetAccessPointForObjectLambdaRequest(input *GetAccessPointForObjectLambdaInput) (req *request.Request, output *GetAccessPointForObjectLambdaOutput) { op := &request.Operation{ Name: opGetAccessPointForObjectLambda, HTTPMethod: "GET", HTTPPath: "/v20180820/accesspointforobjectlambda/{name}", } if input == nil { input = &GetAccessPointForObjectLambdaInput{} } output = &GetAccessPointForObjectLambdaOutput{} req = c.newRequest(op, input, output) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } // GetAccessPointForObjectLambda API operation for AWS S3 Control. // // Returns configuration information about the specified Object Lambda Access // Point // // The following actions are related to GetAccessPointForObjectLambda: // // * CreateAccessPointForObjectLambda (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateAccessPointForObjectLambda.html) // // * DeleteAccessPointForObjectLambda (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DeleteAccessPointForObjectLambda.html) // // * ListAccessPointsForObjectLambda (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_ListAccessPointsForObjectLambda.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation GetAccessPointForObjectLambda for usage and error information. // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetAccessPointForObjectLambda func (c *S3Control) GetAccessPointForObjectLambda(input *GetAccessPointForObjectLambdaInput) (*GetAccessPointForObjectLambdaOutput, error) { req, out := c.GetAccessPointForObjectLambdaRequest(input) return out, req.Send() } // GetAccessPointForObjectLambdaWithContext is the same as GetAccessPointForObjectLambda with the addition of // the ability to pass a context and additional request options. // // See GetAccessPointForObjectLambda for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) GetAccessPointForObjectLambdaWithContext(ctx aws.Context, input *GetAccessPointForObjectLambdaInput, opts ...request.Option) (*GetAccessPointForObjectLambdaOutput, error) { req, out := c.GetAccessPointForObjectLambdaRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opGetAccessPointPolicy = "GetAccessPointPolicy" // GetAccessPointPolicyRequest generates a "aws/request.Request" representing the // client's request for the GetAccessPointPolicy operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See GetAccessPointPolicy for more information on using the GetAccessPointPolicy // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the GetAccessPointPolicyRequest method. // req, resp := client.GetAccessPointPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetAccessPointPolicy func (c *S3Control) GetAccessPointPolicyRequest(input *GetAccessPointPolicyInput) (req *request.Request, output *GetAccessPointPolicyOutput) { op := &request.Operation{ Name: opGetAccessPointPolicy, HTTPMethod: "GET", HTTPPath: "/v20180820/accesspoint/{name}/policy", } if input == nil { input = &GetAccessPointPolicyInput{} } output = &GetAccessPointPolicyOutput{} req = c.newRequest(op, input, output) // update account id or check if provided input for account id member matches // the account id present in ARN req.Handlers.Validate.PushFrontNamed(updateAccountIDWithARNHandler) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } // GetAccessPointPolicy API operation for AWS S3 Control. // // Returns the access point policy associated with the specified access point. // // The following actions are related to GetAccessPointPolicy: // // * PutAccessPointPolicy (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_PutAccessPointPolicy.html) // // * DeleteAccessPointPolicy (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DeleteAccessPointPolicy.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation GetAccessPointPolicy for usage and error information. // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetAccessPointPolicy func (c *S3Control) GetAccessPointPolicy(input *GetAccessPointPolicyInput) (*GetAccessPointPolicyOutput, error) { req, out := c.GetAccessPointPolicyRequest(input) return out, req.Send() } // GetAccessPointPolicyWithContext is the same as GetAccessPointPolicy with the addition of // the ability to pass a context and additional request options. // // See GetAccessPointPolicy for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) GetAccessPointPolicyWithContext(ctx aws.Context, input *GetAccessPointPolicyInput, opts ...request.Option) (*GetAccessPointPolicyOutput, error) { req, out := c.GetAccessPointPolicyRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opGetAccessPointPolicyForObjectLambda = "GetAccessPointPolicyForObjectLambda" // GetAccessPointPolicyForObjectLambdaRequest generates a "aws/request.Request" representing the // client's request for the GetAccessPointPolicyForObjectLambda operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See GetAccessPointPolicyForObjectLambda for more information on using the GetAccessPointPolicyForObjectLambda // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the GetAccessPointPolicyForObjectLambdaRequest method. // req, resp := client.GetAccessPointPolicyForObjectLambdaRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetAccessPointPolicyForObjectLambda func (c *S3Control) GetAccessPointPolicyForObjectLambdaRequest(input *GetAccessPointPolicyForObjectLambdaInput) (req *request.Request, output *GetAccessPointPolicyForObjectLambdaOutput) { op := &request.Operation{ Name: opGetAccessPointPolicyForObjectLambda, HTTPMethod: "GET", HTTPPath: "/v20180820/accesspointforobjectlambda/{name}/policy", } if input == nil { input = &GetAccessPointPolicyForObjectLambdaInput{} } output = &GetAccessPointPolicyForObjectLambdaOutput{} req = c.newRequest(op, input, output) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } // GetAccessPointPolicyForObjectLambda API operation for AWS S3 Control. // // Returns the resource policy for an Object Lambda Access Point. // // The following actions are related to GetAccessPointPolicyForObjectLambda: // // * DeleteAccessPointPolicyForObjectLambda (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DeleteAccessPointPolicyForObjectLambda.html) // // * PutAccessPointPolicyForObjectLambda (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_PutAccessPointPolicyForObjectLambda.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation GetAccessPointPolicyForObjectLambda for usage and error information. // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetAccessPointPolicyForObjectLambda func (c *S3Control) GetAccessPointPolicyForObjectLambda(input *GetAccessPointPolicyForObjectLambdaInput) (*GetAccessPointPolicyForObjectLambdaOutput, error) { req, out := c.GetAccessPointPolicyForObjectLambdaRequest(input) return out, req.Send() } // GetAccessPointPolicyForObjectLambdaWithContext is the same as GetAccessPointPolicyForObjectLambda with the addition of // the ability to pass a context and additional request options. // // See GetAccessPointPolicyForObjectLambda for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) GetAccessPointPolicyForObjectLambdaWithContext(ctx aws.Context, input *GetAccessPointPolicyForObjectLambdaInput, opts ...request.Option) (*GetAccessPointPolicyForObjectLambdaOutput, error) { req, out := c.GetAccessPointPolicyForObjectLambdaRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opGetAccessPointPolicyStatus = "GetAccessPointPolicyStatus" // GetAccessPointPolicyStatusRequest generates a "aws/request.Request" representing the // client's request for the GetAccessPointPolicyStatus operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See GetAccessPointPolicyStatus for more information on using the GetAccessPointPolicyStatus // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the GetAccessPointPolicyStatusRequest method. // req, resp := client.GetAccessPointPolicyStatusRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetAccessPointPolicyStatus func (c *S3Control) GetAccessPointPolicyStatusRequest(input *GetAccessPointPolicyStatusInput) (req *request.Request, output *GetAccessPointPolicyStatusOutput) { op := &request.Operation{ Name: opGetAccessPointPolicyStatus, HTTPMethod: "GET", HTTPPath: "/v20180820/accesspoint/{name}/policyStatus", } if input == nil { input = &GetAccessPointPolicyStatusInput{} } output = &GetAccessPointPolicyStatusOutput{} req = c.newRequest(op, input, output) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } // GetAccessPointPolicyStatus API operation for AWS S3 Control. // // Indicates whether the specified access point currently has a policy that // allows public access. For more information about public access through access // points, see Managing Data Access with Amazon S3 access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-points.html) // in the Amazon S3 User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation GetAccessPointPolicyStatus for usage and error information. // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetAccessPointPolicyStatus func (c *S3Control) GetAccessPointPolicyStatus(input *GetAccessPointPolicyStatusInput) (*GetAccessPointPolicyStatusOutput, error) { req, out := c.GetAccessPointPolicyStatusRequest(input) return out, req.Send() } // GetAccessPointPolicyStatusWithContext is the same as GetAccessPointPolicyStatus with the addition of // the ability to pass a context and additional request options. // // See GetAccessPointPolicyStatus for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) GetAccessPointPolicyStatusWithContext(ctx aws.Context, input *GetAccessPointPolicyStatusInput, opts ...request.Option) (*GetAccessPointPolicyStatusOutput, error) { req, out := c.GetAccessPointPolicyStatusRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opGetAccessPointPolicyStatusForObjectLambda = "GetAccessPointPolicyStatusForObjectLambda" // GetAccessPointPolicyStatusForObjectLambdaRequest generates a "aws/request.Request" representing the // client's request for the GetAccessPointPolicyStatusForObjectLambda operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See GetAccessPointPolicyStatusForObjectLambda for more information on using the GetAccessPointPolicyStatusForObjectLambda // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the GetAccessPointPolicyStatusForObjectLambdaRequest method. // req, resp := client.GetAccessPointPolicyStatusForObjectLambdaRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetAccessPointPolicyStatusForObjectLambda func (c *S3Control) GetAccessPointPolicyStatusForObjectLambdaRequest(input *GetAccessPointPolicyStatusForObjectLambdaInput) (req *request.Request, output *GetAccessPointPolicyStatusForObjectLambdaOutput) { op := &request.Operation{ Name: opGetAccessPointPolicyStatusForObjectLambda, HTTPMethod: "GET", HTTPPath: "/v20180820/accesspointforobjectlambda/{name}/policyStatus", } if input == nil { input = &GetAccessPointPolicyStatusForObjectLambdaInput{} } output = &GetAccessPointPolicyStatusForObjectLambdaOutput{} req = c.newRequest(op, input, output) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } // GetAccessPointPolicyStatusForObjectLambda API operation for AWS S3 Control. // // Returns the status of the resource policy associated with an Object Lambda // Access Point. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation GetAccessPointPolicyStatusForObjectLambda for usage and error information. // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetAccessPointPolicyStatusForObjectLambda func (c *S3Control) GetAccessPointPolicyStatusForObjectLambda(input *GetAccessPointPolicyStatusForObjectLambdaInput) (*GetAccessPointPolicyStatusForObjectLambdaOutput, error) { req, out := c.GetAccessPointPolicyStatusForObjectLambdaRequest(input) return out, req.Send() } // GetAccessPointPolicyStatusForObjectLambdaWithContext is the same as GetAccessPointPolicyStatusForObjectLambda with the addition of // the ability to pass a context and additional request options. // // See GetAccessPointPolicyStatusForObjectLambda for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) GetAccessPointPolicyStatusForObjectLambdaWithContext(ctx aws.Context, input *GetAccessPointPolicyStatusForObjectLambdaInput, opts ...request.Option) (*GetAccessPointPolicyStatusForObjectLambdaOutput, error) { req, out := c.GetAccessPointPolicyStatusForObjectLambdaRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opGetBucket = "GetBucket" // GetBucketRequest generates a "aws/request.Request" representing the // client's request for the GetBucket operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See GetBucket for more information on using the GetBucket // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the GetBucketRequest method. // req, resp := client.GetBucketRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetBucket func (c *S3Control) GetBucketRequest(input *GetBucketInput) (req *request.Request, output *GetBucketOutput) { op := &request.Operation{ Name: opGetBucket, HTTPMethod: "GET", HTTPPath: "/v20180820/bucket/{name}", } if input == nil { input = &GetBucketInput{} } output = &GetBucketOutput{} req = c.newRequest(op, input, output) // update account id or check if provided input for account id member matches // the account id present in ARN req.Handlers.Validate.PushFrontNamed(updateAccountIDWithARNHandler) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } // GetBucket API operation for AWS S3 Control. // // Gets an Amazon S3 on Outposts bucket. For more information, see Using Amazon // S3 on Outposts (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) // in the Amazon S3 User Guide. // // If you are using an identity other than the root user of the Amazon Web Services // account that owns the Outposts bucket, the calling identity must have the // s3-outposts:GetBucket permissions on the specified Outposts bucket and belong // to the Outposts bucket owner's account in order to use this action. Only // users from Outposts bucket owner account with the right permissions can perform // actions on an Outposts bucket. // // If you don't have s3-outposts:GetBucket permissions or you're not using an // identity that belongs to the bucket owner's account, Amazon S3 returns a // 403 Access Denied error. // // The following actions are related to GetBucket for Amazon S3 on Outposts: // // All Amazon S3 on Outposts REST API requests for this action require an additional // parameter of x-amz-outpost-id to be passed with the request. In addition, // you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. // For an example of the request syntax for Amazon S3 on Outposts that uses // the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived // by using the access point ARN, see the Examples (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetBucket.html#API_control_GetBucket_Examples) // section. // // * PutObject (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html) // // * CreateBucket (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateBucket.html) // // * DeleteBucket (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DeleteBucket.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation GetBucket for usage and error information. // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetBucket func (c *S3Control) GetBucket(input *GetBucketInput) (*GetBucketOutput, error) { req, out := c.GetBucketRequest(input) return out, req.Send() } // GetBucketWithContext is the same as GetBucket with the addition of // the ability to pass a context and additional request options. // // See GetBucket for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) GetBucketWithContext(ctx aws.Context, input *GetBucketInput, opts ...request.Option) (*GetBucketOutput, error) { req, out := c.GetBucketRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opGetBucketLifecycleConfiguration = "GetBucketLifecycleConfiguration" // GetBucketLifecycleConfigurationRequest generates a "aws/request.Request" representing the // client's request for the GetBucketLifecycleConfiguration operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See GetBucketLifecycleConfiguration for more information on using the GetBucketLifecycleConfiguration // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the GetBucketLifecycleConfigurationRequest method. // req, resp := client.GetBucketLifecycleConfigurationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetBucketLifecycleConfiguration func (c *S3Control) GetBucketLifecycleConfigurationRequest(input *GetBucketLifecycleConfigurationInput) (req *request.Request, output *GetBucketLifecycleConfigurationOutput) { op := &request.Operation{ Name: opGetBucketLifecycleConfiguration, HTTPMethod: "GET", HTTPPath: "/v20180820/bucket/{name}/lifecycleconfiguration", } if input == nil { input = &GetBucketLifecycleConfigurationInput{} } output = &GetBucketLifecycleConfigurationOutput{} req = c.newRequest(op, input, output) // update account id or check if provided input for account id member matches // the account id present in ARN req.Handlers.Validate.PushFrontNamed(updateAccountIDWithARNHandler) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } // GetBucketLifecycleConfiguration API operation for AWS S3 Control. // // // This action gets an Amazon S3 on Outposts bucket's lifecycle configuration. // To get an S3 bucket's lifecycle configuration, see GetBucketLifecycleConfiguration // (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLifecycleConfiguration.html) // in the Amazon S3 API Reference. // // Returns the lifecycle configuration information set on the Outposts bucket. // For more information, see Using Amazon S3 on Outposts (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) // and for information about lifecycle configuration, see Object Lifecycle Management // (https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html) // in Amazon S3 User Guide. // // To use this action, you must have permission to perform the s3-outposts:GetLifecycleConfiguration // action. The Outposts bucket owner has this permission, by default. The bucket // owner can grant this permission to others. For more information about permissions, // see Permissions Related to Bucket Subresource Operations (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources) // and Managing Access Permissions to Your Amazon S3 Resources (https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html). // // All Amazon S3 on Outposts REST API requests for this action require an additional // parameter of x-amz-outpost-id to be passed with the request. In addition, // you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. // For an example of the request syntax for Amazon S3 on Outposts that uses // the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived // by using the access point ARN, see the Examples (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetBucketLifecycleConfiguration.html#API_control_GetBucketLifecycleConfiguration_Examples) // section. // // GetBucketLifecycleConfiguration has the following special error: // // * Error code: NoSuchLifecycleConfiguration Description: The lifecycle // configuration does not exist. HTTP Status Code: 404 Not Found SOAP Fault // Code Prefix: Client // // The following actions are related to GetBucketLifecycleConfiguration: // // * PutBucketLifecycleConfiguration (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_PutBucketLifecycleConfiguration.html) // // * DeleteBucketLifecycleConfiguration (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DeleteBucketLifecycleConfiguration.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation GetBucketLifecycleConfiguration for usage and error information. // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetBucketLifecycleConfiguration func (c *S3Control) GetBucketLifecycleConfiguration(input *GetBucketLifecycleConfigurationInput) (*GetBucketLifecycleConfigurationOutput, error) { req, out := c.GetBucketLifecycleConfigurationRequest(input) return out, req.Send() } // GetBucketLifecycleConfigurationWithContext is the same as GetBucketLifecycleConfiguration with the addition of // the ability to pass a context and additional request options. // // See GetBucketLifecycleConfiguration for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) GetBucketLifecycleConfigurationWithContext(ctx aws.Context, input *GetBucketLifecycleConfigurationInput, opts ...request.Option) (*GetBucketLifecycleConfigurationOutput, error) { req, out := c.GetBucketLifecycleConfigurationRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opGetBucketPolicy = "GetBucketPolicy" // GetBucketPolicyRequest generates a "aws/request.Request" representing the // client's request for the GetBucketPolicy operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See GetBucketPolicy for more information on using the GetBucketPolicy // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the GetBucketPolicyRequest method. // req, resp := client.GetBucketPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetBucketPolicy func (c *S3Control) GetBucketPolicyRequest(input *GetBucketPolicyInput) (req *request.Request, output *GetBucketPolicyOutput) { op := &request.Operation{ Name: opGetBucketPolicy, HTTPMethod: "GET", HTTPPath: "/v20180820/bucket/{name}/policy", } if input == nil { input = &GetBucketPolicyInput{} } output = &GetBucketPolicyOutput{} req = c.newRequest(op, input, output) // update account id or check if provided input for account id member matches // the account id present in ARN req.Handlers.Validate.PushFrontNamed(updateAccountIDWithARNHandler) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } // GetBucketPolicy API operation for AWS S3 Control. // // // This action gets a bucket policy for an Amazon S3 on Outposts bucket. To // get a policy for an S3 bucket, see GetBucketPolicy (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketPolicy.html) // in the Amazon S3 API Reference. // // Returns the policy of a specified Outposts bucket. For more information, // see Using Amazon S3 on Outposts (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) // in the Amazon S3 User Guide. // // If you are using an identity other than the root user of the Amazon Web Services // account that owns the bucket, the calling identity must have the GetBucketPolicy // permissions on the specified bucket and belong to the bucket owner's account // in order to use this action. // // Only users from Outposts bucket owner account with the right permissions // can perform actions on an Outposts bucket. If you don't have s3-outposts:GetBucketPolicy // permissions or you're not using an identity that belongs to the bucket owner's // account, Amazon S3 returns a 403 Access Denied error. // // As a security precaution, the root user of the Amazon Web Services account // that owns a bucket can always use this action, even if the policy explicitly // denies the root user the ability to perform this action. // // For more information about bucket policies, see Using Bucket Policies and // User Policies (https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html). // // All Amazon S3 on Outposts REST API requests for this action require an additional // parameter of x-amz-outpost-id to be passed with the request. In addition, // you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. // For an example of the request syntax for Amazon S3 on Outposts that uses // the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived // by using the access point ARN, see the Examples (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetBucketPolicy.html#API_control_GetBucketPolicy_Examples) // section. // // The following actions are related to GetBucketPolicy: // // * GetObject (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html) // // * PutBucketPolicy (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_PutBucketPolicy.html) // // * DeleteBucketPolicy (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DeleteBucketPolicy.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation GetBucketPolicy for usage and error information. // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetBucketPolicy func (c *S3Control) GetBucketPolicy(input *GetBucketPolicyInput) (*GetBucketPolicyOutput, error) { req, out := c.GetBucketPolicyRequest(input) return out, req.Send() } // GetBucketPolicyWithContext is the same as GetBucketPolicy with the addition of // the ability to pass a context and additional request options. // // See GetBucketPolicy for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) GetBucketPolicyWithContext(ctx aws.Context, input *GetBucketPolicyInput, opts ...request.Option) (*GetBucketPolicyOutput, error) { req, out := c.GetBucketPolicyRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opGetBucketReplication = "GetBucketReplication" // GetBucketReplicationRequest generates a "aws/request.Request" representing the // client's request for the GetBucketReplication operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See GetBucketReplication for more information on using the GetBucketReplication // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the GetBucketReplicationRequest method. // req, resp := client.GetBucketReplicationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetBucketReplication func (c *S3Control) GetBucketReplicationRequest(input *GetBucketReplicationInput) (req *request.Request, output *GetBucketReplicationOutput) { op := &request.Operation{ Name: opGetBucketReplication, HTTPMethod: "GET", HTTPPath: "/v20180820/bucket/{name}/replication", } if input == nil { input = &GetBucketReplicationInput{} } output = &GetBucketReplicationOutput{} req = c.newRequest(op, input, output) // update account id or check if provided input for account id member matches // the account id present in ARN req.Handlers.Validate.PushFrontNamed(updateAccountIDWithARNHandler) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } // GetBucketReplication API operation for AWS S3 Control. // // // This operation gets an Amazon S3 on Outposts bucket's replication configuration. // To get an S3 bucket's replication configuration, see GetBucketReplication // (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketReplication.html) // in the Amazon S3 API Reference. // // Returns the replication configuration of an S3 on Outposts bucket. For more // information about S3 on Outposts, see Using Amazon S3 on Outposts (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) // in the Amazon S3 User Guide. For information about S3 replication on Outposts // configuration, see Replicating objects for S3 on Outposts (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3OutpostsReplication.html) // in the Amazon S3 User Guide. // // It can take a while to propagate PUT or DELETE requests for a replication // configuration to all S3 on Outposts systems. Therefore, the replication configuration // that's returned by a GET request soon after a PUT or DELETE request might // return a more recent result than what's on the Outpost. If an Outpost is // offline, the delay in updating the replication configuration on that Outpost // can be significant. // // This action requires permissions for the s3-outposts:GetReplicationConfiguration // action. The Outposts bucket owner has this permission by default and can // grant it to others. For more information about permissions, see Setting up // IAM with S3 on Outposts (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3OutpostsIAM.html) // and Managing access to S3 on Outposts bucket (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3OutpostsBucketPolicy.html) // in the Amazon S3 User Guide. // // All Amazon S3 on Outposts REST API requests for this action require an additional // parameter of x-amz-outpost-id to be passed with the request. In addition, // you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. // For an example of the request syntax for Amazon S3 on Outposts that uses // the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived // by using the access point ARN, see the Examples (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetBucketReplication.html#API_control_GetBucketReplication_Examples) // section. // // If you include the Filter element in a replication configuration, you must // also include the DeleteMarkerReplication, Status, and Priority elements. // The response also returns those elements. // // For information about S3 on Outposts replication failure reasons, see Replication // failure reasons (https://docs.aws.amazon.com/AmazonS3/latest/userguide/outposts-replication-eventbridge.html#outposts-replication-failure-codes) // in the Amazon S3 User Guide. // // The following operations are related to GetBucketReplication: // // * PutBucketReplication (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_PutBucketReplication.html) // // * DeleteBucketReplication (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DeleteBucketReplication.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation GetBucketReplication for usage and error information. // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetBucketReplication func (c *S3Control) GetBucketReplication(input *GetBucketReplicationInput) (*GetBucketReplicationOutput, error) { req, out := c.GetBucketReplicationRequest(input) return out, req.Send() } // GetBucketReplicationWithContext is the same as GetBucketReplication with the addition of // the ability to pass a context and additional request options. // // See GetBucketReplication for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) GetBucketReplicationWithContext(ctx aws.Context, input *GetBucketReplicationInput, opts ...request.Option) (*GetBucketReplicationOutput, error) { req, out := c.GetBucketReplicationRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opGetBucketTagging = "GetBucketTagging" // GetBucketTaggingRequest generates a "aws/request.Request" representing the // client's request for the GetBucketTagging operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See GetBucketTagging for more information on using the GetBucketTagging // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the GetBucketTaggingRequest method. // req, resp := client.GetBucketTaggingRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetBucketTagging func (c *S3Control) GetBucketTaggingRequest(input *GetBucketTaggingInput) (req *request.Request, output *GetBucketTaggingOutput) { op := &request.Operation{ Name: opGetBucketTagging, HTTPMethod: "GET", HTTPPath: "/v20180820/bucket/{name}/tagging", } if input == nil { input = &GetBucketTaggingInput{} } output = &GetBucketTaggingOutput{} req = c.newRequest(op, input, output) // update account id or check if provided input for account id member matches // the account id present in ARN req.Handlers.Validate.PushFrontNamed(updateAccountIDWithARNHandler) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } // GetBucketTagging API operation for AWS S3 Control. // // // This action gets an Amazon S3 on Outposts bucket's tags. To get an S3 bucket // tags, see GetBucketTagging (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketTagging.html) // in the Amazon S3 API Reference. // // Returns the tag set associated with the Outposts bucket. For more information, // see Using Amazon S3 on Outposts (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) // in the Amazon S3 User Guide. // // To use this action, you must have permission to perform the GetBucketTagging // action. By default, the bucket owner has this permission and can grant this // permission to others. // // GetBucketTagging has the following special error: // // * Error code: NoSuchTagSetError Description: There is no tag set associated // with the bucket. // // All Amazon S3 on Outposts REST API requests for this action require an additional // parameter of x-amz-outpost-id to be passed with the request. In addition, // you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. // For an example of the request syntax for Amazon S3 on Outposts that uses // the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived // by using the access point ARN, see the Examples (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetBucketTagging.html#API_control_GetBucketTagging_Examples) // section. // // The following actions are related to GetBucketTagging: // // * PutBucketTagging (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_PutBucketTagging.html) // // * DeleteBucketTagging (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DeleteBucketTagging.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation GetBucketTagging for usage and error information. // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetBucketTagging func (c *S3Control) GetBucketTagging(input *GetBucketTaggingInput) (*GetBucketTaggingOutput, error) { req, out := c.GetBucketTaggingRequest(input) return out, req.Send() } // GetBucketTaggingWithContext is the same as GetBucketTagging with the addition of // the ability to pass a context and additional request options. // // See GetBucketTagging for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) GetBucketTaggingWithContext(ctx aws.Context, input *GetBucketTaggingInput, opts ...request.Option) (*GetBucketTaggingOutput, error) { req, out := c.GetBucketTaggingRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opGetBucketVersioning = "GetBucketVersioning" // GetBucketVersioningRequest generates a "aws/request.Request" representing the // client's request for the GetBucketVersioning operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See GetBucketVersioning for more information on using the GetBucketVersioning // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the GetBucketVersioningRequest method. // req, resp := client.GetBucketVersioningRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetBucketVersioning func (c *S3Control) GetBucketVersioningRequest(input *GetBucketVersioningInput) (req *request.Request, output *GetBucketVersioningOutput) { op := &request.Operation{ Name: opGetBucketVersioning, HTTPMethod: "GET", HTTPPath: "/v20180820/bucket/{name}/versioning", } if input == nil { input = &GetBucketVersioningInput{} } output = &GetBucketVersioningOutput{} req = c.newRequest(op, input, output) // update account id or check if provided input for account id member matches // the account id present in ARN req.Handlers.Validate.PushFrontNamed(updateAccountIDWithARNHandler) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } // GetBucketVersioning API operation for AWS S3 Control. // // // This operation returns the versioning state for S3 on Outposts buckets only. // To return the versioning state for an S3 bucket, see GetBucketVersioning // (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketVersioning.html) // in the Amazon S3 API Reference. // // Returns the versioning state for an S3 on Outposts bucket. With S3 Versioning, // you can save multiple distinct copies of your objects and recover from unintended // user actions and application failures. // // If you've never set versioning on your bucket, it has no versioning state. // In that case, the GetBucketVersioning request does not return a versioning // state value. // // For more information about versioning, see Versioning (https://docs.aws.amazon.com/AmazonS3/latest/userguide/Versioning.html) // in the Amazon S3 User Guide. // // All Amazon S3 on Outposts REST API requests for this action require an additional // parameter of x-amz-outpost-id to be passed with the request. In addition, // you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. // For an example of the request syntax for Amazon S3 on Outposts that uses // the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived // by using the access point ARN, see the Examples (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetBucketVersioning.html#API_control_GetBucketVersioning_Examples) // section. // // The following operations are related to GetBucketVersioning for S3 on Outposts. // // * PutBucketVersioning (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_PutBucketVersioning.html) // // * PutBucketLifecycleConfiguration (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_PutBucketLifecycleConfiguration.html) // // * GetBucketLifecycleConfiguration (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetBucketLifecycleConfiguration.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation GetBucketVersioning for usage and error information. // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetBucketVersioning func (c *S3Control) GetBucketVersioning(input *GetBucketVersioningInput) (*GetBucketVersioningOutput, error) { req, out := c.GetBucketVersioningRequest(input) return out, req.Send() } // GetBucketVersioningWithContext is the same as GetBucketVersioning with the addition of // the ability to pass a context and additional request options. // // See GetBucketVersioning for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) GetBucketVersioningWithContext(ctx aws.Context, input *GetBucketVersioningInput, opts ...request.Option) (*GetBucketVersioningOutput, error) { req, out := c.GetBucketVersioningRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opGetJobTagging = "GetJobTagging" // GetJobTaggingRequest generates a "aws/request.Request" representing the // client's request for the GetJobTagging operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See GetJobTagging for more information on using the GetJobTagging // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the GetJobTaggingRequest method. // req, resp := client.GetJobTaggingRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetJobTagging func (c *S3Control) GetJobTaggingRequest(input *GetJobTaggingInput) (req *request.Request, output *GetJobTaggingOutput) { op := &request.Operation{ Name: opGetJobTagging, HTTPMethod: "GET", HTTPPath: "/v20180820/jobs/{id}/tagging", } if input == nil { input = &GetJobTaggingInput{} } output = &GetJobTaggingOutput{} req = c.newRequest(op, input, output) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } // GetJobTagging API operation for AWS S3 Control. // // Returns the tags on an S3 Batch Operations job. To use the GetJobTagging // operation, you must have permission to perform the s3:GetJobTagging action. // For more information, see Controlling access and labeling jobs using tags // (https://docs.aws.amazon.com/AmazonS3/latest/dev/batch-ops-managing-jobs.html#batch-ops-job-tags) // in the Amazon S3 User Guide. // // Related actions include: // // * CreateJob (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateJob.html) // // * PutJobTagging (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_PutJobTagging.html) // // * DeleteJobTagging (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DeleteJobTagging.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation GetJobTagging for usage and error information. // // Returned Error Codes: // * ErrCodeInternalServiceException "InternalServiceException" // // * ErrCodeTooManyRequestsException "TooManyRequestsException" // // * ErrCodeNotFoundException "NotFoundException" // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetJobTagging func (c *S3Control) GetJobTagging(input *GetJobTaggingInput) (*GetJobTaggingOutput, error) { req, out := c.GetJobTaggingRequest(input) return out, req.Send() } // GetJobTaggingWithContext is the same as GetJobTagging with the addition of // the ability to pass a context and additional request options. // // See GetJobTagging for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) GetJobTaggingWithContext(ctx aws.Context, input *GetJobTaggingInput, opts ...request.Option) (*GetJobTaggingOutput, error) { req, out := c.GetJobTaggingRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opGetMultiRegionAccessPoint = "GetMultiRegionAccessPoint" // GetMultiRegionAccessPointRequest generates a "aws/request.Request" representing the // client's request for the GetMultiRegionAccessPoint operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See GetMultiRegionAccessPoint for more information on using the GetMultiRegionAccessPoint // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the GetMultiRegionAccessPointRequest method. // req, resp := client.GetMultiRegionAccessPointRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetMultiRegionAccessPoint func (c *S3Control) GetMultiRegionAccessPointRequest(input *GetMultiRegionAccessPointInput) (req *request.Request, output *GetMultiRegionAccessPointOutput) { op := &request.Operation{ Name: opGetMultiRegionAccessPoint, HTTPMethod: "GET", HTTPPath: "/v20180820/mrap/instances/{name+}", } if input == nil { input = &GetMultiRegionAccessPointInput{} } output = &GetMultiRegionAccessPointOutput{} req = c.newRequest(op, input, output) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) req.Handlers.Build.PushBackNamed(request.NamedHandler{ Name: "contentMd5Handler", Fn: checksum.AddBodyContentMD5Handler, }) return } // GetMultiRegionAccessPoint API operation for AWS S3 Control. // // Returns configuration information about the specified Multi-Region Access // Point. // // This action will always be routed to the US West (Oregon) Region. For more // information about the restrictions around managing Multi-Region Access Points, // see Managing Multi-Region Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/ManagingMultiRegionAccessPoints.html) // in the Amazon S3 User Guide. // // The following actions are related to GetMultiRegionAccessPoint: // // * CreateMultiRegionAccessPoint (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateMultiRegionAccessPoint.html) // // * DeleteMultiRegionAccessPoint (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DeleteMultiRegionAccessPoint.html) // // * DescribeMultiRegionAccessPointOperation (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DescribeMultiRegionAccessPointOperation.html) // // * ListMultiRegionAccessPoints (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_ListMultiRegionAccessPoints.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation GetMultiRegionAccessPoint for usage and error information. // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetMultiRegionAccessPoint func (c *S3Control) GetMultiRegionAccessPoint(input *GetMultiRegionAccessPointInput) (*GetMultiRegionAccessPointOutput, error) { req, out := c.GetMultiRegionAccessPointRequest(input) return out, req.Send() } // GetMultiRegionAccessPointWithContext is the same as GetMultiRegionAccessPoint with the addition of // the ability to pass a context and additional request options. // // See GetMultiRegionAccessPoint for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) GetMultiRegionAccessPointWithContext(ctx aws.Context, input *GetMultiRegionAccessPointInput, opts ...request.Option) (*GetMultiRegionAccessPointOutput, error) { req, out := c.GetMultiRegionAccessPointRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opGetMultiRegionAccessPointPolicy = "GetMultiRegionAccessPointPolicy" // GetMultiRegionAccessPointPolicyRequest generates a "aws/request.Request" representing the // client's request for the GetMultiRegionAccessPointPolicy operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See GetMultiRegionAccessPointPolicy for more information on using the GetMultiRegionAccessPointPolicy // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the GetMultiRegionAccessPointPolicyRequest method. // req, resp := client.GetMultiRegionAccessPointPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetMultiRegionAccessPointPolicy func (c *S3Control) GetMultiRegionAccessPointPolicyRequest(input *GetMultiRegionAccessPointPolicyInput) (req *request.Request, output *GetMultiRegionAccessPointPolicyOutput) { op := &request.Operation{ Name: opGetMultiRegionAccessPointPolicy, HTTPMethod: "GET", HTTPPath: "/v20180820/mrap/instances/{name+}/policy", } if input == nil { input = &GetMultiRegionAccessPointPolicyInput{} } output = &GetMultiRegionAccessPointPolicyOutput{} req = c.newRequest(op, input, output) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) req.Handlers.Build.PushBackNamed(request.NamedHandler{ Name: "contentMd5Handler", Fn: checksum.AddBodyContentMD5Handler, }) return } // GetMultiRegionAccessPointPolicy API operation for AWS S3 Control. // // Returns the access control policy of the specified Multi-Region Access Point. // // This action will always be routed to the US West (Oregon) Region. For more // information about the restrictions around managing Multi-Region Access Points, // see Managing Multi-Region Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/ManagingMultiRegionAccessPoints.html) // in the Amazon S3 User Guide. // // The following actions are related to GetMultiRegionAccessPointPolicy: // // * GetMultiRegionAccessPointPolicyStatus (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetMultiRegionAccessPointPolicyStatus.html) // // * PutMultiRegionAccessPointPolicy (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_PutMultiRegionAccessPointPolicy.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation GetMultiRegionAccessPointPolicy for usage and error information. // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetMultiRegionAccessPointPolicy func (c *S3Control) GetMultiRegionAccessPointPolicy(input *GetMultiRegionAccessPointPolicyInput) (*GetMultiRegionAccessPointPolicyOutput, error) { req, out := c.GetMultiRegionAccessPointPolicyRequest(input) return out, req.Send() } // GetMultiRegionAccessPointPolicyWithContext is the same as GetMultiRegionAccessPointPolicy with the addition of // the ability to pass a context and additional request options. // // See GetMultiRegionAccessPointPolicy for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) GetMultiRegionAccessPointPolicyWithContext(ctx aws.Context, input *GetMultiRegionAccessPointPolicyInput, opts ...request.Option) (*GetMultiRegionAccessPointPolicyOutput, error) { req, out := c.GetMultiRegionAccessPointPolicyRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opGetMultiRegionAccessPointPolicyStatus = "GetMultiRegionAccessPointPolicyStatus" // GetMultiRegionAccessPointPolicyStatusRequest generates a "aws/request.Request" representing the // client's request for the GetMultiRegionAccessPointPolicyStatus operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See GetMultiRegionAccessPointPolicyStatus for more information on using the GetMultiRegionAccessPointPolicyStatus // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the GetMultiRegionAccessPointPolicyStatusRequest method. // req, resp := client.GetMultiRegionAccessPointPolicyStatusRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetMultiRegionAccessPointPolicyStatus func (c *S3Control) GetMultiRegionAccessPointPolicyStatusRequest(input *GetMultiRegionAccessPointPolicyStatusInput) (req *request.Request, output *GetMultiRegionAccessPointPolicyStatusOutput) { op := &request.Operation{ Name: opGetMultiRegionAccessPointPolicyStatus, HTTPMethod: "GET", HTTPPath: "/v20180820/mrap/instances/{name+}/policystatus", } if input == nil { input = &GetMultiRegionAccessPointPolicyStatusInput{} } output = &GetMultiRegionAccessPointPolicyStatusOutput{} req = c.newRequest(op, input, output) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) req.Handlers.Build.PushBackNamed(request.NamedHandler{ Name: "contentMd5Handler", Fn: checksum.AddBodyContentMD5Handler, }) return } // GetMultiRegionAccessPointPolicyStatus API operation for AWS S3 Control. // // Indicates whether the specified Multi-Region Access Point has an access control // policy that allows public access. // // This action will always be routed to the US West (Oregon) Region. For more // information about the restrictions around managing Multi-Region Access Points, // see Managing Multi-Region Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/ManagingMultiRegionAccessPoints.html) // in the Amazon S3 User Guide. // // The following actions are related to GetMultiRegionAccessPointPolicyStatus: // // * GetMultiRegionAccessPointPolicy (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetMultiRegionAccessPointPolicy.html) // // * PutMultiRegionAccessPointPolicy (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_PutMultiRegionAccessPointPolicy.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation GetMultiRegionAccessPointPolicyStatus for usage and error information. // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetMultiRegionAccessPointPolicyStatus func (c *S3Control) GetMultiRegionAccessPointPolicyStatus(input *GetMultiRegionAccessPointPolicyStatusInput) (*GetMultiRegionAccessPointPolicyStatusOutput, error) { req, out := c.GetMultiRegionAccessPointPolicyStatusRequest(input) return out, req.Send() } // GetMultiRegionAccessPointPolicyStatusWithContext is the same as GetMultiRegionAccessPointPolicyStatus with the addition of // the ability to pass a context and additional request options. // // See GetMultiRegionAccessPointPolicyStatus for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) GetMultiRegionAccessPointPolicyStatusWithContext(ctx aws.Context, input *GetMultiRegionAccessPointPolicyStatusInput, opts ...request.Option) (*GetMultiRegionAccessPointPolicyStatusOutput, error) { req, out := c.GetMultiRegionAccessPointPolicyStatusRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opGetMultiRegionAccessPointRoutes = "GetMultiRegionAccessPointRoutes" // GetMultiRegionAccessPointRoutesRequest generates a "aws/request.Request" representing the // client's request for the GetMultiRegionAccessPointRoutes operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See GetMultiRegionAccessPointRoutes for more information on using the GetMultiRegionAccessPointRoutes // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the GetMultiRegionAccessPointRoutesRequest method. // req, resp := client.GetMultiRegionAccessPointRoutesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetMultiRegionAccessPointRoutes func (c *S3Control) GetMultiRegionAccessPointRoutesRequest(input *GetMultiRegionAccessPointRoutesInput) (req *request.Request, output *GetMultiRegionAccessPointRoutesOutput) { op := &request.Operation{ Name: opGetMultiRegionAccessPointRoutes, HTTPMethod: "GET", HTTPPath: "/v20180820/mrap/instances/{mrap+}/routes", } if input == nil { input = &GetMultiRegionAccessPointRoutesInput{} } output = &GetMultiRegionAccessPointRoutesOutput{} req = c.newRequest(op, input, output) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) req.Handlers.Build.PushBackNamed(request.NamedHandler{ Name: "contentMd5Handler", Fn: checksum.AddBodyContentMD5Handler, }) return } // GetMultiRegionAccessPointRoutes API operation for AWS S3 Control. // // Returns the routing configuration for a Multi-Region Access Point, indicating // which Regions are active or passive. // // To obtain routing control changes and failover requests, use the Amazon S3 // failover control infrastructure endpoints in these five Amazon Web Services // Regions: // // * us-east-1 // // * us-west-2 // // * ap-southeast-2 // // * ap-northeast-1 // // * eu-west-1 // // Your Amazon S3 bucket does not need to be in these five Regions. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation GetMultiRegionAccessPointRoutes for usage and error information. // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetMultiRegionAccessPointRoutes func (c *S3Control) GetMultiRegionAccessPointRoutes(input *GetMultiRegionAccessPointRoutesInput) (*GetMultiRegionAccessPointRoutesOutput, error) { req, out := c.GetMultiRegionAccessPointRoutesRequest(input) return out, req.Send() } // GetMultiRegionAccessPointRoutesWithContext is the same as GetMultiRegionAccessPointRoutes with the addition of // the ability to pass a context and additional request options. // // See GetMultiRegionAccessPointRoutes for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) GetMultiRegionAccessPointRoutesWithContext(ctx aws.Context, input *GetMultiRegionAccessPointRoutesInput, opts ...request.Option) (*GetMultiRegionAccessPointRoutesOutput, error) { req, out := c.GetMultiRegionAccessPointRoutesRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opGetPublicAccessBlock = "GetPublicAccessBlock" // GetPublicAccessBlockRequest generates a "aws/request.Request" representing the // client's request for the GetPublicAccessBlock operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See GetPublicAccessBlock for more information on using the GetPublicAccessBlock // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the GetPublicAccessBlockRequest method. // req, resp := client.GetPublicAccessBlockRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetPublicAccessBlock func (c *S3Control) GetPublicAccessBlockRequest(input *GetPublicAccessBlockInput) (req *request.Request, output *GetPublicAccessBlockOutput) { op := &request.Operation{ Name: opGetPublicAccessBlock, HTTPMethod: "GET", HTTPPath: "/v20180820/configuration/publicAccessBlock", } if input == nil { input = &GetPublicAccessBlockInput{} } output = &GetPublicAccessBlockOutput{} req = c.newRequest(op, input, output) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } // GetPublicAccessBlock API operation for AWS S3 Control. // // Retrieves the PublicAccessBlock configuration for an Amazon Web Services // account. For more information, see Using Amazon S3 block public access (https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html). // // Related actions include: // // * DeletePublicAccessBlock (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DeletePublicAccessBlock.html) // // * PutPublicAccessBlock (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_PutPublicAccessBlock.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation GetPublicAccessBlock for usage and error information. // // Returned Error Codes: // * ErrCodeNoSuchPublicAccessBlockConfiguration "NoSuchPublicAccessBlockConfiguration" // Amazon S3 throws this exception if you make a GetPublicAccessBlock request // against an account that doesn't have a PublicAccessBlockConfiguration set. // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetPublicAccessBlock func (c *S3Control) GetPublicAccessBlock(input *GetPublicAccessBlockInput) (*GetPublicAccessBlockOutput, error) { req, out := c.GetPublicAccessBlockRequest(input) return out, req.Send() } // GetPublicAccessBlockWithContext is the same as GetPublicAccessBlock with the addition of // the ability to pass a context and additional request options. // // See GetPublicAccessBlock for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) GetPublicAccessBlockWithContext(ctx aws.Context, input *GetPublicAccessBlockInput, opts ...request.Option) (*GetPublicAccessBlockOutput, error) { req, out := c.GetPublicAccessBlockRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opGetStorageLensConfiguration = "GetStorageLensConfiguration" // GetStorageLensConfigurationRequest generates a "aws/request.Request" representing the // client's request for the GetStorageLensConfiguration operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See GetStorageLensConfiguration for more information on using the GetStorageLensConfiguration // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the GetStorageLensConfigurationRequest method. // req, resp := client.GetStorageLensConfigurationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetStorageLensConfiguration func (c *S3Control) GetStorageLensConfigurationRequest(input *GetStorageLensConfigurationInput) (req *request.Request, output *GetStorageLensConfigurationOutput) { op := &request.Operation{ Name: opGetStorageLensConfiguration, HTTPMethod: "GET", HTTPPath: "/v20180820/storagelens/{storagelensid}", } if input == nil { input = &GetStorageLensConfigurationInput{} } output = &GetStorageLensConfigurationOutput{} req = c.newRequest(op, input, output) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } // GetStorageLensConfiguration API operation for AWS S3 Control. // // Gets the Amazon S3 Storage Lens configuration. For more information, see // Assessing your storage activity and usage with Amazon S3 Storage Lens (https://docs.aws.amazon.com/AmazonS3/latest/dev/storage_lens.html) // in the Amazon S3 User Guide. For a complete list of S3 Storage Lens metrics, // see S3 Storage Lens metrics glossary (https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage_lens_metrics_glossary.html) // in the Amazon S3 User Guide. // // To use this action, you must have permission to perform the s3:GetStorageLensConfiguration // action. For more information, see Setting permissions to use Amazon S3 Storage // Lens (https://docs.aws.amazon.com/AmazonS3/latest/dev/storage_lens_iam_permissions.html) // in the Amazon S3 User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation GetStorageLensConfiguration for usage and error information. // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetStorageLensConfiguration func (c *S3Control) GetStorageLensConfiguration(input *GetStorageLensConfigurationInput) (*GetStorageLensConfigurationOutput, error) { req, out := c.GetStorageLensConfigurationRequest(input) return out, req.Send() } // GetStorageLensConfigurationWithContext is the same as GetStorageLensConfiguration with the addition of // the ability to pass a context and additional request options. // // See GetStorageLensConfiguration for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) GetStorageLensConfigurationWithContext(ctx aws.Context, input *GetStorageLensConfigurationInput, opts ...request.Option) (*GetStorageLensConfigurationOutput, error) { req, out := c.GetStorageLensConfigurationRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opGetStorageLensConfigurationTagging = "GetStorageLensConfigurationTagging" // GetStorageLensConfigurationTaggingRequest generates a "aws/request.Request" representing the // client's request for the GetStorageLensConfigurationTagging operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See GetStorageLensConfigurationTagging for more information on using the GetStorageLensConfigurationTagging // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the GetStorageLensConfigurationTaggingRequest method. // req, resp := client.GetStorageLensConfigurationTaggingRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetStorageLensConfigurationTagging func (c *S3Control) GetStorageLensConfigurationTaggingRequest(input *GetStorageLensConfigurationTaggingInput) (req *request.Request, output *GetStorageLensConfigurationTaggingOutput) { op := &request.Operation{ Name: opGetStorageLensConfigurationTagging, HTTPMethod: "GET", HTTPPath: "/v20180820/storagelens/{storagelensid}/tagging", } if input == nil { input = &GetStorageLensConfigurationTaggingInput{} } output = &GetStorageLensConfigurationTaggingOutput{} req = c.newRequest(op, input, output) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } // GetStorageLensConfigurationTagging API operation for AWS S3 Control. // // Gets the tags of Amazon S3 Storage Lens configuration. For more information // about S3 Storage Lens, see Assessing your storage activity and usage with // Amazon S3 Storage Lens (https://docs.aws.amazon.com/AmazonS3/latest/dev/storage_lens.html) // in the Amazon S3 User Guide. // // To use this action, you must have permission to perform the s3:GetStorageLensConfigurationTagging // action. For more information, see Setting permissions to use Amazon S3 Storage // Lens (https://docs.aws.amazon.com/AmazonS3/latest/dev/storage_lens_iam_permissions.html) // in the Amazon S3 User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation GetStorageLensConfigurationTagging for usage and error information. // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetStorageLensConfigurationTagging func (c *S3Control) GetStorageLensConfigurationTagging(input *GetStorageLensConfigurationTaggingInput) (*GetStorageLensConfigurationTaggingOutput, error) { req, out := c.GetStorageLensConfigurationTaggingRequest(input) return out, req.Send() } // GetStorageLensConfigurationTaggingWithContext is the same as GetStorageLensConfigurationTagging with the addition of // the ability to pass a context and additional request options. // // See GetStorageLensConfigurationTagging for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) GetStorageLensConfigurationTaggingWithContext(ctx aws.Context, input *GetStorageLensConfigurationTaggingInput, opts ...request.Option) (*GetStorageLensConfigurationTaggingOutput, error) { req, out := c.GetStorageLensConfigurationTaggingRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opListAccessPoints = "ListAccessPoints" // ListAccessPointsRequest generates a "aws/request.Request" representing the // client's request for the ListAccessPoints operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See ListAccessPoints for more information on using the ListAccessPoints // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the ListAccessPointsRequest method. // req, resp := client.ListAccessPointsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/ListAccessPoints func (c *S3Control) ListAccessPointsRequest(input *ListAccessPointsInput) (req *request.Request, output *ListAccessPointsOutput) { op := &request.Operation{ Name: opListAccessPoints, HTTPMethod: "GET", HTTPPath: "/v20180820/accesspoint", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "MaxResults", TruncationToken: "", }, } if input == nil { input = &ListAccessPointsInput{} } output = &ListAccessPointsOutput{} req = c.newRequest(op, input, output) // update account id or check if provided input for account id member matches // the account id present in ARN req.Handlers.Validate.PushFrontNamed(updateAccountIDWithARNHandler) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } // ListAccessPoints API operation for AWS S3 Control. // // Returns a list of the access points that are owned by the current account // that's associated with the specified bucket. You can retrieve up to 1000 // access points per call. If the specified bucket has more than 1,000 access // points (or the number specified in maxResults, whichever is less), the response // will include a continuation token that you can use to list the additional // access points. // // All Amazon S3 on Outposts REST API requests for this action require an additional // parameter of x-amz-outpost-id to be passed with the request. In addition, // you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. // For an example of the request syntax for Amazon S3 on Outposts that uses // the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived // by using the access point ARN, see the Examples (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetAccessPoint.html#API_control_GetAccessPoint_Examples) // section. // // The following actions are related to ListAccessPoints: // // * CreateAccessPoint (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateAccessPoint.html) // // * DeleteAccessPoint (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DeleteAccessPoint.html) // // * GetAccessPoint (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetAccessPoint.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation ListAccessPoints for usage and error information. // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/ListAccessPoints func (c *S3Control) ListAccessPoints(input *ListAccessPointsInput) (*ListAccessPointsOutput, error) { req, out := c.ListAccessPointsRequest(input) return out, req.Send() } // ListAccessPointsWithContext is the same as ListAccessPoints with the addition of // the ability to pass a context and additional request options. // // See ListAccessPoints for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) ListAccessPointsWithContext(ctx aws.Context, input *ListAccessPointsInput, opts ...request.Option) (*ListAccessPointsOutput, error) { req, out := c.ListAccessPointsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } // ListAccessPointsPages iterates over the pages of a ListAccessPoints operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListAccessPoints method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListAccessPoints operation. // pageNum := 0 // err := client.ListAccessPointsPages(params, // func(page *s3control.ListAccessPointsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *S3Control) ListAccessPointsPages(input *ListAccessPointsInput, fn func(*ListAccessPointsOutput, bool) bool) error { return c.ListAccessPointsPagesWithContext(aws.BackgroundContext(), input, fn) } // ListAccessPointsPagesWithContext same as ListAccessPointsPages except // it takes a Context and allows setting request options on the pages. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) ListAccessPointsPagesWithContext(ctx aws.Context, input *ListAccessPointsInput, fn func(*ListAccessPointsOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { var inCpy *ListAccessPointsInput if input != nil { tmp := *input inCpy = &tmp } req, _ := c.ListAccessPointsRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil }, } for p.Next() { if !fn(p.Page().(*ListAccessPointsOutput), !p.HasNextPage()) { break } } return p.Err() } const opListAccessPointsForObjectLambda = "ListAccessPointsForObjectLambda" // ListAccessPointsForObjectLambdaRequest generates a "aws/request.Request" representing the // client's request for the ListAccessPointsForObjectLambda operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See ListAccessPointsForObjectLambda for more information on using the ListAccessPointsForObjectLambda // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the ListAccessPointsForObjectLambdaRequest method. // req, resp := client.ListAccessPointsForObjectLambdaRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/ListAccessPointsForObjectLambda func (c *S3Control) ListAccessPointsForObjectLambdaRequest(input *ListAccessPointsForObjectLambdaInput) (req *request.Request, output *ListAccessPointsForObjectLambdaOutput) { op := &request.Operation{ Name: opListAccessPointsForObjectLambda, HTTPMethod: "GET", HTTPPath: "/v20180820/accesspointforobjectlambda", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "MaxResults", TruncationToken: "", }, } if input == nil { input = &ListAccessPointsForObjectLambdaInput{} } output = &ListAccessPointsForObjectLambdaOutput{} req = c.newRequest(op, input, output) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } // ListAccessPointsForObjectLambda API operation for AWS S3 Control. // // Returns some or all (up to 1,000) access points associated with the Object // Lambda Access Point per call. If there are more access points than what can // be returned in one call, the response will include a continuation token that // you can use to list the additional access points. // // The following actions are related to ListAccessPointsForObjectLambda: // // * CreateAccessPointForObjectLambda (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateAccessPointForObjectLambda.html) // // * DeleteAccessPointForObjectLambda (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DeleteAccessPointForObjectLambda.html) // // * GetAccessPointForObjectLambda (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetAccessPointForObjectLambda.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation ListAccessPointsForObjectLambda for usage and error information. // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/ListAccessPointsForObjectLambda func (c *S3Control) ListAccessPointsForObjectLambda(input *ListAccessPointsForObjectLambdaInput) (*ListAccessPointsForObjectLambdaOutput, error) { req, out := c.ListAccessPointsForObjectLambdaRequest(input) return out, req.Send() } // ListAccessPointsForObjectLambdaWithContext is the same as ListAccessPointsForObjectLambda with the addition of // the ability to pass a context and additional request options. // // See ListAccessPointsForObjectLambda for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) ListAccessPointsForObjectLambdaWithContext(ctx aws.Context, input *ListAccessPointsForObjectLambdaInput, opts ...request.Option) (*ListAccessPointsForObjectLambdaOutput, error) { req, out := c.ListAccessPointsForObjectLambdaRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } // ListAccessPointsForObjectLambdaPages iterates over the pages of a ListAccessPointsForObjectLambda operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListAccessPointsForObjectLambda method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListAccessPointsForObjectLambda operation. // pageNum := 0 // err := client.ListAccessPointsForObjectLambdaPages(params, // func(page *s3control.ListAccessPointsForObjectLambdaOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *S3Control) ListAccessPointsForObjectLambdaPages(input *ListAccessPointsForObjectLambdaInput, fn func(*ListAccessPointsForObjectLambdaOutput, bool) bool) error { return c.ListAccessPointsForObjectLambdaPagesWithContext(aws.BackgroundContext(), input, fn) } // ListAccessPointsForObjectLambdaPagesWithContext same as ListAccessPointsForObjectLambdaPages except // it takes a Context and allows setting request options on the pages. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) ListAccessPointsForObjectLambdaPagesWithContext(ctx aws.Context, input *ListAccessPointsForObjectLambdaInput, fn func(*ListAccessPointsForObjectLambdaOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { var inCpy *ListAccessPointsForObjectLambdaInput if input != nil { tmp := *input inCpy = &tmp } req, _ := c.ListAccessPointsForObjectLambdaRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil }, } for p.Next() { if !fn(p.Page().(*ListAccessPointsForObjectLambdaOutput), !p.HasNextPage()) { break } } return p.Err() } const opListJobs = "ListJobs" // ListJobsRequest generates a "aws/request.Request" representing the // client's request for the ListJobs operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See ListJobs for more information on using the ListJobs // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the ListJobsRequest method. // req, resp := client.ListJobsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/ListJobs func (c *S3Control) ListJobsRequest(input *ListJobsInput) (req *request.Request, output *ListJobsOutput) { op := &request.Operation{ Name: opListJobs, HTTPMethod: "GET", HTTPPath: "/v20180820/jobs", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "MaxResults", TruncationToken: "", }, } if input == nil { input = &ListJobsInput{} } output = &ListJobsOutput{} req = c.newRequest(op, input, output) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } // ListJobs API operation for AWS S3 Control. // // Lists current S3 Batch Operations jobs and jobs that have ended within the // last 30 days for the Amazon Web Services account making the request. For // more information, see S3 Batch Operations (https://docs.aws.amazon.com/AmazonS3/latest/userguide/batch-ops.html) // in the Amazon S3 User Guide. // // Related actions include: // // * CreateJob (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateJob.html) // // * DescribeJob (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DescribeJob.html) // // * UpdateJobPriority (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_UpdateJobPriority.html) // // * UpdateJobStatus (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_UpdateJobStatus.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation ListJobs for usage and error information. // // Returned Error Codes: // * ErrCodeInvalidRequestException "InvalidRequestException" // // * ErrCodeInternalServiceException "InternalServiceException" // // * ErrCodeInvalidNextTokenException "InvalidNextTokenException" // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/ListJobs func (c *S3Control) ListJobs(input *ListJobsInput) (*ListJobsOutput, error) { req, out := c.ListJobsRequest(input) return out, req.Send() } // ListJobsWithContext is the same as ListJobs with the addition of // the ability to pass a context and additional request options. // // See ListJobs for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) ListJobsWithContext(ctx aws.Context, input *ListJobsInput, opts ...request.Option) (*ListJobsOutput, error) { req, out := c.ListJobsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } // ListJobsPages iterates over the pages of a ListJobs operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListJobs method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListJobs operation. // pageNum := 0 // err := client.ListJobsPages(params, // func(page *s3control.ListJobsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *S3Control) ListJobsPages(input *ListJobsInput, fn func(*ListJobsOutput, bool) bool) error { return c.ListJobsPagesWithContext(aws.BackgroundContext(), input, fn) } // ListJobsPagesWithContext same as ListJobsPages except // it takes a Context and allows setting request options on the pages. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) ListJobsPagesWithContext(ctx aws.Context, input *ListJobsInput, fn func(*ListJobsOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { var inCpy *ListJobsInput if input != nil { tmp := *input inCpy = &tmp } req, _ := c.ListJobsRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil }, } for p.Next() { if !fn(p.Page().(*ListJobsOutput), !p.HasNextPage()) { break } } return p.Err() } const opListMultiRegionAccessPoints = "ListMultiRegionAccessPoints" // ListMultiRegionAccessPointsRequest generates a "aws/request.Request" representing the // client's request for the ListMultiRegionAccessPoints operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See ListMultiRegionAccessPoints for more information on using the ListMultiRegionAccessPoints // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the ListMultiRegionAccessPointsRequest method. // req, resp := client.ListMultiRegionAccessPointsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/ListMultiRegionAccessPoints func (c *S3Control) ListMultiRegionAccessPointsRequest(input *ListMultiRegionAccessPointsInput) (req *request.Request, output *ListMultiRegionAccessPointsOutput) { op := &request.Operation{ Name: opListMultiRegionAccessPoints, HTTPMethod: "GET", HTTPPath: "/v20180820/mrap/instances", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "MaxResults", TruncationToken: "", }, } if input == nil { input = &ListMultiRegionAccessPointsInput{} } output = &ListMultiRegionAccessPointsOutput{} req = c.newRequest(op, input, output) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) req.Handlers.Build.PushBackNamed(request.NamedHandler{ Name: "contentMd5Handler", Fn: checksum.AddBodyContentMD5Handler, }) return } // ListMultiRegionAccessPoints API operation for AWS S3 Control. // // Returns a list of the Multi-Region Access Points currently associated with // the specified Amazon Web Services account. Each call can return up to 100 // Multi-Region Access Points, the maximum number of Multi-Region Access Points // that can be associated with a single account. // // This action will always be routed to the US West (Oregon) Region. For more // information about the restrictions around managing Multi-Region Access Points, // see Managing Multi-Region Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/ManagingMultiRegionAccessPoints.html) // in the Amazon S3 User Guide. // // The following actions are related to ListMultiRegionAccessPoint: // // * CreateMultiRegionAccessPoint (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateMultiRegionAccessPoint.html) // // * DeleteMultiRegionAccessPoint (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DeleteMultiRegionAccessPoint.html) // // * DescribeMultiRegionAccessPointOperation (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DescribeMultiRegionAccessPointOperation.html) // // * GetMultiRegionAccessPoint (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetMultiRegionAccessPoint.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation ListMultiRegionAccessPoints for usage and error information. // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/ListMultiRegionAccessPoints func (c *S3Control) ListMultiRegionAccessPoints(input *ListMultiRegionAccessPointsInput) (*ListMultiRegionAccessPointsOutput, error) { req, out := c.ListMultiRegionAccessPointsRequest(input) return out, req.Send() } // ListMultiRegionAccessPointsWithContext is the same as ListMultiRegionAccessPoints with the addition of // the ability to pass a context and additional request options. // // See ListMultiRegionAccessPoints for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) ListMultiRegionAccessPointsWithContext(ctx aws.Context, input *ListMultiRegionAccessPointsInput, opts ...request.Option) (*ListMultiRegionAccessPointsOutput, error) { req, out := c.ListMultiRegionAccessPointsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } // ListMultiRegionAccessPointsPages iterates over the pages of a ListMultiRegionAccessPoints operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListMultiRegionAccessPoints method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListMultiRegionAccessPoints operation. // pageNum := 0 // err := client.ListMultiRegionAccessPointsPages(params, // func(page *s3control.ListMultiRegionAccessPointsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *S3Control) ListMultiRegionAccessPointsPages(input *ListMultiRegionAccessPointsInput, fn func(*ListMultiRegionAccessPointsOutput, bool) bool) error { return c.ListMultiRegionAccessPointsPagesWithContext(aws.BackgroundContext(), input, fn) } // ListMultiRegionAccessPointsPagesWithContext same as ListMultiRegionAccessPointsPages except // it takes a Context and allows setting request options on the pages. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) ListMultiRegionAccessPointsPagesWithContext(ctx aws.Context, input *ListMultiRegionAccessPointsInput, fn func(*ListMultiRegionAccessPointsOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { var inCpy *ListMultiRegionAccessPointsInput if input != nil { tmp := *input inCpy = &tmp } req, _ := c.ListMultiRegionAccessPointsRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil }, } for p.Next() { if !fn(p.Page().(*ListMultiRegionAccessPointsOutput), !p.HasNextPage()) { break } } return p.Err() } const opListRegionalBuckets = "ListRegionalBuckets" // ListRegionalBucketsRequest generates a "aws/request.Request" representing the // client's request for the ListRegionalBuckets operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See ListRegionalBuckets for more information on using the ListRegionalBuckets // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the ListRegionalBucketsRequest method. // req, resp := client.ListRegionalBucketsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/ListRegionalBuckets func (c *S3Control) ListRegionalBucketsRequest(input *ListRegionalBucketsInput) (req *request.Request, output *ListRegionalBucketsOutput) { op := &request.Operation{ Name: opListRegionalBuckets, HTTPMethod: "GET", HTTPPath: "/v20180820/bucket", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "MaxResults", TruncationToken: "", }, } if input == nil { input = &ListRegionalBucketsInput{} } output = &ListRegionalBucketsOutput{} req = c.newRequest(op, input, output) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } // ListRegionalBuckets API operation for AWS S3 Control. // // Returns a list of all Outposts buckets in an Outpost that are owned by the // authenticated sender of the request. For more information, see Using Amazon // S3 on Outposts (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) // in the Amazon S3 User Guide. // // For an example of the request syntax for Amazon S3 on Outposts that uses // the S3 on Outposts endpoint hostname prefix and x-amz-outpost-id in your // request, see the Examples (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_ListRegionalBuckets.html#API_control_ListRegionalBuckets_Examples) // section. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation ListRegionalBuckets for usage and error information. // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/ListRegionalBuckets func (c *S3Control) ListRegionalBuckets(input *ListRegionalBucketsInput) (*ListRegionalBucketsOutput, error) { req, out := c.ListRegionalBucketsRequest(input) return out, req.Send() } // ListRegionalBucketsWithContext is the same as ListRegionalBuckets with the addition of // the ability to pass a context and additional request options. // // See ListRegionalBuckets for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) ListRegionalBucketsWithContext(ctx aws.Context, input *ListRegionalBucketsInput, opts ...request.Option) (*ListRegionalBucketsOutput, error) { req, out := c.ListRegionalBucketsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } // ListRegionalBucketsPages iterates over the pages of a ListRegionalBuckets operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListRegionalBuckets method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListRegionalBuckets operation. // pageNum := 0 // err := client.ListRegionalBucketsPages(params, // func(page *s3control.ListRegionalBucketsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *S3Control) ListRegionalBucketsPages(input *ListRegionalBucketsInput, fn func(*ListRegionalBucketsOutput, bool) bool) error { return c.ListRegionalBucketsPagesWithContext(aws.BackgroundContext(), input, fn) } // ListRegionalBucketsPagesWithContext same as ListRegionalBucketsPages except // it takes a Context and allows setting request options on the pages. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) ListRegionalBucketsPagesWithContext(ctx aws.Context, input *ListRegionalBucketsInput, fn func(*ListRegionalBucketsOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { var inCpy *ListRegionalBucketsInput if input != nil { tmp := *input inCpy = &tmp } req, _ := c.ListRegionalBucketsRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil }, } for p.Next() { if !fn(p.Page().(*ListRegionalBucketsOutput), !p.HasNextPage()) { break } } return p.Err() } const opListStorageLensConfigurations = "ListStorageLensConfigurations" // ListStorageLensConfigurationsRequest generates a "aws/request.Request" representing the // client's request for the ListStorageLensConfigurations operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See ListStorageLensConfigurations for more information on using the ListStorageLensConfigurations // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the ListStorageLensConfigurationsRequest method. // req, resp := client.ListStorageLensConfigurationsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/ListStorageLensConfigurations func (c *S3Control) ListStorageLensConfigurationsRequest(input *ListStorageLensConfigurationsInput) (req *request.Request, output *ListStorageLensConfigurationsOutput) { op := &request.Operation{ Name: opListStorageLensConfigurations, HTTPMethod: "GET", HTTPPath: "/v20180820/storagelens", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "", TruncationToken: "", }, } if input == nil { input = &ListStorageLensConfigurationsInput{} } output = &ListStorageLensConfigurationsOutput{} req = c.newRequest(op, input, output) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } // ListStorageLensConfigurations API operation for AWS S3 Control. // // Gets a list of Amazon S3 Storage Lens configurations. For more information // about S3 Storage Lens, see Assessing your storage activity and usage with // Amazon S3 Storage Lens (https://docs.aws.amazon.com/AmazonS3/latest/dev/storage_lens.html) // in the Amazon S3 User Guide. // // To use this action, you must have permission to perform the s3:ListStorageLensConfigurations // action. For more information, see Setting permissions to use Amazon S3 Storage // Lens (https://docs.aws.amazon.com/AmazonS3/latest/dev/storage_lens_iam_permissions.html) // in the Amazon S3 User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation ListStorageLensConfigurations for usage and error information. // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/ListStorageLensConfigurations func (c *S3Control) ListStorageLensConfigurations(input *ListStorageLensConfigurationsInput) (*ListStorageLensConfigurationsOutput, error) { req, out := c.ListStorageLensConfigurationsRequest(input) return out, req.Send() } // ListStorageLensConfigurationsWithContext is the same as ListStorageLensConfigurations with the addition of // the ability to pass a context and additional request options. // // See ListStorageLensConfigurations for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) ListStorageLensConfigurationsWithContext(ctx aws.Context, input *ListStorageLensConfigurationsInput, opts ...request.Option) (*ListStorageLensConfigurationsOutput, error) { req, out := c.ListStorageLensConfigurationsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } // ListStorageLensConfigurationsPages iterates over the pages of a ListStorageLensConfigurations operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListStorageLensConfigurations method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListStorageLensConfigurations operation. // pageNum := 0 // err := client.ListStorageLensConfigurationsPages(params, // func(page *s3control.ListStorageLensConfigurationsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *S3Control) ListStorageLensConfigurationsPages(input *ListStorageLensConfigurationsInput, fn func(*ListStorageLensConfigurationsOutput, bool) bool) error { return c.ListStorageLensConfigurationsPagesWithContext(aws.BackgroundContext(), input, fn) } // ListStorageLensConfigurationsPagesWithContext same as ListStorageLensConfigurationsPages except // it takes a Context and allows setting request options on the pages. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) ListStorageLensConfigurationsPagesWithContext(ctx aws.Context, input *ListStorageLensConfigurationsInput, fn func(*ListStorageLensConfigurationsOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { var inCpy *ListStorageLensConfigurationsInput if input != nil { tmp := *input inCpy = &tmp } req, _ := c.ListStorageLensConfigurationsRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil }, } for p.Next() { if !fn(p.Page().(*ListStorageLensConfigurationsOutput), !p.HasNextPage()) { break } } return p.Err() } const opPutAccessPointConfigurationForObjectLambda = "PutAccessPointConfigurationForObjectLambda" // PutAccessPointConfigurationForObjectLambdaRequest generates a "aws/request.Request" representing the // client's request for the PutAccessPointConfigurationForObjectLambda operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See PutAccessPointConfigurationForObjectLambda for more information on using the PutAccessPointConfigurationForObjectLambda // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the PutAccessPointConfigurationForObjectLambdaRequest method. // req, resp := client.PutAccessPointConfigurationForObjectLambdaRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/PutAccessPointConfigurationForObjectLambda func (c *S3Control) PutAccessPointConfigurationForObjectLambdaRequest(input *PutAccessPointConfigurationForObjectLambdaInput) (req *request.Request, output *PutAccessPointConfigurationForObjectLambdaOutput) { op := &request.Operation{ Name: opPutAccessPointConfigurationForObjectLambda, HTTPMethod: "PUT", HTTPPath: "/v20180820/accesspointforobjectlambda/{name}/configuration", } if input == nil { input = &PutAccessPointConfigurationForObjectLambdaInput{} } output = &PutAccessPointConfigurationForObjectLambdaOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } // PutAccessPointConfigurationForObjectLambda API operation for AWS S3 Control. // // Replaces configuration for an Object Lambda Access Point. // // The following actions are related to PutAccessPointConfigurationForObjectLambda: // // * GetAccessPointConfigurationForObjectLambda (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetAccessPointConfigurationForObjectLambda.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation PutAccessPointConfigurationForObjectLambda for usage and error information. // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/PutAccessPointConfigurationForObjectLambda func (c *S3Control) PutAccessPointConfigurationForObjectLambda(input *PutAccessPointConfigurationForObjectLambdaInput) (*PutAccessPointConfigurationForObjectLambdaOutput, error) { req, out := c.PutAccessPointConfigurationForObjectLambdaRequest(input) return out, req.Send() } // PutAccessPointConfigurationForObjectLambdaWithContext is the same as PutAccessPointConfigurationForObjectLambda with the addition of // the ability to pass a context and additional request options. // // See PutAccessPointConfigurationForObjectLambda for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) PutAccessPointConfigurationForObjectLambdaWithContext(ctx aws.Context, input *PutAccessPointConfigurationForObjectLambdaInput, opts ...request.Option) (*PutAccessPointConfigurationForObjectLambdaOutput, error) { req, out := c.PutAccessPointConfigurationForObjectLambdaRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opPutAccessPointPolicy = "PutAccessPointPolicy" // PutAccessPointPolicyRequest generates a "aws/request.Request" representing the // client's request for the PutAccessPointPolicy operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See PutAccessPointPolicy for more information on using the PutAccessPointPolicy // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the PutAccessPointPolicyRequest method. // req, resp := client.PutAccessPointPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/PutAccessPointPolicy func (c *S3Control) PutAccessPointPolicyRequest(input *PutAccessPointPolicyInput) (req *request.Request, output *PutAccessPointPolicyOutput) { op := &request.Operation{ Name: opPutAccessPointPolicy, HTTPMethod: "PUT", HTTPPath: "/v20180820/accesspoint/{name}/policy", } if input == nil { input = &PutAccessPointPolicyInput{} } output = &PutAccessPointPolicyOutput{} req = c.newRequest(op, input, output) // update account id or check if provided input for account id member matches // the account id present in ARN req.Handlers.Validate.PushFrontNamed(updateAccountIDWithARNHandler) req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } // PutAccessPointPolicy API operation for AWS S3 Control. // // Associates an access policy with the specified access point. Each access // point can have only one policy, so a request made to this API replaces any // existing policy associated with the specified access point. // // All Amazon S3 on Outposts REST API requests for this action require an additional // parameter of x-amz-outpost-id to be passed with the request. In addition, // you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. // For an example of the request syntax for Amazon S3 on Outposts that uses // the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived // by using the access point ARN, see the Examples (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_PutAccessPointPolicy.html#API_control_PutAccessPointPolicy_Examples) // section. // // The following actions are related to PutAccessPointPolicy: // // * GetAccessPointPolicy (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetAccessPointPolicy.html) // // * DeleteAccessPointPolicy (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DeleteAccessPointPolicy.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation PutAccessPointPolicy for usage and error information. // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/PutAccessPointPolicy func (c *S3Control) PutAccessPointPolicy(input *PutAccessPointPolicyInput) (*PutAccessPointPolicyOutput, error) { req, out := c.PutAccessPointPolicyRequest(input) return out, req.Send() } // PutAccessPointPolicyWithContext is the same as PutAccessPointPolicy with the addition of // the ability to pass a context and additional request options. // // See PutAccessPointPolicy for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) PutAccessPointPolicyWithContext(ctx aws.Context, input *PutAccessPointPolicyInput, opts ...request.Option) (*PutAccessPointPolicyOutput, error) { req, out := c.PutAccessPointPolicyRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opPutAccessPointPolicyForObjectLambda = "PutAccessPointPolicyForObjectLambda" // PutAccessPointPolicyForObjectLambdaRequest generates a "aws/request.Request" representing the // client's request for the PutAccessPointPolicyForObjectLambda operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See PutAccessPointPolicyForObjectLambda for more information on using the PutAccessPointPolicyForObjectLambda // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the PutAccessPointPolicyForObjectLambdaRequest method. // req, resp := client.PutAccessPointPolicyForObjectLambdaRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/PutAccessPointPolicyForObjectLambda func (c *S3Control) PutAccessPointPolicyForObjectLambdaRequest(input *PutAccessPointPolicyForObjectLambdaInput) (req *request.Request, output *PutAccessPointPolicyForObjectLambdaOutput) { op := &request.Operation{ Name: opPutAccessPointPolicyForObjectLambda, HTTPMethod: "PUT", HTTPPath: "/v20180820/accesspointforobjectlambda/{name}/policy", } if input == nil { input = &PutAccessPointPolicyForObjectLambdaInput{} } output = &PutAccessPointPolicyForObjectLambdaOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } // PutAccessPointPolicyForObjectLambda API operation for AWS S3 Control. // // Creates or replaces resource policy for an Object Lambda Access Point. For // an example policy, see Creating Object Lambda Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/olap-create.html#olap-create-cli) // in the Amazon S3 User Guide. // // The following actions are related to PutAccessPointPolicyForObjectLambda: // // * DeleteAccessPointPolicyForObjectLambda (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DeleteAccessPointPolicyForObjectLambda.html) // // * GetAccessPointPolicyForObjectLambda (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetAccessPointPolicyForObjectLambda.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation PutAccessPointPolicyForObjectLambda for usage and error information. // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/PutAccessPointPolicyForObjectLambda func (c *S3Control) PutAccessPointPolicyForObjectLambda(input *PutAccessPointPolicyForObjectLambdaInput) (*PutAccessPointPolicyForObjectLambdaOutput, error) { req, out := c.PutAccessPointPolicyForObjectLambdaRequest(input) return out, req.Send() } // PutAccessPointPolicyForObjectLambdaWithContext is the same as PutAccessPointPolicyForObjectLambda with the addition of // the ability to pass a context and additional request options. // // See PutAccessPointPolicyForObjectLambda for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) PutAccessPointPolicyForObjectLambdaWithContext(ctx aws.Context, input *PutAccessPointPolicyForObjectLambdaInput, opts ...request.Option) (*PutAccessPointPolicyForObjectLambdaOutput, error) { req, out := c.PutAccessPointPolicyForObjectLambdaRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opPutBucketLifecycleConfiguration = "PutBucketLifecycleConfiguration" // PutBucketLifecycleConfigurationRequest generates a "aws/request.Request" representing the // client's request for the PutBucketLifecycleConfiguration operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See PutBucketLifecycleConfiguration for more information on using the PutBucketLifecycleConfiguration // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the PutBucketLifecycleConfigurationRequest method. // req, resp := client.PutBucketLifecycleConfigurationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/PutBucketLifecycleConfiguration func (c *S3Control) PutBucketLifecycleConfigurationRequest(input *PutBucketLifecycleConfigurationInput) (req *request.Request, output *PutBucketLifecycleConfigurationOutput) { op := &request.Operation{ Name: opPutBucketLifecycleConfiguration, HTTPMethod: "PUT", HTTPPath: "/v20180820/bucket/{name}/lifecycleconfiguration", } if input == nil { input = &PutBucketLifecycleConfigurationInput{} } output = &PutBucketLifecycleConfigurationOutput{} req = c.newRequest(op, input, output) // update account id or check if provided input for account id member matches // the account id present in ARN req.Handlers.Validate.PushFrontNamed(updateAccountIDWithARNHandler) req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) req.Handlers.Build.PushBackNamed(request.NamedHandler{ Name: "contentMd5Handler", Fn: checksum.AddBodyContentMD5Handler, }) return } // PutBucketLifecycleConfiguration API operation for AWS S3 Control. // // // This action puts a lifecycle configuration to an Amazon S3 on Outposts bucket. // To put a lifecycle configuration to an S3 bucket, see PutBucketLifecycleConfiguration // (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html) // in the Amazon S3 API Reference. // // Creates a new lifecycle configuration for the S3 on Outposts bucket or replaces // an existing lifecycle configuration. Outposts buckets only support lifecycle // configurations that delete/expire objects after a certain period of time // and abort incomplete multipart uploads. // // All Amazon S3 on Outposts REST API requests for this action require an additional // parameter of x-amz-outpost-id to be passed with the request. In addition, // you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. // For an example of the request syntax for Amazon S3 on Outposts that uses // the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived // by using the access point ARN, see the Examples (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_PutBucketLifecycleConfiguration.html#API_control_PutBucketLifecycleConfiguration_Examples) // section. // // The following actions are related to PutBucketLifecycleConfiguration: // // * GetBucketLifecycleConfiguration (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetBucketLifecycleConfiguration.html) // // * DeleteBucketLifecycleConfiguration (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DeleteBucketLifecycleConfiguration.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation PutBucketLifecycleConfiguration for usage and error information. // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/PutBucketLifecycleConfiguration func (c *S3Control) PutBucketLifecycleConfiguration(input *PutBucketLifecycleConfigurationInput) (*PutBucketLifecycleConfigurationOutput, error) { req, out := c.PutBucketLifecycleConfigurationRequest(input) return out, req.Send() } // PutBucketLifecycleConfigurationWithContext is the same as PutBucketLifecycleConfiguration with the addition of // the ability to pass a context and additional request options. // // See PutBucketLifecycleConfiguration for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) PutBucketLifecycleConfigurationWithContext(ctx aws.Context, input *PutBucketLifecycleConfigurationInput, opts ...request.Option) (*PutBucketLifecycleConfigurationOutput, error) { req, out := c.PutBucketLifecycleConfigurationRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opPutBucketPolicy = "PutBucketPolicy" // PutBucketPolicyRequest generates a "aws/request.Request" representing the // client's request for the PutBucketPolicy operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See PutBucketPolicy for more information on using the PutBucketPolicy // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the PutBucketPolicyRequest method. // req, resp := client.PutBucketPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/PutBucketPolicy func (c *S3Control) PutBucketPolicyRequest(input *PutBucketPolicyInput) (req *request.Request, output *PutBucketPolicyOutput) { op := &request.Operation{ Name: opPutBucketPolicy, HTTPMethod: "PUT", HTTPPath: "/v20180820/bucket/{name}/policy", } if input == nil { input = &PutBucketPolicyInput{} } output = &PutBucketPolicyOutput{} req = c.newRequest(op, input, output) // update account id or check if provided input for account id member matches // the account id present in ARN req.Handlers.Validate.PushFrontNamed(updateAccountIDWithARNHandler) req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) req.Handlers.Build.PushBackNamed(request.NamedHandler{ Name: "contentMd5Handler", Fn: checksum.AddBodyContentMD5Handler, }) return } // PutBucketPolicy API operation for AWS S3 Control. // // // This action puts a bucket policy to an Amazon S3 on Outposts bucket. To put // a policy on an S3 bucket, see PutBucketPolicy (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketPolicy.html) // in the Amazon S3 API Reference. // // Applies an Amazon S3 bucket policy to an Outposts bucket. For more information, // see Using Amazon S3 on Outposts (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) // in the Amazon S3 User Guide. // // If you are using an identity other than the root user of the Amazon Web Services // account that owns the Outposts bucket, the calling identity must have the // PutBucketPolicy permissions on the specified Outposts bucket and belong to // the bucket owner's account in order to use this action. // // If you don't have PutBucketPolicy permissions, Amazon S3 returns a 403 Access // Denied error. If you have the correct permissions, but you're not using an // identity that belongs to the bucket owner's account, Amazon S3 returns a // 405 Method Not Allowed error. // // As a security precaution, the root user of the Amazon Web Services account // that owns a bucket can always use this action, even if the policy explicitly // denies the root user the ability to perform this action. // // For more information about bucket policies, see Using Bucket Policies and // User Policies (https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html). // // All Amazon S3 on Outposts REST API requests for this action require an additional // parameter of x-amz-outpost-id to be passed with the request. In addition, // you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. // For an example of the request syntax for Amazon S3 on Outposts that uses // the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived // by using the access point ARN, see the Examples (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_PutBucketPolicy.html#API_control_PutBucketPolicy_Examples) // section. // // The following actions are related to PutBucketPolicy: // // * GetBucketPolicy (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetBucketPolicy.html) // // * DeleteBucketPolicy (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DeleteBucketPolicy.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation PutBucketPolicy for usage and error information. // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/PutBucketPolicy func (c *S3Control) PutBucketPolicy(input *PutBucketPolicyInput) (*PutBucketPolicyOutput, error) { req, out := c.PutBucketPolicyRequest(input) return out, req.Send() } // PutBucketPolicyWithContext is the same as PutBucketPolicy with the addition of // the ability to pass a context and additional request options. // // See PutBucketPolicy for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) PutBucketPolicyWithContext(ctx aws.Context, input *PutBucketPolicyInput, opts ...request.Option) (*PutBucketPolicyOutput, error) { req, out := c.PutBucketPolicyRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opPutBucketReplication = "PutBucketReplication" // PutBucketReplicationRequest generates a "aws/request.Request" representing the // client's request for the PutBucketReplication operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See PutBucketReplication for more information on using the PutBucketReplication // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the PutBucketReplicationRequest method. // req, resp := client.PutBucketReplicationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/PutBucketReplication func (c *S3Control) PutBucketReplicationRequest(input *PutBucketReplicationInput) (req *request.Request, output *PutBucketReplicationOutput) { op := &request.Operation{ Name: opPutBucketReplication, HTTPMethod: "PUT", HTTPPath: "/v20180820/bucket/{name}/replication", } if input == nil { input = &PutBucketReplicationInput{} } output = &PutBucketReplicationOutput{} req = c.newRequest(op, input, output) // update account id or check if provided input for account id member matches // the account id present in ARN req.Handlers.Validate.PushFrontNamed(updateAccountIDWithARNHandler) req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) req.Handlers.Build.PushBackNamed(request.NamedHandler{ Name: "contentMd5Handler", Fn: checksum.AddBodyContentMD5Handler, }) return } // PutBucketReplication API operation for AWS S3 Control. // // // This action creates an Amazon S3 on Outposts bucket's replication configuration. // To create an S3 bucket's replication configuration, see PutBucketReplication // (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketReplication.html) // in the Amazon S3 API Reference. // // Creates a replication configuration or replaces an existing one. For information // about S3 replication on Outposts configuration, see Replicating objects for // S3 on Outposts (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3OutpostsReplication.html) // in the Amazon S3 User Guide. // // It can take a while to propagate PUT or DELETE requests for a replication // configuration to all S3 on Outposts systems. Therefore, the replication configuration // that's returned by a GET request soon after a PUT or DELETE request might // return a more recent result than what's on the Outpost. If an Outpost is // offline, the delay in updating the replication configuration on that Outpost // can be significant. // // Specify the replication configuration in the request body. In the replication // configuration, you provide the following information: // // * The name of the destination bucket or buckets where you want S3 on Outposts // to replicate objects // // * The Identity and Access Management (IAM) role that S3 on Outposts can // assume to replicate objects on your behalf // // * Other relevant information, such as replication rules // // A replication configuration must include at least one rule and can contain // a maximum of 100. Each rule identifies a subset of objects to replicate by // filtering the objects in the source Outposts bucket. To choose additional // subsets of objects to replicate, add a rule for each subset. // // To specify a subset of the objects in the source Outposts bucket to apply // a replication rule to, add the Filter element as a child of the Rule element. // You can filter objects based on an object key prefix, one or more object // tags, or both. When you add the Filter element in the configuration, you // must also add the following elements: DeleteMarkerReplication, Status, and // Priority. // // Using PutBucketReplication on Outposts requires that both the source and // destination buckets must have versioning enabled. For information about enabling // versioning on a bucket, see Managing S3 Versioning for your S3 on Outposts // bucket (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3OutpostsManagingVersioning.html). // // For information about S3 on Outposts replication failure reasons, see Replication // failure reasons (https://docs.aws.amazon.com/AmazonS3/latest/userguide/outposts-replication-eventbridge.html#outposts-replication-failure-codes) // in the Amazon S3 User Guide. // // Handling Replication of Encrypted Objects // // Outposts buckets are encrypted at all times. All the objects in the source // Outposts bucket are encrypted and can be replicated. Also, all the replicas // in the destination Outposts bucket are encrypted with the same encryption // key as the objects in the source Outposts bucket. // // Permissions // // To create a PutBucketReplication request, you must have s3-outposts:PutReplicationConfiguration // permissions for the bucket. The Outposts bucket owner has this permission // by default and can grant it to others. For more information about permissions, // see Setting up IAM with S3 on Outposts (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3OutpostsIAM.html) // and Managing access to S3 on Outposts buckets (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3OutpostsBucketPolicy.html). // // To perform this operation, the user or role must also have the iam:CreateRole // and iam:PassRole permissions. For more information, see Granting a user permissions // to pass a role to an Amazon Web Services service (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_passrole.html). // // All Amazon S3 on Outposts REST API requests for this action require an additional // parameter of x-amz-outpost-id to be passed with the request. In addition, // you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. // For an example of the request syntax for Amazon S3 on Outposts that uses // the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived // by using the access point ARN, see the Examples (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_PutBucketReplication.html#API_control_PutBucketReplication_Examples) // section. // // The following operations are related to PutBucketReplication: // // * GetBucketReplication (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetBucketReplication.html) // // * DeleteBucketReplication (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DeleteBucketReplication.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation PutBucketReplication for usage and error information. // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/PutBucketReplication func (c *S3Control) PutBucketReplication(input *PutBucketReplicationInput) (*PutBucketReplicationOutput, error) { req, out := c.PutBucketReplicationRequest(input) return out, req.Send() } // PutBucketReplicationWithContext is the same as PutBucketReplication with the addition of // the ability to pass a context and additional request options. // // See PutBucketReplication for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) PutBucketReplicationWithContext(ctx aws.Context, input *PutBucketReplicationInput, opts ...request.Option) (*PutBucketReplicationOutput, error) { req, out := c.PutBucketReplicationRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opPutBucketTagging = "PutBucketTagging" // PutBucketTaggingRequest generates a "aws/request.Request" representing the // client's request for the PutBucketTagging operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See PutBucketTagging for more information on using the PutBucketTagging // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the PutBucketTaggingRequest method. // req, resp := client.PutBucketTaggingRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/PutBucketTagging func (c *S3Control) PutBucketTaggingRequest(input *PutBucketTaggingInput) (req *request.Request, output *PutBucketTaggingOutput) { op := &request.Operation{ Name: opPutBucketTagging, HTTPMethod: "PUT", HTTPPath: "/v20180820/bucket/{name}/tagging", } if input == nil { input = &PutBucketTaggingInput{} } output = &PutBucketTaggingOutput{} req = c.newRequest(op, input, output) // update account id or check if provided input for account id member matches // the account id present in ARN req.Handlers.Validate.PushFrontNamed(updateAccountIDWithARNHandler) req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) req.Handlers.Build.PushBackNamed(request.NamedHandler{ Name: "contentMd5Handler", Fn: checksum.AddBodyContentMD5Handler, }) return } // PutBucketTagging API operation for AWS S3 Control. // // // This action puts tags on an Amazon S3 on Outposts bucket. To put tags on // an S3 bucket, see PutBucketTagging (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketTagging.html) // in the Amazon S3 API Reference. // // Sets the tags for an S3 on Outposts bucket. For more information, see Using // Amazon S3 on Outposts (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) // in the Amazon S3 User Guide. // // Use tags to organize your Amazon Web Services bill to reflect your own cost // structure. To do this, sign up to get your Amazon Web Services account bill // with tag key values included. Then, to see the cost of combined resources, // organize your billing information according to resources with the same tag // key values. For example, you can tag several resources with a specific application // name, and then organize your billing information to see the total cost of // that application across several services. For more information, see Cost // allocation and tagging (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html). // // Within a bucket, if you add a tag that has the same key as an existing tag, // the new value overwrites the old value. For more information, see Using cost // allocation in Amazon S3 bucket tags (https://docs.aws.amazon.com/AmazonS3/latest/userguide/CostAllocTagging.html). // // To use this action, you must have permissions to perform the s3-outposts:PutBucketTagging // action. The Outposts bucket owner has this permission by default and can // grant this permission to others. For more information about permissions, // see Permissions Related to Bucket Subresource Operations (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources) // and Managing access permissions to your Amazon S3 resources (https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html). // // PutBucketTagging has the following special errors: // // * Error code: InvalidTagError Description: The tag provided was not a // valid tag. This error can occur if the tag did not pass input validation. // For information about tag restrictions, see User-Defined Tag Restrictions // (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/allocation-tag-restrictions.html) // and Amazon Web Services-Generated Cost Allocation Tag Restrictions (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/aws-tag-restrictions.html). // // * Error code: MalformedXMLError Description: The XML provided does not // match the schema. // // * Error code: OperationAbortedError Description: A conflicting conditional // action is currently in progress against this resource. Try again. // // * Error code: InternalError Description: The service was unable to apply // the provided tag to the bucket. // // All Amazon S3 on Outposts REST API requests for this action require an additional // parameter of x-amz-outpost-id to be passed with the request. In addition, // you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. // For an example of the request syntax for Amazon S3 on Outposts that uses // the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived // by using the access point ARN, see the Examples (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_PutBucketTagging.html#API_control_PutBucketTagging_Examples) // section. // // The following actions are related to PutBucketTagging: // // * GetBucketTagging (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetBucketTagging.html) // // * DeleteBucketTagging (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DeleteBucketTagging.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation PutBucketTagging for usage and error information. // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/PutBucketTagging func (c *S3Control) PutBucketTagging(input *PutBucketTaggingInput) (*PutBucketTaggingOutput, error) { req, out := c.PutBucketTaggingRequest(input) return out, req.Send() } // PutBucketTaggingWithContext is the same as PutBucketTagging with the addition of // the ability to pass a context and additional request options. // // See PutBucketTagging for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) PutBucketTaggingWithContext(ctx aws.Context, input *PutBucketTaggingInput, opts ...request.Option) (*PutBucketTaggingOutput, error) { req, out := c.PutBucketTaggingRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opPutBucketVersioning = "PutBucketVersioning" // PutBucketVersioningRequest generates a "aws/request.Request" representing the // client's request for the PutBucketVersioning operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See PutBucketVersioning for more information on using the PutBucketVersioning // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the PutBucketVersioningRequest method. // req, resp := client.PutBucketVersioningRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/PutBucketVersioning func (c *S3Control) PutBucketVersioningRequest(input *PutBucketVersioningInput) (req *request.Request, output *PutBucketVersioningOutput) { op := &request.Operation{ Name: opPutBucketVersioning, HTTPMethod: "PUT", HTTPPath: "/v20180820/bucket/{name}/versioning", } if input == nil { input = &PutBucketVersioningInput{} } output = &PutBucketVersioningOutput{} req = c.newRequest(op, input, output) // update account id or check if provided input for account id member matches // the account id present in ARN req.Handlers.Validate.PushFrontNamed(updateAccountIDWithARNHandler) req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) req.Handlers.Build.PushBackNamed(request.NamedHandler{ Name: "contentMd5Handler", Fn: checksum.AddBodyContentMD5Handler, }) return } // PutBucketVersioning API operation for AWS S3 Control. // // // This operation sets the versioning state for S3 on Outposts buckets only. // To set the versioning state for an S3 bucket, see PutBucketVersioning (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketVersioning.html) // in the Amazon S3 API Reference. // // Sets the versioning state for an S3 on Outposts bucket. With S3 Versioning, // you can save multiple distinct copies of your objects and recover from unintended // user actions and application failures. // // You can set the versioning state to one of the following: // // * Enabled - Enables versioning for the objects in the bucket. All objects // added to the bucket receive a unique version ID. // // * Suspended - Suspends versioning for the objects in the bucket. All objects // added to the bucket receive the version ID null. // // If you've never set versioning on your bucket, it has no versioning state. // In that case, a GetBucketVersioning (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetBucketVersioning.html) // request does not return a versioning state value. // // When you enable S3 Versioning, for each object in your bucket, you have a // current version and zero or more noncurrent versions. You can configure your // bucket S3 Lifecycle rules to expire noncurrent versions after a specified // time period. For more information, see Creating and managing a lifecycle // configuration for your S3 on Outposts bucket (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3OutpostsLifecycleManaging.html) // in the Amazon S3 User Guide. // // If you have an object expiration lifecycle configuration in your non-versioned // bucket and you want to maintain the same permanent delete behavior when you // enable versioning, you must add a noncurrent expiration policy. The noncurrent // expiration lifecycle configuration will manage the deletes of the noncurrent // object versions in the version-enabled bucket. For more information, see // Versioning (https://docs.aws.amazon.com/AmazonS3/latest/userguide/Versioning.html) // in the Amazon S3 User Guide. // // All Amazon S3 on Outposts REST API requests for this action require an additional // parameter of x-amz-outpost-id to be passed with the request. In addition, // you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. // For an example of the request syntax for Amazon S3 on Outposts that uses // the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived // by using the access point ARN, see the Examples (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_PutBucketVersioning.html#API_control_PutBucketVersioning_Examples) // section. // // The following operations are related to PutBucketVersioning for S3 on Outposts. // // * GetBucketVersioning (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetBucketVersioning.html) // // * PutBucketLifecycleConfiguration (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_PutBucketLifecycleConfiguration.html) // // * GetBucketLifecycleConfiguration (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetBucketLifecycleConfiguration.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation PutBucketVersioning for usage and error information. // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/PutBucketVersioning func (c *S3Control) PutBucketVersioning(input *PutBucketVersioningInput) (*PutBucketVersioningOutput, error) { req, out := c.PutBucketVersioningRequest(input) return out, req.Send() } // PutBucketVersioningWithContext is the same as PutBucketVersioning with the addition of // the ability to pass a context and additional request options. // // See PutBucketVersioning for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) PutBucketVersioningWithContext(ctx aws.Context, input *PutBucketVersioningInput, opts ...request.Option) (*PutBucketVersioningOutput, error) { req, out := c.PutBucketVersioningRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opPutJobTagging = "PutJobTagging" // PutJobTaggingRequest generates a "aws/request.Request" representing the // client's request for the PutJobTagging operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See PutJobTagging for more information on using the PutJobTagging // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the PutJobTaggingRequest method. // req, resp := client.PutJobTaggingRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/PutJobTagging func (c *S3Control) PutJobTaggingRequest(input *PutJobTaggingInput) (req *request.Request, output *PutJobTaggingOutput) { op := &request.Operation{ Name: opPutJobTagging, HTTPMethod: "PUT", HTTPPath: "/v20180820/jobs/{id}/tagging", } if input == nil { input = &PutJobTaggingInput{} } output = &PutJobTaggingOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } // PutJobTagging API operation for AWS S3 Control. // // Sets the supplied tag-set on an S3 Batch Operations job. // // A tag is a key-value pair. You can associate S3 Batch Operations tags with // any job by sending a PUT request against the tagging subresource that is // associated with the job. To modify the existing tag set, you can either replace // the existing tag set entirely, or make changes within the existing tag set // by retrieving the existing tag set using GetJobTagging (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetJobTagging.html), // modify that tag set, and use this action to replace the tag set with the // one you modified. For more information, see Controlling access and labeling // jobs using tags (https://docs.aws.amazon.com/AmazonS3/latest/dev/batch-ops-managing-jobs.html#batch-ops-job-tags) // in the Amazon S3 User Guide. // // * If you send this request with an empty tag set, Amazon S3 deletes the // existing tag set on the Batch Operations job. If you use this method, // you are charged for a Tier 1 Request (PUT). For more information, see // Amazon S3 pricing (http://aws.amazon.com/s3/pricing/). // // * For deleting existing tags for your Batch Operations job, a DeleteJobTagging // (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DeleteJobTagging.html) // request is preferred because it achieves the same result without incurring // charges. // // * A few things to consider about using tags: Amazon S3 limits the maximum // number of tags to 50 tags per job. You can associate up to 50 tags with // a job as long as they have unique tag keys. A tag key can be up to 128 // Unicode characters in length, and tag values can be up to 256 Unicode // characters in length. The key and values are case sensitive. For tagging-related // restrictions related to characters and encodings, see User-Defined Tag // Restrictions (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/allocation-tag-restrictions.html) // in the Billing and Cost Management User Guide. // // To use the PutJobTagging operation, you must have permission to perform the // s3:PutJobTagging action. // // Related actions include: // // * CreateJob (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateJob.html) // // * GetJobTagging (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetJobTagging.html) // // * DeleteJobTagging (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DeleteJobTagging.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation PutJobTagging for usage and error information. // // Returned Error Codes: // * ErrCodeInternalServiceException "InternalServiceException" // // * ErrCodeTooManyRequestsException "TooManyRequestsException" // // * ErrCodeNotFoundException "NotFoundException" // // * ErrCodeTooManyTagsException "TooManyTagsException" // Amazon S3 throws this exception if you have too many tags in your tag set. // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/PutJobTagging func (c *S3Control) PutJobTagging(input *PutJobTaggingInput) (*PutJobTaggingOutput, error) { req, out := c.PutJobTaggingRequest(input) return out, req.Send() } // PutJobTaggingWithContext is the same as PutJobTagging with the addition of // the ability to pass a context and additional request options. // // See PutJobTagging for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) PutJobTaggingWithContext(ctx aws.Context, input *PutJobTaggingInput, opts ...request.Option) (*PutJobTaggingOutput, error) { req, out := c.PutJobTaggingRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opPutMultiRegionAccessPointPolicy = "PutMultiRegionAccessPointPolicy" // PutMultiRegionAccessPointPolicyRequest generates a "aws/request.Request" representing the // client's request for the PutMultiRegionAccessPointPolicy operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See PutMultiRegionAccessPointPolicy for more information on using the PutMultiRegionAccessPointPolicy // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the PutMultiRegionAccessPointPolicyRequest method. // req, resp := client.PutMultiRegionAccessPointPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/PutMultiRegionAccessPointPolicy func (c *S3Control) PutMultiRegionAccessPointPolicyRequest(input *PutMultiRegionAccessPointPolicyInput) (req *request.Request, output *PutMultiRegionAccessPointPolicyOutput) { op := &request.Operation{ Name: opPutMultiRegionAccessPointPolicy, HTTPMethod: "POST", HTTPPath: "/v20180820/async-requests/mrap/put-policy", } if input == nil { input = &PutMultiRegionAccessPointPolicyInput{} } output = &PutMultiRegionAccessPointPolicyOutput{} req = c.newRequest(op, input, output) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) req.Handlers.Build.PushBackNamed(request.NamedHandler{ Name: "contentMd5Handler", Fn: checksum.AddBodyContentMD5Handler, }) return } // PutMultiRegionAccessPointPolicy API operation for AWS S3 Control. // // Associates an access control policy with the specified Multi-Region Access // Point. Each Multi-Region Access Point can have only one policy, so a request // made to this action replaces any existing policy that is associated with // the specified Multi-Region Access Point. // // This action will always be routed to the US West (Oregon) Region. For more // information about the restrictions around managing Multi-Region Access Points, // see Managing Multi-Region Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/ManagingMultiRegionAccessPoints.html) // in the Amazon S3 User Guide. // // The following actions are related to PutMultiRegionAccessPointPolicy: // // * GetMultiRegionAccessPointPolicy (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetMultiRegionAccessPointPolicy.html) // // * GetMultiRegionAccessPointPolicyStatus (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetMultiRegionAccessPointPolicyStatus.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation PutMultiRegionAccessPointPolicy for usage and error information. // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/PutMultiRegionAccessPointPolicy func (c *S3Control) PutMultiRegionAccessPointPolicy(input *PutMultiRegionAccessPointPolicyInput) (*PutMultiRegionAccessPointPolicyOutput, error) { req, out := c.PutMultiRegionAccessPointPolicyRequest(input) return out, req.Send() } // PutMultiRegionAccessPointPolicyWithContext is the same as PutMultiRegionAccessPointPolicy with the addition of // the ability to pass a context and additional request options. // // See PutMultiRegionAccessPointPolicy for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) PutMultiRegionAccessPointPolicyWithContext(ctx aws.Context, input *PutMultiRegionAccessPointPolicyInput, opts ...request.Option) (*PutMultiRegionAccessPointPolicyOutput, error) { req, out := c.PutMultiRegionAccessPointPolicyRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opPutPublicAccessBlock = "PutPublicAccessBlock" // PutPublicAccessBlockRequest generates a "aws/request.Request" representing the // client's request for the PutPublicAccessBlock operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See PutPublicAccessBlock for more information on using the PutPublicAccessBlock // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the PutPublicAccessBlockRequest method. // req, resp := client.PutPublicAccessBlockRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/PutPublicAccessBlock func (c *S3Control) PutPublicAccessBlockRequest(input *PutPublicAccessBlockInput) (req *request.Request, output *PutPublicAccessBlockOutput) { op := &request.Operation{ Name: opPutPublicAccessBlock, HTTPMethod: "PUT", HTTPPath: "/v20180820/configuration/publicAccessBlock", } if input == nil { input = &PutPublicAccessBlockInput{} } output = &PutPublicAccessBlockOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } // PutPublicAccessBlock API operation for AWS S3 Control. // // Creates or modifies the PublicAccessBlock configuration for an Amazon Web // Services account. For this operation, users must have the s3:PutAccountPublicAccessBlock // permission. For more information, see Using Amazon S3 block public access // (https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html). // // Related actions include: // // * GetPublicAccessBlock (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetPublicAccessBlock.html) // // * DeletePublicAccessBlock (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DeletePublicAccessBlock.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation PutPublicAccessBlock for usage and error information. // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/PutPublicAccessBlock func (c *S3Control) PutPublicAccessBlock(input *PutPublicAccessBlockInput) (*PutPublicAccessBlockOutput, error) { req, out := c.PutPublicAccessBlockRequest(input) return out, req.Send() } // PutPublicAccessBlockWithContext is the same as PutPublicAccessBlock with the addition of // the ability to pass a context and additional request options. // // See PutPublicAccessBlock for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) PutPublicAccessBlockWithContext(ctx aws.Context, input *PutPublicAccessBlockInput, opts ...request.Option) (*PutPublicAccessBlockOutput, error) { req, out := c.PutPublicAccessBlockRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opPutStorageLensConfiguration = "PutStorageLensConfiguration" // PutStorageLensConfigurationRequest generates a "aws/request.Request" representing the // client's request for the PutStorageLensConfiguration operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See PutStorageLensConfiguration for more information on using the PutStorageLensConfiguration // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the PutStorageLensConfigurationRequest method. // req, resp := client.PutStorageLensConfigurationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/PutStorageLensConfiguration func (c *S3Control) PutStorageLensConfigurationRequest(input *PutStorageLensConfigurationInput) (req *request.Request, output *PutStorageLensConfigurationOutput) { op := &request.Operation{ Name: opPutStorageLensConfiguration, HTTPMethod: "PUT", HTTPPath: "/v20180820/storagelens/{storagelensid}", } if input == nil { input = &PutStorageLensConfigurationInput{} } output = &PutStorageLensConfigurationOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } // PutStorageLensConfiguration API operation for AWS S3 Control. // // Puts an Amazon S3 Storage Lens configuration. For more information about // S3 Storage Lens, see Working with Amazon S3 Storage Lens (https://docs.aws.amazon.com/AmazonS3/latest/dev/storage_lens.html) // in the Amazon S3 User Guide. For a complete list of S3 Storage Lens metrics, // see S3 Storage Lens metrics glossary (https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage_lens_metrics_glossary.html) // in the Amazon S3 User Guide. // // To use this action, you must have permission to perform the s3:PutStorageLensConfiguration // action. For more information, see Setting permissions to use Amazon S3 Storage // Lens (https://docs.aws.amazon.com/AmazonS3/latest/dev/storage_lens_iam_permissions.html) // in the Amazon S3 User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation PutStorageLensConfiguration for usage and error information. // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/PutStorageLensConfiguration func (c *S3Control) PutStorageLensConfiguration(input *PutStorageLensConfigurationInput) (*PutStorageLensConfigurationOutput, error) { req, out := c.PutStorageLensConfigurationRequest(input) return out, req.Send() } // PutStorageLensConfigurationWithContext is the same as PutStorageLensConfiguration with the addition of // the ability to pass a context and additional request options. // // See PutStorageLensConfiguration for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) PutStorageLensConfigurationWithContext(ctx aws.Context, input *PutStorageLensConfigurationInput, opts ...request.Option) (*PutStorageLensConfigurationOutput, error) { req, out := c.PutStorageLensConfigurationRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opPutStorageLensConfigurationTagging = "PutStorageLensConfigurationTagging" // PutStorageLensConfigurationTaggingRequest generates a "aws/request.Request" representing the // client's request for the PutStorageLensConfigurationTagging operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See PutStorageLensConfigurationTagging for more information on using the PutStorageLensConfigurationTagging // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the PutStorageLensConfigurationTaggingRequest method. // req, resp := client.PutStorageLensConfigurationTaggingRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/PutStorageLensConfigurationTagging func (c *S3Control) PutStorageLensConfigurationTaggingRequest(input *PutStorageLensConfigurationTaggingInput) (req *request.Request, output *PutStorageLensConfigurationTaggingOutput) { op := &request.Operation{ Name: opPutStorageLensConfigurationTagging, HTTPMethod: "PUT", HTTPPath: "/v20180820/storagelens/{storagelensid}/tagging", } if input == nil { input = &PutStorageLensConfigurationTaggingInput{} } output = &PutStorageLensConfigurationTaggingOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } // PutStorageLensConfigurationTagging API operation for AWS S3 Control. // // Put or replace tags on an existing Amazon S3 Storage Lens configuration. // For more information about S3 Storage Lens, see Assessing your storage activity // and usage with Amazon S3 Storage Lens (https://docs.aws.amazon.com/AmazonS3/latest/dev/storage_lens.html) // in the Amazon S3 User Guide. // // To use this action, you must have permission to perform the s3:PutStorageLensConfigurationTagging // action. For more information, see Setting permissions to use Amazon S3 Storage // Lens (https://docs.aws.amazon.com/AmazonS3/latest/dev/storage_lens_iam_permissions.html) // in the Amazon S3 User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation PutStorageLensConfigurationTagging for usage and error information. // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/PutStorageLensConfigurationTagging func (c *S3Control) PutStorageLensConfigurationTagging(input *PutStorageLensConfigurationTaggingInput) (*PutStorageLensConfigurationTaggingOutput, error) { req, out := c.PutStorageLensConfigurationTaggingRequest(input) return out, req.Send() } // PutStorageLensConfigurationTaggingWithContext is the same as PutStorageLensConfigurationTagging with the addition of // the ability to pass a context and additional request options. // // See PutStorageLensConfigurationTagging for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) PutStorageLensConfigurationTaggingWithContext(ctx aws.Context, input *PutStorageLensConfigurationTaggingInput, opts ...request.Option) (*PutStorageLensConfigurationTaggingOutput, error) { req, out := c.PutStorageLensConfigurationTaggingRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opSubmitMultiRegionAccessPointRoutes = "SubmitMultiRegionAccessPointRoutes" // SubmitMultiRegionAccessPointRoutesRequest generates a "aws/request.Request" representing the // client's request for the SubmitMultiRegionAccessPointRoutes operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See SubmitMultiRegionAccessPointRoutes for more information on using the SubmitMultiRegionAccessPointRoutes // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the SubmitMultiRegionAccessPointRoutesRequest method. // req, resp := client.SubmitMultiRegionAccessPointRoutesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/SubmitMultiRegionAccessPointRoutes func (c *S3Control) SubmitMultiRegionAccessPointRoutesRequest(input *SubmitMultiRegionAccessPointRoutesInput) (req *request.Request, output *SubmitMultiRegionAccessPointRoutesOutput) { op := &request.Operation{ Name: opSubmitMultiRegionAccessPointRoutes, HTTPMethod: "PATCH", HTTPPath: "/v20180820/mrap/instances/{mrap+}/routes", } if input == nil { input = &SubmitMultiRegionAccessPointRoutesInput{} } output = &SubmitMultiRegionAccessPointRoutesOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) req.Handlers.Build.PushBackNamed(request.NamedHandler{ Name: "contentMd5Handler", Fn: checksum.AddBodyContentMD5Handler, }) return } // SubmitMultiRegionAccessPointRoutes API operation for AWS S3 Control. // // Submits an updated route configuration for a Multi-Region Access Point. This // API operation updates the routing status for the specified Regions from active // to passive, or from passive to active. A value of 0 indicates a passive status, // which means that traffic won't be routed to the specified Region. A value // of 100 indicates an active status, which means that traffic will be routed // to the specified Region. At least one Region must be active at all times. // // When the routing configuration is changed, any in-progress operations (uploads, // copies, deletes, and so on) to formerly active Regions will continue to run // to their final completion state (success or failure). The routing configurations // of any Regions that aren’t specified remain unchanged. // // Updated routing configurations might not be immediately applied. It can take // up to 2 minutes for your changes to take effect. // // To submit routing control changes and failover requests, use the Amazon S3 // failover control infrastructure endpoints in these five Amazon Web Services // Regions: // // * us-east-1 // // * us-west-2 // // * ap-southeast-2 // // * ap-northeast-1 // // * eu-west-1 // // Your Amazon S3 bucket does not need to be in these five Regions. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation SubmitMultiRegionAccessPointRoutes for usage and error information. // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/SubmitMultiRegionAccessPointRoutes func (c *S3Control) SubmitMultiRegionAccessPointRoutes(input *SubmitMultiRegionAccessPointRoutesInput) (*SubmitMultiRegionAccessPointRoutesOutput, error) { req, out := c.SubmitMultiRegionAccessPointRoutesRequest(input) return out, req.Send() } // SubmitMultiRegionAccessPointRoutesWithContext is the same as SubmitMultiRegionAccessPointRoutes with the addition of // the ability to pass a context and additional request options. // // See SubmitMultiRegionAccessPointRoutes for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) SubmitMultiRegionAccessPointRoutesWithContext(ctx aws.Context, input *SubmitMultiRegionAccessPointRoutesInput, opts ...request.Option) (*SubmitMultiRegionAccessPointRoutesOutput, error) { req, out := c.SubmitMultiRegionAccessPointRoutesRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opUpdateJobPriority = "UpdateJobPriority" // UpdateJobPriorityRequest generates a "aws/request.Request" representing the // client's request for the UpdateJobPriority operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See UpdateJobPriority for more information on using the UpdateJobPriority // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the UpdateJobPriorityRequest method. // req, resp := client.UpdateJobPriorityRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/UpdateJobPriority func (c *S3Control) UpdateJobPriorityRequest(input *UpdateJobPriorityInput) (req *request.Request, output *UpdateJobPriorityOutput) { op := &request.Operation{ Name: opUpdateJobPriority, HTTPMethod: "POST", HTTPPath: "/v20180820/jobs/{id}/priority", } if input == nil { input = &UpdateJobPriorityInput{} } output = &UpdateJobPriorityOutput{} req = c.newRequest(op, input, output) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } // UpdateJobPriority API operation for AWS S3 Control. // // Updates an existing S3 Batch Operations job's priority. For more information, // see S3 Batch Operations (https://docs.aws.amazon.com/AmazonS3/latest/userguide/batch-ops.html) // in the Amazon S3 User Guide. // // Related actions include: // // * CreateJob (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateJob.html) // // * ListJobs (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_ListJobs.html) // // * DescribeJob (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DescribeJob.html) // // * UpdateJobStatus (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_UpdateJobStatus.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation UpdateJobPriority for usage and error information. // // Returned Error Codes: // * ErrCodeBadRequestException "BadRequestException" // // * ErrCodeTooManyRequestsException "TooManyRequestsException" // // * ErrCodeNotFoundException "NotFoundException" // // * ErrCodeInternalServiceException "InternalServiceException" // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/UpdateJobPriority func (c *S3Control) UpdateJobPriority(input *UpdateJobPriorityInput) (*UpdateJobPriorityOutput, error) { req, out := c.UpdateJobPriorityRequest(input) return out, req.Send() } // UpdateJobPriorityWithContext is the same as UpdateJobPriority with the addition of // the ability to pass a context and additional request options. // // See UpdateJobPriority for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) UpdateJobPriorityWithContext(ctx aws.Context, input *UpdateJobPriorityInput, opts ...request.Option) (*UpdateJobPriorityOutput, error) { req, out := c.UpdateJobPriorityRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opUpdateJobStatus = "UpdateJobStatus" // UpdateJobStatusRequest generates a "aws/request.Request" representing the // client's request for the UpdateJobStatus operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See UpdateJobStatus for more information on using the UpdateJobStatus // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the UpdateJobStatusRequest method. // req, resp := client.UpdateJobStatusRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/UpdateJobStatus func (c *S3Control) UpdateJobStatusRequest(input *UpdateJobStatusInput) (req *request.Request, output *UpdateJobStatusOutput) { op := &request.Operation{ Name: opUpdateJobStatus, HTTPMethod: "POST", HTTPPath: "/v20180820/jobs/{id}/status", } if input == nil { input = &UpdateJobStatusInput{} } output = &UpdateJobStatusOutput{} req = c.newRequest(op, input, output) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } // UpdateJobStatus API operation for AWS S3 Control. // // Updates the status for the specified job. Use this action to confirm that // you want to run a job or to cancel an existing job. For more information, // see S3 Batch Operations (https://docs.aws.amazon.com/AmazonS3/latest/userguide/batch-ops.html) // in the Amazon S3 User Guide. // // Related actions include: // // * CreateJob (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateJob.html) // // * ListJobs (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_ListJobs.html) // // * DescribeJob (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DescribeJob.html) // // * UpdateJobStatus (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_UpdateJobStatus.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's // API operation UpdateJobStatus for usage and error information. // // Returned Error Codes: // * ErrCodeBadRequestException "BadRequestException" // // * ErrCodeTooManyRequestsException "TooManyRequestsException" // // * ErrCodeNotFoundException "NotFoundException" // // * ErrCodeJobStatusException "JobStatusException" // // * ErrCodeInternalServiceException "InternalServiceException" // // See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/UpdateJobStatus func (c *S3Control) UpdateJobStatus(input *UpdateJobStatusInput) (*UpdateJobStatusOutput, error) { req, out := c.UpdateJobStatusRequest(input) return out, req.Send() } // UpdateJobStatusWithContext is the same as UpdateJobStatus with the addition of // the ability to pass a context and additional request options. // // See UpdateJobStatus for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *S3Control) UpdateJobStatusWithContext(ctx aws.Context, input *UpdateJobStatusInput, opts ...request.Option) (*UpdateJobStatusOutput, error) { req, out := c.UpdateJobStatusRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } // The container for abort incomplete multipart upload type AbortIncompleteMultipartUpload struct { _ struct{} `type:"structure"` // Specifies the number of days after which Amazon S3 aborts an incomplete multipart // upload to the Outposts bucket. DaysAfterInitiation *int64 `type:"integer"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AbortIncompleteMultipartUpload) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AbortIncompleteMultipartUpload) GoString() string { return s.String() } // SetDaysAfterInitiation sets the DaysAfterInitiation field's value. func (s *AbortIncompleteMultipartUpload) SetDaysAfterInitiation(v int64) *AbortIncompleteMultipartUpload { s.DaysAfterInitiation = &v return s } // A container for information about access control for replicas. // // This is not supported by Amazon S3 on Outposts buckets. type AccessControlTranslation struct { _ struct{} `type:"structure"` // Specifies the replica ownership. // // Owner is a required field Owner *string `type:"string" required:"true" enum:"OwnerOverride"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AccessControlTranslation) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AccessControlTranslation) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AccessControlTranslation) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AccessControlTranslation"} if s.Owner == nil { invalidParams.Add(request.NewErrParamRequired("Owner")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetOwner sets the Owner field's value. func (s *AccessControlTranslation) SetOwner(v string) *AccessControlTranslation { s.Owner = &v return s } // An access point used to access a bucket. type AccessPoint struct { _ struct{} `type:"structure"` // The ARN for the access point. AccessPointArn *string `min:"4" type:"string"` // The name or alias of the access point. Alias *string `type:"string"` // The name of the bucket associated with this access point. // // Bucket is a required field Bucket *string `min:"3" type:"string" required:"true"` // The Amazon Web Services account ID associated with the S3 bucket associated // with this access point. BucketAccountId *string `type:"string"` // The name of this access point. // // Name is a required field Name *string `min:"3" type:"string" required:"true"` // Indicates whether this access point allows access from the public internet. // If VpcConfiguration is specified for this access point, then NetworkOrigin // is VPC, and the access point doesn't allow access from the public internet. // Otherwise, NetworkOrigin is Internet, and the access point allows access // from the public internet, subject to the access point and bucket access policies. // // NetworkOrigin is a required field NetworkOrigin *string `type:"string" required:"true" enum:"NetworkOrigin"` // The virtual private cloud (VPC) configuration for this access point, if one // exists. // // This element is empty if this access point is an Amazon S3 on Outposts access // point that is used by other Amazon Web Services. VpcConfiguration *VpcConfiguration `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AccessPoint) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AccessPoint) GoString() string { return s.String() } // SetAccessPointArn sets the AccessPointArn field's value. func (s *AccessPoint) SetAccessPointArn(v string) *AccessPoint { s.AccessPointArn = &v return s } // SetAlias sets the Alias field's value. func (s *AccessPoint) SetAlias(v string) *AccessPoint { s.Alias = &v return s } // SetBucket sets the Bucket field's value. func (s *AccessPoint) SetBucket(v string) *AccessPoint { s.Bucket = &v return s } // SetBucketAccountId sets the BucketAccountId field's value. func (s *AccessPoint) SetBucketAccountId(v string) *AccessPoint { s.BucketAccountId = &v return s } // SetName sets the Name field's value. func (s *AccessPoint) SetName(v string) *AccessPoint { s.Name = &v return s } // SetNetworkOrigin sets the NetworkOrigin field's value. func (s *AccessPoint) SetNetworkOrigin(v string) *AccessPoint { s.NetworkOrigin = &v return s } // SetVpcConfiguration sets the VpcConfiguration field's value. func (s *AccessPoint) SetVpcConfiguration(v *VpcConfiguration) *AccessPoint { s.VpcConfiguration = v return s } // A container for the account-level Amazon S3 Storage Lens configuration. // // For more information about S3 Storage Lens, see Assessing your storage activity // and usage with S3 Storage Lens (https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage_lens.html) // in the Amazon S3 User Guide. For a complete list of S3 Storage Lens metrics, // see S3 Storage Lens metrics glossary (https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage_lens_metrics_glossary.html) // in the Amazon S3 User Guide. type AccountLevel struct { _ struct{} `type:"structure"` // A container for S3 Storage Lens activity metrics. ActivityMetrics *ActivityMetrics `type:"structure"` // A container for S3 Storage Lens advanced cost-optimization metrics. AdvancedCostOptimizationMetrics *AdvancedCostOptimizationMetrics `type:"structure"` // A container for S3 Storage Lens advanced data-protection metrics. AdvancedDataProtectionMetrics *AdvancedDataProtectionMetrics `type:"structure"` // A container for the S3 Storage Lens bucket-level configuration. // // BucketLevel is a required field BucketLevel *BucketLevel `type:"structure" required:"true"` // A container for detailed status code metrics. DetailedStatusCodesMetrics *DetailedStatusCodesMetrics `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AccountLevel) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AccountLevel) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AccountLevel) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AccountLevel"} if s.BucketLevel == nil { invalidParams.Add(request.NewErrParamRequired("BucketLevel")) } if s.BucketLevel != nil { if err := s.BucketLevel.Validate(); err != nil { invalidParams.AddNested("BucketLevel", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetActivityMetrics sets the ActivityMetrics field's value. func (s *AccountLevel) SetActivityMetrics(v *ActivityMetrics) *AccountLevel { s.ActivityMetrics = v return s } // SetAdvancedCostOptimizationMetrics sets the AdvancedCostOptimizationMetrics field's value. func (s *AccountLevel) SetAdvancedCostOptimizationMetrics(v *AdvancedCostOptimizationMetrics) *AccountLevel { s.AdvancedCostOptimizationMetrics = v return s } // SetAdvancedDataProtectionMetrics sets the AdvancedDataProtectionMetrics field's value. func (s *AccountLevel) SetAdvancedDataProtectionMetrics(v *AdvancedDataProtectionMetrics) *AccountLevel { s.AdvancedDataProtectionMetrics = v return s } // SetBucketLevel sets the BucketLevel field's value. func (s *AccountLevel) SetBucketLevel(v *BucketLevel) *AccountLevel { s.BucketLevel = v return s } // SetDetailedStatusCodesMetrics sets the DetailedStatusCodesMetrics field's value. func (s *AccountLevel) SetDetailedStatusCodesMetrics(v *DetailedStatusCodesMetrics) *AccountLevel { s.DetailedStatusCodesMetrics = v return s } // The container element for Amazon S3 Storage Lens activity metrics. Activity // metrics show details about how your storage is requested, such as requests // (for example, All requests, Get requests, Put requests), bytes uploaded or // downloaded, and errors. // // For more information about S3 Storage Lens, see Assessing your storage activity // and usage with S3 Storage Lens (https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage_lens.html) // in the Amazon S3 User Guide. For a complete list of S3 Storage Lens metrics, // see S3 Storage Lens metrics glossary (https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage_lens_metrics_glossary.html) // in the Amazon S3 User Guide. type ActivityMetrics struct { _ struct{} `type:"structure"` // A container that indicates whether activity metrics are enabled. IsEnabled *bool `type:"boolean"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ActivityMetrics) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ActivityMetrics) GoString() string { return s.String() } // SetIsEnabled sets the IsEnabled field's value. func (s *ActivityMetrics) SetIsEnabled(v bool) *ActivityMetrics { s.IsEnabled = &v return s } // The container element for Amazon S3 Storage Lens advanced cost-optimization // metrics. Advanced cost-optimization metrics provide insights that you can // use to manage and optimize your storage costs, for example, lifecycle rule // counts for transitions, expirations, and incomplete multipart uploads. // // For more information about S3 Storage Lens, see Assessing your storage activity // and usage with S3 Storage Lens (https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage_lens.html) // in the Amazon S3 User Guide. For a complete list of S3 Storage Lens metrics, // see S3 Storage Lens metrics glossary (https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage_lens_metrics_glossary.html) // in the Amazon S3 User Guide. type AdvancedCostOptimizationMetrics struct { _ struct{} `type:"structure"` // A container that indicates whether advanced cost-optimization metrics are // enabled. IsEnabled *bool `type:"boolean"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AdvancedCostOptimizationMetrics) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AdvancedCostOptimizationMetrics) GoString() string { return s.String() } // SetIsEnabled sets the IsEnabled field's value. func (s *AdvancedCostOptimizationMetrics) SetIsEnabled(v bool) *AdvancedCostOptimizationMetrics { s.IsEnabled = &v return s } // The container element for Amazon S3 Storage Lens advanced data-protection // metrics. Advanced data-protection metrics provide insights that you can use // to perform audits and protect your data, for example replication rule counts // within and across Regions. // // For more information about S3 Storage Lens, see Assessing your storage activity // and usage with S3 Storage Lens (https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage_lens.html) // in the Amazon S3 User Guide. For a complete list of S3 Storage Lens metrics, // see S3 Storage Lens metrics glossary (https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage_lens_metrics_glossary.html) // in the Amazon S3 User Guide. type AdvancedDataProtectionMetrics struct { _ struct{} `type:"structure"` // A container that indicates whether advanced data-protection metrics are enabled. IsEnabled *bool `type:"boolean"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AdvancedDataProtectionMetrics) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AdvancedDataProtectionMetrics) GoString() string { return s.String() } // SetIsEnabled sets the IsEnabled field's value. func (s *AdvancedDataProtectionMetrics) SetIsEnabled(v bool) *AdvancedDataProtectionMetrics { s.IsEnabled = &v return s } // Error details for the failed asynchronous operation. type AsyncErrorDetails struct { _ struct{} `type:"structure"` // A string that uniquely identifies the error condition. Code *string `type:"string"` // A generic description of the error condition in English. Message *string `type:"string"` // The ID of the request associated with the error. RequestId *string `type:"string"` // The identifier of the resource associated with the error. Resource *string `type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AsyncErrorDetails) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AsyncErrorDetails) GoString() string { return s.String() } // SetCode sets the Code field's value. func (s *AsyncErrorDetails) SetCode(v string) *AsyncErrorDetails { s.Code = &v return s } // SetMessage sets the Message field's value. func (s *AsyncErrorDetails) SetMessage(v string) *AsyncErrorDetails { s.Message = &v return s } // SetRequestId sets the RequestId field's value. func (s *AsyncErrorDetails) SetRequestId(v string) *AsyncErrorDetails { s.RequestId = &v return s } // SetResource sets the Resource field's value. func (s *AsyncErrorDetails) SetResource(v string) *AsyncErrorDetails { s.Resource = &v return s } // A container for the information about an asynchronous operation. type AsyncOperation struct { _ struct{} `type:"structure"` // The time that the request was sent to the service. CreationTime *time.Time `type:"timestamp"` // The specific operation for the asynchronous request. Operation *string `type:"string" enum:"AsyncOperationName"` // The parameters associated with the request. RequestParameters *AsyncRequestParameters `type:"structure"` // The current status of the request. RequestStatus *string `type:"string"` // The request token associated with the request. RequestTokenARN *string `min:"1" type:"string"` // The details of the response. ResponseDetails *AsyncResponseDetails `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AsyncOperation) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AsyncOperation) GoString() string { return s.String() } // SetCreationTime sets the CreationTime field's value. func (s *AsyncOperation) SetCreationTime(v time.Time) *AsyncOperation { s.CreationTime = &v return s } // SetOperation sets the Operation field's value. func (s *AsyncOperation) SetOperation(v string) *AsyncOperation { s.Operation = &v return s } // SetRequestParameters sets the RequestParameters field's value. func (s *AsyncOperation) SetRequestParameters(v *AsyncRequestParameters) *AsyncOperation { s.RequestParameters = v return s } // SetRequestStatus sets the RequestStatus field's value. func (s *AsyncOperation) SetRequestStatus(v string) *AsyncOperation { s.RequestStatus = &v return s } // SetRequestTokenARN sets the RequestTokenARN field's value. func (s *AsyncOperation) SetRequestTokenARN(v string) *AsyncOperation { s.RequestTokenARN = &v return s } // SetResponseDetails sets the ResponseDetails field's value. func (s *AsyncOperation) SetResponseDetails(v *AsyncResponseDetails) *AsyncOperation { s.ResponseDetails = v return s } // A container for the request parameters associated with an asynchronous request. type AsyncRequestParameters struct { _ struct{} `type:"structure"` // A container of the parameters for a CreateMultiRegionAccessPoint (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateMultiRegionAccessPoint.html) // request. CreateMultiRegionAccessPointRequest *CreateMultiRegionAccessPointInput_ `type:"structure"` // A container of the parameters for a DeleteMultiRegionAccessPoint (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DeleteMultiRegionAccessPoint.html) // request. DeleteMultiRegionAccessPointRequest *DeleteMultiRegionAccessPointInput_ `type:"structure"` // A container of the parameters for a PutMultiRegionAccessPoint (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_PutMultiRegionAccessPoint.html) // request. PutMultiRegionAccessPointPolicyRequest *PutMultiRegionAccessPointPolicyInput_ `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AsyncRequestParameters) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AsyncRequestParameters) GoString() string { return s.String() } // SetCreateMultiRegionAccessPointRequest sets the CreateMultiRegionAccessPointRequest field's value. func (s *AsyncRequestParameters) SetCreateMultiRegionAccessPointRequest(v *CreateMultiRegionAccessPointInput_) *AsyncRequestParameters { s.CreateMultiRegionAccessPointRequest = v return s } // SetDeleteMultiRegionAccessPointRequest sets the DeleteMultiRegionAccessPointRequest field's value. func (s *AsyncRequestParameters) SetDeleteMultiRegionAccessPointRequest(v *DeleteMultiRegionAccessPointInput_) *AsyncRequestParameters { s.DeleteMultiRegionAccessPointRequest = v return s } // SetPutMultiRegionAccessPointPolicyRequest sets the PutMultiRegionAccessPointPolicyRequest field's value. func (s *AsyncRequestParameters) SetPutMultiRegionAccessPointPolicyRequest(v *PutMultiRegionAccessPointPolicyInput_) *AsyncRequestParameters { s.PutMultiRegionAccessPointPolicyRequest = v return s } // A container for the response details that are returned when querying about // an asynchronous request. type AsyncResponseDetails struct { _ struct{} `type:"structure"` // Error details for an asynchronous request. ErrorDetails *AsyncErrorDetails `type:"structure"` // The details for the Multi-Region Access Point. MultiRegionAccessPointDetails *MultiRegionAccessPointsAsyncResponse `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AsyncResponseDetails) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AsyncResponseDetails) GoString() string { return s.String() } // SetErrorDetails sets the ErrorDetails field's value. func (s *AsyncResponseDetails) SetErrorDetails(v *AsyncErrorDetails) *AsyncResponseDetails { s.ErrorDetails = v return s } // SetMultiRegionAccessPointDetails sets the MultiRegionAccessPointDetails field's value. func (s *AsyncResponseDetails) SetMultiRegionAccessPointDetails(v *MultiRegionAccessPointsAsyncResponse) *AsyncResponseDetails { s.MultiRegionAccessPointDetails = v return s } // Lambda function used to transform objects through an Object Lambda Access // Point. type AwsLambdaTransformation struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the Lambda function. // // FunctionArn is a required field FunctionArn *string `min:"1" type:"string" required:"true"` // Additional JSON that provides supplemental data to the Lambda function used // to transform objects. FunctionPayload *string `type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AwsLambdaTransformation) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AwsLambdaTransformation) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AwsLambdaTransformation) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AwsLambdaTransformation"} if s.FunctionArn == nil { invalidParams.Add(request.NewErrParamRequired("FunctionArn")) } if s.FunctionArn != nil && len(*s.FunctionArn) < 1 { invalidParams.Add(request.NewErrParamMinLen("FunctionArn", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetFunctionArn sets the FunctionArn field's value. func (s *AwsLambdaTransformation) SetFunctionArn(v string) *AwsLambdaTransformation { s.FunctionArn = &v return s } // SetFunctionPayload sets the FunctionPayload field's value. func (s *AwsLambdaTransformation) SetFunctionPayload(v string) *AwsLambdaTransformation { s.FunctionPayload = &v return s } // A container for the bucket-level configuration for Amazon S3 Storage Lens. // // For more information about S3 Storage Lens, see Assessing your storage activity // and usage with S3 Storage Lens (https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage_lens.html) // in the Amazon S3 User Guide. type BucketLevel struct { _ struct{} `type:"structure"` // A container for the bucket-level activity metrics for S3 Storage Lens. ActivityMetrics *ActivityMetrics `type:"structure"` // A container for bucket-level advanced cost-optimization metrics for S3 Storage // Lens. AdvancedCostOptimizationMetrics *AdvancedCostOptimizationMetrics `type:"structure"` // A container for bucket-level advanced data-protection metrics for S3 Storage // Lens. AdvancedDataProtectionMetrics *AdvancedDataProtectionMetrics `type:"structure"` // A container for bucket-level detailed status code metrics for S3 Storage // Lens. DetailedStatusCodesMetrics *DetailedStatusCodesMetrics `type:"structure"` // A container for the prefix-level metrics for S3 Storage Lens. PrefixLevel *PrefixLevel `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s BucketLevel) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s BucketLevel) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *BucketLevel) Validate() error { invalidParams := request.ErrInvalidParams{Context: "BucketLevel"} if s.PrefixLevel != nil { if err := s.PrefixLevel.Validate(); err != nil { invalidParams.AddNested("PrefixLevel", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetActivityMetrics sets the ActivityMetrics field's value. func (s *BucketLevel) SetActivityMetrics(v *ActivityMetrics) *BucketLevel { s.ActivityMetrics = v return s } // SetAdvancedCostOptimizationMetrics sets the AdvancedCostOptimizationMetrics field's value. func (s *BucketLevel) SetAdvancedCostOptimizationMetrics(v *AdvancedCostOptimizationMetrics) *BucketLevel { s.AdvancedCostOptimizationMetrics = v return s } // SetAdvancedDataProtectionMetrics sets the AdvancedDataProtectionMetrics field's value. func (s *BucketLevel) SetAdvancedDataProtectionMetrics(v *AdvancedDataProtectionMetrics) *BucketLevel { s.AdvancedDataProtectionMetrics = v return s } // SetDetailedStatusCodesMetrics sets the DetailedStatusCodesMetrics field's value. func (s *BucketLevel) SetDetailedStatusCodesMetrics(v *DetailedStatusCodesMetrics) *BucketLevel { s.DetailedStatusCodesMetrics = v return s } // SetPrefixLevel sets the PrefixLevel field's value. func (s *BucketLevel) SetPrefixLevel(v *PrefixLevel) *BucketLevel { s.PrefixLevel = v return s } // A container for enabling Amazon CloudWatch publishing for S3 Storage Lens // metrics. // // For more information about publishing S3 Storage Lens metrics to CloudWatch, // see Monitor S3 Storage Lens metrics in CloudWatch (https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage_lens_view_metrics_cloudwatch.html) // in the Amazon S3 User Guide. type CloudWatchMetrics struct { _ struct{} `type:"structure"` // A container that indicates whether CloudWatch publishing for S3 Storage Lens // metrics is enabled. A value of true indicates that CloudWatch publishing // for S3 Storage Lens metrics is enabled. // // IsEnabled is a required field IsEnabled *bool `type:"boolean" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CloudWatchMetrics) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CloudWatchMetrics) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CloudWatchMetrics) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CloudWatchMetrics"} if s.IsEnabled == nil { invalidParams.Add(request.NewErrParamRequired("IsEnabled")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetIsEnabled sets the IsEnabled field's value. func (s *CloudWatchMetrics) SetIsEnabled(v bool) *CloudWatchMetrics { s.IsEnabled = &v return s } type CreateAccessPointForObjectLambdaInput struct { _ struct{} `locationName:"CreateAccessPointForObjectLambdaRequest" type:"structure" xmlURI:"http://awss3control.amazonaws.com/doc/2018-08-20/"` // The Amazon Web Services account ID for owner of the specified Object Lambda // Access Point. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // Object Lambda Access Point configuration as a JSON document. // // Configuration is a required field Configuration *ObjectLambdaConfiguration `type:"structure" required:"true"` // The name you want to assign to this Object Lambda Access Point. // // Name is a required field Name *string `location:"uri" locationName:"name" min:"3" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreateAccessPointForObjectLambdaInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreateAccessPointForObjectLambdaInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateAccessPointForObjectLambdaInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateAccessPointForObjectLambdaInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.Configuration == nil { invalidParams.Add(request.NewErrParamRequired("Configuration")) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 3 { invalidParams.Add(request.NewErrParamMinLen("Name", 3)) } if s.Configuration != nil { if err := s.Configuration.Validate(); err != nil { invalidParams.AddNested("Configuration", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *CreateAccessPointForObjectLambdaInput) SetAccountId(v string) *CreateAccessPointForObjectLambdaInput { s.AccountId = &v return s } // SetConfiguration sets the Configuration field's value. func (s *CreateAccessPointForObjectLambdaInput) SetConfiguration(v *ObjectLambdaConfiguration) *CreateAccessPointForObjectLambdaInput { s.Configuration = v return s } // SetName sets the Name field's value. func (s *CreateAccessPointForObjectLambdaInput) SetName(v string) *CreateAccessPointForObjectLambdaInput { s.Name = &v return s } func (s *CreateAccessPointForObjectLambdaInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } type CreateAccessPointForObjectLambdaOutput struct { _ struct{} `type:"structure"` // The alias of the Object Lambda Access Point. Alias *ObjectLambdaAccessPointAlias `type:"structure"` // Specifies the ARN for the Object Lambda Access Point. ObjectLambdaAccessPointArn *string `min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreateAccessPointForObjectLambdaOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreateAccessPointForObjectLambdaOutput) GoString() string { return s.String() } // SetAlias sets the Alias field's value. func (s *CreateAccessPointForObjectLambdaOutput) SetAlias(v *ObjectLambdaAccessPointAlias) *CreateAccessPointForObjectLambdaOutput { s.Alias = v return s } // SetObjectLambdaAccessPointArn sets the ObjectLambdaAccessPointArn field's value. func (s *CreateAccessPointForObjectLambdaOutput) SetObjectLambdaAccessPointArn(v string) *CreateAccessPointForObjectLambdaOutput { s.ObjectLambdaAccessPointArn = &v return s } type CreateAccessPointInput struct { _ struct{} `locationName:"CreateAccessPointRequest" type:"structure" xmlURI:"http://awss3control.amazonaws.com/doc/2018-08-20/"` // The Amazon Web Services account ID for the account that owns the specified // access point. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // The name of the bucket that you want to associate this access point with. // // For using this parameter with Amazon S3 on Outposts with the REST API, you // must specify the name and the x-amz-outpost-id as well. // // For using this parameter with S3 on Outposts with the Amazon Web Services // SDK and CLI, you must specify the ARN of the bucket accessed in the format // arn:aws:s3-outposts:::outpost//bucket/. // For example, to access the bucket reports through Outpost my-outpost owned // by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/bucket/reports. // The value must be URL encoded. // // Bucket is a required field Bucket *string `min:"3" type:"string" required:"true"` // The Amazon Web Services account ID associated with the S3 bucket associated // with this access point. BucketAccountId *string `type:"string"` // The name you want to assign to this access point. // // Name is a required field Name *string `location:"uri" locationName:"name" min:"3" type:"string" required:"true"` // The PublicAccessBlock configuration that you want to apply to the access // point. PublicAccessBlockConfiguration *PublicAccessBlockConfiguration `type:"structure"` // If you include this field, Amazon S3 restricts access to this access point // to requests from the specified virtual private cloud (VPC). // // This is required for creating an access point for Amazon S3 on Outposts buckets. VpcConfiguration *VpcConfiguration `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreateAccessPointInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreateAccessPointInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateAccessPointInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateAccessPointInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if s.Bucket != nil && len(*s.Bucket) < 3 { invalidParams.Add(request.NewErrParamMinLen("Bucket", 3)) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 3 { invalidParams.Add(request.NewErrParamMinLen("Name", 3)) } if s.VpcConfiguration != nil { if err := s.VpcConfiguration.Validate(); err != nil { invalidParams.AddNested("VpcConfiguration", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *CreateAccessPointInput) SetAccountId(v string) *CreateAccessPointInput { s.AccountId = &v return s } // SetBucket sets the Bucket field's value. func (s *CreateAccessPointInput) SetBucket(v string) *CreateAccessPointInput { s.Bucket = &v return s } // SetBucketAccountId sets the BucketAccountId field's value. func (s *CreateAccessPointInput) SetBucketAccountId(v string) *CreateAccessPointInput { s.BucketAccountId = &v return s } // SetName sets the Name field's value. func (s *CreateAccessPointInput) SetName(v string) *CreateAccessPointInput { s.Name = &v return s } // SetPublicAccessBlockConfiguration sets the PublicAccessBlockConfiguration field's value. func (s *CreateAccessPointInput) SetPublicAccessBlockConfiguration(v *PublicAccessBlockConfiguration) *CreateAccessPointInput { s.PublicAccessBlockConfiguration = v return s } // SetVpcConfiguration sets the VpcConfiguration field's value. func (s *CreateAccessPointInput) SetVpcConfiguration(v *VpcConfiguration) *CreateAccessPointInput { s.VpcConfiguration = v return s } func (s *CreateAccessPointInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } func (s *CreateAccessPointInput) getEndpointARN() (arn.Resource, error) { if s.Bucket == nil { return nil, fmt.Errorf("member Bucket is nil") } return parseEndpointARN(*s.Bucket) } func (s *CreateAccessPointInput) hasEndpointARN() bool { if s.Bucket == nil { return false } return arn.IsARN(*s.Bucket) } // updateArnableField updates the value of the input field that // takes an ARN as an input. This method is useful to backfill // the parsed resource name from ARN into the input member. // It returns a pointer to a modified copy of input and an error. // Note that original input is not modified. func (s CreateAccessPointInput) updateArnableField(v string) (interface{}, error) { if s.Bucket == nil { return nil, fmt.Errorf("member Bucket is nil") } s.Bucket = aws.String(v) return &s, nil } // updateAccountID returns a pointer to a modified copy of input, // if account id is not provided, we update the account id in modified input // if account id is provided, but doesn't match with the one in ARN, we throw an error // if account id is not updated, we return nil. Note that original input is not modified. func (s CreateAccessPointInput) updateAccountID(accountId string) (interface{}, error) { if s.AccountId == nil { s.AccountId = aws.String(accountId) return &s, nil } else if *s.AccountId != accountId { return &s, fmt.Errorf("Account ID mismatch, the Account ID cannot be specified in an ARN and in the accountId field") } return nil, nil } // updateBucketAccountId returns a pointer to a modified copy of input, // if account id is not provided, we update the account id in modified input // if account id is provided, but doesn't match with the one in ARN, we throw an error // if account id is not updated, we return nil. Note that original input is not modified. func (s CreateAccessPointInput) updateBucketAccountId(accountId string) (interface{}, error) { if s.BucketAccountId == nil { s.BucketAccountId = aws.String(accountId) return &s, nil } else if *s.BucketAccountId != accountId { return &s, fmt.Errorf("Account ID mismatch, the Account ID cannot be specified in an ARN and in the accountId field") } return nil, nil } type CreateAccessPointOutput struct { _ struct{} `type:"structure"` // The ARN of the access point. // // This is only supported by Amazon S3 on Outposts. AccessPointArn *string `min:"4" type:"string"` // The name or alias of the access point. Alias *string `type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreateAccessPointOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreateAccessPointOutput) GoString() string { return s.String() } // SetAccessPointArn sets the AccessPointArn field's value. func (s *CreateAccessPointOutput) SetAccessPointArn(v string) *CreateAccessPointOutput { s.AccessPointArn = &v return s } // SetAlias sets the Alias field's value. func (s *CreateAccessPointOutput) SetAlias(v string) *CreateAccessPointOutput { s.Alias = &v return s } // The container for the bucket configuration. // // This is not supported by Amazon S3 on Outposts buckets. type CreateBucketConfiguration struct { _ struct{} `type:"structure"` // Specifies the Region where the bucket will be created. If you are creating // a bucket on the US East (N. Virginia) Region (us-east-1), you do not need // to specify the location. // // This is not supported by Amazon S3 on Outposts buckets. LocationConstraint *string `type:"string" enum:"BucketLocationConstraint"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreateBucketConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreateBucketConfiguration) GoString() string { return s.String() } // SetLocationConstraint sets the LocationConstraint field's value. func (s *CreateBucketConfiguration) SetLocationConstraint(v string) *CreateBucketConfiguration { s.LocationConstraint = &v return s } type CreateBucketInput struct { _ struct{} `locationName:"CreateBucketRequest" type:"structure" payload:"CreateBucketConfiguration"` // The canned ACL to apply to the bucket. // // This is not supported by Amazon S3 on Outposts buckets. ACL *string `location:"header" locationName:"x-amz-acl" type:"string" enum:"BucketCannedACL"` // The name of the bucket. // // Bucket is a required field Bucket *string `location:"uri" locationName:"name" min:"3" type:"string" required:"true"` // The configuration information for the bucket. // // This is not supported by Amazon S3 on Outposts buckets. CreateBucketConfiguration *CreateBucketConfiguration `locationName:"CreateBucketConfiguration" type:"structure" xmlURI:"http://awss3control.amazonaws.com/doc/2018-08-20/"` // Allows grantee the read, write, read ACP, and write ACP permissions on the // bucket. // // This is not supported by Amazon S3 on Outposts buckets. GrantFullControl *string `location:"header" locationName:"x-amz-grant-full-control" type:"string"` // Allows grantee to list the objects in the bucket. // // This is not supported by Amazon S3 on Outposts buckets. GrantRead *string `location:"header" locationName:"x-amz-grant-read" type:"string"` // Allows grantee to read the bucket ACL. // // This is not supported by Amazon S3 on Outposts buckets. GrantReadACP *string `location:"header" locationName:"x-amz-grant-read-acp" type:"string"` // Allows grantee to create, overwrite, and delete any object in the bucket. // // This is not supported by Amazon S3 on Outposts buckets. GrantWrite *string `location:"header" locationName:"x-amz-grant-write" type:"string"` // Allows grantee to write the ACL for the applicable bucket. // // This is not supported by Amazon S3 on Outposts buckets. GrantWriteACP *string `location:"header" locationName:"x-amz-grant-write-acp" type:"string"` // Specifies whether you want S3 Object Lock to be enabled for the new bucket. // // This is not supported by Amazon S3 on Outposts buckets. ObjectLockEnabledForBucket *bool `location:"header" locationName:"x-amz-bucket-object-lock-enabled" type:"boolean"` // The ID of the Outposts where the bucket is being created. // // This ID is required by Amazon S3 on Outposts buckets. OutpostId *string `location:"header" locationName:"x-amz-outpost-id" min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreateBucketInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreateBucketInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateBucketInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateBucketInput"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if s.Bucket != nil && len(*s.Bucket) < 3 { invalidParams.Add(request.NewErrParamMinLen("Bucket", 3)) } if s.OutpostId != nil && len(*s.OutpostId) < 1 { invalidParams.Add(request.NewErrParamMinLen("OutpostId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetACL sets the ACL field's value. func (s *CreateBucketInput) SetACL(v string) *CreateBucketInput { s.ACL = &v return s } // SetBucket sets the Bucket field's value. func (s *CreateBucketInput) SetBucket(v string) *CreateBucketInput { s.Bucket = &v return s } // SetCreateBucketConfiguration sets the CreateBucketConfiguration field's value. func (s *CreateBucketInput) SetCreateBucketConfiguration(v *CreateBucketConfiguration) *CreateBucketInput { s.CreateBucketConfiguration = v return s } // SetGrantFullControl sets the GrantFullControl field's value. func (s *CreateBucketInput) SetGrantFullControl(v string) *CreateBucketInput { s.GrantFullControl = &v return s } // SetGrantRead sets the GrantRead field's value. func (s *CreateBucketInput) SetGrantRead(v string) *CreateBucketInput { s.GrantRead = &v return s } // SetGrantReadACP sets the GrantReadACP field's value. func (s *CreateBucketInput) SetGrantReadACP(v string) *CreateBucketInput { s.GrantReadACP = &v return s } // SetGrantWrite sets the GrantWrite field's value. func (s *CreateBucketInput) SetGrantWrite(v string) *CreateBucketInput { s.GrantWrite = &v return s } // SetGrantWriteACP sets the GrantWriteACP field's value. func (s *CreateBucketInput) SetGrantWriteACP(v string) *CreateBucketInput { s.GrantWriteACP = &v return s } // SetObjectLockEnabledForBucket sets the ObjectLockEnabledForBucket field's value. func (s *CreateBucketInput) SetObjectLockEnabledForBucket(v bool) *CreateBucketInput { s.ObjectLockEnabledForBucket = &v return s } // SetOutpostId sets the OutpostId field's value. func (s *CreateBucketInput) SetOutpostId(v string) *CreateBucketInput { s.OutpostId = &v return s } func (s *CreateBucketInput) getOutpostID() (string, error) { if s.OutpostId == nil { return "", fmt.Errorf("member OutpostId is nil") } return *s.OutpostId, nil } func (s *CreateBucketInput) hasOutpostID() bool { if s.OutpostId == nil { return false } return true } type CreateBucketOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the bucket. // // For using this parameter with Amazon S3 on Outposts with the REST API, you // must specify the name and the x-amz-outpost-id as well. // // For using this parameter with S3 on Outposts with the Amazon Web Services // SDK and CLI, you must specify the ARN of the bucket accessed in the format // arn:aws:s3-outposts:::outpost//bucket/. // For example, to access the bucket reports through Outpost my-outpost owned // by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/bucket/reports. // The value must be URL encoded. BucketArn *string `min:"4" type:"string"` // The location of the bucket. Location *string `location:"header" locationName:"Location" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreateBucketOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreateBucketOutput) GoString() string { return s.String() } // SetBucketArn sets the BucketArn field's value. func (s *CreateBucketOutput) SetBucketArn(v string) *CreateBucketOutput { s.BucketArn = &v return s } // SetLocation sets the Location field's value. func (s *CreateBucketOutput) SetLocation(v string) *CreateBucketOutput { s.Location = &v return s } type CreateJobInput struct { _ struct{} `locationName:"CreateJobRequest" type:"structure" xmlURI:"http://awss3control.amazonaws.com/doc/2018-08-20/"` // The Amazon Web Services account ID that creates the job. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // An idempotency token to ensure that you don't accidentally submit the same // request twice. You can use any string up to the maximum length. ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"` // Indicates whether confirmation is required before Amazon S3 runs the job. // Confirmation is only required for jobs created through the Amazon S3 console. ConfirmationRequired *bool `type:"boolean"` // A description for this job. You can use any string within the permitted length. // Descriptions don't need to be unique and can be used for multiple jobs. Description *string `min:"1" type:"string"` // Configuration parameters for the manifest. Manifest *JobManifest `type:"structure"` // The attribute container for the ManifestGenerator details. Jobs must be created // with either a manifest file or a ManifestGenerator, but not both. ManifestGenerator *JobManifestGenerator `type:"structure"` // The action that you want this job to perform on every object listed in the // manifest. For more information about the available actions, see Operations // (https://docs.aws.amazon.com/AmazonS3/latest/dev/batch-ops-actions.html) // in the Amazon S3 User Guide. // // Operation is a required field Operation *JobOperation `type:"structure" required:"true"` // The numerical priority for this job. Higher numbers indicate higher priority. // // Priority is a required field Priority *int64 `type:"integer" required:"true"` // Configuration parameters for the optional job-completion report. // // Report is a required field Report *JobReport `type:"structure" required:"true"` // The Amazon Resource Name (ARN) for the Identity and Access Management (IAM) // role that Batch Operations will use to run this job's action on every object // in the manifest. // // RoleArn is a required field RoleArn *string `min:"1" type:"string" required:"true"` // A set of tags to associate with the S3 Batch Operations job. This is an optional // parameter. Tags []*S3Tag `type:"list"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreateJobInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreateJobInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateJobInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateJobInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) } if s.Description != nil && len(*s.Description) < 1 { invalidParams.Add(request.NewErrParamMinLen("Description", 1)) } if s.Operation == nil { invalidParams.Add(request.NewErrParamRequired("Operation")) } if s.Priority == nil { invalidParams.Add(request.NewErrParamRequired("Priority")) } if s.Report == nil { invalidParams.Add(request.NewErrParamRequired("Report")) } if s.RoleArn == nil { invalidParams.Add(request.NewErrParamRequired("RoleArn")) } if s.RoleArn != nil && len(*s.RoleArn) < 1 { invalidParams.Add(request.NewErrParamMinLen("RoleArn", 1)) } if s.Manifest != nil { if err := s.Manifest.Validate(); err != nil { invalidParams.AddNested("Manifest", err.(request.ErrInvalidParams)) } } if s.ManifestGenerator != nil { if err := s.ManifestGenerator.Validate(); err != nil { invalidParams.AddNested("ManifestGenerator", err.(request.ErrInvalidParams)) } } if s.Operation != nil { if err := s.Operation.Validate(); err != nil { invalidParams.AddNested("Operation", err.(request.ErrInvalidParams)) } } if s.Report != nil { if err := s.Report.Validate(); err != nil { invalidParams.AddNested("Report", err.(request.ErrInvalidParams)) } } if s.Tags != nil { for i, v := range s.Tags { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *CreateJobInput) SetAccountId(v string) *CreateJobInput { s.AccountId = &v return s } // SetClientRequestToken sets the ClientRequestToken field's value. func (s *CreateJobInput) SetClientRequestToken(v string) *CreateJobInput { s.ClientRequestToken = &v return s } // SetConfirmationRequired sets the ConfirmationRequired field's value. func (s *CreateJobInput) SetConfirmationRequired(v bool) *CreateJobInput { s.ConfirmationRequired = &v return s } // SetDescription sets the Description field's value. func (s *CreateJobInput) SetDescription(v string) *CreateJobInput { s.Description = &v return s } // SetManifest sets the Manifest field's value. func (s *CreateJobInput) SetManifest(v *JobManifest) *CreateJobInput { s.Manifest = v return s } // SetManifestGenerator sets the ManifestGenerator field's value. func (s *CreateJobInput) SetManifestGenerator(v *JobManifestGenerator) *CreateJobInput { s.ManifestGenerator = v return s } // SetOperation sets the Operation field's value. func (s *CreateJobInput) SetOperation(v *JobOperation) *CreateJobInput { s.Operation = v return s } // SetPriority sets the Priority field's value. func (s *CreateJobInput) SetPriority(v int64) *CreateJobInput { s.Priority = &v return s } // SetReport sets the Report field's value. func (s *CreateJobInput) SetReport(v *JobReport) *CreateJobInput { s.Report = v return s } // SetRoleArn sets the RoleArn field's value. func (s *CreateJobInput) SetRoleArn(v string) *CreateJobInput { s.RoleArn = &v return s } // SetTags sets the Tags field's value. func (s *CreateJobInput) SetTags(v []*S3Tag) *CreateJobInput { s.Tags = v return s } func (s *CreateJobInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } type CreateJobOutput struct { _ struct{} `type:"structure"` // The ID for this job. Amazon S3 generates this ID automatically and returns // it after a successful Create Job request. JobId *string `min:"5" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreateJobOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreateJobOutput) GoString() string { return s.String() } // SetJobId sets the JobId field's value. func (s *CreateJobOutput) SetJobId(v string) *CreateJobOutput { s.JobId = &v return s } type CreateMultiRegionAccessPointInput struct { _ struct{} `locationName:"CreateMultiRegionAccessPointRequest" type:"structure" xmlURI:"http://awss3control.amazonaws.com/doc/2018-08-20/"` // The Amazon Web Services account ID for the owner of the Multi-Region Access // Point. The owner of the Multi-Region Access Point also must own the underlying // buckets. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // An idempotency token used to identify the request and guarantee that requests // are unique. ClientToken *string `type:"string" idempotencyToken:"true"` // A container element containing details about the Multi-Region Access Point. // // Details is a required field Details *CreateMultiRegionAccessPointInput_ `type:"structure" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreateMultiRegionAccessPointInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreateMultiRegionAccessPointInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateMultiRegionAccessPointInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateMultiRegionAccessPointInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.Details == nil { invalidParams.Add(request.NewErrParamRequired("Details")) } if s.Details != nil { if err := s.Details.Validate(); err != nil { invalidParams.AddNested("Details", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *CreateMultiRegionAccessPointInput) SetAccountId(v string) *CreateMultiRegionAccessPointInput { s.AccountId = &v return s } // SetClientToken sets the ClientToken field's value. func (s *CreateMultiRegionAccessPointInput) SetClientToken(v string) *CreateMultiRegionAccessPointInput { s.ClientToken = &v return s } // SetDetails sets the Details field's value. func (s *CreateMultiRegionAccessPointInput) SetDetails(v *CreateMultiRegionAccessPointInput_) *CreateMultiRegionAccessPointInput { s.Details = v return s } func (s *CreateMultiRegionAccessPointInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } // A container for the information associated with a CreateMultiRegionAccessPoint // (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateMultiRegionAccessPoint.html) // request. type CreateMultiRegionAccessPointInput_ struct { _ struct{} `type:"structure"` // The name of the Multi-Region Access Point associated with this request. // // Name is a required field Name *string `type:"string" required:"true"` // The PublicAccessBlock configuration that you want to apply to this Amazon // S3 account. You can enable the configuration options in any combination. // For more information about when Amazon S3 considers a bucket or object public, // 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) // in the Amazon S3 User Guide. // // This data type is not supported for Amazon S3 on Outposts. PublicAccessBlock *PublicAccessBlockConfiguration `type:"structure"` // The buckets in different Regions that are associated with the Multi-Region // Access Point. // // Regions is a required field Regions []*Region `locationNameList:"Region" type:"list" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreateMultiRegionAccessPointInput_) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreateMultiRegionAccessPointInput_) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateMultiRegionAccessPointInput_) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateMultiRegionAccessPointInput_"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Regions == nil { invalidParams.Add(request.NewErrParamRequired("Regions")) } if s.Regions != nil { for i, v := range s.Regions { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Regions", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetName sets the Name field's value. func (s *CreateMultiRegionAccessPointInput_) SetName(v string) *CreateMultiRegionAccessPointInput_ { s.Name = &v return s } // SetPublicAccessBlock sets the PublicAccessBlock field's value. func (s *CreateMultiRegionAccessPointInput_) SetPublicAccessBlock(v *PublicAccessBlockConfiguration) *CreateMultiRegionAccessPointInput_ { s.PublicAccessBlock = v return s } // SetRegions sets the Regions field's value. func (s *CreateMultiRegionAccessPointInput_) SetRegions(v []*Region) *CreateMultiRegionAccessPointInput_ { s.Regions = v return s } type CreateMultiRegionAccessPointOutput struct { _ struct{} `type:"structure"` // The request token associated with the request. You can use this token with // DescribeMultiRegionAccessPointOperation (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DescribeMultiRegionAccessPointOperation.html) // to determine the status of asynchronous requests. RequestTokenARN *string `min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreateMultiRegionAccessPointOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreateMultiRegionAccessPointOutput) GoString() string { return s.String() } // SetRequestTokenARN sets the RequestTokenARN field's value. func (s *CreateMultiRegionAccessPointOutput) SetRequestTokenARN(v string) *CreateMultiRegionAccessPointOutput { s.RequestTokenARN = &v return s } type DeleteAccessPointForObjectLambdaInput struct { _ struct{} `locationName:"DeleteAccessPointForObjectLambdaRequest" type:"structure"` // The account ID for the account that owns the specified Object Lambda Access // Point. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // The name of the access point you want to delete. // // Name is a required field Name *string `location:"uri" locationName:"name" min:"3" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteAccessPointForObjectLambdaInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteAccessPointForObjectLambdaInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteAccessPointForObjectLambdaInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteAccessPointForObjectLambdaInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 3 { invalidParams.Add(request.NewErrParamMinLen("Name", 3)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *DeleteAccessPointForObjectLambdaInput) SetAccountId(v string) *DeleteAccessPointForObjectLambdaInput { s.AccountId = &v return s } // SetName sets the Name field's value. func (s *DeleteAccessPointForObjectLambdaInput) SetName(v string) *DeleteAccessPointForObjectLambdaInput { s.Name = &v return s } func (s *DeleteAccessPointForObjectLambdaInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } type DeleteAccessPointForObjectLambdaOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteAccessPointForObjectLambdaOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteAccessPointForObjectLambdaOutput) GoString() string { return s.String() } type DeleteAccessPointInput struct { _ struct{} `locationName:"DeleteAccessPointRequest" type:"structure"` // The Amazon Web Services account ID for the account that owns the specified // access point. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // The name of the access point you want to delete. // // For using this parameter with Amazon S3 on Outposts with the REST API, you // must specify the name and the x-amz-outpost-id as well. // // For using this parameter with S3 on Outposts with the Amazon Web Services // SDK and CLI, you must specify the ARN of the access point accessed in the // format arn:aws:s3-outposts:::outpost//accesspoint/. // For example, to access the access point reports-ap through Outpost my-outpost // owned by account 123456789012 in Region us-west-2, use the URL encoding of // arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/accesspoint/reports-ap. // The value must be URL encoded. // // Name is a required field Name *string `location:"uri" locationName:"name" min:"3" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteAccessPointInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteAccessPointInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteAccessPointInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteAccessPointInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 3 { invalidParams.Add(request.NewErrParamMinLen("Name", 3)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *DeleteAccessPointInput) SetAccountId(v string) *DeleteAccessPointInput { s.AccountId = &v return s } // SetName sets the Name field's value. func (s *DeleteAccessPointInput) SetName(v string) *DeleteAccessPointInput { s.Name = &v return s } func (s *DeleteAccessPointInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } func (s *DeleteAccessPointInput) getEndpointARN() (arn.Resource, error) { if s.Name == nil { return nil, fmt.Errorf("member Name is nil") } return parseEndpointARN(*s.Name) } func (s *DeleteAccessPointInput) hasEndpointARN() bool { if s.Name == nil { return false } return arn.IsARN(*s.Name) } // updateArnableField updates the value of the input field that // takes an ARN as an input. This method is useful to backfill // the parsed resource name from ARN into the input member. // It returns a pointer to a modified copy of input and an error. // Note that original input is not modified. func (s DeleteAccessPointInput) updateArnableField(v string) (interface{}, error) { if s.Name == nil { return nil, fmt.Errorf("member Name is nil") } s.Name = aws.String(v) return &s, nil } // updateAccountID returns a pointer to a modified copy of input, // if account id is not provided, we update the account id in modified input // if account id is provided, but doesn't match with the one in ARN, we throw an error // if account id is not updated, we return nil. Note that original input is not modified. func (s DeleteAccessPointInput) updateAccountID(accountId string) (interface{}, error) { if s.AccountId == nil { s.AccountId = aws.String(accountId) return &s, nil } else if *s.AccountId != accountId { return &s, fmt.Errorf("Account ID mismatch, the Account ID cannot be specified in an ARN and in the accountId field") } return nil, nil } type DeleteAccessPointOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteAccessPointOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteAccessPointOutput) GoString() string { return s.String() } type DeleteAccessPointPolicyForObjectLambdaInput struct { _ struct{} `locationName:"DeleteAccessPointPolicyForObjectLambdaRequest" type:"structure"` // The account ID for the account that owns the specified Object Lambda Access // Point. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // The name of the Object Lambda Access Point you want to delete the policy // for. // // Name is a required field Name *string `location:"uri" locationName:"name" min:"3" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteAccessPointPolicyForObjectLambdaInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteAccessPointPolicyForObjectLambdaInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteAccessPointPolicyForObjectLambdaInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteAccessPointPolicyForObjectLambdaInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 3 { invalidParams.Add(request.NewErrParamMinLen("Name", 3)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *DeleteAccessPointPolicyForObjectLambdaInput) SetAccountId(v string) *DeleteAccessPointPolicyForObjectLambdaInput { s.AccountId = &v return s } // SetName sets the Name field's value. func (s *DeleteAccessPointPolicyForObjectLambdaInput) SetName(v string) *DeleteAccessPointPolicyForObjectLambdaInput { s.Name = &v return s } func (s *DeleteAccessPointPolicyForObjectLambdaInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } type DeleteAccessPointPolicyForObjectLambdaOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteAccessPointPolicyForObjectLambdaOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteAccessPointPolicyForObjectLambdaOutput) GoString() string { return s.String() } type DeleteAccessPointPolicyInput struct { _ struct{} `locationName:"DeleteAccessPointPolicyRequest" type:"structure"` // The account ID for the account that owns the specified access point. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // The name of the access point whose policy you want to delete. // // For using this parameter with Amazon S3 on Outposts with the REST API, you // must specify the name and the x-amz-outpost-id as well. // // For using this parameter with S3 on Outposts with the Amazon Web Services // SDK and CLI, you must specify the ARN of the access point accessed in the // format arn:aws:s3-outposts:::outpost//accesspoint/. // For example, to access the access point reports-ap through Outpost my-outpost // owned by account 123456789012 in Region us-west-2, use the URL encoding of // arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/accesspoint/reports-ap. // The value must be URL encoded. // // Name is a required field Name *string `location:"uri" locationName:"name" min:"3" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteAccessPointPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteAccessPointPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteAccessPointPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteAccessPointPolicyInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 3 { invalidParams.Add(request.NewErrParamMinLen("Name", 3)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *DeleteAccessPointPolicyInput) SetAccountId(v string) *DeleteAccessPointPolicyInput { s.AccountId = &v return s } // SetName sets the Name field's value. func (s *DeleteAccessPointPolicyInput) SetName(v string) *DeleteAccessPointPolicyInput { s.Name = &v return s } func (s *DeleteAccessPointPolicyInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } func (s *DeleteAccessPointPolicyInput) getEndpointARN() (arn.Resource, error) { if s.Name == nil { return nil, fmt.Errorf("member Name is nil") } return parseEndpointARN(*s.Name) } func (s *DeleteAccessPointPolicyInput) hasEndpointARN() bool { if s.Name == nil { return false } return arn.IsARN(*s.Name) } // updateArnableField updates the value of the input field that // takes an ARN as an input. This method is useful to backfill // the parsed resource name from ARN into the input member. // It returns a pointer to a modified copy of input and an error. // Note that original input is not modified. func (s DeleteAccessPointPolicyInput) updateArnableField(v string) (interface{}, error) { if s.Name == nil { return nil, fmt.Errorf("member Name is nil") } s.Name = aws.String(v) return &s, nil } // updateAccountID returns a pointer to a modified copy of input, // if account id is not provided, we update the account id in modified input // if account id is provided, but doesn't match with the one in ARN, we throw an error // if account id is not updated, we return nil. Note that original input is not modified. func (s DeleteAccessPointPolicyInput) updateAccountID(accountId string) (interface{}, error) { if s.AccountId == nil { s.AccountId = aws.String(accountId) return &s, nil } else if *s.AccountId != accountId { return &s, fmt.Errorf("Account ID mismatch, the Account ID cannot be specified in an ARN and in the accountId field") } return nil, nil } type DeleteAccessPointPolicyOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteAccessPointPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteAccessPointPolicyOutput) GoString() string { return s.String() } type DeleteBucketInput struct { _ struct{} `locationName:"DeleteBucketRequest" type:"structure"` // The account ID that owns the Outposts bucket. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // Specifies the bucket being deleted. // // For using this parameter with Amazon S3 on Outposts with the REST API, you // must specify the name and the x-amz-outpost-id as well. // // For using this parameter with S3 on Outposts with the Amazon Web Services // SDK and CLI, you must specify the ARN of the bucket accessed in the format // arn:aws:s3-outposts:::outpost//bucket/. // For example, to access the bucket reports through Outpost my-outpost owned // by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/bucket/reports. // The value must be URL encoded. // // Bucket is a required field Bucket *string `location:"uri" locationName:"name" min:"3" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteBucketInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteBucketInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteBucketInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteBucketInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if s.Bucket != nil && len(*s.Bucket) < 3 { invalidParams.Add(request.NewErrParamMinLen("Bucket", 3)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *DeleteBucketInput) SetAccountId(v string) *DeleteBucketInput { s.AccountId = &v return s } // SetBucket sets the Bucket field's value. func (s *DeleteBucketInput) SetBucket(v string) *DeleteBucketInput { s.Bucket = &v return s } func (s *DeleteBucketInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } func (s *DeleteBucketInput) getEndpointARN() (arn.Resource, error) { if s.Bucket == nil { return nil, fmt.Errorf("member Bucket is nil") } return parseEndpointARN(*s.Bucket) } func (s *DeleteBucketInput) hasEndpointARN() bool { if s.Bucket == nil { return false } return arn.IsARN(*s.Bucket) } // updateArnableField updates the value of the input field that // takes an ARN as an input. This method is useful to backfill // the parsed resource name from ARN into the input member. // It returns a pointer to a modified copy of input and an error. // Note that original input is not modified. func (s DeleteBucketInput) updateArnableField(v string) (interface{}, error) { if s.Bucket == nil { return nil, fmt.Errorf("member Bucket is nil") } s.Bucket = aws.String(v) return &s, nil } // updateAccountID returns a pointer to a modified copy of input, // if account id is not provided, we update the account id in modified input // if account id is provided, but doesn't match with the one in ARN, we throw an error // if account id is not updated, we return nil. Note that original input is not modified. func (s DeleteBucketInput) updateAccountID(accountId string) (interface{}, error) { if s.AccountId == nil { s.AccountId = aws.String(accountId) return &s, nil } else if *s.AccountId != accountId { return &s, fmt.Errorf("Account ID mismatch, the Account ID cannot be specified in an ARN and in the accountId field") } return nil, nil } type DeleteBucketLifecycleConfigurationInput struct { _ struct{} `locationName:"DeleteBucketLifecycleConfigurationRequest" type:"structure"` // The account ID of the lifecycle configuration to delete. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // Specifies the bucket. // // For using this parameter with Amazon S3 on Outposts with the REST API, you // must specify the name and the x-amz-outpost-id as well. // // For using this parameter with S3 on Outposts with the Amazon Web Services // SDK and CLI, you must specify the ARN of the bucket accessed in the format // arn:aws:s3-outposts:::outpost//bucket/. // For example, to access the bucket reports through Outpost my-outpost owned // by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/bucket/reports. // The value must be URL encoded. // // Bucket is a required field Bucket *string `location:"uri" locationName:"name" min:"3" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteBucketLifecycleConfigurationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteBucketLifecycleConfigurationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteBucketLifecycleConfigurationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteBucketLifecycleConfigurationInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if s.Bucket != nil && len(*s.Bucket) < 3 { invalidParams.Add(request.NewErrParamMinLen("Bucket", 3)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *DeleteBucketLifecycleConfigurationInput) SetAccountId(v string) *DeleteBucketLifecycleConfigurationInput { s.AccountId = &v return s } // SetBucket sets the Bucket field's value. func (s *DeleteBucketLifecycleConfigurationInput) SetBucket(v string) *DeleteBucketLifecycleConfigurationInput { s.Bucket = &v return s } func (s *DeleteBucketLifecycleConfigurationInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } func (s *DeleteBucketLifecycleConfigurationInput) getEndpointARN() (arn.Resource, error) { if s.Bucket == nil { return nil, fmt.Errorf("member Bucket is nil") } return parseEndpointARN(*s.Bucket) } func (s *DeleteBucketLifecycleConfigurationInput) hasEndpointARN() bool { if s.Bucket == nil { return false } return arn.IsARN(*s.Bucket) } // updateArnableField updates the value of the input field that // takes an ARN as an input. This method is useful to backfill // the parsed resource name from ARN into the input member. // It returns a pointer to a modified copy of input and an error. // Note that original input is not modified. func (s DeleteBucketLifecycleConfigurationInput) updateArnableField(v string) (interface{}, error) { if s.Bucket == nil { return nil, fmt.Errorf("member Bucket is nil") } s.Bucket = aws.String(v) return &s, nil } // updateAccountID returns a pointer to a modified copy of input, // if account id is not provided, we update the account id in modified input // if account id is provided, but doesn't match with the one in ARN, we throw an error // if account id is not updated, we return nil. Note that original input is not modified. func (s DeleteBucketLifecycleConfigurationInput) updateAccountID(accountId string) (interface{}, error) { if s.AccountId == nil { s.AccountId = aws.String(accountId) return &s, nil } else if *s.AccountId != accountId { return &s, fmt.Errorf("Account ID mismatch, the Account ID cannot be specified in an ARN and in the accountId field") } return nil, nil } type DeleteBucketLifecycleConfigurationOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteBucketLifecycleConfigurationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteBucketLifecycleConfigurationOutput) GoString() string { return s.String() } type DeleteBucketOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteBucketOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteBucketOutput) GoString() string { return s.String() } type DeleteBucketPolicyInput struct { _ struct{} `locationName:"DeleteBucketPolicyRequest" type:"structure"` // The account ID of the Outposts bucket. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // Specifies the bucket. // // For using this parameter with Amazon S3 on Outposts with the REST API, you // must specify the name and the x-amz-outpost-id as well. // // For using this parameter with S3 on Outposts with the Amazon Web Services // SDK and CLI, you must specify the ARN of the bucket accessed in the format // arn:aws:s3-outposts:::outpost//bucket/. // For example, to access the bucket reports through Outpost my-outpost owned // by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/bucket/reports. // The value must be URL encoded. // // Bucket is a required field Bucket *string `location:"uri" locationName:"name" min:"3" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteBucketPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteBucketPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteBucketPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteBucketPolicyInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if s.Bucket != nil && len(*s.Bucket) < 3 { invalidParams.Add(request.NewErrParamMinLen("Bucket", 3)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *DeleteBucketPolicyInput) SetAccountId(v string) *DeleteBucketPolicyInput { s.AccountId = &v return s } // SetBucket sets the Bucket field's value. func (s *DeleteBucketPolicyInput) SetBucket(v string) *DeleteBucketPolicyInput { s.Bucket = &v return s } func (s *DeleteBucketPolicyInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } func (s *DeleteBucketPolicyInput) getEndpointARN() (arn.Resource, error) { if s.Bucket == nil { return nil, fmt.Errorf("member Bucket is nil") } return parseEndpointARN(*s.Bucket) } func (s *DeleteBucketPolicyInput) hasEndpointARN() bool { if s.Bucket == nil { return false } return arn.IsARN(*s.Bucket) } // updateArnableField updates the value of the input field that // takes an ARN as an input. This method is useful to backfill // the parsed resource name from ARN into the input member. // It returns a pointer to a modified copy of input and an error. // Note that original input is not modified. func (s DeleteBucketPolicyInput) updateArnableField(v string) (interface{}, error) { if s.Bucket == nil { return nil, fmt.Errorf("member Bucket is nil") } s.Bucket = aws.String(v) return &s, nil } // updateAccountID returns a pointer to a modified copy of input, // if account id is not provided, we update the account id in modified input // if account id is provided, but doesn't match with the one in ARN, we throw an error // if account id is not updated, we return nil. Note that original input is not modified. func (s DeleteBucketPolicyInput) updateAccountID(accountId string) (interface{}, error) { if s.AccountId == nil { s.AccountId = aws.String(accountId) return &s, nil } else if *s.AccountId != accountId { return &s, fmt.Errorf("Account ID mismatch, the Account ID cannot be specified in an ARN and in the accountId field") } return nil, nil } type DeleteBucketPolicyOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteBucketPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteBucketPolicyOutput) GoString() string { return s.String() } type DeleteBucketReplicationInput struct { _ struct{} `locationName:"DeleteBucketReplicationRequest" type:"structure"` // The Amazon Web Services account ID of the Outposts bucket to delete the replication // configuration for. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // Specifies the S3 on Outposts bucket to delete the replication configuration // for. // // For using this parameter with Amazon S3 on Outposts with the REST API, you // must specify the name and the x-amz-outpost-id as well. // // For using this parameter with S3 on Outposts with the Amazon Web Services // SDK and CLI, you must specify the ARN of the bucket accessed in the format // arn:aws:s3-outposts:::outpost//bucket/. // For example, to access the bucket reports through Outpost my-outpost owned // by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/bucket/reports. // The value must be URL encoded. // // Bucket is a required field Bucket *string `location:"uri" locationName:"name" min:"3" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteBucketReplicationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteBucketReplicationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteBucketReplicationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteBucketReplicationInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if s.Bucket != nil && len(*s.Bucket) < 3 { invalidParams.Add(request.NewErrParamMinLen("Bucket", 3)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *DeleteBucketReplicationInput) SetAccountId(v string) *DeleteBucketReplicationInput { s.AccountId = &v return s } // SetBucket sets the Bucket field's value. func (s *DeleteBucketReplicationInput) SetBucket(v string) *DeleteBucketReplicationInput { s.Bucket = &v return s } func (s *DeleteBucketReplicationInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } func (s *DeleteBucketReplicationInput) getEndpointARN() (arn.Resource, error) { if s.Bucket == nil { return nil, fmt.Errorf("member Bucket is nil") } return parseEndpointARN(*s.Bucket) } func (s *DeleteBucketReplicationInput) hasEndpointARN() bool { if s.Bucket == nil { return false } return arn.IsARN(*s.Bucket) } // updateArnableField updates the value of the input field that // takes an ARN as an input. This method is useful to backfill // the parsed resource name from ARN into the input member. // It returns a pointer to a modified copy of input and an error. // Note that original input is not modified. func (s DeleteBucketReplicationInput) updateArnableField(v string) (interface{}, error) { if s.Bucket == nil { return nil, fmt.Errorf("member Bucket is nil") } s.Bucket = aws.String(v) return &s, nil } // updateAccountID returns a pointer to a modified copy of input, // if account id is not provided, we update the account id in modified input // if account id is provided, but doesn't match with the one in ARN, we throw an error // if account id is not updated, we return nil. Note that original input is not modified. func (s DeleteBucketReplicationInput) updateAccountID(accountId string) (interface{}, error) { if s.AccountId == nil { s.AccountId = aws.String(accountId) return &s, nil } else if *s.AccountId != accountId { return &s, fmt.Errorf("Account ID mismatch, the Account ID cannot be specified in an ARN and in the accountId field") } return nil, nil } type DeleteBucketReplicationOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteBucketReplicationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteBucketReplicationOutput) GoString() string { return s.String() } type DeleteBucketTaggingInput struct { _ struct{} `locationName:"DeleteBucketTaggingRequest" type:"structure"` // The Amazon Web Services account ID of the Outposts bucket tag set to be removed. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // The bucket ARN that has the tag set to be removed. // // For using this parameter with Amazon S3 on Outposts with the REST API, you // must specify the name and the x-amz-outpost-id as well. // // For using this parameter with S3 on Outposts with the Amazon Web Services // SDK and CLI, you must specify the ARN of the bucket accessed in the format // arn:aws:s3-outposts:::outpost//bucket/. // For example, to access the bucket reports through Outpost my-outpost owned // by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/bucket/reports. // The value must be URL encoded. // // Bucket is a required field Bucket *string `location:"uri" locationName:"name" min:"3" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteBucketTaggingInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteBucketTaggingInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteBucketTaggingInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteBucketTaggingInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if s.Bucket != nil && len(*s.Bucket) < 3 { invalidParams.Add(request.NewErrParamMinLen("Bucket", 3)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *DeleteBucketTaggingInput) SetAccountId(v string) *DeleteBucketTaggingInput { s.AccountId = &v return s } // SetBucket sets the Bucket field's value. func (s *DeleteBucketTaggingInput) SetBucket(v string) *DeleteBucketTaggingInput { s.Bucket = &v return s } func (s *DeleteBucketTaggingInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } func (s *DeleteBucketTaggingInput) getEndpointARN() (arn.Resource, error) { if s.Bucket == nil { return nil, fmt.Errorf("member Bucket is nil") } return parseEndpointARN(*s.Bucket) } func (s *DeleteBucketTaggingInput) hasEndpointARN() bool { if s.Bucket == nil { return false } return arn.IsARN(*s.Bucket) } // updateArnableField updates the value of the input field that // takes an ARN as an input. This method is useful to backfill // the parsed resource name from ARN into the input member. // It returns a pointer to a modified copy of input and an error. // Note that original input is not modified. func (s DeleteBucketTaggingInput) updateArnableField(v string) (interface{}, error) { if s.Bucket == nil { return nil, fmt.Errorf("member Bucket is nil") } s.Bucket = aws.String(v) return &s, nil } // updateAccountID returns a pointer to a modified copy of input, // if account id is not provided, we update the account id in modified input // if account id is provided, but doesn't match with the one in ARN, we throw an error // if account id is not updated, we return nil. Note that original input is not modified. func (s DeleteBucketTaggingInput) updateAccountID(accountId string) (interface{}, error) { if s.AccountId == nil { s.AccountId = aws.String(accountId) return &s, nil } else if *s.AccountId != accountId { return &s, fmt.Errorf("Account ID mismatch, the Account ID cannot be specified in an ARN and in the accountId field") } return nil, nil } type DeleteBucketTaggingOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteBucketTaggingOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteBucketTaggingOutput) GoString() string { return s.String() } type DeleteJobTaggingInput struct { _ struct{} `locationName:"DeleteJobTaggingRequest" type:"structure"` // The Amazon Web Services account ID associated with the S3 Batch Operations // job. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // The ID for the S3 Batch Operations job whose tags you want to delete. // // JobId is a required field JobId *string `location:"uri" locationName:"id" min:"5" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteJobTaggingInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteJobTaggingInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteJobTaggingInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteJobTaggingInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.JobId == nil { invalidParams.Add(request.NewErrParamRequired("JobId")) } if s.JobId != nil && len(*s.JobId) < 5 { invalidParams.Add(request.NewErrParamMinLen("JobId", 5)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *DeleteJobTaggingInput) SetAccountId(v string) *DeleteJobTaggingInput { s.AccountId = &v return s } // SetJobId sets the JobId field's value. func (s *DeleteJobTaggingInput) SetJobId(v string) *DeleteJobTaggingInput { s.JobId = &v return s } func (s *DeleteJobTaggingInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } type DeleteJobTaggingOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteJobTaggingOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteJobTaggingOutput) GoString() string { return s.String() } // Specifies whether S3 on Outposts replicates delete markers. If you specify // a Filter element in your replication configuration, you must also include // a DeleteMarkerReplication element. If your Filter includes a Tag element, // the DeleteMarkerReplication element's Status child element must be set to // Disabled, because S3 on Outposts does not support replicating delete markers // for tag-based rules. // // For more information about delete marker replication, see How delete operations // affect replication (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3OutpostsReplication.html#outposts-replication-what-is-replicated) // in the Amazon S3 User Guide. type DeleteMarkerReplication struct { _ struct{} `type:"structure"` // Indicates whether to replicate delete markers. // // Status is a required field Status *string `type:"string" required:"true" enum:"DeleteMarkerReplicationStatus"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteMarkerReplication) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteMarkerReplication) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteMarkerReplication) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteMarkerReplication"} if s.Status == nil { invalidParams.Add(request.NewErrParamRequired("Status")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetStatus sets the Status field's value. func (s *DeleteMarkerReplication) SetStatus(v string) *DeleteMarkerReplication { s.Status = &v return s } type DeleteMultiRegionAccessPointInput struct { _ struct{} `locationName:"DeleteMultiRegionAccessPointRequest" type:"structure" xmlURI:"http://awss3control.amazonaws.com/doc/2018-08-20/"` // The Amazon Web Services account ID for the owner of the Multi-Region Access // Point. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // An idempotency token used to identify the request and guarantee that requests // are unique. ClientToken *string `type:"string" idempotencyToken:"true"` // A container element containing details about the Multi-Region Access Point. // // Details is a required field Details *DeleteMultiRegionAccessPointInput_ `type:"structure" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteMultiRegionAccessPointInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteMultiRegionAccessPointInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteMultiRegionAccessPointInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteMultiRegionAccessPointInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.Details == nil { invalidParams.Add(request.NewErrParamRequired("Details")) } if s.Details != nil { if err := s.Details.Validate(); err != nil { invalidParams.AddNested("Details", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *DeleteMultiRegionAccessPointInput) SetAccountId(v string) *DeleteMultiRegionAccessPointInput { s.AccountId = &v return s } // SetClientToken sets the ClientToken field's value. func (s *DeleteMultiRegionAccessPointInput) SetClientToken(v string) *DeleteMultiRegionAccessPointInput { s.ClientToken = &v return s } // SetDetails sets the Details field's value. func (s *DeleteMultiRegionAccessPointInput) SetDetails(v *DeleteMultiRegionAccessPointInput_) *DeleteMultiRegionAccessPointInput { s.Details = v return s } func (s *DeleteMultiRegionAccessPointInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } // A container for the information associated with a DeleteMultiRegionAccessPoint // (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DeleteMultiRegionAccessPoint.html) // request. type DeleteMultiRegionAccessPointInput_ struct { _ struct{} `type:"structure"` // The name of the Multi-Region Access Point associated with this request. // // Name is a required field Name *string `type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteMultiRegionAccessPointInput_) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteMultiRegionAccessPointInput_) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteMultiRegionAccessPointInput_) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteMultiRegionAccessPointInput_"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetName sets the Name field's value. func (s *DeleteMultiRegionAccessPointInput_) SetName(v string) *DeleteMultiRegionAccessPointInput_ { s.Name = &v return s } type DeleteMultiRegionAccessPointOutput struct { _ struct{} `type:"structure"` // The request token associated with the request. You can use this token with // DescribeMultiRegionAccessPointOperation (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DescribeMultiRegionAccessPointOperation.html) // to determine the status of asynchronous requests. RequestTokenARN *string `min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteMultiRegionAccessPointOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteMultiRegionAccessPointOutput) GoString() string { return s.String() } // SetRequestTokenARN sets the RequestTokenARN field's value. func (s *DeleteMultiRegionAccessPointOutput) SetRequestTokenARN(v string) *DeleteMultiRegionAccessPointOutput { s.RequestTokenARN = &v return s } type DeletePublicAccessBlockInput struct { _ struct{} `locationName:"DeletePublicAccessBlockRequest" type:"structure"` // The account ID for the Amazon Web Services account whose PublicAccessBlock // configuration you want to remove. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeletePublicAccessBlockInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeletePublicAccessBlockInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeletePublicAccessBlockInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeletePublicAccessBlockInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *DeletePublicAccessBlockInput) SetAccountId(v string) *DeletePublicAccessBlockInput { s.AccountId = &v return s } func (s *DeletePublicAccessBlockInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } type DeletePublicAccessBlockOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeletePublicAccessBlockOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeletePublicAccessBlockOutput) GoString() string { return s.String() } type DeleteStorageLensConfigurationInput struct { _ struct{} `locationName:"DeleteStorageLensConfigurationRequest" type:"structure"` // The account ID of the requester. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // The ID of the S3 Storage Lens configuration. // // ConfigId is a required field ConfigId *string `location:"uri" locationName:"storagelensid" min:"1" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteStorageLensConfigurationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteStorageLensConfigurationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteStorageLensConfigurationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteStorageLensConfigurationInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.ConfigId == nil { invalidParams.Add(request.NewErrParamRequired("ConfigId")) } if s.ConfigId != nil && len(*s.ConfigId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ConfigId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *DeleteStorageLensConfigurationInput) SetAccountId(v string) *DeleteStorageLensConfigurationInput { s.AccountId = &v return s } // SetConfigId sets the ConfigId field's value. func (s *DeleteStorageLensConfigurationInput) SetConfigId(v string) *DeleteStorageLensConfigurationInput { s.ConfigId = &v return s } func (s *DeleteStorageLensConfigurationInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } type DeleteStorageLensConfigurationOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteStorageLensConfigurationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteStorageLensConfigurationOutput) GoString() string { return s.String() } type DeleteStorageLensConfigurationTaggingInput struct { _ struct{} `locationName:"DeleteStorageLensConfigurationTaggingRequest" type:"structure"` // The account ID of the requester. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // The ID of the S3 Storage Lens configuration. // // ConfigId is a required field ConfigId *string `location:"uri" locationName:"storagelensid" min:"1" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteStorageLensConfigurationTaggingInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteStorageLensConfigurationTaggingInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteStorageLensConfigurationTaggingInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteStorageLensConfigurationTaggingInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.ConfigId == nil { invalidParams.Add(request.NewErrParamRequired("ConfigId")) } if s.ConfigId != nil && len(*s.ConfigId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ConfigId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *DeleteStorageLensConfigurationTaggingInput) SetAccountId(v string) *DeleteStorageLensConfigurationTaggingInput { s.AccountId = &v return s } // SetConfigId sets the ConfigId field's value. func (s *DeleteStorageLensConfigurationTaggingInput) SetConfigId(v string) *DeleteStorageLensConfigurationTaggingInput { s.ConfigId = &v return s } func (s *DeleteStorageLensConfigurationTaggingInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } type DeleteStorageLensConfigurationTaggingOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteStorageLensConfigurationTaggingOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteStorageLensConfigurationTaggingOutput) GoString() string { return s.String() } type DescribeJobInput struct { _ struct{} `locationName:"DescribeJobRequest" type:"structure"` // The Amazon Web Services account ID associated with the S3 Batch Operations // job. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // The ID for the job whose information you want to retrieve. // // JobId is a required field JobId *string `location:"uri" locationName:"id" min:"5" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DescribeJobInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DescribeJobInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeJobInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeJobInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.JobId == nil { invalidParams.Add(request.NewErrParamRequired("JobId")) } if s.JobId != nil && len(*s.JobId) < 5 { invalidParams.Add(request.NewErrParamMinLen("JobId", 5)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *DescribeJobInput) SetAccountId(v string) *DescribeJobInput { s.AccountId = &v return s } // SetJobId sets the JobId field's value. func (s *DescribeJobInput) SetJobId(v string) *DescribeJobInput { s.JobId = &v return s } func (s *DescribeJobInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } type DescribeJobOutput struct { _ struct{} `type:"structure"` // Contains the configuration parameters and status for the job specified in // the Describe Job request. Job *JobDescriptor `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DescribeJobOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DescribeJobOutput) GoString() string { return s.String() } // SetJob sets the Job field's value. func (s *DescribeJobOutput) SetJob(v *JobDescriptor) *DescribeJobOutput { s.Job = v return s } type DescribeMultiRegionAccessPointOperationInput struct { _ struct{} `locationName:"DescribeMultiRegionAccessPointOperationRequest" type:"structure"` // The Amazon Web Services account ID for the owner of the Multi-Region Access // Point. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // The request token associated with the request you want to know about. This // request token is returned as part of the response when you make an asynchronous // request. You provide this token to query about the status of the asynchronous // action. // // RequestTokenARN is a required field RequestTokenARN *string `location:"uri" locationName:"request_token" min:"1" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DescribeMultiRegionAccessPointOperationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DescribeMultiRegionAccessPointOperationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeMultiRegionAccessPointOperationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeMultiRegionAccessPointOperationInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.RequestTokenARN == nil { invalidParams.Add(request.NewErrParamRequired("RequestTokenARN")) } if s.RequestTokenARN != nil && len(*s.RequestTokenARN) < 1 { invalidParams.Add(request.NewErrParamMinLen("RequestTokenARN", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *DescribeMultiRegionAccessPointOperationInput) SetAccountId(v string) *DescribeMultiRegionAccessPointOperationInput { s.AccountId = &v return s } // SetRequestTokenARN sets the RequestTokenARN field's value. func (s *DescribeMultiRegionAccessPointOperationInput) SetRequestTokenARN(v string) *DescribeMultiRegionAccessPointOperationInput { s.RequestTokenARN = &v return s } func (s *DescribeMultiRegionAccessPointOperationInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } type DescribeMultiRegionAccessPointOperationOutput struct { _ struct{} `type:"structure"` // A container element containing the details of the asynchronous operation. AsyncOperation *AsyncOperation `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DescribeMultiRegionAccessPointOperationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DescribeMultiRegionAccessPointOperationOutput) GoString() string { return s.String() } // SetAsyncOperation sets the AsyncOperation field's value. func (s *DescribeMultiRegionAccessPointOperationOutput) SetAsyncOperation(v *AsyncOperation) *DescribeMultiRegionAccessPointOperationOutput { s.AsyncOperation = v return s } // Specifies information about the replication destination bucket and its settings // for an S3 on Outposts replication configuration. type Destination struct { _ struct{} `type:"structure"` // Specify this property only in a cross-account scenario (where the source // and destination bucket owners are not the same), and you want to change replica // ownership to the Amazon Web Services account that owns the destination bucket. // If this property is not specified in the replication configuration, the replicas // are owned by same Amazon Web Services account that owns the source object. // // This is not supported by Amazon S3 on Outposts buckets. AccessControlTranslation *AccessControlTranslation `type:"structure"` // The destination bucket owner's account ID. Account *string `type:"string"` // The Amazon Resource Name (ARN) of the access point for the destination bucket // where you want S3 on Outposts to store the replication results. // // Bucket is a required field Bucket *string `type:"string" required:"true"` // A container that provides information about encryption. If SourceSelectionCriteria // is specified, you must specify this element. // // This is not supported by Amazon S3 on Outposts buckets. EncryptionConfiguration *EncryptionConfiguration `type:"structure"` // A container that specifies replication metrics-related settings. Metrics *Metrics `type:"structure"` // A container that specifies S3 Replication Time Control (S3 RTC) settings, // including whether S3 RTC is enabled and the time when all objects and operations // on objects must be replicated. Must be specified together with a Metrics // block. // // This is not supported by Amazon S3 on Outposts buckets. ReplicationTime *ReplicationTime `type:"structure"` // The storage class to use when replicating objects. All objects stored on // S3 on Outposts are stored in the OUTPOSTS storage class. S3 on Outposts uses // the OUTPOSTS storage class to create the object replicas. // // Values other than OUTPOSTS are not supported by Amazon S3 on Outposts. StorageClass *string `type:"string" enum:"ReplicationStorageClass"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s Destination) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s Destination) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Destination) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Destination"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if s.AccessControlTranslation != nil { if err := s.AccessControlTranslation.Validate(); err != nil { invalidParams.AddNested("AccessControlTranslation", err.(request.ErrInvalidParams)) } } if s.Metrics != nil { if err := s.Metrics.Validate(); err != nil { invalidParams.AddNested("Metrics", err.(request.ErrInvalidParams)) } } if s.ReplicationTime != nil { if err := s.ReplicationTime.Validate(); err != nil { invalidParams.AddNested("ReplicationTime", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccessControlTranslation sets the AccessControlTranslation field's value. func (s *Destination) SetAccessControlTranslation(v *AccessControlTranslation) *Destination { s.AccessControlTranslation = v return s } // SetAccount sets the Account field's value. func (s *Destination) SetAccount(v string) *Destination { s.Account = &v return s } // SetBucket sets the Bucket field's value. func (s *Destination) SetBucket(v string) *Destination { s.Bucket = &v return s } // SetEncryptionConfiguration sets the EncryptionConfiguration field's value. func (s *Destination) SetEncryptionConfiguration(v *EncryptionConfiguration) *Destination { s.EncryptionConfiguration = v return s } // SetMetrics sets the Metrics field's value. func (s *Destination) SetMetrics(v *Metrics) *Destination { s.Metrics = v return s } // SetReplicationTime sets the ReplicationTime field's value. func (s *Destination) SetReplicationTime(v *ReplicationTime) *Destination { s.ReplicationTime = v return s } // SetStorageClass sets the StorageClass field's value. func (s *Destination) SetStorageClass(v string) *Destination { s.StorageClass = &v return s } // The container element for Amazon S3 Storage Lens detailed status code metrics. // Detailed status code metrics generate metrics for HTTP status codes, such // as 200 OK, 403 Forbidden, 503 Service Unavailable and others. // // For more information about S3 Storage Lens, see Assessing your storage activity // and usage with S3 Storage Lens (https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage_lens.html) // in the Amazon S3 User Guide. For a complete list of S3 Storage Lens metrics, // see S3 Storage Lens metrics glossary (https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage_lens_metrics_glossary.html) // in the Amazon S3 User Guide. type DetailedStatusCodesMetrics struct { _ struct{} `type:"structure"` // A container that indicates whether detailed status code metrics are enabled. IsEnabled *bool `type:"boolean"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DetailedStatusCodesMetrics) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DetailedStatusCodesMetrics) GoString() string { return s.String() } // SetIsEnabled sets the IsEnabled field's value. func (s *DetailedStatusCodesMetrics) SetIsEnabled(v bool) *DetailedStatusCodesMetrics { s.IsEnabled = &v return s } // Specifies encryption-related information for an Amazon S3 bucket that is // a destination for replicated objects. // // This is not supported by Amazon S3 on Outposts buckets. type EncryptionConfiguration struct { _ struct{} `type:"structure"` // Specifies the ID of the customer managed KMS key that's stored in Key Management // Service (KMS) for the destination bucket. This ID is either the Amazon Resource // Name (ARN) for the KMS key or the alias ARN for the KMS key. Amazon S3 uses // this KMS key to encrypt replica objects. Amazon S3 supports only symmetric // encryption KMS keys. For more information, see Symmetric encryption KMS keys // (https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#symmetric-cmks) // in the Amazon Web Services Key Management Service Developer Guide. ReplicaKmsKeyID *string `type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s EncryptionConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s EncryptionConfiguration) GoString() string { return s.String() } // SetReplicaKmsKeyID sets the ReplicaKmsKeyID field's value. func (s *EncryptionConfiguration) SetReplicaKmsKeyID(v string) *EncryptionConfiguration { s.ReplicaKmsKeyID = &v return s } // The last established access control policy for a Multi-Region Access Point. // // When you update the policy, the update is first listed as the proposed policy. // After the update is finished and all Regions have been updated, the proposed // policy is listed as the established policy. If both policies have the same // version number, the proposed policy is the established policy. type EstablishedMultiRegionAccessPointPolicy struct { _ struct{} `type:"structure"` // The details of the last established policy. Policy *string `type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s EstablishedMultiRegionAccessPointPolicy) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s EstablishedMultiRegionAccessPointPolicy) GoString() string { return s.String() } // SetPolicy sets the Policy field's value. func (s *EstablishedMultiRegionAccessPointPolicy) SetPolicy(v string) *EstablishedMultiRegionAccessPointPolicy { s.Policy = &v return s } // A container for what Amazon S3 Storage Lens will exclude. type Exclude struct { _ struct{} `type:"structure"` // A container for the S3 Storage Lens bucket excludes. Buckets []*string `locationNameList:"Arn" type:"list"` // A container for the S3 Storage Lens Region excludes. Regions []*string `locationNameList:"Region" type:"list"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s Exclude) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s Exclude) GoString() string { return s.String() } // SetBuckets sets the Buckets field's value. func (s *Exclude) SetBuckets(v []*string) *Exclude { s.Buckets = v return s } // SetRegions sets the Regions field's value. func (s *Exclude) SetRegions(v []*string) *Exclude { s.Regions = v return s } // An optional configuration to replicate existing source bucket objects. // // This is not supported by Amazon S3 on Outposts buckets. type ExistingObjectReplication struct { _ struct{} `type:"structure"` // Specifies whether Amazon S3 replicates existing source bucket objects. // // Status is a required field Status *string `type:"string" required:"true" enum:"ExistingObjectReplicationStatus"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ExistingObjectReplication) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ExistingObjectReplication) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ExistingObjectReplication) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ExistingObjectReplication"} if s.Status == nil { invalidParams.Add(request.NewErrParamRequired("Status")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetStatus sets the Status field's value. func (s *ExistingObjectReplication) SetStatus(v string) *ExistingObjectReplication { s.Status = &v return s } // The encryption configuration to use when storing the generated manifest. type GeneratedManifestEncryption struct { _ struct{} `type:"structure"` // Configuration details on how SSE-KMS is used to encrypt generated manifest // objects. SSEKMS *SSEKMSEncryption `locationName:"SSE-KMS" type:"structure"` // Specifies the use of SSE-S3 to encrypt generated manifest objects. SSES3 *SSES3Encryption `locationName:"SSE-S3" type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GeneratedManifestEncryption) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GeneratedManifestEncryption) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GeneratedManifestEncryption) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GeneratedManifestEncryption"} if s.SSEKMS != nil { if err := s.SSEKMS.Validate(); err != nil { invalidParams.AddNested("SSEKMS", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetSSEKMS sets the SSEKMS field's value. func (s *GeneratedManifestEncryption) SetSSEKMS(v *SSEKMSEncryption) *GeneratedManifestEncryption { s.SSEKMS = v return s } // SetSSES3 sets the SSES3 field's value. func (s *GeneratedManifestEncryption) SetSSES3(v *SSES3Encryption) *GeneratedManifestEncryption { s.SSES3 = v return s } type GetAccessPointConfigurationForObjectLambdaInput struct { _ struct{} `locationName:"GetAccessPointConfigurationForObjectLambdaRequest" type:"structure"` // The account ID for the account that owns the specified Object Lambda Access // Point. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // The name of the Object Lambda Access Point you want to return the configuration // for. // // Name is a required field Name *string `location:"uri" locationName:"name" min:"3" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetAccessPointConfigurationForObjectLambdaInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetAccessPointConfigurationForObjectLambdaInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetAccessPointConfigurationForObjectLambdaInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetAccessPointConfigurationForObjectLambdaInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 3 { invalidParams.Add(request.NewErrParamMinLen("Name", 3)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *GetAccessPointConfigurationForObjectLambdaInput) SetAccountId(v string) *GetAccessPointConfigurationForObjectLambdaInput { s.AccountId = &v return s } // SetName sets the Name field's value. func (s *GetAccessPointConfigurationForObjectLambdaInput) SetName(v string) *GetAccessPointConfigurationForObjectLambdaInput { s.Name = &v return s } func (s *GetAccessPointConfigurationForObjectLambdaInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } type GetAccessPointConfigurationForObjectLambdaOutput struct { _ struct{} `type:"structure"` // Object Lambda Access Point configuration document. Configuration *ObjectLambdaConfiguration `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetAccessPointConfigurationForObjectLambdaOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetAccessPointConfigurationForObjectLambdaOutput) GoString() string { return s.String() } // SetConfiguration sets the Configuration field's value. func (s *GetAccessPointConfigurationForObjectLambdaOutput) SetConfiguration(v *ObjectLambdaConfiguration) *GetAccessPointConfigurationForObjectLambdaOutput { s.Configuration = v return s } type GetAccessPointForObjectLambdaInput struct { _ struct{} `locationName:"GetAccessPointForObjectLambdaRequest" type:"structure"` // The account ID for the account that owns the specified Object Lambda Access // Point. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // The name of the Object Lambda Access Point. // // Name is a required field Name *string `location:"uri" locationName:"name" min:"3" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetAccessPointForObjectLambdaInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetAccessPointForObjectLambdaInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetAccessPointForObjectLambdaInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetAccessPointForObjectLambdaInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 3 { invalidParams.Add(request.NewErrParamMinLen("Name", 3)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *GetAccessPointForObjectLambdaInput) SetAccountId(v string) *GetAccessPointForObjectLambdaInput { s.AccountId = &v return s } // SetName sets the Name field's value. func (s *GetAccessPointForObjectLambdaInput) SetName(v string) *GetAccessPointForObjectLambdaInput { s.Name = &v return s } func (s *GetAccessPointForObjectLambdaInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } type GetAccessPointForObjectLambdaOutput struct { _ struct{} `type:"structure"` // The alias of the Object Lambda Access Point. Alias *ObjectLambdaAccessPointAlias `type:"structure"` // The date and time when the specified Object Lambda Access Point was created. CreationDate *time.Time `type:"timestamp"` // The name of the Object Lambda Access Point. Name *string `min:"3" type:"string"` // Configuration to block all public access. This setting is turned on and can // not be edited. PublicAccessBlockConfiguration *PublicAccessBlockConfiguration `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetAccessPointForObjectLambdaOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetAccessPointForObjectLambdaOutput) GoString() string { return s.String() } // SetAlias sets the Alias field's value. func (s *GetAccessPointForObjectLambdaOutput) SetAlias(v *ObjectLambdaAccessPointAlias) *GetAccessPointForObjectLambdaOutput { s.Alias = v return s } // SetCreationDate sets the CreationDate field's value. func (s *GetAccessPointForObjectLambdaOutput) SetCreationDate(v time.Time) *GetAccessPointForObjectLambdaOutput { s.CreationDate = &v return s } // SetName sets the Name field's value. func (s *GetAccessPointForObjectLambdaOutput) SetName(v string) *GetAccessPointForObjectLambdaOutput { s.Name = &v return s } // SetPublicAccessBlockConfiguration sets the PublicAccessBlockConfiguration field's value. func (s *GetAccessPointForObjectLambdaOutput) SetPublicAccessBlockConfiguration(v *PublicAccessBlockConfiguration) *GetAccessPointForObjectLambdaOutput { s.PublicAccessBlockConfiguration = v return s } type GetAccessPointInput struct { _ struct{} `locationName:"GetAccessPointRequest" type:"structure"` // The Amazon Web Services account ID for the account that owns the specified // access point. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // The name of the access point whose configuration information you want to // retrieve. // // For using this parameter with Amazon S3 on Outposts with the REST API, you // must specify the name and the x-amz-outpost-id as well. // // For using this parameter with S3 on Outposts with the Amazon Web Services // SDK and CLI, you must specify the ARN of the access point accessed in the // format arn:aws:s3-outposts:::outpost//accesspoint/. // For example, to access the access point reports-ap through Outpost my-outpost // owned by account 123456789012 in Region us-west-2, use the URL encoding of // arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/accesspoint/reports-ap. // The value must be URL encoded. // // Name is a required field Name *string `location:"uri" locationName:"name" min:"3" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetAccessPointInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetAccessPointInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetAccessPointInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetAccessPointInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 3 { invalidParams.Add(request.NewErrParamMinLen("Name", 3)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *GetAccessPointInput) SetAccountId(v string) *GetAccessPointInput { s.AccountId = &v return s } // SetName sets the Name field's value. func (s *GetAccessPointInput) SetName(v string) *GetAccessPointInput { s.Name = &v return s } func (s *GetAccessPointInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } func (s *GetAccessPointInput) getEndpointARN() (arn.Resource, error) { if s.Name == nil { return nil, fmt.Errorf("member Name is nil") } return parseEndpointARN(*s.Name) } func (s *GetAccessPointInput) hasEndpointARN() bool { if s.Name == nil { return false } return arn.IsARN(*s.Name) } // updateArnableField updates the value of the input field that // takes an ARN as an input. This method is useful to backfill // the parsed resource name from ARN into the input member. // It returns a pointer to a modified copy of input and an error. // Note that original input is not modified. func (s GetAccessPointInput) updateArnableField(v string) (interface{}, error) { if s.Name == nil { return nil, fmt.Errorf("member Name is nil") } s.Name = aws.String(v) return &s, nil } // updateAccountID returns a pointer to a modified copy of input, // if account id is not provided, we update the account id in modified input // if account id is provided, but doesn't match with the one in ARN, we throw an error // if account id is not updated, we return nil. Note that original input is not modified. func (s GetAccessPointInput) updateAccountID(accountId string) (interface{}, error) { if s.AccountId == nil { s.AccountId = aws.String(accountId) return &s, nil } else if *s.AccountId != accountId { return &s, fmt.Errorf("Account ID mismatch, the Account ID cannot be specified in an ARN and in the accountId field") } return nil, nil } type GetAccessPointOutput struct { _ struct{} `type:"structure"` // The ARN of the access point. AccessPointArn *string `min:"4" type:"string"` // The name or alias of the access point. Alias *string `type:"string"` // The name of the bucket associated with the specified access point. Bucket *string `min:"3" type:"string"` // The Amazon Web Services account ID associated with the S3 bucket associated // with this access point. BucketAccountId *string `type:"string"` // The date and time when the specified access point was created. CreationDate *time.Time `type:"timestamp"` // The VPC endpoint for the access point. Endpoints map[string]*string `type:"map"` // The name of the specified access point. Name *string `min:"3" type:"string"` // Indicates whether this access point allows access from the public internet. // If VpcConfiguration is specified for this access point, then NetworkOrigin // is VPC, and the access point doesn't allow access from the public internet. // Otherwise, NetworkOrigin is Internet, and the access point allows access // from the public internet, subject to the access point and bucket access policies. // // This will always be true for an Amazon S3 on Outposts access point NetworkOrigin *string `type:"string" enum:"NetworkOrigin"` // The PublicAccessBlock configuration that you want to apply to this Amazon // S3 account. You can enable the configuration options in any combination. // For more information about when Amazon S3 considers a bucket or object public, // 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) // in the Amazon S3 User Guide. // // This data type is not supported for Amazon S3 on Outposts. PublicAccessBlockConfiguration *PublicAccessBlockConfiguration `type:"structure"` // Contains the virtual private cloud (VPC) configuration for the specified // access point. // // This element is empty if this access point is an Amazon S3 on Outposts access // point that is used by other Amazon Web Services. VpcConfiguration *VpcConfiguration `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetAccessPointOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetAccessPointOutput) GoString() string { return s.String() } // SetAccessPointArn sets the AccessPointArn field's value. func (s *GetAccessPointOutput) SetAccessPointArn(v string) *GetAccessPointOutput { s.AccessPointArn = &v return s } // SetAlias sets the Alias field's value. func (s *GetAccessPointOutput) SetAlias(v string) *GetAccessPointOutput { s.Alias = &v return s } // SetBucket sets the Bucket field's value. func (s *GetAccessPointOutput) SetBucket(v string) *GetAccessPointOutput { s.Bucket = &v return s } // SetBucketAccountId sets the BucketAccountId field's value. func (s *GetAccessPointOutput) SetBucketAccountId(v string) *GetAccessPointOutput { s.BucketAccountId = &v return s } // SetCreationDate sets the CreationDate field's value. func (s *GetAccessPointOutput) SetCreationDate(v time.Time) *GetAccessPointOutput { s.CreationDate = &v return s } // SetEndpoints sets the Endpoints field's value. func (s *GetAccessPointOutput) SetEndpoints(v map[string]*string) *GetAccessPointOutput { s.Endpoints = v return s } // SetName sets the Name field's value. func (s *GetAccessPointOutput) SetName(v string) *GetAccessPointOutput { s.Name = &v return s } // SetNetworkOrigin sets the NetworkOrigin field's value. func (s *GetAccessPointOutput) SetNetworkOrigin(v string) *GetAccessPointOutput { s.NetworkOrigin = &v return s } // SetPublicAccessBlockConfiguration sets the PublicAccessBlockConfiguration field's value. func (s *GetAccessPointOutput) SetPublicAccessBlockConfiguration(v *PublicAccessBlockConfiguration) *GetAccessPointOutput { s.PublicAccessBlockConfiguration = v return s } // SetVpcConfiguration sets the VpcConfiguration field's value. func (s *GetAccessPointOutput) SetVpcConfiguration(v *VpcConfiguration) *GetAccessPointOutput { s.VpcConfiguration = v return s } type GetAccessPointPolicyForObjectLambdaInput struct { _ struct{} `locationName:"GetAccessPointPolicyForObjectLambdaRequest" type:"structure"` // The account ID for the account that owns the specified Object Lambda Access // Point. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // The name of the Object Lambda Access Point. // // Name is a required field Name *string `location:"uri" locationName:"name" min:"3" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetAccessPointPolicyForObjectLambdaInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetAccessPointPolicyForObjectLambdaInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetAccessPointPolicyForObjectLambdaInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetAccessPointPolicyForObjectLambdaInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 3 { invalidParams.Add(request.NewErrParamMinLen("Name", 3)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *GetAccessPointPolicyForObjectLambdaInput) SetAccountId(v string) *GetAccessPointPolicyForObjectLambdaInput { s.AccountId = &v return s } // SetName sets the Name field's value. func (s *GetAccessPointPolicyForObjectLambdaInput) SetName(v string) *GetAccessPointPolicyForObjectLambdaInput { s.Name = &v return s } func (s *GetAccessPointPolicyForObjectLambdaInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } type GetAccessPointPolicyForObjectLambdaOutput struct { _ struct{} `type:"structure"` // Object Lambda Access Point resource policy document. Policy *string `type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetAccessPointPolicyForObjectLambdaOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetAccessPointPolicyForObjectLambdaOutput) GoString() string { return s.String() } // SetPolicy sets the Policy field's value. func (s *GetAccessPointPolicyForObjectLambdaOutput) SetPolicy(v string) *GetAccessPointPolicyForObjectLambdaOutput { s.Policy = &v return s } type GetAccessPointPolicyInput struct { _ struct{} `locationName:"GetAccessPointPolicyRequest" type:"structure"` // The account ID for the account that owns the specified access point. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // The name of the access point whose policy you want to retrieve. // // For using this parameter with Amazon S3 on Outposts with the REST API, you // must specify the name and the x-amz-outpost-id as well. // // For using this parameter with S3 on Outposts with the Amazon Web Services // SDK and CLI, you must specify the ARN of the access point accessed in the // format arn:aws:s3-outposts:::outpost//accesspoint/. // For example, to access the access point reports-ap through Outpost my-outpost // owned by account 123456789012 in Region us-west-2, use the URL encoding of // arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/accesspoint/reports-ap. // The value must be URL encoded. // // Name is a required field Name *string `location:"uri" locationName:"name" min:"3" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetAccessPointPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetAccessPointPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetAccessPointPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetAccessPointPolicyInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 3 { invalidParams.Add(request.NewErrParamMinLen("Name", 3)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *GetAccessPointPolicyInput) SetAccountId(v string) *GetAccessPointPolicyInput { s.AccountId = &v return s } // SetName sets the Name field's value. func (s *GetAccessPointPolicyInput) SetName(v string) *GetAccessPointPolicyInput { s.Name = &v return s } func (s *GetAccessPointPolicyInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } func (s *GetAccessPointPolicyInput) getEndpointARN() (arn.Resource, error) { if s.Name == nil { return nil, fmt.Errorf("member Name is nil") } return parseEndpointARN(*s.Name) } func (s *GetAccessPointPolicyInput) hasEndpointARN() bool { if s.Name == nil { return false } return arn.IsARN(*s.Name) } // updateArnableField updates the value of the input field that // takes an ARN as an input. This method is useful to backfill // the parsed resource name from ARN into the input member. // It returns a pointer to a modified copy of input and an error. // Note that original input is not modified. func (s GetAccessPointPolicyInput) updateArnableField(v string) (interface{}, error) { if s.Name == nil { return nil, fmt.Errorf("member Name is nil") } s.Name = aws.String(v) return &s, nil } // updateAccountID returns a pointer to a modified copy of input, // if account id is not provided, we update the account id in modified input // if account id is provided, but doesn't match with the one in ARN, we throw an error // if account id is not updated, we return nil. Note that original input is not modified. func (s GetAccessPointPolicyInput) updateAccountID(accountId string) (interface{}, error) { if s.AccountId == nil { s.AccountId = aws.String(accountId) return &s, nil } else if *s.AccountId != accountId { return &s, fmt.Errorf("Account ID mismatch, the Account ID cannot be specified in an ARN and in the accountId field") } return nil, nil } type GetAccessPointPolicyOutput struct { _ struct{} `type:"structure"` // The access point policy associated with the specified access point. Policy *string `type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetAccessPointPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetAccessPointPolicyOutput) GoString() string { return s.String() } // SetPolicy sets the Policy field's value. func (s *GetAccessPointPolicyOutput) SetPolicy(v string) *GetAccessPointPolicyOutput { s.Policy = &v return s } type GetAccessPointPolicyStatusForObjectLambdaInput struct { _ struct{} `locationName:"GetAccessPointPolicyStatusForObjectLambdaRequest" type:"structure"` // The account ID for the account that owns the specified Object Lambda Access // Point. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // The name of the Object Lambda Access Point. // // Name is a required field Name *string `location:"uri" locationName:"name" min:"3" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetAccessPointPolicyStatusForObjectLambdaInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetAccessPointPolicyStatusForObjectLambdaInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetAccessPointPolicyStatusForObjectLambdaInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetAccessPointPolicyStatusForObjectLambdaInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 3 { invalidParams.Add(request.NewErrParamMinLen("Name", 3)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *GetAccessPointPolicyStatusForObjectLambdaInput) SetAccountId(v string) *GetAccessPointPolicyStatusForObjectLambdaInput { s.AccountId = &v return s } // SetName sets the Name field's value. func (s *GetAccessPointPolicyStatusForObjectLambdaInput) SetName(v string) *GetAccessPointPolicyStatusForObjectLambdaInput { s.Name = &v return s } func (s *GetAccessPointPolicyStatusForObjectLambdaInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } type GetAccessPointPolicyStatusForObjectLambdaOutput struct { _ struct{} `type:"structure"` // Indicates whether this access point policy is public. For more information // about how Amazon S3 evaluates policies to determine whether they are public, // 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) // in the Amazon S3 User Guide. PolicyStatus *PolicyStatus `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetAccessPointPolicyStatusForObjectLambdaOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetAccessPointPolicyStatusForObjectLambdaOutput) GoString() string { return s.String() } // SetPolicyStatus sets the PolicyStatus field's value. func (s *GetAccessPointPolicyStatusForObjectLambdaOutput) SetPolicyStatus(v *PolicyStatus) *GetAccessPointPolicyStatusForObjectLambdaOutput { s.PolicyStatus = v return s } type GetAccessPointPolicyStatusInput struct { _ struct{} `locationName:"GetAccessPointPolicyStatusRequest" type:"structure"` // The account ID for the account that owns the specified access point. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // The name of the access point whose policy status you want to retrieve. // // Name is a required field Name *string `location:"uri" locationName:"name" min:"3" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetAccessPointPolicyStatusInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetAccessPointPolicyStatusInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetAccessPointPolicyStatusInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetAccessPointPolicyStatusInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 3 { invalidParams.Add(request.NewErrParamMinLen("Name", 3)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *GetAccessPointPolicyStatusInput) SetAccountId(v string) *GetAccessPointPolicyStatusInput { s.AccountId = &v return s } // SetName sets the Name field's value. func (s *GetAccessPointPolicyStatusInput) SetName(v string) *GetAccessPointPolicyStatusInput { s.Name = &v return s } func (s *GetAccessPointPolicyStatusInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } type GetAccessPointPolicyStatusOutput struct { _ struct{} `type:"structure"` // Indicates the current policy status of the specified access point. PolicyStatus *PolicyStatus `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetAccessPointPolicyStatusOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetAccessPointPolicyStatusOutput) GoString() string { return s.String() } // SetPolicyStatus sets the PolicyStatus field's value. func (s *GetAccessPointPolicyStatusOutput) SetPolicyStatus(v *PolicyStatus) *GetAccessPointPolicyStatusOutput { s.PolicyStatus = v return s } type GetBucketInput struct { _ struct{} `locationName:"GetBucketRequest" type:"structure"` // The Amazon Web Services account ID of the Outposts bucket. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // Specifies the bucket. // // For using this parameter with Amazon S3 on Outposts with the REST API, you // must specify the name and the x-amz-outpost-id as well. // // For using this parameter with S3 on Outposts with the Amazon Web Services // SDK and CLI, you must specify the ARN of the bucket accessed in the format // arn:aws:s3-outposts:::outpost//bucket/. // For example, to access the bucket reports through Outpost my-outpost owned // by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/bucket/reports. // The value must be URL encoded. // // Bucket is a required field Bucket *string `location:"uri" locationName:"name" min:"3" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetBucketInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetBucketInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetBucketInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetBucketInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if s.Bucket != nil && len(*s.Bucket) < 3 { invalidParams.Add(request.NewErrParamMinLen("Bucket", 3)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *GetBucketInput) SetAccountId(v string) *GetBucketInput { s.AccountId = &v return s } // SetBucket sets the Bucket field's value. func (s *GetBucketInput) SetBucket(v string) *GetBucketInput { s.Bucket = &v return s } func (s *GetBucketInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } func (s *GetBucketInput) getEndpointARN() (arn.Resource, error) { if s.Bucket == nil { return nil, fmt.Errorf("member Bucket is nil") } return parseEndpointARN(*s.Bucket) } func (s *GetBucketInput) hasEndpointARN() bool { if s.Bucket == nil { return false } return arn.IsARN(*s.Bucket) } // updateArnableField updates the value of the input field that // takes an ARN as an input. This method is useful to backfill // the parsed resource name from ARN into the input member. // It returns a pointer to a modified copy of input and an error. // Note that original input is not modified. func (s GetBucketInput) updateArnableField(v string) (interface{}, error) { if s.Bucket == nil { return nil, fmt.Errorf("member Bucket is nil") } s.Bucket = aws.String(v) return &s, nil } // updateAccountID returns a pointer to a modified copy of input, // if account id is not provided, we update the account id in modified input // if account id is provided, but doesn't match with the one in ARN, we throw an error // if account id is not updated, we return nil. Note that original input is not modified. func (s GetBucketInput) updateAccountID(accountId string) (interface{}, error) { if s.AccountId == nil { s.AccountId = aws.String(accountId) return &s, nil } else if *s.AccountId != accountId { return &s, fmt.Errorf("Account ID mismatch, the Account ID cannot be specified in an ARN and in the accountId field") } return nil, nil } type GetBucketLifecycleConfigurationInput struct { _ struct{} `locationName:"GetBucketLifecycleConfigurationRequest" type:"structure"` // The Amazon Web Services account ID of the Outposts bucket. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // The Amazon Resource Name (ARN) of the bucket. // // For using this parameter with Amazon S3 on Outposts with the REST API, you // must specify the name and the x-amz-outpost-id as well. // // For using this parameter with S3 on Outposts with the Amazon Web Services // SDK and CLI, you must specify the ARN of the bucket accessed in the format // arn:aws:s3-outposts:::outpost//bucket/. // For example, to access the bucket reports through Outpost my-outpost owned // by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/bucket/reports. // The value must be URL encoded. // // Bucket is a required field Bucket *string `location:"uri" locationName:"name" min:"3" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetBucketLifecycleConfigurationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetBucketLifecycleConfigurationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetBucketLifecycleConfigurationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetBucketLifecycleConfigurationInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if s.Bucket != nil && len(*s.Bucket) < 3 { invalidParams.Add(request.NewErrParamMinLen("Bucket", 3)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *GetBucketLifecycleConfigurationInput) SetAccountId(v string) *GetBucketLifecycleConfigurationInput { s.AccountId = &v return s } // SetBucket sets the Bucket field's value. func (s *GetBucketLifecycleConfigurationInput) SetBucket(v string) *GetBucketLifecycleConfigurationInput { s.Bucket = &v return s } func (s *GetBucketLifecycleConfigurationInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } func (s *GetBucketLifecycleConfigurationInput) getEndpointARN() (arn.Resource, error) { if s.Bucket == nil { return nil, fmt.Errorf("member Bucket is nil") } return parseEndpointARN(*s.Bucket) } func (s *GetBucketLifecycleConfigurationInput) hasEndpointARN() bool { if s.Bucket == nil { return false } return arn.IsARN(*s.Bucket) } // updateArnableField updates the value of the input field that // takes an ARN as an input. This method is useful to backfill // the parsed resource name from ARN into the input member. // It returns a pointer to a modified copy of input and an error. // Note that original input is not modified. func (s GetBucketLifecycleConfigurationInput) updateArnableField(v string) (interface{}, error) { if s.Bucket == nil { return nil, fmt.Errorf("member Bucket is nil") } s.Bucket = aws.String(v) return &s, nil } // updateAccountID returns a pointer to a modified copy of input, // if account id is not provided, we update the account id in modified input // if account id is provided, but doesn't match with the one in ARN, we throw an error // if account id is not updated, we return nil. Note that original input is not modified. func (s GetBucketLifecycleConfigurationInput) updateAccountID(accountId string) (interface{}, error) { if s.AccountId == nil { s.AccountId = aws.String(accountId) return &s, nil } else if *s.AccountId != accountId { return &s, fmt.Errorf("Account ID mismatch, the Account ID cannot be specified in an ARN and in the accountId field") } return nil, nil } type GetBucketLifecycleConfigurationOutput struct { _ struct{} `type:"structure"` // Container for the lifecycle rule of the Outposts bucket. Rules []*LifecycleRule `locationNameList:"Rule" type:"list"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetBucketLifecycleConfigurationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetBucketLifecycleConfigurationOutput) GoString() string { return s.String() } // SetRules sets the Rules field's value. func (s *GetBucketLifecycleConfigurationOutput) SetRules(v []*LifecycleRule) *GetBucketLifecycleConfigurationOutput { s.Rules = v return s } type GetBucketOutput struct { _ struct{} `type:"structure"` // The Outposts bucket requested. Bucket *string `min:"3" type:"string"` // The creation date of the Outposts bucket. CreationDate *time.Time `type:"timestamp"` PublicAccessBlockEnabled *bool `type:"boolean"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetBucketOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetBucketOutput) GoString() string { return s.String() } // SetBucket sets the Bucket field's value. func (s *GetBucketOutput) SetBucket(v string) *GetBucketOutput { s.Bucket = &v return s } // SetCreationDate sets the CreationDate field's value. func (s *GetBucketOutput) SetCreationDate(v time.Time) *GetBucketOutput { s.CreationDate = &v return s } // SetPublicAccessBlockEnabled sets the PublicAccessBlockEnabled field's value. func (s *GetBucketOutput) SetPublicAccessBlockEnabled(v bool) *GetBucketOutput { s.PublicAccessBlockEnabled = &v return s } type GetBucketPolicyInput struct { _ struct{} `locationName:"GetBucketPolicyRequest" type:"structure"` // The Amazon Web Services account ID of the Outposts bucket. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // Specifies the bucket. // // For using this parameter with Amazon S3 on Outposts with the REST API, you // must specify the name and the x-amz-outpost-id as well. // // For using this parameter with S3 on Outposts with the Amazon Web Services // SDK and CLI, you must specify the ARN of the bucket accessed in the format // arn:aws:s3-outposts:::outpost//bucket/. // For example, to access the bucket reports through Outpost my-outpost owned // by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/bucket/reports. // The value must be URL encoded. // // Bucket is a required field Bucket *string `location:"uri" locationName:"name" min:"3" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetBucketPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetBucketPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetBucketPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetBucketPolicyInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if s.Bucket != nil && len(*s.Bucket) < 3 { invalidParams.Add(request.NewErrParamMinLen("Bucket", 3)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *GetBucketPolicyInput) SetAccountId(v string) *GetBucketPolicyInput { s.AccountId = &v return s } // SetBucket sets the Bucket field's value. func (s *GetBucketPolicyInput) SetBucket(v string) *GetBucketPolicyInput { s.Bucket = &v return s } func (s *GetBucketPolicyInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } func (s *GetBucketPolicyInput) getEndpointARN() (arn.Resource, error) { if s.Bucket == nil { return nil, fmt.Errorf("member Bucket is nil") } return parseEndpointARN(*s.Bucket) } func (s *GetBucketPolicyInput) hasEndpointARN() bool { if s.Bucket == nil { return false } return arn.IsARN(*s.Bucket) } // updateArnableField updates the value of the input field that // takes an ARN as an input. This method is useful to backfill // the parsed resource name from ARN into the input member. // It returns a pointer to a modified copy of input and an error. // Note that original input is not modified. func (s GetBucketPolicyInput) updateArnableField(v string) (interface{}, error) { if s.Bucket == nil { return nil, fmt.Errorf("member Bucket is nil") } s.Bucket = aws.String(v) return &s, nil } // updateAccountID returns a pointer to a modified copy of input, // if account id is not provided, we update the account id in modified input // if account id is provided, but doesn't match with the one in ARN, we throw an error // if account id is not updated, we return nil. Note that original input is not modified. func (s GetBucketPolicyInput) updateAccountID(accountId string) (interface{}, error) { if s.AccountId == nil { s.AccountId = aws.String(accountId) return &s, nil } else if *s.AccountId != accountId { return &s, fmt.Errorf("Account ID mismatch, the Account ID cannot be specified in an ARN and in the accountId field") } return nil, nil } type GetBucketPolicyOutput struct { _ struct{} `type:"structure"` // The policy of the Outposts bucket. Policy *string `type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetBucketPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetBucketPolicyOutput) GoString() string { return s.String() } // SetPolicy sets the Policy field's value. func (s *GetBucketPolicyOutput) SetPolicy(v string) *GetBucketPolicyOutput { s.Policy = &v return s } type GetBucketReplicationInput struct { _ struct{} `locationName:"GetBucketReplicationRequest" type:"structure"` // The Amazon Web Services account ID of the Outposts bucket. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // Specifies the bucket to get the replication information for. // // For using this parameter with Amazon S3 on Outposts with the REST API, you // must specify the name and the x-amz-outpost-id as well. // // For using this parameter with S3 on Outposts with the Amazon Web Services // SDK and CLI, you must specify the ARN of the bucket accessed in the format // arn:aws:s3-outposts:::outpost//bucket/. // For example, to access the bucket reports through Outpost my-outpost owned // by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/bucket/reports. // The value must be URL encoded. // // Bucket is a required field Bucket *string `location:"uri" locationName:"name" min:"3" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetBucketReplicationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetBucketReplicationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetBucketReplicationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetBucketReplicationInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if s.Bucket != nil && len(*s.Bucket) < 3 { invalidParams.Add(request.NewErrParamMinLen("Bucket", 3)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *GetBucketReplicationInput) SetAccountId(v string) *GetBucketReplicationInput { s.AccountId = &v return s } // SetBucket sets the Bucket field's value. func (s *GetBucketReplicationInput) SetBucket(v string) *GetBucketReplicationInput { s.Bucket = &v return s } func (s *GetBucketReplicationInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } func (s *GetBucketReplicationInput) getEndpointARN() (arn.Resource, error) { if s.Bucket == nil { return nil, fmt.Errorf("member Bucket is nil") } return parseEndpointARN(*s.Bucket) } func (s *GetBucketReplicationInput) hasEndpointARN() bool { if s.Bucket == nil { return false } return arn.IsARN(*s.Bucket) } // updateArnableField updates the value of the input field that // takes an ARN as an input. This method is useful to backfill // the parsed resource name from ARN into the input member. // It returns a pointer to a modified copy of input and an error. // Note that original input is not modified. func (s GetBucketReplicationInput) updateArnableField(v string) (interface{}, error) { if s.Bucket == nil { return nil, fmt.Errorf("member Bucket is nil") } s.Bucket = aws.String(v) return &s, nil } // updateAccountID returns a pointer to a modified copy of input, // if account id is not provided, we update the account id in modified input // if account id is provided, but doesn't match with the one in ARN, we throw an error // if account id is not updated, we return nil. Note that original input is not modified. func (s GetBucketReplicationInput) updateAccountID(accountId string) (interface{}, error) { if s.AccountId == nil { s.AccountId = aws.String(accountId) return &s, nil } else if *s.AccountId != accountId { return &s, fmt.Errorf("Account ID mismatch, the Account ID cannot be specified in an ARN and in the accountId field") } return nil, nil } type GetBucketReplicationOutput struct { _ struct{} `type:"structure"` // A container for one or more replication rules. A replication configuration // must have at least one rule and you can add up to 100 rules. The maximum // size of a replication configuration is 128 KB. ReplicationConfiguration *ReplicationConfiguration `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetBucketReplicationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetBucketReplicationOutput) GoString() string { return s.String() } // SetReplicationConfiguration sets the ReplicationConfiguration field's value. func (s *GetBucketReplicationOutput) SetReplicationConfiguration(v *ReplicationConfiguration) *GetBucketReplicationOutput { s.ReplicationConfiguration = v return s } type GetBucketTaggingInput struct { _ struct{} `locationName:"GetBucketTaggingRequest" type:"structure"` // The Amazon Web Services account ID of the Outposts bucket. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // Specifies the bucket. // // For using this parameter with Amazon S3 on Outposts with the REST API, you // must specify the name and the x-amz-outpost-id as well. // // For using this parameter with S3 on Outposts with the Amazon Web Services // SDK and CLI, you must specify the ARN of the bucket accessed in the format // arn:aws:s3-outposts:::outpost//bucket/. // For example, to access the bucket reports through Outpost my-outpost owned // by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/bucket/reports. // The value must be URL encoded. // // Bucket is a required field Bucket *string `location:"uri" locationName:"name" min:"3" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetBucketTaggingInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetBucketTaggingInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetBucketTaggingInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetBucketTaggingInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if s.Bucket != nil && len(*s.Bucket) < 3 { invalidParams.Add(request.NewErrParamMinLen("Bucket", 3)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *GetBucketTaggingInput) SetAccountId(v string) *GetBucketTaggingInput { s.AccountId = &v return s } // SetBucket sets the Bucket field's value. func (s *GetBucketTaggingInput) SetBucket(v string) *GetBucketTaggingInput { s.Bucket = &v return s } func (s *GetBucketTaggingInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } func (s *GetBucketTaggingInput) getEndpointARN() (arn.Resource, error) { if s.Bucket == nil { return nil, fmt.Errorf("member Bucket is nil") } return parseEndpointARN(*s.Bucket) } func (s *GetBucketTaggingInput) hasEndpointARN() bool { if s.Bucket == nil { return false } return arn.IsARN(*s.Bucket) } // updateArnableField updates the value of the input field that // takes an ARN as an input. This method is useful to backfill // the parsed resource name from ARN into the input member. // It returns a pointer to a modified copy of input and an error. // Note that original input is not modified. func (s GetBucketTaggingInput) updateArnableField(v string) (interface{}, error) { if s.Bucket == nil { return nil, fmt.Errorf("member Bucket is nil") } s.Bucket = aws.String(v) return &s, nil } // updateAccountID returns a pointer to a modified copy of input, // if account id is not provided, we update the account id in modified input // if account id is provided, but doesn't match with the one in ARN, we throw an error // if account id is not updated, we return nil. Note that original input is not modified. func (s GetBucketTaggingInput) updateAccountID(accountId string) (interface{}, error) { if s.AccountId == nil { s.AccountId = aws.String(accountId) return &s, nil } else if *s.AccountId != accountId { return &s, fmt.Errorf("Account ID mismatch, the Account ID cannot be specified in an ARN and in the accountId field") } return nil, nil } type GetBucketTaggingOutput struct { _ struct{} `type:"structure"` // The tags set of the Outposts bucket. // // TagSet is a required field TagSet []*S3Tag `type:"list" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetBucketTaggingOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetBucketTaggingOutput) GoString() string { return s.String() } // SetTagSet sets the TagSet field's value. func (s *GetBucketTaggingOutput) SetTagSet(v []*S3Tag) *GetBucketTaggingOutput { s.TagSet = v return s } type GetBucketVersioningInput struct { _ struct{} `locationName:"GetBucketVersioningRequest" type:"structure"` // The Amazon Web Services account ID of the S3 on Outposts bucket. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // The S3 on Outposts bucket to return the versioning state for. // // Bucket is a required field Bucket *string `location:"uri" locationName:"name" min:"3" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetBucketVersioningInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetBucketVersioningInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetBucketVersioningInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetBucketVersioningInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if s.Bucket != nil && len(*s.Bucket) < 3 { invalidParams.Add(request.NewErrParamMinLen("Bucket", 3)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *GetBucketVersioningInput) SetAccountId(v string) *GetBucketVersioningInput { s.AccountId = &v return s } // SetBucket sets the Bucket field's value. func (s *GetBucketVersioningInput) SetBucket(v string) *GetBucketVersioningInput { s.Bucket = &v return s } func (s *GetBucketVersioningInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } func (s *GetBucketVersioningInput) getEndpointARN() (arn.Resource, error) { if s.Bucket == nil { return nil, fmt.Errorf("member Bucket is nil") } return parseEndpointARN(*s.Bucket) } func (s *GetBucketVersioningInput) hasEndpointARN() bool { if s.Bucket == nil { return false } return arn.IsARN(*s.Bucket) } // updateArnableField updates the value of the input field that // takes an ARN as an input. This method is useful to backfill // the parsed resource name from ARN into the input member. // It returns a pointer to a modified copy of input and an error. // Note that original input is not modified. func (s GetBucketVersioningInput) updateArnableField(v string) (interface{}, error) { if s.Bucket == nil { return nil, fmt.Errorf("member Bucket is nil") } s.Bucket = aws.String(v) return &s, nil } // updateAccountID returns a pointer to a modified copy of input, // if account id is not provided, we update the account id in modified input // if account id is provided, but doesn't match with the one in ARN, we throw an error // if account id is not updated, we return nil. Note that original input is not modified. func (s GetBucketVersioningInput) updateAccountID(accountId string) (interface{}, error) { if s.AccountId == nil { s.AccountId = aws.String(accountId) return &s, nil } else if *s.AccountId != accountId { return &s, fmt.Errorf("Account ID mismatch, the Account ID cannot be specified in an ARN and in the accountId field") } return nil, nil } type GetBucketVersioningOutput struct { _ struct{} `type:"structure"` // Specifies whether MFA delete is enabled in the bucket versioning configuration. // This element is returned only if the bucket has been configured with MFA // delete. If MFA delete has never been configured for the bucket, this element // is not returned. MFADelete *string `locationName:"MfaDelete" type:"string" enum:"MFADeleteStatus"` // The versioning state of the S3 on Outposts bucket. Status *string `type:"string" enum:"BucketVersioningStatus"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetBucketVersioningOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetBucketVersioningOutput) GoString() string { return s.String() } // SetMFADelete sets the MFADelete field's value. func (s *GetBucketVersioningOutput) SetMFADelete(v string) *GetBucketVersioningOutput { s.MFADelete = &v return s } // SetStatus sets the Status field's value. func (s *GetBucketVersioningOutput) SetStatus(v string) *GetBucketVersioningOutput { s.Status = &v return s } type GetJobTaggingInput struct { _ struct{} `locationName:"GetJobTaggingRequest" type:"structure"` // The Amazon Web Services account ID associated with the S3 Batch Operations // job. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // The ID for the S3 Batch Operations job whose tags you want to retrieve. // // JobId is a required field JobId *string `location:"uri" locationName:"id" min:"5" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetJobTaggingInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetJobTaggingInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetJobTaggingInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetJobTaggingInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.JobId == nil { invalidParams.Add(request.NewErrParamRequired("JobId")) } if s.JobId != nil && len(*s.JobId) < 5 { invalidParams.Add(request.NewErrParamMinLen("JobId", 5)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *GetJobTaggingInput) SetAccountId(v string) *GetJobTaggingInput { s.AccountId = &v return s } // SetJobId sets the JobId field's value. func (s *GetJobTaggingInput) SetJobId(v string) *GetJobTaggingInput { s.JobId = &v return s } func (s *GetJobTaggingInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } type GetJobTaggingOutput struct { _ struct{} `type:"structure"` // The set of tags associated with the S3 Batch Operations job. Tags []*S3Tag `type:"list"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetJobTaggingOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetJobTaggingOutput) GoString() string { return s.String() } // SetTags sets the Tags field's value. func (s *GetJobTaggingOutput) SetTags(v []*S3Tag) *GetJobTaggingOutput { s.Tags = v return s } type GetMultiRegionAccessPointInput struct { _ struct{} `locationName:"GetMultiRegionAccessPointRequest" type:"structure"` // The Amazon Web Services account ID for the owner of the Multi-Region Access // Point. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // The name of the Multi-Region Access Point whose configuration information // you want to receive. The name of the Multi-Region Access Point is different // from the alias. For more information about the distinction between the name // and the alias of an Multi-Region Access Point, see Managing Multi-Region // Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/CreatingMultiRegionAccessPoints.html#multi-region-access-point-naming) // in the Amazon S3 User Guide. // // Name is a required field Name *string `location:"uri" locationName:"name" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetMultiRegionAccessPointInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetMultiRegionAccessPointInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetMultiRegionAccessPointInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetMultiRegionAccessPointInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *GetMultiRegionAccessPointInput) SetAccountId(v string) *GetMultiRegionAccessPointInput { s.AccountId = &v return s } // SetName sets the Name field's value. func (s *GetMultiRegionAccessPointInput) SetName(v string) *GetMultiRegionAccessPointInput { s.Name = &v return s } func (s *GetMultiRegionAccessPointInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } type GetMultiRegionAccessPointOutput struct { _ struct{} `type:"structure"` // A container element containing the details of the requested Multi-Region // Access Point. AccessPoint *MultiRegionAccessPointReport `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetMultiRegionAccessPointOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetMultiRegionAccessPointOutput) GoString() string { return s.String() } // SetAccessPoint sets the AccessPoint field's value. func (s *GetMultiRegionAccessPointOutput) SetAccessPoint(v *MultiRegionAccessPointReport) *GetMultiRegionAccessPointOutput { s.AccessPoint = v return s } type GetMultiRegionAccessPointPolicyInput struct { _ struct{} `locationName:"GetMultiRegionAccessPointPolicyRequest" type:"structure"` // The Amazon Web Services account ID for the owner of the Multi-Region Access // Point. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // Specifies the Multi-Region Access Point. The name of the Multi-Region Access // Point is different from the alias. For more information about the distinction // between the name and the alias of an Multi-Region Access Point, see Managing // Multi-Region Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/CreatingMultiRegionAccessPoints.html#multi-region-access-point-naming) // in the Amazon S3 User Guide. // // Name is a required field Name *string `location:"uri" locationName:"name" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetMultiRegionAccessPointPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetMultiRegionAccessPointPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetMultiRegionAccessPointPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetMultiRegionAccessPointPolicyInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *GetMultiRegionAccessPointPolicyInput) SetAccountId(v string) *GetMultiRegionAccessPointPolicyInput { s.AccountId = &v return s } // SetName sets the Name field's value. func (s *GetMultiRegionAccessPointPolicyInput) SetName(v string) *GetMultiRegionAccessPointPolicyInput { s.Name = &v return s } func (s *GetMultiRegionAccessPointPolicyInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } type GetMultiRegionAccessPointPolicyOutput struct { _ struct{} `type:"structure"` // The policy associated with the specified Multi-Region Access Point. Policy *MultiRegionAccessPointPolicyDocument `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetMultiRegionAccessPointPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetMultiRegionAccessPointPolicyOutput) GoString() string { return s.String() } // SetPolicy sets the Policy field's value. func (s *GetMultiRegionAccessPointPolicyOutput) SetPolicy(v *MultiRegionAccessPointPolicyDocument) *GetMultiRegionAccessPointPolicyOutput { s.Policy = v return s } type GetMultiRegionAccessPointPolicyStatusInput struct { _ struct{} `locationName:"GetMultiRegionAccessPointPolicyStatusRequest" type:"structure"` // The Amazon Web Services account ID for the owner of the Multi-Region Access // Point. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // Specifies the Multi-Region Access Point. The name of the Multi-Region Access // Point is different from the alias. For more information about the distinction // between the name and the alias of an Multi-Region Access Point, see Managing // Multi-Region Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/CreatingMultiRegionAccessPoints.html#multi-region-access-point-naming) // in the Amazon S3 User Guide. // // Name is a required field Name *string `location:"uri" locationName:"name" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetMultiRegionAccessPointPolicyStatusInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetMultiRegionAccessPointPolicyStatusInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetMultiRegionAccessPointPolicyStatusInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetMultiRegionAccessPointPolicyStatusInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *GetMultiRegionAccessPointPolicyStatusInput) SetAccountId(v string) *GetMultiRegionAccessPointPolicyStatusInput { s.AccountId = &v return s } // SetName sets the Name field's value. func (s *GetMultiRegionAccessPointPolicyStatusInput) SetName(v string) *GetMultiRegionAccessPointPolicyStatusInput { s.Name = &v return s } func (s *GetMultiRegionAccessPointPolicyStatusInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } type GetMultiRegionAccessPointPolicyStatusOutput struct { _ struct{} `type:"structure"` // Indicates whether this access point policy is public. For more information // about how Amazon S3 evaluates policies to determine whether they are public, // 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) // in the Amazon S3 User Guide. Established *PolicyStatus `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetMultiRegionAccessPointPolicyStatusOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetMultiRegionAccessPointPolicyStatusOutput) GoString() string { return s.String() } // SetEstablished sets the Established field's value. func (s *GetMultiRegionAccessPointPolicyStatusOutput) SetEstablished(v *PolicyStatus) *GetMultiRegionAccessPointPolicyStatusOutput { s.Established = v return s } type GetMultiRegionAccessPointRoutesInput struct { _ struct{} `locationName:"GetMultiRegionAccessPointRoutesRequest" type:"structure"` // The Amazon Web Services account ID for the owner of the Multi-Region Access // Point. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // The Multi-Region Access Point ARN. // // Mrap is a required field Mrap *string `location:"uri" locationName:"mrap" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetMultiRegionAccessPointRoutesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetMultiRegionAccessPointRoutesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetMultiRegionAccessPointRoutesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetMultiRegionAccessPointRoutesInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.Mrap == nil { invalidParams.Add(request.NewErrParamRequired("Mrap")) } if s.Mrap != nil && len(*s.Mrap) < 1 { invalidParams.Add(request.NewErrParamMinLen("Mrap", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *GetMultiRegionAccessPointRoutesInput) SetAccountId(v string) *GetMultiRegionAccessPointRoutesInput { s.AccountId = &v return s } // SetMrap sets the Mrap field's value. func (s *GetMultiRegionAccessPointRoutesInput) SetMrap(v string) *GetMultiRegionAccessPointRoutesInput { s.Mrap = &v return s } func (s *GetMultiRegionAccessPointRoutesInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } type GetMultiRegionAccessPointRoutesOutput struct { _ struct{} `type:"structure"` // The Multi-Region Access Point ARN. Mrap *string `type:"string"` // The different routes that make up the route configuration. Active routes // return a value of 100, and passive routes return a value of 0. Routes []*MultiRegionAccessPointRoute `locationNameList:"Route" type:"list"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetMultiRegionAccessPointRoutesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetMultiRegionAccessPointRoutesOutput) GoString() string { return s.String() } // SetMrap sets the Mrap field's value. func (s *GetMultiRegionAccessPointRoutesOutput) SetMrap(v string) *GetMultiRegionAccessPointRoutesOutput { s.Mrap = &v return s } // SetRoutes sets the Routes field's value. func (s *GetMultiRegionAccessPointRoutesOutput) SetRoutes(v []*MultiRegionAccessPointRoute) *GetMultiRegionAccessPointRoutesOutput { s.Routes = v return s } type GetPublicAccessBlockInput struct { _ struct{} `locationName:"GetPublicAccessBlockRequest" type:"structure"` // The account ID for the Amazon Web Services account whose PublicAccessBlock // configuration you want to retrieve. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetPublicAccessBlockInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetPublicAccessBlockInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetPublicAccessBlockInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetPublicAccessBlockInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *GetPublicAccessBlockInput) SetAccountId(v string) *GetPublicAccessBlockInput { s.AccountId = &v return s } func (s *GetPublicAccessBlockInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } type GetPublicAccessBlockOutput struct { _ struct{} `type:"structure" payload:"PublicAccessBlockConfiguration"` // The PublicAccessBlock configuration currently in effect for this Amazon Web // Services account. PublicAccessBlockConfiguration *PublicAccessBlockConfiguration `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetPublicAccessBlockOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetPublicAccessBlockOutput) GoString() string { return s.String() } // SetPublicAccessBlockConfiguration sets the PublicAccessBlockConfiguration field's value. func (s *GetPublicAccessBlockOutput) SetPublicAccessBlockConfiguration(v *PublicAccessBlockConfiguration) *GetPublicAccessBlockOutput { s.PublicAccessBlockConfiguration = v return s } type GetStorageLensConfigurationInput struct { _ struct{} `locationName:"GetStorageLensConfigurationRequest" type:"structure"` // The account ID of the requester. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // The ID of the Amazon S3 Storage Lens configuration. // // ConfigId is a required field ConfigId *string `location:"uri" locationName:"storagelensid" min:"1" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetStorageLensConfigurationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetStorageLensConfigurationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetStorageLensConfigurationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetStorageLensConfigurationInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.ConfigId == nil { invalidParams.Add(request.NewErrParamRequired("ConfigId")) } if s.ConfigId != nil && len(*s.ConfigId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ConfigId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *GetStorageLensConfigurationInput) SetAccountId(v string) *GetStorageLensConfigurationInput { s.AccountId = &v return s } // SetConfigId sets the ConfigId field's value. func (s *GetStorageLensConfigurationInput) SetConfigId(v string) *GetStorageLensConfigurationInput { s.ConfigId = &v return s } func (s *GetStorageLensConfigurationInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } type GetStorageLensConfigurationOutput struct { _ struct{} `type:"structure" payload:"StorageLensConfiguration"` // The S3 Storage Lens configuration requested. StorageLensConfiguration *StorageLensConfiguration `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetStorageLensConfigurationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetStorageLensConfigurationOutput) GoString() string { return s.String() } // SetStorageLensConfiguration sets the StorageLensConfiguration field's value. func (s *GetStorageLensConfigurationOutput) SetStorageLensConfiguration(v *StorageLensConfiguration) *GetStorageLensConfigurationOutput { s.StorageLensConfiguration = v return s } type GetStorageLensConfigurationTaggingInput struct { _ struct{} `locationName:"GetStorageLensConfigurationTaggingRequest" type:"structure"` // The account ID of the requester. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // The ID of the Amazon S3 Storage Lens configuration. // // ConfigId is a required field ConfigId *string `location:"uri" locationName:"storagelensid" min:"1" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetStorageLensConfigurationTaggingInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetStorageLensConfigurationTaggingInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetStorageLensConfigurationTaggingInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetStorageLensConfigurationTaggingInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.ConfigId == nil { invalidParams.Add(request.NewErrParamRequired("ConfigId")) } if s.ConfigId != nil && len(*s.ConfigId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ConfigId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *GetStorageLensConfigurationTaggingInput) SetAccountId(v string) *GetStorageLensConfigurationTaggingInput { s.AccountId = &v return s } // SetConfigId sets the ConfigId field's value. func (s *GetStorageLensConfigurationTaggingInput) SetConfigId(v string) *GetStorageLensConfigurationTaggingInput { s.ConfigId = &v return s } func (s *GetStorageLensConfigurationTaggingInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } type GetStorageLensConfigurationTaggingOutput struct { _ struct{} `type:"structure"` // The tags of S3 Storage Lens configuration requested. Tags []*StorageLensTag `locationNameList:"Tag" type:"list"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetStorageLensConfigurationTaggingOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetStorageLensConfigurationTaggingOutput) GoString() string { return s.String() } // SetTags sets the Tags field's value. func (s *GetStorageLensConfigurationTaggingOutput) SetTags(v []*StorageLensTag) *GetStorageLensConfigurationTaggingOutput { s.Tags = v return s } // A container for what Amazon S3 Storage Lens configuration includes. type Include struct { _ struct{} `type:"structure"` // A container for the S3 Storage Lens bucket includes. Buckets []*string `locationNameList:"Arn" type:"list"` // A container for the S3 Storage Lens Region includes. Regions []*string `locationNameList:"Region" type:"list"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s Include) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s Include) GoString() string { return s.String() } // SetBuckets sets the Buckets field's value. func (s *Include) SetBuckets(v []*string) *Include { s.Buckets = v return s } // SetRegions sets the Regions field's value. func (s *Include) SetRegions(v []*string) *Include { s.Regions = v return s } // A container element for the job configuration and status information returned // by a Describe Job request. type JobDescriptor struct { _ struct{} `type:"structure"` // Indicates whether confirmation is required before Amazon S3 begins running // the specified job. Confirmation is required only for jobs created through // the Amazon S3 console. ConfirmationRequired *bool `type:"boolean"` // A timestamp indicating when this job was created. CreationTime *time.Time `type:"timestamp"` // The description for this job, if one was provided in this job's Create Job // request. Description *string `min:"1" type:"string"` // If the specified job failed, this field contains information describing the // failure. FailureReasons []*JobFailure `type:"list"` // The attribute of the JobDescriptor containing details about the job's generated // manifest. GeneratedManifestDescriptor *S3GeneratedManifestDescriptor `type:"structure"` // The Amazon Resource Name (ARN) for this job. JobArn *string `min:"1" type:"string"` // The ID for the specified job. JobId *string `min:"5" type:"string"` // The configuration information for the specified job's manifest object. Manifest *JobManifest `type:"structure"` // The manifest generator that was used to generate a job manifest for this // job. ManifestGenerator *JobManifestGenerator `type:"structure"` // The operation that the specified job is configured to run on the objects // listed in the manifest. Operation *JobOperation `type:"structure"` // The priority of the specified job. Priority *int64 `type:"integer"` // Describes the total number of tasks that the specified job has run, the number // of tasks that succeeded, and the number of tasks that failed. ProgressSummary *JobProgressSummary `type:"structure"` // Contains the configuration information for the job-completion report if you // requested one in the Create Job request. Report *JobReport `type:"structure"` // The Amazon Resource Name (ARN) for the Identity and Access Management (IAM) // role assigned to run the tasks for this job. RoleArn *string `min:"1" type:"string"` // The current status of the specified job. Status *string `type:"string" enum:"JobStatus"` // The reason for updating the job. StatusUpdateReason *string `min:"1" type:"string"` // The reason why the specified job was suspended. A job is only suspended if // you create it through the Amazon S3 console. When you create the job, it // enters the Suspended state to await confirmation before running. After you // confirm the job, it automatically exits the Suspended state. SuspendedCause *string `min:"1" type:"string"` // The timestamp when this job was suspended, if it has been suspended. SuspendedDate *time.Time `type:"timestamp"` // A timestamp indicating when this job terminated. A job's termination date // is the date and time when it succeeded, failed, or was canceled. TerminationDate *time.Time `type:"timestamp"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s JobDescriptor) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s JobDescriptor) GoString() string { return s.String() } // SetConfirmationRequired sets the ConfirmationRequired field's value. func (s *JobDescriptor) SetConfirmationRequired(v bool) *JobDescriptor { s.ConfirmationRequired = &v return s } // SetCreationTime sets the CreationTime field's value. func (s *JobDescriptor) SetCreationTime(v time.Time) *JobDescriptor { s.CreationTime = &v return s } // SetDescription sets the Description field's value. func (s *JobDescriptor) SetDescription(v string) *JobDescriptor { s.Description = &v return s } // SetFailureReasons sets the FailureReasons field's value. func (s *JobDescriptor) SetFailureReasons(v []*JobFailure) *JobDescriptor { s.FailureReasons = v return s } // SetGeneratedManifestDescriptor sets the GeneratedManifestDescriptor field's value. func (s *JobDescriptor) SetGeneratedManifestDescriptor(v *S3GeneratedManifestDescriptor) *JobDescriptor { s.GeneratedManifestDescriptor = v return s } // SetJobArn sets the JobArn field's value. func (s *JobDescriptor) SetJobArn(v string) *JobDescriptor { s.JobArn = &v return s } // SetJobId sets the JobId field's value. func (s *JobDescriptor) SetJobId(v string) *JobDescriptor { s.JobId = &v return s } // SetManifest sets the Manifest field's value. func (s *JobDescriptor) SetManifest(v *JobManifest) *JobDescriptor { s.Manifest = v return s } // SetManifestGenerator sets the ManifestGenerator field's value. func (s *JobDescriptor) SetManifestGenerator(v *JobManifestGenerator) *JobDescriptor { s.ManifestGenerator = v return s } // SetOperation sets the Operation field's value. func (s *JobDescriptor) SetOperation(v *JobOperation) *JobDescriptor { s.Operation = v return s } // SetPriority sets the Priority field's value. func (s *JobDescriptor) SetPriority(v int64) *JobDescriptor { s.Priority = &v return s } // SetProgressSummary sets the ProgressSummary field's value. func (s *JobDescriptor) SetProgressSummary(v *JobProgressSummary) *JobDescriptor { s.ProgressSummary = v return s } // SetReport sets the Report field's value. func (s *JobDescriptor) SetReport(v *JobReport) *JobDescriptor { s.Report = v return s } // SetRoleArn sets the RoleArn field's value. func (s *JobDescriptor) SetRoleArn(v string) *JobDescriptor { s.RoleArn = &v return s } // SetStatus sets the Status field's value. func (s *JobDescriptor) SetStatus(v string) *JobDescriptor { s.Status = &v return s } // SetStatusUpdateReason sets the StatusUpdateReason field's value. func (s *JobDescriptor) SetStatusUpdateReason(v string) *JobDescriptor { s.StatusUpdateReason = &v return s } // SetSuspendedCause sets the SuspendedCause field's value. func (s *JobDescriptor) SetSuspendedCause(v string) *JobDescriptor { s.SuspendedCause = &v return s } // SetSuspendedDate sets the SuspendedDate field's value. func (s *JobDescriptor) SetSuspendedDate(v time.Time) *JobDescriptor { s.SuspendedDate = &v return s } // SetTerminationDate sets the TerminationDate field's value. func (s *JobDescriptor) SetTerminationDate(v time.Time) *JobDescriptor { s.TerminationDate = &v return s } // If this job failed, this element indicates why the job failed. type JobFailure struct { _ struct{} `type:"structure"` // The failure code, if any, for the specified job. FailureCode *string `min:"1" type:"string"` // The failure reason, if any, for the specified job. FailureReason *string `min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s JobFailure) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s JobFailure) GoString() string { return s.String() } // SetFailureCode sets the FailureCode field's value. func (s *JobFailure) SetFailureCode(v string) *JobFailure { s.FailureCode = &v return s } // SetFailureReason sets the FailureReason field's value. func (s *JobFailure) SetFailureReason(v string) *JobFailure { s.FailureReason = &v return s } // Contains the configuration and status information for a single job retrieved // as part of a job list. type JobListDescriptor struct { _ struct{} `type:"structure"` // A timestamp indicating when the specified job was created. CreationTime *time.Time `type:"timestamp"` // The user-specified description that was included in the specified job's Create // Job request. Description *string `min:"1" type:"string"` // The ID for the specified job. JobId *string `min:"5" type:"string"` // The operation that the specified job is configured to run on every object // listed in the manifest. Operation *string `type:"string" enum:"OperationName"` // The current priority for the specified job. Priority *int64 `type:"integer"` // Describes the total number of tasks that the specified job has run, the number // of tasks that succeeded, and the number of tasks that failed. ProgressSummary *JobProgressSummary `type:"structure"` // The specified job's current status. Status *string `type:"string" enum:"JobStatus"` // A timestamp indicating when the specified job terminated. A job's termination // date is the date and time when it succeeded, failed, or was canceled. TerminationDate *time.Time `type:"timestamp"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s JobListDescriptor) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s JobListDescriptor) GoString() string { return s.String() } // SetCreationTime sets the CreationTime field's value. func (s *JobListDescriptor) SetCreationTime(v time.Time) *JobListDescriptor { s.CreationTime = &v return s } // SetDescription sets the Description field's value. func (s *JobListDescriptor) SetDescription(v string) *JobListDescriptor { s.Description = &v return s } // SetJobId sets the JobId field's value. func (s *JobListDescriptor) SetJobId(v string) *JobListDescriptor { s.JobId = &v return s } // SetOperation sets the Operation field's value. func (s *JobListDescriptor) SetOperation(v string) *JobListDescriptor { s.Operation = &v return s } // SetPriority sets the Priority field's value. func (s *JobListDescriptor) SetPriority(v int64) *JobListDescriptor { s.Priority = &v return s } // SetProgressSummary sets the ProgressSummary field's value. func (s *JobListDescriptor) SetProgressSummary(v *JobProgressSummary) *JobListDescriptor { s.ProgressSummary = v return s } // SetStatus sets the Status field's value. func (s *JobListDescriptor) SetStatus(v string) *JobListDescriptor { s.Status = &v return s } // SetTerminationDate sets the TerminationDate field's value. func (s *JobListDescriptor) SetTerminationDate(v time.Time) *JobListDescriptor { s.TerminationDate = &v return s } // Contains the configuration information for a job's manifest. type JobManifest struct { _ struct{} `type:"structure"` // Contains the information required to locate the specified job's manifest. // // Location is a required field Location *JobManifestLocation `type:"structure" required:"true"` // Describes the format of the specified job's manifest. If the manifest is // in CSV format, also describes the columns contained within the manifest. // // Spec is a required field Spec *JobManifestSpec `type:"structure" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s JobManifest) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s JobManifest) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *JobManifest) Validate() error { invalidParams := request.ErrInvalidParams{Context: "JobManifest"} if s.Location == nil { invalidParams.Add(request.NewErrParamRequired("Location")) } if s.Spec == nil { invalidParams.Add(request.NewErrParamRequired("Spec")) } if s.Location != nil { if err := s.Location.Validate(); err != nil { invalidParams.AddNested("Location", err.(request.ErrInvalidParams)) } } if s.Spec != nil { if err := s.Spec.Validate(); err != nil { invalidParams.AddNested("Spec", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetLocation sets the Location field's value. func (s *JobManifest) SetLocation(v *JobManifestLocation) *JobManifest { s.Location = v return s } // SetSpec sets the Spec field's value. func (s *JobManifest) SetSpec(v *JobManifestSpec) *JobManifest { s.Spec = v return s } // Configures the type of the job's ManifestGenerator. type JobManifestGenerator struct { _ struct{} `type:"structure"` // The S3 job ManifestGenerator's configuration details. S3JobManifestGenerator *S3JobManifestGenerator `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s JobManifestGenerator) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s JobManifestGenerator) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *JobManifestGenerator) Validate() error { invalidParams := request.ErrInvalidParams{Context: "JobManifestGenerator"} if s.S3JobManifestGenerator != nil { if err := s.S3JobManifestGenerator.Validate(); err != nil { invalidParams.AddNested("S3JobManifestGenerator", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetS3JobManifestGenerator sets the S3JobManifestGenerator field's value. func (s *JobManifestGenerator) SetS3JobManifestGenerator(v *S3JobManifestGenerator) *JobManifestGenerator { s.S3JobManifestGenerator = v return s } // The filter used to describe a set of objects for the job's manifest. type JobManifestGeneratorFilter struct { _ struct{} `type:"structure"` // If provided, the generated manifest should include only source bucket objects // that were created after this time. CreatedAfter *time.Time `type:"timestamp"` // If provided, the generated manifest should include only source bucket objects // that were created before this time. CreatedBefore *time.Time `type:"timestamp"` // Include objects in the generated manifest only if they are eligible for replication // according to the Replication configuration on the source bucket. EligibleForReplication *bool `type:"boolean"` // If provided, the generated manifest should include only source bucket objects // that have one of the specified Replication statuses. ObjectReplicationStatuses []*string `type:"list" enum:"ReplicationStatus"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s JobManifestGeneratorFilter) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s JobManifestGeneratorFilter) GoString() string { return s.String() } // SetCreatedAfter sets the CreatedAfter field's value. func (s *JobManifestGeneratorFilter) SetCreatedAfter(v time.Time) *JobManifestGeneratorFilter { s.CreatedAfter = &v return s } // SetCreatedBefore sets the CreatedBefore field's value. func (s *JobManifestGeneratorFilter) SetCreatedBefore(v time.Time) *JobManifestGeneratorFilter { s.CreatedBefore = &v return s } // SetEligibleForReplication sets the EligibleForReplication field's value. func (s *JobManifestGeneratorFilter) SetEligibleForReplication(v bool) *JobManifestGeneratorFilter { s.EligibleForReplication = &v return s } // SetObjectReplicationStatuses sets the ObjectReplicationStatuses field's value. func (s *JobManifestGeneratorFilter) SetObjectReplicationStatuses(v []*string) *JobManifestGeneratorFilter { s.ObjectReplicationStatuses = v return s } // Contains the information required to locate a manifest object. type JobManifestLocation struct { _ struct{} `type:"structure"` // The ETag for the specified manifest object. // // ETag is a required field ETag *string `min:"1" type:"string" required:"true"` // The Amazon Resource Name (ARN) for a manifest object. // // When you're using XML requests, you must replace special characters (such // as carriage returns) in object keys with their equivalent XML entity codes. // For more information, see XML-related object key constraints (https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints) // in the Amazon S3 User Guide. // // ObjectArn is a required field ObjectArn *string `min:"1" type:"string" required:"true"` // The optional version ID to identify a specific version of the manifest object. ObjectVersionId *string `min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s JobManifestLocation) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s JobManifestLocation) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *JobManifestLocation) Validate() error { invalidParams := request.ErrInvalidParams{Context: "JobManifestLocation"} if s.ETag == nil { invalidParams.Add(request.NewErrParamRequired("ETag")) } if s.ETag != nil && len(*s.ETag) < 1 { invalidParams.Add(request.NewErrParamMinLen("ETag", 1)) } if s.ObjectArn == nil { invalidParams.Add(request.NewErrParamRequired("ObjectArn")) } if s.ObjectArn != nil && len(*s.ObjectArn) < 1 { invalidParams.Add(request.NewErrParamMinLen("ObjectArn", 1)) } if s.ObjectVersionId != nil && len(*s.ObjectVersionId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ObjectVersionId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetETag sets the ETag field's value. func (s *JobManifestLocation) SetETag(v string) *JobManifestLocation { s.ETag = &v return s } // SetObjectArn sets the ObjectArn field's value. func (s *JobManifestLocation) SetObjectArn(v string) *JobManifestLocation { s.ObjectArn = &v return s } // SetObjectVersionId sets the ObjectVersionId field's value. func (s *JobManifestLocation) SetObjectVersionId(v string) *JobManifestLocation { s.ObjectVersionId = &v return s } // Describes the format of a manifest. If the manifest is in CSV format, also // describes the columns contained within the manifest. type JobManifestSpec struct { _ struct{} `type:"structure"` // If the specified manifest object is in the S3BatchOperations_CSV_20180820 // format, this element describes which columns contain the required data. Fields []*string `type:"list" enum:"JobManifestFieldName"` // Indicates which of the available formats the specified manifest uses. // // Format is a required field Format *string `type:"string" required:"true" enum:"JobManifestFormat"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s JobManifestSpec) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s JobManifestSpec) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *JobManifestSpec) Validate() error { invalidParams := request.ErrInvalidParams{Context: "JobManifestSpec"} if s.Format == nil { invalidParams.Add(request.NewErrParamRequired("Format")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetFields sets the Fields field's value. func (s *JobManifestSpec) SetFields(v []*string) *JobManifestSpec { s.Fields = v return s } // SetFormat sets the Format field's value. func (s *JobManifestSpec) SetFormat(v string) *JobManifestSpec { s.Format = &v return s } // The operation that you want this job to perform on every object listed in // the manifest. For more information about the available operations, see Operations // (https://docs.aws.amazon.com/AmazonS3/latest/dev/batch-ops-operations.html) // in the Amazon S3 User Guide. type JobOperation struct { _ struct{} `type:"structure"` // Directs the specified job to invoke an Lambda function on every object in // the manifest. LambdaInvoke *LambdaInvokeOperation `type:"structure"` // Directs the specified job to execute a DELETE Object tagging call on every // object in the manifest. S3DeleteObjectTagging *S3DeleteObjectTaggingOperation `type:"structure"` // Directs the specified job to initiate restore requests for every archived // object in the manifest. S3InitiateRestoreObject *S3InitiateRestoreObjectOperation `type:"structure"` // Directs the specified job to run a PutObjectAcl call on every object in the // manifest. S3PutObjectAcl *S3SetObjectAclOperation `type:"structure"` // Directs the specified job to run a PUT Copy object call on every object in // the manifest. S3PutObjectCopy *S3CopyObjectOperation `type:"structure"` // Contains the configuration for an S3 Object Lock legal hold operation that // an S3 Batch Operations job passes to every object to the underlying PutObjectLegalHold // API operation. For more information, see Using S3 Object Lock legal hold // with S3 Batch Operations (https://docs.aws.amazon.com/AmazonS3/latest/dev/batch-ops-legal-hold.html) // in the Amazon S3 User Guide. S3PutObjectLegalHold *S3SetObjectLegalHoldOperation `type:"structure"` // Contains the configuration parameters for the Object Lock retention action // for an S3 Batch Operations job. Batch Operations passes every object to the // underlying PutObjectRetention API operation. For more information, see Using // S3 Object Lock retention with S3 Batch Operations (https://docs.aws.amazon.com/AmazonS3/latest/dev/batch-ops-retention-date.html) // in the Amazon S3 User Guide. S3PutObjectRetention *S3SetObjectRetentionOperation `type:"structure"` // Directs the specified job to run a PUT Object tagging call on every object // in the manifest. S3PutObjectTagging *S3SetObjectTaggingOperation `type:"structure"` // Directs the specified job to invoke ReplicateObject on every object in the // job's manifest. S3ReplicateObject *S3ReplicateObjectOperation `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s JobOperation) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s JobOperation) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *JobOperation) Validate() error { invalidParams := request.ErrInvalidParams{Context: "JobOperation"} if s.LambdaInvoke != nil { if err := s.LambdaInvoke.Validate(); err != nil { invalidParams.AddNested("LambdaInvoke", err.(request.ErrInvalidParams)) } } if s.S3PutObjectAcl != nil { if err := s.S3PutObjectAcl.Validate(); err != nil { invalidParams.AddNested("S3PutObjectAcl", err.(request.ErrInvalidParams)) } } if s.S3PutObjectCopy != nil { if err := s.S3PutObjectCopy.Validate(); err != nil { invalidParams.AddNested("S3PutObjectCopy", err.(request.ErrInvalidParams)) } } if s.S3PutObjectLegalHold != nil { if err := s.S3PutObjectLegalHold.Validate(); err != nil { invalidParams.AddNested("S3PutObjectLegalHold", err.(request.ErrInvalidParams)) } } if s.S3PutObjectRetention != nil { if err := s.S3PutObjectRetention.Validate(); err != nil { invalidParams.AddNested("S3PutObjectRetention", err.(request.ErrInvalidParams)) } } if s.S3PutObjectTagging != nil { if err := s.S3PutObjectTagging.Validate(); err != nil { invalidParams.AddNested("S3PutObjectTagging", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetLambdaInvoke sets the LambdaInvoke field's value. func (s *JobOperation) SetLambdaInvoke(v *LambdaInvokeOperation) *JobOperation { s.LambdaInvoke = v return s } // SetS3DeleteObjectTagging sets the S3DeleteObjectTagging field's value. func (s *JobOperation) SetS3DeleteObjectTagging(v *S3DeleteObjectTaggingOperation) *JobOperation { s.S3DeleteObjectTagging = v return s } // SetS3InitiateRestoreObject sets the S3InitiateRestoreObject field's value. func (s *JobOperation) SetS3InitiateRestoreObject(v *S3InitiateRestoreObjectOperation) *JobOperation { s.S3InitiateRestoreObject = v return s } // SetS3PutObjectAcl sets the S3PutObjectAcl field's value. func (s *JobOperation) SetS3PutObjectAcl(v *S3SetObjectAclOperation) *JobOperation { s.S3PutObjectAcl = v return s } // SetS3PutObjectCopy sets the S3PutObjectCopy field's value. func (s *JobOperation) SetS3PutObjectCopy(v *S3CopyObjectOperation) *JobOperation { s.S3PutObjectCopy = v return s } // SetS3PutObjectLegalHold sets the S3PutObjectLegalHold field's value. func (s *JobOperation) SetS3PutObjectLegalHold(v *S3SetObjectLegalHoldOperation) *JobOperation { s.S3PutObjectLegalHold = v return s } // SetS3PutObjectRetention sets the S3PutObjectRetention field's value. func (s *JobOperation) SetS3PutObjectRetention(v *S3SetObjectRetentionOperation) *JobOperation { s.S3PutObjectRetention = v return s } // SetS3PutObjectTagging sets the S3PutObjectTagging field's value. func (s *JobOperation) SetS3PutObjectTagging(v *S3SetObjectTaggingOperation) *JobOperation { s.S3PutObjectTagging = v return s } // SetS3ReplicateObject sets the S3ReplicateObject field's value. func (s *JobOperation) SetS3ReplicateObject(v *S3ReplicateObjectOperation) *JobOperation { s.S3ReplicateObject = v return s } // Describes the total number of tasks that the specified job has started, the // number of tasks that succeeded, and the number of tasks that failed. type JobProgressSummary struct { _ struct{} `type:"structure"` NumberOfTasksFailed *int64 `type:"long"` NumberOfTasksSucceeded *int64 `type:"long"` // The JobTimers attribute of a job's progress summary. Timers *JobTimers `type:"structure"` TotalNumberOfTasks *int64 `type:"long"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s JobProgressSummary) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s JobProgressSummary) GoString() string { return s.String() } // SetNumberOfTasksFailed sets the NumberOfTasksFailed field's value. func (s *JobProgressSummary) SetNumberOfTasksFailed(v int64) *JobProgressSummary { s.NumberOfTasksFailed = &v return s } // SetNumberOfTasksSucceeded sets the NumberOfTasksSucceeded field's value. func (s *JobProgressSummary) SetNumberOfTasksSucceeded(v int64) *JobProgressSummary { s.NumberOfTasksSucceeded = &v return s } // SetTimers sets the Timers field's value. func (s *JobProgressSummary) SetTimers(v *JobTimers) *JobProgressSummary { s.Timers = v return s } // SetTotalNumberOfTasks sets the TotalNumberOfTasks field's value. func (s *JobProgressSummary) SetTotalNumberOfTasks(v int64) *JobProgressSummary { s.TotalNumberOfTasks = &v return s } // Contains the configuration parameters for a job-completion report. type JobReport struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) for the bucket where specified job-completion // report will be stored. Bucket *string `min:"1" type:"string"` // Indicates whether the specified job will generate a job-completion report. // // Enabled is a required field Enabled *bool `type:"boolean" required:"true"` // The format of the specified job-completion report. Format *string `type:"string" enum:"JobReportFormat"` // An optional prefix to describe where in the specified bucket the job-completion // report will be stored. Amazon S3 stores the job-completion report at /job-/report.json. Prefix *string `min:"1" type:"string"` // Indicates whether the job-completion report will include details of all tasks // or only failed tasks. ReportScope *string `type:"string" enum:"JobReportScope"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s JobReport) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s JobReport) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *JobReport) Validate() error { invalidParams := request.ErrInvalidParams{Context: "JobReport"} if s.Bucket != nil && len(*s.Bucket) < 1 { invalidParams.Add(request.NewErrParamMinLen("Bucket", 1)) } if s.Enabled == nil { invalidParams.Add(request.NewErrParamRequired("Enabled")) } if s.Prefix != nil && len(*s.Prefix) < 1 { invalidParams.Add(request.NewErrParamMinLen("Prefix", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetBucket sets the Bucket field's value. func (s *JobReport) SetBucket(v string) *JobReport { s.Bucket = &v return s } // SetEnabled sets the Enabled field's value. func (s *JobReport) SetEnabled(v bool) *JobReport { s.Enabled = &v return s } // SetFormat sets the Format field's value. func (s *JobReport) SetFormat(v string) *JobReport { s.Format = &v return s } // SetPrefix sets the Prefix field's value. func (s *JobReport) SetPrefix(v string) *JobReport { s.Prefix = &v return s } // SetReportScope sets the ReportScope field's value. func (s *JobReport) SetReportScope(v string) *JobReport { s.ReportScope = &v return s } // Provides timing details for the job. type JobTimers struct { _ struct{} `type:"structure"` // Indicates the elapsed time in seconds the job has been in the Active job // state. ElapsedTimeInActiveSeconds *int64 `type:"long"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s JobTimers) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s JobTimers) GoString() string { return s.String() } // SetElapsedTimeInActiveSeconds sets the ElapsedTimeInActiveSeconds field's value. func (s *JobTimers) SetElapsedTimeInActiveSeconds(v int64) *JobTimers { s.ElapsedTimeInActiveSeconds = &v return s } // Contains the configuration parameters for a Lambda Invoke operation. type LambdaInvokeOperation struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) for the Lambda function that the specified // job will invoke on every object in the manifest. FunctionArn *string `min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s LambdaInvokeOperation) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s LambdaInvokeOperation) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *LambdaInvokeOperation) Validate() error { invalidParams := request.ErrInvalidParams{Context: "LambdaInvokeOperation"} if s.FunctionArn != nil && len(*s.FunctionArn) < 1 { invalidParams.Add(request.NewErrParamMinLen("FunctionArn", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetFunctionArn sets the FunctionArn field's value. func (s *LambdaInvokeOperation) SetFunctionArn(v string) *LambdaInvokeOperation { s.FunctionArn = &v return s } // The container for the Outposts bucket lifecycle configuration. type LifecycleConfiguration struct { _ struct{} `type:"structure"` // A lifecycle rule for individual objects in an Outposts bucket. Rules []*LifecycleRule `locationNameList:"Rule" type:"list"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s LifecycleConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s LifecycleConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *LifecycleConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "LifecycleConfiguration"} if s.Rules != nil { for i, v := range s.Rules { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Rules", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetRules sets the Rules field's value. func (s *LifecycleConfiguration) SetRules(v []*LifecycleRule) *LifecycleConfiguration { s.Rules = v return s } // The container of the Outposts bucket lifecycle expiration. type LifecycleExpiration struct { _ struct{} `type:"structure"` // Indicates at what date the object is to be deleted. Should be in GMT ISO // 8601 format. Date *time.Time `type:"timestamp"` // Indicates the lifetime, in days, of the objects that are subject to the rule. // The value must be a non-zero positive integer. Days *int64 `type:"integer"` // Indicates whether Amazon S3 will remove a delete marker with no noncurrent // versions. If set to true, the delete marker will be expired. If set to false, // the policy takes no action. This cannot be specified with Days or Date in // a Lifecycle Expiration Policy. ExpiredObjectDeleteMarker *bool `type:"boolean"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s LifecycleExpiration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s LifecycleExpiration) GoString() string { return s.String() } // SetDate sets the Date field's value. func (s *LifecycleExpiration) SetDate(v time.Time) *LifecycleExpiration { s.Date = &v return s } // SetDays sets the Days field's value. func (s *LifecycleExpiration) SetDays(v int64) *LifecycleExpiration { s.Days = &v return s } // SetExpiredObjectDeleteMarker sets the ExpiredObjectDeleteMarker field's value. func (s *LifecycleExpiration) SetExpiredObjectDeleteMarker(v bool) *LifecycleExpiration { s.ExpiredObjectDeleteMarker = &v return s } // The container for the Outposts bucket lifecycle rule. type LifecycleRule struct { _ struct{} `type:"structure"` // Specifies the days since the initiation of an incomplete multipart upload // that Amazon S3 waits before permanently removing all parts of the upload. // For more information, see Aborting Incomplete Multipart Uploads Using a Bucket // Lifecycle Configuration (https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html#mpu-abort-incomplete-mpu-lifecycle-config) // in the Amazon S3 User Guide. AbortIncompleteMultipartUpload *AbortIncompleteMultipartUpload `type:"structure"` // Specifies the expiration for the lifecycle of the object in the form of date, // days and, whether the object has a delete marker. Expiration *LifecycleExpiration `type:"structure"` // The container for the filter of lifecycle rule. Filter *LifecycleRuleFilter `type:"structure"` // Unique identifier for the rule. The value cannot be longer than 255 characters. ID *string `type:"string"` // The noncurrent version expiration of the lifecycle rule. NoncurrentVersionExpiration *NoncurrentVersionExpiration `type:"structure"` // Specifies the transition rule for the lifecycle rule that describes when // noncurrent objects transition to a specific storage class. If your bucket // is versioning-enabled (or versioning is suspended), you can set this action // to request that Amazon S3 transition noncurrent object versions to a specific // storage class at a set period in the object's lifetime. // // This is not supported by Amazon S3 on Outposts buckets. NoncurrentVersionTransitions []*NoncurrentVersionTransition `locationNameList:"NoncurrentVersionTransition" type:"list"` // If 'Enabled', the rule is currently being applied. If 'Disabled', the rule // is not currently being applied. // // Status is a required field Status *string `type:"string" required:"true" enum:"ExpirationStatus"` // Specifies when an Amazon S3 object transitions to a specified storage class. // // This is not supported by Amazon S3 on Outposts buckets. Transitions []*Transition `locationNameList:"Transition" type:"list"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s LifecycleRule) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s LifecycleRule) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *LifecycleRule) Validate() error { invalidParams := request.ErrInvalidParams{Context: "LifecycleRule"} if s.Status == nil { invalidParams.Add(request.NewErrParamRequired("Status")) } if s.Filter != nil { if err := s.Filter.Validate(); err != nil { invalidParams.AddNested("Filter", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAbortIncompleteMultipartUpload sets the AbortIncompleteMultipartUpload field's value. func (s *LifecycleRule) SetAbortIncompleteMultipartUpload(v *AbortIncompleteMultipartUpload) *LifecycleRule { s.AbortIncompleteMultipartUpload = v return s } // SetExpiration sets the Expiration field's value. func (s *LifecycleRule) SetExpiration(v *LifecycleExpiration) *LifecycleRule { s.Expiration = v return s } // SetFilter sets the Filter field's value. func (s *LifecycleRule) SetFilter(v *LifecycleRuleFilter) *LifecycleRule { s.Filter = v return s } // SetID sets the ID field's value. func (s *LifecycleRule) SetID(v string) *LifecycleRule { s.ID = &v return s } // SetNoncurrentVersionExpiration sets the NoncurrentVersionExpiration field's value. func (s *LifecycleRule) SetNoncurrentVersionExpiration(v *NoncurrentVersionExpiration) *LifecycleRule { s.NoncurrentVersionExpiration = v return s } // SetNoncurrentVersionTransitions sets the NoncurrentVersionTransitions field's value. func (s *LifecycleRule) SetNoncurrentVersionTransitions(v []*NoncurrentVersionTransition) *LifecycleRule { s.NoncurrentVersionTransitions = v return s } // SetStatus sets the Status field's value. func (s *LifecycleRule) SetStatus(v string) *LifecycleRule { s.Status = &v return s } // SetTransitions sets the Transitions field's value. func (s *LifecycleRule) SetTransitions(v []*Transition) *LifecycleRule { s.Transitions = v return s } // The container for the Outposts bucket lifecycle rule and operator. type LifecycleRuleAndOperator struct { _ struct{} `type:"structure"` // Minimum object size to which the rule applies. ObjectSizeGreaterThan *int64 `type:"long"` // Maximum object size to which the rule applies. ObjectSizeLessThan *int64 `type:"long"` // Prefix identifying one or more objects to which the rule applies. Prefix *string `type:"string"` // All of these tags must exist in the object's tag set in order for the rule // to apply. Tags []*S3Tag `type:"list"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s LifecycleRuleAndOperator) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s LifecycleRuleAndOperator) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *LifecycleRuleAndOperator) Validate() error { invalidParams := request.ErrInvalidParams{Context: "LifecycleRuleAndOperator"} if s.Tags != nil { for i, v := range s.Tags { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetObjectSizeGreaterThan sets the ObjectSizeGreaterThan field's value. func (s *LifecycleRuleAndOperator) SetObjectSizeGreaterThan(v int64) *LifecycleRuleAndOperator { s.ObjectSizeGreaterThan = &v return s } // SetObjectSizeLessThan sets the ObjectSizeLessThan field's value. func (s *LifecycleRuleAndOperator) SetObjectSizeLessThan(v int64) *LifecycleRuleAndOperator { s.ObjectSizeLessThan = &v return s } // SetPrefix sets the Prefix field's value. func (s *LifecycleRuleAndOperator) SetPrefix(v string) *LifecycleRuleAndOperator { s.Prefix = &v return s } // SetTags sets the Tags field's value. func (s *LifecycleRuleAndOperator) SetTags(v []*S3Tag) *LifecycleRuleAndOperator { s.Tags = v return s } // The container for the filter of the lifecycle rule. type LifecycleRuleFilter struct { _ struct{} `type:"structure"` // The container for the AND condition for the lifecycle rule. And *LifecycleRuleAndOperator `type:"structure"` // Minimum object size to which the rule applies. ObjectSizeGreaterThan *int64 `type:"long"` // Maximum object size to which the rule applies. ObjectSizeLessThan *int64 `type:"long"` // Prefix identifying one or more objects to which the rule applies. // // When you're using XML requests, you must replace special characters (such // as carriage returns) in object keys with their equivalent XML entity codes. // For more information, see XML-related object key constraints (https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints) // in the Amazon S3 User Guide. Prefix *string `type:"string"` // A container for a key-value name pair. Tag *S3Tag `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s LifecycleRuleFilter) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s LifecycleRuleFilter) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *LifecycleRuleFilter) Validate() error { invalidParams := request.ErrInvalidParams{Context: "LifecycleRuleFilter"} if s.And != nil { if err := s.And.Validate(); err != nil { invalidParams.AddNested("And", err.(request.ErrInvalidParams)) } } if s.Tag != nil { if err := s.Tag.Validate(); err != nil { invalidParams.AddNested("Tag", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAnd sets the And field's value. func (s *LifecycleRuleFilter) SetAnd(v *LifecycleRuleAndOperator) *LifecycleRuleFilter { s.And = v return s } // SetObjectSizeGreaterThan sets the ObjectSizeGreaterThan field's value. func (s *LifecycleRuleFilter) SetObjectSizeGreaterThan(v int64) *LifecycleRuleFilter { s.ObjectSizeGreaterThan = &v return s } // SetObjectSizeLessThan sets the ObjectSizeLessThan field's value. func (s *LifecycleRuleFilter) SetObjectSizeLessThan(v int64) *LifecycleRuleFilter { s.ObjectSizeLessThan = &v return s } // SetPrefix sets the Prefix field's value. func (s *LifecycleRuleFilter) SetPrefix(v string) *LifecycleRuleFilter { s.Prefix = &v return s } // SetTag sets the Tag field's value. func (s *LifecycleRuleFilter) SetTag(v *S3Tag) *LifecycleRuleFilter { s.Tag = v return s } type ListAccessPointsForObjectLambdaInput struct { _ struct{} `locationName:"ListAccessPointsForObjectLambdaRequest" type:"structure"` // The account ID for the account that owns the specified Object Lambda Access // Point. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // The maximum number of access points that you want to include in the list. // The response may contain fewer access points but will never contain more. // If there are more than this number of access points, then the response will // include a continuation token in the NextToken field that you can use to retrieve // the next page of access points. MaxResults *int64 `location:"querystring" locationName:"maxResults" type:"integer"` // If the list has more access points than can be returned in one call to this // API, this field contains a continuation token that you can provide in subsequent // calls to this API to retrieve additional access points. NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListAccessPointsForObjectLambdaInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListAccessPointsForObjectLambdaInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListAccessPointsForObjectLambdaInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListAccessPointsForObjectLambdaInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *ListAccessPointsForObjectLambdaInput) SetAccountId(v string) *ListAccessPointsForObjectLambdaInput { s.AccountId = &v return s } // SetMaxResults sets the MaxResults field's value. func (s *ListAccessPointsForObjectLambdaInput) SetMaxResults(v int64) *ListAccessPointsForObjectLambdaInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. func (s *ListAccessPointsForObjectLambdaInput) SetNextToken(v string) *ListAccessPointsForObjectLambdaInput { s.NextToken = &v return s } func (s *ListAccessPointsForObjectLambdaInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } type ListAccessPointsForObjectLambdaOutput struct { _ struct{} `type:"structure"` // If the list has more access points than can be returned in one call to this // API, this field contains a continuation token that you can provide in subsequent // calls to this API to retrieve additional access points. NextToken *string `min:"1" type:"string"` // Returns list of Object Lambda Access Points. ObjectLambdaAccessPointList []*ObjectLambdaAccessPoint `locationNameList:"ObjectLambdaAccessPoint" type:"list"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListAccessPointsForObjectLambdaOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListAccessPointsForObjectLambdaOutput) GoString() string { return s.String() } // SetNextToken sets the NextToken field's value. func (s *ListAccessPointsForObjectLambdaOutput) SetNextToken(v string) *ListAccessPointsForObjectLambdaOutput { s.NextToken = &v return s } // SetObjectLambdaAccessPointList sets the ObjectLambdaAccessPointList field's value. func (s *ListAccessPointsForObjectLambdaOutput) SetObjectLambdaAccessPointList(v []*ObjectLambdaAccessPoint) *ListAccessPointsForObjectLambdaOutput { s.ObjectLambdaAccessPointList = v return s } type ListAccessPointsInput struct { _ struct{} `locationName:"ListAccessPointsRequest" type:"structure"` // The Amazon Web Services account ID for the account that owns the specified // access points. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // The name of the bucket whose associated access points you want to list. // // For using this parameter with Amazon S3 on Outposts with the REST API, you // must specify the name and the x-amz-outpost-id as well. // // For using this parameter with S3 on Outposts with the Amazon Web Services // SDK and CLI, you must specify the ARN of the bucket accessed in the format // arn:aws:s3-outposts:::outpost//bucket/. // For example, to access the bucket reports through Outpost my-outpost owned // by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/bucket/reports. // The value must be URL encoded. Bucket *string `location:"querystring" locationName:"bucket" min:"3" type:"string"` // The maximum number of access points that you want to include in the list. // If the specified bucket has more than this number of access points, then // the response will include a continuation token in the NextToken field that // you can use to retrieve the next page of access points. MaxResults *int64 `location:"querystring" locationName:"maxResults" type:"integer"` // A continuation token. If a previous call to ListAccessPoints returned a continuation // token in the NextToken field, then providing that value here causes Amazon // S3 to retrieve the next page of results. NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListAccessPointsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListAccessPointsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListAccessPointsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListAccessPointsInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.Bucket != nil && len(*s.Bucket) < 3 { invalidParams.Add(request.NewErrParamMinLen("Bucket", 3)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *ListAccessPointsInput) SetAccountId(v string) *ListAccessPointsInput { s.AccountId = &v return s } // SetBucket sets the Bucket field's value. func (s *ListAccessPointsInput) SetBucket(v string) *ListAccessPointsInput { s.Bucket = &v return s } // SetMaxResults sets the MaxResults field's value. func (s *ListAccessPointsInput) SetMaxResults(v int64) *ListAccessPointsInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. func (s *ListAccessPointsInput) SetNextToken(v string) *ListAccessPointsInput { s.NextToken = &v return s } func (s *ListAccessPointsInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } func (s *ListAccessPointsInput) getEndpointARN() (arn.Resource, error) { if s.Bucket == nil { return nil, fmt.Errorf("member Bucket is nil") } return parseEndpointARN(*s.Bucket) } func (s *ListAccessPointsInput) hasEndpointARN() bool { if s.Bucket == nil { return false } return arn.IsARN(*s.Bucket) } // updateArnableField updates the value of the input field that // takes an ARN as an input. This method is useful to backfill // the parsed resource name from ARN into the input member. // It returns a pointer to a modified copy of input and an error. // Note that original input is not modified. func (s ListAccessPointsInput) updateArnableField(v string) (interface{}, error) { if s.Bucket == nil { return nil, fmt.Errorf("member Bucket is nil") } s.Bucket = aws.String(v) return &s, nil } // updateAccountID returns a pointer to a modified copy of input, // if account id is not provided, we update the account id in modified input // if account id is provided, but doesn't match with the one in ARN, we throw an error // if account id is not updated, we return nil. Note that original input is not modified. func (s ListAccessPointsInput) updateAccountID(accountId string) (interface{}, error) { if s.AccountId == nil { s.AccountId = aws.String(accountId) return &s, nil } else if *s.AccountId != accountId { return &s, fmt.Errorf("Account ID mismatch, the Account ID cannot be specified in an ARN and in the accountId field") } return nil, nil } type ListAccessPointsOutput struct { _ struct{} `type:"structure"` // Contains identification and configuration information for one or more access // points associated with the specified bucket. AccessPointList []*AccessPoint `locationNameList:"AccessPoint" type:"list"` // If the specified bucket has more access points than can be returned in one // call to this API, this field contains a continuation token that you can provide // in subsequent calls to this API to retrieve additional access points. NextToken *string `min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListAccessPointsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListAccessPointsOutput) GoString() string { return s.String() } // SetAccessPointList sets the AccessPointList field's value. func (s *ListAccessPointsOutput) SetAccessPointList(v []*AccessPoint) *ListAccessPointsOutput { s.AccessPointList = v return s } // SetNextToken sets the NextToken field's value. func (s *ListAccessPointsOutput) SetNextToken(v string) *ListAccessPointsOutput { s.NextToken = &v return s } type ListJobsInput struct { _ struct{} `locationName:"ListJobsRequest" type:"structure"` // The Amazon Web Services account ID associated with the S3 Batch Operations // job. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // The List Jobs request returns jobs that match the statuses listed in this // element. JobStatuses []*string `location:"querystring" locationName:"jobStatuses" type:"list" enum:"JobStatus"` // The maximum number of jobs that Amazon S3 will include in the List Jobs response. // If there are more jobs than this number, the response will include a pagination // token in the NextToken field to enable you to retrieve the next page of results. MaxResults *int64 `location:"querystring" locationName:"maxResults" type:"integer"` // A pagination token to request the next page of results. Use the token that // Amazon S3 returned in the NextToken element of the ListJobsResult from the // previous List Jobs request. NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListJobsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListJobsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListJobsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListJobsInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *ListJobsInput) SetAccountId(v string) *ListJobsInput { s.AccountId = &v return s } // SetJobStatuses sets the JobStatuses field's value. func (s *ListJobsInput) SetJobStatuses(v []*string) *ListJobsInput { s.JobStatuses = v return s } // SetMaxResults sets the MaxResults field's value. func (s *ListJobsInput) SetMaxResults(v int64) *ListJobsInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. func (s *ListJobsInput) SetNextToken(v string) *ListJobsInput { s.NextToken = &v return s } func (s *ListJobsInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } type ListJobsOutput struct { _ struct{} `type:"structure"` // The list of current jobs and jobs that have ended within the last 30 days. Jobs []*JobListDescriptor `type:"list"` // If the List Jobs request produced more than the maximum number of results, // you can pass this value into a subsequent List Jobs request in order to retrieve // the next page of results. NextToken *string `min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListJobsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListJobsOutput) GoString() string { return s.String() } // SetJobs sets the Jobs field's value. func (s *ListJobsOutput) SetJobs(v []*JobListDescriptor) *ListJobsOutput { s.Jobs = v return s } // SetNextToken sets the NextToken field's value. func (s *ListJobsOutput) SetNextToken(v string) *ListJobsOutput { s.NextToken = &v return s } type ListMultiRegionAccessPointsInput struct { _ struct{} `locationName:"ListMultiRegionAccessPointsRequest" type:"structure"` // The Amazon Web Services account ID for the owner of the Multi-Region Access // Point. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // Not currently used. Do not use this parameter. MaxResults *int64 `location:"querystring" locationName:"maxResults" type:"integer"` // Not currently used. Do not use this parameter. NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListMultiRegionAccessPointsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListMultiRegionAccessPointsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListMultiRegionAccessPointsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListMultiRegionAccessPointsInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *ListMultiRegionAccessPointsInput) SetAccountId(v string) *ListMultiRegionAccessPointsInput { s.AccountId = &v return s } // SetMaxResults sets the MaxResults field's value. func (s *ListMultiRegionAccessPointsInput) SetMaxResults(v int64) *ListMultiRegionAccessPointsInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. func (s *ListMultiRegionAccessPointsInput) SetNextToken(v string) *ListMultiRegionAccessPointsInput { s.NextToken = &v return s } func (s *ListMultiRegionAccessPointsInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } type ListMultiRegionAccessPointsOutput struct { _ struct{} `type:"structure"` // The list of Multi-Region Access Points associated with the user. AccessPoints []*MultiRegionAccessPointReport `locationNameList:"AccessPoint" type:"list"` // If the specified bucket has more Multi-Region Access Points than can be returned // in one call to this action, this field contains a continuation token. You // can use this token tin subsequent calls to this action to retrieve additional // Multi-Region Access Points. NextToken *string `min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListMultiRegionAccessPointsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListMultiRegionAccessPointsOutput) GoString() string { return s.String() } // SetAccessPoints sets the AccessPoints field's value. func (s *ListMultiRegionAccessPointsOutput) SetAccessPoints(v []*MultiRegionAccessPointReport) *ListMultiRegionAccessPointsOutput { s.AccessPoints = v return s } // SetNextToken sets the NextToken field's value. func (s *ListMultiRegionAccessPointsOutput) SetNextToken(v string) *ListMultiRegionAccessPointsOutput { s.NextToken = &v return s } type ListRegionalBucketsInput struct { _ struct{} `locationName:"ListRegionalBucketsRequest" type:"structure"` // The Amazon Web Services account ID of the Outposts bucket. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` MaxResults *int64 `location:"querystring" locationName:"maxResults" type:"integer"` NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` // The ID of the Outposts resource. // // This ID is required by Amazon S3 on Outposts buckets. OutpostId *string `location:"header" locationName:"x-amz-outpost-id" min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListRegionalBucketsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListRegionalBucketsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListRegionalBucketsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListRegionalBucketsInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if s.OutpostId != nil && len(*s.OutpostId) < 1 { invalidParams.Add(request.NewErrParamMinLen("OutpostId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *ListRegionalBucketsInput) SetAccountId(v string) *ListRegionalBucketsInput { s.AccountId = &v return s } // SetMaxResults sets the MaxResults field's value. func (s *ListRegionalBucketsInput) SetMaxResults(v int64) *ListRegionalBucketsInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. func (s *ListRegionalBucketsInput) SetNextToken(v string) *ListRegionalBucketsInput { s.NextToken = &v return s } // SetOutpostId sets the OutpostId field's value. func (s *ListRegionalBucketsInput) SetOutpostId(v string) *ListRegionalBucketsInput { s.OutpostId = &v return s } func (s *ListRegionalBucketsInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } func (s *ListRegionalBucketsInput) getOutpostID() (string, error) { if s.OutpostId == nil { return "", fmt.Errorf("member OutpostId is nil") } return *s.OutpostId, nil } func (s *ListRegionalBucketsInput) hasOutpostID() bool { if s.OutpostId == nil { return false } return true } type ListRegionalBucketsOutput struct { _ struct{} `type:"structure"` // NextToken is sent when isTruncated is true, which means there are more buckets // that can be listed. The next list requests to Amazon S3 can be continued // with this NextToken. NextToken is obfuscated and is not a real key. NextToken *string `min:"1" type:"string"` RegionalBucketList []*RegionalBucket `locationNameList:"RegionalBucket" type:"list"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListRegionalBucketsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListRegionalBucketsOutput) GoString() string { return s.String() } // SetNextToken sets the NextToken field's value. func (s *ListRegionalBucketsOutput) SetNextToken(v string) *ListRegionalBucketsOutput { s.NextToken = &v return s } // SetRegionalBucketList sets the RegionalBucketList field's value. func (s *ListRegionalBucketsOutput) SetRegionalBucketList(v []*RegionalBucket) *ListRegionalBucketsOutput { s.RegionalBucketList = v return s } // Part of ListStorageLensConfigurationResult. Each entry includes the description // of the S3 Storage Lens configuration, its home Region, whether it is enabled, // its Amazon Resource Name (ARN), and config ID. type ListStorageLensConfigurationEntry struct { _ struct{} `type:"structure"` // A container for the S3 Storage Lens home Region. Your metrics data is stored // and retained in your designated S3 Storage Lens home Region. // // HomeRegion is a required field HomeRegion *string `min:"5" type:"string" required:"true"` // A container for the S3 Storage Lens configuration ID. // // Id is a required field Id *string `min:"1" type:"string" required:"true"` // A container for whether the S3 Storage Lens configuration is enabled. This // property is required. IsEnabled *bool `type:"boolean"` // The ARN of the S3 Storage Lens configuration. This property is read-only. // // StorageLensArn is a required field StorageLensArn *string `min:"1" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListStorageLensConfigurationEntry) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListStorageLensConfigurationEntry) GoString() string { return s.String() } // SetHomeRegion sets the HomeRegion field's value. func (s *ListStorageLensConfigurationEntry) SetHomeRegion(v string) *ListStorageLensConfigurationEntry { s.HomeRegion = &v return s } // SetId sets the Id field's value. func (s *ListStorageLensConfigurationEntry) SetId(v string) *ListStorageLensConfigurationEntry { s.Id = &v return s } // SetIsEnabled sets the IsEnabled field's value. func (s *ListStorageLensConfigurationEntry) SetIsEnabled(v bool) *ListStorageLensConfigurationEntry { s.IsEnabled = &v return s } // SetStorageLensArn sets the StorageLensArn field's value. func (s *ListStorageLensConfigurationEntry) SetStorageLensArn(v string) *ListStorageLensConfigurationEntry { s.StorageLensArn = &v return s } type ListStorageLensConfigurationsInput struct { _ struct{} `locationName:"ListStorageLensConfigurationsRequest" type:"structure"` // The account ID of the requester. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // A pagination token to request the next page of results. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListStorageLensConfigurationsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListStorageLensConfigurationsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListStorageLensConfigurationsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListStorageLensConfigurationsInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *ListStorageLensConfigurationsInput) SetAccountId(v string) *ListStorageLensConfigurationsInput { s.AccountId = &v return s } // SetNextToken sets the NextToken field's value. func (s *ListStorageLensConfigurationsInput) SetNextToken(v string) *ListStorageLensConfigurationsInput { s.NextToken = &v return s } func (s *ListStorageLensConfigurationsInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } type ListStorageLensConfigurationsOutput struct { _ struct{} `type:"structure"` // If the request produced more than the maximum number of S3 Storage Lens configuration // results, you can pass this value into a subsequent request to retrieve the // next page of results. NextToken *string `type:"string"` // A list of S3 Storage Lens configurations. StorageLensConfigurationList []*ListStorageLensConfigurationEntry `locationNameList:"StorageLensConfiguration" type:"list" flattened:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListStorageLensConfigurationsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListStorageLensConfigurationsOutput) GoString() string { return s.String() } // SetNextToken sets the NextToken field's value. func (s *ListStorageLensConfigurationsOutput) SetNextToken(v string) *ListStorageLensConfigurationsOutput { s.NextToken = &v return s } // SetStorageLensConfigurationList sets the StorageLensConfigurationList field's value. func (s *ListStorageLensConfigurationsOutput) SetStorageLensConfigurationList(v []*ListStorageLensConfigurationEntry) *ListStorageLensConfigurationsOutput { s.StorageLensConfigurationList = v return s } // A container that specifies replication metrics-related settings. type Metrics struct { _ struct{} `type:"structure"` // A container that specifies the time threshold for emitting the s3:Replication:OperationMissedThreshold // event. // // This is not supported by Amazon S3 on Outposts buckets. EventThreshold *ReplicationTimeValue `type:"structure"` // Specifies whether replication metrics are enabled. // // Status is a required field Status *string `type:"string" required:"true" enum:"MetricsStatus"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s Metrics) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s Metrics) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Metrics) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Metrics"} if s.Status == nil { invalidParams.Add(request.NewErrParamRequired("Status")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetEventThreshold sets the EventThreshold field's value. func (s *Metrics) SetEventThreshold(v *ReplicationTimeValue) *Metrics { s.EventThreshold = v return s } // SetStatus sets the Status field's value. func (s *Metrics) SetStatus(v string) *Metrics { s.Status = &v return s } // The Multi-Region Access Point access control policy. // // When you update the policy, the update is first listed as the proposed policy. // After the update is finished and all Regions have been updated, the proposed // policy is listed as the established policy. If both policies have the same // version number, the proposed policy is the established policy. type MultiRegionAccessPointPolicyDocument struct { _ struct{} `type:"structure"` // The last established policy for the Multi-Region Access Point. Established *EstablishedMultiRegionAccessPointPolicy `type:"structure"` // The proposed policy for the Multi-Region Access Point. Proposed *ProposedMultiRegionAccessPointPolicy `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s MultiRegionAccessPointPolicyDocument) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s MultiRegionAccessPointPolicyDocument) GoString() string { return s.String() } // SetEstablished sets the Established field's value. func (s *MultiRegionAccessPointPolicyDocument) SetEstablished(v *EstablishedMultiRegionAccessPointPolicy) *MultiRegionAccessPointPolicyDocument { s.Established = v return s } // SetProposed sets the Proposed field's value. func (s *MultiRegionAccessPointPolicyDocument) SetProposed(v *ProposedMultiRegionAccessPointPolicy) *MultiRegionAccessPointPolicyDocument { s.Proposed = v return s } // Status information for a single Multi-Region Access Point Region. type MultiRegionAccessPointRegionalResponse struct { _ struct{} `type:"structure"` // The name of the Region in the Multi-Region Access Point. Name *string `min:"1" type:"string"` // The current status of the Multi-Region Access Point in this Region. RequestStatus *string `type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s MultiRegionAccessPointRegionalResponse) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s MultiRegionAccessPointRegionalResponse) GoString() string { return s.String() } // SetName sets the Name field's value. func (s *MultiRegionAccessPointRegionalResponse) SetName(v string) *MultiRegionAccessPointRegionalResponse { s.Name = &v return s } // SetRequestStatus sets the RequestStatus field's value. func (s *MultiRegionAccessPointRegionalResponse) SetRequestStatus(v string) *MultiRegionAccessPointRegionalResponse { s.RequestStatus = &v return s } // A collection of statuses for a Multi-Region Access Point in the various Regions // it supports. type MultiRegionAccessPointReport struct { _ struct{} `type:"structure"` // The alias for the Multi-Region Access Point. For more information about the // distinction between the name and the alias of an Multi-Region Access Point, // see Managing Multi-Region Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/CreatingMultiRegionAccessPoints.html#multi-region-access-point-naming). Alias *string `type:"string"` // When the Multi-Region Access Point create request was received. CreatedAt *time.Time `type:"timestamp"` // The name of the Multi-Region Access Point. Name *string `type:"string"` // The PublicAccessBlock configuration that you want to apply to this Amazon // S3 account. You can enable the configuration options in any combination. // For more information about when Amazon S3 considers a bucket or object public, // 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) // in the Amazon S3 User Guide. // // This data type is not supported for Amazon S3 on Outposts. PublicAccessBlock *PublicAccessBlockConfiguration `type:"structure"` // A collection of the Regions and buckets associated with the Multi-Region // Access Point. Regions []*RegionReport `locationNameList:"Region" type:"list"` // The current status of the Multi-Region Access Point. // // CREATING and DELETING are temporary states that exist while the request is // propagating and being completed. If a Multi-Region Access Point has a status // of PARTIALLY_CREATED, you can retry creation or send a request to delete // the Multi-Region Access Point. If a Multi-Region Access Point has a status // of PARTIALLY_DELETED, you can retry a delete request to finish the deletion // of the Multi-Region Access Point. Status *string `type:"string" enum:"MultiRegionAccessPointStatus"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s MultiRegionAccessPointReport) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s MultiRegionAccessPointReport) GoString() string { return s.String() } // SetAlias sets the Alias field's value. func (s *MultiRegionAccessPointReport) SetAlias(v string) *MultiRegionAccessPointReport { s.Alias = &v return s } // SetCreatedAt sets the CreatedAt field's value. func (s *MultiRegionAccessPointReport) SetCreatedAt(v time.Time) *MultiRegionAccessPointReport { s.CreatedAt = &v return s } // SetName sets the Name field's value. func (s *MultiRegionAccessPointReport) SetName(v string) *MultiRegionAccessPointReport { s.Name = &v return s } // SetPublicAccessBlock sets the PublicAccessBlock field's value. func (s *MultiRegionAccessPointReport) SetPublicAccessBlock(v *PublicAccessBlockConfiguration) *MultiRegionAccessPointReport { s.PublicAccessBlock = v return s } // SetRegions sets the Regions field's value. func (s *MultiRegionAccessPointReport) SetRegions(v []*RegionReport) *MultiRegionAccessPointReport { s.Regions = v return s } // SetStatus sets the Status field's value. func (s *MultiRegionAccessPointReport) SetStatus(v string) *MultiRegionAccessPointReport { s.Status = &v return s } // A structure for a Multi-Region Access Point that indicates where Amazon S3 // traffic can be routed. Routes can be either active or passive. Active routes // can process Amazon S3 requests through the Multi-Region Access Point, but // passive routes are not eligible to process Amazon S3 requests. // // Each route contains the Amazon S3 bucket name and the Amazon Web Services // Region that the bucket is located in. The route also includes the TrafficDialPercentage // value, which shows whether the bucket and Region are active (indicated by // a value of 100) or passive (indicated by a value of 0). type MultiRegionAccessPointRoute struct { _ struct{} `type:"structure"` // The name of the Amazon S3 bucket for which you'll submit a routing configuration // change. Either the Bucket or the Region value must be provided. If both are // provided, the bucket must be in the specified Region. Bucket *string `min:"3" type:"string"` // The Amazon Web Services Region to which you'll be submitting a routing configuration // change. Either the Bucket or the Region value must be provided. If both are // provided, the bucket must be in the specified Region. Region *string `min:"1" type:"string"` // The traffic state for the specified bucket or Amazon Web Services Region. // // A value of 0 indicates a passive state, which means that no new traffic will // be routed to the Region. // // A value of 100 indicates an active state, which means that traffic will be // routed to the specified Region. // // When the routing configuration for a Region is changed from active to passive, // any in-progress operations (uploads, copies, deletes, and so on) to the formerly // active Region will continue to run to until a final success or failure status // is reached. // // If all Regions in the routing configuration are designated as passive, you'll // receive an InvalidRequest error. // // TrafficDialPercentage is a required field TrafficDialPercentage *int64 `type:"integer" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s MultiRegionAccessPointRoute) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s MultiRegionAccessPointRoute) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *MultiRegionAccessPointRoute) Validate() error { invalidParams := request.ErrInvalidParams{Context: "MultiRegionAccessPointRoute"} if s.Bucket != nil && len(*s.Bucket) < 3 { invalidParams.Add(request.NewErrParamMinLen("Bucket", 3)) } if s.Region != nil && len(*s.Region) < 1 { invalidParams.Add(request.NewErrParamMinLen("Region", 1)) } if s.TrafficDialPercentage == nil { invalidParams.Add(request.NewErrParamRequired("TrafficDialPercentage")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetBucket sets the Bucket field's value. func (s *MultiRegionAccessPointRoute) SetBucket(v string) *MultiRegionAccessPointRoute { s.Bucket = &v return s } // SetRegion sets the Region field's value. func (s *MultiRegionAccessPointRoute) SetRegion(v string) *MultiRegionAccessPointRoute { s.Region = &v return s } // SetTrafficDialPercentage sets the TrafficDialPercentage field's value. func (s *MultiRegionAccessPointRoute) SetTrafficDialPercentage(v int64) *MultiRegionAccessPointRoute { s.TrafficDialPercentage = &v return s } // The Multi-Region Access Point details that are returned when querying about // an asynchronous request. type MultiRegionAccessPointsAsyncResponse struct { _ struct{} `type:"structure"` // A collection of status information for the different Regions that a Multi-Region // Access Point supports. Regions []*MultiRegionAccessPointRegionalResponse `locationNameList:"Region" type:"list"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s MultiRegionAccessPointsAsyncResponse) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s MultiRegionAccessPointsAsyncResponse) GoString() string { return s.String() } // SetRegions sets the Regions field's value. func (s *MultiRegionAccessPointsAsyncResponse) SetRegions(v []*MultiRegionAccessPointRegionalResponse) *MultiRegionAccessPointsAsyncResponse { s.Regions = v return s } // The container of the noncurrent version expiration. type NoncurrentVersionExpiration struct { _ struct{} `type:"structure"` // Specifies how many noncurrent versions S3 on Outposts will retain. If there // are this many more recent noncurrent versions, S3 on Outposts will take the // associated action. For more information about noncurrent versions, see Lifecycle // configuration elements (https://docs.aws.amazon.com/AmazonS3/latest/userguide/intro-lifecycle-rules.html) // in the Amazon S3 User Guide. NewerNoncurrentVersions *int64 `type:"integer"` // Specifies the number of days an object is noncurrent before Amazon S3 can // perform the associated action. For information about the noncurrent days // calculations, see How Amazon S3 Calculates When an Object Became Noncurrent // (https://docs.aws.amazon.com/AmazonS3/latest/dev/intro-lifecycle-rules.html#non-current-days-calculations) // in the Amazon S3 User Guide. NoncurrentDays *int64 `type:"integer"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s NoncurrentVersionExpiration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s NoncurrentVersionExpiration) GoString() string { return s.String() } // SetNewerNoncurrentVersions sets the NewerNoncurrentVersions field's value. func (s *NoncurrentVersionExpiration) SetNewerNoncurrentVersions(v int64) *NoncurrentVersionExpiration { s.NewerNoncurrentVersions = &v return s } // SetNoncurrentDays sets the NoncurrentDays field's value. func (s *NoncurrentVersionExpiration) SetNoncurrentDays(v int64) *NoncurrentVersionExpiration { s.NoncurrentDays = &v return s } // The container for the noncurrent version transition. type NoncurrentVersionTransition struct { _ struct{} `type:"structure"` // Specifies the number of days an object is noncurrent before Amazon S3 can // perform the associated action. For information about the noncurrent days // calculations, see How Amazon S3 Calculates How Long an Object Has Been Noncurrent // (https://docs.aws.amazon.com/AmazonS3/latest/dev/intro-lifecycle-rules.html#non-current-days-calculations) // in the Amazon S3 User Guide. NoncurrentDays *int64 `type:"integer"` // The class of storage used to store the object. StorageClass *string `type:"string" enum:"TransitionStorageClass"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s NoncurrentVersionTransition) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s NoncurrentVersionTransition) GoString() string { return s.String() } // SetNoncurrentDays sets the NoncurrentDays field's value. func (s *NoncurrentVersionTransition) SetNoncurrentDays(v int64) *NoncurrentVersionTransition { s.NoncurrentDays = &v return s } // SetStorageClass sets the StorageClass field's value. func (s *NoncurrentVersionTransition) SetStorageClass(v string) *NoncurrentVersionTransition { s.StorageClass = &v return s } // An access point with an attached Lambda function used to access transformed // data from an Amazon S3 bucket. type ObjectLambdaAccessPoint struct { _ struct{} `type:"structure"` // The alias of the Object Lambda Access Point. Alias *ObjectLambdaAccessPointAlias `type:"structure"` // The name of the Object Lambda Access Point. // // Name is a required field Name *string `min:"3" type:"string" required:"true"` // Specifies the ARN for the Object Lambda Access Point. ObjectLambdaAccessPointArn *string `min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ObjectLambdaAccessPoint) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ObjectLambdaAccessPoint) GoString() string { return s.String() } // SetAlias sets the Alias field's value. func (s *ObjectLambdaAccessPoint) SetAlias(v *ObjectLambdaAccessPointAlias) *ObjectLambdaAccessPoint { s.Alias = v return s } // SetName sets the Name field's value. func (s *ObjectLambdaAccessPoint) SetName(v string) *ObjectLambdaAccessPoint { s.Name = &v return s } // SetObjectLambdaAccessPointArn sets the ObjectLambdaAccessPointArn field's value. func (s *ObjectLambdaAccessPoint) SetObjectLambdaAccessPointArn(v string) *ObjectLambdaAccessPoint { s.ObjectLambdaAccessPointArn = &v return s } // The alias of an Object Lambda Access Point. For more information, see How // to use a bucket-style alias for your S3 bucket Object Lambda Access Point // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/olap-use.html#ol-access-points-alias). type ObjectLambdaAccessPointAlias struct { _ struct{} `type:"structure"` // The status of the Object Lambda Access Point alias. If the status is PROVISIONING, // the Object Lambda Access Point is provisioning the alias and the alias is // not ready for use yet. If the status is READY, the Object Lambda Access Point // alias is successfully provisioned and ready for use. Status *string `min:"2" type:"string" enum:"ObjectLambdaAccessPointAliasStatus"` // The alias value of the Object Lambda Access Point. Value *string `min:"3" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ObjectLambdaAccessPointAlias) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ObjectLambdaAccessPointAlias) GoString() string { return s.String() } // SetStatus sets the Status field's value. func (s *ObjectLambdaAccessPointAlias) SetStatus(v string) *ObjectLambdaAccessPointAlias { s.Status = &v return s } // SetValue sets the Value field's value. func (s *ObjectLambdaAccessPointAlias) SetValue(v string) *ObjectLambdaAccessPointAlias { s.Value = &v return s } // A configuration used when creating an Object Lambda Access Point. type ObjectLambdaConfiguration struct { _ struct{} `type:"structure"` // A container for allowed features. Valid inputs are GetObject-Range, GetObject-PartNumber, // HeadObject-Range, and HeadObject-PartNumber. AllowedFeatures []*string `locationNameList:"AllowedFeature" type:"list" enum:"ObjectLambdaAllowedFeature"` // A container for whether the CloudWatch metrics configuration is enabled. CloudWatchMetricsEnabled *bool `type:"boolean"` // Standard access point associated with the Object Lambda Access Point. // // SupportingAccessPoint is a required field SupportingAccessPoint *string `min:"1" type:"string" required:"true"` // A container for transformation configurations for an Object Lambda Access // Point. // // TransformationConfigurations is a required field TransformationConfigurations []*ObjectLambdaTransformationConfiguration `locationNameList:"TransformationConfiguration" type:"list" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ObjectLambdaConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ObjectLambdaConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ObjectLambdaConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ObjectLambdaConfiguration"} if s.SupportingAccessPoint == nil { invalidParams.Add(request.NewErrParamRequired("SupportingAccessPoint")) } if s.SupportingAccessPoint != nil && len(*s.SupportingAccessPoint) < 1 { invalidParams.Add(request.NewErrParamMinLen("SupportingAccessPoint", 1)) } if s.TransformationConfigurations == nil { invalidParams.Add(request.NewErrParamRequired("TransformationConfigurations")) } if s.TransformationConfigurations != nil { for i, v := range s.TransformationConfigurations { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "TransformationConfigurations", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAllowedFeatures sets the AllowedFeatures field's value. func (s *ObjectLambdaConfiguration) SetAllowedFeatures(v []*string) *ObjectLambdaConfiguration { s.AllowedFeatures = v return s } // SetCloudWatchMetricsEnabled sets the CloudWatchMetricsEnabled field's value. func (s *ObjectLambdaConfiguration) SetCloudWatchMetricsEnabled(v bool) *ObjectLambdaConfiguration { s.CloudWatchMetricsEnabled = &v return s } // SetSupportingAccessPoint sets the SupportingAccessPoint field's value. func (s *ObjectLambdaConfiguration) SetSupportingAccessPoint(v string) *ObjectLambdaConfiguration { s.SupportingAccessPoint = &v return s } // SetTransformationConfigurations sets the TransformationConfigurations field's value. func (s *ObjectLambdaConfiguration) SetTransformationConfigurations(v []*ObjectLambdaTransformationConfiguration) *ObjectLambdaConfiguration { s.TransformationConfigurations = v return s } // A container for AwsLambdaTransformation. type ObjectLambdaContentTransformation struct { _ struct{} `type:"structure"` // A container for an Lambda function. AwsLambda *AwsLambdaTransformation `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ObjectLambdaContentTransformation) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ObjectLambdaContentTransformation) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ObjectLambdaContentTransformation) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ObjectLambdaContentTransformation"} if s.AwsLambda != nil { if err := s.AwsLambda.Validate(); err != nil { invalidParams.AddNested("AwsLambda", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAwsLambda sets the AwsLambda field's value. func (s *ObjectLambdaContentTransformation) SetAwsLambda(v *AwsLambdaTransformation) *ObjectLambdaContentTransformation { s.AwsLambda = v return s } // A configuration used when creating an Object Lambda Access Point transformation. type ObjectLambdaTransformationConfiguration struct { _ struct{} `type:"structure"` // A container for the action of an Object Lambda Access Point configuration. // Valid inputs are GetObject, ListObjects, HeadObject, and ListObjectsV2. // // Actions is a required field Actions []*string `locationNameList:"Action" type:"list" required:"true" enum:"ObjectLambdaTransformationConfigurationAction"` // A container for the content transformation of an Object Lambda Access Point // configuration. // // ContentTransformation is a required field ContentTransformation *ObjectLambdaContentTransformation `type:"structure" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ObjectLambdaTransformationConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ObjectLambdaTransformationConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ObjectLambdaTransformationConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ObjectLambdaTransformationConfiguration"} if s.Actions == nil { invalidParams.Add(request.NewErrParamRequired("Actions")) } if s.ContentTransformation == nil { invalidParams.Add(request.NewErrParamRequired("ContentTransformation")) } if s.ContentTransformation != nil { if err := s.ContentTransformation.Validate(); err != nil { invalidParams.AddNested("ContentTransformation", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetActions sets the Actions field's value. func (s *ObjectLambdaTransformationConfiguration) SetActions(v []*string) *ObjectLambdaTransformationConfiguration { s.Actions = v return s } // SetContentTransformation sets the ContentTransformation field's value. func (s *ObjectLambdaTransformationConfiguration) SetContentTransformation(v *ObjectLambdaContentTransformation) *ObjectLambdaTransformationConfiguration { s.ContentTransformation = v return s } // Indicates whether this access point policy is public. For more information // about how Amazon S3 evaluates policies to determine whether they are public, // 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) // in the Amazon S3 User Guide. type PolicyStatus struct { _ struct{} `type:"structure"` IsPublic *bool `locationName:"IsPublic" type:"boolean"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PolicyStatus) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PolicyStatus) GoString() string { return s.String() } // SetIsPublic sets the IsPublic field's value. func (s *PolicyStatus) SetIsPublic(v bool) *PolicyStatus { s.IsPublic = &v return s } // A container for the prefix-level configuration. type PrefixLevel struct { _ struct{} `type:"structure"` // A container for the prefix-level storage metrics for S3 Storage Lens. // // StorageMetrics is a required field StorageMetrics *PrefixLevelStorageMetrics `type:"structure" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PrefixLevel) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PrefixLevel) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PrefixLevel) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PrefixLevel"} if s.StorageMetrics == nil { invalidParams.Add(request.NewErrParamRequired("StorageMetrics")) } if s.StorageMetrics != nil { if err := s.StorageMetrics.Validate(); err != nil { invalidParams.AddNested("StorageMetrics", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetStorageMetrics sets the StorageMetrics field's value. func (s *PrefixLevel) SetStorageMetrics(v *PrefixLevelStorageMetrics) *PrefixLevel { s.StorageMetrics = v return s } // A container for the prefix-level storage metrics for S3 Storage Lens. type PrefixLevelStorageMetrics struct { _ struct{} `type:"structure"` // A container for whether prefix-level storage metrics are enabled. IsEnabled *bool `type:"boolean"` SelectionCriteria *SelectionCriteria `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PrefixLevelStorageMetrics) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PrefixLevelStorageMetrics) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PrefixLevelStorageMetrics) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PrefixLevelStorageMetrics"} if s.SelectionCriteria != nil { if err := s.SelectionCriteria.Validate(); err != nil { invalidParams.AddNested("SelectionCriteria", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetIsEnabled sets the IsEnabled field's value. func (s *PrefixLevelStorageMetrics) SetIsEnabled(v bool) *PrefixLevelStorageMetrics { s.IsEnabled = &v return s } // SetSelectionCriteria sets the SelectionCriteria field's value. func (s *PrefixLevelStorageMetrics) SetSelectionCriteria(v *SelectionCriteria) *PrefixLevelStorageMetrics { s.SelectionCriteria = v return s } // The proposed access control policy for the Multi-Region Access Point. // // When you update the policy, the update is first listed as the proposed policy. // After the update is finished and all Regions have been updated, the proposed // policy is listed as the established policy. If both policies have the same // version number, the proposed policy is the established policy. type ProposedMultiRegionAccessPointPolicy struct { _ struct{} `type:"structure"` // The details of the proposed policy. Policy *string `type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ProposedMultiRegionAccessPointPolicy) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ProposedMultiRegionAccessPointPolicy) GoString() string { return s.String() } // SetPolicy sets the Policy field's value. func (s *ProposedMultiRegionAccessPointPolicy) SetPolicy(v string) *ProposedMultiRegionAccessPointPolicy { s.Policy = &v return s } // The PublicAccessBlock configuration that you want to apply to this Amazon // S3 account. You can enable the configuration options in any combination. // For more information about when Amazon S3 considers a bucket or object public, // 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) // in the Amazon S3 User Guide. // // This data type is not supported for Amazon S3 on Outposts. type PublicAccessBlockConfiguration struct { _ struct{} `type:"structure"` // Specifies whether Amazon S3 should block public access control lists (ACLs) // for buckets in this account. Setting this element to TRUE causes the following // behavior: // // * PutBucketAcl and PutObjectAcl calls fail if the specified ACL is public. // // * PUT Object calls fail if the request includes a public ACL. // // * PUT Bucket calls fail if the request includes a public ACL. // // Enabling this setting doesn't affect existing policies or ACLs. // // This property is not supported for Amazon S3 on Outposts. BlockPublicAcls *bool `locationName:"BlockPublicAcls" type:"boolean"` // Specifies whether Amazon S3 should block public bucket policies for buckets // in this account. Setting this element to TRUE causes Amazon S3 to reject // calls to PUT Bucket policy if the specified bucket policy allows public access. // // Enabling this setting doesn't affect existing bucket policies. // // This property is not supported for Amazon S3 on Outposts. BlockPublicPolicy *bool `locationName:"BlockPublicPolicy" type:"boolean"` // Specifies whether Amazon S3 should ignore public ACLs for buckets in this // account. Setting this element to TRUE causes Amazon S3 to ignore all public // ACLs on buckets in this account and any objects that they contain. // // Enabling this setting doesn't affect the persistence of any existing ACLs // and doesn't prevent new public ACLs from being set. // // This property is not supported for Amazon S3 on Outposts. IgnorePublicAcls *bool `locationName:"IgnorePublicAcls" type:"boolean"` // Specifies whether Amazon S3 should restrict public bucket policies for buckets // in this account. Setting this element to TRUE restricts access to buckets // with public policies to only Amazon Web Service principals and authorized // users within this account. // // Enabling this setting doesn't affect previously stored bucket policies, except // that public and cross-account access within any public bucket policy, including // non-public delegation to specific accounts, is blocked. // // This property is not supported for Amazon S3 on Outposts. RestrictPublicBuckets *bool `locationName:"RestrictPublicBuckets" type:"boolean"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PublicAccessBlockConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PublicAccessBlockConfiguration) GoString() string { return s.String() } // SetBlockPublicAcls sets the BlockPublicAcls field's value. func (s *PublicAccessBlockConfiguration) SetBlockPublicAcls(v bool) *PublicAccessBlockConfiguration { s.BlockPublicAcls = &v return s } // SetBlockPublicPolicy sets the BlockPublicPolicy field's value. func (s *PublicAccessBlockConfiguration) SetBlockPublicPolicy(v bool) *PublicAccessBlockConfiguration { s.BlockPublicPolicy = &v return s } // SetIgnorePublicAcls sets the IgnorePublicAcls field's value. func (s *PublicAccessBlockConfiguration) SetIgnorePublicAcls(v bool) *PublicAccessBlockConfiguration { s.IgnorePublicAcls = &v return s } // SetRestrictPublicBuckets sets the RestrictPublicBuckets field's value. func (s *PublicAccessBlockConfiguration) SetRestrictPublicBuckets(v bool) *PublicAccessBlockConfiguration { s.RestrictPublicBuckets = &v return s } type PutAccessPointConfigurationForObjectLambdaInput struct { _ struct{} `locationName:"PutAccessPointConfigurationForObjectLambdaRequest" type:"structure" xmlURI:"http://awss3control.amazonaws.com/doc/2018-08-20/"` // The account ID for the account that owns the specified Object Lambda Access // Point. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // Object Lambda Access Point configuration document. // // Configuration is a required field Configuration *ObjectLambdaConfiguration `type:"structure" required:"true"` // The name of the Object Lambda Access Point. // // Name is a required field Name *string `location:"uri" locationName:"name" min:"3" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutAccessPointConfigurationForObjectLambdaInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutAccessPointConfigurationForObjectLambdaInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutAccessPointConfigurationForObjectLambdaInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutAccessPointConfigurationForObjectLambdaInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.Configuration == nil { invalidParams.Add(request.NewErrParamRequired("Configuration")) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 3 { invalidParams.Add(request.NewErrParamMinLen("Name", 3)) } if s.Configuration != nil { if err := s.Configuration.Validate(); err != nil { invalidParams.AddNested("Configuration", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *PutAccessPointConfigurationForObjectLambdaInput) SetAccountId(v string) *PutAccessPointConfigurationForObjectLambdaInput { s.AccountId = &v return s } // SetConfiguration sets the Configuration field's value. func (s *PutAccessPointConfigurationForObjectLambdaInput) SetConfiguration(v *ObjectLambdaConfiguration) *PutAccessPointConfigurationForObjectLambdaInput { s.Configuration = v return s } // SetName sets the Name field's value. func (s *PutAccessPointConfigurationForObjectLambdaInput) SetName(v string) *PutAccessPointConfigurationForObjectLambdaInput { s.Name = &v return s } func (s *PutAccessPointConfigurationForObjectLambdaInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } type PutAccessPointConfigurationForObjectLambdaOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutAccessPointConfigurationForObjectLambdaOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutAccessPointConfigurationForObjectLambdaOutput) GoString() string { return s.String() } type PutAccessPointPolicyForObjectLambdaInput struct { _ struct{} `locationName:"PutAccessPointPolicyForObjectLambdaRequest" type:"structure" xmlURI:"http://awss3control.amazonaws.com/doc/2018-08-20/"` // The account ID for the account that owns the specified Object Lambda Access // Point. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // The name of the Object Lambda Access Point. // // Name is a required field Name *string `location:"uri" locationName:"name" min:"3" type:"string" required:"true"` // Object Lambda Access Point resource policy document. // // Policy is a required field Policy *string `type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutAccessPointPolicyForObjectLambdaInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutAccessPointPolicyForObjectLambdaInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutAccessPointPolicyForObjectLambdaInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutAccessPointPolicyForObjectLambdaInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 3 { invalidParams.Add(request.NewErrParamMinLen("Name", 3)) } if s.Policy == nil { invalidParams.Add(request.NewErrParamRequired("Policy")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *PutAccessPointPolicyForObjectLambdaInput) SetAccountId(v string) *PutAccessPointPolicyForObjectLambdaInput { s.AccountId = &v return s } // SetName sets the Name field's value. func (s *PutAccessPointPolicyForObjectLambdaInput) SetName(v string) *PutAccessPointPolicyForObjectLambdaInput { s.Name = &v return s } // SetPolicy sets the Policy field's value. func (s *PutAccessPointPolicyForObjectLambdaInput) SetPolicy(v string) *PutAccessPointPolicyForObjectLambdaInput { s.Policy = &v return s } func (s *PutAccessPointPolicyForObjectLambdaInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } type PutAccessPointPolicyForObjectLambdaOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutAccessPointPolicyForObjectLambdaOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutAccessPointPolicyForObjectLambdaOutput) GoString() string { return s.String() } type PutAccessPointPolicyInput struct { _ struct{} `locationName:"PutAccessPointPolicyRequest" type:"structure" xmlURI:"http://awss3control.amazonaws.com/doc/2018-08-20/"` // The Amazon Web Services account ID for owner of the bucket associated with // the specified access point. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // The name of the access point that you want to associate with the specified // policy. // // For using this parameter with Amazon S3 on Outposts with the REST API, you // must specify the name and the x-amz-outpost-id as well. // // For using this parameter with S3 on Outposts with the Amazon Web Services // SDK and CLI, you must specify the ARN of the access point accessed in the // format arn:aws:s3-outposts:::outpost//accesspoint/. // For example, to access the access point reports-ap through Outpost my-outpost // owned by account 123456789012 in Region us-west-2, use the URL encoding of // arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/accesspoint/reports-ap. // The value must be URL encoded. // // Name is a required field Name *string `location:"uri" locationName:"name" min:"3" type:"string" required:"true"` // The policy that you want to apply to the specified access point. For more // information about access point policies, see Managing data access with Amazon // S3 access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-points.html) // in the Amazon S3 User Guide. // // Policy is a required field Policy *string `type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutAccessPointPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutAccessPointPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutAccessPointPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutAccessPointPolicyInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 3 { invalidParams.Add(request.NewErrParamMinLen("Name", 3)) } if s.Policy == nil { invalidParams.Add(request.NewErrParamRequired("Policy")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *PutAccessPointPolicyInput) SetAccountId(v string) *PutAccessPointPolicyInput { s.AccountId = &v return s } // SetName sets the Name field's value. func (s *PutAccessPointPolicyInput) SetName(v string) *PutAccessPointPolicyInput { s.Name = &v return s } // SetPolicy sets the Policy field's value. func (s *PutAccessPointPolicyInput) SetPolicy(v string) *PutAccessPointPolicyInput { s.Policy = &v return s } func (s *PutAccessPointPolicyInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } func (s *PutAccessPointPolicyInput) getEndpointARN() (arn.Resource, error) { if s.Name == nil { return nil, fmt.Errorf("member Name is nil") } return parseEndpointARN(*s.Name) } func (s *PutAccessPointPolicyInput) hasEndpointARN() bool { if s.Name == nil { return false } return arn.IsARN(*s.Name) } // updateArnableField updates the value of the input field that // takes an ARN as an input. This method is useful to backfill // the parsed resource name from ARN into the input member. // It returns a pointer to a modified copy of input and an error. // Note that original input is not modified. func (s PutAccessPointPolicyInput) updateArnableField(v string) (interface{}, error) { if s.Name == nil { return nil, fmt.Errorf("member Name is nil") } s.Name = aws.String(v) return &s, nil } // updateAccountID returns a pointer to a modified copy of input, // if account id is not provided, we update the account id in modified input // if account id is provided, but doesn't match with the one in ARN, we throw an error // if account id is not updated, we return nil. Note that original input is not modified. func (s PutAccessPointPolicyInput) updateAccountID(accountId string) (interface{}, error) { if s.AccountId == nil { s.AccountId = aws.String(accountId) return &s, nil } else if *s.AccountId != accountId { return &s, fmt.Errorf("Account ID mismatch, the Account ID cannot be specified in an ARN and in the accountId field") } return nil, nil } type PutAccessPointPolicyOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutAccessPointPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutAccessPointPolicyOutput) GoString() string { return s.String() } type PutBucketLifecycleConfigurationInput struct { _ struct{} `locationName:"PutBucketLifecycleConfigurationRequest" type:"structure" payload:"LifecycleConfiguration"` // The Amazon Web Services account ID of the Outposts bucket. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // The name of the bucket for which to set the configuration. // // Bucket is a required field Bucket *string `location:"uri" locationName:"name" min:"3" type:"string" required:"true"` // Container for lifecycle rules. You can add as many as 1,000 rules. LifecycleConfiguration *LifecycleConfiguration `locationName:"LifecycleConfiguration" type:"structure" xmlURI:"http://awss3control.amazonaws.com/doc/2018-08-20/"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutBucketLifecycleConfigurationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutBucketLifecycleConfigurationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutBucketLifecycleConfigurationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutBucketLifecycleConfigurationInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if s.Bucket != nil && len(*s.Bucket) < 3 { invalidParams.Add(request.NewErrParamMinLen("Bucket", 3)) } if s.LifecycleConfiguration != nil { if err := s.LifecycleConfiguration.Validate(); err != nil { invalidParams.AddNested("LifecycleConfiguration", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *PutBucketLifecycleConfigurationInput) SetAccountId(v string) *PutBucketLifecycleConfigurationInput { s.AccountId = &v return s } // SetBucket sets the Bucket field's value. func (s *PutBucketLifecycleConfigurationInput) SetBucket(v string) *PutBucketLifecycleConfigurationInput { s.Bucket = &v return s } // SetLifecycleConfiguration sets the LifecycleConfiguration field's value. func (s *PutBucketLifecycleConfigurationInput) SetLifecycleConfiguration(v *LifecycleConfiguration) *PutBucketLifecycleConfigurationInput { s.LifecycleConfiguration = v return s } func (s *PutBucketLifecycleConfigurationInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } func (s *PutBucketLifecycleConfigurationInput) getEndpointARN() (arn.Resource, error) { if s.Bucket == nil { return nil, fmt.Errorf("member Bucket is nil") } return parseEndpointARN(*s.Bucket) } func (s *PutBucketLifecycleConfigurationInput) hasEndpointARN() bool { if s.Bucket == nil { return false } return arn.IsARN(*s.Bucket) } // updateArnableField updates the value of the input field that // takes an ARN as an input. This method is useful to backfill // the parsed resource name from ARN into the input member. // It returns a pointer to a modified copy of input and an error. // Note that original input is not modified. func (s PutBucketLifecycleConfigurationInput) updateArnableField(v string) (interface{}, error) { if s.Bucket == nil { return nil, fmt.Errorf("member Bucket is nil") } s.Bucket = aws.String(v) return &s, nil } // updateAccountID returns a pointer to a modified copy of input, // if account id is not provided, we update the account id in modified input // if account id is provided, but doesn't match with the one in ARN, we throw an error // if account id is not updated, we return nil. Note that original input is not modified. func (s PutBucketLifecycleConfigurationInput) updateAccountID(accountId string) (interface{}, error) { if s.AccountId == nil { s.AccountId = aws.String(accountId) return &s, nil } else if *s.AccountId != accountId { return &s, fmt.Errorf("Account ID mismatch, the Account ID cannot be specified in an ARN and in the accountId field") } return nil, nil } type PutBucketLifecycleConfigurationOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutBucketLifecycleConfigurationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutBucketLifecycleConfigurationOutput) GoString() string { return s.String() } type PutBucketPolicyInput struct { _ struct{} `locationName:"PutBucketPolicyRequest" type:"structure" xmlURI:"http://awss3control.amazonaws.com/doc/2018-08-20/"` // The Amazon Web Services account ID of the Outposts bucket. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // Specifies the bucket. // // For using this parameter with Amazon S3 on Outposts with the REST API, you // must specify the name and the x-amz-outpost-id as well. // // For using this parameter with S3 on Outposts with the Amazon Web Services // SDK and CLI, you must specify the ARN of the bucket accessed in the format // arn:aws:s3-outposts:::outpost//bucket/. // For example, to access the bucket reports through Outpost my-outpost owned // by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/bucket/reports. // The value must be URL encoded. // // Bucket is a required field Bucket *string `location:"uri" locationName:"name" min:"3" type:"string" required:"true"` // Set this parameter to true to confirm that you want to remove your permissions // to change this bucket policy in the future. // // This is not supported by Amazon S3 on Outposts buckets. ConfirmRemoveSelfBucketAccess *bool `location:"header" locationName:"x-amz-confirm-remove-self-bucket-access" type:"boolean"` // The bucket policy as a JSON document. // // Policy is a required field Policy *string `type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutBucketPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutBucketPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutBucketPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutBucketPolicyInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if s.Bucket != nil && len(*s.Bucket) < 3 { invalidParams.Add(request.NewErrParamMinLen("Bucket", 3)) } if s.Policy == nil { invalidParams.Add(request.NewErrParamRequired("Policy")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *PutBucketPolicyInput) SetAccountId(v string) *PutBucketPolicyInput { s.AccountId = &v return s } // SetBucket sets the Bucket field's value. func (s *PutBucketPolicyInput) SetBucket(v string) *PutBucketPolicyInput { s.Bucket = &v return s } // SetConfirmRemoveSelfBucketAccess sets the ConfirmRemoveSelfBucketAccess field's value. func (s *PutBucketPolicyInput) SetConfirmRemoveSelfBucketAccess(v bool) *PutBucketPolicyInput { s.ConfirmRemoveSelfBucketAccess = &v return s } // SetPolicy sets the Policy field's value. func (s *PutBucketPolicyInput) SetPolicy(v string) *PutBucketPolicyInput { s.Policy = &v return s } func (s *PutBucketPolicyInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } func (s *PutBucketPolicyInput) getEndpointARN() (arn.Resource, error) { if s.Bucket == nil { return nil, fmt.Errorf("member Bucket is nil") } return parseEndpointARN(*s.Bucket) } func (s *PutBucketPolicyInput) hasEndpointARN() bool { if s.Bucket == nil { return false } return arn.IsARN(*s.Bucket) } // updateArnableField updates the value of the input field that // takes an ARN as an input. This method is useful to backfill // the parsed resource name from ARN into the input member. // It returns a pointer to a modified copy of input and an error. // Note that original input is not modified. func (s PutBucketPolicyInput) updateArnableField(v string) (interface{}, error) { if s.Bucket == nil { return nil, fmt.Errorf("member Bucket is nil") } s.Bucket = aws.String(v) return &s, nil } // updateAccountID returns a pointer to a modified copy of input, // if account id is not provided, we update the account id in modified input // if account id is provided, but doesn't match with the one in ARN, we throw an error // if account id is not updated, we return nil. Note that original input is not modified. func (s PutBucketPolicyInput) updateAccountID(accountId string) (interface{}, error) { if s.AccountId == nil { s.AccountId = aws.String(accountId) return &s, nil } else if *s.AccountId != accountId { return &s, fmt.Errorf("Account ID mismatch, the Account ID cannot be specified in an ARN and in the accountId field") } return nil, nil } type PutBucketPolicyOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutBucketPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutBucketPolicyOutput) GoString() string { return s.String() } type PutBucketReplicationInput struct { _ struct{} `locationName:"PutBucketReplicationRequest" type:"structure" payload:"ReplicationConfiguration"` // The Amazon Web Services account ID of the Outposts bucket. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // Specifies the S3 on Outposts bucket to set the configuration for. // // For using this parameter with Amazon S3 on Outposts with the REST API, you // must specify the name and the x-amz-outpost-id as well. // // For using this parameter with S3 on Outposts with the Amazon Web Services // SDK and CLI, you must specify the ARN of the bucket accessed in the format // arn:aws:s3-outposts:::outpost//bucket/. // For example, to access the bucket reports through Outpost my-outpost owned // by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/bucket/reports. // The value must be URL encoded. // // Bucket is a required field Bucket *string `location:"uri" locationName:"name" min:"3" type:"string" required:"true"` // A container for one or more replication rules. A replication configuration // must have at least one rule and you can add up to 100 rules. The maximum // size of a replication configuration is 128 KB. // // ReplicationConfiguration is a required field ReplicationConfiguration *ReplicationConfiguration `locationName:"ReplicationConfiguration" type:"structure" required:"true" xmlURI:"http://awss3control.amazonaws.com/doc/2018-08-20/"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutBucketReplicationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutBucketReplicationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutBucketReplicationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutBucketReplicationInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if s.Bucket != nil && len(*s.Bucket) < 3 { invalidParams.Add(request.NewErrParamMinLen("Bucket", 3)) } if s.ReplicationConfiguration == nil { invalidParams.Add(request.NewErrParamRequired("ReplicationConfiguration")) } if s.ReplicationConfiguration != nil { if err := s.ReplicationConfiguration.Validate(); err != nil { invalidParams.AddNested("ReplicationConfiguration", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *PutBucketReplicationInput) SetAccountId(v string) *PutBucketReplicationInput { s.AccountId = &v return s } // SetBucket sets the Bucket field's value. func (s *PutBucketReplicationInput) SetBucket(v string) *PutBucketReplicationInput { s.Bucket = &v return s } // SetReplicationConfiguration sets the ReplicationConfiguration field's value. func (s *PutBucketReplicationInput) SetReplicationConfiguration(v *ReplicationConfiguration) *PutBucketReplicationInput { s.ReplicationConfiguration = v return s } func (s *PutBucketReplicationInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } func (s *PutBucketReplicationInput) getEndpointARN() (arn.Resource, error) { if s.Bucket == nil { return nil, fmt.Errorf("member Bucket is nil") } return parseEndpointARN(*s.Bucket) } func (s *PutBucketReplicationInput) hasEndpointARN() bool { if s.Bucket == nil { return false } return arn.IsARN(*s.Bucket) } // updateArnableField updates the value of the input field that // takes an ARN as an input. This method is useful to backfill // the parsed resource name from ARN into the input member. // It returns a pointer to a modified copy of input and an error. // Note that original input is not modified. func (s PutBucketReplicationInput) updateArnableField(v string) (interface{}, error) { if s.Bucket == nil { return nil, fmt.Errorf("member Bucket is nil") } s.Bucket = aws.String(v) return &s, nil } // updateAccountID returns a pointer to a modified copy of input, // if account id is not provided, we update the account id in modified input // if account id is provided, but doesn't match with the one in ARN, we throw an error // if account id is not updated, we return nil. Note that original input is not modified. func (s PutBucketReplicationInput) updateAccountID(accountId string) (interface{}, error) { if s.AccountId == nil { s.AccountId = aws.String(accountId) return &s, nil } else if *s.AccountId != accountId { return &s, fmt.Errorf("Account ID mismatch, the Account ID cannot be specified in an ARN and in the accountId field") } return nil, nil } type PutBucketReplicationOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutBucketReplicationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutBucketReplicationOutput) GoString() string { return s.String() } type PutBucketTaggingInput struct { _ struct{} `locationName:"PutBucketTaggingRequest" type:"structure" payload:"Tagging"` // The Amazon Web Services account ID of the Outposts bucket. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // The Amazon Resource Name (ARN) of the bucket. // // For using this parameter with Amazon S3 on Outposts with the REST API, you // must specify the name and the x-amz-outpost-id as well. // // For using this parameter with S3 on Outposts with the Amazon Web Services // SDK and CLI, you must specify the ARN of the bucket accessed in the format // arn:aws:s3-outposts:::outpost//bucket/. // For example, to access the bucket reports through Outpost my-outpost owned // by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/bucket/reports. // The value must be URL encoded. // // Bucket is a required field Bucket *string `location:"uri" locationName:"name" min:"3" type:"string" required:"true"` // Tagging is a required field Tagging *Tagging `locationName:"Tagging" type:"structure" required:"true" xmlURI:"http://awss3control.amazonaws.com/doc/2018-08-20/"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutBucketTaggingInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutBucketTaggingInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutBucketTaggingInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutBucketTaggingInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if s.Bucket != nil && len(*s.Bucket) < 3 { invalidParams.Add(request.NewErrParamMinLen("Bucket", 3)) } if s.Tagging == nil { invalidParams.Add(request.NewErrParamRequired("Tagging")) } if s.Tagging != nil { if err := s.Tagging.Validate(); err != nil { invalidParams.AddNested("Tagging", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *PutBucketTaggingInput) SetAccountId(v string) *PutBucketTaggingInput { s.AccountId = &v return s } // SetBucket sets the Bucket field's value. func (s *PutBucketTaggingInput) SetBucket(v string) *PutBucketTaggingInput { s.Bucket = &v return s } // SetTagging sets the Tagging field's value. func (s *PutBucketTaggingInput) SetTagging(v *Tagging) *PutBucketTaggingInput { s.Tagging = v return s } func (s *PutBucketTaggingInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } func (s *PutBucketTaggingInput) getEndpointARN() (arn.Resource, error) { if s.Bucket == nil { return nil, fmt.Errorf("member Bucket is nil") } return parseEndpointARN(*s.Bucket) } func (s *PutBucketTaggingInput) hasEndpointARN() bool { if s.Bucket == nil { return false } return arn.IsARN(*s.Bucket) } // updateArnableField updates the value of the input field that // takes an ARN as an input. This method is useful to backfill // the parsed resource name from ARN into the input member. // It returns a pointer to a modified copy of input and an error. // Note that original input is not modified. func (s PutBucketTaggingInput) updateArnableField(v string) (interface{}, error) { if s.Bucket == nil { return nil, fmt.Errorf("member Bucket is nil") } s.Bucket = aws.String(v) return &s, nil } // updateAccountID returns a pointer to a modified copy of input, // if account id is not provided, we update the account id in modified input // if account id is provided, but doesn't match with the one in ARN, we throw an error // if account id is not updated, we return nil. Note that original input is not modified. func (s PutBucketTaggingInput) updateAccountID(accountId string) (interface{}, error) { if s.AccountId == nil { s.AccountId = aws.String(accountId) return &s, nil } else if *s.AccountId != accountId { return &s, fmt.Errorf("Account ID mismatch, the Account ID cannot be specified in an ARN and in the accountId field") } return nil, nil } type PutBucketTaggingOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutBucketTaggingOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutBucketTaggingOutput) GoString() string { return s.String() } type PutBucketVersioningInput struct { _ struct{} `locationName:"PutBucketVersioningRequest" type:"structure" payload:"VersioningConfiguration"` // The Amazon Web Services account ID of the S3 on Outposts bucket. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // The S3 on Outposts bucket to set the versioning state for. // // Bucket is a required field Bucket *string `location:"uri" locationName:"name" min:"3" type:"string" required:"true"` // The concatenation of the authentication device's serial number, a space, // and the value that is displayed on your authentication device. MFA *string `location:"header" locationName:"x-amz-mfa" type:"string"` // The root-level tag for the VersioningConfiguration parameters. // // VersioningConfiguration is a required field VersioningConfiguration *VersioningConfiguration `locationName:"VersioningConfiguration" type:"structure" required:"true" xmlURI:"http://awss3control.amazonaws.com/doc/2018-08-20/"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutBucketVersioningInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutBucketVersioningInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutBucketVersioningInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutBucketVersioningInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if s.Bucket != nil && len(*s.Bucket) < 3 { invalidParams.Add(request.NewErrParamMinLen("Bucket", 3)) } if s.VersioningConfiguration == nil { invalidParams.Add(request.NewErrParamRequired("VersioningConfiguration")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *PutBucketVersioningInput) SetAccountId(v string) *PutBucketVersioningInput { s.AccountId = &v return s } // SetBucket sets the Bucket field's value. func (s *PutBucketVersioningInput) SetBucket(v string) *PutBucketVersioningInput { s.Bucket = &v return s } // SetMFA sets the MFA field's value. func (s *PutBucketVersioningInput) SetMFA(v string) *PutBucketVersioningInput { s.MFA = &v return s } // SetVersioningConfiguration sets the VersioningConfiguration field's value. func (s *PutBucketVersioningInput) SetVersioningConfiguration(v *VersioningConfiguration) *PutBucketVersioningInput { s.VersioningConfiguration = v return s } func (s *PutBucketVersioningInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } func (s *PutBucketVersioningInput) getEndpointARN() (arn.Resource, error) { if s.Bucket == nil { return nil, fmt.Errorf("member Bucket is nil") } return parseEndpointARN(*s.Bucket) } func (s *PutBucketVersioningInput) hasEndpointARN() bool { if s.Bucket == nil { return false } return arn.IsARN(*s.Bucket) } // updateArnableField updates the value of the input field that // takes an ARN as an input. This method is useful to backfill // the parsed resource name from ARN into the input member. // It returns a pointer to a modified copy of input and an error. // Note that original input is not modified. func (s PutBucketVersioningInput) updateArnableField(v string) (interface{}, error) { if s.Bucket == nil { return nil, fmt.Errorf("member Bucket is nil") } s.Bucket = aws.String(v) return &s, nil } // updateAccountID returns a pointer to a modified copy of input, // if account id is not provided, we update the account id in modified input // if account id is provided, but doesn't match with the one in ARN, we throw an error // if account id is not updated, we return nil. Note that original input is not modified. func (s PutBucketVersioningInput) updateAccountID(accountId string) (interface{}, error) { if s.AccountId == nil { s.AccountId = aws.String(accountId) return &s, nil } else if *s.AccountId != accountId { return &s, fmt.Errorf("Account ID mismatch, the Account ID cannot be specified in an ARN and in the accountId field") } return nil, nil } type PutBucketVersioningOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutBucketVersioningOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutBucketVersioningOutput) GoString() string { return s.String() } type PutJobTaggingInput struct { _ struct{} `locationName:"PutJobTaggingRequest" type:"structure" xmlURI:"http://awss3control.amazonaws.com/doc/2018-08-20/"` // The Amazon Web Services account ID associated with the S3 Batch Operations // job. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // The ID for the S3 Batch Operations job whose tags you want to replace. // // JobId is a required field JobId *string `location:"uri" locationName:"id" min:"5" type:"string" required:"true"` // The set of tags to associate with the S3 Batch Operations job. // // Tags is a required field Tags []*S3Tag `type:"list" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutJobTaggingInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutJobTaggingInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutJobTaggingInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutJobTaggingInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.JobId == nil { invalidParams.Add(request.NewErrParamRequired("JobId")) } if s.JobId != nil && len(*s.JobId) < 5 { invalidParams.Add(request.NewErrParamMinLen("JobId", 5)) } if s.Tags == nil { invalidParams.Add(request.NewErrParamRequired("Tags")) } if s.Tags != nil { for i, v := range s.Tags { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *PutJobTaggingInput) SetAccountId(v string) *PutJobTaggingInput { s.AccountId = &v return s } // SetJobId sets the JobId field's value. func (s *PutJobTaggingInput) SetJobId(v string) *PutJobTaggingInput { s.JobId = &v return s } // SetTags sets the Tags field's value. func (s *PutJobTaggingInput) SetTags(v []*S3Tag) *PutJobTaggingInput { s.Tags = v return s } func (s *PutJobTaggingInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } type PutJobTaggingOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutJobTaggingOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutJobTaggingOutput) GoString() string { return s.String() } type PutMultiRegionAccessPointPolicyInput struct { _ struct{} `locationName:"PutMultiRegionAccessPointPolicyRequest" type:"structure" xmlURI:"http://awss3control.amazonaws.com/doc/2018-08-20/"` // The Amazon Web Services account ID for the owner of the Multi-Region Access // Point. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // An idempotency token used to identify the request and guarantee that requests // are unique. ClientToken *string `type:"string" idempotencyToken:"true"` // A container element containing the details of the policy for the Multi-Region // Access Point. // // Details is a required field Details *PutMultiRegionAccessPointPolicyInput_ `type:"structure" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutMultiRegionAccessPointPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutMultiRegionAccessPointPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutMultiRegionAccessPointPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutMultiRegionAccessPointPolicyInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.Details == nil { invalidParams.Add(request.NewErrParamRequired("Details")) } if s.Details != nil { if err := s.Details.Validate(); err != nil { invalidParams.AddNested("Details", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *PutMultiRegionAccessPointPolicyInput) SetAccountId(v string) *PutMultiRegionAccessPointPolicyInput { s.AccountId = &v return s } // SetClientToken sets the ClientToken field's value. func (s *PutMultiRegionAccessPointPolicyInput) SetClientToken(v string) *PutMultiRegionAccessPointPolicyInput { s.ClientToken = &v return s } // SetDetails sets the Details field's value. func (s *PutMultiRegionAccessPointPolicyInput) SetDetails(v *PutMultiRegionAccessPointPolicyInput_) *PutMultiRegionAccessPointPolicyInput { s.Details = v return s } func (s *PutMultiRegionAccessPointPolicyInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } // A container for the information associated with a PutMultiRegionAccessPoint // (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_PutMultiRegionAccessPoint.html) // request. type PutMultiRegionAccessPointPolicyInput_ struct { _ struct{} `type:"structure"` // The name of the Multi-Region Access Point associated with the request. // // Name is a required field Name *string `type:"string" required:"true"` // The policy details for the PutMultiRegionAccessPoint request. // // Policy is a required field Policy *string `type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutMultiRegionAccessPointPolicyInput_) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutMultiRegionAccessPointPolicyInput_) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutMultiRegionAccessPointPolicyInput_) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutMultiRegionAccessPointPolicyInput_"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Policy == nil { invalidParams.Add(request.NewErrParamRequired("Policy")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetName sets the Name field's value. func (s *PutMultiRegionAccessPointPolicyInput_) SetName(v string) *PutMultiRegionAccessPointPolicyInput_ { s.Name = &v return s } // SetPolicy sets the Policy field's value. func (s *PutMultiRegionAccessPointPolicyInput_) SetPolicy(v string) *PutMultiRegionAccessPointPolicyInput_ { s.Policy = &v return s } type PutMultiRegionAccessPointPolicyOutput struct { _ struct{} `type:"structure"` // The request token associated with the request. You can use this token with // DescribeMultiRegionAccessPointOperation (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DescribeMultiRegionAccessPointOperation.html) // to determine the status of asynchronous requests. RequestTokenARN *string `min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutMultiRegionAccessPointPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutMultiRegionAccessPointPolicyOutput) GoString() string { return s.String() } // SetRequestTokenARN sets the RequestTokenARN field's value. func (s *PutMultiRegionAccessPointPolicyOutput) SetRequestTokenARN(v string) *PutMultiRegionAccessPointPolicyOutput { s.RequestTokenARN = &v return s } type PutPublicAccessBlockInput struct { _ struct{} `locationName:"PutPublicAccessBlockRequest" type:"structure" payload:"PublicAccessBlockConfiguration"` // The account ID for the Amazon Web Services account whose PublicAccessBlock // configuration you want to set. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // The PublicAccessBlock configuration that you want to apply to the specified // Amazon Web Services account. // // PublicAccessBlockConfiguration is a required field PublicAccessBlockConfiguration *PublicAccessBlockConfiguration `locationName:"PublicAccessBlockConfiguration" type:"structure" required:"true" xmlURI:"http://awss3control.amazonaws.com/doc/2018-08-20/"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutPublicAccessBlockInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutPublicAccessBlockInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutPublicAccessBlockInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutPublicAccessBlockInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.PublicAccessBlockConfiguration == nil { invalidParams.Add(request.NewErrParamRequired("PublicAccessBlockConfiguration")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *PutPublicAccessBlockInput) SetAccountId(v string) *PutPublicAccessBlockInput { s.AccountId = &v return s } // SetPublicAccessBlockConfiguration sets the PublicAccessBlockConfiguration field's value. func (s *PutPublicAccessBlockInput) SetPublicAccessBlockConfiguration(v *PublicAccessBlockConfiguration) *PutPublicAccessBlockInput { s.PublicAccessBlockConfiguration = v return s } func (s *PutPublicAccessBlockInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } type PutPublicAccessBlockOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutPublicAccessBlockOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutPublicAccessBlockOutput) GoString() string { return s.String() } type PutStorageLensConfigurationInput struct { _ struct{} `locationName:"PutStorageLensConfigurationRequest" type:"structure" xmlURI:"http://awss3control.amazonaws.com/doc/2018-08-20/"` // The account ID of the requester. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // The ID of the S3 Storage Lens configuration. // // ConfigId is a required field ConfigId *string `location:"uri" locationName:"storagelensid" min:"1" type:"string" required:"true"` // The S3 Storage Lens configuration. // // StorageLensConfiguration is a required field StorageLensConfiguration *StorageLensConfiguration `type:"structure" required:"true"` // The tag set of the S3 Storage Lens configuration. // // You can set up to a maximum of 50 tags. Tags []*StorageLensTag `locationNameList:"Tag" type:"list"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutStorageLensConfigurationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutStorageLensConfigurationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutStorageLensConfigurationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutStorageLensConfigurationInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.ConfigId == nil { invalidParams.Add(request.NewErrParamRequired("ConfigId")) } if s.ConfigId != nil && len(*s.ConfigId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ConfigId", 1)) } if s.StorageLensConfiguration == nil { invalidParams.Add(request.NewErrParamRequired("StorageLensConfiguration")) } if s.StorageLensConfiguration != nil { if err := s.StorageLensConfiguration.Validate(); err != nil { invalidParams.AddNested("StorageLensConfiguration", err.(request.ErrInvalidParams)) } } if s.Tags != nil { for i, v := range s.Tags { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *PutStorageLensConfigurationInput) SetAccountId(v string) *PutStorageLensConfigurationInput { s.AccountId = &v return s } // SetConfigId sets the ConfigId field's value. func (s *PutStorageLensConfigurationInput) SetConfigId(v string) *PutStorageLensConfigurationInput { s.ConfigId = &v return s } // SetStorageLensConfiguration sets the StorageLensConfiguration field's value. func (s *PutStorageLensConfigurationInput) SetStorageLensConfiguration(v *StorageLensConfiguration) *PutStorageLensConfigurationInput { s.StorageLensConfiguration = v return s } // SetTags sets the Tags field's value. func (s *PutStorageLensConfigurationInput) SetTags(v []*StorageLensTag) *PutStorageLensConfigurationInput { s.Tags = v return s } func (s *PutStorageLensConfigurationInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } type PutStorageLensConfigurationOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutStorageLensConfigurationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutStorageLensConfigurationOutput) GoString() string { return s.String() } type PutStorageLensConfigurationTaggingInput struct { _ struct{} `locationName:"PutStorageLensConfigurationTaggingRequest" type:"structure" xmlURI:"http://awss3control.amazonaws.com/doc/2018-08-20/"` // The account ID of the requester. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // The ID of the S3 Storage Lens configuration. // // ConfigId is a required field ConfigId *string `location:"uri" locationName:"storagelensid" min:"1" type:"string" required:"true"` // The tag set of the S3 Storage Lens configuration. // // You can set up to a maximum of 50 tags. // // Tags is a required field Tags []*StorageLensTag `locationNameList:"Tag" type:"list" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutStorageLensConfigurationTaggingInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutStorageLensConfigurationTaggingInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutStorageLensConfigurationTaggingInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutStorageLensConfigurationTaggingInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.ConfigId == nil { invalidParams.Add(request.NewErrParamRequired("ConfigId")) } if s.ConfigId != nil && len(*s.ConfigId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ConfigId", 1)) } if s.Tags == nil { invalidParams.Add(request.NewErrParamRequired("Tags")) } if s.Tags != nil { for i, v := range s.Tags { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *PutStorageLensConfigurationTaggingInput) SetAccountId(v string) *PutStorageLensConfigurationTaggingInput { s.AccountId = &v return s } // SetConfigId sets the ConfigId field's value. func (s *PutStorageLensConfigurationTaggingInput) SetConfigId(v string) *PutStorageLensConfigurationTaggingInput { s.ConfigId = &v return s } // SetTags sets the Tags field's value. func (s *PutStorageLensConfigurationTaggingInput) SetTags(v []*StorageLensTag) *PutStorageLensConfigurationTaggingInput { s.Tags = v return s } func (s *PutStorageLensConfigurationTaggingInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } type PutStorageLensConfigurationTaggingOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutStorageLensConfigurationTaggingOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutStorageLensConfigurationTaggingOutput) GoString() string { return s.String() } // A Region that supports a Multi-Region Access Point as well as the associated // bucket for the Region. type Region struct { _ struct{} `type:"structure"` // The name of the associated bucket for the Region. // // Bucket is a required field Bucket *string `min:"3" type:"string" required:"true"` // The Amazon Web Services account ID that owns the Amazon S3 bucket that's // associated with this Multi-Region Access Point. BucketAccountId *string `type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s Region) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s Region) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Region) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Region"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if s.Bucket != nil && len(*s.Bucket) < 3 { invalidParams.Add(request.NewErrParamMinLen("Bucket", 3)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetBucket sets the Bucket field's value. func (s *Region) SetBucket(v string) *Region { s.Bucket = &v return s } // SetBucketAccountId sets the BucketAccountId field's value. func (s *Region) SetBucketAccountId(v string) *Region { s.BucketAccountId = &v return s } // A combination of a bucket and Region that's part of a Multi-Region Access // Point. type RegionReport struct { _ struct{} `type:"structure"` // The name of the bucket. Bucket *string `min:"3" type:"string"` // The Amazon Web Services account ID that owns the Amazon S3 bucket that's // associated with this Multi-Region Access Point. BucketAccountId *string `type:"string"` // The name of the Region. Region *string `min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s RegionReport) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s RegionReport) GoString() string { return s.String() } // SetBucket sets the Bucket field's value. func (s *RegionReport) SetBucket(v string) *RegionReport { s.Bucket = &v return s } // SetBucketAccountId sets the BucketAccountId field's value. func (s *RegionReport) SetBucketAccountId(v string) *RegionReport { s.BucketAccountId = &v return s } // SetRegion sets the Region field's value. func (s *RegionReport) SetRegion(v string) *RegionReport { s.Region = &v return s } // The container for the regional bucket. type RegionalBucket struct { _ struct{} `type:"structure"` // Bucket is a required field Bucket *string `min:"3" type:"string" required:"true"` // The Amazon Resource Name (ARN) for the regional bucket. BucketArn *string `min:"4" type:"string"` // The creation date of the regional bucket // // CreationDate is a required field CreationDate *time.Time `type:"timestamp" required:"true"` // The Outposts ID of the regional bucket. OutpostId *string `min:"1" type:"string"` // PublicAccessBlockEnabled is a required field PublicAccessBlockEnabled *bool `type:"boolean" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s RegionalBucket) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s RegionalBucket) GoString() string { return s.String() } // SetBucket sets the Bucket field's value. func (s *RegionalBucket) SetBucket(v string) *RegionalBucket { s.Bucket = &v return s } // SetBucketArn sets the BucketArn field's value. func (s *RegionalBucket) SetBucketArn(v string) *RegionalBucket { s.BucketArn = &v return s } // SetCreationDate sets the CreationDate field's value. func (s *RegionalBucket) SetCreationDate(v time.Time) *RegionalBucket { s.CreationDate = &v return s } // SetOutpostId sets the OutpostId field's value. func (s *RegionalBucket) SetOutpostId(v string) *RegionalBucket { s.OutpostId = &v return s } // SetPublicAccessBlockEnabled sets the PublicAccessBlockEnabled field's value. func (s *RegionalBucket) SetPublicAccessBlockEnabled(v bool) *RegionalBucket { s.PublicAccessBlockEnabled = &v return s } // A filter that you can use to specify whether replica modification sync is // enabled. S3 on Outposts replica modification sync can help you keep object // metadata synchronized between replicas and source objects. By default, S3 // on Outposts replicates metadata from the source objects to the replicas only. // When replica modification sync is enabled, S3 on Outposts replicates metadata // changes made to the replica copies back to the source object, making the // replication bidirectional. // // To replicate object metadata modifications on replicas, you can specify this // element and set the Status of this element to Enabled. // // You must enable replica modification sync on the source and destination buckets // to replicate replica metadata changes between the source and the replicas. type ReplicaModifications struct { _ struct{} `type:"structure"` // Specifies whether S3 on Outposts replicates modifications to object metadata // on replicas. // // Status is a required field Status *string `type:"string" required:"true" enum:"ReplicaModificationsStatus"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ReplicaModifications) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ReplicaModifications) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ReplicaModifications) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ReplicaModifications"} if s.Status == nil { invalidParams.Add(request.NewErrParamRequired("Status")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetStatus sets the Status field's value. func (s *ReplicaModifications) SetStatus(v string) *ReplicaModifications { s.Status = &v return s } // A container for one or more replication rules. A replication configuration // must have at least one rule and you can add up to 100 rules. The maximum // size of a replication configuration is 128 KB. type ReplicationConfiguration struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the Identity and Access Management (IAM) // role that S3 on Outposts assumes when replicating objects. For information // about S3 replication on Outposts configuration, see Setting up replication // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/outposts-replication-how-setup.html) // in the Amazon S3 User Guide. // // Role is a required field Role *string `type:"string" required:"true"` // A container for one or more replication rules. A replication configuration // must have at least one rule and can contain an array of 100 rules at the // most. // // Rules is a required field Rules []*ReplicationRule `locationNameList:"Rule" type:"list" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ReplicationConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ReplicationConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ReplicationConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ReplicationConfiguration"} if s.Role == nil { invalidParams.Add(request.NewErrParamRequired("Role")) } if s.Rules == nil { invalidParams.Add(request.NewErrParamRequired("Rules")) } if s.Rules != nil { for i, v := range s.Rules { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Rules", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetRole sets the Role field's value. func (s *ReplicationConfiguration) SetRole(v string) *ReplicationConfiguration { s.Role = &v return s } // SetRules sets the Rules field's value. func (s *ReplicationConfiguration) SetRules(v []*ReplicationRule) *ReplicationConfiguration { s.Rules = v return s } // Specifies which S3 on Outposts objects to replicate and where to store the // replicas. type ReplicationRule struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the access point for the source Outposts // bucket that you want S3 on Outposts to replicate the objects from. // // Bucket is a required field Bucket *string `type:"string" required:"true"` // Specifies whether S3 on Outposts replicates delete markers. If you specify // a Filter element in your replication configuration, you must also include // a DeleteMarkerReplication element. If your Filter includes a Tag element, // the DeleteMarkerReplication element's Status child element must be set to // Disabled, because S3 on Outposts doesn't support replicating delete markers // for tag-based rules. // // For more information about delete marker replication, see How delete operations // affect replication (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3OutpostsReplication.html#outposts-replication-what-is-replicated) // in the Amazon S3 User Guide. DeleteMarkerReplication *DeleteMarkerReplication `type:"structure"` // A container for information about the replication destination and its configurations. // // Destination is a required field Destination *Destination `type:"structure" required:"true"` // An optional configuration to replicate existing source bucket objects. // // This is not supported by Amazon S3 on Outposts buckets. ExistingObjectReplication *ExistingObjectReplication `type:"structure"` // A filter that identifies the subset of objects to which the replication rule // applies. A Filter element must specify exactly one Prefix, Tag, or And child // element. Filter *ReplicationRuleFilter `type:"structure"` // A unique identifier for the rule. The maximum value is 255 characters. ID *string `type:"string"` // An object key name prefix that identifies the object or objects to which // the rule applies. The maximum prefix length is 1,024 characters. To include // all objects in an Outposts bucket, specify an empty string. // // When you're using XML requests, you must replace special characters (such // as carriage returns) in object keys with their equivalent XML entity codes. // For more information, see XML-related object key constraints (https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints) // in the Amazon S3 User Guide. // // Deprecated: Prefix has been deprecated Prefix *string `deprecated:"true" type:"string"` // The priority indicates which rule has precedence whenever two or more replication // rules conflict. S3 on Outposts attempts to replicate objects according to // all replication rules. However, if there are two or more rules with the same // destination Outposts bucket, then objects will be replicated according to // the rule with the highest priority. The higher the number, the higher the // priority. // // For more information, see Creating replication rules on Outposts (https://docs.aws.amazon.com/AmazonS3/latest/userguide/replication-between-outposts.html) // in the Amazon S3 User Guide. Priority *int64 `type:"integer"` // A container that describes additional filters for identifying the source // Outposts objects that you want to replicate. You can choose to enable or // disable the replication of these objects. SourceSelectionCriteria *SourceSelectionCriteria `type:"structure"` // Specifies whether the rule is enabled. // // Status is a required field Status *string `type:"string" required:"true" enum:"ReplicationRuleStatus"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ReplicationRule) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ReplicationRule) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ReplicationRule) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ReplicationRule"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if s.Destination == nil { invalidParams.Add(request.NewErrParamRequired("Destination")) } if s.Status == nil { invalidParams.Add(request.NewErrParamRequired("Status")) } if s.DeleteMarkerReplication != nil { if err := s.DeleteMarkerReplication.Validate(); err != nil { invalidParams.AddNested("DeleteMarkerReplication", err.(request.ErrInvalidParams)) } } if s.Destination != nil { if err := s.Destination.Validate(); err != nil { invalidParams.AddNested("Destination", err.(request.ErrInvalidParams)) } } if s.ExistingObjectReplication != nil { if err := s.ExistingObjectReplication.Validate(); err != nil { invalidParams.AddNested("ExistingObjectReplication", err.(request.ErrInvalidParams)) } } if s.Filter != nil { if err := s.Filter.Validate(); err != nil { invalidParams.AddNested("Filter", err.(request.ErrInvalidParams)) } } if s.SourceSelectionCriteria != nil { if err := s.SourceSelectionCriteria.Validate(); err != nil { invalidParams.AddNested("SourceSelectionCriteria", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetBucket sets the Bucket field's value. func (s *ReplicationRule) SetBucket(v string) *ReplicationRule { s.Bucket = &v return s } // SetDeleteMarkerReplication sets the DeleteMarkerReplication field's value. func (s *ReplicationRule) SetDeleteMarkerReplication(v *DeleteMarkerReplication) *ReplicationRule { s.DeleteMarkerReplication = v return s } // SetDestination sets the Destination field's value. func (s *ReplicationRule) SetDestination(v *Destination) *ReplicationRule { s.Destination = v return s } // SetExistingObjectReplication sets the ExistingObjectReplication field's value. func (s *ReplicationRule) SetExistingObjectReplication(v *ExistingObjectReplication) *ReplicationRule { s.ExistingObjectReplication = v return s } // SetFilter sets the Filter field's value. func (s *ReplicationRule) SetFilter(v *ReplicationRuleFilter) *ReplicationRule { s.Filter = v return s } // SetID sets the ID field's value. func (s *ReplicationRule) SetID(v string) *ReplicationRule { s.ID = &v return s } // SetPrefix sets the Prefix field's value. func (s *ReplicationRule) SetPrefix(v string) *ReplicationRule { s.Prefix = &v return s } // SetPriority sets the Priority field's value. func (s *ReplicationRule) SetPriority(v int64) *ReplicationRule { s.Priority = &v return s } // SetSourceSelectionCriteria sets the SourceSelectionCriteria field's value. func (s *ReplicationRule) SetSourceSelectionCriteria(v *SourceSelectionCriteria) *ReplicationRule { s.SourceSelectionCriteria = v return s } // SetStatus sets the Status field's value. func (s *ReplicationRule) SetStatus(v string) *ReplicationRule { s.Status = &v return s } // A container for specifying rule filters. The filters determine the subset // of objects to which the rule applies. This element is required only if you // specify more than one filter. // // For example: // // * If you specify both a Prefix and a Tag filter, wrap these filters in // an And element. // // * If you specify a filter based on multiple tags, wrap the Tag elements // in an And element. type ReplicationRuleAndOperator struct { _ struct{} `type:"structure"` // An object key name prefix that identifies the subset of objects that the // rule applies to. Prefix *string `type:"string"` // An array of tags that contain key and value pairs. Tags []*S3Tag `type:"list"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ReplicationRuleAndOperator) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ReplicationRuleAndOperator) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ReplicationRuleAndOperator) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ReplicationRuleAndOperator"} if s.Tags != nil { for i, v := range s.Tags { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetPrefix sets the Prefix field's value. func (s *ReplicationRuleAndOperator) SetPrefix(v string) *ReplicationRuleAndOperator { s.Prefix = &v return s } // SetTags sets the Tags field's value. func (s *ReplicationRuleAndOperator) SetTags(v []*S3Tag) *ReplicationRuleAndOperator { s.Tags = v return s } // A filter that identifies the subset of objects to which the replication rule // applies. A Filter element must specify exactly one Prefix, Tag, or And child // element. type ReplicationRuleFilter struct { _ struct{} `type:"structure"` // A container for specifying rule filters. The filters determine the subset // of objects that the rule applies to. This element is required only if you // specify more than one filter. For example: // // * If you specify both a Prefix and a Tag filter, wrap these filters in // an And element. // // * If you specify a filter based on multiple tags, wrap the Tag elements // in an And element. And *ReplicationRuleAndOperator `type:"structure"` // An object key name prefix that identifies the subset of objects that the // rule applies to. // // When you're using XML requests, you must replace special characters (such // as carriage returns) in object keys with their equivalent XML entity codes. // For more information, see XML-related object key constraints (https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints) // in the Amazon S3 User Guide. Prefix *string `type:"string"` // A container for a key-value name pair. Tag *S3Tag `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ReplicationRuleFilter) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ReplicationRuleFilter) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ReplicationRuleFilter) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ReplicationRuleFilter"} if s.And != nil { if err := s.And.Validate(); err != nil { invalidParams.AddNested("And", err.(request.ErrInvalidParams)) } } if s.Tag != nil { if err := s.Tag.Validate(); err != nil { invalidParams.AddNested("Tag", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAnd sets the And field's value. func (s *ReplicationRuleFilter) SetAnd(v *ReplicationRuleAndOperator) *ReplicationRuleFilter { s.And = v return s } // SetPrefix sets the Prefix field's value. func (s *ReplicationRuleFilter) SetPrefix(v string) *ReplicationRuleFilter { s.Prefix = &v return s } // SetTag sets the Tag field's value. func (s *ReplicationRuleFilter) SetTag(v *S3Tag) *ReplicationRuleFilter { s.Tag = v return s } // A container that specifies S3 Replication Time Control (S3 RTC) related information, // including whether S3 RTC is enabled and the time when all objects and operations // on objects must be replicated. // // This is not supported by Amazon S3 on Outposts buckets. type ReplicationTime struct { _ struct{} `type:"structure"` // Specifies whether S3 Replication Time Control (S3 RTC) is enabled. // // Status is a required field Status *string `type:"string" required:"true" enum:"ReplicationTimeStatus"` // A container that specifies the time by which replication should be complete // for all objects and operations on objects. // // Time is a required field Time *ReplicationTimeValue `type:"structure" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ReplicationTime) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ReplicationTime) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ReplicationTime) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ReplicationTime"} if s.Status == nil { invalidParams.Add(request.NewErrParamRequired("Status")) } if s.Time == nil { invalidParams.Add(request.NewErrParamRequired("Time")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetStatus sets the Status field's value. func (s *ReplicationTime) SetStatus(v string) *ReplicationTime { s.Status = &v return s } // SetTime sets the Time field's value. func (s *ReplicationTime) SetTime(v *ReplicationTimeValue) *ReplicationTime { s.Time = v return s } // A container that specifies the time value for S3 Replication Time Control // (S3 RTC). This value is also used for the replication metrics EventThreshold // element. // // This is not supported by Amazon S3 on Outposts buckets. type ReplicationTimeValue struct { _ struct{} `type:"structure"` // Contains an integer that specifies the time period in minutes. // // Valid value: 15 Minutes *int64 `type:"integer"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ReplicationTimeValue) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ReplicationTimeValue) GoString() string { return s.String() } // SetMinutes sets the Minutes field's value. func (s *ReplicationTimeValue) SetMinutes(v int64) *ReplicationTimeValue { s.Minutes = &v return s } type S3AccessControlList struct { _ struct{} `type:"structure"` Grants []*S3Grant `type:"list"` // Owner is a required field Owner *S3ObjectOwner `type:"structure" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s S3AccessControlList) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s S3AccessControlList) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *S3AccessControlList) Validate() error { invalidParams := request.ErrInvalidParams{Context: "S3AccessControlList"} if s.Owner == nil { invalidParams.Add(request.NewErrParamRequired("Owner")) } if s.Grants != nil { for i, v := range s.Grants { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Grants", i), err.(request.ErrInvalidParams)) } } } if s.Owner != nil { if err := s.Owner.Validate(); err != nil { invalidParams.AddNested("Owner", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetGrants sets the Grants field's value. func (s *S3AccessControlList) SetGrants(v []*S3Grant) *S3AccessControlList { s.Grants = v return s } // SetOwner sets the Owner field's value. func (s *S3AccessControlList) SetOwner(v *S3ObjectOwner) *S3AccessControlList { s.Owner = v return s } type S3AccessControlPolicy struct { _ struct{} `type:"structure"` AccessControlList *S3AccessControlList `type:"structure"` CannedAccessControlList *string `type:"string" enum:"S3CannedAccessControlList"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s S3AccessControlPolicy) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s S3AccessControlPolicy) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *S3AccessControlPolicy) Validate() error { invalidParams := request.ErrInvalidParams{Context: "S3AccessControlPolicy"} if s.AccessControlList != nil { if err := s.AccessControlList.Validate(); err != nil { invalidParams.AddNested("AccessControlList", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccessControlList sets the AccessControlList field's value. func (s *S3AccessControlPolicy) SetAccessControlList(v *S3AccessControlList) *S3AccessControlPolicy { s.AccessControlList = v return s } // SetCannedAccessControlList sets the CannedAccessControlList field's value. func (s *S3AccessControlPolicy) SetCannedAccessControlList(v string) *S3AccessControlPolicy { s.CannedAccessControlList = &v return s } // A container for the bucket where the Amazon S3 Storage Lens metrics export // files are located. type S3BucketDestination struct { _ struct{} `type:"structure"` // The account ID of the owner of the S3 Storage Lens metrics export bucket. // // AccountId is a required field AccountId *string `type:"string" required:"true"` // The Amazon Resource Name (ARN) of the bucket. This property is read-only // and follows the following format: arn:aws:s3:us-east-1:example-account-id:bucket/your-destination-bucket-name // // Arn is a required field Arn *string `min:"1" type:"string" required:"true"` // The container for the type encryption of the metrics exports in this bucket. Encryption *StorageLensDataExportEncryption `type:"structure"` // Format is a required field Format *string `type:"string" required:"true" enum:"Format"` // The schema version of the export file. // // OutputSchemaVersion is a required field OutputSchemaVersion *string `type:"string" required:"true" enum:"OutputSchemaVersion"` // The prefix of the destination bucket where the metrics export will be delivered. Prefix *string `type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s S3BucketDestination) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s S3BucketDestination) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *S3BucketDestination) Validate() error { invalidParams := request.ErrInvalidParams{Context: "S3BucketDestination"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.Arn == nil { invalidParams.Add(request.NewErrParamRequired("Arn")) } if s.Arn != nil && len(*s.Arn) < 1 { invalidParams.Add(request.NewErrParamMinLen("Arn", 1)) } if s.Format == nil { invalidParams.Add(request.NewErrParamRequired("Format")) } if s.OutputSchemaVersion == nil { invalidParams.Add(request.NewErrParamRequired("OutputSchemaVersion")) } if s.Encryption != nil { if err := s.Encryption.Validate(); err != nil { invalidParams.AddNested("Encryption", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *S3BucketDestination) SetAccountId(v string) *S3BucketDestination { s.AccountId = &v return s } // SetArn sets the Arn field's value. func (s *S3BucketDestination) SetArn(v string) *S3BucketDestination { s.Arn = &v return s } // SetEncryption sets the Encryption field's value. func (s *S3BucketDestination) SetEncryption(v *StorageLensDataExportEncryption) *S3BucketDestination { s.Encryption = v return s } // SetFormat sets the Format field's value. func (s *S3BucketDestination) SetFormat(v string) *S3BucketDestination { s.Format = &v return s } // SetOutputSchemaVersion sets the OutputSchemaVersion field's value. func (s *S3BucketDestination) SetOutputSchemaVersion(v string) *S3BucketDestination { s.OutputSchemaVersion = &v return s } // SetPrefix sets the Prefix field's value. func (s *S3BucketDestination) SetPrefix(v string) *S3BucketDestination { s.Prefix = &v return s } // Contains the configuration parameters for a PUT Copy object operation. S3 // Batch Operations passes every object to the underlying CopyObject API operation. // For more information about the parameters for this operation, see CopyObject // (https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectCOPY.html). type S3CopyObjectOperation struct { _ struct{} `type:"structure"` AccessControlGrants []*S3Grant `type:"list"` // Specifies whether Amazon S3 should use an S3 Bucket Key for object encryption // with server-side encryption using Amazon Web Services KMS (SSE-KMS). Setting // this header to true causes Amazon S3 to use an S3 Bucket Key for object encryption // with SSE-KMS. // // Specifying this header with an object action doesn’t affect bucket-level // settings for S3 Bucket Key. BucketKeyEnabled *bool `type:"boolean"` CannedAccessControlList *string `type:"string" enum:"S3CannedAccessControlList"` // Indicates the algorithm that you want Amazon S3 to use to create the checksum. // For more information, see Checking object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/CheckingObjectIntegrity.xml) // in the Amazon S3 User Guide. ChecksumAlgorithm *string `type:"string" enum:"S3ChecksumAlgorithm"` MetadataDirective *string `type:"string" enum:"S3MetadataDirective"` ModifiedSinceConstraint *time.Time `type:"timestamp"` // If you don't provide this parameter, Amazon S3 copies all the metadata from // the original objects. If you specify an empty set, the new objects will have // no tags. Otherwise, Amazon S3 assigns the supplied tags to the new objects. NewObjectMetadata *S3ObjectMetadata `type:"structure"` NewObjectTagging []*S3Tag `type:"list"` // The legal hold status to be applied to all objects in the Batch Operations // job. ObjectLockLegalHoldStatus *string `type:"string" enum:"S3ObjectLockLegalHoldStatus"` // The retention mode to be applied to all objects in the Batch Operations job. ObjectLockMode *string `type:"string" enum:"S3ObjectLockMode"` // The date when the applied object retention configuration expires on all objects // in the Batch Operations job. ObjectLockRetainUntilDate *time.Time `type:"timestamp"` // Specifies an optional metadata property for website redirects, x-amz-website-redirect-location. // Allows webpage redirects if the object is accessed through a website endpoint. RedirectLocation *string `min:"1" type:"string"` RequesterPays *bool `type:"boolean"` SSEAwsKmsKeyId *string `min:"1" type:"string"` StorageClass *string `type:"string" enum:"S3StorageClass"` // Specifies the folder prefix that you want the objects to be copied into. // For example, to copy objects into a folder named Folder1 in the destination // bucket, set the TargetKeyPrefix property to Folder1. TargetKeyPrefix *string `min:"1" type:"string"` // Specifies the destination bucket Amazon Resource Name (ARN) for the batch // copy operation. For example, to copy objects to a bucket named destinationBucket, // set the TargetResource property to arn:aws:s3:::destinationBucket. TargetResource *string `min:"1" type:"string"` UnModifiedSinceConstraint *time.Time `type:"timestamp"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s S3CopyObjectOperation) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s S3CopyObjectOperation) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *S3CopyObjectOperation) Validate() error { invalidParams := request.ErrInvalidParams{Context: "S3CopyObjectOperation"} if s.RedirectLocation != nil && len(*s.RedirectLocation) < 1 { invalidParams.Add(request.NewErrParamMinLen("RedirectLocation", 1)) } if s.SSEAwsKmsKeyId != nil && len(*s.SSEAwsKmsKeyId) < 1 { invalidParams.Add(request.NewErrParamMinLen("SSEAwsKmsKeyId", 1)) } if s.TargetKeyPrefix != nil && len(*s.TargetKeyPrefix) < 1 { invalidParams.Add(request.NewErrParamMinLen("TargetKeyPrefix", 1)) } if s.TargetResource != nil && len(*s.TargetResource) < 1 { invalidParams.Add(request.NewErrParamMinLen("TargetResource", 1)) } if s.AccessControlGrants != nil { for i, v := range s.AccessControlGrants { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "AccessControlGrants", i), err.(request.ErrInvalidParams)) } } } if s.NewObjectMetadata != nil { if err := s.NewObjectMetadata.Validate(); err != nil { invalidParams.AddNested("NewObjectMetadata", err.(request.ErrInvalidParams)) } } if s.NewObjectTagging != nil { for i, v := range s.NewObjectTagging { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "NewObjectTagging", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccessControlGrants sets the AccessControlGrants field's value. func (s *S3CopyObjectOperation) SetAccessControlGrants(v []*S3Grant) *S3CopyObjectOperation { s.AccessControlGrants = v return s } // SetBucketKeyEnabled sets the BucketKeyEnabled field's value. func (s *S3CopyObjectOperation) SetBucketKeyEnabled(v bool) *S3CopyObjectOperation { s.BucketKeyEnabled = &v return s } // SetCannedAccessControlList sets the CannedAccessControlList field's value. func (s *S3CopyObjectOperation) SetCannedAccessControlList(v string) *S3CopyObjectOperation { s.CannedAccessControlList = &v return s } // SetChecksumAlgorithm sets the ChecksumAlgorithm field's value. func (s *S3CopyObjectOperation) SetChecksumAlgorithm(v string) *S3CopyObjectOperation { s.ChecksumAlgorithm = &v return s } // SetMetadataDirective sets the MetadataDirective field's value. func (s *S3CopyObjectOperation) SetMetadataDirective(v string) *S3CopyObjectOperation { s.MetadataDirective = &v return s } // SetModifiedSinceConstraint sets the ModifiedSinceConstraint field's value. func (s *S3CopyObjectOperation) SetModifiedSinceConstraint(v time.Time) *S3CopyObjectOperation { s.ModifiedSinceConstraint = &v return s } // SetNewObjectMetadata sets the NewObjectMetadata field's value. func (s *S3CopyObjectOperation) SetNewObjectMetadata(v *S3ObjectMetadata) *S3CopyObjectOperation { s.NewObjectMetadata = v return s } // SetNewObjectTagging sets the NewObjectTagging field's value. func (s *S3CopyObjectOperation) SetNewObjectTagging(v []*S3Tag) *S3CopyObjectOperation { s.NewObjectTagging = v return s } // SetObjectLockLegalHoldStatus sets the ObjectLockLegalHoldStatus field's value. func (s *S3CopyObjectOperation) SetObjectLockLegalHoldStatus(v string) *S3CopyObjectOperation { s.ObjectLockLegalHoldStatus = &v return s } // SetObjectLockMode sets the ObjectLockMode field's value. func (s *S3CopyObjectOperation) SetObjectLockMode(v string) *S3CopyObjectOperation { s.ObjectLockMode = &v return s } // SetObjectLockRetainUntilDate sets the ObjectLockRetainUntilDate field's value. func (s *S3CopyObjectOperation) SetObjectLockRetainUntilDate(v time.Time) *S3CopyObjectOperation { s.ObjectLockRetainUntilDate = &v return s } // SetRedirectLocation sets the RedirectLocation field's value. func (s *S3CopyObjectOperation) SetRedirectLocation(v string) *S3CopyObjectOperation { s.RedirectLocation = &v return s } // SetRequesterPays sets the RequesterPays field's value. func (s *S3CopyObjectOperation) SetRequesterPays(v bool) *S3CopyObjectOperation { s.RequesterPays = &v return s } // SetSSEAwsKmsKeyId sets the SSEAwsKmsKeyId field's value. func (s *S3CopyObjectOperation) SetSSEAwsKmsKeyId(v string) *S3CopyObjectOperation { s.SSEAwsKmsKeyId = &v return s } // SetStorageClass sets the StorageClass field's value. func (s *S3CopyObjectOperation) SetStorageClass(v string) *S3CopyObjectOperation { s.StorageClass = &v return s } // SetTargetKeyPrefix sets the TargetKeyPrefix field's value. func (s *S3CopyObjectOperation) SetTargetKeyPrefix(v string) *S3CopyObjectOperation { s.TargetKeyPrefix = &v return s } // SetTargetResource sets the TargetResource field's value. func (s *S3CopyObjectOperation) SetTargetResource(v string) *S3CopyObjectOperation { s.TargetResource = &v return s } // SetUnModifiedSinceConstraint sets the UnModifiedSinceConstraint field's value. func (s *S3CopyObjectOperation) SetUnModifiedSinceConstraint(v time.Time) *S3CopyObjectOperation { s.UnModifiedSinceConstraint = &v return s } // Contains no configuration parameters because the DELETE Object tagging (DeleteObjectTagging) // API operation accepts only the bucket name and key name as parameters, which // are defined in the job's manifest. type S3DeleteObjectTaggingOperation struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s S3DeleteObjectTaggingOperation) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s S3DeleteObjectTaggingOperation) GoString() string { return s.String() } // Describes the specified job's generated manifest. Batch Operations jobs created // with a ManifestGenerator populate details of this descriptor after execution // of the ManifestGenerator. type S3GeneratedManifestDescriptor struct { _ struct{} `type:"structure"` // The format of the generated manifest. Format *string `type:"string" enum:"GeneratedManifestFormat"` // Contains the information required to locate a manifest object. Location *JobManifestLocation `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s S3GeneratedManifestDescriptor) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s S3GeneratedManifestDescriptor) GoString() string { return s.String() } // SetFormat sets the Format field's value. func (s *S3GeneratedManifestDescriptor) SetFormat(v string) *S3GeneratedManifestDescriptor { s.Format = &v return s } // SetLocation sets the Location field's value. func (s *S3GeneratedManifestDescriptor) SetLocation(v *JobManifestLocation) *S3GeneratedManifestDescriptor { s.Location = v return s } type S3Grant struct { _ struct{} `type:"structure"` Grantee *S3Grantee `type:"structure"` Permission *string `type:"string" enum:"S3Permission"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s S3Grant) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s S3Grant) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *S3Grant) Validate() error { invalidParams := request.ErrInvalidParams{Context: "S3Grant"} if s.Grantee != nil { if err := s.Grantee.Validate(); err != nil { invalidParams.AddNested("Grantee", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetGrantee sets the Grantee field's value. func (s *S3Grant) SetGrantee(v *S3Grantee) *S3Grant { s.Grantee = v return s } // SetPermission sets the Permission field's value. func (s *S3Grant) SetPermission(v string) *S3Grant { s.Permission = &v return s } type S3Grantee struct { _ struct{} `type:"structure"` DisplayName *string `min:"1" type:"string"` Identifier *string `min:"1" type:"string"` TypeIdentifier *string `type:"string" enum:"S3GranteeTypeIdentifier"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s S3Grantee) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s S3Grantee) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *S3Grantee) Validate() error { invalidParams := request.ErrInvalidParams{Context: "S3Grantee"} if s.DisplayName != nil && len(*s.DisplayName) < 1 { invalidParams.Add(request.NewErrParamMinLen("DisplayName", 1)) } if s.Identifier != nil && len(*s.Identifier) < 1 { invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetDisplayName sets the DisplayName field's value. func (s *S3Grantee) SetDisplayName(v string) *S3Grantee { s.DisplayName = &v return s } // SetIdentifier sets the Identifier field's value. func (s *S3Grantee) SetIdentifier(v string) *S3Grantee { s.Identifier = &v return s } // SetTypeIdentifier sets the TypeIdentifier field's value. func (s *S3Grantee) SetTypeIdentifier(v string) *S3Grantee { s.TypeIdentifier = &v return s } // Contains the configuration parameters for a POST Object restore job. S3 Batch // Operations passes every object to the underlying RestoreObject API operation. // For more information about the parameters for this operation, see RestoreObject // (https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectPOSTrestore.html#RESTObjectPOSTrestore-restore-request). type S3InitiateRestoreObjectOperation struct { _ struct{} `type:"structure"` // This argument specifies how long the S3 Glacier or S3 Glacier Deep Archive // object remains available in Amazon S3. S3 Initiate Restore Object jobs that // target S3 Glacier and S3 Glacier Deep Archive objects require ExpirationInDays // set to 1 or greater. // // Conversely, do not set ExpirationInDays when creating S3 Initiate Restore // Object jobs that target S3 Intelligent-Tiering Archive Access and Deep Archive // Access tier objects. Objects in S3 Intelligent-Tiering archive access tiers // are not subject to restore expiry, so specifying ExpirationInDays results // in restore request failure. // // S3 Batch Operations jobs can operate either on S3 Glacier and S3 Glacier // Deep Archive storage class objects or on S3 Intelligent-Tiering Archive Access // and Deep Archive Access storage tier objects, but not both types in the same // job. If you need to restore objects of both types you must create separate // Batch Operations jobs. ExpirationInDays *int64 `type:"integer"` // S3 Batch Operations supports STANDARD and BULK retrieval tiers, but not the // EXPEDITED retrieval tier. GlacierJobTier *string `type:"string" enum:"S3GlacierJobTier"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s S3InitiateRestoreObjectOperation) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s S3InitiateRestoreObjectOperation) GoString() string { return s.String() } // SetExpirationInDays sets the ExpirationInDays field's value. func (s *S3InitiateRestoreObjectOperation) SetExpirationInDays(v int64) *S3InitiateRestoreObjectOperation { s.ExpirationInDays = &v return s } // SetGlacierJobTier sets the GlacierJobTier field's value. func (s *S3InitiateRestoreObjectOperation) SetGlacierJobTier(v string) *S3InitiateRestoreObjectOperation { s.GlacierJobTier = &v return s } // The container for the service that will create the S3 manifest. type S3JobManifestGenerator struct { _ struct{} `type:"structure"` // Determines whether or not to write the job's generated manifest to a bucket. // // EnableManifestOutput is a required field EnableManifestOutput *bool `type:"boolean" required:"true"` // The Amazon Web Services account ID that owns the bucket the generated manifest // is written to. If provided the generated manifest bucket's owner Amazon Web // Services account ID must match this value, else the job fails. ExpectedBucketOwner *string `type:"string"` // Specifies rules the S3JobManifestGenerator should use to use to decide whether // an object in the source bucket should or should not be included in the generated // job manifest. Filter *JobManifestGeneratorFilter `type:"structure"` // Specifies the location the generated manifest will be written to. ManifestOutputLocation *S3ManifestOutputLocation `type:"structure"` // The source bucket used by the ManifestGenerator. // // SourceBucket is a required field SourceBucket *string `min:"1" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s S3JobManifestGenerator) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s S3JobManifestGenerator) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *S3JobManifestGenerator) Validate() error { invalidParams := request.ErrInvalidParams{Context: "S3JobManifestGenerator"} if s.EnableManifestOutput == nil { invalidParams.Add(request.NewErrParamRequired("EnableManifestOutput")) } if s.SourceBucket == nil { invalidParams.Add(request.NewErrParamRequired("SourceBucket")) } if s.SourceBucket != nil && len(*s.SourceBucket) < 1 { invalidParams.Add(request.NewErrParamMinLen("SourceBucket", 1)) } if s.ManifestOutputLocation != nil { if err := s.ManifestOutputLocation.Validate(); err != nil { invalidParams.AddNested("ManifestOutputLocation", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetEnableManifestOutput sets the EnableManifestOutput field's value. func (s *S3JobManifestGenerator) SetEnableManifestOutput(v bool) *S3JobManifestGenerator { s.EnableManifestOutput = &v return s } // SetExpectedBucketOwner sets the ExpectedBucketOwner field's value. func (s *S3JobManifestGenerator) SetExpectedBucketOwner(v string) *S3JobManifestGenerator { s.ExpectedBucketOwner = &v return s } // SetFilter sets the Filter field's value. func (s *S3JobManifestGenerator) SetFilter(v *JobManifestGeneratorFilter) *S3JobManifestGenerator { s.Filter = v return s } // SetManifestOutputLocation sets the ManifestOutputLocation field's value. func (s *S3JobManifestGenerator) SetManifestOutputLocation(v *S3ManifestOutputLocation) *S3JobManifestGenerator { s.ManifestOutputLocation = v return s } // SetSourceBucket sets the SourceBucket field's value. func (s *S3JobManifestGenerator) SetSourceBucket(v string) *S3JobManifestGenerator { s.SourceBucket = &v return s } // Location details for where the generated manifest should be written. type S3ManifestOutputLocation struct { _ struct{} `type:"structure"` // The bucket ARN the generated manifest should be written to. // // Bucket is a required field Bucket *string `min:"1" type:"string" required:"true"` // The Account ID that owns the bucket the generated manifest is written to. ExpectedManifestBucketOwner *string `type:"string"` // Specifies what encryption should be used when the generated manifest objects // are written. ManifestEncryption *GeneratedManifestEncryption `type:"structure"` // The format of the generated manifest. // // ManifestFormat is a required field ManifestFormat *string `type:"string" required:"true" enum:"GeneratedManifestFormat"` // Prefix identifying one or more objects to which the manifest applies. ManifestPrefix *string `min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s S3ManifestOutputLocation) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s S3ManifestOutputLocation) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *S3ManifestOutputLocation) Validate() error { invalidParams := request.ErrInvalidParams{Context: "S3ManifestOutputLocation"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if s.Bucket != nil && len(*s.Bucket) < 1 { invalidParams.Add(request.NewErrParamMinLen("Bucket", 1)) } if s.ManifestFormat == nil { invalidParams.Add(request.NewErrParamRequired("ManifestFormat")) } if s.ManifestPrefix != nil && len(*s.ManifestPrefix) < 1 { invalidParams.Add(request.NewErrParamMinLen("ManifestPrefix", 1)) } if s.ManifestEncryption != nil { if err := s.ManifestEncryption.Validate(); err != nil { invalidParams.AddNested("ManifestEncryption", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetBucket sets the Bucket field's value. func (s *S3ManifestOutputLocation) SetBucket(v string) *S3ManifestOutputLocation { s.Bucket = &v return s } // SetExpectedManifestBucketOwner sets the ExpectedManifestBucketOwner field's value. func (s *S3ManifestOutputLocation) SetExpectedManifestBucketOwner(v string) *S3ManifestOutputLocation { s.ExpectedManifestBucketOwner = &v return s } // SetManifestEncryption sets the ManifestEncryption field's value. func (s *S3ManifestOutputLocation) SetManifestEncryption(v *GeneratedManifestEncryption) *S3ManifestOutputLocation { s.ManifestEncryption = v return s } // SetManifestFormat sets the ManifestFormat field's value. func (s *S3ManifestOutputLocation) SetManifestFormat(v string) *S3ManifestOutputLocation { s.ManifestFormat = &v return s } // SetManifestPrefix sets the ManifestPrefix field's value. func (s *S3ManifestOutputLocation) SetManifestPrefix(v string) *S3ManifestOutputLocation { s.ManifestPrefix = &v return s } // Whether S3 Object Lock legal hold will be applied to objects in an S3 Batch // Operations job. type S3ObjectLockLegalHold struct { _ struct{} `type:"structure"` // The Object Lock legal hold status to be applied to all objects in the Batch // Operations job. // // Status is a required field Status *string `type:"string" required:"true" enum:"S3ObjectLockLegalHoldStatus"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s S3ObjectLockLegalHold) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s S3ObjectLockLegalHold) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *S3ObjectLockLegalHold) Validate() error { invalidParams := request.ErrInvalidParams{Context: "S3ObjectLockLegalHold"} if s.Status == nil { invalidParams.Add(request.NewErrParamRequired("Status")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetStatus sets the Status field's value. func (s *S3ObjectLockLegalHold) SetStatus(v string) *S3ObjectLockLegalHold { s.Status = &v return s } type S3ObjectMetadata struct { _ struct{} `type:"structure"` CacheControl *string `min:"1" type:"string"` ContentDisposition *string `min:"1" type:"string"` ContentEncoding *string `min:"1" type:"string"` ContentLanguage *string `min:"1" type:"string"` ContentLength *int64 `type:"long"` ContentMD5 *string `min:"1" type:"string"` ContentType *string `min:"1" type:"string"` HttpExpiresDate *time.Time `type:"timestamp"` RequesterCharged *bool `type:"boolean"` SSEAlgorithm *string `type:"string" enum:"S3SSEAlgorithm"` UserMetadata map[string]*string `type:"map"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s S3ObjectMetadata) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s S3ObjectMetadata) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *S3ObjectMetadata) Validate() error { invalidParams := request.ErrInvalidParams{Context: "S3ObjectMetadata"} if s.CacheControl != nil && len(*s.CacheControl) < 1 { invalidParams.Add(request.NewErrParamMinLen("CacheControl", 1)) } if s.ContentDisposition != nil && len(*s.ContentDisposition) < 1 { invalidParams.Add(request.NewErrParamMinLen("ContentDisposition", 1)) } if s.ContentEncoding != nil && len(*s.ContentEncoding) < 1 { invalidParams.Add(request.NewErrParamMinLen("ContentEncoding", 1)) } if s.ContentLanguage != nil && len(*s.ContentLanguage) < 1 { invalidParams.Add(request.NewErrParamMinLen("ContentLanguage", 1)) } if s.ContentMD5 != nil && len(*s.ContentMD5) < 1 { invalidParams.Add(request.NewErrParamMinLen("ContentMD5", 1)) } if s.ContentType != nil && len(*s.ContentType) < 1 { invalidParams.Add(request.NewErrParamMinLen("ContentType", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetCacheControl sets the CacheControl field's value. func (s *S3ObjectMetadata) SetCacheControl(v string) *S3ObjectMetadata { s.CacheControl = &v return s } // SetContentDisposition sets the ContentDisposition field's value. func (s *S3ObjectMetadata) SetContentDisposition(v string) *S3ObjectMetadata { s.ContentDisposition = &v return s } // SetContentEncoding sets the ContentEncoding field's value. func (s *S3ObjectMetadata) SetContentEncoding(v string) *S3ObjectMetadata { s.ContentEncoding = &v return s } // SetContentLanguage sets the ContentLanguage field's value. func (s *S3ObjectMetadata) SetContentLanguage(v string) *S3ObjectMetadata { s.ContentLanguage = &v return s } // SetContentLength sets the ContentLength field's value. func (s *S3ObjectMetadata) SetContentLength(v int64) *S3ObjectMetadata { s.ContentLength = &v return s } // SetContentMD5 sets the ContentMD5 field's value. func (s *S3ObjectMetadata) SetContentMD5(v string) *S3ObjectMetadata { s.ContentMD5 = &v return s } // SetContentType sets the ContentType field's value. func (s *S3ObjectMetadata) SetContentType(v string) *S3ObjectMetadata { s.ContentType = &v return s } // SetHttpExpiresDate sets the HttpExpiresDate field's value. func (s *S3ObjectMetadata) SetHttpExpiresDate(v time.Time) *S3ObjectMetadata { s.HttpExpiresDate = &v return s } // SetRequesterCharged sets the RequesterCharged field's value. func (s *S3ObjectMetadata) SetRequesterCharged(v bool) *S3ObjectMetadata { s.RequesterCharged = &v return s } // SetSSEAlgorithm sets the SSEAlgorithm field's value. func (s *S3ObjectMetadata) SetSSEAlgorithm(v string) *S3ObjectMetadata { s.SSEAlgorithm = &v return s } // SetUserMetadata sets the UserMetadata field's value. func (s *S3ObjectMetadata) SetUserMetadata(v map[string]*string) *S3ObjectMetadata { s.UserMetadata = v return s } type S3ObjectOwner struct { _ struct{} `type:"structure"` DisplayName *string `min:"1" type:"string"` ID *string `min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s S3ObjectOwner) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s S3ObjectOwner) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *S3ObjectOwner) Validate() error { invalidParams := request.ErrInvalidParams{Context: "S3ObjectOwner"} if s.DisplayName != nil && len(*s.DisplayName) < 1 { invalidParams.Add(request.NewErrParamMinLen("DisplayName", 1)) } if s.ID != nil && len(*s.ID) < 1 { invalidParams.Add(request.NewErrParamMinLen("ID", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetDisplayName sets the DisplayName field's value. func (s *S3ObjectOwner) SetDisplayName(v string) *S3ObjectOwner { s.DisplayName = &v return s } // SetID sets the ID field's value. func (s *S3ObjectOwner) SetID(v string) *S3ObjectOwner { s.ID = &v return s } // Directs the specified job to invoke ReplicateObject on every object in the // job's manifest. type S3ReplicateObjectOperation struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s S3ReplicateObjectOperation) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s S3ReplicateObjectOperation) GoString() string { return s.String() } // Contains the S3 Object Lock retention mode to be applied to all objects in // the S3 Batch Operations job. If you don't provide Mode and RetainUntilDate // data types in your operation, you will remove the retention from your objects. // For more information, see Using S3 Object Lock retention with S3 Batch Operations // (https://docs.aws.amazon.com/AmazonS3/latest/dev/batch-ops-retention-date.html) // in the Amazon S3 User Guide. type S3Retention struct { _ struct{} `type:"structure"` // The Object Lock retention mode to be applied to all objects in the Batch // Operations job. Mode *string `type:"string" enum:"S3ObjectLockRetentionMode"` // The date when the applied Object Lock retention will expire on all objects // set by the Batch Operations job. RetainUntilDate *time.Time `type:"timestamp"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s S3Retention) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s S3Retention) GoString() string { return s.String() } // SetMode sets the Mode field's value. func (s *S3Retention) SetMode(v string) *S3Retention { s.Mode = &v return s } // SetRetainUntilDate sets the RetainUntilDate field's value. func (s *S3Retention) SetRetainUntilDate(v time.Time) *S3Retention { s.RetainUntilDate = &v return s } // Contains the configuration parameters for a PUT Object ACL operation. S3 // Batch Operations passes every object to the underlying PutObjectAcl API operation. // For more information about the parameters for this operation, see PutObjectAcl // (https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectPUTacl.html). type S3SetObjectAclOperation struct { _ struct{} `type:"structure"` AccessControlPolicy *S3AccessControlPolicy `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s S3SetObjectAclOperation) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s S3SetObjectAclOperation) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *S3SetObjectAclOperation) Validate() error { invalidParams := request.ErrInvalidParams{Context: "S3SetObjectAclOperation"} if s.AccessControlPolicy != nil { if err := s.AccessControlPolicy.Validate(); err != nil { invalidParams.AddNested("AccessControlPolicy", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccessControlPolicy sets the AccessControlPolicy field's value. func (s *S3SetObjectAclOperation) SetAccessControlPolicy(v *S3AccessControlPolicy) *S3SetObjectAclOperation { s.AccessControlPolicy = v return s } // Contains the configuration for an S3 Object Lock legal hold operation that // an S3 Batch Operations job passes to every object to the underlying PutObjectLegalHold // API operation. For more information, see Using S3 Object Lock legal hold // with S3 Batch Operations (https://docs.aws.amazon.com/AmazonS3/latest/dev/batch-ops-legal-hold.html) // in the Amazon S3 User Guide. type S3SetObjectLegalHoldOperation struct { _ struct{} `type:"structure"` // Contains the Object Lock legal hold status to be applied to all objects in // the Batch Operations job. // // LegalHold is a required field LegalHold *S3ObjectLockLegalHold `type:"structure" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s S3SetObjectLegalHoldOperation) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s S3SetObjectLegalHoldOperation) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *S3SetObjectLegalHoldOperation) Validate() error { invalidParams := request.ErrInvalidParams{Context: "S3SetObjectLegalHoldOperation"} if s.LegalHold == nil { invalidParams.Add(request.NewErrParamRequired("LegalHold")) } if s.LegalHold != nil { if err := s.LegalHold.Validate(); err != nil { invalidParams.AddNested("LegalHold", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetLegalHold sets the LegalHold field's value. func (s *S3SetObjectLegalHoldOperation) SetLegalHold(v *S3ObjectLockLegalHold) *S3SetObjectLegalHoldOperation { s.LegalHold = v return s } // Contains the configuration parameters for the Object Lock retention action // for an S3 Batch Operations job. Batch Operations passes every object to the // underlying PutObjectRetention API operation. For more information, see Using // S3 Object Lock retention with S3 Batch Operations (https://docs.aws.amazon.com/AmazonS3/latest/dev/batch-ops-retention-date.html) // in the Amazon S3 User Guide. type S3SetObjectRetentionOperation struct { _ struct{} `type:"structure"` // Indicates if the action should be applied to objects in the Batch Operations // job even if they have Object Lock GOVERNANCE type in place. BypassGovernanceRetention *bool `type:"boolean"` // Contains the Object Lock retention mode to be applied to all objects in the // Batch Operations job. For more information, see Using S3 Object Lock retention // with S3 Batch Operations (https://docs.aws.amazon.com/AmazonS3/latest/dev/batch-ops-retention-date.html) // in the Amazon S3 User Guide. // // Retention is a required field Retention *S3Retention `type:"structure" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s S3SetObjectRetentionOperation) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s S3SetObjectRetentionOperation) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *S3SetObjectRetentionOperation) Validate() error { invalidParams := request.ErrInvalidParams{Context: "S3SetObjectRetentionOperation"} if s.Retention == nil { invalidParams.Add(request.NewErrParamRequired("Retention")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetBypassGovernanceRetention sets the BypassGovernanceRetention field's value. func (s *S3SetObjectRetentionOperation) SetBypassGovernanceRetention(v bool) *S3SetObjectRetentionOperation { s.BypassGovernanceRetention = &v return s } // SetRetention sets the Retention field's value. func (s *S3SetObjectRetentionOperation) SetRetention(v *S3Retention) *S3SetObjectRetentionOperation { s.Retention = v return s } // Contains the configuration parameters for a PUT Object Tagging operation. // S3 Batch Operations passes every object to the underlying PutObjectTagging // API operation. For more information about the parameters for this operation, // see PutObjectTagging (https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectPUTtagging.html). type S3SetObjectTaggingOperation struct { _ struct{} `type:"structure"` TagSet []*S3Tag `type:"list"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s S3SetObjectTaggingOperation) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s S3SetObjectTaggingOperation) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *S3SetObjectTaggingOperation) Validate() error { invalidParams := request.ErrInvalidParams{Context: "S3SetObjectTaggingOperation"} if s.TagSet != nil { for i, v := range s.TagSet { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "TagSet", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetTagSet sets the TagSet field's value. func (s *S3SetObjectTaggingOperation) SetTagSet(v []*S3Tag) *S3SetObjectTaggingOperation { s.TagSet = v return s } // A container for a key-value name pair. type S3Tag struct { _ struct{} `type:"structure"` // Key of the tag // // Key is a required field Key *string `min:"1" type:"string" required:"true"` // Value of the tag // // Value is a required field Value *string `type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s S3Tag) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s S3Tag) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *S3Tag) Validate() error { invalidParams := request.ErrInvalidParams{Context: "S3Tag"} if s.Key == nil { invalidParams.Add(request.NewErrParamRequired("Key")) } if s.Key != nil && len(*s.Key) < 1 { invalidParams.Add(request.NewErrParamMinLen("Key", 1)) } if s.Value == nil { invalidParams.Add(request.NewErrParamRequired("Value")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetKey sets the Key field's value. func (s *S3Tag) SetKey(v string) *S3Tag { s.Key = &v return s } // SetValue sets the Value field's value. func (s *S3Tag) SetValue(v string) *S3Tag { s.Value = &v return s } type SSEKMS struct { _ struct{} `locationName:"SSE-KMS" type:"structure"` // A container for the ARN of the SSE-KMS encryption. This property is read-only // and follows the following format: arn:aws:kms:us-east-1:example-account-id:key/example-9a73-4afc-8d29-8f5900cef44e // // KeyId is a required field KeyId *string `type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s SSEKMS) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s SSEKMS) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SSEKMS) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SSEKMS"} if s.KeyId == nil { invalidParams.Add(request.NewErrParamRequired("KeyId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetKeyId sets the KeyId field's value. func (s *SSEKMS) SetKeyId(v string) *SSEKMS { s.KeyId = &v return s } // Configuration for the use of SSE-KMS to encrypt generated manifest objects. type SSEKMSEncryption struct { _ struct{} `locationName:"SSE-KMS" type:"structure"` // Specifies the ID of the Amazon Web Services Key Management Service (Amazon // Web Services KMS) symmetric encryption customer managed key to use for encrypting // generated manifest objects. // // KeyId is a required field KeyId *string `min:"1" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s SSEKMSEncryption) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s SSEKMSEncryption) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SSEKMSEncryption) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SSEKMSEncryption"} if s.KeyId == nil { invalidParams.Add(request.NewErrParamRequired("KeyId")) } if s.KeyId != nil && len(*s.KeyId) < 1 { invalidParams.Add(request.NewErrParamMinLen("KeyId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetKeyId sets the KeyId field's value. func (s *SSEKMSEncryption) SetKeyId(v string) *SSEKMSEncryption { s.KeyId = &v return s } type SSES3 struct { _ struct{} `locationName:"SSE-S3" type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s SSES3) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s SSES3) GoString() string { return s.String() } // Configuration for the use of SSE-S3 to encrypt generated manifest objects. type SSES3Encryption struct { _ struct{} `locationName:"SSE-S3" type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s SSES3Encryption) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s SSES3Encryption) GoString() string { return s.String() } type SelectionCriteria struct { _ struct{} `type:"structure"` // A container for the delimiter of the selection criteria being used. Delimiter *string `type:"string"` // The max depth of the selection criteria MaxDepth *int64 `min:"1" type:"integer"` // The minimum number of storage bytes percentage whose metrics will be selected. // // You must choose a value greater than or equal to 1.0. MinStorageBytesPercentage *float64 `min:"0.1" type:"double"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s SelectionCriteria) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s SelectionCriteria) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SelectionCriteria) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SelectionCriteria"} if s.MaxDepth != nil && *s.MaxDepth < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxDepth", 1)) } if s.MinStorageBytesPercentage != nil && *s.MinStorageBytesPercentage < 0.1 { invalidParams.Add(request.NewErrParamMinValue("MinStorageBytesPercentage", 0.1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetDelimiter sets the Delimiter field's value. func (s *SelectionCriteria) SetDelimiter(v string) *SelectionCriteria { s.Delimiter = &v return s } // SetMaxDepth sets the MaxDepth field's value. func (s *SelectionCriteria) SetMaxDepth(v int64) *SelectionCriteria { s.MaxDepth = &v return s } // SetMinStorageBytesPercentage sets the MinStorageBytesPercentage field's value. func (s *SelectionCriteria) SetMinStorageBytesPercentage(v float64) *SelectionCriteria { s.MinStorageBytesPercentage = &v return s } // A container that describes additional filters for identifying the source // objects that you want to replicate. You can choose to enable or disable the // replication of these objects. type SourceSelectionCriteria struct { _ struct{} `type:"structure"` // A filter that you can use to specify whether replica modification sync is // enabled. S3 on Outposts replica modification sync can help you keep object // metadata synchronized between replicas and source objects. By default, S3 // on Outposts replicates metadata from the source objects to the replicas only. // When replica modification sync is enabled, S3 on Outposts replicates metadata // changes made to the replica copies back to the source object, making the // replication bidirectional. // // To replicate object metadata modifications on replicas, you can specify this // element and set the Status of this element to Enabled. // // You must enable replica modification sync on the source and destination buckets // to replicate replica metadata changes between the source and the replicas. ReplicaModifications *ReplicaModifications `type:"structure"` // A filter that you can use to select Amazon S3 objects that are encrypted // with server-side encryption by using Key Management Service (KMS) keys. If // you include SourceSelectionCriteria in the replication configuration, this // element is required. // // This is not supported by Amazon S3 on Outposts buckets. SseKmsEncryptedObjects *SseKmsEncryptedObjects `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s SourceSelectionCriteria) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s SourceSelectionCriteria) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SourceSelectionCriteria) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SourceSelectionCriteria"} if s.ReplicaModifications != nil { if err := s.ReplicaModifications.Validate(); err != nil { invalidParams.AddNested("ReplicaModifications", err.(request.ErrInvalidParams)) } } if s.SseKmsEncryptedObjects != nil { if err := s.SseKmsEncryptedObjects.Validate(); err != nil { invalidParams.AddNested("SseKmsEncryptedObjects", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetReplicaModifications sets the ReplicaModifications field's value. func (s *SourceSelectionCriteria) SetReplicaModifications(v *ReplicaModifications) *SourceSelectionCriteria { s.ReplicaModifications = v return s } // SetSseKmsEncryptedObjects sets the SseKmsEncryptedObjects field's value. func (s *SourceSelectionCriteria) SetSseKmsEncryptedObjects(v *SseKmsEncryptedObjects) *SourceSelectionCriteria { s.SseKmsEncryptedObjects = v return s } // A container for filter information that you can use to select S3 objects // that are encrypted with Key Management Service (KMS). // // This is not supported by Amazon S3 on Outposts buckets. type SseKmsEncryptedObjects struct { _ struct{} `type:"structure"` // Specifies whether Amazon S3 replicates objects that are created with server-side // encryption by using an KMS key stored in Key Management Service. // // Status is a required field Status *string `type:"string" required:"true" enum:"SseKmsEncryptedObjectsStatus"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s SseKmsEncryptedObjects) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s SseKmsEncryptedObjects) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SseKmsEncryptedObjects) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SseKmsEncryptedObjects"} if s.Status == nil { invalidParams.Add(request.NewErrParamRequired("Status")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetStatus sets the Status field's value. func (s *SseKmsEncryptedObjects) SetStatus(v string) *SseKmsEncryptedObjects { s.Status = &v return s } // The Amazon Web Services organization for your S3 Storage Lens. type StorageLensAwsOrg struct { _ struct{} `type:"structure"` // A container for the Amazon Resource Name (ARN) of the Amazon Web Services // organization. This property is read-only and follows the following format: // arn:aws:organizations:us-east-1:example-account-id:organization/o-ex2l495dck // // Arn is a required field Arn *string `min:"1" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s StorageLensAwsOrg) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s StorageLensAwsOrg) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *StorageLensAwsOrg) Validate() error { invalidParams := request.ErrInvalidParams{Context: "StorageLensAwsOrg"} if s.Arn == nil { invalidParams.Add(request.NewErrParamRequired("Arn")) } if s.Arn != nil && len(*s.Arn) < 1 { invalidParams.Add(request.NewErrParamMinLen("Arn", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetArn sets the Arn field's value. func (s *StorageLensAwsOrg) SetArn(v string) *StorageLensAwsOrg { s.Arn = &v return s } // A container for the Amazon S3 Storage Lens configuration. type StorageLensConfiguration struct { _ struct{} `type:"structure"` // A container for all the account-level configurations of your S3 Storage Lens // configuration. // // AccountLevel is a required field AccountLevel *AccountLevel `type:"structure" required:"true"` // A container for the Amazon Web Services organization for this S3 Storage // Lens configuration. AwsOrg *StorageLensAwsOrg `type:"structure"` // A container to specify the properties of your S3 Storage Lens metrics export // including, the destination, schema and format. DataExport *StorageLensDataExport `type:"structure"` // A container for what is excluded in this configuration. This container can // only be valid if there is no Include container submitted, and it's not empty. Exclude *Exclude `type:"structure"` // A container for the Amazon S3 Storage Lens configuration ID. // // Id is a required field Id *string `min:"1" type:"string" required:"true"` // A container for what is included in this configuration. This container can // only be valid if there is no Exclude container submitted, and it's not empty. Include *Include `type:"structure"` // A container for whether the S3 Storage Lens configuration is enabled. // // IsEnabled is a required field IsEnabled *bool `type:"boolean" required:"true"` // The Amazon Resource Name (ARN) of the S3 Storage Lens configuration. This // property is read-only and follows the following format: arn:aws:s3:us-east-1:example-account-id:storage-lens/your-dashboard-name StorageLensArn *string `min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s StorageLensConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s StorageLensConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *StorageLensConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "StorageLensConfiguration"} if s.AccountLevel == nil { invalidParams.Add(request.NewErrParamRequired("AccountLevel")) } if s.Id == nil { invalidParams.Add(request.NewErrParamRequired("Id")) } if s.Id != nil && len(*s.Id) < 1 { invalidParams.Add(request.NewErrParamMinLen("Id", 1)) } if s.IsEnabled == nil { invalidParams.Add(request.NewErrParamRequired("IsEnabled")) } if s.StorageLensArn != nil && len(*s.StorageLensArn) < 1 { invalidParams.Add(request.NewErrParamMinLen("StorageLensArn", 1)) } if s.AccountLevel != nil { if err := s.AccountLevel.Validate(); err != nil { invalidParams.AddNested("AccountLevel", err.(request.ErrInvalidParams)) } } if s.AwsOrg != nil { if err := s.AwsOrg.Validate(); err != nil { invalidParams.AddNested("AwsOrg", err.(request.ErrInvalidParams)) } } if s.DataExport != nil { if err := s.DataExport.Validate(); err != nil { invalidParams.AddNested("DataExport", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountLevel sets the AccountLevel field's value. func (s *StorageLensConfiguration) SetAccountLevel(v *AccountLevel) *StorageLensConfiguration { s.AccountLevel = v return s } // SetAwsOrg sets the AwsOrg field's value. func (s *StorageLensConfiguration) SetAwsOrg(v *StorageLensAwsOrg) *StorageLensConfiguration { s.AwsOrg = v return s } // SetDataExport sets the DataExport field's value. func (s *StorageLensConfiguration) SetDataExport(v *StorageLensDataExport) *StorageLensConfiguration { s.DataExport = v return s } // SetExclude sets the Exclude field's value. func (s *StorageLensConfiguration) SetExclude(v *Exclude) *StorageLensConfiguration { s.Exclude = v return s } // SetId sets the Id field's value. func (s *StorageLensConfiguration) SetId(v string) *StorageLensConfiguration { s.Id = &v return s } // SetInclude sets the Include field's value. func (s *StorageLensConfiguration) SetInclude(v *Include) *StorageLensConfiguration { s.Include = v return s } // SetIsEnabled sets the IsEnabled field's value. func (s *StorageLensConfiguration) SetIsEnabled(v bool) *StorageLensConfiguration { s.IsEnabled = &v return s } // SetStorageLensArn sets the StorageLensArn field's value. func (s *StorageLensConfiguration) SetStorageLensArn(v string) *StorageLensConfiguration { s.StorageLensArn = &v return s } // A container to specify the properties of your S3 Storage Lens metrics export, // including the destination, schema, and format. type StorageLensDataExport struct { _ struct{} `type:"structure"` // A container for enabling Amazon CloudWatch publishing for S3 Storage Lens // metrics. CloudWatchMetrics *CloudWatchMetrics `type:"structure"` // A container for the bucket where the S3 Storage Lens metrics export will // be located. // // This bucket must be located in the same Region as the storage lens configuration. S3BucketDestination *S3BucketDestination `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s StorageLensDataExport) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s StorageLensDataExport) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *StorageLensDataExport) Validate() error { invalidParams := request.ErrInvalidParams{Context: "StorageLensDataExport"} if s.CloudWatchMetrics != nil { if err := s.CloudWatchMetrics.Validate(); err != nil { invalidParams.AddNested("CloudWatchMetrics", err.(request.ErrInvalidParams)) } } if s.S3BucketDestination != nil { if err := s.S3BucketDestination.Validate(); err != nil { invalidParams.AddNested("S3BucketDestination", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetCloudWatchMetrics sets the CloudWatchMetrics field's value. func (s *StorageLensDataExport) SetCloudWatchMetrics(v *CloudWatchMetrics) *StorageLensDataExport { s.CloudWatchMetrics = v return s } // SetS3BucketDestination sets the S3BucketDestination field's value. func (s *StorageLensDataExport) SetS3BucketDestination(v *S3BucketDestination) *StorageLensDataExport { s.S3BucketDestination = v return s } // A container for the encryption of the S3 Storage Lens metrics exports. type StorageLensDataExportEncryption struct { _ struct{} `type:"structure"` SSEKMS *SSEKMS `locationName:"SSE-KMS" type:"structure"` SSES3 *SSES3 `locationName:"SSE-S3" type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s StorageLensDataExportEncryption) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s StorageLensDataExportEncryption) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *StorageLensDataExportEncryption) Validate() error { invalidParams := request.ErrInvalidParams{Context: "StorageLensDataExportEncryption"} if s.SSEKMS != nil { if err := s.SSEKMS.Validate(); err != nil { invalidParams.AddNested("SSEKMS", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetSSEKMS sets the SSEKMS field's value. func (s *StorageLensDataExportEncryption) SetSSEKMS(v *SSEKMS) *StorageLensDataExportEncryption { s.SSEKMS = v return s } // SetSSES3 sets the SSES3 field's value. func (s *StorageLensDataExportEncryption) SetSSES3(v *SSES3) *StorageLensDataExportEncryption { s.SSES3 = v return s } type StorageLensTag struct { _ struct{} `type:"structure"` // Key is a required field Key *string `min:"1" type:"string" required:"true"` // Value is a required field Value *string `type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s StorageLensTag) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s StorageLensTag) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *StorageLensTag) Validate() error { invalidParams := request.ErrInvalidParams{Context: "StorageLensTag"} if s.Key == nil { invalidParams.Add(request.NewErrParamRequired("Key")) } if s.Key != nil && len(*s.Key) < 1 { invalidParams.Add(request.NewErrParamMinLen("Key", 1)) } if s.Value == nil { invalidParams.Add(request.NewErrParamRequired("Value")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetKey sets the Key field's value. func (s *StorageLensTag) SetKey(v string) *StorageLensTag { s.Key = &v return s } // SetValue sets the Value field's value. func (s *StorageLensTag) SetValue(v string) *StorageLensTag { s.Value = &v return s } type SubmitMultiRegionAccessPointRoutesInput struct { _ struct{} `locationName:"SubmitMultiRegionAccessPointRoutesRequest" type:"structure" xmlURI:"http://awss3control.amazonaws.com/doc/2018-08-20/"` // The Amazon Web Services account ID for the owner of the Multi-Region Access // Point. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // The Multi-Region Access Point ARN. // // Mrap is a required field Mrap *string `location:"uri" locationName:"mrap" type:"string" required:"true"` // The different routes that make up the new route configuration. Active routes // return a value of 100, and passive routes return a value of 0. // // RouteUpdates is a required field RouteUpdates []*MultiRegionAccessPointRoute `locationNameList:"Route" type:"list" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s SubmitMultiRegionAccessPointRoutesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s SubmitMultiRegionAccessPointRoutesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SubmitMultiRegionAccessPointRoutesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SubmitMultiRegionAccessPointRoutesInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.Mrap == nil { invalidParams.Add(request.NewErrParamRequired("Mrap")) } if s.Mrap != nil && len(*s.Mrap) < 1 { invalidParams.Add(request.NewErrParamMinLen("Mrap", 1)) } if s.RouteUpdates == nil { invalidParams.Add(request.NewErrParamRequired("RouteUpdates")) } if s.RouteUpdates != nil { for i, v := range s.RouteUpdates { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "RouteUpdates", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *SubmitMultiRegionAccessPointRoutesInput) SetAccountId(v string) *SubmitMultiRegionAccessPointRoutesInput { s.AccountId = &v return s } // SetMrap sets the Mrap field's value. func (s *SubmitMultiRegionAccessPointRoutesInput) SetMrap(v string) *SubmitMultiRegionAccessPointRoutesInput { s.Mrap = &v return s } // SetRouteUpdates sets the RouteUpdates field's value. func (s *SubmitMultiRegionAccessPointRoutesInput) SetRouteUpdates(v []*MultiRegionAccessPointRoute) *SubmitMultiRegionAccessPointRoutesInput { s.RouteUpdates = v return s } func (s *SubmitMultiRegionAccessPointRoutesInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } type SubmitMultiRegionAccessPointRoutesOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s SubmitMultiRegionAccessPointRoutesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s SubmitMultiRegionAccessPointRoutesOutput) GoString() string { return s.String() } type Tagging struct { _ struct{} `type:"structure"` // A collection for a set of tags. // // TagSet is a required field TagSet []*S3Tag `type:"list" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s Tagging) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s Tagging) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Tagging) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Tagging"} if s.TagSet == nil { invalidParams.Add(request.NewErrParamRequired("TagSet")) } if s.TagSet != nil { for i, v := range s.TagSet { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "TagSet", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetTagSet sets the TagSet field's value. func (s *Tagging) SetTagSet(v []*S3Tag) *Tagging { s.TagSet = v return s } // Specifies when an object transitions to a specified storage class. For more // information about Amazon S3 Lifecycle configuration rules, see Transitioning // objects using Amazon S3 Lifecycle (https://docs.aws.amazon.com/AmazonS3/latest/dev/lifecycle-transition-general-considerations.html) // in the Amazon S3 User Guide. type Transition struct { _ struct{} `type:"structure"` // Indicates when objects are transitioned to the specified storage class. The // date value must be in ISO 8601 format. The time is always midnight UTC. Date *time.Time `type:"timestamp"` // Indicates the number of days after creation when objects are transitioned // to the specified storage class. The value must be a positive integer. Days *int64 `type:"integer"` // The storage class to which you want the object to transition. StorageClass *string `type:"string" enum:"TransitionStorageClass"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s Transition) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s Transition) GoString() string { return s.String() } // SetDate sets the Date field's value. func (s *Transition) SetDate(v time.Time) *Transition { s.Date = &v return s } // SetDays sets the Days field's value. func (s *Transition) SetDays(v int64) *Transition { s.Days = &v return s } // SetStorageClass sets the StorageClass field's value. func (s *Transition) SetStorageClass(v string) *Transition { s.StorageClass = &v return s } type UpdateJobPriorityInput struct { _ struct{} `locationName:"UpdateJobPriorityRequest" type:"structure"` // The Amazon Web Services account ID associated with the S3 Batch Operations // job. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // The ID for the job whose priority you want to update. // // JobId is a required field JobId *string `location:"uri" locationName:"id" min:"5" type:"string" required:"true"` // The priority you want to assign to this job. // // Priority is a required field Priority *int64 `location:"querystring" locationName:"priority" type:"integer" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UpdateJobPriorityInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UpdateJobPriorityInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateJobPriorityInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateJobPriorityInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.JobId == nil { invalidParams.Add(request.NewErrParamRequired("JobId")) } if s.JobId != nil && len(*s.JobId) < 5 { invalidParams.Add(request.NewErrParamMinLen("JobId", 5)) } if s.Priority == nil { invalidParams.Add(request.NewErrParamRequired("Priority")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *UpdateJobPriorityInput) SetAccountId(v string) *UpdateJobPriorityInput { s.AccountId = &v return s } // SetJobId sets the JobId field's value. func (s *UpdateJobPriorityInput) SetJobId(v string) *UpdateJobPriorityInput { s.JobId = &v return s } // SetPriority sets the Priority field's value. func (s *UpdateJobPriorityInput) SetPriority(v int64) *UpdateJobPriorityInput { s.Priority = &v return s } func (s *UpdateJobPriorityInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } type UpdateJobPriorityOutput struct { _ struct{} `type:"structure"` // The ID for the job whose priority Amazon S3 updated. // // JobId is a required field JobId *string `min:"5" type:"string" required:"true"` // The new priority assigned to the specified job. // // Priority is a required field Priority *int64 `type:"integer" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UpdateJobPriorityOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UpdateJobPriorityOutput) GoString() string { return s.String() } // SetJobId sets the JobId field's value. func (s *UpdateJobPriorityOutput) SetJobId(v string) *UpdateJobPriorityOutput { s.JobId = &v return s } // SetPriority sets the Priority field's value. func (s *UpdateJobPriorityOutput) SetPriority(v int64) *UpdateJobPriorityOutput { s.Priority = &v return s } type UpdateJobStatusInput struct { _ struct{} `locationName:"UpdateJobStatusRequest" type:"structure"` // The Amazon Web Services account ID associated with the S3 Batch Operations // job. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // The ID of the job whose status you want to update. // // JobId is a required field JobId *string `location:"uri" locationName:"id" min:"5" type:"string" required:"true"` // The status that you want to move the specified job to. // // RequestedJobStatus is a required field RequestedJobStatus *string `location:"querystring" locationName:"requestedJobStatus" type:"string" required:"true" enum:"RequestedJobStatus"` // A description of the reason why you want to change the specified job's status. // This field can be any string up to the maximum length. StatusUpdateReason *string `location:"querystring" locationName:"statusUpdateReason" min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UpdateJobStatusInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UpdateJobStatusInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateJobStatusInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateJobStatusInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.JobId == nil { invalidParams.Add(request.NewErrParamRequired("JobId")) } if s.JobId != nil && len(*s.JobId) < 5 { invalidParams.Add(request.NewErrParamMinLen("JobId", 5)) } if s.RequestedJobStatus == nil { invalidParams.Add(request.NewErrParamRequired("RequestedJobStatus")) } if s.StatusUpdateReason != nil && len(*s.StatusUpdateReason) < 1 { invalidParams.Add(request.NewErrParamMinLen("StatusUpdateReason", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccountId sets the AccountId field's value. func (s *UpdateJobStatusInput) SetAccountId(v string) *UpdateJobStatusInput { s.AccountId = &v return s } // SetJobId sets the JobId field's value. func (s *UpdateJobStatusInput) SetJobId(v string) *UpdateJobStatusInput { s.JobId = &v return s } // SetRequestedJobStatus sets the RequestedJobStatus field's value. func (s *UpdateJobStatusInput) SetRequestedJobStatus(v string) *UpdateJobStatusInput { s.RequestedJobStatus = &v return s } // SetStatusUpdateReason sets the StatusUpdateReason field's value. func (s *UpdateJobStatusInput) SetStatusUpdateReason(v string) *UpdateJobStatusInput { s.StatusUpdateReason = &v return s } func (s *UpdateJobStatusInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } type UpdateJobStatusOutput struct { _ struct{} `type:"structure"` // The ID for the job whose status was updated. JobId *string `min:"5" type:"string"` // The current status for the specified job. Status *string `type:"string" enum:"JobStatus"` // The reason that the specified job's status was updated. StatusUpdateReason *string `min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UpdateJobStatusOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UpdateJobStatusOutput) GoString() string { return s.String() } // SetJobId sets the JobId field's value. func (s *UpdateJobStatusOutput) SetJobId(v string) *UpdateJobStatusOutput { s.JobId = &v return s } // SetStatus sets the Status field's value. func (s *UpdateJobStatusOutput) SetStatus(v string) *UpdateJobStatusOutput { s.Status = &v return s } // SetStatusUpdateReason sets the StatusUpdateReason field's value. func (s *UpdateJobStatusOutput) SetStatusUpdateReason(v string) *UpdateJobStatusOutput { s.StatusUpdateReason = &v return s } // Describes the versioning state of an Amazon S3 on Outposts bucket. For more // information, see PutBucketVersioning (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_PutBucketVersioning.html). type VersioningConfiguration struct { _ struct{} `type:"structure"` // Specifies whether MFA delete is enabled or disabled in the bucket versioning // configuration for the S3 on Outposts bucket. MFADelete *string `locationName:"MfaDelete" type:"string" enum:"MFADelete"` // Sets the versioning state of the S3 on Outposts bucket. Status *string `type:"string" enum:"BucketVersioningStatus"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s VersioningConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s VersioningConfiguration) GoString() string { return s.String() } // SetMFADelete sets the MFADelete field's value. func (s *VersioningConfiguration) SetMFADelete(v string) *VersioningConfiguration { s.MFADelete = &v return s } // SetStatus sets the Status field's value. func (s *VersioningConfiguration) SetStatus(v string) *VersioningConfiguration { s.Status = &v return s } // The virtual private cloud (VPC) configuration for an access point. type VpcConfiguration struct { _ struct{} `type:"structure"` // If this field is specified, this access point will only allow connections // from the specified VPC ID. // // VpcId is a required field VpcId *string `min:"1" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s VpcConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s VpcConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *VpcConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "VpcConfiguration"} if s.VpcId == nil { invalidParams.Add(request.NewErrParamRequired("VpcId")) } if s.VpcId != nil && len(*s.VpcId) < 1 { invalidParams.Add(request.NewErrParamMinLen("VpcId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetVpcId sets the VpcId field's value. func (s *VpcConfiguration) SetVpcId(v string) *VpcConfiguration { s.VpcId = &v return s } const ( // AsyncOperationNameCreateMultiRegionAccessPoint is a AsyncOperationName enum value AsyncOperationNameCreateMultiRegionAccessPoint = "CreateMultiRegionAccessPoint" // AsyncOperationNameDeleteMultiRegionAccessPoint is a AsyncOperationName enum value AsyncOperationNameDeleteMultiRegionAccessPoint = "DeleteMultiRegionAccessPoint" // AsyncOperationNamePutMultiRegionAccessPointPolicy is a AsyncOperationName enum value AsyncOperationNamePutMultiRegionAccessPointPolicy = "PutMultiRegionAccessPointPolicy" ) // AsyncOperationName_Values returns all elements of the AsyncOperationName enum func AsyncOperationName_Values() []string { return []string{ AsyncOperationNameCreateMultiRegionAccessPoint, AsyncOperationNameDeleteMultiRegionAccessPoint, AsyncOperationNamePutMultiRegionAccessPointPolicy, } } const ( // BucketCannedACLPrivate is a BucketCannedACL enum value BucketCannedACLPrivate = "private" // BucketCannedACLPublicRead is a BucketCannedACL enum value BucketCannedACLPublicRead = "public-read" // BucketCannedACLPublicReadWrite is a BucketCannedACL enum value BucketCannedACLPublicReadWrite = "public-read-write" // BucketCannedACLAuthenticatedRead is a BucketCannedACL enum value BucketCannedACLAuthenticatedRead = "authenticated-read" ) // BucketCannedACL_Values returns all elements of the BucketCannedACL enum func BucketCannedACL_Values() []string { return []string{ BucketCannedACLPrivate, BucketCannedACLPublicRead, BucketCannedACLPublicReadWrite, BucketCannedACLAuthenticatedRead, } } const ( // BucketLocationConstraintEu is a BucketLocationConstraint enum value BucketLocationConstraintEu = "EU" // BucketLocationConstraintEuWest1 is a BucketLocationConstraint enum value BucketLocationConstraintEuWest1 = "eu-west-1" // BucketLocationConstraintUsWest1 is a BucketLocationConstraint enum value BucketLocationConstraintUsWest1 = "us-west-1" // BucketLocationConstraintUsWest2 is a BucketLocationConstraint enum value BucketLocationConstraintUsWest2 = "us-west-2" // BucketLocationConstraintApSouth1 is a BucketLocationConstraint enum value BucketLocationConstraintApSouth1 = "ap-south-1" // BucketLocationConstraintApSoutheast1 is a BucketLocationConstraint enum value BucketLocationConstraintApSoutheast1 = "ap-southeast-1" // BucketLocationConstraintApSoutheast2 is a BucketLocationConstraint enum value BucketLocationConstraintApSoutheast2 = "ap-southeast-2" // BucketLocationConstraintApNortheast1 is a BucketLocationConstraint enum value BucketLocationConstraintApNortheast1 = "ap-northeast-1" // BucketLocationConstraintSaEast1 is a BucketLocationConstraint enum value BucketLocationConstraintSaEast1 = "sa-east-1" // BucketLocationConstraintCnNorth1 is a BucketLocationConstraint enum value BucketLocationConstraintCnNorth1 = "cn-north-1" // BucketLocationConstraintEuCentral1 is a BucketLocationConstraint enum value BucketLocationConstraintEuCentral1 = "eu-central-1" ) // BucketLocationConstraint_Values returns all elements of the BucketLocationConstraint enum func BucketLocationConstraint_Values() []string { return []string{ BucketLocationConstraintEu, BucketLocationConstraintEuWest1, BucketLocationConstraintUsWest1, BucketLocationConstraintUsWest2, BucketLocationConstraintApSouth1, BucketLocationConstraintApSoutheast1, BucketLocationConstraintApSoutheast2, BucketLocationConstraintApNortheast1, BucketLocationConstraintSaEast1, BucketLocationConstraintCnNorth1, BucketLocationConstraintEuCentral1, } } const ( // BucketVersioningStatusEnabled is a BucketVersioningStatus enum value BucketVersioningStatusEnabled = "Enabled" // BucketVersioningStatusSuspended is a BucketVersioningStatus enum value BucketVersioningStatusSuspended = "Suspended" ) // BucketVersioningStatus_Values returns all elements of the BucketVersioningStatus enum func BucketVersioningStatus_Values() []string { return []string{ BucketVersioningStatusEnabled, BucketVersioningStatusSuspended, } } const ( // DeleteMarkerReplicationStatusEnabled is a DeleteMarkerReplicationStatus enum value DeleteMarkerReplicationStatusEnabled = "Enabled" // DeleteMarkerReplicationStatusDisabled is a DeleteMarkerReplicationStatus enum value DeleteMarkerReplicationStatusDisabled = "Disabled" ) // DeleteMarkerReplicationStatus_Values returns all elements of the DeleteMarkerReplicationStatus enum func DeleteMarkerReplicationStatus_Values() []string { return []string{ DeleteMarkerReplicationStatusEnabled, DeleteMarkerReplicationStatusDisabled, } } const ( // ExistingObjectReplicationStatusEnabled is a ExistingObjectReplicationStatus enum value ExistingObjectReplicationStatusEnabled = "Enabled" // ExistingObjectReplicationStatusDisabled is a ExistingObjectReplicationStatus enum value ExistingObjectReplicationStatusDisabled = "Disabled" ) // ExistingObjectReplicationStatus_Values returns all elements of the ExistingObjectReplicationStatus enum func ExistingObjectReplicationStatus_Values() []string { return []string{ ExistingObjectReplicationStatusEnabled, ExistingObjectReplicationStatusDisabled, } } const ( // ExpirationStatusEnabled is a ExpirationStatus enum value ExpirationStatusEnabled = "Enabled" // ExpirationStatusDisabled is a ExpirationStatus enum value ExpirationStatusDisabled = "Disabled" ) // ExpirationStatus_Values returns all elements of the ExpirationStatus enum func ExpirationStatus_Values() []string { return []string{ ExpirationStatusEnabled, ExpirationStatusDisabled, } } const ( // FormatCsv is a Format enum value FormatCsv = "CSV" // FormatParquet is a Format enum value FormatParquet = "Parquet" ) // Format_Values returns all elements of the Format enum func Format_Values() []string { return []string{ FormatCsv, FormatParquet, } } const ( // GeneratedManifestFormatS3inventoryReportCsv20211130 is a GeneratedManifestFormat enum value GeneratedManifestFormatS3inventoryReportCsv20211130 = "S3InventoryReport_CSV_20211130" ) // GeneratedManifestFormat_Values returns all elements of the GeneratedManifestFormat enum func GeneratedManifestFormat_Values() []string { return []string{ GeneratedManifestFormatS3inventoryReportCsv20211130, } } const ( // JobManifestFieldNameIgnore is a JobManifestFieldName enum value JobManifestFieldNameIgnore = "Ignore" // JobManifestFieldNameBucket is a JobManifestFieldName enum value JobManifestFieldNameBucket = "Bucket" // JobManifestFieldNameKey is a JobManifestFieldName enum value JobManifestFieldNameKey = "Key" // JobManifestFieldNameVersionId is a JobManifestFieldName enum value JobManifestFieldNameVersionId = "VersionId" ) // JobManifestFieldName_Values returns all elements of the JobManifestFieldName enum func JobManifestFieldName_Values() []string { return []string{ JobManifestFieldNameIgnore, JobManifestFieldNameBucket, JobManifestFieldNameKey, JobManifestFieldNameVersionId, } } const ( // JobManifestFormatS3batchOperationsCsv20180820 is a JobManifestFormat enum value JobManifestFormatS3batchOperationsCsv20180820 = "S3BatchOperations_CSV_20180820" // JobManifestFormatS3inventoryReportCsv20161130 is a JobManifestFormat enum value JobManifestFormatS3inventoryReportCsv20161130 = "S3InventoryReport_CSV_20161130" ) // JobManifestFormat_Values returns all elements of the JobManifestFormat enum func JobManifestFormat_Values() []string { return []string{ JobManifestFormatS3batchOperationsCsv20180820, JobManifestFormatS3inventoryReportCsv20161130, } } const ( // JobReportFormatReportCsv20180820 is a JobReportFormat enum value JobReportFormatReportCsv20180820 = "Report_CSV_20180820" ) // JobReportFormat_Values returns all elements of the JobReportFormat enum func JobReportFormat_Values() []string { return []string{ JobReportFormatReportCsv20180820, } } const ( // JobReportScopeAllTasks is a JobReportScope enum value JobReportScopeAllTasks = "AllTasks" // JobReportScopeFailedTasksOnly is a JobReportScope enum value JobReportScopeFailedTasksOnly = "FailedTasksOnly" ) // JobReportScope_Values returns all elements of the JobReportScope enum func JobReportScope_Values() []string { return []string{ JobReportScopeAllTasks, JobReportScopeFailedTasksOnly, } } const ( // JobStatusActive is a JobStatus enum value JobStatusActive = "Active" // JobStatusCancelled is a JobStatus enum value JobStatusCancelled = "Cancelled" // JobStatusCancelling is a JobStatus enum value JobStatusCancelling = "Cancelling" // JobStatusComplete is a JobStatus enum value JobStatusComplete = "Complete" // JobStatusCompleting is a JobStatus enum value JobStatusCompleting = "Completing" // JobStatusFailed is a JobStatus enum value JobStatusFailed = "Failed" // JobStatusFailing is a JobStatus enum value JobStatusFailing = "Failing" // JobStatusNew is a JobStatus enum value JobStatusNew = "New" // JobStatusPaused is a JobStatus enum value JobStatusPaused = "Paused" // JobStatusPausing is a JobStatus enum value JobStatusPausing = "Pausing" // JobStatusPreparing is a JobStatus enum value JobStatusPreparing = "Preparing" // JobStatusReady is a JobStatus enum value JobStatusReady = "Ready" // JobStatusSuspended is a JobStatus enum value JobStatusSuspended = "Suspended" ) // JobStatus_Values returns all elements of the JobStatus enum func JobStatus_Values() []string { return []string{ JobStatusActive, JobStatusCancelled, JobStatusCancelling, JobStatusComplete, JobStatusCompleting, JobStatusFailed, JobStatusFailing, JobStatusNew, JobStatusPaused, JobStatusPausing, JobStatusPreparing, JobStatusReady, JobStatusSuspended, } } const ( // MFADeleteEnabled is a MFADelete enum value MFADeleteEnabled = "Enabled" // MFADeleteDisabled is a MFADelete enum value MFADeleteDisabled = "Disabled" ) // MFADelete_Values returns all elements of the MFADelete enum func MFADelete_Values() []string { return []string{ MFADeleteEnabled, MFADeleteDisabled, } } const ( // MFADeleteStatusEnabled is a MFADeleteStatus enum value MFADeleteStatusEnabled = "Enabled" // MFADeleteStatusDisabled is a MFADeleteStatus enum value MFADeleteStatusDisabled = "Disabled" ) // MFADeleteStatus_Values returns all elements of the MFADeleteStatus enum func MFADeleteStatus_Values() []string { return []string{ MFADeleteStatusEnabled, MFADeleteStatusDisabled, } } const ( // MetricsStatusEnabled is a MetricsStatus enum value MetricsStatusEnabled = "Enabled" // MetricsStatusDisabled is a MetricsStatus enum value MetricsStatusDisabled = "Disabled" ) // MetricsStatus_Values returns all elements of the MetricsStatus enum func MetricsStatus_Values() []string { return []string{ MetricsStatusEnabled, MetricsStatusDisabled, } } const ( // MultiRegionAccessPointStatusReady is a MultiRegionAccessPointStatus enum value MultiRegionAccessPointStatusReady = "READY" // MultiRegionAccessPointStatusInconsistentAcrossRegions is a MultiRegionAccessPointStatus enum value MultiRegionAccessPointStatusInconsistentAcrossRegions = "INCONSISTENT_ACROSS_REGIONS" // MultiRegionAccessPointStatusCreating is a MultiRegionAccessPointStatus enum value MultiRegionAccessPointStatusCreating = "CREATING" // MultiRegionAccessPointStatusPartiallyCreated is a MultiRegionAccessPointStatus enum value MultiRegionAccessPointStatusPartiallyCreated = "PARTIALLY_CREATED" // MultiRegionAccessPointStatusPartiallyDeleted is a MultiRegionAccessPointStatus enum value MultiRegionAccessPointStatusPartiallyDeleted = "PARTIALLY_DELETED" // MultiRegionAccessPointStatusDeleting is a MultiRegionAccessPointStatus enum value MultiRegionAccessPointStatusDeleting = "DELETING" ) // MultiRegionAccessPointStatus_Values returns all elements of the MultiRegionAccessPointStatus enum func MultiRegionAccessPointStatus_Values() []string { return []string{ MultiRegionAccessPointStatusReady, MultiRegionAccessPointStatusInconsistentAcrossRegions, MultiRegionAccessPointStatusCreating, MultiRegionAccessPointStatusPartiallyCreated, MultiRegionAccessPointStatusPartiallyDeleted, MultiRegionAccessPointStatusDeleting, } } const ( // NetworkOriginInternet is a NetworkOrigin enum value NetworkOriginInternet = "Internet" // NetworkOriginVpc is a NetworkOrigin enum value NetworkOriginVpc = "VPC" ) // NetworkOrigin_Values returns all elements of the NetworkOrigin enum func NetworkOrigin_Values() []string { return []string{ NetworkOriginInternet, NetworkOriginVpc, } } const ( // ObjectLambdaAccessPointAliasStatusProvisioning is a ObjectLambdaAccessPointAliasStatus enum value ObjectLambdaAccessPointAliasStatusProvisioning = "PROVISIONING" // ObjectLambdaAccessPointAliasStatusReady is a ObjectLambdaAccessPointAliasStatus enum value ObjectLambdaAccessPointAliasStatusReady = "READY" ) // ObjectLambdaAccessPointAliasStatus_Values returns all elements of the ObjectLambdaAccessPointAliasStatus enum func ObjectLambdaAccessPointAliasStatus_Values() []string { return []string{ ObjectLambdaAccessPointAliasStatusProvisioning, ObjectLambdaAccessPointAliasStatusReady, } } const ( // ObjectLambdaAllowedFeatureGetObjectRange is a ObjectLambdaAllowedFeature enum value ObjectLambdaAllowedFeatureGetObjectRange = "GetObject-Range" // ObjectLambdaAllowedFeatureGetObjectPartNumber is a ObjectLambdaAllowedFeature enum value ObjectLambdaAllowedFeatureGetObjectPartNumber = "GetObject-PartNumber" // ObjectLambdaAllowedFeatureHeadObjectRange is a ObjectLambdaAllowedFeature enum value ObjectLambdaAllowedFeatureHeadObjectRange = "HeadObject-Range" // ObjectLambdaAllowedFeatureHeadObjectPartNumber is a ObjectLambdaAllowedFeature enum value ObjectLambdaAllowedFeatureHeadObjectPartNumber = "HeadObject-PartNumber" ) // ObjectLambdaAllowedFeature_Values returns all elements of the ObjectLambdaAllowedFeature enum func ObjectLambdaAllowedFeature_Values() []string { return []string{ ObjectLambdaAllowedFeatureGetObjectRange, ObjectLambdaAllowedFeatureGetObjectPartNumber, ObjectLambdaAllowedFeatureHeadObjectRange, ObjectLambdaAllowedFeatureHeadObjectPartNumber, } } const ( // ObjectLambdaTransformationConfigurationActionGetObject is a ObjectLambdaTransformationConfigurationAction enum value ObjectLambdaTransformationConfigurationActionGetObject = "GetObject" // ObjectLambdaTransformationConfigurationActionHeadObject is a ObjectLambdaTransformationConfigurationAction enum value ObjectLambdaTransformationConfigurationActionHeadObject = "HeadObject" // ObjectLambdaTransformationConfigurationActionListObjects is a ObjectLambdaTransformationConfigurationAction enum value ObjectLambdaTransformationConfigurationActionListObjects = "ListObjects" // ObjectLambdaTransformationConfigurationActionListObjectsV2 is a ObjectLambdaTransformationConfigurationAction enum value ObjectLambdaTransformationConfigurationActionListObjectsV2 = "ListObjectsV2" ) // ObjectLambdaTransformationConfigurationAction_Values returns all elements of the ObjectLambdaTransformationConfigurationAction enum func ObjectLambdaTransformationConfigurationAction_Values() []string { return []string{ ObjectLambdaTransformationConfigurationActionGetObject, ObjectLambdaTransformationConfigurationActionHeadObject, ObjectLambdaTransformationConfigurationActionListObjects, ObjectLambdaTransformationConfigurationActionListObjectsV2, } } const ( // OperationNameLambdaInvoke is a OperationName enum value OperationNameLambdaInvoke = "LambdaInvoke" // OperationNameS3putObjectCopy is a OperationName enum value OperationNameS3putObjectCopy = "S3PutObjectCopy" // OperationNameS3putObjectAcl is a OperationName enum value OperationNameS3putObjectAcl = "S3PutObjectAcl" // OperationNameS3putObjectTagging is a OperationName enum value OperationNameS3putObjectTagging = "S3PutObjectTagging" // OperationNameS3deleteObjectTagging is a OperationName enum value OperationNameS3deleteObjectTagging = "S3DeleteObjectTagging" // OperationNameS3initiateRestoreObject is a OperationName enum value OperationNameS3initiateRestoreObject = "S3InitiateRestoreObject" // OperationNameS3putObjectLegalHold is a OperationName enum value OperationNameS3putObjectLegalHold = "S3PutObjectLegalHold" // OperationNameS3putObjectRetention is a OperationName enum value OperationNameS3putObjectRetention = "S3PutObjectRetention" // OperationNameS3replicateObject is a OperationName enum value OperationNameS3replicateObject = "S3ReplicateObject" ) // OperationName_Values returns all elements of the OperationName enum func OperationName_Values() []string { return []string{ OperationNameLambdaInvoke, OperationNameS3putObjectCopy, OperationNameS3putObjectAcl, OperationNameS3putObjectTagging, OperationNameS3deleteObjectTagging, OperationNameS3initiateRestoreObject, OperationNameS3putObjectLegalHold, OperationNameS3putObjectRetention, OperationNameS3replicateObject, } } const ( // OutputSchemaVersionV1 is a OutputSchemaVersion enum value OutputSchemaVersionV1 = "V_1" ) // OutputSchemaVersion_Values returns all elements of the OutputSchemaVersion enum func OutputSchemaVersion_Values() []string { return []string{ OutputSchemaVersionV1, } } const ( // OwnerOverrideDestination is a OwnerOverride enum value OwnerOverrideDestination = "Destination" ) // OwnerOverride_Values returns all elements of the OwnerOverride enum func OwnerOverride_Values() []string { return []string{ OwnerOverrideDestination, } } const ( // ReplicaModificationsStatusEnabled is a ReplicaModificationsStatus enum value ReplicaModificationsStatusEnabled = "Enabled" // ReplicaModificationsStatusDisabled is a ReplicaModificationsStatus enum value ReplicaModificationsStatusDisabled = "Disabled" ) // ReplicaModificationsStatus_Values returns all elements of the ReplicaModificationsStatus enum func ReplicaModificationsStatus_Values() []string { return []string{ ReplicaModificationsStatusEnabled, ReplicaModificationsStatusDisabled, } } const ( // ReplicationRuleStatusEnabled is a ReplicationRuleStatus enum value ReplicationRuleStatusEnabled = "Enabled" // ReplicationRuleStatusDisabled is a ReplicationRuleStatus enum value ReplicationRuleStatusDisabled = "Disabled" ) // ReplicationRuleStatus_Values returns all elements of the ReplicationRuleStatus enum func ReplicationRuleStatus_Values() []string { return []string{ ReplicationRuleStatusEnabled, ReplicationRuleStatusDisabled, } } const ( // ReplicationStatusCompleted is a ReplicationStatus enum value ReplicationStatusCompleted = "COMPLETED" // ReplicationStatusFailed is a ReplicationStatus enum value ReplicationStatusFailed = "FAILED" // ReplicationStatusReplica is a ReplicationStatus enum value ReplicationStatusReplica = "REPLICA" // ReplicationStatusNone is a ReplicationStatus enum value ReplicationStatusNone = "NONE" ) // ReplicationStatus_Values returns all elements of the ReplicationStatus enum func ReplicationStatus_Values() []string { return []string{ ReplicationStatusCompleted, ReplicationStatusFailed, ReplicationStatusReplica, ReplicationStatusNone, } } const ( // ReplicationStorageClassStandard is a ReplicationStorageClass enum value ReplicationStorageClassStandard = "STANDARD" // ReplicationStorageClassReducedRedundancy is a ReplicationStorageClass enum value ReplicationStorageClassReducedRedundancy = "REDUCED_REDUNDANCY" // ReplicationStorageClassStandardIa is a ReplicationStorageClass enum value ReplicationStorageClassStandardIa = "STANDARD_IA" // ReplicationStorageClassOnezoneIa is a ReplicationStorageClass enum value ReplicationStorageClassOnezoneIa = "ONEZONE_IA" // ReplicationStorageClassIntelligentTiering is a ReplicationStorageClass enum value ReplicationStorageClassIntelligentTiering = "INTELLIGENT_TIERING" // ReplicationStorageClassGlacier is a ReplicationStorageClass enum value ReplicationStorageClassGlacier = "GLACIER" // ReplicationStorageClassDeepArchive is a ReplicationStorageClass enum value ReplicationStorageClassDeepArchive = "DEEP_ARCHIVE" // ReplicationStorageClassOutposts is a ReplicationStorageClass enum value ReplicationStorageClassOutposts = "OUTPOSTS" // ReplicationStorageClassGlacierIr is a ReplicationStorageClass enum value ReplicationStorageClassGlacierIr = "GLACIER_IR" ) // ReplicationStorageClass_Values returns all elements of the ReplicationStorageClass enum func ReplicationStorageClass_Values() []string { return []string{ ReplicationStorageClassStandard, ReplicationStorageClassReducedRedundancy, ReplicationStorageClassStandardIa, ReplicationStorageClassOnezoneIa, ReplicationStorageClassIntelligentTiering, ReplicationStorageClassGlacier, ReplicationStorageClassDeepArchive, ReplicationStorageClassOutposts, ReplicationStorageClassGlacierIr, } } const ( // ReplicationTimeStatusEnabled is a ReplicationTimeStatus enum value ReplicationTimeStatusEnabled = "Enabled" // ReplicationTimeStatusDisabled is a ReplicationTimeStatus enum value ReplicationTimeStatusDisabled = "Disabled" ) // ReplicationTimeStatus_Values returns all elements of the ReplicationTimeStatus enum func ReplicationTimeStatus_Values() []string { return []string{ ReplicationTimeStatusEnabled, ReplicationTimeStatusDisabled, } } const ( // RequestedJobStatusCancelled is a RequestedJobStatus enum value RequestedJobStatusCancelled = "Cancelled" // RequestedJobStatusReady is a RequestedJobStatus enum value RequestedJobStatusReady = "Ready" ) // RequestedJobStatus_Values returns all elements of the RequestedJobStatus enum func RequestedJobStatus_Values() []string { return []string{ RequestedJobStatusCancelled, RequestedJobStatusReady, } } const ( // S3CannedAccessControlListPrivate is a S3CannedAccessControlList enum value S3CannedAccessControlListPrivate = "private" // S3CannedAccessControlListPublicRead is a S3CannedAccessControlList enum value S3CannedAccessControlListPublicRead = "public-read" // S3CannedAccessControlListPublicReadWrite is a S3CannedAccessControlList enum value S3CannedAccessControlListPublicReadWrite = "public-read-write" // S3CannedAccessControlListAwsExecRead is a S3CannedAccessControlList enum value S3CannedAccessControlListAwsExecRead = "aws-exec-read" // S3CannedAccessControlListAuthenticatedRead is a S3CannedAccessControlList enum value S3CannedAccessControlListAuthenticatedRead = "authenticated-read" // S3CannedAccessControlListBucketOwnerRead is a S3CannedAccessControlList enum value S3CannedAccessControlListBucketOwnerRead = "bucket-owner-read" // S3CannedAccessControlListBucketOwnerFullControl is a S3CannedAccessControlList enum value S3CannedAccessControlListBucketOwnerFullControl = "bucket-owner-full-control" ) // S3CannedAccessControlList_Values returns all elements of the S3CannedAccessControlList enum func S3CannedAccessControlList_Values() []string { return []string{ S3CannedAccessControlListPrivate, S3CannedAccessControlListPublicRead, S3CannedAccessControlListPublicReadWrite, S3CannedAccessControlListAwsExecRead, S3CannedAccessControlListAuthenticatedRead, S3CannedAccessControlListBucketOwnerRead, S3CannedAccessControlListBucketOwnerFullControl, } } const ( // S3ChecksumAlgorithmCrc32 is a S3ChecksumAlgorithm enum value S3ChecksumAlgorithmCrc32 = "CRC32" // S3ChecksumAlgorithmCrc32c is a S3ChecksumAlgorithm enum value S3ChecksumAlgorithmCrc32c = "CRC32C" // S3ChecksumAlgorithmSha1 is a S3ChecksumAlgorithm enum value S3ChecksumAlgorithmSha1 = "SHA1" // S3ChecksumAlgorithmSha256 is a S3ChecksumAlgorithm enum value S3ChecksumAlgorithmSha256 = "SHA256" ) // S3ChecksumAlgorithm_Values returns all elements of the S3ChecksumAlgorithm enum func S3ChecksumAlgorithm_Values() []string { return []string{ S3ChecksumAlgorithmCrc32, S3ChecksumAlgorithmCrc32c, S3ChecksumAlgorithmSha1, S3ChecksumAlgorithmSha256, } } const ( // S3GlacierJobTierBulk is a S3GlacierJobTier enum value S3GlacierJobTierBulk = "BULK" // S3GlacierJobTierStandard is a S3GlacierJobTier enum value S3GlacierJobTierStandard = "STANDARD" ) // S3GlacierJobTier_Values returns all elements of the S3GlacierJobTier enum func S3GlacierJobTier_Values() []string { return []string{ S3GlacierJobTierBulk, S3GlacierJobTierStandard, } } const ( // S3GranteeTypeIdentifierId is a S3GranteeTypeIdentifier enum value S3GranteeTypeIdentifierId = "id" // S3GranteeTypeIdentifierEmailAddress is a S3GranteeTypeIdentifier enum value S3GranteeTypeIdentifierEmailAddress = "emailAddress" // S3GranteeTypeIdentifierUri is a S3GranteeTypeIdentifier enum value S3GranteeTypeIdentifierUri = "uri" ) // S3GranteeTypeIdentifier_Values returns all elements of the S3GranteeTypeIdentifier enum func S3GranteeTypeIdentifier_Values() []string { return []string{ S3GranteeTypeIdentifierId, S3GranteeTypeIdentifierEmailAddress, S3GranteeTypeIdentifierUri, } } const ( // S3MetadataDirectiveCopy is a S3MetadataDirective enum value S3MetadataDirectiveCopy = "COPY" // S3MetadataDirectiveReplace is a S3MetadataDirective enum value S3MetadataDirectiveReplace = "REPLACE" ) // S3MetadataDirective_Values returns all elements of the S3MetadataDirective enum func S3MetadataDirective_Values() []string { return []string{ S3MetadataDirectiveCopy, S3MetadataDirectiveReplace, } } const ( // S3ObjectLockLegalHoldStatusOff is a S3ObjectLockLegalHoldStatus enum value S3ObjectLockLegalHoldStatusOff = "OFF" // S3ObjectLockLegalHoldStatusOn is a S3ObjectLockLegalHoldStatus enum value S3ObjectLockLegalHoldStatusOn = "ON" ) // S3ObjectLockLegalHoldStatus_Values returns all elements of the S3ObjectLockLegalHoldStatus enum func S3ObjectLockLegalHoldStatus_Values() []string { return []string{ S3ObjectLockLegalHoldStatusOff, S3ObjectLockLegalHoldStatusOn, } } const ( // S3ObjectLockModeCompliance is a S3ObjectLockMode enum value S3ObjectLockModeCompliance = "COMPLIANCE" // S3ObjectLockModeGovernance is a S3ObjectLockMode enum value S3ObjectLockModeGovernance = "GOVERNANCE" ) // S3ObjectLockMode_Values returns all elements of the S3ObjectLockMode enum func S3ObjectLockMode_Values() []string { return []string{ S3ObjectLockModeCompliance, S3ObjectLockModeGovernance, } } const ( // S3ObjectLockRetentionModeCompliance is a S3ObjectLockRetentionMode enum value S3ObjectLockRetentionModeCompliance = "COMPLIANCE" // S3ObjectLockRetentionModeGovernance is a S3ObjectLockRetentionMode enum value S3ObjectLockRetentionModeGovernance = "GOVERNANCE" ) // S3ObjectLockRetentionMode_Values returns all elements of the S3ObjectLockRetentionMode enum func S3ObjectLockRetentionMode_Values() []string { return []string{ S3ObjectLockRetentionModeCompliance, S3ObjectLockRetentionModeGovernance, } } const ( // S3PermissionFullControl is a S3Permission enum value S3PermissionFullControl = "FULL_CONTROL" // S3PermissionRead is a S3Permission enum value S3PermissionRead = "READ" // S3PermissionWrite is a S3Permission enum value S3PermissionWrite = "WRITE" // S3PermissionReadAcp is a S3Permission enum value S3PermissionReadAcp = "READ_ACP" // S3PermissionWriteAcp is a S3Permission enum value S3PermissionWriteAcp = "WRITE_ACP" ) // S3Permission_Values returns all elements of the S3Permission enum func S3Permission_Values() []string { return []string{ S3PermissionFullControl, S3PermissionRead, S3PermissionWrite, S3PermissionReadAcp, S3PermissionWriteAcp, } } const ( // S3SSEAlgorithmAes256 is a S3SSEAlgorithm enum value S3SSEAlgorithmAes256 = "AES256" // S3SSEAlgorithmKms is a S3SSEAlgorithm enum value S3SSEAlgorithmKms = "KMS" ) // S3SSEAlgorithm_Values returns all elements of the S3SSEAlgorithm enum func S3SSEAlgorithm_Values() []string { return []string{ S3SSEAlgorithmAes256, S3SSEAlgorithmKms, } } const ( // S3StorageClassStandard is a S3StorageClass enum value S3StorageClassStandard = "STANDARD" // S3StorageClassStandardIa is a S3StorageClass enum value S3StorageClassStandardIa = "STANDARD_IA" // S3StorageClassOnezoneIa is a S3StorageClass enum value S3StorageClassOnezoneIa = "ONEZONE_IA" // S3StorageClassGlacier is a S3StorageClass enum value S3StorageClassGlacier = "GLACIER" // S3StorageClassIntelligentTiering is a S3StorageClass enum value S3StorageClassIntelligentTiering = "INTELLIGENT_TIERING" // S3StorageClassDeepArchive is a S3StorageClass enum value S3StorageClassDeepArchive = "DEEP_ARCHIVE" // S3StorageClassGlacierIr is a S3StorageClass enum value S3StorageClassGlacierIr = "GLACIER_IR" ) // S3StorageClass_Values returns all elements of the S3StorageClass enum func S3StorageClass_Values() []string { return []string{ S3StorageClassStandard, S3StorageClassStandardIa, S3StorageClassOnezoneIa, S3StorageClassGlacier, S3StorageClassIntelligentTiering, S3StorageClassDeepArchive, S3StorageClassGlacierIr, } } const ( // SseKmsEncryptedObjectsStatusEnabled is a SseKmsEncryptedObjectsStatus enum value SseKmsEncryptedObjectsStatusEnabled = "Enabled" // SseKmsEncryptedObjectsStatusDisabled is a SseKmsEncryptedObjectsStatus enum value SseKmsEncryptedObjectsStatusDisabled = "Disabled" ) // SseKmsEncryptedObjectsStatus_Values returns all elements of the SseKmsEncryptedObjectsStatus enum func SseKmsEncryptedObjectsStatus_Values() []string { return []string{ SseKmsEncryptedObjectsStatusEnabled, SseKmsEncryptedObjectsStatusDisabled, } } const ( // TransitionStorageClassGlacier is a TransitionStorageClass enum value TransitionStorageClassGlacier = "GLACIER" // TransitionStorageClassStandardIa is a TransitionStorageClass enum value TransitionStorageClassStandardIa = "STANDARD_IA" // TransitionStorageClassOnezoneIa is a TransitionStorageClass enum value TransitionStorageClassOnezoneIa = "ONEZONE_IA" // TransitionStorageClassIntelligentTiering is a TransitionStorageClass enum value TransitionStorageClassIntelligentTiering = "INTELLIGENT_TIERING" // TransitionStorageClassDeepArchive is a TransitionStorageClass enum value TransitionStorageClassDeepArchive = "DEEP_ARCHIVE" ) // TransitionStorageClass_Values returns all elements of the TransitionStorageClass enum func TransitionStorageClass_Values() []string { return []string{ TransitionStorageClassGlacier, TransitionStorageClassStandardIa, TransitionStorageClassOnezoneIa, TransitionStorageClassIntelligentTiering, TransitionStorageClassDeepArchive, } }