1// Code generated by smithy-go-codegen DO NOT EDIT. 2 3package s3 4 5import ( 6 "context" 7 awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware" 8 "github.com/aws/aws-sdk-go-v2/aws/signer/v4" 9 s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations" 10 "github.com/aws/smithy-go/middleware" 11 smithyhttp "github.com/aws/smithy-go/transport/http" 12) 13 14// Deletes the cors configuration information set for the bucket. To use this 15// operation, you must have permission to perform the s3:PutBucketCORS action. The 16// bucket owner has this permission by default and can grant this permission to 17// others. For information about cors, see Enabling Cross-Origin Resource Sharing 18// (https://docs.aws.amazon.com/AmazonS3/latest/dev/cors.html) in the Amazon S3 19// User Guide. Related Resources: 20// 21// * PutBucketCors 22// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketCors.html) 23// 24// * 25// RESTOPTIONSobject 26// (https://docs.aws.amazon.com/AmazonS3/latest/API/RESTOPTIONSobject.html) 27func (c *Client) DeleteBucketCors(ctx context.Context, params *DeleteBucketCorsInput, optFns ...func(*Options)) (*DeleteBucketCorsOutput, error) { 28 if params == nil { 29 params = &DeleteBucketCorsInput{} 30 } 31 32 result, metadata, err := c.invokeOperation(ctx, "DeleteBucketCors", params, optFns, addOperationDeleteBucketCorsMiddlewares) 33 if err != nil { 34 return nil, err 35 } 36 37 out := result.(*DeleteBucketCorsOutput) 38 out.ResultMetadata = metadata 39 return out, nil 40} 41 42type DeleteBucketCorsInput struct { 43 44 // Specifies the bucket whose cors configuration is being deleted. 45 // 46 // This member is required. 47 Bucket *string 48 49 // The account ID of the expected bucket owner. If the bucket is owned by a 50 // different account, the request will fail with an HTTP 403 (Access Denied) error. 51 ExpectedBucketOwner *string 52} 53 54type DeleteBucketCorsOutput struct { 55 // Metadata pertaining to the operation's result. 56 ResultMetadata middleware.Metadata 57} 58 59func addOperationDeleteBucketCorsMiddlewares(stack *middleware.Stack, options Options) (err error) { 60 err = stack.Serialize.Add(&awsRestxml_serializeOpDeleteBucketCors{}, middleware.After) 61 if err != nil { 62 return err 63 } 64 err = stack.Deserialize.Add(&awsRestxml_deserializeOpDeleteBucketCors{}, middleware.After) 65 if err != nil { 66 return err 67 } 68 if err = addSetLoggerMiddleware(stack, options); err != nil { 69 return err 70 } 71 if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil { 72 return err 73 } 74 if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil { 75 return err 76 } 77 if err = addResolveEndpointMiddleware(stack, options); err != nil { 78 return err 79 } 80 if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil { 81 return err 82 } 83 if err = addRetryMiddlewares(stack, options); err != nil { 84 return err 85 } 86 if err = addHTTPSignerV4Middleware(stack, options); err != nil { 87 return err 88 } 89 if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil { 90 return err 91 } 92 if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil { 93 return err 94 } 95 if err = addClientUserAgent(stack); err != nil { 96 return err 97 } 98 if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil { 99 return err 100 } 101 if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil { 102 return err 103 } 104 if err = addOpDeleteBucketCorsValidationMiddleware(stack); err != nil { 105 return err 106 } 107 if err = stack.Initialize.Add(newServiceMetadataMiddleware_opDeleteBucketCors(options.Region), middleware.Before); err != nil { 108 return err 109 } 110 if err = addMetadataRetrieverMiddleware(stack); err != nil { 111 return err 112 } 113 if err = addDeleteBucketCorsUpdateEndpoint(stack, options); err != nil { 114 return err 115 } 116 if err = addResponseErrorMiddleware(stack); err != nil { 117 return err 118 } 119 if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil { 120 return err 121 } 122 if err = disableAcceptEncodingGzip(stack); err != nil { 123 return err 124 } 125 if err = addRequestResponseLogging(stack, options); err != nil { 126 return err 127 } 128 return nil 129} 130 131func newServiceMetadataMiddleware_opDeleteBucketCors(region string) *awsmiddleware.RegisterServiceMetadata { 132 return &awsmiddleware.RegisterServiceMetadata{ 133 Region: region, 134 ServiceID: ServiceID, 135 SigningName: "s3", 136 OperationName: "DeleteBucketCors", 137 } 138} 139 140// getDeleteBucketCorsBucketMember returns a pointer to string denoting a provided 141// bucket member valueand a boolean indicating if the input has a modeled bucket 142// name, 143func getDeleteBucketCorsBucketMember(input interface{}) (*string, bool) { 144 in := input.(*DeleteBucketCorsInput) 145 if in.Bucket == nil { 146 return nil, false 147 } 148 return in.Bucket, true 149} 150func addDeleteBucketCorsUpdateEndpoint(stack *middleware.Stack, options Options) error { 151 return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{ 152 Accessor: s3cust.UpdateEndpointParameterAccessor{ 153 GetBucketFromInput: getDeleteBucketCorsBucketMember, 154 }, 155 UsePathStyle: options.UsePathStyle, 156 UseAccelerate: options.UseAccelerate, 157 SupportsAccelerate: true, 158 TargetS3ObjectLambda: false, 159 EndpointResolver: options.EndpointResolver, 160 EndpointResolverOptions: options.EndpointOptions, 161 UseDualstack: options.UseDualstack, 162 UseARNRegion: options.UseARNRegion, 163 }) 164} 165