feat(train): add new command to interact with aws and train models
This commit is contained in:
63
vendor/github.com/aws/aws-sdk-go-v2/service/s3/CHANGELOG.md
generated
vendored
Normal file
63
vendor/github.com/aws/aws-sdk-go-v2/service/s3/CHANGELOG.md
generated
vendored
Normal file
@@ -0,0 +1,63 @@
|
||||
# v1.16.0 (2021-09-17)
|
||||
|
||||
* **Feature**: Updated API client and endpoints to latest revision.
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.15.1 (2021-09-10)
|
||||
|
||||
* No change notes available for this release.
|
||||
|
||||
# v1.15.0 (2021-09-02)
|
||||
|
||||
* **Feature**: API client updated
|
||||
* **Feature**: Add support for S3 Multi-Region Access Point ARNs.
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.14.0 (2021-08-27)
|
||||
|
||||
* **Feature**: Updated API model to latest revision.
|
||||
* **Feature**: Updated `github.com/aws/smithy-go` to latest version
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.13.0 (2021-08-19)
|
||||
|
||||
* **Feature**: API client updated
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.12.0 (2021-08-04)
|
||||
|
||||
* **Feature**: Add `HeadObject` presign support. ([#1346](https://github.com/aws/aws-sdk-go-v2/pull/1346))
|
||||
* **Dependency Update**: Updated `github.com/aws/smithy-go` to latest version.
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.11.1 (2021-07-15)
|
||||
|
||||
* **Dependency Update**: Updated `github.com/aws/smithy-go` to latest version
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.11.0 (2021-06-25)
|
||||
|
||||
* **Feature**: Updated `github.com/aws/smithy-go` to latest version
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.10.0 (2021-06-04)
|
||||
|
||||
* **Feature**: The handling of AccessPoint and Outpost ARNs have been updated.
|
||||
* **Feature**: Updated service client to latest API model.
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.9.0 (2021-05-25)
|
||||
|
||||
* **Feature**: API client updated
|
||||
|
||||
# v1.8.0 (2021-05-20)
|
||||
|
||||
* **Feature**: API client updated
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.7.0 (2021-05-14)
|
||||
|
||||
* **Feature**: Constant has been added to modules to enable runtime version inspection for reporting.
|
||||
* **Feature**: Updated to latest service API model.
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
202
vendor/github.com/aws/aws-sdk-go-v2/service/s3/LICENSE.txt
generated
vendored
Normal file
202
vendor/github.com/aws/aws-sdk-go-v2/service/s3/LICENSE.txt
generated
vendored
Normal file
@@ -0,0 +1,202 @@
|
||||
|
||||
Apache License
|
||||
Version 2.0, January 2004
|
||||
http://www.apache.org/licenses/
|
||||
|
||||
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
||||
|
||||
1. Definitions.
|
||||
|
||||
"License" shall mean the terms and conditions for use, reproduction,
|
||||
and distribution as defined by Sections 1 through 9 of this document.
|
||||
|
||||
"Licensor" shall mean the copyright owner or entity authorized by
|
||||
the copyright owner that is granting the License.
|
||||
|
||||
"Legal Entity" shall mean the union of the acting entity and all
|
||||
other entities that control, are controlled by, or are under common
|
||||
control with that entity. For the purposes of this definition,
|
||||
"control" means (i) the power, direct or indirect, to cause the
|
||||
direction or management of such entity, whether by contract or
|
||||
otherwise, or (ii) ownership of fifty percent (50%) or more of the
|
||||
outstanding shares, or (iii) beneficial ownership of such entity.
|
||||
|
||||
"You" (or "Your") shall mean an individual or Legal Entity
|
||||
exercising permissions granted by this License.
|
||||
|
||||
"Source" form shall mean the preferred form for making modifications,
|
||||
including but not limited to software source code, documentation
|
||||
source, and configuration files.
|
||||
|
||||
"Object" form shall mean any form resulting from mechanical
|
||||
transformation or translation of a Source form, including but
|
||||
not limited to compiled object code, generated documentation,
|
||||
and conversions to other media types.
|
||||
|
||||
"Work" shall mean the work of authorship, whether in Source or
|
||||
Object form, made available under the License, as indicated by a
|
||||
copyright notice that is included in or attached to the work
|
||||
(an example is provided in the Appendix below).
|
||||
|
||||
"Derivative Works" shall mean any work, whether in Source or Object
|
||||
form, that is based on (or derived from) the Work and for which the
|
||||
editorial revisions, annotations, elaborations, or other modifications
|
||||
represent, as a whole, an original work of authorship. For the purposes
|
||||
of this License, Derivative Works shall not include works that remain
|
||||
separable from, or merely link (or bind by name) to the interfaces of,
|
||||
the Work and Derivative Works thereof.
|
||||
|
||||
"Contribution" shall mean any work of authorship, including
|
||||
the original version of the Work and any modifications or additions
|
||||
to that Work or Derivative Works thereof, that is intentionally
|
||||
submitted to Licensor for inclusion in the Work by the copyright owner
|
||||
or by an individual or Legal Entity authorized to submit on behalf of
|
||||
the copyright owner. For the purposes of this definition, "submitted"
|
||||
means any form of electronic, verbal, or written communication sent
|
||||
to the Licensor or its representatives, including but not limited to
|
||||
communication on electronic mailing lists, source code control systems,
|
||||
and issue tracking systems that are managed by, or on behalf of, the
|
||||
Licensor for the purpose of discussing and improving the Work, but
|
||||
excluding communication that is conspicuously marked or otherwise
|
||||
designated in writing by the copyright owner as "Not a Contribution."
|
||||
|
||||
"Contributor" shall mean Licensor and any individual or Legal Entity
|
||||
on behalf of whom a Contribution has been received by Licensor and
|
||||
subsequently incorporated within the Work.
|
||||
|
||||
2. Grant of Copyright License. Subject to the terms and conditions of
|
||||
this License, each Contributor hereby grants to You a perpetual,
|
||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||
copyright license to reproduce, prepare Derivative Works of,
|
||||
publicly display, publicly perform, sublicense, and distribute the
|
||||
Work and such Derivative Works in Source or Object form.
|
||||
|
||||
3. Grant of Patent License. Subject to the terms and conditions of
|
||||
this License, each Contributor hereby grants to You a perpetual,
|
||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||
(except as stated in this section) patent license to make, have made,
|
||||
use, offer to sell, sell, import, and otherwise transfer the Work,
|
||||
where such license applies only to those patent claims licensable
|
||||
by such Contributor that are necessarily infringed by their
|
||||
Contribution(s) alone or by combination of their Contribution(s)
|
||||
with the Work to which such Contribution(s) was submitted. If You
|
||||
institute patent litigation against any entity (including a
|
||||
cross-claim or counterclaim in a lawsuit) alleging that the Work
|
||||
or a Contribution incorporated within the Work constitutes direct
|
||||
or contributory patent infringement, then any patent licenses
|
||||
granted to You under this License for that Work shall terminate
|
||||
as of the date such litigation is filed.
|
||||
|
||||
4. Redistribution. You may reproduce and distribute copies of the
|
||||
Work or Derivative Works thereof in any medium, with or without
|
||||
modifications, and in Source or Object form, provided that You
|
||||
meet the following conditions:
|
||||
|
||||
(a) You must give any other recipients of the Work or
|
||||
Derivative Works a copy of this License; and
|
||||
|
||||
(b) You must cause any modified files to carry prominent notices
|
||||
stating that You changed the files; and
|
||||
|
||||
(c) You must retain, in the Source form of any Derivative Works
|
||||
that You distribute, all copyright, patent, trademark, and
|
||||
attribution notices from the Source form of the Work,
|
||||
excluding those notices that do not pertain to any part of
|
||||
the Derivative Works; and
|
||||
|
||||
(d) If the Work includes a "NOTICE" text file as part of its
|
||||
distribution, then any Derivative Works that You distribute must
|
||||
include a readable copy of the attribution notices contained
|
||||
within such NOTICE file, excluding those notices that do not
|
||||
pertain to any part of the Derivative Works, in at least one
|
||||
of the following places: within a NOTICE text file distributed
|
||||
as part of the Derivative Works; within the Source form or
|
||||
documentation, if provided along with the Derivative Works; or,
|
||||
within a display generated by the Derivative Works, if and
|
||||
wherever such third-party notices normally appear. The contents
|
||||
of the NOTICE file are for informational purposes only and
|
||||
do not modify the License. You may add Your own attribution
|
||||
notices within Derivative Works that You distribute, alongside
|
||||
or as an addendum to the NOTICE text from the Work, provided
|
||||
that such additional attribution notices cannot be construed
|
||||
as modifying the License.
|
||||
|
||||
You may add Your own copyright statement to Your modifications and
|
||||
may provide additional or different license terms and conditions
|
||||
for use, reproduction, or distribution of Your modifications, or
|
||||
for any such Derivative Works as a whole, provided Your use,
|
||||
reproduction, and distribution of the Work otherwise complies with
|
||||
the conditions stated in this License.
|
||||
|
||||
5. Submission of Contributions. Unless You explicitly state otherwise,
|
||||
any Contribution intentionally submitted for inclusion in the Work
|
||||
by You to the Licensor shall be under the terms and conditions of
|
||||
this License, without any additional terms or conditions.
|
||||
Notwithstanding the above, nothing herein shall supersede or modify
|
||||
the terms of any separate license agreement you may have executed
|
||||
with Licensor regarding such Contributions.
|
||||
|
||||
6. Trademarks. This License does not grant permission to use the trade
|
||||
names, trademarks, service marks, or product names of the Licensor,
|
||||
except as required for reasonable and customary use in describing the
|
||||
origin of the Work and reproducing the content of the NOTICE file.
|
||||
|
||||
7. Disclaimer of Warranty. Unless required by applicable law or
|
||||
agreed to in writing, Licensor provides the Work (and each
|
||||
Contributor provides its Contributions) on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
||||
implied, including, without limitation, any warranties or conditions
|
||||
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
|
||||
PARTICULAR PURPOSE. You are solely responsible for determining the
|
||||
appropriateness of using or redistributing the Work and assume any
|
||||
risks associated with Your exercise of permissions under this License.
|
||||
|
||||
8. Limitation of Liability. In no event and under no legal theory,
|
||||
whether in tort (including negligence), contract, or otherwise,
|
||||
unless required by applicable law (such as deliberate and grossly
|
||||
negligent acts) or agreed to in writing, shall any Contributor be
|
||||
liable to You for damages, including any direct, indirect, special,
|
||||
incidental, or consequential damages of any character arising as a
|
||||
result of this License or out of the use or inability to use the
|
||||
Work (including but not limited to damages for loss of goodwill,
|
||||
work stoppage, computer failure or malfunction, or any and all
|
||||
other commercial damages or losses), even if such Contributor
|
||||
has been advised of the possibility of such damages.
|
||||
|
||||
9. Accepting Warranty or Additional Liability. While redistributing
|
||||
the Work or Derivative Works thereof, You may choose to offer,
|
||||
and charge a fee for, acceptance of support, warranty, indemnity,
|
||||
or other liability obligations and/or rights consistent with this
|
||||
License. However, in accepting such obligations, You may act only
|
||||
on Your own behalf and on Your sole responsibility, not on behalf
|
||||
of any other Contributor, and only if You agree to indemnify,
|
||||
defend, and hold each Contributor harmless for any liability
|
||||
incurred by, or claims asserted against, such Contributor by reason
|
||||
of your accepting any such warranty or additional liability.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
|
||||
APPENDIX: How to apply the Apache License to your work.
|
||||
|
||||
To apply the Apache License to your work, attach the following
|
||||
boilerplate notice, with the fields enclosed by brackets "[]"
|
||||
replaced with your own identifying information. (Don't include
|
||||
the brackets!) The text should be enclosed in the appropriate
|
||||
comment syntax for the file format. We also recommend that a
|
||||
file or class name and description of purpose be included on the
|
||||
same "printed page" as the copyright notice for easier
|
||||
identification within third-party archives.
|
||||
|
||||
Copyright [yyyy] [name of copyright owner]
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
539
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_client.go
generated
vendored
Normal file
539
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_client.go
generated
vendored
Normal file
@@ -0,0 +1,539 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
"fmt"
|
||||
"github.com/aws/aws-sdk-go-v2/aws"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/retry"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
awshttp "github.com/aws/aws-sdk-go-v2/aws/transport/http"
|
||||
acceptencodingcust "github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding"
|
||||
presignedurlcust "github.com/aws/aws-sdk-go-v2/service/internal/presigned-url"
|
||||
"github.com/aws/aws-sdk-go-v2/service/internal/s3shared"
|
||||
s3sharedconfig "github.com/aws/aws-sdk-go-v2/service/internal/s3shared/config"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/internal/v4a"
|
||||
smithy "github.com/aws/smithy-go"
|
||||
smithydocument "github.com/aws/smithy-go/document"
|
||||
"github.com/aws/smithy-go/logging"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
"net/http"
|
||||
"time"
|
||||
)
|
||||
|
||||
const ServiceID = "S3"
|
||||
const ServiceAPIVersion = "2006-03-01"
|
||||
|
||||
// Client provides the API client to make operations call for Amazon Simple Storage
|
||||
// Service.
|
||||
type Client struct {
|
||||
options Options
|
||||
}
|
||||
|
||||
// New returns an initialized Client based on the functional options. Provide
|
||||
// additional functional options to further configure the behavior of the client,
|
||||
// such as changing the client's endpoint or adding custom middleware behavior.
|
||||
func New(options Options, optFns ...func(*Options)) *Client {
|
||||
options = options.Copy()
|
||||
|
||||
resolveDefaultLogger(&options)
|
||||
|
||||
resolveRetryer(&options)
|
||||
|
||||
resolveHTTPClient(&options)
|
||||
|
||||
resolveHTTPSignerV4(&options)
|
||||
|
||||
resolveDefaultEndpointConfiguration(&options)
|
||||
|
||||
resolveHTTPSignerV4a(&options)
|
||||
|
||||
for _, fn := range optFns {
|
||||
fn(&options)
|
||||
}
|
||||
|
||||
resolveCredentialProvider(&options)
|
||||
|
||||
client := &Client{
|
||||
options: options,
|
||||
}
|
||||
|
||||
return client
|
||||
}
|
||||
|
||||
type Options struct {
|
||||
// Set of options to modify how an operation is invoked. These apply to all
|
||||
// operations invoked for this client. Use functional options on operation call to
|
||||
// modify this list for per operation behavior.
|
||||
APIOptions []func(*middleware.Stack) error
|
||||
|
||||
// Configures the events that will be sent to the configured logger.
|
||||
ClientLogMode aws.ClientLogMode
|
||||
|
||||
// The credentials object to use when signing requests.
|
||||
Credentials aws.CredentialsProvider
|
||||
|
||||
// Allows you to disable S3 Multi-Region access points feature.
|
||||
DisableMultiRegionAccessPoints bool
|
||||
|
||||
// The endpoint options to be used when attempting to resolve an endpoint.
|
||||
EndpointOptions EndpointResolverOptions
|
||||
|
||||
// The service endpoint resolver.
|
||||
EndpointResolver EndpointResolver
|
||||
|
||||
// Signature Version 4 (SigV4) Signer
|
||||
HTTPSignerV4 HTTPSignerV4
|
||||
|
||||
// The logger writer interface to write logging messages to.
|
||||
Logger logging.Logger
|
||||
|
||||
// The region to send requests to. (Required)
|
||||
Region string
|
||||
|
||||
// Retryer guides how HTTP requests should be retried in case of recoverable
|
||||
// failures. When nil the API client will use a default retryer.
|
||||
Retryer aws.Retryer
|
||||
|
||||
// Allows you to enable arn region support for the service.
|
||||
UseARNRegion bool
|
||||
|
||||
// Allows you to enable S3 Accelerate feature. All operations compatible with S3
|
||||
// Accelerate will use the accelerate endpoint for requests. Requests not
|
||||
// compatible will fall back to normal S3 requests. The bucket must be enabled for
|
||||
// accelerate to be used with S3 client with accelerate enabled. If the bucket is
|
||||
// not enabled for accelerate an error will be returned. The bucket name must be
|
||||
// DNS compatible to work with accelerate.
|
||||
UseAccelerate bool
|
||||
|
||||
// Allows you to enable Dualstack endpoint support for the service.
|
||||
UseDualstack bool
|
||||
|
||||
// Allows you to enable the client to use path-style addressing, i.e.,
|
||||
// https://s3.amazonaws.com/BUCKET/KEY. By default, the S3 client will use virtual
|
||||
// hosted bucket addressing when possible(https://BUCKET.s3.amazonaws.com/KEY).
|
||||
UsePathStyle bool
|
||||
|
||||
// Signature Version 4a (SigV4a) Signer
|
||||
httpSignerV4a httpSignerV4a
|
||||
|
||||
// The HTTP client to invoke API calls with. Defaults to client's default HTTP
|
||||
// implementation if nil.
|
||||
HTTPClient HTTPClient
|
||||
}
|
||||
|
||||
// WithAPIOptions returns a functional option for setting the Client's APIOptions
|
||||
// option.
|
||||
func WithAPIOptions(optFns ...func(*middleware.Stack) error) func(*Options) {
|
||||
return func(o *Options) {
|
||||
o.APIOptions = append(o.APIOptions, optFns...)
|
||||
}
|
||||
}
|
||||
|
||||
// WithEndpointResolver returns a functional option for setting the Client's
|
||||
// EndpointResolver option.
|
||||
func WithEndpointResolver(v EndpointResolver) func(*Options) {
|
||||
return func(o *Options) {
|
||||
o.EndpointResolver = v
|
||||
}
|
||||
}
|
||||
|
||||
type HTTPClient interface {
|
||||
Do(*http.Request) (*http.Response, error)
|
||||
}
|
||||
|
||||
// Copy creates a clone where the APIOptions list is deep copied.
|
||||
func (o Options) Copy() Options {
|
||||
to := o
|
||||
to.APIOptions = make([]func(*middleware.Stack) error, len(o.APIOptions))
|
||||
copy(to.APIOptions, o.APIOptions)
|
||||
return to
|
||||
}
|
||||
func (c *Client) invokeOperation(ctx context.Context, opID string, params interface{}, optFns []func(*Options), stackFns ...func(*middleware.Stack, Options) error) (result interface{}, metadata middleware.Metadata, err error) {
|
||||
ctx = middleware.ClearStackValues(ctx)
|
||||
stack := middleware.NewStack(opID, smithyhttp.NewStackRequest)
|
||||
options := c.options.Copy()
|
||||
for _, fn := range optFns {
|
||||
fn(&options)
|
||||
}
|
||||
|
||||
resolveCredentialProvider(&options)
|
||||
|
||||
for _, fn := range stackFns {
|
||||
if err := fn(stack, options); err != nil {
|
||||
return nil, metadata, err
|
||||
}
|
||||
}
|
||||
|
||||
for _, fn := range options.APIOptions {
|
||||
if err := fn(stack); err != nil {
|
||||
return nil, metadata, err
|
||||
}
|
||||
}
|
||||
|
||||
handler := middleware.DecorateHandler(smithyhttp.NewClientHandler(options.HTTPClient), stack)
|
||||
result, metadata, err = handler.Handle(ctx, params)
|
||||
if err != nil {
|
||||
err = &smithy.OperationError{
|
||||
ServiceID: ServiceID,
|
||||
OperationName: opID,
|
||||
Err: err,
|
||||
}
|
||||
}
|
||||
return result, metadata, err
|
||||
}
|
||||
|
||||
type noSmithyDocumentSerde = smithydocument.NoSerde
|
||||
|
||||
func resolveDefaultLogger(o *Options) {
|
||||
if o.Logger != nil {
|
||||
return
|
||||
}
|
||||
o.Logger = logging.Nop{}
|
||||
}
|
||||
|
||||
func addSetLoggerMiddleware(stack *middleware.Stack, o Options) error {
|
||||
return middleware.AddSetLoggerMiddleware(stack, o.Logger)
|
||||
}
|
||||
|
||||
// NewFromConfig returns a new client from the provided config.
|
||||
func NewFromConfig(cfg aws.Config, optFns ...func(*Options)) *Client {
|
||||
opts := Options{
|
||||
Region: cfg.Region,
|
||||
HTTPClient: cfg.HTTPClient,
|
||||
Credentials: cfg.Credentials,
|
||||
APIOptions: cfg.APIOptions,
|
||||
Logger: cfg.Logger,
|
||||
ClientLogMode: cfg.ClientLogMode,
|
||||
}
|
||||
resolveAWSRetryerProvider(cfg, &opts)
|
||||
resolveAWSEndpointResolver(cfg, &opts)
|
||||
resolveUseARNRegion(cfg, &opts)
|
||||
return New(opts, optFns...)
|
||||
}
|
||||
|
||||
func resolveHTTPClient(o *Options) {
|
||||
if o.HTTPClient != nil {
|
||||
return
|
||||
}
|
||||
o.HTTPClient = awshttp.NewBuildableClient()
|
||||
}
|
||||
|
||||
func resolveRetryer(o *Options) {
|
||||
if o.Retryer != nil {
|
||||
return
|
||||
}
|
||||
o.Retryer = retry.NewStandard()
|
||||
}
|
||||
|
||||
func resolveAWSRetryerProvider(cfg aws.Config, o *Options) {
|
||||
if cfg.Retryer == nil {
|
||||
return
|
||||
}
|
||||
o.Retryer = cfg.Retryer()
|
||||
}
|
||||
|
||||
func resolveAWSEndpointResolver(cfg aws.Config, o *Options) {
|
||||
if cfg.EndpointResolver == nil {
|
||||
return
|
||||
}
|
||||
o.EndpointResolver = withEndpointResolver(cfg.EndpointResolver, NewDefaultEndpointResolver())
|
||||
}
|
||||
|
||||
func addClientUserAgent(stack *middleware.Stack) error {
|
||||
return awsmiddleware.AddSDKAgentKeyValue(awsmiddleware.APIMetadata, "s3", goModuleVersion)(stack)
|
||||
}
|
||||
|
||||
func addHTTPSignerV4Middleware(stack *middleware.Stack, o Options) error {
|
||||
mw := v4.NewSignHTTPRequestMiddleware(v4.SignHTTPRequestMiddlewareOptions{
|
||||
CredentialsProvider: o.Credentials,
|
||||
Signer: o.HTTPSignerV4,
|
||||
LogSigning: o.ClientLogMode.IsSigning(),
|
||||
})
|
||||
return stack.Finalize.Add(mw, middleware.After)
|
||||
}
|
||||
|
||||
type HTTPSignerV4 interface {
|
||||
SignHTTP(ctx context.Context, credentials aws.Credentials, r *http.Request, payloadHash string, service string, region string, signingTime time.Time, optFns ...func(*v4.SignerOptions)) error
|
||||
}
|
||||
|
||||
func resolveHTTPSignerV4(o *Options) {
|
||||
if o.HTTPSignerV4 != nil {
|
||||
return
|
||||
}
|
||||
o.HTTPSignerV4 = newDefaultV4Signer(*o)
|
||||
}
|
||||
|
||||
func newDefaultV4Signer(o Options) *v4.Signer {
|
||||
return v4.NewSigner(func(so *v4.SignerOptions) {
|
||||
so.Logger = o.Logger
|
||||
so.LogSigning = o.ClientLogMode.IsSigning()
|
||||
so.DisableURIPathEscaping = true
|
||||
})
|
||||
}
|
||||
|
||||
func addRetryMiddlewares(stack *middleware.Stack, o Options) error {
|
||||
mo := retry.AddRetryMiddlewaresOptions{
|
||||
Retryer: o.Retryer,
|
||||
LogRetryAttempts: o.ClientLogMode.IsRetries(),
|
||||
}
|
||||
return retry.AddRetryMiddlewares(stack, mo)
|
||||
}
|
||||
|
||||
// resolves UseARNRegion S3 configuration
|
||||
func resolveUseARNRegion(cfg aws.Config, o *Options) error {
|
||||
if len(cfg.ConfigSources) == 0 {
|
||||
return nil
|
||||
}
|
||||
value, found, err := s3sharedconfig.ResolveUseARNRegion(context.Background(), cfg.ConfigSources)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if found {
|
||||
o.UseARNRegion = value
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func resolveCredentialProvider(o *Options) {
|
||||
if o.Credentials == nil {
|
||||
return
|
||||
}
|
||||
if _, ok := o.Credentials.(v4a.CredentialsProvider); ok {
|
||||
return
|
||||
}
|
||||
|
||||
switch o.Credentials.(type) {
|
||||
case aws.AnonymousCredentials, *aws.AnonymousCredentials:
|
||||
return
|
||||
|
||||
}
|
||||
|
||||
o.Credentials = &v4a.SymmetricCredentialAdaptor{SymmetricProvider: o.Credentials}
|
||||
}
|
||||
func swapWithCustomHTTPSignerMiddleware(stack *middleware.Stack, o Options) error {
|
||||
mw := s3cust.NewSignHTTPRequestMiddleware(s3cust.SignHTTPRequestMiddlewareOptions{
|
||||
CredentialsProvider: o.Credentials,
|
||||
V4Signer: o.HTTPSignerV4,
|
||||
V4aSigner: o.httpSignerV4a,
|
||||
LogSigning: o.ClientLogMode.IsSigning(),
|
||||
})
|
||||
return s3cust.RegisterSigningMiddleware(stack, mw)
|
||||
}
|
||||
|
||||
type httpSignerV4a interface {
|
||||
SignHTTP(ctx context.Context, credentials v4a.Credentials, r *http.Request, payloadHash string, service string, regionSet []string, signingTime time.Time, optFns ...func(*v4a.SignerOptions)) error
|
||||
}
|
||||
|
||||
func resolveHTTPSignerV4a(o *Options) {
|
||||
if o.httpSignerV4a != nil {
|
||||
return
|
||||
}
|
||||
o.httpSignerV4a = newDefaultV4aSigner(*o)
|
||||
}
|
||||
|
||||
func newDefaultV4aSigner(o Options) *v4a.Signer {
|
||||
return v4a.NewSigner(func(so *v4a.SignerOptions) {
|
||||
so.Logger = o.Logger
|
||||
so.LogSigning = o.ClientLogMode.IsSigning()
|
||||
so.DisableURIPathEscaping = true
|
||||
})
|
||||
}
|
||||
|
||||
func addMetadataRetrieverMiddleware(stack *middleware.Stack) error {
|
||||
return s3shared.AddMetadataRetrieverMiddleware(stack)
|
||||
}
|
||||
|
||||
// nopGetBucketAccessor is no-op accessor for operation that don't support bucket
|
||||
// member as input
|
||||
func nopGetBucketAccessor(input interface{}) (*string, bool) {
|
||||
return nil, false
|
||||
}
|
||||
|
||||
func addResponseErrorMiddleware(stack *middleware.Stack) error {
|
||||
return s3shared.AddResponseErrorMiddleware(stack)
|
||||
}
|
||||
|
||||
func disableAcceptEncodingGzip(stack *middleware.Stack) error {
|
||||
return acceptencodingcust.AddAcceptEncodingGzip(stack, acceptencodingcust.AddAcceptEncodingGzipOptions{})
|
||||
}
|
||||
|
||||
// ResponseError provides the HTTP centric error type wrapping the underlying error
|
||||
// with the HTTP response value and the deserialized RequestID.
|
||||
type ResponseError interface {
|
||||
error
|
||||
|
||||
ServiceHostID() string
|
||||
ServiceRequestID() string
|
||||
}
|
||||
|
||||
var _ ResponseError = (*s3shared.ResponseError)(nil)
|
||||
|
||||
// GetHostIDMetadata retrieves the host id from middleware metadata returns host id
|
||||
// as string along with a boolean indicating presence of hostId on middleware
|
||||
// metadata.
|
||||
func GetHostIDMetadata(metadata middleware.Metadata) (string, bool) {
|
||||
return s3shared.GetHostIDMetadata(metadata)
|
||||
}
|
||||
|
||||
// HTTPPresignerV4 represents presigner interface used by presign url client
|
||||
type HTTPPresignerV4 interface {
|
||||
PresignHTTP(
|
||||
ctx context.Context, credentials aws.Credentials, r *http.Request,
|
||||
payloadHash string, service string, region string, signingTime time.Time,
|
||||
optFns ...func(*v4.SignerOptions),
|
||||
) (url string, signedHeader http.Header, err error)
|
||||
}
|
||||
|
||||
// httpPresignerV4a represents sigv4a presigner interface used by presign url
|
||||
// client
|
||||
type httpPresignerV4a interface {
|
||||
PresignHTTP(
|
||||
ctx context.Context, credentials v4a.Credentials, r *http.Request,
|
||||
payloadHash string, service string, regionSet []string, signingTime time.Time,
|
||||
optFns ...func(*v4a.SignerOptions),
|
||||
) (url string, signedHeader http.Header, err error)
|
||||
}
|
||||
|
||||
// PresignOptions represents the presign client options
|
||||
type PresignOptions struct {
|
||||
|
||||
// ClientOptions are list of functional options to mutate client options used by
|
||||
// the presign client.
|
||||
ClientOptions []func(*Options)
|
||||
|
||||
// Presigner is the presigner used by the presign url client
|
||||
Presigner HTTPPresignerV4
|
||||
|
||||
// Expires sets the expiration duration for the generated presign url. This should
|
||||
// be the duration in seconds the presigned URL should be considered valid for. If
|
||||
// not set or set to zero, presign url would default to expire after 900 seconds.
|
||||
Expires time.Duration
|
||||
|
||||
// presignerV4a is the presigner used by the presign url client
|
||||
presignerV4a httpPresignerV4a
|
||||
}
|
||||
|
||||
func (o PresignOptions) copy() PresignOptions {
|
||||
clientOptions := make([]func(*Options), len(o.ClientOptions))
|
||||
copy(clientOptions, o.ClientOptions)
|
||||
o.ClientOptions = clientOptions
|
||||
return o
|
||||
}
|
||||
|
||||
// WithPresignClientFromClientOptions is a helper utility to retrieve a function
|
||||
// that takes PresignOption as input
|
||||
func WithPresignClientFromClientOptions(optFns ...func(*Options)) func(*PresignOptions) {
|
||||
return withPresignClientFromClientOptions(optFns).options
|
||||
}
|
||||
|
||||
type withPresignClientFromClientOptions []func(*Options)
|
||||
|
||||
func (w withPresignClientFromClientOptions) options(o *PresignOptions) {
|
||||
o.ClientOptions = append(o.ClientOptions, w...)
|
||||
}
|
||||
|
||||
// WithPresignExpires is a helper utility to append Expires value on presign
|
||||
// options optional function
|
||||
func WithPresignExpires(dur time.Duration) func(*PresignOptions) {
|
||||
return withPresignExpires(dur).options
|
||||
}
|
||||
|
||||
type withPresignExpires time.Duration
|
||||
|
||||
func (w withPresignExpires) options(o *PresignOptions) {
|
||||
o.Expires = time.Duration(w)
|
||||
}
|
||||
|
||||
// PresignClient represents the presign url client
|
||||
type PresignClient struct {
|
||||
client *Client
|
||||
options PresignOptions
|
||||
}
|
||||
|
||||
// NewPresignClient generates a presign client using provided API Client and
|
||||
// presign options
|
||||
func NewPresignClient(c *Client, optFns ...func(*PresignOptions)) *PresignClient {
|
||||
var options PresignOptions
|
||||
for _, fn := range optFns {
|
||||
fn(&options)
|
||||
}
|
||||
if len(options.ClientOptions) != 0 {
|
||||
c = New(c.options, options.ClientOptions...)
|
||||
}
|
||||
|
||||
if options.Presigner == nil {
|
||||
options.Presigner = newDefaultV4Signer(c.options)
|
||||
}
|
||||
|
||||
if options.presignerV4a == nil {
|
||||
options.presignerV4a = newDefaultV4aSigner(c.options)
|
||||
}
|
||||
|
||||
return &PresignClient{
|
||||
client: c,
|
||||
options: options,
|
||||
}
|
||||
}
|
||||
|
||||
func withNopHTTPClientAPIOption(o *Options) {
|
||||
o.HTTPClient = smithyhttp.NopClient{}
|
||||
}
|
||||
|
||||
type presignConverter PresignOptions
|
||||
|
||||
func (c presignConverter) convertToPresignMiddleware(stack *middleware.Stack, options Options) (err error) {
|
||||
stack.Finalize.Clear()
|
||||
stack.Deserialize.Clear()
|
||||
stack.Build.Remove((*awsmiddleware.ClientRequestID)(nil).ID())
|
||||
stack.Build.Remove("UserAgent")
|
||||
pmw := v4.NewPresignHTTPRequestMiddleware(v4.PresignHTTPRequestMiddlewareOptions{
|
||||
CredentialsProvider: options.Credentials,
|
||||
Presigner: c.Presigner,
|
||||
LogSigning: options.ClientLogMode.IsSigning(),
|
||||
})
|
||||
err = stack.Finalize.Add(pmw, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
// add multi-region access point presigner
|
||||
signermv := s3cust.NewPresignHTTPRequestMiddleware(s3cust.PresignHTTPRequestMiddlewareOptions{
|
||||
CredentialsProvider: options.Credentials,
|
||||
V4Presigner: c.Presigner,
|
||||
V4aPresigner: c.presignerV4a,
|
||||
LogSigning: options.ClientLogMode.IsSigning(),
|
||||
})
|
||||
err = s3cust.RegisterPreSigningMiddleware(stack, signermv)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if c.Expires < 0 {
|
||||
return fmt.Errorf("presign URL duration must be 0 or greater, %v", c.Expires)
|
||||
}
|
||||
// add middleware to set expiration for s3 presigned url, if expiration is set to
|
||||
// 0, this middleware sets a default expiration of 900 seconds
|
||||
err = stack.Build.Add(&s3cust.AddExpiresOnPresignedURL{Expires: c.Expires}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = presignedurlcust.AddAsIsPresigingMiddleware(stack)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func addRequestResponseLogging(stack *middleware.Stack, o Options) error {
|
||||
return stack.Deserialize.Add(&smithyhttp.RequestResponseLogger{
|
||||
LogRequest: o.ClientLogMode.IsRequest(),
|
||||
LogRequestWithBody: o.ClientLogMode.IsRequestWithBody(),
|
||||
LogResponse: o.ClientLogMode.IsResponse(),
|
||||
LogResponseWithBody: o.ClientLogMode.IsResponseWithBody(),
|
||||
}, middleware.After)
|
||||
}
|
||||
232
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_AbortMultipartUpload.go
generated
vendored
Normal file
232
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_AbortMultipartUpload.go
generated
vendored
Normal file
@@ -0,0 +1,232 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// This action aborts a multipart upload. After a multipart upload is aborted, no
|
||||
// additional parts can be uploaded using that upload ID. The storage consumed by
|
||||
// any previously uploaded parts will be freed. However, if any part uploads are
|
||||
// currently in progress, those part uploads might or might not succeed. As a
|
||||
// result, it might be necessary to abort a given multipart upload multiple times
|
||||
// in order to completely free all storage consumed by all parts. To verify that
|
||||
// all parts have been removed, so you don't get charged for the part storage, you
|
||||
// should call the ListParts
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListParts.html) action and
|
||||
// ensure that the parts list is empty. For information about permissions required
|
||||
// to use the multipart upload, see Multipart Upload and Permissions
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html). The
|
||||
// following operations are related to AbortMultipartUpload:
|
||||
//
|
||||
// *
|
||||
// CreateMultipartUpload
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html)
|
||||
//
|
||||
// *
|
||||
// UploadPart
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html)
|
||||
//
|
||||
// *
|
||||
// CompleteMultipartUpload
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CompleteMultipartUpload.html)
|
||||
//
|
||||
// *
|
||||
// ListParts
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListParts.html)
|
||||
//
|
||||
// *
|
||||
// ListMultipartUploads
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListMultipartUploads.html)
|
||||
func (c *Client) AbortMultipartUpload(ctx context.Context, params *AbortMultipartUploadInput, optFns ...func(*Options)) (*AbortMultipartUploadOutput, error) {
|
||||
if params == nil {
|
||||
params = &AbortMultipartUploadInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "AbortMultipartUpload", params, optFns, c.addOperationAbortMultipartUploadMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*AbortMultipartUploadOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type AbortMultipartUploadInput struct {
|
||||
|
||||
// The bucket name to which the upload was taking place. When using this action
|
||||
// with an access point, you must direct requests to the access point hostname. The
|
||||
// access point hostname takes the form
|
||||
// AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this
|
||||
// action with an access point through the Amazon Web Services SDKs, you provide
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see Using access points
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide. When using this action with Amazon S3 on Outposts,
|
||||
// you must direct requests to the S3 on Outposts hostname. The S3 on Outposts
|
||||
// hostname takes the form
|
||||
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When using
|
||||
// this action using S3 on Outposts through the Amazon Web Services SDKs, you
|
||||
// provide the Outposts bucket ARN in place of the bucket name. For more
|
||||
// information about S3 on Outposts ARNs, see Using S3 on Outposts
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) in the
|
||||
// Amazon S3 User Guide.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// Key of the object for which the multipart upload was initiated.
|
||||
//
|
||||
// This member is required.
|
||||
Key *string
|
||||
|
||||
// Upload ID that identifies the multipart upload.
|
||||
//
|
||||
// This member is required.
|
||||
UploadId *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
// Confirms that the requester knows that they will be charged for the request.
|
||||
// Bucket owners need not specify this parameter in their requests. For information
|
||||
// about downloading objects from requester pays buckets, see Downloading Objects
|
||||
// in Requestor Pays Buckets
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
RequestPayer types.RequestPayer
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type AbortMultipartUploadOutput struct {
|
||||
|
||||
// If present, indicates that the requester was successfully charged for the
|
||||
// request.
|
||||
RequestCharged types.RequestCharged
|
||||
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationAbortMultipartUploadMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpAbortMultipartUpload{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpAbortMultipartUpload{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpAbortMultipartUploadValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opAbortMultipartUpload(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addAbortMultipartUploadUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opAbortMultipartUpload(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "AbortMultipartUpload",
|
||||
}
|
||||
}
|
||||
|
||||
// getAbortMultipartUploadBucketMember returns a pointer to string denoting a
|
||||
// provided bucket member valueand a boolean indicating if the input has a modeled
|
||||
// bucket name,
|
||||
func getAbortMultipartUploadBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*AbortMultipartUploadInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addAbortMultipartUploadUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getAbortMultipartUploadBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
345
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_CompleteMultipartUpload.go
generated
vendored
Normal file
345
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_CompleteMultipartUpload.go
generated
vendored
Normal file
@@ -0,0 +1,345 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Completes a multipart upload by assembling previously uploaded parts. You first
|
||||
// initiate the multipart upload and then upload all parts using the UploadPart
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html) operation.
|
||||
// After successfully uploading all relevant parts of an upload, you call this
|
||||
// action to complete the upload. Upon receiving this request, Amazon S3
|
||||
// concatenates all the parts in ascending order by part number to create a new
|
||||
// object. In the Complete Multipart Upload request, you must provide the parts
|
||||
// list. You must ensure that the parts list is complete. This action concatenates
|
||||
// the parts that you provide in the list. For each part in the list, you must
|
||||
// provide the part number and the ETag value, returned after that part was
|
||||
// uploaded. Processing of a Complete Multipart Upload request could take several
|
||||
// minutes to complete. After Amazon S3 begins processing the request, it sends an
|
||||
// HTTP response header that specifies a 200 OK response. While processing is in
|
||||
// progress, Amazon S3 periodically sends white space characters to keep the
|
||||
// connection from timing out. Because a request could fail after the initial 200
|
||||
// OK response has been sent, it is important that you check the response body to
|
||||
// determine whether the request succeeded. Note that if CompleteMultipartUpload
|
||||
// fails, applications should be prepared to retry the failed requests. For more
|
||||
// information, see Amazon S3 Error Best Practices
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/ErrorBestPractices.html). For
|
||||
// more information about multipart uploads, see Uploading Objects Using Multipart
|
||||
// Upload (https://docs.aws.amazon.com/AmazonS3/latest/dev/uploadobjusingmpu.html).
|
||||
// For information about permissions required to use the multipart upload API, see
|
||||
// Multipart Upload and Permissions
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html).
|
||||
// CompleteMultipartUpload has the following special errors:
|
||||
//
|
||||
// * Error code:
|
||||
// EntityTooSmall
|
||||
//
|
||||
// * Description: Your proposed upload is smaller than the minimum
|
||||
// allowed object size. Each part must be at least 5 MB in size, except the last
|
||||
// part.
|
||||
//
|
||||
// * 400 Bad Request
|
||||
//
|
||||
// * Error code: InvalidPart
|
||||
//
|
||||
// * Description: One or more
|
||||
// of the specified parts could not be found. The part might not have been
|
||||
// uploaded, or the specified entity tag might not have matched the part's entity
|
||||
// tag.
|
||||
//
|
||||
// * 400 Bad Request
|
||||
//
|
||||
// * Error code: InvalidPartOrder
|
||||
//
|
||||
// * Description: The list
|
||||
// of parts was not in ascending order. The parts list must be specified in order
|
||||
// by part number.
|
||||
//
|
||||
// * 400 Bad Request
|
||||
//
|
||||
// * Error code: NoSuchUpload
|
||||
//
|
||||
// * Description:
|
||||
// The specified multipart upload does not exist. The upload ID might be invalid,
|
||||
// or the multipart upload might have been aborted or completed.
|
||||
//
|
||||
// * 404 Not
|
||||
// Found
|
||||
//
|
||||
// The following operations are related to CompleteMultipartUpload:
|
||||
//
|
||||
// *
|
||||
// CreateMultipartUpload
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html)
|
||||
//
|
||||
// *
|
||||
// UploadPart
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html)
|
||||
//
|
||||
// *
|
||||
// AbortMultipartUpload
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_AbortMultipartUpload.html)
|
||||
//
|
||||
// *
|
||||
// ListParts
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListParts.html)
|
||||
//
|
||||
// *
|
||||
// ListMultipartUploads
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListMultipartUploads.html)
|
||||
func (c *Client) CompleteMultipartUpload(ctx context.Context, params *CompleteMultipartUploadInput, optFns ...func(*Options)) (*CompleteMultipartUploadOutput, error) {
|
||||
if params == nil {
|
||||
params = &CompleteMultipartUploadInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "CompleteMultipartUpload", params, optFns, c.addOperationCompleteMultipartUploadMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*CompleteMultipartUploadOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type CompleteMultipartUploadInput struct {
|
||||
|
||||
// Name of the bucket to which the multipart upload was initiated. When using this
|
||||
// action with an access point, you must direct requests to the access point
|
||||
// hostname. The access point hostname takes the form
|
||||
// AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this
|
||||
// action with an access point through the Amazon Web Services SDKs, you provide
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see Using access points
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide. When using this action with Amazon S3 on Outposts,
|
||||
// you must direct requests to the S3 on Outposts hostname. The S3 on Outposts
|
||||
// hostname takes the form
|
||||
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When using
|
||||
// this action using S3 on Outposts through the Amazon Web Services SDKs, you
|
||||
// provide the Outposts bucket ARN in place of the bucket name. For more
|
||||
// information about S3 on Outposts ARNs, see Using S3 on Outposts
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) in the
|
||||
// Amazon S3 User Guide.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// Object key for which the multipart upload was initiated.
|
||||
//
|
||||
// This member is required.
|
||||
Key *string
|
||||
|
||||
// ID for the initiated multipart upload.
|
||||
//
|
||||
// This member is required.
|
||||
UploadId *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
// The container for the multipart upload request information.
|
||||
MultipartUpload *types.CompletedMultipartUpload
|
||||
|
||||
// Confirms that the requester knows that they will be charged for the request.
|
||||
// Bucket owners need not specify this parameter in their requests. For information
|
||||
// about downloading objects from requester pays buckets, see Downloading Objects
|
||||
// in Requestor Pays Buckets
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
RequestPayer types.RequestPayer
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type CompleteMultipartUploadOutput struct {
|
||||
|
||||
// The name of the bucket that contains the newly created object. Does not return
|
||||
// the access point ARN or access point alias if used. When using this action with
|
||||
// an access point, you must direct requests to the access point hostname. The
|
||||
// access point hostname takes the form
|
||||
// AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this
|
||||
// action with an access point through the Amazon Web Services SDKs, you provide
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see Using access points
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide. When using this action with Amazon S3 on Outposts,
|
||||
// you must direct requests to the S3 on Outposts hostname. The S3 on Outposts
|
||||
// hostname takes the form
|
||||
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When using
|
||||
// this action using S3 on Outposts through the Amazon Web Services SDKs, you
|
||||
// provide the Outposts bucket ARN in place of the bucket name. For more
|
||||
// information about S3 on Outposts ARNs, see Using S3 on Outposts
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) in the
|
||||
// Amazon S3 User Guide.
|
||||
Bucket *string
|
||||
|
||||
// Indicates whether the multipart upload uses an S3 Bucket Key for server-side
|
||||
// encryption with Amazon Web Services KMS (SSE-KMS).
|
||||
BucketKeyEnabled bool
|
||||
|
||||
// Entity tag that identifies the newly created object's data. Objects with
|
||||
// different object data will have different entity tags. The entity tag is an
|
||||
// opaque string. The entity tag may or may not be an MD5 digest of the object
|
||||
// data. If the entity tag is not an MD5 digest of the object data, it will contain
|
||||
// one or more nonhexadecimal characters and/or will consist of less than 32 or
|
||||
// more than 32 hexadecimal digits.
|
||||
ETag *string
|
||||
|
||||
// If the object expiration is configured, this will contain the expiration date
|
||||
// (expiry-date) and rule ID (rule-id). The value of rule-id is URL encoded.
|
||||
Expiration *string
|
||||
|
||||
// The object key of the newly created object.
|
||||
Key *string
|
||||
|
||||
// The URI that identifies the newly created object.
|
||||
Location *string
|
||||
|
||||
// If present, indicates that the requester was successfully charged for the
|
||||
// request.
|
||||
RequestCharged types.RequestCharged
|
||||
|
||||
// If present, specifies the ID of the Amazon Web Services Key Management Service
|
||||
// (Amazon Web Services KMS) symmetric customer managed key that was used for the
|
||||
// object.
|
||||
SSEKMSKeyId *string
|
||||
|
||||
// If you specified server-side encryption either with an Amazon S3-managed
|
||||
// encryption key or an Amazon Web Services KMS key in your initiate multipart
|
||||
// upload request, the response includes this header. It confirms the encryption
|
||||
// algorithm that Amazon S3 used to encrypt the object.
|
||||
ServerSideEncryption types.ServerSideEncryption
|
||||
|
||||
// Version ID of the newly created object, in case the bucket has versioning turned
|
||||
// on.
|
||||
VersionId *string
|
||||
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationCompleteMultipartUploadMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpCompleteMultipartUpload{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpCompleteMultipartUpload{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpCompleteMultipartUploadValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opCompleteMultipartUpload(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCompleteMultipartUploadUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = s3cust.HandleResponseErrorWith200Status(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opCompleteMultipartUpload(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "CompleteMultipartUpload",
|
||||
}
|
||||
}
|
||||
|
||||
// getCompleteMultipartUploadBucketMember returns a pointer to string denoting a
|
||||
// provided bucket member valueand a boolean indicating if the input has a modeled
|
||||
// bucket name,
|
||||
func getCompleteMultipartUploadBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*CompleteMultipartUploadInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addCompleteMultipartUploadUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getCompleteMultipartUploadBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
554
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_CopyObject.go
generated
vendored
Normal file
554
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_CopyObject.go
generated
vendored
Normal file
@@ -0,0 +1,554 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
"time"
|
||||
)
|
||||
|
||||
// Creates a copy of an object that is already stored in Amazon S3. You can store
|
||||
// individual objects of up to 5 TB in Amazon S3. You create a copy of your object
|
||||
// up to 5 GB in size in a single atomic action using this API. However, to copy an
|
||||
// object greater than 5 GB, you must use the multipart upload Upload Part - Copy
|
||||
// API. For more information, see Copy Object Using the REST Multipart Upload API
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/CopyingObjctsUsingRESTMPUapi.html).
|
||||
// All copy requests must be authenticated. Additionally, you must have read access
|
||||
// to the source object and write access to the destination bucket. For more
|
||||
// information, see REST Authentication
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/RESTAuthentication.html). Both
|
||||
// the Region that you want to copy the object from and the Region that you want to
|
||||
// copy the object to must be enabled for your account. A copy request might return
|
||||
// an error when Amazon S3 receives the copy request or while Amazon S3 is copying
|
||||
// the files. If the error occurs before the copy action starts, you receive a
|
||||
// standard Amazon S3 error. If the error occurs during the copy operation, the
|
||||
// error response is embedded in the 200 OK response. This means that a 200 OK
|
||||
// response can contain either a success or an error. Design your application to
|
||||
// parse the contents of the response and handle it appropriately. If the copy is
|
||||
// successful, you receive a response with information about the copied object. If
|
||||
// the request is an HTTP 1.1 request, the response is chunk encoded. If it were
|
||||
// not, it would not contain the content-length, and you would need to read the
|
||||
// entire body. The copy request charge is based on the storage class and Region
|
||||
// that you specify for the destination object. For pricing information, see Amazon
|
||||
// S3 pricing (http://aws.amazon.com/s3/pricing/). Amazon S3 transfer acceleration
|
||||
// does not support cross-Region copies. If you request a cross-Region copy using a
|
||||
// transfer acceleration endpoint, you get a 400 Bad Request error. For more
|
||||
// information, see Transfer Acceleration
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/transfer-acceleration.html).
|
||||
// Metadata When copying an object, you can preserve all metadata (default) or
|
||||
// specify new metadata. However, the ACL is not preserved and is set to private
|
||||
// for the user making the request. To override the default ACL setting, specify a
|
||||
// new ACL when generating a copy request. For more information, see Using ACLs
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/S3_ACLs_UsingACLs.html). To
|
||||
// specify whether you want the object metadata copied from the source object or
|
||||
// replaced with metadata provided in the request, you can optionally add the
|
||||
// x-amz-metadata-directive header. When you grant permissions, you can use the
|
||||
// s3:x-amz-metadata-directive condition key to enforce certain metadata behavior
|
||||
// when objects are uploaded. For more information, see Specifying Conditions in a
|
||||
// Policy
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/amazon-s3-policy-keys.html) in
|
||||
// the Amazon S3 User Guide. For a complete list of Amazon S3-specific condition
|
||||
// keys, see Actions, Resources, and Condition Keys for Amazon S3
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/list_amazons3.html).
|
||||
// x-amz-copy-source-if Headers To only copy an object under certain conditions,
|
||||
// such as whether the Etag matches or whether the object was modified before or
|
||||
// after a specified date, use the following request parameters:
|
||||
//
|
||||
// *
|
||||
// x-amz-copy-source-if-match
|
||||
//
|
||||
// * x-amz-copy-source-if-none-match
|
||||
//
|
||||
// *
|
||||
// x-amz-copy-source-if-unmodified-since
|
||||
//
|
||||
// * x-amz-copy-source-if-modified-since
|
||||
//
|
||||
// If
|
||||
// both the x-amz-copy-source-if-match and x-amz-copy-source-if-unmodified-since
|
||||
// headers are present in the request and evaluate as follows, Amazon S3 returns
|
||||
// 200 OK and copies the data:
|
||||
//
|
||||
// * x-amz-copy-source-if-match condition evaluates to
|
||||
// true
|
||||
//
|
||||
// * x-amz-copy-source-if-unmodified-since condition evaluates to false
|
||||
//
|
||||
// If
|
||||
// both the x-amz-copy-source-if-none-match and x-amz-copy-source-if-modified-since
|
||||
// headers are present in the request and evaluate as follows, Amazon S3 returns
|
||||
// the 412 Precondition Failed response code:
|
||||
//
|
||||
// * x-amz-copy-source-if-none-match
|
||||
// condition evaluates to false
|
||||
//
|
||||
// * x-amz-copy-source-if-modified-since condition
|
||||
// evaluates to true
|
||||
//
|
||||
// All headers with the x-amz- prefix, including
|
||||
// x-amz-copy-source, must be signed. Server-side encryption When you perform a
|
||||
// CopyObject operation, you can optionally use the appropriate encryption-related
|
||||
// headers to encrypt the object using server-side encryption with Amazon Web
|
||||
// Services managed encryption keys (SSE-S3 or SSE-KMS) or a customer-provided
|
||||
// encryption key. With server-side encryption, Amazon S3 encrypts your data as it
|
||||
// writes it to disks in its data centers and decrypts the data when you access it.
|
||||
// For more information about server-side encryption, see Using Server-Side
|
||||
// Encryption
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html). If
|
||||
// a target object uses SSE-KMS, you can enable an S3 Bucket Key for the object.
|
||||
// For more information, see Amazon S3 Bucket Keys
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-key.html) in the Amazon
|
||||
// S3 User Guide. Access Control List (ACL)-Specific Request Headers When copying
|
||||
// an object, you can optionally use headers to grant ACL-based permissions. By
|
||||
// default, all objects are private. Only the owner has full access control. When
|
||||
// adding a new object, you can grant permissions to individual Amazon Web Services
|
||||
// accounts or to predefined groups defined by Amazon S3. These permissions are
|
||||
// then added to the ACL on the object. For more information, see Access Control
|
||||
// List (ACL) Overview
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html) and Managing
|
||||
// ACLs Using the REST API
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-using-rest-api.html).
|
||||
// Storage Class Options You can use the CopyObject action to change the storage
|
||||
// class of an object that is already stored in Amazon S3 using the StorageClass
|
||||
// parameter. For more information, see Storage Classes
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html) in
|
||||
// the Amazon S3 User Guide. Versioning By default, x-amz-copy-source identifies
|
||||
// the current version of an object to copy. If the current version is a delete
|
||||
// marker, Amazon S3 behaves as if the object was deleted. To copy a different
|
||||
// version, use the versionId subresource. If you enable versioning on the target
|
||||
// bucket, Amazon S3 generates a unique version ID for the object being copied.
|
||||
// This version ID is different from the version ID of the source object. Amazon S3
|
||||
// returns the version ID of the copied object in the x-amz-version-id response
|
||||
// header in the response. If you do not enable versioning or suspend it on the
|
||||
// target bucket, the version ID that Amazon S3 generates is always null. If the
|
||||
// source object's storage class is GLACIER, you must restore a copy of this object
|
||||
// before you can use it as a source object for the copy operation. For more
|
||||
// information, see RestoreObject
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_RestoreObject.html). The
|
||||
// following operations are related to CopyObject:
|
||||
//
|
||||
// * PutObject
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html)
|
||||
//
|
||||
// *
|
||||
// GetObject
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html)
|
||||
//
|
||||
// For more
|
||||
// information, see Copying Objects
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/CopyingObjectsExamples.html).
|
||||
func (c *Client) CopyObject(ctx context.Context, params *CopyObjectInput, optFns ...func(*Options)) (*CopyObjectOutput, error) {
|
||||
if params == nil {
|
||||
params = &CopyObjectInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "CopyObject", params, optFns, c.addOperationCopyObjectMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*CopyObjectOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type CopyObjectInput struct {
|
||||
|
||||
// The name of the destination bucket. When using this action with an access point,
|
||||
// you must direct requests to the access point hostname. The access point hostname
|
||||
// takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com.
|
||||
// When using this action with an access point through the Amazon Web Services
|
||||
// SDKs, you provide the access point ARN in place of the bucket name. For more
|
||||
// information about access point ARNs, see Using access points
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide. When using this action with Amazon S3 on Outposts,
|
||||
// you must direct requests to the S3 on Outposts hostname. The S3 on Outposts
|
||||
// hostname takes the form
|
||||
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When using
|
||||
// this action using S3 on Outposts through the Amazon Web Services SDKs, you
|
||||
// provide the Outposts bucket ARN in place of the bucket name. For more
|
||||
// information about S3 on Outposts ARNs, see Using S3 on Outposts
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) in the
|
||||
// Amazon S3 User Guide.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// Specifies the source object for the copy operation. You specify the value in one
|
||||
// of two formats, depending on whether you want to access the source object
|
||||
// through an access point
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-points.html):
|
||||
//
|
||||
// *
|
||||
// For objects not accessed through an access point, specify the name of the source
|
||||
// bucket and the key of the source object, separated by a slash (/). For example,
|
||||
// to copy the object reports/january.pdf from the bucket awsexamplebucket, use
|
||||
// awsexamplebucket/reports/january.pdf. The value must be URL encoded.
|
||||
//
|
||||
// * For
|
||||
// objects accessed through access points, specify the Amazon Resource Name (ARN)
|
||||
// of the object as accessed through the access point, in the format
|
||||
// arn:aws:s3:::accesspoint//object/. For example, to copy the object
|
||||
// reports/january.pdf through access point my-access-point owned by account
|
||||
// 123456789012 in Region us-west-2, use the URL encoding of
|
||||
// arn:aws:s3:us-west-2:123456789012:accesspoint/my-access-point/object/reports/january.pdf.
|
||||
// The value must be URL encoded. Amazon S3 supports copy operations using access
|
||||
// points only when the source and destination buckets are in the same Amazon Web
|
||||
// Services Region. Alternatively, for objects accessed through Amazon S3 on
|
||||
// Outposts, specify the ARN of the object as accessed in the format
|
||||
// arn:aws:s3-outposts:::outpost//object/. For example, to copy the object
|
||||
// reports/january.pdf 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/object/reports/january.pdf.
|
||||
// The value must be URL encoded.
|
||||
//
|
||||
// To copy a specific version of an object, append
|
||||
// ?versionId= to the value (for example,
|
||||
// awsexamplebucket/reports/january.pdf?versionId=QUpfdndhfd8438MNFDN93jdnJFkdmqnh893).
|
||||
// If you don't specify a version ID, Amazon S3 copies the latest version of the
|
||||
// source object.
|
||||
//
|
||||
// This member is required.
|
||||
CopySource *string
|
||||
|
||||
// The key of the destination object.
|
||||
//
|
||||
// This member is required.
|
||||
Key *string
|
||||
|
||||
// The canned ACL to apply to the object. This action is not supported by Amazon S3
|
||||
// on Outposts.
|
||||
ACL types.ObjectCannedACL
|
||||
|
||||
// Specifies whether Amazon S3 should use an S3 Bucket Key for object encryption
|
||||
// with server-side encryption using AWS 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 a COPY action doesn’t affect bucket-level settings
|
||||
// for S3 Bucket Key.
|
||||
BucketKeyEnabled bool
|
||||
|
||||
// Specifies caching behavior along the request/reply chain.
|
||||
CacheControl *string
|
||||
|
||||
// Specifies presentational information for the object.
|
||||
ContentDisposition *string
|
||||
|
||||
// Specifies what content encodings have been applied to the object and thus what
|
||||
// decoding mechanisms must be applied to obtain the media-type referenced by the
|
||||
// Content-Type header field.
|
||||
ContentEncoding *string
|
||||
|
||||
// The language the content is in.
|
||||
ContentLanguage *string
|
||||
|
||||
// A standard MIME type describing the format of the object data.
|
||||
ContentType *string
|
||||
|
||||
// Copies the object if its entity tag (ETag) matches the specified tag.
|
||||
CopySourceIfMatch *string
|
||||
|
||||
// Copies the object if it has been modified since the specified time.
|
||||
CopySourceIfModifiedSince *time.Time
|
||||
|
||||
// Copies the object if its entity tag (ETag) is different than the specified ETag.
|
||||
CopySourceIfNoneMatch *string
|
||||
|
||||
// Copies the object if it hasn't been modified since the specified time.
|
||||
CopySourceIfUnmodifiedSince *time.Time
|
||||
|
||||
// Specifies the algorithm to use when decrypting the source object (for example,
|
||||
// AES256).
|
||||
CopySourceSSECustomerAlgorithm *string
|
||||
|
||||
// Specifies the customer-provided encryption key for Amazon S3 to use to decrypt
|
||||
// the source object. The encryption key provided in this header must be one that
|
||||
// was used when the source object was created.
|
||||
CopySourceSSECustomerKey *string
|
||||
|
||||
// Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321.
|
||||
// Amazon S3 uses this header for a message integrity check to ensure that the
|
||||
// encryption key was transmitted without error.
|
||||
CopySourceSSECustomerKeyMD5 *string
|
||||
|
||||
// The account ID of the expected destination bucket owner. If the destination
|
||||
// bucket is owned by a different account, the request will fail with an HTTP 403
|
||||
// (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
// The account ID of the expected source bucket owner. If the source bucket is
|
||||
// owned by a different account, the request will fail with an HTTP 403 (Access
|
||||
// Denied) error.
|
||||
ExpectedSourceBucketOwner *string
|
||||
|
||||
// The date and time at which the object is no longer cacheable.
|
||||
Expires *time.Time
|
||||
|
||||
// Gives the grantee READ, READ_ACP, and WRITE_ACP permissions on the object. This
|
||||
// action is not supported by Amazon S3 on Outposts.
|
||||
GrantFullControl *string
|
||||
|
||||
// Allows grantee to read the object data and its metadata. This action is not
|
||||
// supported by Amazon S3 on Outposts.
|
||||
GrantRead *string
|
||||
|
||||
// Allows grantee to read the object ACL. This action is not supported by Amazon S3
|
||||
// on Outposts.
|
||||
GrantReadACP *string
|
||||
|
||||
// Allows grantee to write the ACL for the applicable object. This action is not
|
||||
// supported by Amazon S3 on Outposts.
|
||||
GrantWriteACP *string
|
||||
|
||||
// A map of metadata to store with the object in S3.
|
||||
Metadata map[string]string
|
||||
|
||||
// Specifies whether the metadata is copied from the source object or replaced with
|
||||
// metadata provided in the request.
|
||||
MetadataDirective types.MetadataDirective
|
||||
|
||||
// Specifies whether you want to apply a Legal Hold to the copied object.
|
||||
ObjectLockLegalHoldStatus types.ObjectLockLegalHoldStatus
|
||||
|
||||
// The Object Lock mode that you want to apply to the copied object.
|
||||
ObjectLockMode types.ObjectLockMode
|
||||
|
||||
// The date and time when you want the copied object's Object Lock to expire.
|
||||
ObjectLockRetainUntilDate *time.Time
|
||||
|
||||
// Confirms that the requester knows that they will be charged for the request.
|
||||
// Bucket owners need not specify this parameter in their requests. For information
|
||||
// about downloading objects from requester pays buckets, see Downloading Objects
|
||||
// in Requestor Pays Buckets
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
RequestPayer types.RequestPayer
|
||||
|
||||
// Specifies the algorithm to use to when encrypting the object (for example,
|
||||
// AES256).
|
||||
SSECustomerAlgorithm *string
|
||||
|
||||
// Specifies the customer-provided encryption key for Amazon S3 to use in
|
||||
// encrypting data. This value is used to store the object and then it is
|
||||
// discarded; Amazon S3 does not store the encryption key. The key must be
|
||||
// appropriate for use with the algorithm specified in the
|
||||
// x-amz-server-side-encryption-customer-algorithm header.
|
||||
SSECustomerKey *string
|
||||
|
||||
// Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321.
|
||||
// Amazon S3 uses this header for a message integrity check to ensure that the
|
||||
// encryption key was transmitted without error.
|
||||
SSECustomerKeyMD5 *string
|
||||
|
||||
// Specifies the Amazon Web Services KMS Encryption Context to use for object
|
||||
// encryption. The value of this header is a base64-encoded UTF-8 string holding
|
||||
// JSON with the encryption context key-value pairs.
|
||||
SSEKMSEncryptionContext *string
|
||||
|
||||
// Specifies the Amazon Web Services KMS key ID to use for object encryption. All
|
||||
// GET and PUT requests for an object protected by Amazon Web Services KMS will
|
||||
// fail if not made via SSL or using SigV4. For information about configuring using
|
||||
// any of the officially supported Amazon Web Services SDKs and Amazon Web Services
|
||||
// CLI, see Specifying the Signature Version in Request Authentication
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version)
|
||||
// in the Amazon S3 User Guide.
|
||||
SSEKMSKeyId *string
|
||||
|
||||
// The server-side encryption algorithm used when storing this object in Amazon S3
|
||||
// (for example, AES256, aws:kms).
|
||||
ServerSideEncryption types.ServerSideEncryption
|
||||
|
||||
// By default, Amazon S3 uses the STANDARD Storage Class to store newly created
|
||||
// objects. The STANDARD storage class provides high durability and high
|
||||
// availability. Depending on performance needs, you can specify a different
|
||||
// Storage Class. Amazon S3 on Outposts only uses the OUTPOSTS Storage Class. For
|
||||
// more information, see Storage Classes
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html) in
|
||||
// the Amazon S3 User Guide.
|
||||
StorageClass types.StorageClass
|
||||
|
||||
// The tag-set for the object destination object this value must be used in
|
||||
// conjunction with the TaggingDirective. The tag-set must be encoded as URL Query
|
||||
// parameters.
|
||||
Tagging *string
|
||||
|
||||
// Specifies whether the object tag-set are copied from the source object or
|
||||
// replaced with tag-set provided in the request.
|
||||
TaggingDirective types.TaggingDirective
|
||||
|
||||
// If the bucket is configured as a website, redirects requests for this object to
|
||||
// another object in the same bucket or to an external URL. Amazon S3 stores the
|
||||
// value of this header in the object metadata.
|
||||
WebsiteRedirectLocation *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type CopyObjectOutput struct {
|
||||
|
||||
// Indicates whether the copied object uses an S3 Bucket Key for server-side
|
||||
// encryption with Amazon Web Services KMS (SSE-KMS).
|
||||
BucketKeyEnabled bool
|
||||
|
||||
// Container for all response elements.
|
||||
CopyObjectResult *types.CopyObjectResult
|
||||
|
||||
// Version of the copied object in the destination bucket.
|
||||
CopySourceVersionId *string
|
||||
|
||||
// If the object expiration is configured, the response includes this header.
|
||||
Expiration *string
|
||||
|
||||
// If present, indicates that the requester was successfully charged for the
|
||||
// request.
|
||||
RequestCharged types.RequestCharged
|
||||
|
||||
// If server-side encryption with a customer-provided encryption key was requested,
|
||||
// the response will include this header confirming the encryption algorithm used.
|
||||
SSECustomerAlgorithm *string
|
||||
|
||||
// If server-side encryption with a customer-provided encryption key was requested,
|
||||
// the response will include this header to provide round-trip message integrity
|
||||
// verification of the customer-provided encryption key.
|
||||
SSECustomerKeyMD5 *string
|
||||
|
||||
// If present, specifies the Amazon Web Services KMS Encryption Context to use for
|
||||
// object encryption. The value of this header is a base64-encoded UTF-8 string
|
||||
// holding JSON with the encryption context key-value pairs.
|
||||
SSEKMSEncryptionContext *string
|
||||
|
||||
// If present, specifies the ID of the Amazon Web Services Key Management Service
|
||||
// (Amazon Web Services KMS) symmetric customer managed key that was used for the
|
||||
// object.
|
||||
SSEKMSKeyId *string
|
||||
|
||||
// The server-side encryption algorithm used when storing this object in Amazon S3
|
||||
// (for example, AES256, aws:kms).
|
||||
ServerSideEncryption types.ServerSideEncryption
|
||||
|
||||
// Version ID of the newly created copy.
|
||||
VersionId *string
|
||||
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationCopyObjectMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpCopyObject{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpCopyObject{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpCopyObjectValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opCopyObject(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCopyObjectUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = s3cust.HandleResponseErrorWith200Status(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opCopyObject(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "CopyObject",
|
||||
}
|
||||
}
|
||||
|
||||
// getCopyObjectBucketMember returns a pointer to string denoting a provided bucket
|
||||
// member valueand a boolean indicating if the input has a modeled bucket name,
|
||||
func getCopyObjectBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*CopyObjectInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addCopyObjectUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getCopyObjectBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
288
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_CreateBucket.go
generated
vendored
Normal file
288
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_CreateBucket.go
generated
vendored
Normal file
@@ -0,0 +1,288 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Creates a new S3 bucket. To create a bucket, you must register with Amazon S3
|
||||
// and have a valid Amazon Web Services Access Key ID to authenticate requests.
|
||||
// Anonymous requests are never allowed to create buckets. By creating the bucket,
|
||||
// you become the bucket owner. Not every string is an acceptable bucket name. For
|
||||
// information about bucket naming restrictions, see Bucket naming rules
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html).
|
||||
// If you want to create an Amazon S3 on Outposts bucket, see Create Bucket
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateBucket.html).
|
||||
// By default, the bucket is created in the US East (N. Virginia) Region. You can
|
||||
// optionally specify a Region in the request body. You might choose a Region to
|
||||
// optimize latency, minimize costs, or address regulatory requirements. For
|
||||
// example, if you reside in Europe, you will probably find it advantageous to
|
||||
// create buckets in the Europe (Ireland) Region. For more information, see
|
||||
// Accessing a bucket
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingBucket.html#access-bucket-intro).
|
||||
// If you send your create bucket request to the s3.amazonaws.com endpoint, the
|
||||
// request goes to the us-east-1 Region. Accordingly, the signature calculations in
|
||||
// Signature Version 4 must use us-east-1 as the Region, even if the location
|
||||
// constraint in the request specifies another Region where the bucket is to be
|
||||
// created. If you create a bucket in a Region other than US East (N. Virginia),
|
||||
// your application must be able to handle 307 redirect. For more information, see
|
||||
// Virtual hosting of buckets
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/VirtualHosting.html). When
|
||||
// creating a bucket using this operation, you can optionally specify the accounts
|
||||
// or groups that should be granted specific permissions on the bucket. There are
|
||||
// two ways to grant the appropriate permissions using the request headers.
|
||||
//
|
||||
// *
|
||||
// Specify a canned ACL using the x-amz-acl request header. Amazon S3 supports a
|
||||
// set of predefined ACLs, known as canned ACLs. Each canned ACL has a predefined
|
||||
// set of grantees and permissions. For more information, see Canned ACL
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#CannedACL).
|
||||
//
|
||||
// *
|
||||
// Specify access permissions explicitly using the x-amz-grant-read,
|
||||
// x-amz-grant-write, x-amz-grant-read-acp, x-amz-grant-write-acp, and
|
||||
// x-amz-grant-full-control headers. These headers map to the set of permissions
|
||||
// Amazon S3 supports in an ACL. For more information, see Access control list
|
||||
// (ACL) overview
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html). You specify
|
||||
// each grantee as a type=value pair, where the type is one of the following:
|
||||
//
|
||||
// * id
|
||||
// – if the value specified is the canonical user ID of an Amazon Web Services
|
||||
// account
|
||||
//
|
||||
// * uri – if you are granting permissions to a predefined group
|
||||
//
|
||||
// *
|
||||
// emailAddress – if the value specified is the email address of an Amazon Web
|
||||
// Services account Using email addresses to specify a grantee is only supported in
|
||||
// the following Amazon Web Services Regions:
|
||||
//
|
||||
// * US East (N. Virginia)
|
||||
//
|
||||
// * US West
|
||||
// (N. California)
|
||||
//
|
||||
// * US West (Oregon)
|
||||
//
|
||||
// * Asia Pacific (Singapore)
|
||||
//
|
||||
// * Asia Pacific
|
||||
// (Sydney)
|
||||
//
|
||||
// * Asia Pacific (Tokyo)
|
||||
//
|
||||
// * Europe (Ireland)
|
||||
//
|
||||
// * South America (São
|
||||
// Paulo)
|
||||
//
|
||||
// For a list of all the Amazon S3 supported Regions and endpoints, see
|
||||
// Regions and Endpoints
|
||||
// (https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region) in the
|
||||
// Amazon Web Services General Reference.
|
||||
//
|
||||
// For example, the following
|
||||
// x-amz-grant-read header grants the Amazon Web Services accounts identified by
|
||||
// account IDs permissions to read object data and its metadata: x-amz-grant-read:
|
||||
// id="11112222333", id="444455556666"
|
||||
//
|
||||
// You can use either a canned ACL or specify
|
||||
// access permissions explicitly. You cannot do both. Permissions If your
|
||||
// CreateBucket request specifies ACL permissions and the ACL is public-read,
|
||||
// public-read-write, authenticated-read, or if you specify access permissions
|
||||
// explicitly through any other ACL, both s3:CreateBucket and s3:PutBucketAcl
|
||||
// permissions are needed. If the ACL the CreateBucket request is private, only
|
||||
// s3:CreateBucket permission is needed. If ObjectLockEnabledForBucket is set to
|
||||
// true in your CreateBucket request, s3:PutBucketObjectLockConfiguration and
|
||||
// s3:PutBucketVersioning permissions are required. The following operations are
|
||||
// related to CreateBucket:
|
||||
//
|
||||
// * PutObject
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html)
|
||||
//
|
||||
// *
|
||||
// DeleteBucket
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucket.html)
|
||||
func (c *Client) CreateBucket(ctx context.Context, params *CreateBucketInput, optFns ...func(*Options)) (*CreateBucketOutput, error) {
|
||||
if params == nil {
|
||||
params = &CreateBucketInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "CreateBucket", params, optFns, c.addOperationCreateBucketMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*CreateBucketOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type CreateBucketInput struct {
|
||||
|
||||
// The name of the bucket to create.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The canned ACL to apply to the bucket.
|
||||
ACL types.BucketCannedACL
|
||||
|
||||
// The configuration information for the bucket.
|
||||
CreateBucketConfiguration *types.CreateBucketConfiguration
|
||||
|
||||
// Allows grantee the read, write, read ACP, and write ACP permissions on the
|
||||
// bucket.
|
||||
GrantFullControl *string
|
||||
|
||||
// Allows grantee to list the objects in the bucket.
|
||||
GrantRead *string
|
||||
|
||||
// Allows grantee to read the bucket ACL.
|
||||
GrantReadACP *string
|
||||
|
||||
// Allows grantee to create new objects in the bucket. For the bucket and object
|
||||
// owners of existing objects, also allows deletions and overwrites of those
|
||||
// objects.
|
||||
GrantWrite *string
|
||||
|
||||
// Allows grantee to write the ACL for the applicable bucket.
|
||||
GrantWriteACP *string
|
||||
|
||||
// Specifies whether you want S3 Object Lock to be enabled for the new bucket.
|
||||
ObjectLockEnabledForBucket bool
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type CreateBucketOutput struct {
|
||||
|
||||
// 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.
|
||||
Location *string
|
||||
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationCreateBucketMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpCreateBucket{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpCreateBucket{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpCreateBucketValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opCreateBucket(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCreateBucketUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opCreateBucket(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "CreateBucket",
|
||||
}
|
||||
}
|
||||
|
||||
// getCreateBucketBucketMember returns a pointer to string denoting a provided
|
||||
// bucket member valueand a boolean indicating if the input has a modeled bucket
|
||||
// name,
|
||||
func getCreateBucketBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*CreateBucketInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addCreateBucketUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getCreateBucketBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: false,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
595
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_CreateMultipartUpload.go
generated
vendored
Normal file
595
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_CreateMultipartUpload.go
generated
vendored
Normal file
@@ -0,0 +1,595 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
"time"
|
||||
)
|
||||
|
||||
// This action initiates a multipart upload and returns an upload ID. This upload
|
||||
// ID is used to associate all of the parts in the specific multipart upload. You
|
||||
// specify this upload ID in each of your subsequent upload part requests (see
|
||||
// UploadPart
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html)). You also
|
||||
// include this upload ID in the final request to either complete or abort the
|
||||
// multipart upload request. For more information about multipart uploads, see
|
||||
// Multipart Upload Overview
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html). If you have
|
||||
// configured a lifecycle rule to abort incomplete multipart uploads, the upload
|
||||
// must complete within the number of days specified in the bucket lifecycle
|
||||
// configuration. Otherwise, the incomplete multipart upload becomes eligible for
|
||||
// an abort action and Amazon S3 aborts the multipart upload. For more information,
|
||||
// see Aborting Incomplete Multipart Uploads Using a Bucket Lifecycle Policy
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html#mpu-abort-incomplete-mpu-lifecycle-config).
|
||||
// For information about the permissions required to use the multipart upload API,
|
||||
// see Multipart Upload and Permissions
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html). For
|
||||
// request signing, multipart upload is just a series of regular requests. You
|
||||
// initiate a multipart upload, send one or more requests to upload parts, and then
|
||||
// complete the multipart upload process. You sign each request individually. There
|
||||
// is nothing special about signing multipart upload requests. For more information
|
||||
// about signing, see Authenticating Requests (Amazon Web Services Signature
|
||||
// Version 4)
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/sig-v4-authenticating-requests.html).
|
||||
// After you initiate a multipart upload and upload one or more parts, to stop
|
||||
// being charged for storing the uploaded parts, you must either complete or abort
|
||||
// the multipart upload. Amazon S3 frees up the space used to store the parts and
|
||||
// stop charging you for storing them only after you either complete or abort a
|
||||
// multipart upload. You can optionally request server-side encryption. For
|
||||
// server-side encryption, Amazon S3 encrypts your data as it writes it to disks in
|
||||
// its data centers and decrypts it when you access it. You can provide your own
|
||||
// encryption key, or use Amazon Web Services KMS keys or Amazon S3-managed
|
||||
// encryption keys. If you choose to provide your own encryption key, the request
|
||||
// headers you provide in UploadPart
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html) and
|
||||
// UploadPartCopy
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html)
|
||||
// requests must match the headers you used in the request to initiate the upload
|
||||
// by using CreateMultipartUpload. To perform a multipart upload with encryption
|
||||
// using an Amazon Web Services KMS key, the requester must have permission to the
|
||||
// kms:Decrypt and kms:GenerateDataKey* actions on the key. These permissions are
|
||||
// required because Amazon S3 must decrypt and read data from the encrypted file
|
||||
// parts before it completes the multipart upload. For more information, see
|
||||
// Multipart upload API and permissions
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/mpuoverview.html#mpuAndPermissions)
|
||||
// in the Amazon S3 User Guide. If your Identity and Access Management (IAM) user
|
||||
// or role is in the same Amazon Web Services account as the KMS key, then you must
|
||||
// have these permissions on the key policy. If your IAM user or role belongs to a
|
||||
// different account than the key, then you must have the permissions on both the
|
||||
// key policy and your IAM user or role. For more information, see Protecting Data
|
||||
// Using Server-Side Encryption
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html).
|
||||
// Access Permissions When copying an object, you can optionally specify the
|
||||
// accounts or groups that should be granted specific permissions on the new
|
||||
// object. There are two ways to grant the permissions using the request
|
||||
// headers:
|
||||
//
|
||||
// * Specify a canned ACL with the x-amz-acl request header. For more
|
||||
// information, see Canned ACL
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#CannedACL).
|
||||
//
|
||||
// *
|
||||
// Specify access permissions explicitly with the x-amz-grant-read,
|
||||
// x-amz-grant-read-acp, x-amz-grant-write-acp, and x-amz-grant-full-control
|
||||
// headers. These parameters map to the set of permissions that Amazon S3 supports
|
||||
// in an ACL. For more information, see Access Control List (ACL) Overview
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html).
|
||||
//
|
||||
// You can
|
||||
// use either a canned ACL or specify access permissions explicitly. You cannot do
|
||||
// both. Server-Side- Encryption-Specific Request Headers You can optionally tell
|
||||
// Amazon S3 to encrypt data at rest using server-side encryption. Server-side
|
||||
// encryption is for data encryption at rest. Amazon S3 encrypts your data as it
|
||||
// writes it to disks in its data centers and decrypts it when you access it. The
|
||||
// option you use depends on whether you want to use Amazon Web Services managed
|
||||
// encryption keys or provide your own encryption key.
|
||||
//
|
||||
// * Use encryption keys
|
||||
// managed by Amazon S3 or customer managed key stored in Amazon Web Services Key
|
||||
// Management Service (Amazon Web Services KMS) – If you want Amazon Web Services
|
||||
// to manage the keys used to encrypt data, specify the following headers in the
|
||||
// request.
|
||||
//
|
||||
// * x-amz-server-side-encryption
|
||||
//
|
||||
// *
|
||||
// x-amz-server-side-encryption-aws-kms-key-id
|
||||
//
|
||||
// *
|
||||
// x-amz-server-side-encryption-context
|
||||
//
|
||||
// If you specify
|
||||
// x-amz-server-side-encryption:aws:kms, but don't provide
|
||||
// x-amz-server-side-encryption-aws-kms-key-id, Amazon S3 uses the Amazon Web
|
||||
// Services managed key in Amazon Web Services KMS to protect the data. All GET and
|
||||
// PUT requests for an object protected by Amazon Web Services KMS fail if you
|
||||
// don't make them with SSL or by using SigV4. For more information about
|
||||
// server-side encryption with KMS key (SSE-KMS), see Protecting Data Using
|
||||
// Server-Side Encryption with KMS keys
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingKMSEncryption.html).
|
||||
//
|
||||
// *
|
||||
// Use customer-provided encryption keys – If you want to manage your own
|
||||
// encryption keys, provide all the following headers in the request.
|
||||
//
|
||||
// *
|
||||
// x-amz-server-side-encryption-customer-algorithm
|
||||
//
|
||||
// *
|
||||
// x-amz-server-side-encryption-customer-key
|
||||
//
|
||||
// *
|
||||
// x-amz-server-side-encryption-customer-key-MD5
|
||||
//
|
||||
// For more information about
|
||||
// server-side encryption with KMS keys (SSE-KMS), see Protecting Data Using
|
||||
// Server-Side Encryption with KMS keys
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingKMSEncryption.html).
|
||||
//
|
||||
// Access-Control-List
|
||||
// (ACL)-Specific Request Headers You also can use the following access
|
||||
// control–related headers with this operation. By default, all objects are
|
||||
// private. Only the owner has full access control. When adding a new object, you
|
||||
// can grant permissions to individual Amazon Web Services accounts or to
|
||||
// predefined groups defined by Amazon S3. These permissions are then added to the
|
||||
// access control list (ACL) on the object. For more information, see Using ACLs
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/S3_ACLs_UsingACLs.html). With
|
||||
// this operation, you can grant access permissions using one of the following two
|
||||
// methods:
|
||||
//
|
||||
// * Specify a canned ACL (x-amz-acl) — Amazon S3 supports a set of
|
||||
// predefined ACLs, known as canned ACLs. Each canned ACL has a predefined set of
|
||||
// grantees and permissions. For more information, see Canned ACL
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#CannedACL).
|
||||
//
|
||||
// *
|
||||
// Specify access permissions explicitly — To explicitly grant access permissions
|
||||
// to specific Amazon Web Services accounts or groups, use the following headers.
|
||||
// Each header maps to specific permissions that Amazon S3 supports in an ACL. For
|
||||
// more information, see Access Control List (ACL) Overview
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html). In the
|
||||
// header, you specify a list of grantees who get the specific permission. To grant
|
||||
// permissions explicitly, use:
|
||||
//
|
||||
// * x-amz-grant-read
|
||||
//
|
||||
// * x-amz-grant-write
|
||||
//
|
||||
// *
|
||||
// x-amz-grant-read-acp
|
||||
//
|
||||
// * x-amz-grant-write-acp
|
||||
//
|
||||
// * x-amz-grant-full-control
|
||||
//
|
||||
// You
|
||||
// specify each grantee as a type=value pair, where the type is one of the
|
||||
// following:
|
||||
//
|
||||
// * id – if the value specified is the canonical user ID of an Amazon
|
||||
// Web Services account
|
||||
//
|
||||
// * uri – if you are granting permissions to a predefined
|
||||
// group
|
||||
//
|
||||
// * emailAddress – if the value specified is the email address of an Amazon
|
||||
// Web Services account Using email addresses to specify a grantee is only
|
||||
// supported in the following Amazon Web Services Regions:
|
||||
//
|
||||
// * US East (N.
|
||||
// Virginia)
|
||||
//
|
||||
// * US West (N. California)
|
||||
//
|
||||
// * US West (Oregon)
|
||||
//
|
||||
// * Asia Pacific
|
||||
// (Singapore)
|
||||
//
|
||||
// * Asia Pacific (Sydney)
|
||||
//
|
||||
// * Asia Pacific (Tokyo)
|
||||
//
|
||||
// * Europe
|
||||
// (Ireland)
|
||||
//
|
||||
// * South America (São Paulo)
|
||||
//
|
||||
// For a list of all the Amazon S3
|
||||
// supported Regions and endpoints, see Regions and Endpoints
|
||||
// (https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region) in the
|
||||
// Amazon Web Services General Reference.
|
||||
//
|
||||
// For example, the following
|
||||
// x-amz-grant-read header grants the Amazon Web Services accounts identified by
|
||||
// account IDs permissions to read object data and its metadata: x-amz-grant-read:
|
||||
// id="11112222333", id="444455556666"
|
||||
//
|
||||
// The following operations are related to
|
||||
// CreateMultipartUpload:
|
||||
//
|
||||
// * UploadPart
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html)
|
||||
//
|
||||
// *
|
||||
// CompleteMultipartUpload
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CompleteMultipartUpload.html)
|
||||
//
|
||||
// *
|
||||
// AbortMultipartUpload
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_AbortMultipartUpload.html)
|
||||
//
|
||||
// *
|
||||
// ListParts
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListParts.html)
|
||||
//
|
||||
// *
|
||||
// ListMultipartUploads
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListMultipartUploads.html)
|
||||
func (c *Client) CreateMultipartUpload(ctx context.Context, params *CreateMultipartUploadInput, optFns ...func(*Options)) (*CreateMultipartUploadOutput, error) {
|
||||
if params == nil {
|
||||
params = &CreateMultipartUploadInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "CreateMultipartUpload", params, optFns, c.addOperationCreateMultipartUploadMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*CreateMultipartUploadOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type CreateMultipartUploadInput struct {
|
||||
|
||||
// The name of the bucket to which to initiate the upload When using this action
|
||||
// with an access point, you must direct requests to the access point hostname. The
|
||||
// access point hostname takes the form
|
||||
// AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this
|
||||
// action with an access point through the Amazon Web Services SDKs, you provide
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see Using access points
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide. When using this action with Amazon S3 on Outposts,
|
||||
// you must direct requests to the S3 on Outposts hostname. The S3 on Outposts
|
||||
// hostname takes the form
|
||||
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When using
|
||||
// this action using S3 on Outposts through the Amazon Web Services SDKs, you
|
||||
// provide the Outposts bucket ARN in place of the bucket name. For more
|
||||
// information about S3 on Outposts ARNs, see Using S3 on Outposts
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) in the
|
||||
// Amazon S3 User Guide.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// Object key for which the multipart upload is to be initiated.
|
||||
//
|
||||
// This member is required.
|
||||
Key *string
|
||||
|
||||
// The canned ACL to apply to the object. This action is not supported by Amazon S3
|
||||
// on Outposts.
|
||||
ACL types.ObjectCannedACL
|
||||
|
||||
// Specifies whether Amazon S3 should use an S3 Bucket Key for object encryption
|
||||
// with server-side encryption using AWS 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
|
||||
|
||||
// Specifies caching behavior along the request/reply chain.
|
||||
CacheControl *string
|
||||
|
||||
// Specifies presentational information for the object.
|
||||
ContentDisposition *string
|
||||
|
||||
// Specifies what content encodings have been applied to the object and thus what
|
||||
// decoding mechanisms must be applied to obtain the media-type referenced by the
|
||||
// Content-Type header field.
|
||||
ContentEncoding *string
|
||||
|
||||
// The language the content is in.
|
||||
ContentLanguage *string
|
||||
|
||||
// A standard MIME type describing the format of the object data.
|
||||
ContentType *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
// The date and time at which the object is no longer cacheable.
|
||||
Expires *time.Time
|
||||
|
||||
// Gives the grantee READ, READ_ACP, and WRITE_ACP permissions on the object. This
|
||||
// action is not supported by Amazon S3 on Outposts.
|
||||
GrantFullControl *string
|
||||
|
||||
// Allows grantee to read the object data and its metadata. This action is not
|
||||
// supported by Amazon S3 on Outposts.
|
||||
GrantRead *string
|
||||
|
||||
// Allows grantee to read the object ACL. This action is not supported by Amazon S3
|
||||
// on Outposts.
|
||||
GrantReadACP *string
|
||||
|
||||
// Allows grantee to write the ACL for the applicable object. This action is not
|
||||
// supported by Amazon S3 on Outposts.
|
||||
GrantWriteACP *string
|
||||
|
||||
// A map of metadata to store with the object in S3.
|
||||
Metadata map[string]string
|
||||
|
||||
// Specifies whether you want to apply a Legal Hold to the uploaded object.
|
||||
ObjectLockLegalHoldStatus types.ObjectLockLegalHoldStatus
|
||||
|
||||
// Specifies the Object Lock mode that you want to apply to the uploaded object.
|
||||
ObjectLockMode types.ObjectLockMode
|
||||
|
||||
// Specifies the date and time when you want the Object Lock to expire.
|
||||
ObjectLockRetainUntilDate *time.Time
|
||||
|
||||
// Confirms that the requester knows that they will be charged for the request.
|
||||
// Bucket owners need not specify this parameter in their requests. For information
|
||||
// about downloading objects from requester pays buckets, see Downloading Objects
|
||||
// in Requestor Pays Buckets
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
RequestPayer types.RequestPayer
|
||||
|
||||
// Specifies the algorithm to use to when encrypting the object (for example,
|
||||
// AES256).
|
||||
SSECustomerAlgorithm *string
|
||||
|
||||
// Specifies the customer-provided encryption key for Amazon S3 to use in
|
||||
// encrypting data. This value is used to store the object and then it is
|
||||
// discarded; Amazon S3 does not store the encryption key. The key must be
|
||||
// appropriate for use with the algorithm specified in the
|
||||
// x-amz-server-side-encryption-customer-algorithm header.
|
||||
SSECustomerKey *string
|
||||
|
||||
// Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321.
|
||||
// Amazon S3 uses this header for a message integrity check to ensure that the
|
||||
// encryption key was transmitted without error.
|
||||
SSECustomerKeyMD5 *string
|
||||
|
||||
// Specifies the Amazon Web Services KMS Encryption Context to use for object
|
||||
// encryption. The value of this header is a base64-encoded UTF-8 string holding
|
||||
// JSON with the encryption context key-value pairs.
|
||||
SSEKMSEncryptionContext *string
|
||||
|
||||
// Specifies the ID of the symmetric customer managed key to use for object
|
||||
// encryption. All GET and PUT requests for an object protected by Amazon Web
|
||||
// Services KMS will fail if not made via SSL or using SigV4. For information about
|
||||
// configuring using any of the officially supported Amazon Web Services SDKs and
|
||||
// Amazon Web Services CLI, see Specifying the Signature Version in Request
|
||||
// Authentication
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version)
|
||||
// in the Amazon S3 User Guide.
|
||||
SSEKMSKeyId *string
|
||||
|
||||
// The server-side encryption algorithm used when storing this object in Amazon S3
|
||||
// (for example, AES256, aws:kms).
|
||||
ServerSideEncryption types.ServerSideEncryption
|
||||
|
||||
// By default, Amazon S3 uses the STANDARD Storage Class to store newly created
|
||||
// objects. The STANDARD storage class provides high durability and high
|
||||
// availability. Depending on performance needs, you can specify a different
|
||||
// Storage Class. Amazon S3 on Outposts only uses the OUTPOSTS Storage Class. For
|
||||
// more information, see Storage Classes
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html) in
|
||||
// the Amazon S3 User Guide.
|
||||
StorageClass types.StorageClass
|
||||
|
||||
// The tag-set for the object. The tag-set must be encoded as URL Query parameters.
|
||||
Tagging *string
|
||||
|
||||
// If the bucket is configured as a website, redirects requests for this object to
|
||||
// another object in the same bucket or to an external URL. Amazon S3 stores the
|
||||
// value of this header in the object metadata.
|
||||
WebsiteRedirectLocation *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type CreateMultipartUploadOutput struct {
|
||||
|
||||
// If the bucket has a lifecycle rule configured with an action to abort incomplete
|
||||
// multipart uploads and the prefix in the lifecycle rule matches the object name
|
||||
// in the request, the response includes this header. The header indicates when the
|
||||
// initiated multipart upload becomes eligible for an abort operation. For more
|
||||
// information, see Aborting Incomplete Multipart Uploads Using a Bucket Lifecycle
|
||||
// Policy
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html#mpu-abort-incomplete-mpu-lifecycle-config).
|
||||
// The response also includes the x-amz-abort-rule-id header that provides the ID
|
||||
// of the lifecycle configuration rule that defines this action.
|
||||
AbortDate *time.Time
|
||||
|
||||
// This header is returned along with the x-amz-abort-date header. It identifies
|
||||
// the applicable lifecycle configuration rule that defines the action to abort
|
||||
// incomplete multipart uploads.
|
||||
AbortRuleId *string
|
||||
|
||||
// The name of the bucket to which the multipart upload was initiated. Does not
|
||||
// return the access point ARN or access point alias if used. When using this
|
||||
// action with an access point, you must direct requests to the access point
|
||||
// hostname. The access point hostname takes the form
|
||||
// AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this
|
||||
// action with an access point through the Amazon Web Services SDKs, you provide
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see Using access points
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide. When using this action with Amazon S3 on Outposts,
|
||||
// you must direct requests to the S3 on Outposts hostname. The S3 on Outposts
|
||||
// hostname takes the form
|
||||
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When using
|
||||
// this action using S3 on Outposts through the Amazon Web Services SDKs, you
|
||||
// provide the Outposts bucket ARN in place of the bucket name. For more
|
||||
// information about S3 on Outposts ARNs, see Using S3 on Outposts
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) in the
|
||||
// Amazon S3 User Guide.
|
||||
Bucket *string
|
||||
|
||||
// Indicates whether the multipart upload uses an S3 Bucket Key for server-side
|
||||
// encryption with Amazon Web Services KMS (SSE-KMS).
|
||||
BucketKeyEnabled bool
|
||||
|
||||
// Object key for which the multipart upload was initiated.
|
||||
Key *string
|
||||
|
||||
// If present, indicates that the requester was successfully charged for the
|
||||
// request.
|
||||
RequestCharged types.RequestCharged
|
||||
|
||||
// If server-side encryption with a customer-provided encryption key was requested,
|
||||
// the response will include this header confirming the encryption algorithm used.
|
||||
SSECustomerAlgorithm *string
|
||||
|
||||
// If server-side encryption with a customer-provided encryption key was requested,
|
||||
// the response will include this header to provide round-trip message integrity
|
||||
// verification of the customer-provided encryption key.
|
||||
SSECustomerKeyMD5 *string
|
||||
|
||||
// If present, specifies the Amazon Web Services KMS Encryption Context to use for
|
||||
// object encryption. The value of this header is a base64-encoded UTF-8 string
|
||||
// holding JSON with the encryption context key-value pairs.
|
||||
SSEKMSEncryptionContext *string
|
||||
|
||||
// If present, specifies the ID of the Amazon Web Services Key Management Service
|
||||
// (Amazon Web Services KMS) symmetric customer managed key that was used for the
|
||||
// object.
|
||||
SSEKMSKeyId *string
|
||||
|
||||
// The server-side encryption algorithm used when storing this object in Amazon S3
|
||||
// (for example, AES256, aws:kms).
|
||||
ServerSideEncryption types.ServerSideEncryption
|
||||
|
||||
// ID for the initiated multipart upload.
|
||||
UploadId *string
|
||||
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationCreateMultipartUploadMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpCreateMultipartUpload{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpCreateMultipartUpload{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpCreateMultipartUploadValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opCreateMultipartUpload(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCreateMultipartUploadUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opCreateMultipartUpload(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "CreateMultipartUpload",
|
||||
}
|
||||
}
|
||||
|
||||
// getCreateMultipartUploadBucketMember returns a pointer to string denoting a
|
||||
// provided bucket member valueand a boolean indicating if the input has a modeled
|
||||
// bucket name,
|
||||
func getCreateMultipartUploadBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*CreateMultipartUploadInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addCreateMultipartUploadUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getCreateMultipartUploadBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
169
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteBucket.go
generated
vendored
Normal file
169
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteBucket.go
generated
vendored
Normal file
@@ -0,0 +1,169 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Deletes the S3 bucket. All objects (including all object versions and delete
|
||||
// markers) in the bucket must be deleted before the bucket itself can be deleted.
|
||||
// Related Resources
|
||||
//
|
||||
// * CreateBucket
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html)
|
||||
//
|
||||
// *
|
||||
// DeleteObject
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObject.html)
|
||||
func (c *Client) DeleteBucket(ctx context.Context, params *DeleteBucketInput, optFns ...func(*Options)) (*DeleteBucketOutput, error) {
|
||||
if params == nil {
|
||||
params = &DeleteBucketInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "DeleteBucket", params, optFns, c.addOperationDeleteBucketMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*DeleteBucketOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type DeleteBucketInput struct {
|
||||
|
||||
// Specifies the bucket being deleted.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type DeleteBucketOutput struct {
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationDeleteBucketMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpDeleteBucket{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpDeleteBucket{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpDeleteBucketValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opDeleteBucket(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addDeleteBucketUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opDeleteBucket(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "DeleteBucket",
|
||||
}
|
||||
}
|
||||
|
||||
// getDeleteBucketBucketMember returns a pointer to string denoting a provided
|
||||
// bucket member valueand a boolean indicating if the input has a modeled bucket
|
||||
// name,
|
||||
func getDeleteBucketBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*DeleteBucketInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addDeleteBucketUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getDeleteBucketBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: false,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
189
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteBucketAnalyticsConfiguration.go
generated
vendored
Normal file
189
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteBucketAnalyticsConfiguration.go
generated
vendored
Normal file
@@ -0,0 +1,189 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Deletes an analytics configuration for the bucket (specified by the analytics
|
||||
// configuration ID). To use this operation, you must have permissions to perform
|
||||
// the s3:PutAnalyticsConfiguration action. The 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).
|
||||
// For information about the Amazon S3 analytics feature, see Amazon S3 Analytics –
|
||||
// Storage Class Analysis
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/analytics-storage-class.html).
|
||||
// The following operations are related to DeleteBucketAnalyticsConfiguration:
|
||||
//
|
||||
// *
|
||||
// GetBucketAnalyticsConfiguration
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketAnalyticsConfiguration.html)
|
||||
//
|
||||
// *
|
||||
// ListBucketAnalyticsConfigurations
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBucketAnalyticsConfigurations.html)
|
||||
//
|
||||
// *
|
||||
// PutBucketAnalyticsConfiguration
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketAnalyticsConfiguration.html)
|
||||
func (c *Client) DeleteBucketAnalyticsConfiguration(ctx context.Context, params *DeleteBucketAnalyticsConfigurationInput, optFns ...func(*Options)) (*DeleteBucketAnalyticsConfigurationOutput, error) {
|
||||
if params == nil {
|
||||
params = &DeleteBucketAnalyticsConfigurationInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "DeleteBucketAnalyticsConfiguration", params, optFns, c.addOperationDeleteBucketAnalyticsConfigurationMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*DeleteBucketAnalyticsConfigurationOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type DeleteBucketAnalyticsConfigurationInput struct {
|
||||
|
||||
// The name of the bucket from which an analytics configuration is deleted.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The ID that identifies the analytics configuration.
|
||||
//
|
||||
// This member is required.
|
||||
Id *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type DeleteBucketAnalyticsConfigurationOutput struct {
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationDeleteBucketAnalyticsConfigurationMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpDeleteBucketAnalyticsConfiguration{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpDeleteBucketAnalyticsConfiguration{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpDeleteBucketAnalyticsConfigurationValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opDeleteBucketAnalyticsConfiguration(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addDeleteBucketAnalyticsConfigurationUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opDeleteBucketAnalyticsConfiguration(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "DeleteBucketAnalyticsConfiguration",
|
||||
}
|
||||
}
|
||||
|
||||
// getDeleteBucketAnalyticsConfigurationBucketMember returns a pointer to string
|
||||
// denoting a provided bucket member valueand a boolean indicating if the input has
|
||||
// a modeled bucket name,
|
||||
func getDeleteBucketAnalyticsConfigurationBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*DeleteBucketAnalyticsConfigurationInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addDeleteBucketAnalyticsConfigurationUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getDeleteBucketAnalyticsConfigurationBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
172
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteBucketCors.go
generated
vendored
Normal file
172
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteBucketCors.go
generated
vendored
Normal file
@@ -0,0 +1,172 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Deletes the cors configuration information set for the bucket. To use this
|
||||
// operation, you must have permission to perform the s3:PutBucketCORS action. The
|
||||
// bucket owner has this permission by default and can grant this permission to
|
||||
// others. For information about cors, see Enabling Cross-Origin Resource Sharing
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/cors.html) in the Amazon S3
|
||||
// User Guide. Related Resources:
|
||||
//
|
||||
// * PutBucketCors
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketCors.html)
|
||||
//
|
||||
// *
|
||||
// RESTOPTIONSobject
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/RESTOPTIONSobject.html)
|
||||
func (c *Client) DeleteBucketCors(ctx context.Context, params *DeleteBucketCorsInput, optFns ...func(*Options)) (*DeleteBucketCorsOutput, error) {
|
||||
if params == nil {
|
||||
params = &DeleteBucketCorsInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "DeleteBucketCors", params, optFns, c.addOperationDeleteBucketCorsMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*DeleteBucketCorsOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type DeleteBucketCorsInput struct {
|
||||
|
||||
// Specifies the bucket whose cors configuration is being deleted.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type DeleteBucketCorsOutput struct {
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationDeleteBucketCorsMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpDeleteBucketCors{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpDeleteBucketCors{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpDeleteBucketCorsValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opDeleteBucketCors(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addDeleteBucketCorsUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opDeleteBucketCors(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "DeleteBucketCors",
|
||||
}
|
||||
}
|
||||
|
||||
// getDeleteBucketCorsBucketMember returns a pointer to string denoting a provided
|
||||
// bucket member valueand a boolean indicating if the input has a modeled bucket
|
||||
// name,
|
||||
func getDeleteBucketCorsBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*DeleteBucketCorsInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addDeleteBucketCorsUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getDeleteBucketCorsBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
180
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteBucketEncryption.go
generated
vendored
Normal file
180
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteBucketEncryption.go
generated
vendored
Normal file
@@ -0,0 +1,180 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// This implementation of the DELETE action removes default encryption from the
|
||||
// bucket. For information about the Amazon S3 default encryption feature, see
|
||||
// Amazon S3 Default Bucket Encryption
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html) in the
|
||||
// Amazon S3 User Guide. To use this operation, you must have permissions to
|
||||
// perform the s3:PutEncryptionConfiguration action. The 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)
|
||||
// in the Amazon S3 User Guide. Related Resources
|
||||
//
|
||||
// * PutBucketEncryption
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketEncryption.html)
|
||||
//
|
||||
// *
|
||||
// GetBucketEncryption
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketEncryption.html)
|
||||
func (c *Client) DeleteBucketEncryption(ctx context.Context, params *DeleteBucketEncryptionInput, optFns ...func(*Options)) (*DeleteBucketEncryptionOutput, error) {
|
||||
if params == nil {
|
||||
params = &DeleteBucketEncryptionInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "DeleteBucketEncryption", params, optFns, c.addOperationDeleteBucketEncryptionMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*DeleteBucketEncryptionOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type DeleteBucketEncryptionInput struct {
|
||||
|
||||
// The name of the bucket containing the server-side encryption configuration to
|
||||
// delete.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type DeleteBucketEncryptionOutput struct {
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationDeleteBucketEncryptionMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpDeleteBucketEncryption{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpDeleteBucketEncryption{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpDeleteBucketEncryptionValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opDeleteBucketEncryption(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addDeleteBucketEncryptionUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opDeleteBucketEncryption(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "DeleteBucketEncryption",
|
||||
}
|
||||
}
|
||||
|
||||
// getDeleteBucketEncryptionBucketMember returns a pointer to string denoting a
|
||||
// provided bucket member valueand a boolean indicating if the input has a modeled
|
||||
// bucket name,
|
||||
func getDeleteBucketEncryptionBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*DeleteBucketEncryptionInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addDeleteBucketEncryptionUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getDeleteBucketEncryptionBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
189
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteBucketIntelligentTieringConfiguration.go
generated
vendored
Normal file
189
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteBucketIntelligentTieringConfiguration.go
generated
vendored
Normal file
@@ -0,0 +1,189 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Deletes the S3 Intelligent-Tiering configuration from the specified bucket. The
|
||||
// S3 Intelligent-Tiering storage class is designed to optimize storage costs by
|
||||
// automatically moving data to the most cost-effective storage access tier,
|
||||
// without performance impact or operational overhead. S3 Intelligent-Tiering
|
||||
// delivers automatic cost savings in two low latency and high throughput access
|
||||
// tiers. For data that can be accessed asynchronously, you can choose to activate
|
||||
// automatic archiving capabilities within the S3 Intelligent-Tiering storage
|
||||
// class. The S3 Intelligent-Tiering storage class is the ideal storage class for
|
||||
// data with unknown, changing, or unpredictable access patterns, independent of
|
||||
// object size or retention period. If the size of an object is less than 128 KB,
|
||||
// it is not eligible for auto-tiering. Smaller objects can be stored, but they are
|
||||
// always charged at the Frequent Access tier rates in the S3 Intelligent-Tiering
|
||||
// storage class. For more information, see Storage class for automatically
|
||||
// optimizing frequently and infrequently accessed objects
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html#sc-dynamic-data-access).
|
||||
// Operations related to DeleteBucketIntelligentTieringConfiguration include:
|
||||
//
|
||||
// *
|
||||
// GetBucketIntelligentTieringConfiguration
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketIntelligentTieringConfiguration.html)
|
||||
//
|
||||
// *
|
||||
// PutBucketIntelligentTieringConfiguration
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketIntelligentTieringConfiguration.html)
|
||||
//
|
||||
// *
|
||||
// ListBucketIntelligentTieringConfigurations
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBucketIntelligentTieringConfigurations.html)
|
||||
func (c *Client) DeleteBucketIntelligentTieringConfiguration(ctx context.Context, params *DeleteBucketIntelligentTieringConfigurationInput, optFns ...func(*Options)) (*DeleteBucketIntelligentTieringConfigurationOutput, error) {
|
||||
if params == nil {
|
||||
params = &DeleteBucketIntelligentTieringConfigurationInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "DeleteBucketIntelligentTieringConfiguration", params, optFns, c.addOperationDeleteBucketIntelligentTieringConfigurationMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*DeleteBucketIntelligentTieringConfigurationOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type DeleteBucketIntelligentTieringConfigurationInput struct {
|
||||
|
||||
// The name of the Amazon S3 bucket whose configuration you want to modify or
|
||||
// retrieve.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The ID used to identify the S3 Intelligent-Tiering configuration.
|
||||
//
|
||||
// This member is required.
|
||||
Id *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type DeleteBucketIntelligentTieringConfigurationOutput struct {
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationDeleteBucketIntelligentTieringConfigurationMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpDeleteBucketIntelligentTieringConfiguration{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpDeleteBucketIntelligentTieringConfiguration{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpDeleteBucketIntelligentTieringConfigurationValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opDeleteBucketIntelligentTieringConfiguration(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addDeleteBucketIntelligentTieringConfigurationUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opDeleteBucketIntelligentTieringConfiguration(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "DeleteBucketIntelligentTieringConfiguration",
|
||||
}
|
||||
}
|
||||
|
||||
// getDeleteBucketIntelligentTieringConfigurationBucketMember returns a pointer to
|
||||
// string denoting a provided bucket member valueand a boolean indicating if the
|
||||
// input has a modeled bucket name,
|
||||
func getDeleteBucketIntelligentTieringConfigurationBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*DeleteBucketIntelligentTieringConfigurationInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addDeleteBucketIntelligentTieringConfigurationUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getDeleteBucketIntelligentTieringConfigurationBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
188
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteBucketInventoryConfiguration.go
generated
vendored
Normal file
188
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteBucketInventoryConfiguration.go
generated
vendored
Normal file
@@ -0,0 +1,188 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Deletes an inventory configuration (identified by the inventory ID) from the
|
||||
// bucket. To use this operation, you must have permissions to perform the
|
||||
// s3:PutInventoryConfiguration action. The 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).
|
||||
// For information about the Amazon S3 inventory feature, see Amazon S3 Inventory
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-inventory.html).
|
||||
// Operations related to DeleteBucketInventoryConfiguration include:
|
||||
//
|
||||
// *
|
||||
// GetBucketInventoryConfiguration
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketInventoryConfiguration.html)
|
||||
//
|
||||
// *
|
||||
// PutBucketInventoryConfiguration
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketInventoryConfiguration.html)
|
||||
//
|
||||
// *
|
||||
// ListBucketInventoryConfigurations
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBucketInventoryConfigurations.html)
|
||||
func (c *Client) DeleteBucketInventoryConfiguration(ctx context.Context, params *DeleteBucketInventoryConfigurationInput, optFns ...func(*Options)) (*DeleteBucketInventoryConfigurationOutput, error) {
|
||||
if params == nil {
|
||||
params = &DeleteBucketInventoryConfigurationInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "DeleteBucketInventoryConfiguration", params, optFns, c.addOperationDeleteBucketInventoryConfigurationMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*DeleteBucketInventoryConfigurationOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type DeleteBucketInventoryConfigurationInput struct {
|
||||
|
||||
// The name of the bucket containing the inventory configuration to delete.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The ID used to identify the inventory configuration.
|
||||
//
|
||||
// This member is required.
|
||||
Id *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type DeleteBucketInventoryConfigurationOutput struct {
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationDeleteBucketInventoryConfigurationMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpDeleteBucketInventoryConfiguration{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpDeleteBucketInventoryConfiguration{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpDeleteBucketInventoryConfigurationValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opDeleteBucketInventoryConfiguration(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addDeleteBucketInventoryConfigurationUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opDeleteBucketInventoryConfiguration(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "DeleteBucketInventoryConfiguration",
|
||||
}
|
||||
}
|
||||
|
||||
// getDeleteBucketInventoryConfigurationBucketMember returns a pointer to string
|
||||
// denoting a provided bucket member valueand a boolean indicating if the input has
|
||||
// a modeled bucket name,
|
||||
func getDeleteBucketInventoryConfigurationBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*DeleteBucketInventoryConfigurationInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addDeleteBucketInventoryConfigurationUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getDeleteBucketInventoryConfigurationBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
178
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteBucketLifecycle.go
generated
vendored
Normal file
178
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteBucketLifecycle.go
generated
vendored
Normal file
@@ -0,0 +1,178 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Deletes the lifecycle configuration from the specified bucket. Amazon S3 removes
|
||||
// all the lifecycle configuration rules in the lifecycle subresource associated
|
||||
// with the bucket. Your objects never expire, and Amazon S3 no longer
|
||||
// automatically deletes any objects on the basis of rules contained in the deleted
|
||||
// lifecycle configuration. To use this operation, you must have permission to
|
||||
// perform the s3:PutLifecycleConfiguration action. By default, the bucket owner
|
||||
// has this permission and the bucket owner can grant this permission to others.
|
||||
// There is usually some time lag before lifecycle configuration deletion is fully
|
||||
// propagated to all the Amazon S3 systems. For more information about the 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_PutBucketLifecycleConfiguration.html)
|
||||
//
|
||||
// *
|
||||
// GetBucketLifecycleConfiguration
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLifecycleConfiguration.html)
|
||||
func (c *Client) DeleteBucketLifecycle(ctx context.Context, params *DeleteBucketLifecycleInput, optFns ...func(*Options)) (*DeleteBucketLifecycleOutput, error) {
|
||||
if params == nil {
|
||||
params = &DeleteBucketLifecycleInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "DeleteBucketLifecycle", params, optFns, c.addOperationDeleteBucketLifecycleMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*DeleteBucketLifecycleOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type DeleteBucketLifecycleInput struct {
|
||||
|
||||
// The bucket name of the lifecycle to delete.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type DeleteBucketLifecycleOutput struct {
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationDeleteBucketLifecycleMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpDeleteBucketLifecycle{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpDeleteBucketLifecycle{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpDeleteBucketLifecycleValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opDeleteBucketLifecycle(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addDeleteBucketLifecycleUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opDeleteBucketLifecycle(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "DeleteBucketLifecycle",
|
||||
}
|
||||
}
|
||||
|
||||
// getDeleteBucketLifecycleBucketMember returns a pointer to string denoting a
|
||||
// provided bucket member valueand a boolean indicating if the input has a modeled
|
||||
// bucket name,
|
||||
func getDeleteBucketLifecycleBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*DeleteBucketLifecycleInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addDeleteBucketLifecycleUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getDeleteBucketLifecycleBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
194
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteBucketMetricsConfiguration.go
generated
vendored
Normal file
194
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteBucketMetricsConfiguration.go
generated
vendored
Normal file
@@ -0,0 +1,194 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Deletes a metrics configuration for the Amazon CloudWatch request metrics
|
||||
// (specified by the metrics configuration ID) from the bucket. Note that this
|
||||
// doesn't include the daily storage metrics. To use this operation, you must have
|
||||
// permissions to perform the s3:PutMetricsConfiguration action. The 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).
|
||||
// For information about CloudWatch request metrics for Amazon S3, see Monitoring
|
||||
// Metrics with Amazon CloudWatch
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/cloudwatch-monitoring.html).
|
||||
// The following operations are related to DeleteBucketMetricsConfiguration:
|
||||
//
|
||||
// *
|
||||
// GetBucketMetricsConfiguration
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketMetricsConfiguration.html)
|
||||
//
|
||||
// *
|
||||
// PutBucketMetricsConfiguration
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketMetricsConfiguration.html)
|
||||
//
|
||||
// *
|
||||
// ListBucketMetricsConfigurations
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBucketMetricsConfigurations.html)
|
||||
//
|
||||
// *
|
||||
// Monitoring Metrics with Amazon CloudWatch
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/cloudwatch-monitoring.html)
|
||||
func (c *Client) DeleteBucketMetricsConfiguration(ctx context.Context, params *DeleteBucketMetricsConfigurationInput, optFns ...func(*Options)) (*DeleteBucketMetricsConfigurationOutput, error) {
|
||||
if params == nil {
|
||||
params = &DeleteBucketMetricsConfigurationInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "DeleteBucketMetricsConfiguration", params, optFns, c.addOperationDeleteBucketMetricsConfigurationMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*DeleteBucketMetricsConfigurationOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type DeleteBucketMetricsConfigurationInput struct {
|
||||
|
||||
// The name of the bucket containing the metrics configuration to delete.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The ID used to identify the metrics configuration.
|
||||
//
|
||||
// This member is required.
|
||||
Id *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type DeleteBucketMetricsConfigurationOutput struct {
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationDeleteBucketMetricsConfigurationMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpDeleteBucketMetricsConfiguration{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpDeleteBucketMetricsConfiguration{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpDeleteBucketMetricsConfigurationValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opDeleteBucketMetricsConfiguration(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addDeleteBucketMetricsConfigurationUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opDeleteBucketMetricsConfiguration(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "DeleteBucketMetricsConfiguration",
|
||||
}
|
||||
}
|
||||
|
||||
// getDeleteBucketMetricsConfigurationBucketMember returns a pointer to string
|
||||
// denoting a provided bucket member valueand a boolean indicating if the input has
|
||||
// a modeled bucket name,
|
||||
func getDeleteBucketMetricsConfigurationBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*DeleteBucketMetricsConfigurationInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addDeleteBucketMetricsConfigurationUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getDeleteBucketMetricsConfigurationBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
171
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteBucketOwnershipControls.go
generated
vendored
Normal file
171
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteBucketOwnershipControls.go
generated
vendored
Normal file
@@ -0,0 +1,171 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Removes OwnershipControls for an Amazon S3 bucket. To use this operation, you
|
||||
// must have the s3:PutBucketOwnershipControls permission. For more information
|
||||
// about Amazon S3 permissions, see Specifying Permissions in a Policy
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html).
|
||||
// For information about Amazon S3 Object Ownership, see Using Object Ownership
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/about-object-ownership.html).
|
||||
// The following operations are related to DeleteBucketOwnershipControls:
|
||||
//
|
||||
// *
|
||||
// GetBucketOwnershipControls
|
||||
//
|
||||
// * PutBucketOwnershipControls
|
||||
func (c *Client) DeleteBucketOwnershipControls(ctx context.Context, params *DeleteBucketOwnershipControlsInput, optFns ...func(*Options)) (*DeleteBucketOwnershipControlsOutput, error) {
|
||||
if params == nil {
|
||||
params = &DeleteBucketOwnershipControlsInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "DeleteBucketOwnershipControls", params, optFns, c.addOperationDeleteBucketOwnershipControlsMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*DeleteBucketOwnershipControlsOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type DeleteBucketOwnershipControlsInput struct {
|
||||
|
||||
// The Amazon S3 bucket whose OwnershipControls you want to delete.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type DeleteBucketOwnershipControlsOutput struct {
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationDeleteBucketOwnershipControlsMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpDeleteBucketOwnershipControls{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpDeleteBucketOwnershipControls{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpDeleteBucketOwnershipControlsValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opDeleteBucketOwnershipControls(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addDeleteBucketOwnershipControlsUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opDeleteBucketOwnershipControls(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "DeleteBucketOwnershipControls",
|
||||
}
|
||||
}
|
||||
|
||||
// getDeleteBucketOwnershipControlsBucketMember returns a pointer to string
|
||||
// denoting a provided bucket member valueand a boolean indicating if the input has
|
||||
// a modeled bucket name,
|
||||
func getDeleteBucketOwnershipControlsBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*DeleteBucketOwnershipControlsInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addDeleteBucketOwnershipControlsUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getDeleteBucketOwnershipControlsBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
181
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteBucketPolicy.go
generated
vendored
Normal file
181
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteBucketPolicy.go
generated
vendored
Normal file
@@ -0,0 +1,181 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// This implementation of the DELETE action uses the policy subresource to delete
|
||||
// the policy of a specified 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 DeleteBucketPolicy permissions on the specified bucket
|
||||
// and belong to the bucket owner's account to use this operation. 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 operation, 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
|
||||
// UserPolicies
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html). The
|
||||
// following operations are related to DeleteBucketPolicy
|
||||
//
|
||||
// * CreateBucket
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html)
|
||||
//
|
||||
// *
|
||||
// DeleteObject
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObject.html)
|
||||
func (c *Client) DeleteBucketPolicy(ctx context.Context, params *DeleteBucketPolicyInput, optFns ...func(*Options)) (*DeleteBucketPolicyOutput, error) {
|
||||
if params == nil {
|
||||
params = &DeleteBucketPolicyInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "DeleteBucketPolicy", params, optFns, c.addOperationDeleteBucketPolicyMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*DeleteBucketPolicyOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type DeleteBucketPolicyInput struct {
|
||||
|
||||
// The bucket name.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type DeleteBucketPolicyOutput struct {
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationDeleteBucketPolicyMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpDeleteBucketPolicy{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpDeleteBucketPolicy{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpDeleteBucketPolicyValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opDeleteBucketPolicy(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addDeleteBucketPolicyUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opDeleteBucketPolicy(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "DeleteBucketPolicy",
|
||||
}
|
||||
}
|
||||
|
||||
// getDeleteBucketPolicyBucketMember returns a pointer to string denoting a
|
||||
// provided bucket member valueand a boolean indicating if the input has a modeled
|
||||
// bucket name,
|
||||
func getDeleteBucketPolicyBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*DeleteBucketPolicyInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addDeleteBucketPolicyUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getDeleteBucketPolicyBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
179
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteBucketReplication.go
generated
vendored
Normal file
179
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteBucketReplication.go
generated
vendored
Normal file
@@ -0,0 +1,179 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Deletes the replication configuration from the bucket. To use this operation,
|
||||
// you must have permissions to perform the s3:PutReplicationConfiguration action.
|
||||
// The bucket owner has these permissions by default and can grant it 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).
|
||||
// It can take a while for the deletion of a replication configuration to fully
|
||||
// propagate. For information about replication configuration, see Replication
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/replication.html) in the Amazon
|
||||
// S3 User Guide. The following operations are related to
|
||||
// DeleteBucketReplication:
|
||||
//
|
||||
// * PutBucketReplication
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketReplication.html)
|
||||
//
|
||||
// *
|
||||
// GetBucketReplication
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketReplication.html)
|
||||
func (c *Client) DeleteBucketReplication(ctx context.Context, params *DeleteBucketReplicationInput, optFns ...func(*Options)) (*DeleteBucketReplicationOutput, error) {
|
||||
if params == nil {
|
||||
params = &DeleteBucketReplicationInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "DeleteBucketReplication", params, optFns, c.addOperationDeleteBucketReplicationMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*DeleteBucketReplicationOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type DeleteBucketReplicationInput struct {
|
||||
|
||||
// The bucket name.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type DeleteBucketReplicationOutput struct {
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationDeleteBucketReplicationMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpDeleteBucketReplication{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpDeleteBucketReplication{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpDeleteBucketReplicationValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opDeleteBucketReplication(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addDeleteBucketReplicationUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opDeleteBucketReplication(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "DeleteBucketReplication",
|
||||
}
|
||||
}
|
||||
|
||||
// getDeleteBucketReplicationBucketMember returns a pointer to string denoting a
|
||||
// provided bucket member valueand a boolean indicating if the input has a modeled
|
||||
// bucket name,
|
||||
func getDeleteBucketReplicationBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*DeleteBucketReplicationInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addDeleteBucketReplicationUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getDeleteBucketReplicationBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
170
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteBucketTagging.go
generated
vendored
Normal file
170
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteBucketTagging.go
generated
vendored
Normal file
@@ -0,0 +1,170 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Deletes the tags from the bucket. To use this operation, you must have
|
||||
// permission to perform the s3:PutBucketTagging action. By default, the bucket
|
||||
// owner has this permission and can grant this permission to others. The following
|
||||
// operations are related to DeleteBucketTagging:
|
||||
//
|
||||
// * GetBucketTagging
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketTagging.html)
|
||||
//
|
||||
// *
|
||||
// PutBucketTagging
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketTagging.html)
|
||||
func (c *Client) DeleteBucketTagging(ctx context.Context, params *DeleteBucketTaggingInput, optFns ...func(*Options)) (*DeleteBucketTaggingOutput, error) {
|
||||
if params == nil {
|
||||
params = &DeleteBucketTaggingInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "DeleteBucketTagging", params, optFns, c.addOperationDeleteBucketTaggingMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*DeleteBucketTaggingOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type DeleteBucketTaggingInput struct {
|
||||
|
||||
// The bucket that has the tag set to be removed.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type DeleteBucketTaggingOutput struct {
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationDeleteBucketTaggingMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpDeleteBucketTagging{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpDeleteBucketTagging{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpDeleteBucketTaggingValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opDeleteBucketTagging(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addDeleteBucketTaggingUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opDeleteBucketTagging(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "DeleteBucketTagging",
|
||||
}
|
||||
}
|
||||
|
||||
// getDeleteBucketTaggingBucketMember returns a pointer to string denoting a
|
||||
// provided bucket member valueand a boolean indicating if the input has a modeled
|
||||
// bucket name,
|
||||
func getDeleteBucketTaggingBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*DeleteBucketTaggingInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addDeleteBucketTaggingUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getDeleteBucketTaggingBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
179
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteBucketWebsite.go
generated
vendored
Normal file
179
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteBucketWebsite.go
generated
vendored
Normal file
@@ -0,0 +1,179 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// This action removes the website configuration for a bucket. Amazon S3 returns a
|
||||
// 200 OK response upon successfully deleting a website configuration on the
|
||||
// specified bucket. You will get a 200 OK response if the website configuration
|
||||
// you are trying to delete does not exist on the bucket. Amazon S3 returns a 404
|
||||
// response if the bucket specified in the request does not exist. This DELETE
|
||||
// action requires the S3:DeleteBucketWebsite permission. By default, only the
|
||||
// bucket owner can delete the website configuration attached to a bucket. However,
|
||||
// bucket owners can grant other users permission to delete the website
|
||||
// configuration by writing a bucket policy granting them the
|
||||
// S3:DeleteBucketWebsite permission. For more information about hosting websites,
|
||||
// see Hosting Websites on Amazon S3
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/WebsiteHosting.html). The
|
||||
// following operations are related to DeleteBucketWebsite:
|
||||
//
|
||||
// * GetBucketWebsite
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketWebsite.html)
|
||||
//
|
||||
// *
|
||||
// PutBucketWebsite
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketWebsite.html)
|
||||
func (c *Client) DeleteBucketWebsite(ctx context.Context, params *DeleteBucketWebsiteInput, optFns ...func(*Options)) (*DeleteBucketWebsiteOutput, error) {
|
||||
if params == nil {
|
||||
params = &DeleteBucketWebsiteInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "DeleteBucketWebsite", params, optFns, c.addOperationDeleteBucketWebsiteMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*DeleteBucketWebsiteOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type DeleteBucketWebsiteInput struct {
|
||||
|
||||
// The bucket name for which you want to remove the website configuration.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type DeleteBucketWebsiteOutput struct {
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationDeleteBucketWebsiteMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpDeleteBucketWebsite{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpDeleteBucketWebsite{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpDeleteBucketWebsiteValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opDeleteBucketWebsite(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addDeleteBucketWebsiteUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opDeleteBucketWebsite(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "DeleteBucketWebsite",
|
||||
}
|
||||
}
|
||||
|
||||
// getDeleteBucketWebsiteBucketMember returns a pointer to string denoting a
|
||||
// provided bucket member valueand a boolean indicating if the input has a modeled
|
||||
// bucket name,
|
||||
func getDeleteBucketWebsiteBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*DeleteBucketWebsiteInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addDeleteBucketWebsiteUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getDeleteBucketWebsiteBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
239
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteObject.go
generated
vendored
Normal file
239
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteObject.go
generated
vendored
Normal file
@@ -0,0 +1,239 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Removes the null version (if there is one) of an object and inserts a delete
|
||||
// marker, which becomes the latest version of the object. If there isn't a null
|
||||
// version, Amazon S3 does not remove any objects but will still respond that the
|
||||
// command was successful. To remove a specific version, you must be the bucket
|
||||
// owner and you must use the version Id subresource. Using this subresource
|
||||
// permanently deletes the version. If the object deleted is a delete marker,
|
||||
// Amazon S3 sets the response header, x-amz-delete-marker, to true. If the object
|
||||
// you want to delete is in a bucket where the bucket versioning configuration is
|
||||
// MFA Delete enabled, you must include the x-amz-mfa request header in the DELETE
|
||||
// versionId request. Requests that include x-amz-mfa must use HTTPS. For more
|
||||
// information about MFA Delete, see Using MFA Delete
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMFADelete.html). To see
|
||||
// sample requests that use versioning, see Sample Request
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectDELETE.html#ExampleVersionObjectDelete).
|
||||
// You can delete objects by explicitly calling DELETE Object or configure its
|
||||
// lifecycle (PutBucketLifecycle
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycle.html))
|
||||
// to enable Amazon S3 to remove them for you. If you want to block users or
|
||||
// accounts from removing or deleting objects from your bucket, you must deny them
|
||||
// the s3:DeleteObject, s3:DeleteObjectVersion, and s3:PutLifeCycleConfiguration
|
||||
// actions. The following action is related to DeleteObject:
|
||||
//
|
||||
// * PutObject
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html)
|
||||
func (c *Client) DeleteObject(ctx context.Context, params *DeleteObjectInput, optFns ...func(*Options)) (*DeleteObjectOutput, error) {
|
||||
if params == nil {
|
||||
params = &DeleteObjectInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "DeleteObject", params, optFns, c.addOperationDeleteObjectMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*DeleteObjectOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type DeleteObjectInput struct {
|
||||
|
||||
// The bucket name of the bucket containing the object. When using this action with
|
||||
// an access point, you must direct requests to the access point hostname. The
|
||||
// access point hostname takes the form
|
||||
// AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this
|
||||
// action with an access point through the Amazon Web Services SDKs, you provide
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see Using access points
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide. When using this action with Amazon S3 on Outposts,
|
||||
// you must direct requests to the S3 on Outposts hostname. The S3 on Outposts
|
||||
// hostname takes the form
|
||||
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When using
|
||||
// this action using S3 on Outposts through the Amazon Web Services SDKs, you
|
||||
// provide the Outposts bucket ARN in place of the bucket name. For more
|
||||
// information about S3 on Outposts ARNs, see Using S3 on Outposts
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) in the
|
||||
// Amazon S3 User Guide.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// Key name of the object to delete.
|
||||
//
|
||||
// This member is required.
|
||||
Key *string
|
||||
|
||||
// Indicates whether S3 Object Lock should bypass Governance-mode restrictions to
|
||||
// process this operation. To use this header, you must have the
|
||||
// s3:PutBucketPublicAccessBlock permission.
|
||||
BypassGovernanceRetention bool
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
// The concatenation of the authentication device's serial number, a space, and the
|
||||
// value that is displayed on your authentication device. Required to permanently
|
||||
// delete a versioned object if versioning is configured with MFA delete enabled.
|
||||
MFA *string
|
||||
|
||||
// Confirms that the requester knows that they will be charged for the request.
|
||||
// Bucket owners need not specify this parameter in their requests. For information
|
||||
// about downloading objects from requester pays buckets, see Downloading Objects
|
||||
// in Requestor Pays Buckets
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
RequestPayer types.RequestPayer
|
||||
|
||||
// VersionId used to reference a specific version of the object.
|
||||
VersionId *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type DeleteObjectOutput struct {
|
||||
|
||||
// Specifies whether the versioned object that was permanently deleted was (true)
|
||||
// or was not (false) a delete marker.
|
||||
DeleteMarker bool
|
||||
|
||||
// If present, indicates that the requester was successfully charged for the
|
||||
// request.
|
||||
RequestCharged types.RequestCharged
|
||||
|
||||
// Returns the version ID of the delete marker created as a result of the DELETE
|
||||
// operation.
|
||||
VersionId *string
|
||||
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationDeleteObjectMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpDeleteObject{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpDeleteObject{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpDeleteObjectValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opDeleteObject(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addDeleteObjectUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opDeleteObject(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "DeleteObject",
|
||||
}
|
||||
}
|
||||
|
||||
// getDeleteObjectBucketMember returns a pointer to string denoting a provided
|
||||
// bucket member valueand a boolean indicating if the input has a modeled bucket
|
||||
// name,
|
||||
func getDeleteObjectBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*DeleteObjectInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addDeleteObjectUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getDeleteObjectBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
202
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteObjectTagging.go
generated
vendored
Normal file
202
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteObjectTagging.go
generated
vendored
Normal file
@@ -0,0 +1,202 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Removes the entire tag set from the specified object. For more information about
|
||||
// managing object tags, see Object Tagging
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/object-tagging.html). To use
|
||||
// this operation, you must have permission to perform the s3:DeleteObjectTagging
|
||||
// action. To delete tags of a specific object version, add the versionId query
|
||||
// parameter in the request. You will need permission for the
|
||||
// s3:DeleteObjectVersionTagging action. The following operations are related to
|
||||
// DeleteBucketMetricsConfiguration:
|
||||
//
|
||||
// * PutObjectTagging
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObjectTagging.html)
|
||||
//
|
||||
// *
|
||||
// GetObjectTagging
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectTagging.html)
|
||||
func (c *Client) DeleteObjectTagging(ctx context.Context, params *DeleteObjectTaggingInput, optFns ...func(*Options)) (*DeleteObjectTaggingOutput, error) {
|
||||
if params == nil {
|
||||
params = &DeleteObjectTaggingInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "DeleteObjectTagging", params, optFns, c.addOperationDeleteObjectTaggingMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*DeleteObjectTaggingOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type DeleteObjectTaggingInput struct {
|
||||
|
||||
// The bucket name containing the objects from which to remove the tags. When using
|
||||
// this action with an access point, you must direct requests to the access point
|
||||
// hostname. The access point hostname takes the form
|
||||
// AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this
|
||||
// action with an access point through the Amazon Web Services SDKs, you provide
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see Using access points
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide. When using this action with Amazon S3 on Outposts,
|
||||
// you must direct requests to the S3 on Outposts hostname. The S3 on Outposts
|
||||
// hostname takes the form
|
||||
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When using
|
||||
// this action using S3 on Outposts through the Amazon Web Services SDKs, you
|
||||
// provide the Outposts bucket ARN in place of the bucket name. For more
|
||||
// information about S3 on Outposts ARNs, see Using S3 on Outposts
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) in the
|
||||
// Amazon S3 User Guide.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The key that identifies the object in the bucket from which to remove all tags.
|
||||
//
|
||||
// This member is required.
|
||||
Key *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
// The versionId of the object that the tag-set will be removed from.
|
||||
VersionId *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type DeleteObjectTaggingOutput struct {
|
||||
|
||||
// The versionId of the object the tag-set was removed from.
|
||||
VersionId *string
|
||||
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationDeleteObjectTaggingMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpDeleteObjectTagging{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpDeleteObjectTagging{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpDeleteObjectTaggingValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opDeleteObjectTagging(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addDeleteObjectTaggingUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opDeleteObjectTagging(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "DeleteObjectTagging",
|
||||
}
|
||||
}
|
||||
|
||||
// getDeleteObjectTaggingBucketMember returns a pointer to string denoting a
|
||||
// provided bucket member valueand a boolean indicating if the input has a modeled
|
||||
// bucket name,
|
||||
func getDeleteObjectTaggingBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*DeleteObjectTaggingInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addDeleteObjectTaggingUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getDeleteObjectTaggingBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
260
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteObjects.go
generated
vendored
Normal file
260
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteObjects.go
generated
vendored
Normal file
@@ -0,0 +1,260 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// This action enables you to delete multiple objects from a bucket using a single
|
||||
// HTTP request. If you know the object keys that you want to delete, then this
|
||||
// action provides a suitable alternative to sending individual delete requests,
|
||||
// reducing per-request overhead. The request contains a list of up to 1000 keys
|
||||
// that you want to delete. In the XML, you provide the object key names, and
|
||||
// optionally, version IDs if you want to delete a specific version of the object
|
||||
// from a versioning-enabled bucket. For each key, Amazon S3 performs a delete
|
||||
// action and returns the result of that delete, success, or failure, in the
|
||||
// response. Note that if the object specified in the request is not found, Amazon
|
||||
// S3 returns the result as deleted. The action supports two modes for the
|
||||
// response: verbose and quiet. By default, the action uses verbose mode in which
|
||||
// the response includes the result of deletion of each key in your request. In
|
||||
// quiet mode the response includes only keys where the delete action encountered
|
||||
// an error. For a successful deletion, the action does not return any information
|
||||
// about the delete in the response body. When performing this action on an MFA
|
||||
// Delete enabled bucket, that attempts to delete any versioned objects, you must
|
||||
// include an MFA token. If you do not provide one, the entire request will fail,
|
||||
// even if there are non-versioned objects you are trying to delete. If you provide
|
||||
// an invalid token, whether there are versioned keys in the request or not, the
|
||||
// entire Multi-Object Delete request will fail. For information about MFA Delete,
|
||||
// see MFA Delete
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/Versioning.html#MultiFactorAuthenticationDelete).
|
||||
// Finally, the Content-MD5 header is required for all Multi-Object Delete
|
||||
// requests. Amazon S3 uses the header value to ensure that your request body has
|
||||
// not been altered in transit. The following operations are related to
|
||||
// DeleteObjects:
|
||||
//
|
||||
// * CreateMultipartUpload
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html)
|
||||
//
|
||||
// *
|
||||
// UploadPart
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html)
|
||||
//
|
||||
// *
|
||||
// CompleteMultipartUpload
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CompleteMultipartUpload.html)
|
||||
//
|
||||
// *
|
||||
// ListParts
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListParts.html)
|
||||
//
|
||||
// *
|
||||
// AbortMultipartUpload
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_AbortMultipartUpload.html)
|
||||
func (c *Client) DeleteObjects(ctx context.Context, params *DeleteObjectsInput, optFns ...func(*Options)) (*DeleteObjectsOutput, error) {
|
||||
if params == nil {
|
||||
params = &DeleteObjectsInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "DeleteObjects", params, optFns, c.addOperationDeleteObjectsMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*DeleteObjectsOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type DeleteObjectsInput struct {
|
||||
|
||||
// The bucket name containing the objects to delete. When using this action with an
|
||||
// access point, you must direct requests to the access point hostname. The access
|
||||
// point hostname takes the form
|
||||
// AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this
|
||||
// action with an access point through the Amazon Web Services SDKs, you provide
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see Using access points
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide. When using this action with Amazon S3 on Outposts,
|
||||
// you must direct requests to the S3 on Outposts hostname. The S3 on Outposts
|
||||
// hostname takes the form
|
||||
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When using
|
||||
// this action using S3 on Outposts through the Amazon Web Services SDKs, you
|
||||
// provide the Outposts bucket ARN in place of the bucket name. For more
|
||||
// information about S3 on Outposts ARNs, see Using S3 on Outposts
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) in the
|
||||
// Amazon S3 User Guide.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// Container for the request.
|
||||
//
|
||||
// This member is required.
|
||||
Delete *types.Delete
|
||||
|
||||
// Specifies whether you want to delete this object even if it has a
|
||||
// Governance-type Object Lock in place. To use this header, you must have the
|
||||
// s3:PutBucketPublicAccessBlock permission.
|
||||
BypassGovernanceRetention bool
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
// The concatenation of the authentication device's serial number, a space, and the
|
||||
// value that is displayed on your authentication device. Required to permanently
|
||||
// delete a versioned object if versioning is configured with MFA delete enabled.
|
||||
MFA *string
|
||||
|
||||
// Confirms that the requester knows that they will be charged for the request.
|
||||
// Bucket owners need not specify this parameter in their requests. For information
|
||||
// about downloading objects from requester pays buckets, see Downloading Objects
|
||||
// in Requestor Pays Buckets
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
RequestPayer types.RequestPayer
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type DeleteObjectsOutput struct {
|
||||
|
||||
// Container element for a successful delete. It identifies the object that was
|
||||
// successfully deleted.
|
||||
Deleted []types.DeletedObject
|
||||
|
||||
// Container for a failed delete action that describes the object that Amazon S3
|
||||
// attempted to delete and the error it encountered.
|
||||
Errors []types.Error
|
||||
|
||||
// If present, indicates that the requester was successfully charged for the
|
||||
// request.
|
||||
RequestCharged types.RequestCharged
|
||||
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationDeleteObjectsMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpDeleteObjects{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpDeleteObjects{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpDeleteObjectsValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opDeleteObjects(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addDeleteObjectsUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddContentChecksumMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opDeleteObjects(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "DeleteObjects",
|
||||
}
|
||||
}
|
||||
|
||||
// getDeleteObjectsBucketMember returns a pointer to string denoting a provided
|
||||
// bucket member valueand a boolean indicating if the input has a modeled bucket
|
||||
// name,
|
||||
func getDeleteObjectsBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*DeleteObjectsInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addDeleteObjectsUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getDeleteObjectsBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
183
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeletePublicAccessBlock.go
generated
vendored
Normal file
183
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeletePublicAccessBlock.go
generated
vendored
Normal file
@@ -0,0 +1,183 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Removes the PublicAccessBlock configuration for an Amazon S3 bucket. To use this
|
||||
// operation, you must have the s3:PutBucketPublicAccessBlock permission. 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).
|
||||
// The following operations are related to DeletePublicAccessBlock:
|
||||
//
|
||||
// * Using Amazon
|
||||
// S3 Block Public Access
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html)
|
||||
//
|
||||
// *
|
||||
// GetPublicAccessBlock
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetPublicAccessBlock.html)
|
||||
//
|
||||
// *
|
||||
// PutPublicAccessBlock
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutPublicAccessBlock.html)
|
||||
//
|
||||
// *
|
||||
// GetBucketPolicyStatus
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketPolicyStatus.html)
|
||||
func (c *Client) DeletePublicAccessBlock(ctx context.Context, params *DeletePublicAccessBlockInput, optFns ...func(*Options)) (*DeletePublicAccessBlockOutput, error) {
|
||||
if params == nil {
|
||||
params = &DeletePublicAccessBlockInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "DeletePublicAccessBlock", params, optFns, c.addOperationDeletePublicAccessBlockMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*DeletePublicAccessBlockOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type DeletePublicAccessBlockInput struct {
|
||||
|
||||
// The Amazon S3 bucket whose PublicAccessBlock configuration you want to delete.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type DeletePublicAccessBlockOutput struct {
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationDeletePublicAccessBlockMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpDeletePublicAccessBlock{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpDeletePublicAccessBlock{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpDeletePublicAccessBlockValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opDeletePublicAccessBlock(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addDeletePublicAccessBlockUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opDeletePublicAccessBlock(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "DeletePublicAccessBlock",
|
||||
}
|
||||
}
|
||||
|
||||
// getDeletePublicAccessBlockBucketMember returns a pointer to string denoting a
|
||||
// provided bucket member valueand a boolean indicating if the input has a modeled
|
||||
// bucket name,
|
||||
func getDeletePublicAccessBlockBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*DeletePublicAccessBlockInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addDeletePublicAccessBlockUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getDeletePublicAccessBlockBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
188
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketAccelerateConfiguration.go
generated
vendored
Normal file
188
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketAccelerateConfiguration.go
generated
vendored
Normal file
@@ -0,0 +1,188 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// This implementation of the GET action uses the accelerate subresource to return
|
||||
// the Transfer Acceleration state of a bucket, which is either Enabled or
|
||||
// Suspended. Amazon S3 Transfer Acceleration is a bucket-level feature that
|
||||
// enables you to perform faster data transfers to and from Amazon S3. To use this
|
||||
// operation, you must have permission to perform the s3:GetAccelerateConfiguration
|
||||
// action. The 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)
|
||||
// in the Amazon S3 User Guide. You set the Transfer Acceleration state of an
|
||||
// existing bucket to Enabled or Suspended by using the
|
||||
// PutBucketAccelerateConfiguration
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketAccelerateConfiguration.html)
|
||||
// operation. A GET accelerate request does not return a state value for a bucket
|
||||
// that has no transfer acceleration state. A bucket has no Transfer Acceleration
|
||||
// state if a state has never been set on the bucket. For more information about
|
||||
// transfer acceleration, see Transfer Acceleration
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/transfer-acceleration.html) in
|
||||
// the Amazon S3 User Guide. Related Resources
|
||||
//
|
||||
// * PutBucketAccelerateConfiguration
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketAccelerateConfiguration.html)
|
||||
func (c *Client) GetBucketAccelerateConfiguration(ctx context.Context, params *GetBucketAccelerateConfigurationInput, optFns ...func(*Options)) (*GetBucketAccelerateConfigurationOutput, error) {
|
||||
if params == nil {
|
||||
params = &GetBucketAccelerateConfigurationInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "GetBucketAccelerateConfiguration", params, optFns, c.addOperationGetBucketAccelerateConfigurationMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*GetBucketAccelerateConfigurationOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type GetBucketAccelerateConfigurationInput struct {
|
||||
|
||||
// The name of the bucket for which the accelerate configuration is retrieved.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type GetBucketAccelerateConfigurationOutput struct {
|
||||
|
||||
// The accelerate configuration of the bucket.
|
||||
Status types.BucketAccelerateStatus
|
||||
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationGetBucketAccelerateConfigurationMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpGetBucketAccelerateConfiguration{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpGetBucketAccelerateConfiguration{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpGetBucketAccelerateConfigurationValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opGetBucketAccelerateConfiguration(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addGetBucketAccelerateConfigurationUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opGetBucketAccelerateConfiguration(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "GetBucketAccelerateConfiguration",
|
||||
}
|
||||
}
|
||||
|
||||
// getGetBucketAccelerateConfigurationBucketMember returns a pointer to string
|
||||
// denoting a provided bucket member valueand a boolean indicating if the input has
|
||||
// a modeled bucket name,
|
||||
func getGetBucketAccelerateConfigurationBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*GetBucketAccelerateConfigurationInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addGetBucketAccelerateConfigurationUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getGetBucketAccelerateConfigurationBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
175
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketAcl.go
generated
vendored
Normal file
175
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketAcl.go
generated
vendored
Normal file
@@ -0,0 +1,175 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// This implementation of the GET action uses the acl subresource to return the
|
||||
// access control list (ACL) of a bucket. To use GET to return the ACL of the
|
||||
// bucket, you must have READ_ACP access to the bucket. If READ_ACP permission is
|
||||
// granted to the anonymous user, you can return the ACL of the bucket without
|
||||
// using an authorization header. Related Resources
|
||||
//
|
||||
// * ListObjects
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjects.html)
|
||||
func (c *Client) GetBucketAcl(ctx context.Context, params *GetBucketAclInput, optFns ...func(*Options)) (*GetBucketAclOutput, error) {
|
||||
if params == nil {
|
||||
params = &GetBucketAclInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "GetBucketAcl", params, optFns, c.addOperationGetBucketAclMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*GetBucketAclOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type GetBucketAclInput struct {
|
||||
|
||||
// Specifies the S3 bucket whose ACL is being requested.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type GetBucketAclOutput struct {
|
||||
|
||||
// A list of grants.
|
||||
Grants []types.Grant
|
||||
|
||||
// Container for the bucket owner's display name and ID.
|
||||
Owner *types.Owner
|
||||
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationGetBucketAclMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpGetBucketAcl{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpGetBucketAcl{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpGetBucketAclValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opGetBucketAcl(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addGetBucketAclUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opGetBucketAcl(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "GetBucketAcl",
|
||||
}
|
||||
}
|
||||
|
||||
// getGetBucketAclBucketMember returns a pointer to string denoting a provided
|
||||
// bucket member valueand a boolean indicating if the input has a modeled bucket
|
||||
// name,
|
||||
func getGetBucketAclBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*GetBucketAclInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addGetBucketAclUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getGetBucketAclBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
194
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketAnalyticsConfiguration.go
generated
vendored
Normal file
194
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketAnalyticsConfiguration.go
generated
vendored
Normal file
@@ -0,0 +1,194 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// This implementation of the GET action returns an analytics configuration
|
||||
// (identified by the analytics configuration ID) from the bucket. To use this
|
||||
// operation, you must have permissions to perform the s3:GetAnalyticsConfiguration
|
||||
// action. The 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)
|
||||
// in the Amazon S3 User Guide. For information about Amazon S3 analytics feature,
|
||||
// see Amazon S3 Analytics – Storage Class Analysis
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/analytics-storage-class.html)
|
||||
// in the Amazon S3 User Guide. Related Resources
|
||||
//
|
||||
// *
|
||||
// DeleteBucketAnalyticsConfiguration
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketAnalyticsConfiguration.html)
|
||||
//
|
||||
// *
|
||||
// ListBucketAnalyticsConfigurations
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBucketAnalyticsConfigurations.html)
|
||||
//
|
||||
// *
|
||||
// PutBucketAnalyticsConfiguration
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketAnalyticsConfiguration.html)
|
||||
func (c *Client) GetBucketAnalyticsConfiguration(ctx context.Context, params *GetBucketAnalyticsConfigurationInput, optFns ...func(*Options)) (*GetBucketAnalyticsConfigurationOutput, error) {
|
||||
if params == nil {
|
||||
params = &GetBucketAnalyticsConfigurationInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "GetBucketAnalyticsConfiguration", params, optFns, c.addOperationGetBucketAnalyticsConfigurationMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*GetBucketAnalyticsConfigurationOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type GetBucketAnalyticsConfigurationInput struct {
|
||||
|
||||
// The name of the bucket from which an analytics configuration is retrieved.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The ID that identifies the analytics configuration.
|
||||
//
|
||||
// This member is required.
|
||||
Id *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type GetBucketAnalyticsConfigurationOutput struct {
|
||||
|
||||
// The configuration and any analyses for the analytics filter.
|
||||
AnalyticsConfiguration *types.AnalyticsConfiguration
|
||||
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationGetBucketAnalyticsConfigurationMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpGetBucketAnalyticsConfiguration{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpGetBucketAnalyticsConfiguration{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpGetBucketAnalyticsConfigurationValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opGetBucketAnalyticsConfiguration(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addGetBucketAnalyticsConfigurationUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opGetBucketAnalyticsConfiguration(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "GetBucketAnalyticsConfiguration",
|
||||
}
|
||||
}
|
||||
|
||||
// getGetBucketAnalyticsConfigurationBucketMember returns a pointer to string
|
||||
// denoting a provided bucket member valueand a boolean indicating if the input has
|
||||
// a modeled bucket name,
|
||||
func getGetBucketAnalyticsConfigurationBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*GetBucketAnalyticsConfigurationInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addGetBucketAnalyticsConfigurationUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getGetBucketAnalyticsConfigurationBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
178
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketCors.go
generated
vendored
Normal file
178
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketCors.go
generated
vendored
Normal file
@@ -0,0 +1,178 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Returns the cors configuration information set for the bucket. To use this
|
||||
// operation, you must have permission to perform the s3:GetBucketCORS action. By
|
||||
// default, the bucket owner has this permission and can grant it to others. For
|
||||
// more information about cors, see Enabling Cross-Origin Resource Sharing
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/cors.html). The following
|
||||
// operations are related to GetBucketCors:
|
||||
//
|
||||
// * PutBucketCors
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketCors.html)
|
||||
//
|
||||
// *
|
||||
// DeleteBucketCors
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketCors.html)
|
||||
func (c *Client) GetBucketCors(ctx context.Context, params *GetBucketCorsInput, optFns ...func(*Options)) (*GetBucketCorsOutput, error) {
|
||||
if params == nil {
|
||||
params = &GetBucketCorsInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "GetBucketCors", params, optFns, c.addOperationGetBucketCorsMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*GetBucketCorsOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type GetBucketCorsInput struct {
|
||||
|
||||
// The bucket name for which to get the cors configuration.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type GetBucketCorsOutput struct {
|
||||
|
||||
// A set of origins and methods (cross-origin access that you want to allow). You
|
||||
// can add up to 100 rules to the configuration.
|
||||
CORSRules []types.CORSRule
|
||||
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationGetBucketCorsMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpGetBucketCors{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpGetBucketCors{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpGetBucketCorsValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opGetBucketCors(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addGetBucketCorsUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opGetBucketCors(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "GetBucketCors",
|
||||
}
|
||||
}
|
||||
|
||||
// getGetBucketCorsBucketMember returns a pointer to string denoting a provided
|
||||
// bucket member valueand a boolean indicating if the input has a modeled bucket
|
||||
// name,
|
||||
func getGetBucketCorsBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*GetBucketCorsInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addGetBucketCorsUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getGetBucketCorsBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
188
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketEncryption.go
generated
vendored
Normal file
188
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketEncryption.go
generated
vendored
Normal file
@@ -0,0 +1,188 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Returns the default encryption configuration for an Amazon S3 bucket. If the
|
||||
// bucket does not have a default encryption configuration, GetBucketEncryption
|
||||
// returns ServerSideEncryptionConfigurationNotFoundError. For information about
|
||||
// the Amazon S3 default encryption feature, see Amazon S3 Default Bucket
|
||||
// Encryption
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html). To use
|
||||
// this operation, you must have permission to perform the
|
||||
// s3:GetEncryptionConfiguration action. The 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).
|
||||
// The following operations are related to GetBucketEncryption:
|
||||
//
|
||||
// *
|
||||
// PutBucketEncryption
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketEncryption.html)
|
||||
//
|
||||
// *
|
||||
// DeleteBucketEncryption
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketEncryption.html)
|
||||
func (c *Client) GetBucketEncryption(ctx context.Context, params *GetBucketEncryptionInput, optFns ...func(*Options)) (*GetBucketEncryptionOutput, error) {
|
||||
if params == nil {
|
||||
params = &GetBucketEncryptionInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "GetBucketEncryption", params, optFns, c.addOperationGetBucketEncryptionMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*GetBucketEncryptionOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type GetBucketEncryptionInput struct {
|
||||
|
||||
// The name of the bucket from which the server-side encryption configuration is
|
||||
// retrieved.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type GetBucketEncryptionOutput struct {
|
||||
|
||||
// Specifies the default server-side-encryption configuration.
|
||||
ServerSideEncryptionConfiguration *types.ServerSideEncryptionConfiguration
|
||||
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationGetBucketEncryptionMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpGetBucketEncryption{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpGetBucketEncryption{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpGetBucketEncryptionValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opGetBucketEncryption(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addGetBucketEncryptionUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opGetBucketEncryption(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "GetBucketEncryption",
|
||||
}
|
||||
}
|
||||
|
||||
// getGetBucketEncryptionBucketMember returns a pointer to string denoting a
|
||||
// provided bucket member valueand a boolean indicating if the input has a modeled
|
||||
// bucket name,
|
||||
func getGetBucketEncryptionBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*GetBucketEncryptionInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addGetBucketEncryptionUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getGetBucketEncryptionBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
194
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketIntelligentTieringConfiguration.go
generated
vendored
Normal file
194
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketIntelligentTieringConfiguration.go
generated
vendored
Normal file
@@ -0,0 +1,194 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Gets the S3 Intelligent-Tiering configuration from the specified bucket. The S3
|
||||
// Intelligent-Tiering storage class is designed to optimize storage costs by
|
||||
// automatically moving data to the most cost-effective storage access tier,
|
||||
// without performance impact or operational overhead. S3 Intelligent-Tiering
|
||||
// delivers automatic cost savings in two low latency and high throughput access
|
||||
// tiers. For data that can be accessed asynchronously, you can choose to activate
|
||||
// automatic archiving capabilities within the S3 Intelligent-Tiering storage
|
||||
// class. The S3 Intelligent-Tiering storage class is the ideal storage class for
|
||||
// data with unknown, changing, or unpredictable access patterns, independent of
|
||||
// object size or retention period. If the size of an object is less than 128 KB,
|
||||
// it is not eligible for auto-tiering. Smaller objects can be stored, but they are
|
||||
// always charged at the Frequent Access tier rates in the S3 Intelligent-Tiering
|
||||
// storage class. For more information, see Storage class for automatically
|
||||
// optimizing frequently and infrequently accessed objects
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html#sc-dynamic-data-access).
|
||||
// Operations related to GetBucketIntelligentTieringConfiguration include:
|
||||
//
|
||||
// *
|
||||
// DeleteBucketIntelligentTieringConfiguration
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketIntelligentTieringConfiguration.html)
|
||||
//
|
||||
// *
|
||||
// PutBucketIntelligentTieringConfiguration
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketIntelligentTieringConfiguration.html)
|
||||
//
|
||||
// *
|
||||
// ListBucketIntelligentTieringConfigurations
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBucketIntelligentTieringConfigurations.html)
|
||||
func (c *Client) GetBucketIntelligentTieringConfiguration(ctx context.Context, params *GetBucketIntelligentTieringConfigurationInput, optFns ...func(*Options)) (*GetBucketIntelligentTieringConfigurationOutput, error) {
|
||||
if params == nil {
|
||||
params = &GetBucketIntelligentTieringConfigurationInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "GetBucketIntelligentTieringConfiguration", params, optFns, c.addOperationGetBucketIntelligentTieringConfigurationMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*GetBucketIntelligentTieringConfigurationOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type GetBucketIntelligentTieringConfigurationInput struct {
|
||||
|
||||
// The name of the Amazon S3 bucket whose configuration you want to modify or
|
||||
// retrieve.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The ID used to identify the S3 Intelligent-Tiering configuration.
|
||||
//
|
||||
// This member is required.
|
||||
Id *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type GetBucketIntelligentTieringConfigurationOutput struct {
|
||||
|
||||
// Container for S3 Intelligent-Tiering configuration.
|
||||
IntelligentTieringConfiguration *types.IntelligentTieringConfiguration
|
||||
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationGetBucketIntelligentTieringConfigurationMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpGetBucketIntelligentTieringConfiguration{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpGetBucketIntelligentTieringConfiguration{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpGetBucketIntelligentTieringConfigurationValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opGetBucketIntelligentTieringConfiguration(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addGetBucketIntelligentTieringConfigurationUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opGetBucketIntelligentTieringConfiguration(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "GetBucketIntelligentTieringConfiguration",
|
||||
}
|
||||
}
|
||||
|
||||
// getGetBucketIntelligentTieringConfigurationBucketMember returns a pointer to
|
||||
// string denoting a provided bucket member valueand a boolean indicating if the
|
||||
// input has a modeled bucket name,
|
||||
func getGetBucketIntelligentTieringConfigurationBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*GetBucketIntelligentTieringConfigurationInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addGetBucketIntelligentTieringConfigurationUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getGetBucketIntelligentTieringConfigurationBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
192
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketInventoryConfiguration.go
generated
vendored
Normal file
192
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketInventoryConfiguration.go
generated
vendored
Normal file
@@ -0,0 +1,192 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Returns an inventory configuration (identified by the inventory configuration
|
||||
// ID) from the bucket. To use this operation, you must have permissions to perform
|
||||
// the s3:GetInventoryConfiguration action. The 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).
|
||||
// For information about the Amazon S3 inventory feature, see Amazon S3 Inventory
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-inventory.html). The
|
||||
// following operations are related to GetBucketInventoryConfiguration:
|
||||
//
|
||||
// *
|
||||
// DeleteBucketInventoryConfiguration
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketInventoryConfiguration.html)
|
||||
//
|
||||
// *
|
||||
// ListBucketInventoryConfigurations
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBucketInventoryConfigurations.html)
|
||||
//
|
||||
// *
|
||||
// PutBucketInventoryConfiguration
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketInventoryConfiguration.html)
|
||||
func (c *Client) GetBucketInventoryConfiguration(ctx context.Context, params *GetBucketInventoryConfigurationInput, optFns ...func(*Options)) (*GetBucketInventoryConfigurationOutput, error) {
|
||||
if params == nil {
|
||||
params = &GetBucketInventoryConfigurationInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "GetBucketInventoryConfiguration", params, optFns, c.addOperationGetBucketInventoryConfigurationMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*GetBucketInventoryConfigurationOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type GetBucketInventoryConfigurationInput struct {
|
||||
|
||||
// The name of the bucket containing the inventory configuration to retrieve.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The ID used to identify the inventory configuration.
|
||||
//
|
||||
// This member is required.
|
||||
Id *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type GetBucketInventoryConfigurationOutput struct {
|
||||
|
||||
// Specifies the inventory configuration.
|
||||
InventoryConfiguration *types.InventoryConfiguration
|
||||
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationGetBucketInventoryConfigurationMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpGetBucketInventoryConfiguration{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpGetBucketInventoryConfiguration{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpGetBucketInventoryConfigurationValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opGetBucketInventoryConfiguration(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addGetBucketInventoryConfigurationUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opGetBucketInventoryConfiguration(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "GetBucketInventoryConfiguration",
|
||||
}
|
||||
}
|
||||
|
||||
// getGetBucketInventoryConfigurationBucketMember returns a pointer to string
|
||||
// denoting a provided bucket member valueand a boolean indicating if the input has
|
||||
// a modeled bucket name,
|
||||
func getGetBucketInventoryConfigurationBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*GetBucketInventoryConfigurationInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addGetBucketInventoryConfigurationUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getGetBucketInventoryConfigurationBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
209
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketLifecycleConfiguration.go
generated
vendored
Normal file
209
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketLifecycleConfiguration.go
generated
vendored
Normal file
@@ -0,0 +1,209 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Bucket lifecycle configuration now supports specifying a lifecycle rule using an
|
||||
// object key name prefix, one or more object tags, or a combination of both.
|
||||
// Accordingly, this section describes the latest API. The response describes the
|
||||
// new filter element that you can use to specify a filter to select a subset of
|
||||
// objects to which the rule applies. If you are using a previous version of the
|
||||
// lifecycle configuration, it still works. For the earlier action, see
|
||||
// GetBucketLifecycle
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLifecycle.html).
|
||||
// Returns the lifecycle configuration information set on the bucket. For
|
||||
// information about lifecycle configuration, see Object Lifecycle Management
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html). To
|
||||
// use this operation, you must have permission to perform the
|
||||
// s3:GetLifecycleConfiguration action. The 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).
|
||||
// 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 operations are related to
|
||||
// GetBucketLifecycleConfiguration:
|
||||
//
|
||||
// * GetBucketLifecycle
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLifecycle.html)
|
||||
//
|
||||
// *
|
||||
// PutBucketLifecycle
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycle.html)
|
||||
//
|
||||
// *
|
||||
// DeleteBucketLifecycle
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketLifecycle.html)
|
||||
func (c *Client) GetBucketLifecycleConfiguration(ctx context.Context, params *GetBucketLifecycleConfigurationInput, optFns ...func(*Options)) (*GetBucketLifecycleConfigurationOutput, error) {
|
||||
if params == nil {
|
||||
params = &GetBucketLifecycleConfigurationInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "GetBucketLifecycleConfiguration", params, optFns, c.addOperationGetBucketLifecycleConfigurationMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*GetBucketLifecycleConfigurationOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type GetBucketLifecycleConfigurationInput struct {
|
||||
|
||||
// The name of the bucket for which to get the lifecycle information.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type GetBucketLifecycleConfigurationOutput struct {
|
||||
|
||||
// Container for a lifecycle rule.
|
||||
Rules []types.LifecycleRule
|
||||
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationGetBucketLifecycleConfigurationMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpGetBucketLifecycleConfiguration{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpGetBucketLifecycleConfiguration{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpGetBucketLifecycleConfigurationValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opGetBucketLifecycleConfiguration(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addGetBucketLifecycleConfigurationUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opGetBucketLifecycleConfiguration(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "GetBucketLifecycleConfiguration",
|
||||
}
|
||||
}
|
||||
|
||||
// getGetBucketLifecycleConfigurationBucketMember returns a pointer to string
|
||||
// denoting a provided bucket member valueand a boolean indicating if the input has
|
||||
// a modeled bucket name,
|
||||
func getGetBucketLifecycleConfigurationBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*GetBucketLifecycleConfigurationInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addGetBucketLifecycleConfigurationUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getGetBucketLifecycleConfigurationBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
248
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketLocation.go
generated
vendored
Normal file
248
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketLocation.go
generated
vendored
Normal file
@@ -0,0 +1,248 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"bytes"
|
||||
"context"
|
||||
"encoding/xml"
|
||||
"fmt"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
smithy "github.com/aws/smithy-go"
|
||||
smithyxml "github.com/aws/smithy-go/encoding/xml"
|
||||
smithyio "github.com/aws/smithy-go/io"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
"io"
|
||||
)
|
||||
|
||||
// Returns the Region the bucket resides in. You set the bucket's Region using the
|
||||
// LocationConstraint request parameter in a CreateBucket request. For more
|
||||
// information, see CreateBucket
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html). To use
|
||||
// this implementation of the operation, you must be the bucket owner. To use this
|
||||
// API against an access point, provide the alias of the access point in place of
|
||||
// the bucket name. The following operations are related to GetBucketLocation:
|
||||
//
|
||||
// *
|
||||
// GetObject
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html)
|
||||
//
|
||||
// *
|
||||
// CreateBucket
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html)
|
||||
func (c *Client) GetBucketLocation(ctx context.Context, params *GetBucketLocationInput, optFns ...func(*Options)) (*GetBucketLocationOutput, error) {
|
||||
if params == nil {
|
||||
params = &GetBucketLocationInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "GetBucketLocation", params, optFns, c.addOperationGetBucketLocationMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*GetBucketLocationOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type GetBucketLocationInput struct {
|
||||
|
||||
// The name of the bucket for which to get the location.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type GetBucketLocationOutput struct {
|
||||
|
||||
// Specifies the Region where the bucket resides. For a list of all the Amazon S3
|
||||
// supported location constraints by Region, see Regions and Endpoints
|
||||
// (https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region). Buckets in
|
||||
// Region us-east-1 have a LocationConstraint of null.
|
||||
LocationConstraint types.BucketLocationConstraint
|
||||
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationGetBucketLocationMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpGetBucketLocation{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpGetBucketLocation{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapDeserializerHelper(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpGetBucketLocationValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opGetBucketLocation(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addGetBucketLocationUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
type awsRestxml_deserializeOpGetBucketLocation_custom struct {
|
||||
}
|
||||
|
||||
func (*awsRestxml_deserializeOpGetBucketLocation_custom) ID() string {
|
||||
return "OperationDeserializer"
|
||||
}
|
||||
|
||||
func (m *awsRestxml_deserializeOpGetBucketLocation_custom) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
|
||||
out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
|
||||
) {
|
||||
out, metadata, err = next.HandleDeserialize(ctx, in)
|
||||
if err != nil {
|
||||
return out, metadata, err
|
||||
}
|
||||
|
||||
response, ok := out.RawResponse.(*smithyhttp.Response)
|
||||
if !ok {
|
||||
return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
|
||||
}
|
||||
|
||||
if response.StatusCode < 200 || response.StatusCode >= 300 {
|
||||
return out, metadata, awsRestxml_deserializeOpErrorGetBucketLocation(response, &metadata)
|
||||
}
|
||||
output := &GetBucketLocationOutput{}
|
||||
out.Result = output
|
||||
|
||||
var buff [1024]byte
|
||||
ringBuffer := smithyio.NewRingBuffer(buff[:])
|
||||
body := io.TeeReader(response.Body, ringBuffer)
|
||||
rootDecoder := xml.NewDecoder(body)
|
||||
decoder := smithyxml.WrapNodeDecoder(rootDecoder, xml.StartElement{})
|
||||
err = awsRestxml_deserializeOpDocumentGetBucketLocationOutput(&output, decoder)
|
||||
if err == io.EOF {
|
||||
err = nil
|
||||
}
|
||||
if err != nil {
|
||||
var snapshot bytes.Buffer
|
||||
io.Copy(&snapshot, ringBuffer)
|
||||
return out, metadata, &smithy.DeserializationError{
|
||||
Err: fmt.Errorf("failed to decode response body, %w", err),
|
||||
Snapshot: snapshot.Bytes(),
|
||||
}
|
||||
}
|
||||
|
||||
return out, metadata, err
|
||||
}
|
||||
|
||||
// Helper to swap in a custom deserializer
|
||||
func swapDeserializerHelper(stack *middleware.Stack) error {
|
||||
_, err := stack.Deserialize.Swap("OperationDeserializer", &awsRestxml_deserializeOpGetBucketLocation_custom{})
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opGetBucketLocation(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "GetBucketLocation",
|
||||
}
|
||||
}
|
||||
|
||||
// getGetBucketLocationBucketMember returns a pointer to string denoting a provided
|
||||
// bucket member valueand a boolean indicating if the input has a modeled bucket
|
||||
// name,
|
||||
func getGetBucketLocationBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*GetBucketLocationInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addGetBucketLocationUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getGetBucketLocationBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
177
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketLogging.go
generated
vendored
Normal file
177
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketLogging.go
generated
vendored
Normal file
@@ -0,0 +1,177 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Returns the logging status of a bucket and the permissions users have to view
|
||||
// and modify that status. To use GET, you must be the bucket owner. The following
|
||||
// operations are related to GetBucketLogging:
|
||||
//
|
||||
// * CreateBucket
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html)
|
||||
//
|
||||
// *
|
||||
// PutBucketLogging
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLogging.html)
|
||||
func (c *Client) GetBucketLogging(ctx context.Context, params *GetBucketLoggingInput, optFns ...func(*Options)) (*GetBucketLoggingOutput, error) {
|
||||
if params == nil {
|
||||
params = &GetBucketLoggingInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "GetBucketLogging", params, optFns, c.addOperationGetBucketLoggingMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*GetBucketLoggingOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type GetBucketLoggingInput struct {
|
||||
|
||||
// The bucket name for which to get the logging information.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type GetBucketLoggingOutput struct {
|
||||
|
||||
// Describes where logs are stored and the prefix that Amazon S3 assigns to all log
|
||||
// object keys for a bucket. For more information, see PUT Bucket logging
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTlogging.html) in
|
||||
// the Amazon S3 API Reference.
|
||||
LoggingEnabled *types.LoggingEnabled
|
||||
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationGetBucketLoggingMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpGetBucketLogging{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpGetBucketLogging{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpGetBucketLoggingValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opGetBucketLogging(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addGetBucketLoggingUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opGetBucketLogging(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "GetBucketLogging",
|
||||
}
|
||||
}
|
||||
|
||||
// getGetBucketLoggingBucketMember returns a pointer to string denoting a provided
|
||||
// bucket member valueand a boolean indicating if the input has a modeled bucket
|
||||
// name,
|
||||
func getGetBucketLoggingBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*GetBucketLoggingInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addGetBucketLoggingUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getGetBucketLoggingBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
199
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketMetricsConfiguration.go
generated
vendored
Normal file
199
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketMetricsConfiguration.go
generated
vendored
Normal file
@@ -0,0 +1,199 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Gets a metrics configuration (specified by the metrics configuration ID) from
|
||||
// the bucket. Note that this doesn't include the daily storage metrics. To use
|
||||
// this operation, you must have permissions to perform the
|
||||
// s3:GetMetricsConfiguration action. The 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).
|
||||
// For information about CloudWatch request metrics for Amazon S3, see Monitoring
|
||||
// Metrics with Amazon CloudWatch
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/cloudwatch-monitoring.html).
|
||||
// The following operations are related to GetBucketMetricsConfiguration:
|
||||
//
|
||||
// *
|
||||
// PutBucketMetricsConfiguration
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketMetricsConfiguration.html)
|
||||
//
|
||||
// *
|
||||
// DeleteBucketMetricsConfiguration
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketMetricsConfiguration.html)
|
||||
//
|
||||
// *
|
||||
// ListBucketMetricsConfigurations
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBucketMetricsConfigurations.html)
|
||||
//
|
||||
// *
|
||||
// Monitoring Metrics with Amazon CloudWatch
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/cloudwatch-monitoring.html)
|
||||
func (c *Client) GetBucketMetricsConfiguration(ctx context.Context, params *GetBucketMetricsConfigurationInput, optFns ...func(*Options)) (*GetBucketMetricsConfigurationOutput, error) {
|
||||
if params == nil {
|
||||
params = &GetBucketMetricsConfigurationInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "GetBucketMetricsConfiguration", params, optFns, c.addOperationGetBucketMetricsConfigurationMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*GetBucketMetricsConfigurationOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type GetBucketMetricsConfigurationInput struct {
|
||||
|
||||
// The name of the bucket containing the metrics configuration to retrieve.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The ID used to identify the metrics configuration.
|
||||
//
|
||||
// This member is required.
|
||||
Id *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type GetBucketMetricsConfigurationOutput struct {
|
||||
|
||||
// Specifies the metrics configuration.
|
||||
MetricsConfiguration *types.MetricsConfiguration
|
||||
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationGetBucketMetricsConfigurationMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpGetBucketMetricsConfiguration{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpGetBucketMetricsConfiguration{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpGetBucketMetricsConfigurationValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opGetBucketMetricsConfiguration(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addGetBucketMetricsConfigurationUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opGetBucketMetricsConfiguration(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "GetBucketMetricsConfiguration",
|
||||
}
|
||||
}
|
||||
|
||||
// getGetBucketMetricsConfigurationBucketMember returns a pointer to string
|
||||
// denoting a provided bucket member valueand a boolean indicating if the input has
|
||||
// a modeled bucket name,
|
||||
func getGetBucketMetricsConfigurationBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*GetBucketMetricsConfigurationInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addGetBucketMetricsConfigurationUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getGetBucketMetricsConfigurationBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
190
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketNotificationConfiguration.go
generated
vendored
Normal file
190
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketNotificationConfiguration.go
generated
vendored
Normal file
@@ -0,0 +1,190 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Returns the notification configuration of a bucket. If notifications are not
|
||||
// enabled on the bucket, the action returns an empty NotificationConfiguration
|
||||
// element. By default, you must be the bucket owner to read the notification
|
||||
// configuration of a bucket. However, the bucket owner can use a bucket policy to
|
||||
// grant permission to other users to read this configuration with the
|
||||
// s3:GetBucketNotification permission. For more information about setting and
|
||||
// reading the notification configuration on a bucket, see Setting Up Notification
|
||||
// of Bucket Events
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html). For
|
||||
// more information about bucket policies, see Using Bucket Policies
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html). The
|
||||
// following action is related to GetBucketNotification:
|
||||
//
|
||||
// * PutBucketNotification
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketNotification.html)
|
||||
func (c *Client) GetBucketNotificationConfiguration(ctx context.Context, params *GetBucketNotificationConfigurationInput, optFns ...func(*Options)) (*GetBucketNotificationConfigurationOutput, error) {
|
||||
if params == nil {
|
||||
params = &GetBucketNotificationConfigurationInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "GetBucketNotificationConfiguration", params, optFns, c.addOperationGetBucketNotificationConfigurationMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*GetBucketNotificationConfigurationOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type GetBucketNotificationConfigurationInput struct {
|
||||
|
||||
// The name of the bucket for which to get the notification configuration.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
// A container for specifying the notification configuration of the bucket. If this
|
||||
// element is empty, notifications are turned off for the bucket.
|
||||
type GetBucketNotificationConfigurationOutput struct {
|
||||
|
||||
// Describes the Lambda functions to invoke and the events for which to invoke
|
||||
// them.
|
||||
LambdaFunctionConfigurations []types.LambdaFunctionConfiguration
|
||||
|
||||
// The Amazon Simple Queue Service queues to publish messages to and the events for
|
||||
// which to publish messages.
|
||||
QueueConfigurations []types.QueueConfiguration
|
||||
|
||||
// The topic to which notifications are sent and the events for which notifications
|
||||
// are generated.
|
||||
TopicConfigurations []types.TopicConfiguration
|
||||
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationGetBucketNotificationConfigurationMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpGetBucketNotificationConfiguration{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpGetBucketNotificationConfiguration{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpGetBucketNotificationConfigurationValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opGetBucketNotificationConfiguration(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addGetBucketNotificationConfigurationUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opGetBucketNotificationConfiguration(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "GetBucketNotificationConfiguration",
|
||||
}
|
||||
}
|
||||
|
||||
// getGetBucketNotificationConfigurationBucketMember returns a pointer to string
|
||||
// denoting a provided bucket member valueand a boolean indicating if the input has
|
||||
// a modeled bucket name,
|
||||
func getGetBucketNotificationConfigurationBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*GetBucketNotificationConfigurationInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addGetBucketNotificationConfigurationUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getGetBucketNotificationConfigurationBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
177
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketOwnershipControls.go
generated
vendored
Normal file
177
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketOwnershipControls.go
generated
vendored
Normal file
@@ -0,0 +1,177 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Retrieves OwnershipControls for an Amazon S3 bucket. To use this operation, you
|
||||
// must have the s3:GetBucketOwnershipControls permission. For more information
|
||||
// about Amazon S3 permissions, see Specifying Permissions in a Policy
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html).
|
||||
// For information about Amazon S3 Object Ownership, see Using Object Ownership
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/about-object-ownership.html).
|
||||
// The following operations are related to GetBucketOwnershipControls:
|
||||
//
|
||||
// *
|
||||
// PutBucketOwnershipControls
|
||||
//
|
||||
// * DeleteBucketOwnershipControls
|
||||
func (c *Client) GetBucketOwnershipControls(ctx context.Context, params *GetBucketOwnershipControlsInput, optFns ...func(*Options)) (*GetBucketOwnershipControlsOutput, error) {
|
||||
if params == nil {
|
||||
params = &GetBucketOwnershipControlsInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "GetBucketOwnershipControls", params, optFns, c.addOperationGetBucketOwnershipControlsMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*GetBucketOwnershipControlsOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type GetBucketOwnershipControlsInput struct {
|
||||
|
||||
// The name of the Amazon S3 bucket whose OwnershipControls you want to retrieve.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type GetBucketOwnershipControlsOutput struct {
|
||||
|
||||
// The OwnershipControls (BucketOwnerPreferred or ObjectWriter) currently in effect
|
||||
// for this Amazon S3 bucket.
|
||||
OwnershipControls *types.OwnershipControls
|
||||
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationGetBucketOwnershipControlsMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpGetBucketOwnershipControls{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpGetBucketOwnershipControls{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpGetBucketOwnershipControlsValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opGetBucketOwnershipControls(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addGetBucketOwnershipControlsUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opGetBucketOwnershipControls(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "GetBucketOwnershipControls",
|
||||
}
|
||||
}
|
||||
|
||||
// getGetBucketOwnershipControlsBucketMember returns a pointer to string denoting a
|
||||
// provided bucket member valueand a boolean indicating if the input has a modeled
|
||||
// bucket name,
|
||||
func getGetBucketOwnershipControlsBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*GetBucketOwnershipControlsInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addGetBucketOwnershipControlsUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getGetBucketOwnershipControlsBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
180
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketPolicy.go
generated
vendored
Normal file
180
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketPolicy.go
generated
vendored
Normal file
@@ -0,0 +1,180 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Returns the policy of a specified 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 GetBucketPolicy permissions on the specified
|
||||
// bucket and belong to the bucket owner's account in order to use this operation.
|
||||
// If you don't have GetBucketPolicy 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 operation, 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). The
|
||||
// following action is related to GetBucketPolicy:
|
||||
//
|
||||
// * GetObject
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html)
|
||||
func (c *Client) GetBucketPolicy(ctx context.Context, params *GetBucketPolicyInput, optFns ...func(*Options)) (*GetBucketPolicyOutput, error) {
|
||||
if params == nil {
|
||||
params = &GetBucketPolicyInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "GetBucketPolicy", params, optFns, c.addOperationGetBucketPolicyMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*GetBucketPolicyOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type GetBucketPolicyInput struct {
|
||||
|
||||
// The bucket name for which to get the bucket policy.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type GetBucketPolicyOutput struct {
|
||||
|
||||
// The bucket policy as a JSON document.
|
||||
Policy *string
|
||||
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationGetBucketPolicyMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpGetBucketPolicy{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpGetBucketPolicy{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpGetBucketPolicyValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opGetBucketPolicy(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addGetBucketPolicyUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opGetBucketPolicy(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "GetBucketPolicy",
|
||||
}
|
||||
}
|
||||
|
||||
// getGetBucketPolicyBucketMember returns a pointer to string denoting a provided
|
||||
// bucket member valueand a boolean indicating if the input has a modeled bucket
|
||||
// name,
|
||||
func getGetBucketPolicyBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*GetBucketPolicyInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addGetBucketPolicyUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getGetBucketPolicyBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
189
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketPolicyStatus.go
generated
vendored
Normal file
189
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketPolicyStatus.go
generated
vendored
Normal file
@@ -0,0 +1,189 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Retrieves the policy status for an Amazon S3 bucket, indicating whether the
|
||||
// bucket is public. In order to use this operation, you must have the
|
||||
// s3:GetBucketPolicyStatus permission. For more information about Amazon S3
|
||||
// permissions, see Specifying Permissions in a Policy
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html).
|
||||
// For more information about when Amazon S3 considers a bucket 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).
|
||||
// The following operations are related to GetBucketPolicyStatus:
|
||||
//
|
||||
// * Using Amazon
|
||||
// S3 Block Public Access
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html)
|
||||
//
|
||||
// *
|
||||
// GetPublicAccessBlock
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetPublicAccessBlock.html)
|
||||
//
|
||||
// *
|
||||
// PutPublicAccessBlock
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutPublicAccessBlock.html)
|
||||
//
|
||||
// *
|
||||
// DeletePublicAccessBlock
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeletePublicAccessBlock.html)
|
||||
func (c *Client) GetBucketPolicyStatus(ctx context.Context, params *GetBucketPolicyStatusInput, optFns ...func(*Options)) (*GetBucketPolicyStatusOutput, error) {
|
||||
if params == nil {
|
||||
params = &GetBucketPolicyStatusInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "GetBucketPolicyStatus", params, optFns, c.addOperationGetBucketPolicyStatusMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*GetBucketPolicyStatusOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type GetBucketPolicyStatusInput struct {
|
||||
|
||||
// The name of the Amazon S3 bucket whose policy status you want to retrieve.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type GetBucketPolicyStatusOutput struct {
|
||||
|
||||
// The policy status for the specified bucket.
|
||||
PolicyStatus *types.PolicyStatus
|
||||
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationGetBucketPolicyStatusMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpGetBucketPolicyStatus{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpGetBucketPolicyStatus{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpGetBucketPolicyStatusValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opGetBucketPolicyStatus(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addGetBucketPolicyStatusUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opGetBucketPolicyStatus(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "GetBucketPolicyStatus",
|
||||
}
|
||||
}
|
||||
|
||||
// getGetBucketPolicyStatusBucketMember returns a pointer to string denoting a
|
||||
// provided bucket member valueand a boolean indicating if the input has a modeled
|
||||
// bucket name,
|
||||
func getGetBucketPolicyStatusBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*GetBucketPolicyStatusInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addGetBucketPolicyStatusUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getGetBucketPolicyStatusBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
188
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketReplication.go
generated
vendored
Normal file
188
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketReplication.go
generated
vendored
Normal file
@@ -0,0 +1,188 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Returns the replication configuration of a bucket. It can take a while to
|
||||
// propagate the put or delete a replication configuration to all Amazon S3
|
||||
// systems. Therefore, a get request soon after put or delete can return a wrong
|
||||
// result. For information about replication configuration, see Replication
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/replication.html) in the Amazon
|
||||
// S3 User Guide. This action requires permissions for the
|
||||
// s3:GetReplicationConfiguration action. For more information about permissions,
|
||||
// see Using Bucket Policies and User Policies
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html). If
|
||||
// you include the Filter element in a replication configuration, you must also
|
||||
// include the DeleteMarkerReplication and Priority elements. The response also
|
||||
// returns those elements. For information about GetBucketReplication errors, see
|
||||
// List of replication-related error codes
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ReplicationErrorCodeList)
|
||||
// The following operations are related to GetBucketReplication:
|
||||
//
|
||||
// *
|
||||
// PutBucketReplication
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketReplication.html)
|
||||
//
|
||||
// *
|
||||
// DeleteBucketReplication
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketReplication.html)
|
||||
func (c *Client) GetBucketReplication(ctx context.Context, params *GetBucketReplicationInput, optFns ...func(*Options)) (*GetBucketReplicationOutput, error) {
|
||||
if params == nil {
|
||||
params = &GetBucketReplicationInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "GetBucketReplication", params, optFns, c.addOperationGetBucketReplicationMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*GetBucketReplicationOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type GetBucketReplicationInput struct {
|
||||
|
||||
// The bucket name for which to get the replication information.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type GetBucketReplicationOutput struct {
|
||||
|
||||
// A container for replication rules. You can add up to 1,000 rules. The maximum
|
||||
// size of a replication configuration is 2 MB.
|
||||
ReplicationConfiguration *types.ReplicationConfiguration
|
||||
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationGetBucketReplicationMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpGetBucketReplication{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpGetBucketReplication{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpGetBucketReplicationValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opGetBucketReplication(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addGetBucketReplicationUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opGetBucketReplication(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "GetBucketReplication",
|
||||
}
|
||||
}
|
||||
|
||||
// getGetBucketReplicationBucketMember returns a pointer to string denoting a
|
||||
// provided bucket member valueand a boolean indicating if the input has a modeled
|
||||
// bucket name,
|
||||
func getGetBucketReplicationBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*GetBucketReplicationInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addGetBucketReplicationUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getGetBucketReplicationBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
172
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketRequestPayment.go
generated
vendored
Normal file
172
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketRequestPayment.go
generated
vendored
Normal file
@@ -0,0 +1,172 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Returns the request payment configuration of a bucket. To use this version of
|
||||
// the operation, you must be the bucket owner. For more information, see Requester
|
||||
// Pays Buckets
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/RequesterPaysBuckets.html). The
|
||||
// following operations are related to GetBucketRequestPayment:
|
||||
//
|
||||
// * ListObjects
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjects.html)
|
||||
func (c *Client) GetBucketRequestPayment(ctx context.Context, params *GetBucketRequestPaymentInput, optFns ...func(*Options)) (*GetBucketRequestPaymentOutput, error) {
|
||||
if params == nil {
|
||||
params = &GetBucketRequestPaymentInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "GetBucketRequestPayment", params, optFns, c.addOperationGetBucketRequestPaymentMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*GetBucketRequestPaymentOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type GetBucketRequestPaymentInput struct {
|
||||
|
||||
// The name of the bucket for which to get the payment request configuration
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type GetBucketRequestPaymentOutput struct {
|
||||
|
||||
// Specifies who pays for the download and request fees.
|
||||
Payer types.Payer
|
||||
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationGetBucketRequestPaymentMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpGetBucketRequestPayment{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpGetBucketRequestPayment{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpGetBucketRequestPaymentValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opGetBucketRequestPayment(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addGetBucketRequestPaymentUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opGetBucketRequestPayment(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "GetBucketRequestPayment",
|
||||
}
|
||||
}
|
||||
|
||||
// getGetBucketRequestPaymentBucketMember returns a pointer to string denoting a
|
||||
// provided bucket member valueand a boolean indicating if the input has a modeled
|
||||
// bucket name,
|
||||
func getGetBucketRequestPaymentBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*GetBucketRequestPaymentInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addGetBucketRequestPaymentUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getGetBucketRequestPaymentBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
186
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketTagging.go
generated
vendored
Normal file
186
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketTagging.go
generated
vendored
Normal file
@@ -0,0 +1,186 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Returns the tag set associated with the bucket. To use this operation, you must
|
||||
// have permission to perform the s3: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.
|
||||
//
|
||||
// The following operations are related to GetBucketTagging:
|
||||
//
|
||||
// *
|
||||
// PutBucketTagging
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketTagging.html)
|
||||
//
|
||||
// *
|
||||
// DeleteBucketTagging
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketTagging.html)
|
||||
func (c *Client) GetBucketTagging(ctx context.Context, params *GetBucketTaggingInput, optFns ...func(*Options)) (*GetBucketTaggingOutput, error) {
|
||||
if params == nil {
|
||||
params = &GetBucketTaggingInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "GetBucketTagging", params, optFns, c.addOperationGetBucketTaggingMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*GetBucketTaggingOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type GetBucketTaggingInput struct {
|
||||
|
||||
// The name of the bucket for which to get the tagging information.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type GetBucketTaggingOutput struct {
|
||||
|
||||
// Contains the tag set.
|
||||
//
|
||||
// This member is required.
|
||||
TagSet []types.Tag
|
||||
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationGetBucketTaggingMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpGetBucketTagging{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpGetBucketTagging{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpGetBucketTaggingValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opGetBucketTagging(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addGetBucketTaggingUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opGetBucketTagging(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "GetBucketTagging",
|
||||
}
|
||||
}
|
||||
|
||||
// getGetBucketTaggingBucketMember returns a pointer to string denoting a provided
|
||||
// bucket member valueand a boolean indicating if the input has a modeled bucket
|
||||
// name,
|
||||
func getGetBucketTaggingBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*GetBucketTaggingInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addGetBucketTaggingUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getGetBucketTaggingBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
186
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketVersioning.go
generated
vendored
Normal file
186
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketVersioning.go
generated
vendored
Normal file
@@ -0,0 +1,186 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Returns the versioning state of a bucket. To retrieve the versioning state of a
|
||||
// bucket, you must be the bucket owner. This implementation also returns the MFA
|
||||
// Delete status of the versioning state. If the MFA Delete status is enabled, the
|
||||
// bucket owner must use an authentication device to change the versioning state of
|
||||
// the bucket. The following operations are related to GetBucketVersioning:
|
||||
//
|
||||
// *
|
||||
// GetObject
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html)
|
||||
//
|
||||
// *
|
||||
// PutObject
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html)
|
||||
//
|
||||
// *
|
||||
// DeleteObject
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObject.html)
|
||||
func (c *Client) GetBucketVersioning(ctx context.Context, params *GetBucketVersioningInput, optFns ...func(*Options)) (*GetBucketVersioningOutput, error) {
|
||||
if params == nil {
|
||||
params = &GetBucketVersioningInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "GetBucketVersioning", params, optFns, c.addOperationGetBucketVersioningMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*GetBucketVersioningOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type GetBucketVersioningInput struct {
|
||||
|
||||
// The name of the bucket for which to get the versioning information.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type GetBucketVersioningOutput struct {
|
||||
|
||||
// Specifies whether MFA delete is enabled in the bucket versioning configuration.
|
||||
// This element is only returned if the bucket has been configured with MFA delete.
|
||||
// If the bucket has never been so configured, this element is not returned.
|
||||
MFADelete types.MFADeleteStatus
|
||||
|
||||
// The versioning state of the bucket.
|
||||
Status types.BucketVersioningStatus
|
||||
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationGetBucketVersioningMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpGetBucketVersioning{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpGetBucketVersioning{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpGetBucketVersioningValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opGetBucketVersioning(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addGetBucketVersioningUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opGetBucketVersioning(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "GetBucketVersioning",
|
||||
}
|
||||
}
|
||||
|
||||
// getGetBucketVersioningBucketMember returns a pointer to string denoting a
|
||||
// provided bucket member valueand a boolean indicating if the input has a modeled
|
||||
// bucket name,
|
||||
func getGetBucketVersioningBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*GetBucketVersioningInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addGetBucketVersioningUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getGetBucketVersioningBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
190
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketWebsite.go
generated
vendored
Normal file
190
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketWebsite.go
generated
vendored
Normal file
@@ -0,0 +1,190 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Returns the website configuration for a bucket. To host website on Amazon S3,
|
||||
// you can configure a bucket as website by adding a website configuration. For
|
||||
// more information about hosting websites, see Hosting Websites on Amazon S3
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/WebsiteHosting.html). This GET
|
||||
// action requires the S3:GetBucketWebsite permission. By default, only the bucket
|
||||
// owner can read the bucket website configuration. However, bucket owners can
|
||||
// allow other users to read the website configuration by writing a bucket policy
|
||||
// granting them the S3:GetBucketWebsite permission. The following operations are
|
||||
// related to DeleteBucketWebsite:
|
||||
//
|
||||
// * DeleteBucketWebsite
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketWebsite.html)
|
||||
//
|
||||
// *
|
||||
// PutBucketWebsite
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketWebsite.html)
|
||||
func (c *Client) GetBucketWebsite(ctx context.Context, params *GetBucketWebsiteInput, optFns ...func(*Options)) (*GetBucketWebsiteOutput, error) {
|
||||
if params == nil {
|
||||
params = &GetBucketWebsiteInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "GetBucketWebsite", params, optFns, c.addOperationGetBucketWebsiteMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*GetBucketWebsiteOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type GetBucketWebsiteInput struct {
|
||||
|
||||
// The bucket name for which to get the website configuration.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type GetBucketWebsiteOutput struct {
|
||||
|
||||
// The object key name of the website error document to use for 4XX class errors.
|
||||
ErrorDocument *types.ErrorDocument
|
||||
|
||||
// The name of the index document for the website (for example index.html).
|
||||
IndexDocument *types.IndexDocument
|
||||
|
||||
// Specifies the redirect behavior of all requests to a website endpoint of an
|
||||
// Amazon S3 bucket.
|
||||
RedirectAllRequestsTo *types.RedirectAllRequestsTo
|
||||
|
||||
// Rules that define when a redirect is applied and the redirect behavior.
|
||||
RoutingRules []types.RoutingRule
|
||||
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationGetBucketWebsiteMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpGetBucketWebsite{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpGetBucketWebsite{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpGetBucketWebsiteValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opGetBucketWebsite(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addGetBucketWebsiteUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opGetBucketWebsite(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "GetBucketWebsite",
|
||||
}
|
||||
}
|
||||
|
||||
// getGetBucketWebsiteBucketMember returns a pointer to string denoting a provided
|
||||
// bucket member valueand a boolean indicating if the input has a modeled bucket
|
||||
// name,
|
||||
func getGetBucketWebsiteBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*GetBucketWebsiteInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addGetBucketWebsiteUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getGetBucketWebsiteBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
534
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetObject.go
generated
vendored
Normal file
534
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetObject.go
generated
vendored
Normal file
@@ -0,0 +1,534 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
"io"
|
||||
"time"
|
||||
)
|
||||
|
||||
// Retrieves objects from Amazon S3. To use GET, you must have READ access to the
|
||||
// object. If you grant READ access to the anonymous user, you can return the
|
||||
// object without using an authorization header. An Amazon S3 bucket has no
|
||||
// directory hierarchy such as you would find in a typical computer file system.
|
||||
// You can, however, create a logical hierarchy by using object key names that
|
||||
// imply a folder structure. For example, instead of naming an object sample.jpg,
|
||||
// you can name it photos/2006/February/sample.jpg. To get an object from such a
|
||||
// logical hierarchy, specify the full key name for the object in the GET
|
||||
// operation. For a virtual hosted-style request example, if you have the object
|
||||
// photos/2006/February/sample.jpg, specify the resource as
|
||||
// /photos/2006/February/sample.jpg. For a path-style request example, if you have
|
||||
// the object photos/2006/February/sample.jpg in the bucket named examplebucket,
|
||||
// specify the resource as /examplebucket/photos/2006/February/sample.jpg. For more
|
||||
// information about request types, see HTTP Host Header Bucket Specification
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/VirtualHosting.html#VirtualHostingSpecifyBucket).
|
||||
// To distribute large files to many people, you can save bandwidth costs by using
|
||||
// BitTorrent. For more information, see Amazon S3 Torrent
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/S3Torrent.html). For more
|
||||
// information about returning the ACL of an object, see GetObjectAcl
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectAcl.html). If the
|
||||
// object you are retrieving is stored in the S3 Glacier or S3 Glacier Deep Archive
|
||||
// storage class, or S3 Intelligent-Tiering Archive or S3 Intelligent-Tiering Deep
|
||||
// Archive tiers, before you can retrieve the object you must first restore a copy
|
||||
// using RestoreObject
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_RestoreObject.html).
|
||||
// Otherwise, this action returns an InvalidObjectStateError error. For information
|
||||
// about restoring archived objects, see Restoring Archived Objects
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/restoring-objects.html).
|
||||
// Encryption request headers, like x-amz-server-side-encryption, should not be
|
||||
// sent for GET requests if your object uses server-side encryption with KMS keys
|
||||
// (SSE-KMS) or server-side encryption with Amazon S3–managed encryption keys
|
||||
// (SSE-S3). If your object does use these types of keys, you’ll get an HTTP 400
|
||||
// BadRequest error. If you encrypt an object by using server-side encryption with
|
||||
// customer-provided encryption keys (SSE-C) when you store the object in Amazon
|
||||
// S3, then when you GET the object, you must use the following headers:
|
||||
//
|
||||
// *
|
||||
// x-amz-server-side-encryption-customer-algorithm
|
||||
//
|
||||
// *
|
||||
// x-amz-server-side-encryption-customer-key
|
||||
//
|
||||
// *
|
||||
// x-amz-server-side-encryption-customer-key-MD5
|
||||
//
|
||||
// For more information about SSE-C,
|
||||
// see Server-Side Encryption (Using Customer-Provided Encryption Keys)
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html).
|
||||
// Assuming you have the relevant permission to read object tags, the response also
|
||||
// returns the x-amz-tagging-count header that provides the count of number of tags
|
||||
// associated with the object. You can use GetObjectTagging
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectTagging.html) to
|
||||
// retrieve the tag set associated with an object. Permissions You need the
|
||||
// relevant read object (or version) permission for this operation. For more
|
||||
// information, see Specifying Permissions in a Policy
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html). If
|
||||
// the object you request does not exist, the error Amazon S3 returns depends on
|
||||
// whether you also have the s3:ListBucket permission.
|
||||
//
|
||||
// * If you have the
|
||||
// s3:ListBucket permission on the bucket, Amazon S3 will return an HTTP status
|
||||
// code 404 ("no such key") error.
|
||||
//
|
||||
// * If you don’t have the s3:ListBucket
|
||||
// permission, Amazon S3 will return an HTTP status code 403 ("access denied")
|
||||
// error.
|
||||
//
|
||||
// Versioning By default, the GET action returns the current version of an
|
||||
// object. To return a different version, use the versionId subresource.
|
||||
//
|
||||
// * You
|
||||
// need the s3:GetObjectVersion permission to access a specific version of an
|
||||
// object.
|
||||
//
|
||||
// * If the current version of the object is a delete marker, Amazon S3
|
||||
// behaves as if the object was deleted and includes x-amz-delete-marker: true in
|
||||
// the response.
|
||||
//
|
||||
// For more information about versioning, see PutBucketVersioning
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketVersioning.html).
|
||||
// Overriding Response Header Values There are times when you want to override
|
||||
// certain response header values in a GET response. For example, you might
|
||||
// override the Content-Disposition response header value in your GET request. You
|
||||
// can override values for a set of response headers using the following query
|
||||
// parameters. These response header values are sent only on a successful request,
|
||||
// that is, when status code 200 OK is returned. The set of headers you can
|
||||
// override using these parameters is a subset of the headers that Amazon S3
|
||||
// accepts when you create an object. The response headers that you can override
|
||||
// for the GET response are Content-Type, Content-Language, Expires, Cache-Control,
|
||||
// Content-Disposition, and Content-Encoding. To override these header values in
|
||||
// the GET response, you use the following request parameters. You must sign the
|
||||
// request, either using an Authorization header or a presigned URL, when using
|
||||
// these parameters. They cannot be used with an unsigned (anonymous) request.
|
||||
//
|
||||
// *
|
||||
// response-content-type
|
||||
//
|
||||
// * response-content-language
|
||||
//
|
||||
// * response-expires
|
||||
//
|
||||
// *
|
||||
// response-cache-control
|
||||
//
|
||||
// * response-content-disposition
|
||||
//
|
||||
// *
|
||||
// response-content-encoding
|
||||
//
|
||||
// Additional Considerations about Request Headers If
|
||||
// both of the If-Match and If-Unmodified-Since headers are present in the request
|
||||
// as follows: If-Match condition evaluates to true, and; If-Unmodified-Since
|
||||
// condition evaluates to false; then, S3 returns 200 OK and the data requested. If
|
||||
// both of the If-None-Match and If-Modified-Since headers are present in the
|
||||
// request as follows: If-None-Match condition evaluates to false, and;
|
||||
// If-Modified-Since condition evaluates to true; then, S3 returns 304 Not Modified
|
||||
// response code. For more information about conditional requests, see RFC 7232
|
||||
// (https://tools.ietf.org/html/rfc7232). The following operations are related to
|
||||
// GetObject:
|
||||
//
|
||||
// * ListBuckets
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBuckets.html)
|
||||
//
|
||||
// *
|
||||
// GetObjectAcl
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectAcl.html)
|
||||
func (c *Client) GetObject(ctx context.Context, params *GetObjectInput, optFns ...func(*Options)) (*GetObjectOutput, error) {
|
||||
if params == nil {
|
||||
params = &GetObjectInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "GetObject", params, optFns, c.addOperationGetObjectMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*GetObjectOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type GetObjectInput struct {
|
||||
|
||||
// The bucket name containing the object. When using this action with an access
|
||||
// point, you must direct requests to the access point hostname. The access point
|
||||
// hostname takes the form
|
||||
// AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this
|
||||
// action with an access point through the Amazon Web Services SDKs, you provide
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see Using access points
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide. When using an Object Lambda access point the
|
||||
// hostname takes the form
|
||||
// AccessPointName-AccountId.s3-object-lambda.Region.amazonaws.com. When using this
|
||||
// action with Amazon S3 on Outposts, you must direct requests to the S3 on
|
||||
// Outposts hostname. The S3 on Outposts hostname takes the form
|
||||
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When using
|
||||
// this action using S3 on Outposts through the Amazon Web Services SDKs, you
|
||||
// provide the Outposts bucket ARN in place of the bucket name. For more
|
||||
// information about S3 on Outposts ARNs, see Using S3 on Outposts
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) in the
|
||||
// Amazon S3 User Guide.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// Key of the object to get.
|
||||
//
|
||||
// This member is required.
|
||||
Key *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
// Return the object only if its entity tag (ETag) is the same as the one
|
||||
// specified, otherwise return a 412 (precondition failed).
|
||||
IfMatch *string
|
||||
|
||||
// Return the object only if it has been modified since the specified time,
|
||||
// otherwise return a 304 (not modified).
|
||||
IfModifiedSince *time.Time
|
||||
|
||||
// Return the object only if its entity tag (ETag) is different from the one
|
||||
// specified, otherwise return a 304 (not modified).
|
||||
IfNoneMatch *string
|
||||
|
||||
// Return the object only if it has not been modified since the specified time,
|
||||
// otherwise return a 412 (precondition failed).
|
||||
IfUnmodifiedSince *time.Time
|
||||
|
||||
// Part number of the object being read. This is a positive integer between 1 and
|
||||
// 10,000. Effectively performs a 'ranged' GET request for the part specified.
|
||||
// Useful for downloading just a part of an object.
|
||||
PartNumber int32
|
||||
|
||||
// Downloads the specified range bytes of an object. For more information about the
|
||||
// HTTP Range header, see
|
||||
// https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35
|
||||
// (https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35). Amazon S3
|
||||
// doesn't support retrieving multiple ranges of data per GET request.
|
||||
Range *string
|
||||
|
||||
// Confirms that the requester knows that they will be charged for the request.
|
||||
// Bucket owners need not specify this parameter in their requests. For information
|
||||
// about downloading objects from requester pays buckets, see Downloading Objects
|
||||
// in Requestor Pays Buckets
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
RequestPayer types.RequestPayer
|
||||
|
||||
// Sets the Cache-Control header of the response.
|
||||
ResponseCacheControl *string
|
||||
|
||||
// Sets the Content-Disposition header of the response
|
||||
ResponseContentDisposition *string
|
||||
|
||||
// Sets the Content-Encoding header of the response.
|
||||
ResponseContentEncoding *string
|
||||
|
||||
// Sets the Content-Language header of the response.
|
||||
ResponseContentLanguage *string
|
||||
|
||||
// Sets the Content-Type header of the response.
|
||||
ResponseContentType *string
|
||||
|
||||
// Sets the Expires header of the response.
|
||||
ResponseExpires *time.Time
|
||||
|
||||
// Specifies the algorithm to use to when decrypting the object (for example,
|
||||
// AES256).
|
||||
SSECustomerAlgorithm *string
|
||||
|
||||
// Specifies the customer-provided encryption key for Amazon S3 used to encrypt the
|
||||
// data. This value is used to decrypt the object when recovering it and must match
|
||||
// the one used when storing the data. The key must be appropriate for use with the
|
||||
// algorithm specified in the x-amz-server-side-encryption-customer-algorithm
|
||||
// header.
|
||||
SSECustomerKey *string
|
||||
|
||||
// Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321.
|
||||
// Amazon S3 uses this header for a message integrity check to ensure that the
|
||||
// encryption key was transmitted without error.
|
||||
SSECustomerKeyMD5 *string
|
||||
|
||||
// VersionId used to reference a specific version of the object.
|
||||
VersionId *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type GetObjectOutput struct {
|
||||
|
||||
// Indicates that a range of bytes was specified.
|
||||
AcceptRanges *string
|
||||
|
||||
// Object data.
|
||||
Body io.ReadCloser
|
||||
|
||||
// Indicates whether the object uses an S3 Bucket Key for server-side encryption
|
||||
// with Amazon Web Services KMS (SSE-KMS).
|
||||
BucketKeyEnabled bool
|
||||
|
||||
// Specifies caching behavior along the request/reply chain.
|
||||
CacheControl *string
|
||||
|
||||
// Specifies presentational information for the object.
|
||||
ContentDisposition *string
|
||||
|
||||
// Specifies what content encodings have been applied to the object and thus what
|
||||
// decoding mechanisms must be applied to obtain the media-type referenced by the
|
||||
// Content-Type header field.
|
||||
ContentEncoding *string
|
||||
|
||||
// The language the content is in.
|
||||
ContentLanguage *string
|
||||
|
||||
// Size of the body in bytes.
|
||||
ContentLength int64
|
||||
|
||||
// The portion of the object returned in the response.
|
||||
ContentRange *string
|
||||
|
||||
// A standard MIME type describing the format of the object data.
|
||||
ContentType *string
|
||||
|
||||
// Specifies whether the object retrieved was (true) or was not (false) a Delete
|
||||
// Marker. If false, this response header does not appear in the response.
|
||||
DeleteMarker bool
|
||||
|
||||
// An ETag is an opaque identifier assigned by a web server to a specific version
|
||||
// of a resource found at a URL.
|
||||
ETag *string
|
||||
|
||||
// If the object expiration is configured (see PUT Bucket lifecycle), the response
|
||||
// includes this header. It includes the expiry-date and rule-id key-value pairs
|
||||
// providing object expiration information. The value of the rule-id is URL
|
||||
// encoded.
|
||||
Expiration *string
|
||||
|
||||
// The date and time at which the object is no longer cacheable.
|
||||
Expires *time.Time
|
||||
|
||||
// Creation date of the object.
|
||||
LastModified *time.Time
|
||||
|
||||
// A map of metadata to store with the object in S3.
|
||||
//
|
||||
// Map keys will be normalized to lower-case.
|
||||
Metadata map[string]string
|
||||
|
||||
// This is set to the number of metadata entries not returned in x-amz-meta
|
||||
// headers. This can happen if you create metadata using an API like SOAP that
|
||||
// supports more flexible metadata than the REST API. For example, using SOAP, you
|
||||
// can create metadata whose values are not legal HTTP headers.
|
||||
MissingMeta int32
|
||||
|
||||
// Indicates whether this object has an active legal hold. This field is only
|
||||
// returned if you have permission to view an object's legal hold status.
|
||||
ObjectLockLegalHoldStatus types.ObjectLockLegalHoldStatus
|
||||
|
||||
// The Object Lock mode currently in place for this object.
|
||||
ObjectLockMode types.ObjectLockMode
|
||||
|
||||
// The date and time when this object's Object Lock will expire.
|
||||
ObjectLockRetainUntilDate *time.Time
|
||||
|
||||
// The count of parts this object has.
|
||||
PartsCount int32
|
||||
|
||||
// Amazon S3 can return this if your request involves a bucket that is either a
|
||||
// source or destination in a replication rule.
|
||||
ReplicationStatus types.ReplicationStatus
|
||||
|
||||
// If present, indicates that the requester was successfully charged for the
|
||||
// request.
|
||||
RequestCharged types.RequestCharged
|
||||
|
||||
// Provides information about object restoration action and expiration time of the
|
||||
// restored object copy.
|
||||
Restore *string
|
||||
|
||||
// If server-side encryption with a customer-provided encryption key was requested,
|
||||
// the response will include this header confirming the encryption algorithm used.
|
||||
SSECustomerAlgorithm *string
|
||||
|
||||
// If server-side encryption with a customer-provided encryption key was requested,
|
||||
// the response will include this header to provide round-trip message integrity
|
||||
// verification of the customer-provided encryption key.
|
||||
SSECustomerKeyMD5 *string
|
||||
|
||||
// If present, specifies the ID of the Amazon Web Services Key Management Service
|
||||
// (Amazon Web Services KMS) symmetric customer managed key that was used for the
|
||||
// object.
|
||||
SSEKMSKeyId *string
|
||||
|
||||
// The server-side encryption algorithm used when storing this object in Amazon S3
|
||||
// (for example, AES256, aws:kms).
|
||||
ServerSideEncryption types.ServerSideEncryption
|
||||
|
||||
// Provides storage class information of the object. Amazon S3 returns this header
|
||||
// for all objects except for S3 Standard storage class objects.
|
||||
StorageClass types.StorageClass
|
||||
|
||||
// The number of tags, if any, on the object.
|
||||
TagCount int32
|
||||
|
||||
// Version of the object.
|
||||
VersionId *string
|
||||
|
||||
// If the bucket is configured as a website, redirects requests for this object to
|
||||
// another object in the same bucket or to an external URL. Amazon S3 stores the
|
||||
// value of this header in the object metadata.
|
||||
WebsiteRedirectLocation *string
|
||||
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationGetObjectMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpGetObject{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpGetObject{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpGetObjectValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opGetObject(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addGetObjectUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opGetObject(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "GetObject",
|
||||
}
|
||||
}
|
||||
|
||||
// getGetObjectBucketMember returns a pointer to string denoting a provided bucket
|
||||
// member valueand a boolean indicating if the input has a modeled bucket name,
|
||||
func getGetObjectBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*GetObjectInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addGetObjectUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getGetObjectBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
|
||||
// PresignGetObject is used to generate a presigned HTTP Request which contains
|
||||
// presigned URL, signed headers and HTTP method used.
|
||||
func (c *PresignClient) PresignGetObject(ctx context.Context, params *GetObjectInput, optFns ...func(*PresignOptions)) (*v4.PresignedHTTPRequest, error) {
|
||||
if params == nil {
|
||||
params = &GetObjectInput{}
|
||||
}
|
||||
options := c.options.copy()
|
||||
for _, fn := range optFns {
|
||||
fn(&options)
|
||||
}
|
||||
clientOptFns := append(options.ClientOptions, withNopHTTPClientAPIOption)
|
||||
|
||||
result, _, err := c.client.invokeOperation(ctx, "GetObject", params, clientOptFns,
|
||||
c.client.addOperationGetObjectMiddlewares,
|
||||
presignConverter(options).convertToPresignMiddleware,
|
||||
addGetObjectPayloadAsUnsigned,
|
||||
)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*v4.PresignedHTTPRequest)
|
||||
return out, nil
|
||||
}
|
||||
|
||||
func addGetObjectPayloadAsUnsigned(stack *middleware.Stack, options Options) error {
|
||||
v4.RemoveContentSHA256HeaderMiddleware(stack)
|
||||
v4.RemoveComputePayloadSHA256Middleware(stack)
|
||||
return v4.AddUnsignedPayloadMiddleware(stack)
|
||||
}
|
||||
211
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetObjectAcl.go
generated
vendored
Normal file
211
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetObjectAcl.go
generated
vendored
Normal file
@@ -0,0 +1,211 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Returns the access control list (ACL) of an object. To use this operation, you
|
||||
// must have READ_ACP access to the object. This action is not supported by Amazon
|
||||
// S3 on Outposts. Versioning By default, GET returns ACL information about the
|
||||
// current version of an object. To return ACL information about a different
|
||||
// version, use the versionId subresource. The following operations are related to
|
||||
// GetObjectAcl:
|
||||
//
|
||||
// * GetObject
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html)
|
||||
//
|
||||
// *
|
||||
// DeleteObject
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObject.html)
|
||||
//
|
||||
// *
|
||||
// PutObject (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html)
|
||||
func (c *Client) GetObjectAcl(ctx context.Context, params *GetObjectAclInput, optFns ...func(*Options)) (*GetObjectAclOutput, error) {
|
||||
if params == nil {
|
||||
params = &GetObjectAclInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "GetObjectAcl", params, optFns, c.addOperationGetObjectAclMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*GetObjectAclOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type GetObjectAclInput struct {
|
||||
|
||||
// The bucket name that contains the object for which to get the ACL information.
|
||||
// When using this action with an access point, you must direct requests to the
|
||||
// access point hostname. The access point hostname takes the form
|
||||
// AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this
|
||||
// action with an access point through the Amazon Web Services SDKs, you provide
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see Using access points
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The key of the object for which to get the ACL information.
|
||||
//
|
||||
// This member is required.
|
||||
Key *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
// Confirms that the requester knows that they will be charged for the request.
|
||||
// Bucket owners need not specify this parameter in their requests. For information
|
||||
// about downloading objects from requester pays buckets, see Downloading Objects
|
||||
// in Requestor Pays Buckets
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
RequestPayer types.RequestPayer
|
||||
|
||||
// VersionId used to reference a specific version of the object.
|
||||
VersionId *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type GetObjectAclOutput struct {
|
||||
|
||||
// A list of grants.
|
||||
Grants []types.Grant
|
||||
|
||||
// Container for the bucket owner's display name and ID.
|
||||
Owner *types.Owner
|
||||
|
||||
// If present, indicates that the requester was successfully charged for the
|
||||
// request.
|
||||
RequestCharged types.RequestCharged
|
||||
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationGetObjectAclMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpGetObjectAcl{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpGetObjectAcl{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpGetObjectAclValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opGetObjectAcl(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addGetObjectAclUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opGetObjectAcl(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "GetObjectAcl",
|
||||
}
|
||||
}
|
||||
|
||||
// getGetObjectAclBucketMember returns a pointer to string denoting a provided
|
||||
// bucket member valueand a boolean indicating if the input has a modeled bucket
|
||||
// name,
|
||||
func getGetObjectAclBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*GetObjectAclInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addGetObjectAclUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getGetObjectAclBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
191
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetObjectLegalHold.go
generated
vendored
Normal file
191
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetObjectLegalHold.go
generated
vendored
Normal file
@@ -0,0 +1,191 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Gets an object's current Legal Hold status. For more information, see Locking
|
||||
// Objects (https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html). This
|
||||
// action is not supported by Amazon S3 on Outposts.
|
||||
func (c *Client) GetObjectLegalHold(ctx context.Context, params *GetObjectLegalHoldInput, optFns ...func(*Options)) (*GetObjectLegalHoldOutput, error) {
|
||||
if params == nil {
|
||||
params = &GetObjectLegalHoldInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "GetObjectLegalHold", params, optFns, c.addOperationGetObjectLegalHoldMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*GetObjectLegalHoldOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type GetObjectLegalHoldInput struct {
|
||||
|
||||
// The bucket name containing the object whose Legal Hold status you want to
|
||||
// retrieve. When using this action with an access point, you must direct requests
|
||||
// to the access point hostname. The access point hostname takes the form
|
||||
// AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this
|
||||
// action with an access point through the Amazon Web Services SDKs, you provide
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see Using access points
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The key name for the object whose Legal Hold status you want to retrieve.
|
||||
//
|
||||
// This member is required.
|
||||
Key *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
// Confirms that the requester knows that they will be charged for the request.
|
||||
// Bucket owners need not specify this parameter in their requests. For information
|
||||
// about downloading objects from requester pays buckets, see Downloading Objects
|
||||
// in Requestor Pays Buckets
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
RequestPayer types.RequestPayer
|
||||
|
||||
// The version ID of the object whose Legal Hold status you want to retrieve.
|
||||
VersionId *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type GetObjectLegalHoldOutput struct {
|
||||
|
||||
// The current Legal Hold status for the specified object.
|
||||
LegalHold *types.ObjectLockLegalHold
|
||||
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationGetObjectLegalHoldMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpGetObjectLegalHold{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpGetObjectLegalHold{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpGetObjectLegalHoldValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opGetObjectLegalHold(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addGetObjectLegalHoldUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opGetObjectLegalHold(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "GetObjectLegalHold",
|
||||
}
|
||||
}
|
||||
|
||||
// getGetObjectLegalHoldBucketMember returns a pointer to string denoting a
|
||||
// provided bucket member valueand a boolean indicating if the input has a modeled
|
||||
// bucket name,
|
||||
func getGetObjectLegalHoldBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*GetObjectLegalHoldInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addGetObjectLegalHoldUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getGetObjectLegalHoldBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
176
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetObjectLockConfiguration.go
generated
vendored
Normal file
176
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetObjectLockConfiguration.go
generated
vendored
Normal file
@@ -0,0 +1,176 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Gets the Object Lock configuration for a bucket. The rule specified in the
|
||||
// Object Lock configuration will be applied by default to every new object placed
|
||||
// in the specified bucket. For more information, see Locking Objects
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html).
|
||||
func (c *Client) GetObjectLockConfiguration(ctx context.Context, params *GetObjectLockConfigurationInput, optFns ...func(*Options)) (*GetObjectLockConfigurationOutput, error) {
|
||||
if params == nil {
|
||||
params = &GetObjectLockConfigurationInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "GetObjectLockConfiguration", params, optFns, c.addOperationGetObjectLockConfigurationMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*GetObjectLockConfigurationOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type GetObjectLockConfigurationInput struct {
|
||||
|
||||
// The bucket whose Object Lock configuration you want to retrieve. When using this
|
||||
// action with an access point, you must direct requests to the access point
|
||||
// hostname. The access point hostname takes the form
|
||||
// AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this
|
||||
// action with an access point through the Amazon Web Services SDKs, you provide
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see Using access points
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type GetObjectLockConfigurationOutput struct {
|
||||
|
||||
// The specified bucket's Object Lock configuration.
|
||||
ObjectLockConfiguration *types.ObjectLockConfiguration
|
||||
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationGetObjectLockConfigurationMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpGetObjectLockConfiguration{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpGetObjectLockConfiguration{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpGetObjectLockConfigurationValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opGetObjectLockConfiguration(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addGetObjectLockConfigurationUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opGetObjectLockConfiguration(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "GetObjectLockConfiguration",
|
||||
}
|
||||
}
|
||||
|
||||
// getGetObjectLockConfigurationBucketMember returns a pointer to string denoting a
|
||||
// provided bucket member valueand a boolean indicating if the input has a modeled
|
||||
// bucket name,
|
||||
func getGetObjectLockConfigurationBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*GetObjectLockConfigurationInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addGetObjectLockConfigurationUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getGetObjectLockConfigurationBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
191
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetObjectRetention.go
generated
vendored
Normal file
191
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetObjectRetention.go
generated
vendored
Normal file
@@ -0,0 +1,191 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Retrieves an object's retention settings. For more information, see Locking
|
||||
// Objects (https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html). This
|
||||
// action is not supported by Amazon S3 on Outposts.
|
||||
func (c *Client) GetObjectRetention(ctx context.Context, params *GetObjectRetentionInput, optFns ...func(*Options)) (*GetObjectRetentionOutput, error) {
|
||||
if params == nil {
|
||||
params = &GetObjectRetentionInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "GetObjectRetention", params, optFns, c.addOperationGetObjectRetentionMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*GetObjectRetentionOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type GetObjectRetentionInput struct {
|
||||
|
||||
// The bucket name containing the object whose retention settings you want to
|
||||
// retrieve. When using this action with an access point, you must direct requests
|
||||
// to the access point hostname. The access point hostname takes the form
|
||||
// AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this
|
||||
// action with an access point through the Amazon Web Services SDKs, you provide
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see Using access points
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The key name for the object whose retention settings you want to retrieve.
|
||||
//
|
||||
// This member is required.
|
||||
Key *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
// Confirms that the requester knows that they will be charged for the request.
|
||||
// Bucket owners need not specify this parameter in their requests. For information
|
||||
// about downloading objects from requester pays buckets, see Downloading Objects
|
||||
// in Requestor Pays Buckets
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
RequestPayer types.RequestPayer
|
||||
|
||||
// The version ID for the object whose retention settings you want to retrieve.
|
||||
VersionId *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type GetObjectRetentionOutput struct {
|
||||
|
||||
// The container element for an object's retention settings.
|
||||
Retention *types.ObjectLockRetention
|
||||
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationGetObjectRetentionMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpGetObjectRetention{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpGetObjectRetention{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpGetObjectRetentionValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opGetObjectRetention(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addGetObjectRetentionUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opGetObjectRetention(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "GetObjectRetention",
|
||||
}
|
||||
}
|
||||
|
||||
// getGetObjectRetentionBucketMember returns a pointer to string denoting a
|
||||
// provided bucket member valueand a boolean indicating if the input has a modeled
|
||||
// bucket name,
|
||||
func getGetObjectRetentionBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*GetObjectRetentionInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addGetObjectRetentionUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getGetObjectRetentionBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
219
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetObjectTagging.go
generated
vendored
Normal file
219
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetObjectTagging.go
generated
vendored
Normal file
@@ -0,0 +1,219 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Returns the tag-set of an object. You send the GET request against the tagging
|
||||
// subresource associated with the object. To use this operation, you must have
|
||||
// permission to perform the s3:GetObjectTagging action. By default, the GET action
|
||||
// returns information about current version of an object. For a versioned bucket,
|
||||
// you can have multiple versions of an object in your bucket. To retrieve tags of
|
||||
// any other version, use the versionId query parameter. You also need permission
|
||||
// for the s3:GetObjectVersionTagging action. By default, the bucket owner has this
|
||||
// permission and can grant this permission to others. For information about the
|
||||
// Amazon S3 object tagging feature, see Object Tagging
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/object-tagging.html). The
|
||||
// following action is related to GetObjectTagging:
|
||||
//
|
||||
// * PutObjectTagging
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObjectTagging.html)
|
||||
//
|
||||
// *
|
||||
// DeleteObjectTagging
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObjectTagging.html)
|
||||
func (c *Client) GetObjectTagging(ctx context.Context, params *GetObjectTaggingInput, optFns ...func(*Options)) (*GetObjectTaggingOutput, error) {
|
||||
if params == nil {
|
||||
params = &GetObjectTaggingInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "GetObjectTagging", params, optFns, c.addOperationGetObjectTaggingMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*GetObjectTaggingOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type GetObjectTaggingInput struct {
|
||||
|
||||
// The bucket name containing the object for which to get the tagging information.
|
||||
// When using this action with an access point, you must direct requests to the
|
||||
// access point hostname. The access point hostname takes the form
|
||||
// AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this
|
||||
// action with an access point through the Amazon Web Services SDKs, you provide
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see Using access points
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide. When using this action with Amazon S3 on Outposts,
|
||||
// you must direct requests to the S3 on Outposts hostname. The S3 on Outposts
|
||||
// hostname takes the form
|
||||
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When using
|
||||
// this action using S3 on Outposts through the Amazon Web Services SDKs, you
|
||||
// provide the Outposts bucket ARN in place of the bucket name. For more
|
||||
// information about S3 on Outposts ARNs, see Using S3 on Outposts
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) in the
|
||||
// Amazon S3 User Guide.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// Object key for which to get the tagging information.
|
||||
//
|
||||
// This member is required.
|
||||
Key *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
// Confirms that the requester knows that they will be charged for the request.
|
||||
// Bucket owners need not specify this parameter in their requests. For information
|
||||
// about downloading objects from requester pays buckets, see Downloading Objects
|
||||
// in Requestor Pays Buckets
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
RequestPayer types.RequestPayer
|
||||
|
||||
// The versionId of the object for which to get the tagging information.
|
||||
VersionId *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type GetObjectTaggingOutput struct {
|
||||
|
||||
// Contains the tag set.
|
||||
//
|
||||
// This member is required.
|
||||
TagSet []types.Tag
|
||||
|
||||
// The versionId of the object for which you got the tagging information.
|
||||
VersionId *string
|
||||
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationGetObjectTaggingMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpGetObjectTagging{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpGetObjectTagging{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpGetObjectTaggingValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opGetObjectTagging(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addGetObjectTaggingUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opGetObjectTagging(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "GetObjectTagging",
|
||||
}
|
||||
}
|
||||
|
||||
// getGetObjectTaggingBucketMember returns a pointer to string denoting a provided
|
||||
// bucket member valueand a boolean indicating if the input has a modeled bucket
|
||||
// name,
|
||||
func getGetObjectTaggingBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*GetObjectTaggingInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addGetObjectTaggingUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getGetObjectTaggingBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
191
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetObjectTorrent.go
generated
vendored
Normal file
191
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetObjectTorrent.go
generated
vendored
Normal file
@@ -0,0 +1,191 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
"io"
|
||||
)
|
||||
|
||||
// Returns torrent files from a bucket. BitTorrent can save you bandwidth when
|
||||
// you're distributing large files. For more information about BitTorrent, see
|
||||
// Using BitTorrent with Amazon S3
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/S3Torrent.html). You can get
|
||||
// torrent only for objects that are less than 5 GB in size, and that are not
|
||||
// encrypted using server-side encryption with a customer-provided encryption key.
|
||||
// To use GET, you must have READ access to the object. This action is not
|
||||
// supported by Amazon S3 on Outposts. The following action is related to
|
||||
// GetObjectTorrent:
|
||||
//
|
||||
// * GetObject
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html)
|
||||
func (c *Client) GetObjectTorrent(ctx context.Context, params *GetObjectTorrentInput, optFns ...func(*Options)) (*GetObjectTorrentOutput, error) {
|
||||
if params == nil {
|
||||
params = &GetObjectTorrentInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "GetObjectTorrent", params, optFns, c.addOperationGetObjectTorrentMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*GetObjectTorrentOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type GetObjectTorrentInput struct {
|
||||
|
||||
// The name of the bucket containing the object for which to get the torrent files.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The object key for which to get the information.
|
||||
//
|
||||
// This member is required.
|
||||
Key *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
// Confirms that the requester knows that they will be charged for the request.
|
||||
// Bucket owners need not specify this parameter in their requests. For information
|
||||
// about downloading objects from requester pays buckets, see Downloading Objects
|
||||
// in Requestor Pays Buckets
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
RequestPayer types.RequestPayer
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type GetObjectTorrentOutput struct {
|
||||
|
||||
// A Bencoded dictionary as defined by the BitTorrent specification
|
||||
Body io.ReadCloser
|
||||
|
||||
// If present, indicates that the requester was successfully charged for the
|
||||
// request.
|
||||
RequestCharged types.RequestCharged
|
||||
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationGetObjectTorrentMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpGetObjectTorrent{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpGetObjectTorrent{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpGetObjectTorrentValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opGetObjectTorrent(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addGetObjectTorrentUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opGetObjectTorrent(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "GetObjectTorrent",
|
||||
}
|
||||
}
|
||||
|
||||
// getGetObjectTorrentBucketMember returns a pointer to string denoting a provided
|
||||
// bucket member valueand a boolean indicating if the input has a modeled bucket
|
||||
// name,
|
||||
func getGetObjectTorrentBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*GetObjectTorrentInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addGetObjectTorrentUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getGetObjectTorrentBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
196
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetPublicAccessBlock.go
generated
vendored
Normal file
196
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetPublicAccessBlock.go
generated
vendored
Normal file
@@ -0,0 +1,196 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Retrieves the PublicAccessBlock configuration for an Amazon S3 bucket. To use
|
||||
// this operation, you must have the s3:GetBucketPublicAccessBlock permission. For
|
||||
// more information about Amazon S3 permissions, see Specifying Permissions in a
|
||||
// Policy
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html).
|
||||
// When Amazon S3 evaluates the PublicAccessBlock configuration for a bucket or an
|
||||
// object, it checks the PublicAccessBlock configuration for both the bucket (or
|
||||
// the bucket that contains the object) and the bucket owner's account. If the
|
||||
// PublicAccessBlock settings are different between the bucket and the account,
|
||||
// Amazon S3 uses the most restrictive combination of the bucket-level and
|
||||
// account-level settings. For more information about when Amazon S3 considers a
|
||||
// bucket or an 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).
|
||||
// The following operations are related to GetPublicAccessBlock:
|
||||
//
|
||||
// * Using Amazon S3
|
||||
// Block Public Access
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html)
|
||||
//
|
||||
// *
|
||||
// PutPublicAccessBlock
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutPublicAccessBlock.html)
|
||||
//
|
||||
// *
|
||||
// GetPublicAccessBlock
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetPublicAccessBlock.html)
|
||||
//
|
||||
// *
|
||||
// DeletePublicAccessBlock
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeletePublicAccessBlock.html)
|
||||
func (c *Client) GetPublicAccessBlock(ctx context.Context, params *GetPublicAccessBlockInput, optFns ...func(*Options)) (*GetPublicAccessBlockOutput, error) {
|
||||
if params == nil {
|
||||
params = &GetPublicAccessBlockInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "GetPublicAccessBlock", params, optFns, c.addOperationGetPublicAccessBlockMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*GetPublicAccessBlockOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type GetPublicAccessBlockInput struct {
|
||||
|
||||
// The name of the Amazon S3 bucket whose PublicAccessBlock configuration you want
|
||||
// to retrieve.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type GetPublicAccessBlockOutput struct {
|
||||
|
||||
// The PublicAccessBlock configuration currently in effect for this Amazon S3
|
||||
// bucket.
|
||||
PublicAccessBlockConfiguration *types.PublicAccessBlockConfiguration
|
||||
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationGetPublicAccessBlockMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpGetPublicAccessBlock{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpGetPublicAccessBlock{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpGetPublicAccessBlockValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opGetPublicAccessBlock(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addGetPublicAccessBlockUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opGetPublicAccessBlock(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "GetPublicAccessBlock",
|
||||
}
|
||||
}
|
||||
|
||||
// getGetPublicAccessBlockBucketMember returns a pointer to string denoting a
|
||||
// provided bucket member valueand a boolean indicating if the input has a modeled
|
||||
// bucket name,
|
||||
func getGetPublicAccessBlockBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*GetPublicAccessBlockInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addGetPublicAccessBlockUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getGetPublicAccessBlockBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
493
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_HeadBucket.go
generated
vendored
Normal file
493
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_HeadBucket.go
generated
vendored
Normal file
@@ -0,0 +1,493 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
"errors"
|
||||
"fmt"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithytime "github.com/aws/smithy-go/time"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
smithywaiter "github.com/aws/smithy-go/waiter"
|
||||
"time"
|
||||
)
|
||||
|
||||
// This action is useful to determine if a bucket exists and you have permission to
|
||||
// access it. The action returns a 200 OK if the bucket exists and you have
|
||||
// permission to access it. If the bucket does not exist or you do not have
|
||||
// permission to access it, the HEAD request returns a generic 404 Not Found or 403
|
||||
// Forbidden code. A message body is not included, so you cannot determine the
|
||||
// exception beyond these error codes. To use this operation, you must have
|
||||
// permissions to perform the s3:ListBucket action. The 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).
|
||||
// To use this API against an access point, you must provide the alias of the
|
||||
// access point in place of the bucket name or specify the access point ARN. When
|
||||
// using the access point ARN, you must direct requests to the access point
|
||||
// hostname. The access point hostname takes the form
|
||||
// AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using the
|
||||
// Amazon Web Services SDKs, you provide the ARN in place of the bucket name. For
|
||||
// more information see, Using access points
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html).
|
||||
func (c *Client) HeadBucket(ctx context.Context, params *HeadBucketInput, optFns ...func(*Options)) (*HeadBucketOutput, error) {
|
||||
if params == nil {
|
||||
params = &HeadBucketInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "HeadBucket", params, optFns, c.addOperationHeadBucketMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*HeadBucketOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type HeadBucketInput struct {
|
||||
|
||||
// The bucket name. When using this action with an access point, you must direct
|
||||
// requests to the access point hostname. The access point hostname takes the form
|
||||
// AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this
|
||||
// action with an access point through the Amazon Web Services SDKs, you provide
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see Using access points
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide. When using this action with Amazon S3 on Outposts,
|
||||
// you must direct requests to the S3 on Outposts hostname. The S3 on Outposts
|
||||
// hostname takes the form
|
||||
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When using
|
||||
// this action using S3 on Outposts through the Amazon Web Services SDKs, you
|
||||
// provide the Outposts bucket ARN in place of the bucket name. For more
|
||||
// information about S3 on Outposts ARNs, see Using S3 on Outposts
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) in the
|
||||
// Amazon S3 User Guide.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type HeadBucketOutput struct {
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationHeadBucketMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpHeadBucket{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpHeadBucket{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpHeadBucketValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opHeadBucket(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHeadBucketUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// HeadBucketAPIClient is a client that implements the HeadBucket operation.
|
||||
type HeadBucketAPIClient interface {
|
||||
HeadBucket(context.Context, *HeadBucketInput, ...func(*Options)) (*HeadBucketOutput, error)
|
||||
}
|
||||
|
||||
var _ HeadBucketAPIClient = (*Client)(nil)
|
||||
|
||||
// BucketExistsWaiterOptions are waiter options for BucketExistsWaiter
|
||||
type BucketExistsWaiterOptions struct {
|
||||
|
||||
// Set of options to modify how an operation is invoked. These apply to all
|
||||
// operations invoked for this client. Use functional options on operation call to
|
||||
// modify this list for per operation behavior.
|
||||
APIOptions []func(*middleware.Stack) error
|
||||
|
||||
// MinDelay is the minimum amount of time to delay between retries. If unset,
|
||||
// BucketExistsWaiter will use default minimum delay of 5 seconds. Note that
|
||||
// MinDelay must resolve to a value lesser than or equal to the MaxDelay.
|
||||
MinDelay time.Duration
|
||||
|
||||
// MaxDelay is the maximum amount of time to delay between retries. If unset or set
|
||||
// to zero, BucketExistsWaiter will use default max delay of 120 seconds. Note that
|
||||
// MaxDelay must resolve to value greater than or equal to the MinDelay.
|
||||
MaxDelay time.Duration
|
||||
|
||||
// LogWaitAttempts is used to enable logging for waiter retry attempts
|
||||
LogWaitAttempts bool
|
||||
|
||||
// Retryable is function that can be used to override the service defined
|
||||
// waiter-behavior based on operation output, or returned error. This function is
|
||||
// used by the waiter to decide if a state is retryable or a terminal state. By
|
||||
// default service-modeled logic will populate this option. This option can thus be
|
||||
// used to define a custom waiter state with fall-back to service-modeled waiter
|
||||
// state mutators.The function returns an error in case of a failure state. In case
|
||||
// of retry state, this function returns a bool value of true and nil error, while
|
||||
// in case of success it returns a bool value of false and nil error.
|
||||
Retryable func(context.Context, *HeadBucketInput, *HeadBucketOutput, error) (bool, error)
|
||||
}
|
||||
|
||||
// BucketExistsWaiter defines the waiters for BucketExists
|
||||
type BucketExistsWaiter struct {
|
||||
client HeadBucketAPIClient
|
||||
|
||||
options BucketExistsWaiterOptions
|
||||
}
|
||||
|
||||
// NewBucketExistsWaiter constructs a BucketExistsWaiter.
|
||||
func NewBucketExistsWaiter(client HeadBucketAPIClient, optFns ...func(*BucketExistsWaiterOptions)) *BucketExistsWaiter {
|
||||
options := BucketExistsWaiterOptions{}
|
||||
options.MinDelay = 5 * time.Second
|
||||
options.MaxDelay = 120 * time.Second
|
||||
options.Retryable = bucketExistsStateRetryable
|
||||
|
||||
for _, fn := range optFns {
|
||||
fn(&options)
|
||||
}
|
||||
return &BucketExistsWaiter{
|
||||
client: client,
|
||||
options: options,
|
||||
}
|
||||
}
|
||||
|
||||
// Wait calls the waiter function for BucketExists waiter. The maxWaitDur is the
|
||||
// maximum wait duration the waiter will wait. The maxWaitDur is required and must
|
||||
// be greater than zero.
|
||||
func (w *BucketExistsWaiter) Wait(ctx context.Context, params *HeadBucketInput, maxWaitDur time.Duration, optFns ...func(*BucketExistsWaiterOptions)) error {
|
||||
if maxWaitDur <= 0 {
|
||||
return fmt.Errorf("maximum wait time for waiter must be greater than zero")
|
||||
}
|
||||
|
||||
options := w.options
|
||||
for _, fn := range optFns {
|
||||
fn(&options)
|
||||
}
|
||||
|
||||
if options.MaxDelay <= 0 {
|
||||
options.MaxDelay = 120 * time.Second
|
||||
}
|
||||
|
||||
if options.MinDelay > options.MaxDelay {
|
||||
return fmt.Errorf("minimum waiter delay %v must be lesser than or equal to maximum waiter delay of %v.", options.MinDelay, options.MaxDelay)
|
||||
}
|
||||
|
||||
ctx, cancelFn := context.WithTimeout(ctx, maxWaitDur)
|
||||
defer cancelFn()
|
||||
|
||||
logger := smithywaiter.Logger{}
|
||||
remainingTime := maxWaitDur
|
||||
|
||||
var attempt int64
|
||||
for {
|
||||
|
||||
attempt++
|
||||
apiOptions := options.APIOptions
|
||||
start := time.Now()
|
||||
|
||||
if options.LogWaitAttempts {
|
||||
logger.Attempt = attempt
|
||||
apiOptions = append([]func(*middleware.Stack) error{}, options.APIOptions...)
|
||||
apiOptions = append(apiOptions, logger.AddLogger)
|
||||
}
|
||||
|
||||
out, err := w.client.HeadBucket(ctx, params, func(o *Options) {
|
||||
o.APIOptions = append(o.APIOptions, apiOptions...)
|
||||
})
|
||||
|
||||
retryable, err := options.Retryable(ctx, params, out, err)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if !retryable {
|
||||
return nil
|
||||
}
|
||||
|
||||
remainingTime -= time.Since(start)
|
||||
if remainingTime < options.MinDelay || remainingTime <= 0 {
|
||||
break
|
||||
}
|
||||
|
||||
// compute exponential backoff between waiter retries
|
||||
delay, err := smithywaiter.ComputeDelay(
|
||||
attempt, options.MinDelay, options.MaxDelay, remainingTime,
|
||||
)
|
||||
if err != nil {
|
||||
return fmt.Errorf("error computing waiter delay, %w", err)
|
||||
}
|
||||
|
||||
remainingTime -= delay
|
||||
// sleep for the delay amount before invoking a request
|
||||
if err := smithytime.SleepWithContext(ctx, delay); err != nil {
|
||||
return fmt.Errorf("request cancelled while waiting, %w", err)
|
||||
}
|
||||
}
|
||||
return fmt.Errorf("exceeded max wait time for BucketExists waiter")
|
||||
}
|
||||
|
||||
func bucketExistsStateRetryable(ctx context.Context, input *HeadBucketInput, output *HeadBucketOutput, err error) (bool, error) {
|
||||
|
||||
if err == nil {
|
||||
return false, nil
|
||||
}
|
||||
|
||||
if err != nil {
|
||||
var errorType *types.NotFound
|
||||
if errors.As(err, &errorType) {
|
||||
return true, nil
|
||||
}
|
||||
}
|
||||
|
||||
return true, nil
|
||||
}
|
||||
|
||||
// BucketNotExistsWaiterOptions are waiter options for BucketNotExistsWaiter
|
||||
type BucketNotExistsWaiterOptions struct {
|
||||
|
||||
// Set of options to modify how an operation is invoked. These apply to all
|
||||
// operations invoked for this client. Use functional options on operation call to
|
||||
// modify this list for per operation behavior.
|
||||
APIOptions []func(*middleware.Stack) error
|
||||
|
||||
// MinDelay is the minimum amount of time to delay between retries. If unset,
|
||||
// BucketNotExistsWaiter will use default minimum delay of 5 seconds. Note that
|
||||
// MinDelay must resolve to a value lesser than or equal to the MaxDelay.
|
||||
MinDelay time.Duration
|
||||
|
||||
// MaxDelay is the maximum amount of time to delay between retries. If unset or set
|
||||
// to zero, BucketNotExistsWaiter will use default max delay of 120 seconds. Note
|
||||
// that MaxDelay must resolve to value greater than or equal to the MinDelay.
|
||||
MaxDelay time.Duration
|
||||
|
||||
// LogWaitAttempts is used to enable logging for waiter retry attempts
|
||||
LogWaitAttempts bool
|
||||
|
||||
// Retryable is function that can be used to override the service defined
|
||||
// waiter-behavior based on operation output, or returned error. This function is
|
||||
// used by the waiter to decide if a state is retryable or a terminal state. By
|
||||
// default service-modeled logic will populate this option. This option can thus be
|
||||
// used to define a custom waiter state with fall-back to service-modeled waiter
|
||||
// state mutators.The function returns an error in case of a failure state. In case
|
||||
// of retry state, this function returns a bool value of true and nil error, while
|
||||
// in case of success it returns a bool value of false and nil error.
|
||||
Retryable func(context.Context, *HeadBucketInput, *HeadBucketOutput, error) (bool, error)
|
||||
}
|
||||
|
||||
// BucketNotExistsWaiter defines the waiters for BucketNotExists
|
||||
type BucketNotExistsWaiter struct {
|
||||
client HeadBucketAPIClient
|
||||
|
||||
options BucketNotExistsWaiterOptions
|
||||
}
|
||||
|
||||
// NewBucketNotExistsWaiter constructs a BucketNotExistsWaiter.
|
||||
func NewBucketNotExistsWaiter(client HeadBucketAPIClient, optFns ...func(*BucketNotExistsWaiterOptions)) *BucketNotExistsWaiter {
|
||||
options := BucketNotExistsWaiterOptions{}
|
||||
options.MinDelay = 5 * time.Second
|
||||
options.MaxDelay = 120 * time.Second
|
||||
options.Retryable = bucketNotExistsStateRetryable
|
||||
|
||||
for _, fn := range optFns {
|
||||
fn(&options)
|
||||
}
|
||||
return &BucketNotExistsWaiter{
|
||||
client: client,
|
||||
options: options,
|
||||
}
|
||||
}
|
||||
|
||||
// Wait calls the waiter function for BucketNotExists waiter. The maxWaitDur is the
|
||||
// maximum wait duration the waiter will wait. The maxWaitDur is required and must
|
||||
// be greater than zero.
|
||||
func (w *BucketNotExistsWaiter) Wait(ctx context.Context, params *HeadBucketInput, maxWaitDur time.Duration, optFns ...func(*BucketNotExistsWaiterOptions)) error {
|
||||
if maxWaitDur <= 0 {
|
||||
return fmt.Errorf("maximum wait time for waiter must be greater than zero")
|
||||
}
|
||||
|
||||
options := w.options
|
||||
for _, fn := range optFns {
|
||||
fn(&options)
|
||||
}
|
||||
|
||||
if options.MaxDelay <= 0 {
|
||||
options.MaxDelay = 120 * time.Second
|
||||
}
|
||||
|
||||
if options.MinDelay > options.MaxDelay {
|
||||
return fmt.Errorf("minimum waiter delay %v must be lesser than or equal to maximum waiter delay of %v.", options.MinDelay, options.MaxDelay)
|
||||
}
|
||||
|
||||
ctx, cancelFn := context.WithTimeout(ctx, maxWaitDur)
|
||||
defer cancelFn()
|
||||
|
||||
logger := smithywaiter.Logger{}
|
||||
remainingTime := maxWaitDur
|
||||
|
||||
var attempt int64
|
||||
for {
|
||||
|
||||
attempt++
|
||||
apiOptions := options.APIOptions
|
||||
start := time.Now()
|
||||
|
||||
if options.LogWaitAttempts {
|
||||
logger.Attempt = attempt
|
||||
apiOptions = append([]func(*middleware.Stack) error{}, options.APIOptions...)
|
||||
apiOptions = append(apiOptions, logger.AddLogger)
|
||||
}
|
||||
|
||||
out, err := w.client.HeadBucket(ctx, params, func(o *Options) {
|
||||
o.APIOptions = append(o.APIOptions, apiOptions...)
|
||||
})
|
||||
|
||||
retryable, err := options.Retryable(ctx, params, out, err)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if !retryable {
|
||||
return nil
|
||||
}
|
||||
|
||||
remainingTime -= time.Since(start)
|
||||
if remainingTime < options.MinDelay || remainingTime <= 0 {
|
||||
break
|
||||
}
|
||||
|
||||
// compute exponential backoff between waiter retries
|
||||
delay, err := smithywaiter.ComputeDelay(
|
||||
attempt, options.MinDelay, options.MaxDelay, remainingTime,
|
||||
)
|
||||
if err != nil {
|
||||
return fmt.Errorf("error computing waiter delay, %w", err)
|
||||
}
|
||||
|
||||
remainingTime -= delay
|
||||
// sleep for the delay amount before invoking a request
|
||||
if err := smithytime.SleepWithContext(ctx, delay); err != nil {
|
||||
return fmt.Errorf("request cancelled while waiting, %w", err)
|
||||
}
|
||||
}
|
||||
return fmt.Errorf("exceeded max wait time for BucketNotExists waiter")
|
||||
}
|
||||
|
||||
func bucketNotExistsStateRetryable(ctx context.Context, input *HeadBucketInput, output *HeadBucketOutput, err error) (bool, error) {
|
||||
|
||||
if err != nil {
|
||||
var errorType *types.NotFound
|
||||
if errors.As(err, &errorType) {
|
||||
return false, nil
|
||||
}
|
||||
}
|
||||
|
||||
return true, nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opHeadBucket(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "HeadBucket",
|
||||
}
|
||||
}
|
||||
|
||||
// getHeadBucketBucketMember returns a pointer to string denoting a provided bucket
|
||||
// member valueand a boolean indicating if the input has a modeled bucket name,
|
||||
func getHeadBucketBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*HeadBucketInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addHeadBucketUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getHeadBucketBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
827
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_HeadObject.go
generated
vendored
Normal file
827
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_HeadObject.go
generated
vendored
Normal file
@@ -0,0 +1,827 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
"errors"
|
||||
"fmt"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
smithy "github.com/aws/smithy-go"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithytime "github.com/aws/smithy-go/time"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
smithywaiter "github.com/aws/smithy-go/waiter"
|
||||
"time"
|
||||
)
|
||||
|
||||
// The HEAD action retrieves metadata from an object without returning the object
|
||||
// itself. This action is useful if you're only interested in an object's metadata.
|
||||
// To use HEAD, you must have READ access to the object. A HEAD request has the
|
||||
// same options as a GET action on an object. The response is identical to the GET
|
||||
// response except that there is no response body. Because of this, if the HEAD
|
||||
// request generates an error, it returns a generic 404 Not Found or 403 Forbidden
|
||||
// code. It is not possible to retrieve the exact exception beyond these error
|
||||
// codes. If you encrypt an object by using server-side encryption with
|
||||
// customer-provided encryption keys (SSE-C) when you store the object in Amazon
|
||||
// S3, then when you retrieve the metadata from the object, you must use the
|
||||
// following headers:
|
||||
//
|
||||
// * x-amz-server-side-encryption-customer-algorithm
|
||||
//
|
||||
// *
|
||||
// x-amz-server-side-encryption-customer-key
|
||||
//
|
||||
// *
|
||||
// x-amz-server-side-encryption-customer-key-MD5
|
||||
//
|
||||
// For more information about SSE-C,
|
||||
// see Server-Side Encryption (Using Customer-Provided Encryption Keys)
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html).
|
||||
//
|
||||
// *
|
||||
// Encryption request headers, like x-amz-server-side-encryption, should not be
|
||||
// sent for GET requests if your object uses server-side encryption with KMS keys
|
||||
// (SSE-KMS) or server-side encryption with Amazon S3–managed encryption keys
|
||||
// (SSE-S3). If your object does use these types of keys, you’ll get an HTTP 400
|
||||
// BadRequest error.
|
||||
//
|
||||
// * The last modified property in this case is the creation
|
||||
// date of the object.
|
||||
//
|
||||
// Request headers are limited to 8 KB in size. For more
|
||||
// information, see Common Request Headers
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/RESTCommonRequestHeaders.html).
|
||||
// Consider the following when using request headers:
|
||||
//
|
||||
// * Consideration 1 – If both
|
||||
// of the If-Match and If-Unmodified-Since headers are present in the request as
|
||||
// follows:
|
||||
//
|
||||
// * If-Match condition evaluates to true, and;
|
||||
//
|
||||
// * If-Unmodified-Since
|
||||
// condition evaluates to false;
|
||||
//
|
||||
// Then Amazon S3 returns 200 OK and the data
|
||||
// requested.
|
||||
//
|
||||
// * Consideration 2 – If both of the If-None-Match and
|
||||
// If-Modified-Since headers are present in the request as follows:
|
||||
//
|
||||
// *
|
||||
// If-None-Match condition evaluates to false, and;
|
||||
//
|
||||
// * If-Modified-Since condition
|
||||
// evaluates to true;
|
||||
//
|
||||
// Then Amazon S3 returns the 304 Not Modified response
|
||||
// code.
|
||||
//
|
||||
// For more information about conditional requests, see RFC 7232
|
||||
// (https://tools.ietf.org/html/rfc7232). Permissions You need the relevant read
|
||||
// object (or version) permission for this operation. For more information, see
|
||||
// Specifying Permissions in a Policy
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html). If
|
||||
// the object you request does not exist, the error Amazon S3 returns depends on
|
||||
// whether you also have the s3:ListBucket permission.
|
||||
//
|
||||
// * If you have the
|
||||
// s3:ListBucket permission on the bucket, Amazon S3 returns an HTTP status code
|
||||
// 404 ("no such key") error.
|
||||
//
|
||||
// * If you don’t have the s3:ListBucket permission,
|
||||
// Amazon S3 returns an HTTP status code 403 ("access denied") error.
|
||||
//
|
||||
// The
|
||||
// following action is related to HeadObject:
|
||||
//
|
||||
// * GetObject
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html)
|
||||
func (c *Client) HeadObject(ctx context.Context, params *HeadObjectInput, optFns ...func(*Options)) (*HeadObjectOutput, error) {
|
||||
if params == nil {
|
||||
params = &HeadObjectInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "HeadObject", params, optFns, c.addOperationHeadObjectMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*HeadObjectOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type HeadObjectInput struct {
|
||||
|
||||
// The name of the bucket containing the object. When using this action with an
|
||||
// access point, you must direct requests to the access point hostname. The access
|
||||
// point hostname takes the form
|
||||
// AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this
|
||||
// action with an access point through the Amazon Web Services SDKs, you provide
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see Using access points
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide. When using this action with Amazon S3 on Outposts,
|
||||
// you must direct requests to the S3 on Outposts hostname. The S3 on Outposts
|
||||
// hostname takes the form
|
||||
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When using
|
||||
// this action using S3 on Outposts through the Amazon Web Services SDKs, you
|
||||
// provide the Outposts bucket ARN in place of the bucket name. For more
|
||||
// information about S3 on Outposts ARNs, see Using S3 on Outposts
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) in the
|
||||
// Amazon S3 User Guide.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The object key.
|
||||
//
|
||||
// This member is required.
|
||||
Key *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
// Return the object only if its entity tag (ETag) is the same as the one
|
||||
// specified, otherwise return a 412 (precondition failed).
|
||||
IfMatch *string
|
||||
|
||||
// Return the object only if it has been modified since the specified time,
|
||||
// otherwise return a 304 (not modified).
|
||||
IfModifiedSince *time.Time
|
||||
|
||||
// Return the object only if its entity tag (ETag) is different from the one
|
||||
// specified, otherwise return a 304 (not modified).
|
||||
IfNoneMatch *string
|
||||
|
||||
// Return the object only if it has not been modified since the specified time,
|
||||
// otherwise return a 412 (precondition failed).
|
||||
IfUnmodifiedSince *time.Time
|
||||
|
||||
// Part number of the object being read. This is a positive integer between 1 and
|
||||
// 10,000. Effectively performs a 'ranged' HEAD request for the part specified.
|
||||
// Useful querying about the size of the part and the number of parts in this
|
||||
// object.
|
||||
PartNumber int32
|
||||
|
||||
// Downloads the specified range bytes of an object. For more information about the
|
||||
// HTTP Range header, see
|
||||
// http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35
|
||||
// (http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35). Amazon S3
|
||||
// doesn't support retrieving multiple ranges of data per GET request.
|
||||
Range *string
|
||||
|
||||
// Confirms that the requester knows that they will be charged for the request.
|
||||
// Bucket owners need not specify this parameter in their requests. For information
|
||||
// about downloading objects from requester pays buckets, see Downloading Objects
|
||||
// in Requestor Pays Buckets
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
RequestPayer types.RequestPayer
|
||||
|
||||
// Specifies the algorithm to use to when encrypting the object (for example,
|
||||
// AES256).
|
||||
SSECustomerAlgorithm *string
|
||||
|
||||
// Specifies the customer-provided encryption key for Amazon S3 to use in
|
||||
// encrypting data. This value is used to store the object and then it is
|
||||
// discarded; Amazon S3 does not store the encryption key. The key must be
|
||||
// appropriate for use with the algorithm specified in the
|
||||
// x-amz-server-side-encryption-customer-algorithm header.
|
||||
SSECustomerKey *string
|
||||
|
||||
// Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321.
|
||||
// Amazon S3 uses this header for a message integrity check to ensure that the
|
||||
// encryption key was transmitted without error.
|
||||
SSECustomerKeyMD5 *string
|
||||
|
||||
// VersionId used to reference a specific version of the object.
|
||||
VersionId *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type HeadObjectOutput struct {
|
||||
|
||||
// Indicates that a range of bytes was specified.
|
||||
AcceptRanges *string
|
||||
|
||||
// The archive state of the head object.
|
||||
ArchiveStatus types.ArchiveStatus
|
||||
|
||||
// Indicates whether the object uses an S3 Bucket Key for server-side encryption
|
||||
// with Amazon Web Services KMS (SSE-KMS).
|
||||
BucketKeyEnabled bool
|
||||
|
||||
// Specifies caching behavior along the request/reply chain.
|
||||
CacheControl *string
|
||||
|
||||
// Specifies presentational information for the object.
|
||||
ContentDisposition *string
|
||||
|
||||
// Specifies what content encodings have been applied to the object and thus what
|
||||
// decoding mechanisms must be applied to obtain the media-type referenced by the
|
||||
// Content-Type header field.
|
||||
ContentEncoding *string
|
||||
|
||||
// The language the content is in.
|
||||
ContentLanguage *string
|
||||
|
||||
// Size of the body in bytes.
|
||||
ContentLength int64
|
||||
|
||||
// A standard MIME type describing the format of the object data.
|
||||
ContentType *string
|
||||
|
||||
// Specifies whether the object retrieved was (true) or was not (false) a Delete
|
||||
// Marker. If false, this response header does not appear in the response.
|
||||
DeleteMarker bool
|
||||
|
||||
// An ETag is an opaque identifier assigned by a web server to a specific version
|
||||
// of a resource found at a URL.
|
||||
ETag *string
|
||||
|
||||
// If the object expiration is configured (see PUT Bucket lifecycle), the response
|
||||
// includes this header. It includes the expiry-date and rule-id key-value pairs
|
||||
// providing object expiration information. The value of the rule-id is URL
|
||||
// encoded.
|
||||
Expiration *string
|
||||
|
||||
// The date and time at which the object is no longer cacheable.
|
||||
Expires *time.Time
|
||||
|
||||
// Creation date of the object.
|
||||
LastModified *time.Time
|
||||
|
||||
// A map of metadata to store with the object in S3.
|
||||
//
|
||||
// Map keys will be normalized to lower-case.
|
||||
Metadata map[string]string
|
||||
|
||||
// This is set to the number of metadata entries not returned in x-amz-meta
|
||||
// headers. This can happen if you create metadata using an API like SOAP that
|
||||
// supports more flexible metadata than the REST API. For example, using SOAP, you
|
||||
// can create metadata whose values are not legal HTTP headers.
|
||||
MissingMeta int32
|
||||
|
||||
// Specifies whether a legal hold is in effect for this object. This header is only
|
||||
// returned if the requester has the s3:GetObjectLegalHold permission. This header
|
||||
// is not returned if the specified version of this object has never had a legal
|
||||
// hold applied. For more information about S3 Object Lock, see Object Lock
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html).
|
||||
ObjectLockLegalHoldStatus types.ObjectLockLegalHoldStatus
|
||||
|
||||
// The Object Lock mode, if any, that's in effect for this object. This header is
|
||||
// only returned if the requester has the s3:GetObjectRetention permission. For
|
||||
// more information about S3 Object Lock, see Object Lock
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html).
|
||||
ObjectLockMode types.ObjectLockMode
|
||||
|
||||
// The date and time when the Object Lock retention period expires. This header is
|
||||
// only returned if the requester has the s3:GetObjectRetention permission.
|
||||
ObjectLockRetainUntilDate *time.Time
|
||||
|
||||
// The count of parts this object has.
|
||||
PartsCount int32
|
||||
|
||||
// Amazon S3 can return this header if your request involves a bucket that is
|
||||
// either a source or a destination in a replication rule. In replication, you have
|
||||
// a source bucket on which you configure replication and destination bucket or
|
||||
// buckets where Amazon S3 stores object replicas. When you request an object
|
||||
// (GetObject) or object metadata (HeadObject) from these buckets, Amazon S3 will
|
||||
// return the x-amz-replication-status header in the response as follows:
|
||||
//
|
||||
// * If
|
||||
// requesting an object from the source bucket — Amazon S3 will return the
|
||||
// x-amz-replication-status header if the object in your request is eligible for
|
||||
// replication. For example, suppose that in your replication configuration, you
|
||||
// specify object prefix TaxDocs requesting Amazon S3 to replicate objects with key
|
||||
// prefix TaxDocs. Any objects you upload with this key name prefix, for example
|
||||
// TaxDocs/document1.pdf, are eligible for replication. For any object request with
|
||||
// this key name prefix, Amazon S3 will return the x-amz-replication-status header
|
||||
// with value PENDING, COMPLETED or FAILED indicating object replication status.
|
||||
//
|
||||
// *
|
||||
// If requesting an object from a destination bucket — Amazon S3 will return the
|
||||
// x-amz-replication-status header with value REPLICA if the object in your request
|
||||
// is a replica that Amazon S3 created and there is no replica modification
|
||||
// replication in progress.
|
||||
//
|
||||
// * When replicating objects to multiple destination
|
||||
// buckets the x-amz-replication-status header acts differently. The header of the
|
||||
// source object will only return a value of COMPLETED when replication is
|
||||
// successful to all destinations. The header will remain at value PENDING until
|
||||
// replication has completed for all destinations. If one or more destinations
|
||||
// fails replication the header will return FAILED.
|
||||
//
|
||||
// For more information, see
|
||||
// Replication
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html).
|
||||
ReplicationStatus types.ReplicationStatus
|
||||
|
||||
// If present, indicates that the requester was successfully charged for the
|
||||
// request.
|
||||
RequestCharged types.RequestCharged
|
||||
|
||||
// If the object is an archived object (an object whose storage class is GLACIER),
|
||||
// the response includes this header if either the archive restoration is in
|
||||
// progress (see RestoreObject
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_RestoreObject.html) or an
|
||||
// archive copy is already restored. If an archive copy is already restored, the
|
||||
// header value indicates when Amazon S3 is scheduled to delete the object copy.
|
||||
// For example: x-amz-restore: ongoing-request="false", expiry-date="Fri, 21 Dec
|
||||
// 2012 00:00:00 GMT" If the object restoration is in progress, the header returns
|
||||
// the value ongoing-request="true". For more information about archiving objects,
|
||||
// see Transitioning Objects: General Considerations
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html#lifecycle-transition-general-considerations).
|
||||
Restore *string
|
||||
|
||||
// If server-side encryption with a customer-provided encryption key was requested,
|
||||
// the response will include this header confirming the encryption algorithm used.
|
||||
SSECustomerAlgorithm *string
|
||||
|
||||
// If server-side encryption with a customer-provided encryption key was requested,
|
||||
// the response will include this header to provide round-trip message integrity
|
||||
// verification of the customer-provided encryption key.
|
||||
SSECustomerKeyMD5 *string
|
||||
|
||||
// If present, specifies the ID of the Amazon Web Services Key Management Service
|
||||
// (Amazon Web Services KMS) symmetric customer managed key that was used for the
|
||||
// object.
|
||||
SSEKMSKeyId *string
|
||||
|
||||
// If the object is stored using server-side encryption either with an Amazon Web
|
||||
// Services KMS key or an Amazon S3-managed encryption key, the response includes
|
||||
// this header with the value of the server-side encryption algorithm used when
|
||||
// storing this object in Amazon S3 (for example, AES256, aws:kms).
|
||||
ServerSideEncryption types.ServerSideEncryption
|
||||
|
||||
// Provides storage class information of the object. Amazon S3 returns this header
|
||||
// for all objects except for S3 Standard storage class objects. For more
|
||||
// information, see Storage Classes
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html).
|
||||
StorageClass types.StorageClass
|
||||
|
||||
// Version of the object.
|
||||
VersionId *string
|
||||
|
||||
// If the bucket is configured as a website, redirects requests for this object to
|
||||
// another object in the same bucket or to an external URL. Amazon S3 stores the
|
||||
// value of this header in the object metadata.
|
||||
WebsiteRedirectLocation *string
|
||||
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationHeadObjectMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpHeadObject{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpHeadObject{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpHeadObjectValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opHeadObject(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHeadObjectUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// HeadObjectAPIClient is a client that implements the HeadObject operation.
|
||||
type HeadObjectAPIClient interface {
|
||||
HeadObject(context.Context, *HeadObjectInput, ...func(*Options)) (*HeadObjectOutput, error)
|
||||
}
|
||||
|
||||
var _ HeadObjectAPIClient = (*Client)(nil)
|
||||
|
||||
// ObjectExistsWaiterOptions are waiter options for ObjectExistsWaiter
|
||||
type ObjectExistsWaiterOptions struct {
|
||||
|
||||
// Set of options to modify how an operation is invoked. These apply to all
|
||||
// operations invoked for this client. Use functional options on operation call to
|
||||
// modify this list for per operation behavior.
|
||||
APIOptions []func(*middleware.Stack) error
|
||||
|
||||
// MinDelay is the minimum amount of time to delay between retries. If unset,
|
||||
// ObjectExistsWaiter will use default minimum delay of 5 seconds. Note that
|
||||
// MinDelay must resolve to a value lesser than or equal to the MaxDelay.
|
||||
MinDelay time.Duration
|
||||
|
||||
// MaxDelay is the maximum amount of time to delay between retries. If unset or set
|
||||
// to zero, ObjectExistsWaiter will use default max delay of 120 seconds. Note that
|
||||
// MaxDelay must resolve to value greater than or equal to the MinDelay.
|
||||
MaxDelay time.Duration
|
||||
|
||||
// LogWaitAttempts is used to enable logging for waiter retry attempts
|
||||
LogWaitAttempts bool
|
||||
|
||||
// Retryable is function that can be used to override the service defined
|
||||
// waiter-behavior based on operation output, or returned error. This function is
|
||||
// used by the waiter to decide if a state is retryable or a terminal state. By
|
||||
// default service-modeled logic will populate this option. This option can thus be
|
||||
// used to define a custom waiter state with fall-back to service-modeled waiter
|
||||
// state mutators.The function returns an error in case of a failure state. In case
|
||||
// of retry state, this function returns a bool value of true and nil error, while
|
||||
// in case of success it returns a bool value of false and nil error.
|
||||
Retryable func(context.Context, *HeadObjectInput, *HeadObjectOutput, error) (bool, error)
|
||||
}
|
||||
|
||||
// ObjectExistsWaiter defines the waiters for ObjectExists
|
||||
type ObjectExistsWaiter struct {
|
||||
client HeadObjectAPIClient
|
||||
|
||||
options ObjectExistsWaiterOptions
|
||||
}
|
||||
|
||||
// NewObjectExistsWaiter constructs a ObjectExistsWaiter.
|
||||
func NewObjectExistsWaiter(client HeadObjectAPIClient, optFns ...func(*ObjectExistsWaiterOptions)) *ObjectExistsWaiter {
|
||||
options := ObjectExistsWaiterOptions{}
|
||||
options.MinDelay = 5 * time.Second
|
||||
options.MaxDelay = 120 * time.Second
|
||||
options.Retryable = objectExistsStateRetryable
|
||||
|
||||
for _, fn := range optFns {
|
||||
fn(&options)
|
||||
}
|
||||
return &ObjectExistsWaiter{
|
||||
client: client,
|
||||
options: options,
|
||||
}
|
||||
}
|
||||
|
||||
// Wait calls the waiter function for ObjectExists waiter. The maxWaitDur is the
|
||||
// maximum wait duration the waiter will wait. The maxWaitDur is required and must
|
||||
// be greater than zero.
|
||||
func (w *ObjectExistsWaiter) Wait(ctx context.Context, params *HeadObjectInput, maxWaitDur time.Duration, optFns ...func(*ObjectExistsWaiterOptions)) error {
|
||||
if maxWaitDur <= 0 {
|
||||
return fmt.Errorf("maximum wait time for waiter must be greater than zero")
|
||||
}
|
||||
|
||||
options := w.options
|
||||
for _, fn := range optFns {
|
||||
fn(&options)
|
||||
}
|
||||
|
||||
if options.MaxDelay <= 0 {
|
||||
options.MaxDelay = 120 * time.Second
|
||||
}
|
||||
|
||||
if options.MinDelay > options.MaxDelay {
|
||||
return fmt.Errorf("minimum waiter delay %v must be lesser than or equal to maximum waiter delay of %v.", options.MinDelay, options.MaxDelay)
|
||||
}
|
||||
|
||||
ctx, cancelFn := context.WithTimeout(ctx, maxWaitDur)
|
||||
defer cancelFn()
|
||||
|
||||
logger := smithywaiter.Logger{}
|
||||
remainingTime := maxWaitDur
|
||||
|
||||
var attempt int64
|
||||
for {
|
||||
|
||||
attempt++
|
||||
apiOptions := options.APIOptions
|
||||
start := time.Now()
|
||||
|
||||
if options.LogWaitAttempts {
|
||||
logger.Attempt = attempt
|
||||
apiOptions = append([]func(*middleware.Stack) error{}, options.APIOptions...)
|
||||
apiOptions = append(apiOptions, logger.AddLogger)
|
||||
}
|
||||
|
||||
out, err := w.client.HeadObject(ctx, params, func(o *Options) {
|
||||
o.APIOptions = append(o.APIOptions, apiOptions...)
|
||||
})
|
||||
|
||||
retryable, err := options.Retryable(ctx, params, out, err)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if !retryable {
|
||||
return nil
|
||||
}
|
||||
|
||||
remainingTime -= time.Since(start)
|
||||
if remainingTime < options.MinDelay || remainingTime <= 0 {
|
||||
break
|
||||
}
|
||||
|
||||
// compute exponential backoff between waiter retries
|
||||
delay, err := smithywaiter.ComputeDelay(
|
||||
attempt, options.MinDelay, options.MaxDelay, remainingTime,
|
||||
)
|
||||
if err != nil {
|
||||
return fmt.Errorf("error computing waiter delay, %w", err)
|
||||
}
|
||||
|
||||
remainingTime -= delay
|
||||
// sleep for the delay amount before invoking a request
|
||||
if err := smithytime.SleepWithContext(ctx, delay); err != nil {
|
||||
return fmt.Errorf("request cancelled while waiting, %w", err)
|
||||
}
|
||||
}
|
||||
return fmt.Errorf("exceeded max wait time for ObjectExists waiter")
|
||||
}
|
||||
|
||||
func objectExistsStateRetryable(ctx context.Context, input *HeadObjectInput, output *HeadObjectOutput, err error) (bool, error) {
|
||||
|
||||
if err == nil {
|
||||
return false, nil
|
||||
}
|
||||
|
||||
if err != nil {
|
||||
var apiErr smithy.APIError
|
||||
ok := errors.As(err, &apiErr)
|
||||
if !ok {
|
||||
return false, fmt.Errorf("expected err to be of type smithy.APIError, got %w", err)
|
||||
}
|
||||
|
||||
if "NotFound" == apiErr.ErrorCode() {
|
||||
return true, nil
|
||||
}
|
||||
}
|
||||
|
||||
return true, nil
|
||||
}
|
||||
|
||||
// ObjectNotExistsWaiterOptions are waiter options for ObjectNotExistsWaiter
|
||||
type ObjectNotExistsWaiterOptions struct {
|
||||
|
||||
// Set of options to modify how an operation is invoked. These apply to all
|
||||
// operations invoked for this client. Use functional options on operation call to
|
||||
// modify this list for per operation behavior.
|
||||
APIOptions []func(*middleware.Stack) error
|
||||
|
||||
// MinDelay is the minimum amount of time to delay between retries. If unset,
|
||||
// ObjectNotExistsWaiter will use default minimum delay of 5 seconds. Note that
|
||||
// MinDelay must resolve to a value lesser than or equal to the MaxDelay.
|
||||
MinDelay time.Duration
|
||||
|
||||
// MaxDelay is the maximum amount of time to delay between retries. If unset or set
|
||||
// to zero, ObjectNotExistsWaiter will use default max delay of 120 seconds. Note
|
||||
// that MaxDelay must resolve to value greater than or equal to the MinDelay.
|
||||
MaxDelay time.Duration
|
||||
|
||||
// LogWaitAttempts is used to enable logging for waiter retry attempts
|
||||
LogWaitAttempts bool
|
||||
|
||||
// Retryable is function that can be used to override the service defined
|
||||
// waiter-behavior based on operation output, or returned error. This function is
|
||||
// used by the waiter to decide if a state is retryable or a terminal state. By
|
||||
// default service-modeled logic will populate this option. This option can thus be
|
||||
// used to define a custom waiter state with fall-back to service-modeled waiter
|
||||
// state mutators.The function returns an error in case of a failure state. In case
|
||||
// of retry state, this function returns a bool value of true and nil error, while
|
||||
// in case of success it returns a bool value of false and nil error.
|
||||
Retryable func(context.Context, *HeadObjectInput, *HeadObjectOutput, error) (bool, error)
|
||||
}
|
||||
|
||||
// ObjectNotExistsWaiter defines the waiters for ObjectNotExists
|
||||
type ObjectNotExistsWaiter struct {
|
||||
client HeadObjectAPIClient
|
||||
|
||||
options ObjectNotExistsWaiterOptions
|
||||
}
|
||||
|
||||
// NewObjectNotExistsWaiter constructs a ObjectNotExistsWaiter.
|
||||
func NewObjectNotExistsWaiter(client HeadObjectAPIClient, optFns ...func(*ObjectNotExistsWaiterOptions)) *ObjectNotExistsWaiter {
|
||||
options := ObjectNotExistsWaiterOptions{}
|
||||
options.MinDelay = 5 * time.Second
|
||||
options.MaxDelay = 120 * time.Second
|
||||
options.Retryable = objectNotExistsStateRetryable
|
||||
|
||||
for _, fn := range optFns {
|
||||
fn(&options)
|
||||
}
|
||||
return &ObjectNotExistsWaiter{
|
||||
client: client,
|
||||
options: options,
|
||||
}
|
||||
}
|
||||
|
||||
// Wait calls the waiter function for ObjectNotExists waiter. The maxWaitDur is the
|
||||
// maximum wait duration the waiter will wait. The maxWaitDur is required and must
|
||||
// be greater than zero.
|
||||
func (w *ObjectNotExistsWaiter) Wait(ctx context.Context, params *HeadObjectInput, maxWaitDur time.Duration, optFns ...func(*ObjectNotExistsWaiterOptions)) error {
|
||||
if maxWaitDur <= 0 {
|
||||
return fmt.Errorf("maximum wait time for waiter must be greater than zero")
|
||||
}
|
||||
|
||||
options := w.options
|
||||
for _, fn := range optFns {
|
||||
fn(&options)
|
||||
}
|
||||
|
||||
if options.MaxDelay <= 0 {
|
||||
options.MaxDelay = 120 * time.Second
|
||||
}
|
||||
|
||||
if options.MinDelay > options.MaxDelay {
|
||||
return fmt.Errorf("minimum waiter delay %v must be lesser than or equal to maximum waiter delay of %v.", options.MinDelay, options.MaxDelay)
|
||||
}
|
||||
|
||||
ctx, cancelFn := context.WithTimeout(ctx, maxWaitDur)
|
||||
defer cancelFn()
|
||||
|
||||
logger := smithywaiter.Logger{}
|
||||
remainingTime := maxWaitDur
|
||||
|
||||
var attempt int64
|
||||
for {
|
||||
|
||||
attempt++
|
||||
apiOptions := options.APIOptions
|
||||
start := time.Now()
|
||||
|
||||
if options.LogWaitAttempts {
|
||||
logger.Attempt = attempt
|
||||
apiOptions = append([]func(*middleware.Stack) error{}, options.APIOptions...)
|
||||
apiOptions = append(apiOptions, logger.AddLogger)
|
||||
}
|
||||
|
||||
out, err := w.client.HeadObject(ctx, params, func(o *Options) {
|
||||
o.APIOptions = append(o.APIOptions, apiOptions...)
|
||||
})
|
||||
|
||||
retryable, err := options.Retryable(ctx, params, out, err)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if !retryable {
|
||||
return nil
|
||||
}
|
||||
|
||||
remainingTime -= time.Since(start)
|
||||
if remainingTime < options.MinDelay || remainingTime <= 0 {
|
||||
break
|
||||
}
|
||||
|
||||
// compute exponential backoff between waiter retries
|
||||
delay, err := smithywaiter.ComputeDelay(
|
||||
attempt, options.MinDelay, options.MaxDelay, remainingTime,
|
||||
)
|
||||
if err != nil {
|
||||
return fmt.Errorf("error computing waiter delay, %w", err)
|
||||
}
|
||||
|
||||
remainingTime -= delay
|
||||
// sleep for the delay amount before invoking a request
|
||||
if err := smithytime.SleepWithContext(ctx, delay); err != nil {
|
||||
return fmt.Errorf("request cancelled while waiting, %w", err)
|
||||
}
|
||||
}
|
||||
return fmt.Errorf("exceeded max wait time for ObjectNotExists waiter")
|
||||
}
|
||||
|
||||
func objectNotExistsStateRetryable(ctx context.Context, input *HeadObjectInput, output *HeadObjectOutput, err error) (bool, error) {
|
||||
|
||||
if err != nil {
|
||||
var apiErr smithy.APIError
|
||||
ok := errors.As(err, &apiErr)
|
||||
if !ok {
|
||||
return false, fmt.Errorf("expected err to be of type smithy.APIError, got %w", err)
|
||||
}
|
||||
|
||||
if "NotFound" == apiErr.ErrorCode() {
|
||||
return false, nil
|
||||
}
|
||||
}
|
||||
|
||||
return true, nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opHeadObject(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "HeadObject",
|
||||
}
|
||||
}
|
||||
|
||||
// getHeadObjectBucketMember returns a pointer to string denoting a provided bucket
|
||||
// member valueand a boolean indicating if the input has a modeled bucket name,
|
||||
func getHeadObjectBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*HeadObjectInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addHeadObjectUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getHeadObjectBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
|
||||
// PresignHeadObject is used to generate a presigned HTTP Request which contains
|
||||
// presigned URL, signed headers and HTTP method used.
|
||||
func (c *PresignClient) PresignHeadObject(ctx context.Context, params *HeadObjectInput, optFns ...func(*PresignOptions)) (*v4.PresignedHTTPRequest, error) {
|
||||
if params == nil {
|
||||
params = &HeadObjectInput{}
|
||||
}
|
||||
options := c.options.copy()
|
||||
for _, fn := range optFns {
|
||||
fn(&options)
|
||||
}
|
||||
clientOptFns := append(options.ClientOptions, withNopHTTPClientAPIOption)
|
||||
|
||||
result, _, err := c.client.invokeOperation(ctx, "HeadObject", params, clientOptFns,
|
||||
c.client.addOperationHeadObjectMiddlewares,
|
||||
presignConverter(options).convertToPresignMiddleware,
|
||||
addHeadObjectPayloadAsUnsigned,
|
||||
)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*v4.PresignedHTTPRequest)
|
||||
return out, nil
|
||||
}
|
||||
|
||||
func addHeadObjectPayloadAsUnsigned(stack *middleware.Stack, options Options) error {
|
||||
v4.RemoveContentSHA256HeaderMiddleware(stack)
|
||||
v4.RemoveComputePayloadSHA256Middleware(stack)
|
||||
return v4.AddUnsignedPayloadMiddleware(stack)
|
||||
}
|
||||
214
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_ListBucketAnalyticsConfigurations.go
generated
vendored
Normal file
214
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_ListBucketAnalyticsConfigurations.go
generated
vendored
Normal file
@@ -0,0 +1,214 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Lists the analytics configurations for the bucket. You can have up to 1,000
|
||||
// analytics configurations per bucket. This action supports list pagination and
|
||||
// does not return more than 100 configurations at a time. You should always check
|
||||
// the IsTruncated element in the response. If there are no more configurations to
|
||||
// list, IsTruncated is set to false. If there are more configurations to list,
|
||||
// IsTruncated is set to true, and there will be a value in NextContinuationToken.
|
||||
// You use the NextContinuationToken value to continue the pagination of the list
|
||||
// by passing the value in continuation-token in the request to GET the next page.
|
||||
// To use this operation, you must have permissions to perform the
|
||||
// s3:GetAnalyticsConfiguration action. The 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).
|
||||
// For information about Amazon S3 analytics feature, see Amazon S3 Analytics –
|
||||
// Storage Class Analysis
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/analytics-storage-class.html).
|
||||
// The following operations are related to ListBucketAnalyticsConfigurations:
|
||||
//
|
||||
// *
|
||||
// GetBucketAnalyticsConfiguration
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketAnalyticsConfiguration.html)
|
||||
//
|
||||
// *
|
||||
// DeleteBucketAnalyticsConfiguration
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketAnalyticsConfiguration.html)
|
||||
//
|
||||
// *
|
||||
// PutBucketAnalyticsConfiguration
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketAnalyticsConfiguration.html)
|
||||
func (c *Client) ListBucketAnalyticsConfigurations(ctx context.Context, params *ListBucketAnalyticsConfigurationsInput, optFns ...func(*Options)) (*ListBucketAnalyticsConfigurationsOutput, error) {
|
||||
if params == nil {
|
||||
params = &ListBucketAnalyticsConfigurationsInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "ListBucketAnalyticsConfigurations", params, optFns, c.addOperationListBucketAnalyticsConfigurationsMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*ListBucketAnalyticsConfigurationsOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type ListBucketAnalyticsConfigurationsInput struct {
|
||||
|
||||
// The name of the bucket from which analytics configurations are retrieved.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The ContinuationToken that represents a placeholder from where this request
|
||||
// should begin.
|
||||
ContinuationToken *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type ListBucketAnalyticsConfigurationsOutput struct {
|
||||
|
||||
// The list of analytics configurations for a bucket.
|
||||
AnalyticsConfigurationList []types.AnalyticsConfiguration
|
||||
|
||||
// The marker that is used as a starting point for this analytics configuration
|
||||
// list response. This value is present if it was sent in the request.
|
||||
ContinuationToken *string
|
||||
|
||||
// Indicates whether the returned list of analytics configurations is complete. A
|
||||
// value of true indicates that the list is not complete and the
|
||||
// NextContinuationToken will be provided for a subsequent request.
|
||||
IsTruncated bool
|
||||
|
||||
// NextContinuationToken is sent when isTruncated is true, which indicates that
|
||||
// there are more analytics configurations to list. The next request must include
|
||||
// this NextContinuationToken. The token is obfuscated and is not a usable value.
|
||||
NextContinuationToken *string
|
||||
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationListBucketAnalyticsConfigurationsMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpListBucketAnalyticsConfigurations{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpListBucketAnalyticsConfigurations{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpListBucketAnalyticsConfigurationsValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opListBucketAnalyticsConfigurations(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addListBucketAnalyticsConfigurationsUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opListBucketAnalyticsConfigurations(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "ListBucketAnalyticsConfigurations",
|
||||
}
|
||||
}
|
||||
|
||||
// getListBucketAnalyticsConfigurationsBucketMember returns a pointer to string
|
||||
// denoting a provided bucket member valueand a boolean indicating if the input has
|
||||
// a modeled bucket name,
|
||||
func getListBucketAnalyticsConfigurationsBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*ListBucketAnalyticsConfigurationsInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addListBucketAnalyticsConfigurationsUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getListBucketAnalyticsConfigurationsBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
207
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_ListBucketIntelligentTieringConfigurations.go
generated
vendored
Normal file
207
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_ListBucketIntelligentTieringConfigurations.go
generated
vendored
Normal file
@@ -0,0 +1,207 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Lists the S3 Intelligent-Tiering configuration from the specified bucket. The S3
|
||||
// Intelligent-Tiering storage class is designed to optimize storage costs by
|
||||
// automatically moving data to the most cost-effective storage access tier,
|
||||
// without performance impact or operational overhead. S3 Intelligent-Tiering
|
||||
// delivers automatic cost savings in two low latency and high throughput access
|
||||
// tiers. For data that can be accessed asynchronously, you can choose to activate
|
||||
// automatic archiving capabilities within the S3 Intelligent-Tiering storage
|
||||
// class. The S3 Intelligent-Tiering storage class is the ideal storage class for
|
||||
// data with unknown, changing, or unpredictable access patterns, independent of
|
||||
// object size or retention period. If the size of an object is less than 128 KB,
|
||||
// it is not eligible for auto-tiering. Smaller objects can be stored, but they are
|
||||
// always charged at the Frequent Access tier rates in the S3 Intelligent-Tiering
|
||||
// storage class. For more information, see Storage class for automatically
|
||||
// optimizing frequently and infrequently accessed objects
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html#sc-dynamic-data-access).
|
||||
// Operations related to ListBucketIntelligentTieringConfigurations include:
|
||||
//
|
||||
// *
|
||||
// DeleteBucketIntelligentTieringConfiguration
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketIntelligentTieringConfiguration.html)
|
||||
//
|
||||
// *
|
||||
// PutBucketIntelligentTieringConfiguration
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketIntelligentTieringConfiguration.html)
|
||||
//
|
||||
// *
|
||||
// GetBucketIntelligentTieringConfiguration
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketIntelligentTieringConfiguration.html)
|
||||
func (c *Client) ListBucketIntelligentTieringConfigurations(ctx context.Context, params *ListBucketIntelligentTieringConfigurationsInput, optFns ...func(*Options)) (*ListBucketIntelligentTieringConfigurationsOutput, error) {
|
||||
if params == nil {
|
||||
params = &ListBucketIntelligentTieringConfigurationsInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "ListBucketIntelligentTieringConfigurations", params, optFns, c.addOperationListBucketIntelligentTieringConfigurationsMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*ListBucketIntelligentTieringConfigurationsOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type ListBucketIntelligentTieringConfigurationsInput struct {
|
||||
|
||||
// The name of the Amazon S3 bucket whose configuration you want to modify or
|
||||
// retrieve.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The ContinuationToken that represents a placeholder from where this request
|
||||
// should begin.
|
||||
ContinuationToken *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type ListBucketIntelligentTieringConfigurationsOutput struct {
|
||||
|
||||
// The ContinuationToken that represents a placeholder from where this request
|
||||
// should begin.
|
||||
ContinuationToken *string
|
||||
|
||||
// The list of S3 Intelligent-Tiering configurations for a bucket.
|
||||
IntelligentTieringConfigurationList []types.IntelligentTieringConfiguration
|
||||
|
||||
// Indicates whether the returned list of analytics configurations is complete. A
|
||||
// value of true indicates that the list is not complete and the
|
||||
// NextContinuationToken will be provided for a subsequent request.
|
||||
IsTruncated bool
|
||||
|
||||
// The marker used to continue this inventory configuration listing. Use the
|
||||
// NextContinuationToken from this response to continue the listing in a subsequent
|
||||
// request. The continuation token is an opaque value that Amazon S3 understands.
|
||||
NextContinuationToken *string
|
||||
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationListBucketIntelligentTieringConfigurationsMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpListBucketIntelligentTieringConfigurations{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpListBucketIntelligentTieringConfigurations{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpListBucketIntelligentTieringConfigurationsValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opListBucketIntelligentTieringConfigurations(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addListBucketIntelligentTieringConfigurationsUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opListBucketIntelligentTieringConfigurations(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "ListBucketIntelligentTieringConfigurations",
|
||||
}
|
||||
}
|
||||
|
||||
// getListBucketIntelligentTieringConfigurationsBucketMember returns a pointer to
|
||||
// string denoting a provided bucket member valueand a boolean indicating if the
|
||||
// input has a modeled bucket name,
|
||||
func getListBucketIntelligentTieringConfigurationsBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*ListBucketIntelligentTieringConfigurationsInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addListBucketIntelligentTieringConfigurationsUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getListBucketIntelligentTieringConfigurationsBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
215
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_ListBucketInventoryConfigurations.go
generated
vendored
Normal file
215
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_ListBucketInventoryConfigurations.go
generated
vendored
Normal file
@@ -0,0 +1,215 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Returns a list of inventory configurations for the bucket. You can have up to
|
||||
// 1,000 analytics configurations per bucket. This action supports list pagination
|
||||
// and does not return more than 100 configurations at a time. Always check the
|
||||
// IsTruncated element in the response. If there are no more configurations to
|
||||
// list, IsTruncated is set to false. If there are more configurations to list,
|
||||
// IsTruncated is set to true, and there is a value in NextContinuationToken. You
|
||||
// use the NextContinuationToken value to continue the pagination of the list by
|
||||
// passing the value in continuation-token in the request to GET the next page. To
|
||||
// use this operation, you must have permissions to perform the
|
||||
// s3:GetInventoryConfiguration action. The 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).
|
||||
// For information about the Amazon S3 inventory feature, see Amazon S3 Inventory
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-inventory.html) The
|
||||
// following operations are related to ListBucketInventoryConfigurations:
|
||||
//
|
||||
// *
|
||||
// GetBucketInventoryConfiguration
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketInventoryConfiguration.html)
|
||||
//
|
||||
// *
|
||||
// DeleteBucketInventoryConfiguration
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketInventoryConfiguration.html)
|
||||
//
|
||||
// *
|
||||
// PutBucketInventoryConfiguration
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketInventoryConfiguration.html)
|
||||
func (c *Client) ListBucketInventoryConfigurations(ctx context.Context, params *ListBucketInventoryConfigurationsInput, optFns ...func(*Options)) (*ListBucketInventoryConfigurationsOutput, error) {
|
||||
if params == nil {
|
||||
params = &ListBucketInventoryConfigurationsInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "ListBucketInventoryConfigurations", params, optFns, c.addOperationListBucketInventoryConfigurationsMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*ListBucketInventoryConfigurationsOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type ListBucketInventoryConfigurationsInput struct {
|
||||
|
||||
// The name of the bucket containing the inventory configurations to retrieve.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The marker used to continue an inventory configuration listing that has been
|
||||
// truncated. Use the NextContinuationToken from a previously truncated list
|
||||
// response to continue the listing. The continuation token is an opaque value that
|
||||
// Amazon S3 understands.
|
||||
ContinuationToken *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type ListBucketInventoryConfigurationsOutput struct {
|
||||
|
||||
// If sent in the request, the marker that is used as a starting point for this
|
||||
// inventory configuration list response.
|
||||
ContinuationToken *string
|
||||
|
||||
// The list of inventory configurations for a bucket.
|
||||
InventoryConfigurationList []types.InventoryConfiguration
|
||||
|
||||
// Tells whether the returned list of inventory configurations is complete. A value
|
||||
// of true indicates that the list is not complete and the NextContinuationToken is
|
||||
// provided for a subsequent request.
|
||||
IsTruncated bool
|
||||
|
||||
// The marker used to continue this inventory configuration listing. Use the
|
||||
// NextContinuationToken from this response to continue the listing in a subsequent
|
||||
// request. The continuation token is an opaque value that Amazon S3 understands.
|
||||
NextContinuationToken *string
|
||||
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationListBucketInventoryConfigurationsMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpListBucketInventoryConfigurations{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpListBucketInventoryConfigurations{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpListBucketInventoryConfigurationsValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opListBucketInventoryConfigurations(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addListBucketInventoryConfigurationsUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opListBucketInventoryConfigurations(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "ListBucketInventoryConfigurations",
|
||||
}
|
||||
}
|
||||
|
||||
// getListBucketInventoryConfigurationsBucketMember returns a pointer to string
|
||||
// denoting a provided bucket member valueand a boolean indicating if the input has
|
||||
// a modeled bucket name,
|
||||
func getListBucketInventoryConfigurationsBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*ListBucketInventoryConfigurationsInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addListBucketInventoryConfigurationsUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getListBucketInventoryConfigurationsBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
218
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_ListBucketMetricsConfigurations.go
generated
vendored
Normal file
218
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_ListBucketMetricsConfigurations.go
generated
vendored
Normal file
@@ -0,0 +1,218 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Lists the metrics configurations for the bucket. The metrics configurations are
|
||||
// only for the request metrics of the bucket and do not provide information on
|
||||
// daily storage metrics. You can have up to 1,000 configurations per bucket. This
|
||||
// action supports list pagination and does not return more than 100 configurations
|
||||
// at a time. Always check the IsTruncated element in the response. If there are no
|
||||
// more configurations to list, IsTruncated is set to false. If there are more
|
||||
// configurations to list, IsTruncated is set to true, and there is a value in
|
||||
// NextContinuationToken. You use the NextContinuationToken value to continue the
|
||||
// pagination of the list by passing the value in continuation-token in the request
|
||||
// to GET the next page. To use this operation, you must have permissions to
|
||||
// perform the s3:GetMetricsConfiguration action. The 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).
|
||||
// For more information about metrics configurations and CloudWatch request
|
||||
// metrics, see Monitoring Metrics with Amazon CloudWatch
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/cloudwatch-monitoring.html).
|
||||
// The following operations are related to ListBucketMetricsConfigurations:
|
||||
//
|
||||
// *
|
||||
// PutBucketMetricsConfiguration
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketMetricsConfiguration.html)
|
||||
//
|
||||
// *
|
||||
// GetBucketMetricsConfiguration
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketMetricsConfiguration.html)
|
||||
//
|
||||
// *
|
||||
// DeleteBucketMetricsConfiguration
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketMetricsConfiguration.html)
|
||||
func (c *Client) ListBucketMetricsConfigurations(ctx context.Context, params *ListBucketMetricsConfigurationsInput, optFns ...func(*Options)) (*ListBucketMetricsConfigurationsOutput, error) {
|
||||
if params == nil {
|
||||
params = &ListBucketMetricsConfigurationsInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "ListBucketMetricsConfigurations", params, optFns, c.addOperationListBucketMetricsConfigurationsMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*ListBucketMetricsConfigurationsOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type ListBucketMetricsConfigurationsInput struct {
|
||||
|
||||
// The name of the bucket containing the metrics configurations to retrieve.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The marker that is used to continue a metrics configuration listing that has
|
||||
// been truncated. Use the NextContinuationToken from a previously truncated list
|
||||
// response to continue the listing. The continuation token is an opaque value that
|
||||
// Amazon S3 understands.
|
||||
ContinuationToken *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type ListBucketMetricsConfigurationsOutput struct {
|
||||
|
||||
// The marker that is used as a starting point for this metrics configuration list
|
||||
// response. This value is present if it was sent in the request.
|
||||
ContinuationToken *string
|
||||
|
||||
// Indicates whether the returned list of metrics configurations is complete. A
|
||||
// value of true indicates that the list is not complete and the
|
||||
// NextContinuationToken will be provided for a subsequent request.
|
||||
IsTruncated bool
|
||||
|
||||
// The list of metrics configurations for a bucket.
|
||||
MetricsConfigurationList []types.MetricsConfiguration
|
||||
|
||||
// The marker used to continue a metrics configuration listing that has been
|
||||
// truncated. Use the NextContinuationToken from a previously truncated list
|
||||
// response to continue the listing. The continuation token is an opaque value that
|
||||
// Amazon S3 understands.
|
||||
NextContinuationToken *string
|
||||
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationListBucketMetricsConfigurationsMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpListBucketMetricsConfigurations{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpListBucketMetricsConfigurations{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpListBucketMetricsConfigurationsValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opListBucketMetricsConfigurations(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addListBucketMetricsConfigurationsUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opListBucketMetricsConfigurations(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "ListBucketMetricsConfigurations",
|
||||
}
|
||||
}
|
||||
|
||||
// getListBucketMetricsConfigurationsBucketMember returns a pointer to string
|
||||
// denoting a provided bucket member valueand a boolean indicating if the input has
|
||||
// a modeled bucket name,
|
||||
func getListBucketMetricsConfigurationsBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*ListBucketMetricsConfigurationsInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addListBucketMetricsConfigurationsUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getListBucketMetricsConfigurationsBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
145
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_ListBuckets.go
generated
vendored
Normal file
145
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_ListBuckets.go
generated
vendored
Normal file
@@ -0,0 +1,145 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Returns a list of all buckets owned by the authenticated sender of the request.
|
||||
func (c *Client) ListBuckets(ctx context.Context, params *ListBucketsInput, optFns ...func(*Options)) (*ListBucketsOutput, error) {
|
||||
if params == nil {
|
||||
params = &ListBucketsInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "ListBuckets", params, optFns, c.addOperationListBucketsMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*ListBucketsOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type ListBucketsInput struct {
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type ListBucketsOutput struct {
|
||||
|
||||
// The list of buckets owned by the requestor.
|
||||
Buckets []types.Bucket
|
||||
|
||||
// The owner of the buckets listed.
|
||||
Owner *types.Owner
|
||||
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationListBucketsMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpListBuckets{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpListBuckets{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opListBuckets(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addListBucketsUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opListBuckets(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "ListBuckets",
|
||||
}
|
||||
}
|
||||
|
||||
func addListBucketsUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: nopGetBucketAccessor,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: false,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
310
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_ListMultipartUploads.go
generated
vendored
Normal file
310
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_ListMultipartUploads.go
generated
vendored
Normal file
@@ -0,0 +1,310 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// This action lists in-progress multipart uploads. An in-progress multipart upload
|
||||
// is a multipart upload that has been initiated using the Initiate Multipart
|
||||
// Upload request, but has not yet been completed or aborted. This action returns
|
||||
// at most 1,000 multipart uploads in the response. 1,000 multipart uploads is the
|
||||
// maximum number of uploads a response can include, which is also the default
|
||||
// value. You can further limit the number of uploads in a response by specifying
|
||||
// the max-uploads parameter in the response. If additional multipart uploads
|
||||
// satisfy the list criteria, the response will contain an IsTruncated element with
|
||||
// the value true. To list the additional multipart uploads, use the key-marker and
|
||||
// upload-id-marker request parameters. In the response, the uploads are sorted by
|
||||
// key. If your application has initiated more than one multipart upload using the
|
||||
// same object key, then uploads in the response are first sorted by key.
|
||||
// Additionally, uploads are sorted in ascending order within each key by the
|
||||
// upload initiation time. For more information on multipart uploads, see Uploading
|
||||
// Objects Using Multipart Upload
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/uploadobjusingmpu.html). For
|
||||
// information on permissions required to use the multipart upload API, see
|
||||
// Multipart Upload and Permissions
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html). The
|
||||
// following operations are related to ListMultipartUploads:
|
||||
//
|
||||
// *
|
||||
// CreateMultipartUpload
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html)
|
||||
//
|
||||
// *
|
||||
// UploadPart
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html)
|
||||
//
|
||||
// *
|
||||
// CompleteMultipartUpload
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CompleteMultipartUpload.html)
|
||||
//
|
||||
// *
|
||||
// ListParts
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListParts.html)
|
||||
//
|
||||
// *
|
||||
// AbortMultipartUpload
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_AbortMultipartUpload.html)
|
||||
func (c *Client) ListMultipartUploads(ctx context.Context, params *ListMultipartUploadsInput, optFns ...func(*Options)) (*ListMultipartUploadsOutput, error) {
|
||||
if params == nil {
|
||||
params = &ListMultipartUploadsInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "ListMultipartUploads", params, optFns, c.addOperationListMultipartUploadsMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*ListMultipartUploadsOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type ListMultipartUploadsInput struct {
|
||||
|
||||
// The name of the bucket to which the multipart upload was initiated. When using
|
||||
// this action with an access point, you must direct requests to the access point
|
||||
// hostname. The access point hostname takes the form
|
||||
// AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this
|
||||
// action with an access point through the Amazon Web Services SDKs, you provide
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see Using access points
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide. When using this action with Amazon S3 on Outposts,
|
||||
// you must direct requests to the S3 on Outposts hostname. The S3 on Outposts
|
||||
// hostname takes the form
|
||||
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When using
|
||||
// this action using S3 on Outposts through the Amazon Web Services SDKs, you
|
||||
// provide the Outposts bucket ARN in place of the bucket name. For more
|
||||
// information about S3 on Outposts ARNs, see Using S3 on Outposts
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) in the
|
||||
// Amazon S3 User Guide.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// Character you use to group keys. All keys that contain the same string between
|
||||
// the prefix, if specified, and the first occurrence of the delimiter after the
|
||||
// prefix are grouped under a single result element, CommonPrefixes. If you don't
|
||||
// specify the prefix parameter, then the substring starts at the beginning of the
|
||||
// key. The keys that are grouped under CommonPrefixes result element are not
|
||||
// returned elsewhere in the response.
|
||||
Delimiter *string
|
||||
|
||||
// Requests Amazon S3 to encode the object keys in the response and specifies the
|
||||
// encoding method to use. An object key may contain any Unicode character;
|
||||
// however, XML 1.0 parser cannot parse some characters, such as characters with an
|
||||
// ASCII value from 0 to 10. For characters that are not supported in XML 1.0, you
|
||||
// can add this parameter to request that Amazon S3 encode the keys in the
|
||||
// response.
|
||||
EncodingType types.EncodingType
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
// Together with upload-id-marker, this parameter specifies the multipart upload
|
||||
// after which listing should begin. If upload-id-marker is not specified, only the
|
||||
// keys lexicographically greater than the specified key-marker will be included in
|
||||
// the list. If upload-id-marker is specified, any multipart uploads for a key
|
||||
// equal to the key-marker might also be included, provided those multipart uploads
|
||||
// have upload IDs lexicographically greater than the specified upload-id-marker.
|
||||
KeyMarker *string
|
||||
|
||||
// Sets the maximum number of multipart uploads, from 1 to 1,000, to return in the
|
||||
// response body. 1,000 is the maximum number of uploads that can be returned in a
|
||||
// response.
|
||||
MaxUploads int32
|
||||
|
||||
// Lists in-progress uploads only for those keys that begin with the specified
|
||||
// prefix. You can use prefixes to separate a bucket into different grouping of
|
||||
// keys. (You can think of using prefix to make groups in the same way you'd use a
|
||||
// folder in a file system.)
|
||||
Prefix *string
|
||||
|
||||
// Together with key-marker, specifies the multipart upload after which listing
|
||||
// should begin. If key-marker is not specified, the upload-id-marker parameter is
|
||||
// ignored. Otherwise, any multipart uploads for a key equal to the key-marker
|
||||
// might be included in the list only if they have an upload ID lexicographically
|
||||
// greater than the specified upload-id-marker.
|
||||
UploadIdMarker *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type ListMultipartUploadsOutput struct {
|
||||
|
||||
// The name of the bucket to which the multipart upload was initiated. Does not
|
||||
// return the access point ARN or access point alias if used.
|
||||
Bucket *string
|
||||
|
||||
// If you specify a delimiter in the request, then the result returns each distinct
|
||||
// key prefix containing the delimiter in a CommonPrefixes element. The distinct
|
||||
// key prefixes are returned in the Prefix child element.
|
||||
CommonPrefixes []types.CommonPrefix
|
||||
|
||||
// Contains the delimiter you specified in the request. If you don't specify a
|
||||
// delimiter in your request, this element is absent from the response.
|
||||
Delimiter *string
|
||||
|
||||
// Encoding type used by Amazon S3 to encode object keys in the response. If you
|
||||
// specify encoding-type request parameter, Amazon S3 includes this element in the
|
||||
// response, and returns encoded key name values in the following response
|
||||
// elements: Delimiter, KeyMarker, Prefix, NextKeyMarker, Key.
|
||||
EncodingType types.EncodingType
|
||||
|
||||
// Indicates whether the returned list of multipart uploads is truncated. A value
|
||||
// of true indicates that the list was truncated. The list can be truncated if the
|
||||
// number of multipart uploads exceeds the limit allowed or specified by max
|
||||
// uploads.
|
||||
IsTruncated bool
|
||||
|
||||
// The key at or after which the listing began.
|
||||
KeyMarker *string
|
||||
|
||||
// Maximum number of multipart uploads that could have been included in the
|
||||
// response.
|
||||
MaxUploads int32
|
||||
|
||||
// When a list is truncated, this element specifies the value that should be used
|
||||
// for the key-marker request parameter in a subsequent request.
|
||||
NextKeyMarker *string
|
||||
|
||||
// When a list is truncated, this element specifies the value that should be used
|
||||
// for the upload-id-marker request parameter in a subsequent request.
|
||||
NextUploadIdMarker *string
|
||||
|
||||
// When a prefix is provided in the request, this field contains the specified
|
||||
// prefix. The result contains only keys starting with the specified prefix.
|
||||
Prefix *string
|
||||
|
||||
// Upload ID after which listing began.
|
||||
UploadIdMarker *string
|
||||
|
||||
// Container for elements related to a particular multipart upload. A response can
|
||||
// contain zero or more Upload elements.
|
||||
Uploads []types.MultipartUpload
|
||||
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationListMultipartUploadsMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpListMultipartUploads{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpListMultipartUploads{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpListMultipartUploadsValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opListMultipartUploads(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addListMultipartUploadsUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opListMultipartUploads(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "ListMultipartUploads",
|
||||
}
|
||||
}
|
||||
|
||||
// getListMultipartUploadsBucketMember returns a pointer to string denoting a
|
||||
// provided bucket member valueand a boolean indicating if the input has a modeled
|
||||
// bucket name,
|
||||
func getListMultipartUploadsBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*ListMultipartUploadsInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addListMultipartUploadsUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getListMultipartUploadsBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
276
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_ListObjectVersions.go
generated
vendored
Normal file
276
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_ListObjectVersions.go
generated
vendored
Normal file
@@ -0,0 +1,276 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Returns metadata about all versions of the objects in a bucket. You can also use
|
||||
// request parameters as selection criteria to return metadata about a subset of
|
||||
// all the object versions. To use this operation, you must have permissions to
|
||||
// perform the s3:ListBucketVersions action. Be aware of the name difference. A 200
|
||||
// OK response can contain valid or invalid XML. Make sure to design your
|
||||
// application to parse the contents of the response and handle it appropriately.
|
||||
// To use this operation, you must have READ access to the bucket. This action is
|
||||
// not supported by Amazon S3 on Outposts. The following operations are related to
|
||||
// ListObjectVersions:
|
||||
//
|
||||
// * ListObjectsV2
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjectsV2.html)
|
||||
//
|
||||
// *
|
||||
// GetObject
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html)
|
||||
//
|
||||
// *
|
||||
// PutObject
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html)
|
||||
//
|
||||
// *
|
||||
// DeleteObject
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObject.html)
|
||||
func (c *Client) ListObjectVersions(ctx context.Context, params *ListObjectVersionsInput, optFns ...func(*Options)) (*ListObjectVersionsOutput, error) {
|
||||
if params == nil {
|
||||
params = &ListObjectVersionsInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "ListObjectVersions", params, optFns, c.addOperationListObjectVersionsMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*ListObjectVersionsOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type ListObjectVersionsInput struct {
|
||||
|
||||
// The bucket name that contains the objects.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// A delimiter is a character that you specify to group keys. All keys that contain
|
||||
// the same string between the prefix and the first occurrence of the delimiter are
|
||||
// grouped under a single result element in CommonPrefixes. These groups are
|
||||
// counted as one result against the max-keys limitation. These keys are not
|
||||
// returned elsewhere in the response.
|
||||
Delimiter *string
|
||||
|
||||
// Requests Amazon S3 to encode the object keys in the response and specifies the
|
||||
// encoding method to use. An object key may contain any Unicode character;
|
||||
// however, XML 1.0 parser cannot parse some characters, such as characters with an
|
||||
// ASCII value from 0 to 10. For characters that are not supported in XML 1.0, you
|
||||
// can add this parameter to request that Amazon S3 encode the keys in the
|
||||
// response.
|
||||
EncodingType types.EncodingType
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
// Specifies the key to start with when listing objects in a bucket.
|
||||
KeyMarker *string
|
||||
|
||||
// Sets the maximum number of keys returned in the response. By default the action
|
||||
// returns up to 1,000 key names. The response might contain fewer keys but will
|
||||
// never contain more. If additional keys satisfy the search criteria, but were not
|
||||
// returned because max-keys was exceeded, the response contains true. To return
|
||||
// the additional keys, see key-marker and version-id-marker.
|
||||
MaxKeys int32
|
||||
|
||||
// Use this parameter to select only those keys that begin with the specified
|
||||
// prefix. You can use prefixes to separate a bucket into different groupings of
|
||||
// keys. (You can think of using prefix to make groups in the same way you'd use a
|
||||
// folder in a file system.) You can use prefix with delimiter to roll up numerous
|
||||
// objects into a single result under CommonPrefixes.
|
||||
Prefix *string
|
||||
|
||||
// Specifies the object version you want to start listing from.
|
||||
VersionIdMarker *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type ListObjectVersionsOutput struct {
|
||||
|
||||
// All of the keys rolled up into a common prefix count as a single return when
|
||||
// calculating the number of returns.
|
||||
CommonPrefixes []types.CommonPrefix
|
||||
|
||||
// Container for an object that is a delete marker.
|
||||
DeleteMarkers []types.DeleteMarkerEntry
|
||||
|
||||
// The delimiter grouping the included keys. A delimiter is a character that you
|
||||
// specify to group keys. All keys that contain the same string between the prefix
|
||||
// and the first occurrence of the delimiter are grouped under a single result
|
||||
// element in CommonPrefixes. These groups are counted as one result against the
|
||||
// max-keys limitation. These keys are not returned elsewhere in the response.
|
||||
Delimiter *string
|
||||
|
||||
// Encoding type used by Amazon S3 to encode object key names in the XML response.
|
||||
// If you specify encoding-type request parameter, Amazon S3 includes this element
|
||||
// in the response, and returns encoded key name values in the following response
|
||||
// elements: KeyMarker, NextKeyMarker, Prefix, Key, and Delimiter.
|
||||
EncodingType types.EncodingType
|
||||
|
||||
// A flag that indicates whether Amazon S3 returned all of the results that
|
||||
// satisfied the search criteria. If your results were truncated, you can make a
|
||||
// follow-up paginated request using the NextKeyMarker and NextVersionIdMarker
|
||||
// response parameters as a starting place in another request to return the rest of
|
||||
// the results.
|
||||
IsTruncated bool
|
||||
|
||||
// Marks the last key returned in a truncated response.
|
||||
KeyMarker *string
|
||||
|
||||
// Specifies the maximum number of objects to return.
|
||||
MaxKeys int32
|
||||
|
||||
// The bucket name.
|
||||
Name *string
|
||||
|
||||
// When the number of responses exceeds the value of MaxKeys, NextKeyMarker
|
||||
// specifies the first key not returned that satisfies the search criteria. Use
|
||||
// this value for the key-marker request parameter in a subsequent request.
|
||||
NextKeyMarker *string
|
||||
|
||||
// When the number of responses exceeds the value of MaxKeys, NextVersionIdMarker
|
||||
// specifies the first object version not returned that satisfies the search
|
||||
// criteria. Use this value for the version-id-marker request parameter in a
|
||||
// subsequent request.
|
||||
NextVersionIdMarker *string
|
||||
|
||||
// Selects objects that start with the value supplied by this parameter.
|
||||
Prefix *string
|
||||
|
||||
// Marks the last version of the key returned in a truncated response.
|
||||
VersionIdMarker *string
|
||||
|
||||
// Container for version information.
|
||||
Versions []types.ObjectVersion
|
||||
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationListObjectVersionsMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpListObjectVersions{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpListObjectVersions{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpListObjectVersionsValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opListObjectVersions(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addListObjectVersionsUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opListObjectVersions(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "ListObjectVersions",
|
||||
}
|
||||
}
|
||||
|
||||
// getListObjectVersionsBucketMember returns a pointer to string denoting a
|
||||
// provided bucket member valueand a boolean indicating if the input has a modeled
|
||||
// bucket name,
|
||||
func getListObjectVersionsBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*ListObjectVersionsInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addListObjectVersionsUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getListObjectVersionsBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
284
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_ListObjects.go
generated
vendored
Normal file
284
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_ListObjects.go
generated
vendored
Normal file
@@ -0,0 +1,284 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Returns some or all (up to 1,000) of the objects in a bucket. You can use the
|
||||
// request parameters as selection criteria to return a subset of the objects in a
|
||||
// bucket. A 200 OK response can contain valid or invalid XML. Be sure to design
|
||||
// your application to parse the contents of the response and handle it
|
||||
// appropriately. This action has been revised. We recommend that you use the newer
|
||||
// version, ListObjectsV2
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjectsV2.html), when
|
||||
// developing applications. For backward compatibility, Amazon S3 continues to
|
||||
// support ListObjects. The following operations are related to ListObjects:
|
||||
//
|
||||
// *
|
||||
// ListObjectsV2
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjectsV2.html)
|
||||
//
|
||||
// *
|
||||
// GetObject
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html)
|
||||
//
|
||||
// *
|
||||
// PutObject
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html)
|
||||
//
|
||||
// *
|
||||
// CreateBucket
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html)
|
||||
//
|
||||
// *
|
||||
// ListBuckets
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBuckets.html)
|
||||
func (c *Client) ListObjects(ctx context.Context, params *ListObjectsInput, optFns ...func(*Options)) (*ListObjectsOutput, error) {
|
||||
if params == nil {
|
||||
params = &ListObjectsInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "ListObjects", params, optFns, c.addOperationListObjectsMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*ListObjectsOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type ListObjectsInput struct {
|
||||
|
||||
// The name of the bucket containing the objects. When using this action with an
|
||||
// access point, you must direct requests to the access point hostname. The access
|
||||
// point hostname takes the form
|
||||
// AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this
|
||||
// action with an access point through the Amazon Web Services SDKs, you provide
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see Using access points
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide. When using this action with Amazon S3 on Outposts,
|
||||
// you must direct requests to the S3 on Outposts hostname. The S3 on Outposts
|
||||
// hostname takes the form
|
||||
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When using
|
||||
// this action using S3 on Outposts through the Amazon Web Services SDKs, you
|
||||
// provide the Outposts bucket ARN in place of the bucket name. For more
|
||||
// information about S3 on Outposts ARNs, see Using S3 on Outposts
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) in the
|
||||
// Amazon S3 User Guide.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// A delimiter is a character you use to group keys.
|
||||
Delimiter *string
|
||||
|
||||
// Requests Amazon S3 to encode the object keys in the response and specifies the
|
||||
// encoding method to use. An object key may contain any Unicode character;
|
||||
// however, XML 1.0 parser cannot parse some characters, such as characters with an
|
||||
// ASCII value from 0 to 10. For characters that are not supported in XML 1.0, you
|
||||
// can add this parameter to request that Amazon S3 encode the keys in the
|
||||
// response.
|
||||
EncodingType types.EncodingType
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
// Marker is where you want Amazon S3 to start listing from. Amazon S3 starts
|
||||
// listing after this specified key. Marker can be any key in the bucket.
|
||||
Marker *string
|
||||
|
||||
// Sets the maximum number of keys returned in the response. By default the action
|
||||
// returns up to 1,000 key names. The response might contain fewer keys but will
|
||||
// never contain more.
|
||||
MaxKeys int32
|
||||
|
||||
// Limits the response to keys that begin with the specified prefix.
|
||||
Prefix *string
|
||||
|
||||
// Confirms that the requester knows that she or he will be charged for the list
|
||||
// objects request. Bucket owners need not specify this parameter in their
|
||||
// requests.
|
||||
RequestPayer types.RequestPayer
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type ListObjectsOutput struct {
|
||||
|
||||
// All of the keys (up to 1,000) rolled up in a common prefix count as a single
|
||||
// return when calculating the number of returns. A response can contain
|
||||
// CommonPrefixes only if you specify a delimiter. CommonPrefixes contains all (if
|
||||
// there are any) keys between Prefix and the next occurrence of the string
|
||||
// specified by the delimiter. CommonPrefixes lists keys that act like
|
||||
// subdirectories in the directory specified by Prefix. For example, if the prefix
|
||||
// is notes/ and the delimiter is a slash (/) as in notes/summer/july, the common
|
||||
// prefix is notes/summer/. All of the keys that roll up into a common prefix count
|
||||
// as a single return when calculating the number of returns.
|
||||
CommonPrefixes []types.CommonPrefix
|
||||
|
||||
// Metadata about each object returned.
|
||||
Contents []types.Object
|
||||
|
||||
// Causes keys that contain the same string between the prefix and the first
|
||||
// occurrence of the delimiter to be rolled up into a single result element in the
|
||||
// CommonPrefixes collection. These rolled-up keys are not returned elsewhere in
|
||||
// the response. Each rolled-up result counts as only one return against the
|
||||
// MaxKeys value.
|
||||
Delimiter *string
|
||||
|
||||
// Encoding type used by Amazon S3 to encode object keys in the response.
|
||||
EncodingType types.EncodingType
|
||||
|
||||
// A flag that indicates whether Amazon S3 returned all of the results that
|
||||
// satisfied the search criteria.
|
||||
IsTruncated bool
|
||||
|
||||
// Indicates where in the bucket listing begins. Marker is included in the response
|
||||
// if it was sent with the request.
|
||||
Marker *string
|
||||
|
||||
// The maximum number of keys returned in the response body.
|
||||
MaxKeys int32
|
||||
|
||||
// The bucket name.
|
||||
Name *string
|
||||
|
||||
// When response is truncated (the IsTruncated element value in the response is
|
||||
// true), you can use the key name in this field as marker in the subsequent
|
||||
// request to get next set of objects. Amazon S3 lists objects in alphabetical
|
||||
// order Note: This element is returned only if you have delimiter request
|
||||
// parameter specified. If response does not include the NextMarker and it is
|
||||
// truncated, you can use the value of the last Key in the response as the marker
|
||||
// in the subsequent request to get the next set of object keys.
|
||||
NextMarker *string
|
||||
|
||||
// Keys that begin with the indicated prefix.
|
||||
Prefix *string
|
||||
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationListObjectsMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpListObjects{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpListObjects{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpListObjectsValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opListObjects(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addListObjectsUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opListObjects(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "ListObjects",
|
||||
}
|
||||
}
|
||||
|
||||
// getListObjectsBucketMember returns a pointer to string denoting a provided
|
||||
// bucket member valueand a boolean indicating if the input has a modeled bucket
|
||||
// name,
|
||||
func getListObjectsBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*ListObjectsInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addListObjectsUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getListObjectsBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
404
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_ListObjectsV2.go
generated
vendored
Normal file
404
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_ListObjectsV2.go
generated
vendored
Normal file
@@ -0,0 +1,404 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
"fmt"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Returns some or all (up to 1,000) of the objects in a bucket with each request.
|
||||
// You can use the request parameters as selection criteria to return a subset of
|
||||
// the objects in a bucket. A 200 OK response can contain valid or invalid XML.
|
||||
// Make sure to design your application to parse the contents of the response and
|
||||
// handle it appropriately. Objects are returned sorted in an ascending order of
|
||||
// the respective key names in the list. For more information about listing
|
||||
// objects, see Listing object keys programmatically
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/ListingKeysUsingAPIs.html)
|
||||
// To use this operation, you must have READ access to the bucket. To use this
|
||||
// action in an Identity and Access Management (IAM) policy, you must have
|
||||
// permissions to perform the s3:ListBucket action. The 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).
|
||||
// This section describes the latest revision of this action. We recommend that you
|
||||
// use this revised API for application development. For backward compatibility,
|
||||
// Amazon S3 continues to support the prior version of this API, ListObjects
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjects.html). To get a
|
||||
// list of your buckets, see ListBuckets
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBuckets.html). The
|
||||
// following operations are related to ListObjectsV2:
|
||||
//
|
||||
// * GetObject
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html)
|
||||
//
|
||||
// *
|
||||
// PutObject
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html)
|
||||
//
|
||||
// *
|
||||
// CreateBucket
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html)
|
||||
func (c *Client) ListObjectsV2(ctx context.Context, params *ListObjectsV2Input, optFns ...func(*Options)) (*ListObjectsV2Output, error) {
|
||||
if params == nil {
|
||||
params = &ListObjectsV2Input{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "ListObjectsV2", params, optFns, c.addOperationListObjectsV2Middlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*ListObjectsV2Output)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type ListObjectsV2Input struct {
|
||||
|
||||
// Bucket name to list. When using this action with an access point, you must
|
||||
// direct requests to the access point hostname. The access point hostname takes
|
||||
// the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When
|
||||
// using this action with an access point through the Amazon Web Services SDKs, you
|
||||
// provide the access point ARN in place of the bucket name. For more information
|
||||
// about access point ARNs, see Using access points
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide. When using this action with Amazon S3 on Outposts,
|
||||
// you must direct requests to the S3 on Outposts hostname. The S3 on Outposts
|
||||
// hostname takes the form
|
||||
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When using
|
||||
// this action using S3 on Outposts through the Amazon Web Services SDKs, you
|
||||
// provide the Outposts bucket ARN in place of the bucket name. For more
|
||||
// information about S3 on Outposts ARNs, see Using S3 on Outposts
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) in the
|
||||
// Amazon S3 User Guide.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// ContinuationToken indicates Amazon S3 that the list is being continued on this
|
||||
// bucket with a token. ContinuationToken is obfuscated and is not a real key.
|
||||
ContinuationToken *string
|
||||
|
||||
// A delimiter is a character you use to group keys.
|
||||
Delimiter *string
|
||||
|
||||
// Encoding type used by Amazon S3 to encode object keys in the response.
|
||||
EncodingType types.EncodingType
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
// The owner field is not present in listV2 by default, if you want to return owner
|
||||
// field with each key in the result then set the fetch owner field to true.
|
||||
FetchOwner bool
|
||||
|
||||
// Sets the maximum number of keys returned in the response. By default the action
|
||||
// returns up to 1,000 key names. The response might contain fewer keys but will
|
||||
// never contain more.
|
||||
MaxKeys int32
|
||||
|
||||
// Limits the response to keys that begin with the specified prefix.
|
||||
Prefix *string
|
||||
|
||||
// Confirms that the requester knows that she or he will be charged for the list
|
||||
// objects request in V2 style. Bucket owners need not specify this parameter in
|
||||
// their requests.
|
||||
RequestPayer types.RequestPayer
|
||||
|
||||
// StartAfter is where you want Amazon S3 to start listing from. Amazon S3 starts
|
||||
// listing after this specified key. StartAfter can be any key in the bucket.
|
||||
StartAfter *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type ListObjectsV2Output struct {
|
||||
|
||||
// All of the keys (up to 1,000) rolled up into a common prefix count as a single
|
||||
// return when calculating the number of returns. A response can contain
|
||||
// CommonPrefixes only if you specify a delimiter. CommonPrefixes contains all (if
|
||||
// there are any) keys between Prefix and the next occurrence of the string
|
||||
// specified by a delimiter. CommonPrefixes lists keys that act like subdirectories
|
||||
// in the directory specified by Prefix. For example, if the prefix is notes/ and
|
||||
// the delimiter is a slash (/) as in notes/summer/july, the common prefix is
|
||||
// notes/summer/. All of the keys that roll up into a common prefix count as a
|
||||
// single return when calculating the number of returns.
|
||||
CommonPrefixes []types.CommonPrefix
|
||||
|
||||
// Metadata about each object returned.
|
||||
Contents []types.Object
|
||||
|
||||
// If ContinuationToken was sent with the request, it is included in the response.
|
||||
ContinuationToken *string
|
||||
|
||||
// Causes keys that contain the same string between the prefix and the first
|
||||
// occurrence of the delimiter to be rolled up into a single result element in the
|
||||
// CommonPrefixes collection. These rolled-up keys are not returned elsewhere in
|
||||
// the response. Each rolled-up result counts as only one return against the
|
||||
// MaxKeys value.
|
||||
Delimiter *string
|
||||
|
||||
// Encoding type used by Amazon S3 to encode object key names in the XML response.
|
||||
// If you specify the encoding-type request parameter, Amazon S3 includes this
|
||||
// element in the response, and returns encoded key name values in the following
|
||||
// response elements: Delimiter, Prefix, Key, and StartAfter.
|
||||
EncodingType types.EncodingType
|
||||
|
||||
// Set to false if all of the results were returned. Set to true if more keys are
|
||||
// available to return. If the number of results exceeds that specified by MaxKeys,
|
||||
// all of the results might not be returned.
|
||||
IsTruncated bool
|
||||
|
||||
// KeyCount is the number of keys returned with this request. KeyCount will always
|
||||
// be less than or equals to MaxKeys field. Say you ask for 50 keys, your result
|
||||
// will include less than equals 50 keys
|
||||
KeyCount int32
|
||||
|
||||
// Sets the maximum number of keys returned in the response. By default the action
|
||||
// returns up to 1,000 key names. The response might contain fewer keys but will
|
||||
// never contain more.
|
||||
MaxKeys int32
|
||||
|
||||
// The bucket name. When using this action with an access point, you must direct
|
||||
// requests to the access point hostname. The access point hostname takes the form
|
||||
// AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this
|
||||
// action with an access point through the Amazon Web Services SDKs, you provide
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see Using access points
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide. When using this action with Amazon S3 on Outposts,
|
||||
// you must direct requests to the S3 on Outposts hostname. The S3 on Outposts
|
||||
// hostname takes the form
|
||||
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When using
|
||||
// this action using S3 on Outposts through the Amazon Web Services SDKs, you
|
||||
// provide the Outposts bucket ARN in place of the bucket name. For more
|
||||
// information about S3 on Outposts ARNs, see Using S3 on Outposts
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) in the
|
||||
// Amazon S3 User Guide.
|
||||
Name *string
|
||||
|
||||
// NextContinuationToken is sent when isTruncated is true, which means there are
|
||||
// more keys in the bucket that can be listed. The next list requests to Amazon S3
|
||||
// can be continued with this NextContinuationToken. NextContinuationToken is
|
||||
// obfuscated and is not a real key
|
||||
NextContinuationToken *string
|
||||
|
||||
// Keys that begin with the indicated prefix.
|
||||
Prefix *string
|
||||
|
||||
// If StartAfter was sent with the request, it is included in the response.
|
||||
StartAfter *string
|
||||
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationListObjectsV2Middlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpListObjectsV2{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpListObjectsV2{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpListObjectsV2ValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opListObjectsV2(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addListObjectsV2UpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// ListObjectsV2APIClient is a client that implements the ListObjectsV2 operation.
|
||||
type ListObjectsV2APIClient interface {
|
||||
ListObjectsV2(context.Context, *ListObjectsV2Input, ...func(*Options)) (*ListObjectsV2Output, error)
|
||||
}
|
||||
|
||||
var _ ListObjectsV2APIClient = (*Client)(nil)
|
||||
|
||||
// ListObjectsV2PaginatorOptions is the paginator options for ListObjectsV2
|
||||
type ListObjectsV2PaginatorOptions struct {
|
||||
// Sets the maximum number of keys returned in the response. By default the action
|
||||
// returns up to 1,000 key names. The response might contain fewer keys but will
|
||||
// never contain more.
|
||||
Limit int32
|
||||
|
||||
// Set to true if pagination should stop if the service returns a pagination token
|
||||
// that matches the most recent token provided to the service.
|
||||
StopOnDuplicateToken bool
|
||||
}
|
||||
|
||||
// ListObjectsV2Paginator is a paginator for ListObjectsV2
|
||||
type ListObjectsV2Paginator struct {
|
||||
options ListObjectsV2PaginatorOptions
|
||||
client ListObjectsV2APIClient
|
||||
params *ListObjectsV2Input
|
||||
nextToken *string
|
||||
firstPage bool
|
||||
}
|
||||
|
||||
// NewListObjectsV2Paginator returns a new ListObjectsV2Paginator
|
||||
func NewListObjectsV2Paginator(client ListObjectsV2APIClient, params *ListObjectsV2Input, optFns ...func(*ListObjectsV2PaginatorOptions)) *ListObjectsV2Paginator {
|
||||
if params == nil {
|
||||
params = &ListObjectsV2Input{}
|
||||
}
|
||||
|
||||
options := ListObjectsV2PaginatorOptions{}
|
||||
if params.MaxKeys != 0 {
|
||||
options.Limit = params.MaxKeys
|
||||
}
|
||||
|
||||
for _, fn := range optFns {
|
||||
fn(&options)
|
||||
}
|
||||
|
||||
return &ListObjectsV2Paginator{
|
||||
options: options,
|
||||
client: client,
|
||||
params: params,
|
||||
firstPage: true,
|
||||
}
|
||||
}
|
||||
|
||||
// HasMorePages returns a boolean indicating whether more pages are available
|
||||
func (p *ListObjectsV2Paginator) HasMorePages() bool {
|
||||
return p.firstPage || p.nextToken != nil
|
||||
}
|
||||
|
||||
// NextPage retrieves the next ListObjectsV2 page.
|
||||
func (p *ListObjectsV2Paginator) NextPage(ctx context.Context, optFns ...func(*Options)) (*ListObjectsV2Output, error) {
|
||||
if !p.HasMorePages() {
|
||||
return nil, fmt.Errorf("no more pages available")
|
||||
}
|
||||
|
||||
params := *p.params
|
||||
params.ContinuationToken = p.nextToken
|
||||
|
||||
params.MaxKeys = p.options.Limit
|
||||
|
||||
result, err := p.client.ListObjectsV2(ctx, ¶ms, optFns...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
p.firstPage = false
|
||||
|
||||
prevToken := p.nextToken
|
||||
p.nextToken = nil
|
||||
if result.IsTruncated {
|
||||
p.nextToken = result.NextContinuationToken
|
||||
}
|
||||
|
||||
if p.options.StopOnDuplicateToken && prevToken != nil && p.nextToken != nil && *prevToken == *p.nextToken {
|
||||
p.nextToken = nil
|
||||
}
|
||||
|
||||
return result, nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opListObjectsV2(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "ListObjectsV2",
|
||||
}
|
||||
}
|
||||
|
||||
// getListObjectsV2BucketMember returns a pointer to string denoting a provided
|
||||
// bucket member valueand a boolean indicating if the input has a modeled bucket
|
||||
// name,
|
||||
func getListObjectsV2BucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*ListObjectsV2Input)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addListObjectsV2UpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getListObjectsV2BucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
390
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_ListParts.go
generated
vendored
Normal file
390
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_ListParts.go
generated
vendored
Normal file
@@ -0,0 +1,390 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
"fmt"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
"time"
|
||||
)
|
||||
|
||||
// Lists the parts that have been uploaded for a specific multipart upload. This
|
||||
// operation must include the upload ID, which you obtain by sending the initiate
|
||||
// multipart upload request (see CreateMultipartUpload
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html)).
|
||||
// This request returns a maximum of 1,000 uploaded parts. The default number of
|
||||
// parts returned is 1,000 parts. You can restrict the number of parts returned by
|
||||
// specifying the max-parts request parameter. If your multipart upload consists of
|
||||
// more than 1,000 parts, the response returns an IsTruncated field with the value
|
||||
// of true, and a NextPartNumberMarker element. In subsequent ListParts requests
|
||||
// you can include the part-number-marker query string parameter and set its value
|
||||
// to the NextPartNumberMarker field value from the previous response. For more
|
||||
// information on multipart uploads, see Uploading Objects Using Multipart Upload
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/uploadobjusingmpu.html). For
|
||||
// information on permissions required to use the multipart upload API, see
|
||||
// Multipart Upload and Permissions
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html). The
|
||||
// following operations are related to ListParts:
|
||||
//
|
||||
// * CreateMultipartUpload
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html)
|
||||
//
|
||||
// *
|
||||
// UploadPart
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html)
|
||||
//
|
||||
// *
|
||||
// CompleteMultipartUpload
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CompleteMultipartUpload.html)
|
||||
//
|
||||
// *
|
||||
// AbortMultipartUpload
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_AbortMultipartUpload.html)
|
||||
//
|
||||
// *
|
||||
// ListMultipartUploads
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListMultipartUploads.html)
|
||||
func (c *Client) ListParts(ctx context.Context, params *ListPartsInput, optFns ...func(*Options)) (*ListPartsOutput, error) {
|
||||
if params == nil {
|
||||
params = &ListPartsInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "ListParts", params, optFns, c.addOperationListPartsMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*ListPartsOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type ListPartsInput struct {
|
||||
|
||||
// The name of the bucket to which the parts are being uploaded. When using this
|
||||
// action with an access point, you must direct requests to the access point
|
||||
// hostname. The access point hostname takes the form
|
||||
// AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this
|
||||
// action with an access point through the Amazon Web Services SDKs, you provide
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see Using access points
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide. When using this action with Amazon S3 on Outposts,
|
||||
// you must direct requests to the S3 on Outposts hostname. The S3 on Outposts
|
||||
// hostname takes the form
|
||||
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When using
|
||||
// this action using S3 on Outposts through the Amazon Web Services SDKs, you
|
||||
// provide the Outposts bucket ARN in place of the bucket name. For more
|
||||
// information about S3 on Outposts ARNs, see Using S3 on Outposts
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) in the
|
||||
// Amazon S3 User Guide.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// Object key for which the multipart upload was initiated.
|
||||
//
|
||||
// This member is required.
|
||||
Key *string
|
||||
|
||||
// Upload ID identifying the multipart upload whose parts are being listed.
|
||||
//
|
||||
// This member is required.
|
||||
UploadId *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
// Sets the maximum number of parts to return.
|
||||
MaxParts int32
|
||||
|
||||
// Specifies the part after which listing should begin. Only parts with higher part
|
||||
// numbers will be listed.
|
||||
PartNumberMarker *string
|
||||
|
||||
// Confirms that the requester knows that they will be charged for the request.
|
||||
// Bucket owners need not specify this parameter in their requests. For information
|
||||
// about downloading objects from requester pays buckets, see Downloading Objects
|
||||
// in Requestor Pays Buckets
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
RequestPayer types.RequestPayer
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type ListPartsOutput struct {
|
||||
|
||||
// If the bucket has a lifecycle rule configured with an action to abort incomplete
|
||||
// multipart uploads and the prefix in the lifecycle rule matches the object name
|
||||
// in the request, then the response includes this header indicating when the
|
||||
// initiated multipart upload will become eligible for abort operation. For more
|
||||
// information, see Aborting Incomplete Multipart Uploads Using a Bucket Lifecycle
|
||||
// Policy
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html#mpu-abort-incomplete-mpu-lifecycle-config).
|
||||
// The response will also include the x-amz-abort-rule-id header that will provide
|
||||
// the ID of the lifecycle configuration rule that defines this action.
|
||||
AbortDate *time.Time
|
||||
|
||||
// This header is returned along with the x-amz-abort-date header. It identifies
|
||||
// applicable lifecycle configuration rule that defines the action to abort
|
||||
// incomplete multipart uploads.
|
||||
AbortRuleId *string
|
||||
|
||||
// The name of the bucket to which the multipart upload was initiated. Does not
|
||||
// return the access point ARN or access point alias if used.
|
||||
Bucket *string
|
||||
|
||||
// Container element that identifies who initiated the multipart upload. If the
|
||||
// initiator is an Amazon Web Services account, this element provides the same
|
||||
// information as the Owner element. If the initiator is an IAM User, this element
|
||||
// provides the user ARN and display name.
|
||||
Initiator *types.Initiator
|
||||
|
||||
// Indicates whether the returned list of parts is truncated. A true value
|
||||
// indicates that the list was truncated. A list can be truncated if the number of
|
||||
// parts exceeds the limit returned in the MaxParts element.
|
||||
IsTruncated bool
|
||||
|
||||
// Object key for which the multipart upload was initiated.
|
||||
Key *string
|
||||
|
||||
// Maximum number of parts that were allowed in the response.
|
||||
MaxParts int32
|
||||
|
||||
// When a list is truncated, this element specifies the last part in the list, as
|
||||
// well as the value to use for the part-number-marker request parameter in a
|
||||
// subsequent request.
|
||||
NextPartNumberMarker *string
|
||||
|
||||
// Container element that identifies the object owner, after the object is created.
|
||||
// If multipart upload is initiated by an IAM user, this element provides the
|
||||
// parent account ID and display name.
|
||||
Owner *types.Owner
|
||||
|
||||
// When a list is truncated, this element specifies the last part in the list, as
|
||||
// well as the value to use for the part-number-marker request parameter in a
|
||||
// subsequent request.
|
||||
PartNumberMarker *string
|
||||
|
||||
// Container for elements related to a particular part. A response can contain zero
|
||||
// or more Part elements.
|
||||
Parts []types.Part
|
||||
|
||||
// If present, indicates that the requester was successfully charged for the
|
||||
// request.
|
||||
RequestCharged types.RequestCharged
|
||||
|
||||
// Class of storage (STANDARD or REDUCED_REDUNDANCY) used to store the uploaded
|
||||
// object.
|
||||
StorageClass types.StorageClass
|
||||
|
||||
// Upload ID identifying the multipart upload whose parts are being listed.
|
||||
UploadId *string
|
||||
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationListPartsMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpListParts{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpListParts{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpListPartsValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opListParts(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addListPartsUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// ListPartsAPIClient is a client that implements the ListParts operation.
|
||||
type ListPartsAPIClient interface {
|
||||
ListParts(context.Context, *ListPartsInput, ...func(*Options)) (*ListPartsOutput, error)
|
||||
}
|
||||
|
||||
var _ ListPartsAPIClient = (*Client)(nil)
|
||||
|
||||
// ListPartsPaginatorOptions is the paginator options for ListParts
|
||||
type ListPartsPaginatorOptions struct {
|
||||
// Sets the maximum number of parts to return.
|
||||
Limit int32
|
||||
|
||||
// Set to true if pagination should stop if the service returns a pagination token
|
||||
// that matches the most recent token provided to the service.
|
||||
StopOnDuplicateToken bool
|
||||
}
|
||||
|
||||
// ListPartsPaginator is a paginator for ListParts
|
||||
type ListPartsPaginator struct {
|
||||
options ListPartsPaginatorOptions
|
||||
client ListPartsAPIClient
|
||||
params *ListPartsInput
|
||||
nextToken *string
|
||||
firstPage bool
|
||||
}
|
||||
|
||||
// NewListPartsPaginator returns a new ListPartsPaginator
|
||||
func NewListPartsPaginator(client ListPartsAPIClient, params *ListPartsInput, optFns ...func(*ListPartsPaginatorOptions)) *ListPartsPaginator {
|
||||
if params == nil {
|
||||
params = &ListPartsInput{}
|
||||
}
|
||||
|
||||
options := ListPartsPaginatorOptions{}
|
||||
if params.MaxParts != 0 {
|
||||
options.Limit = params.MaxParts
|
||||
}
|
||||
|
||||
for _, fn := range optFns {
|
||||
fn(&options)
|
||||
}
|
||||
|
||||
return &ListPartsPaginator{
|
||||
options: options,
|
||||
client: client,
|
||||
params: params,
|
||||
firstPage: true,
|
||||
}
|
||||
}
|
||||
|
||||
// HasMorePages returns a boolean indicating whether more pages are available
|
||||
func (p *ListPartsPaginator) HasMorePages() bool {
|
||||
return p.firstPage || p.nextToken != nil
|
||||
}
|
||||
|
||||
// NextPage retrieves the next ListParts page.
|
||||
func (p *ListPartsPaginator) NextPage(ctx context.Context, optFns ...func(*Options)) (*ListPartsOutput, error) {
|
||||
if !p.HasMorePages() {
|
||||
return nil, fmt.Errorf("no more pages available")
|
||||
}
|
||||
|
||||
params := *p.params
|
||||
params.PartNumberMarker = p.nextToken
|
||||
|
||||
params.MaxParts = p.options.Limit
|
||||
|
||||
result, err := p.client.ListParts(ctx, ¶ms, optFns...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
p.firstPage = false
|
||||
|
||||
prevToken := p.nextToken
|
||||
p.nextToken = nil
|
||||
if result.IsTruncated {
|
||||
p.nextToken = result.NextPartNumberMarker
|
||||
}
|
||||
|
||||
if p.options.StopOnDuplicateToken && prevToken != nil && p.nextToken != nil && *prevToken == *p.nextToken {
|
||||
p.nextToken = nil
|
||||
}
|
||||
|
||||
return result, nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opListParts(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "ListParts",
|
||||
}
|
||||
}
|
||||
|
||||
// getListPartsBucketMember returns a pointer to string denoting a provided bucket
|
||||
// member valueand a boolean indicating if the input has a modeled bucket name,
|
||||
func getListPartsBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*ListPartsInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addListPartsUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getListPartsBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
202
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketAccelerateConfiguration.go
generated
vendored
Normal file
202
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketAccelerateConfiguration.go
generated
vendored
Normal file
@@ -0,0 +1,202 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Sets the accelerate configuration of an existing bucket. Amazon S3 Transfer
|
||||
// Acceleration is a bucket-level feature that enables you to perform faster data
|
||||
// transfers to Amazon S3. To use this operation, you must have permission to
|
||||
// perform the s3:PutAccelerateConfiguration action. The 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).
|
||||
// The Transfer Acceleration state of a bucket can be set to one of the following
|
||||
// two values:
|
||||
//
|
||||
// * Enabled – Enables accelerated data transfers to the bucket.
|
||||
//
|
||||
// *
|
||||
// Suspended – Disables accelerated data transfers to the bucket.
|
||||
//
|
||||
// The
|
||||
// GetBucketAccelerateConfiguration
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketAccelerateConfiguration.html)
|
||||
// action returns the transfer acceleration state of a bucket. After setting the
|
||||
// Transfer Acceleration state of a bucket to Enabled, it might take up to thirty
|
||||
// minutes before the data transfer rates to the bucket increase. The name of the
|
||||
// bucket used for Transfer Acceleration must be DNS-compliant and must not contain
|
||||
// periods ("."). For more information about transfer acceleration, see Transfer
|
||||
// Acceleration
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/transfer-acceleration.html).
|
||||
// The following operations are related to PutBucketAccelerateConfiguration:
|
||||
//
|
||||
// *
|
||||
// GetBucketAccelerateConfiguration
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketAccelerateConfiguration.html)
|
||||
//
|
||||
// *
|
||||
// CreateBucket
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html)
|
||||
func (c *Client) PutBucketAccelerateConfiguration(ctx context.Context, params *PutBucketAccelerateConfigurationInput, optFns ...func(*Options)) (*PutBucketAccelerateConfigurationOutput, error) {
|
||||
if params == nil {
|
||||
params = &PutBucketAccelerateConfigurationInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "PutBucketAccelerateConfiguration", params, optFns, c.addOperationPutBucketAccelerateConfigurationMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*PutBucketAccelerateConfigurationOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type PutBucketAccelerateConfigurationInput struct {
|
||||
|
||||
// Container for setting the transfer acceleration state.
|
||||
//
|
||||
// This member is required.
|
||||
AccelerateConfiguration *types.AccelerateConfiguration
|
||||
|
||||
// The name of the bucket for which the accelerate configuration is set.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type PutBucketAccelerateConfigurationOutput struct {
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationPutBucketAccelerateConfigurationMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpPutBucketAccelerateConfiguration{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpPutBucketAccelerateConfiguration{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpPutBucketAccelerateConfigurationValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opPutBucketAccelerateConfiguration(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addPutBucketAccelerateConfigurationUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opPutBucketAccelerateConfiguration(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "PutBucketAccelerateConfiguration",
|
||||
}
|
||||
}
|
||||
|
||||
// getPutBucketAccelerateConfigurationBucketMember returns a pointer to string
|
||||
// denoting a provided bucket member valueand a boolean indicating if the input has
|
||||
// a modeled bucket name,
|
||||
func getPutBucketAccelerateConfigurationBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*PutBucketAccelerateConfigurationInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addPutBucketAccelerateConfigurationUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getPutBucketAccelerateConfigurationBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
329
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketAcl.go
generated
vendored
Normal file
329
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketAcl.go
generated
vendored
Normal file
@@ -0,0 +1,329 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Sets the permissions on an existing bucket using access control lists (ACL). For
|
||||
// more information, see Using ACLs
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/S3_ACLs_UsingACLs.html). To set
|
||||
// the ACL of a bucket, you must have WRITE_ACP permission. You can use one of the
|
||||
// following two ways to set a bucket's permissions:
|
||||
//
|
||||
// * Specify the ACL in the
|
||||
// request body
|
||||
//
|
||||
// * Specify permissions using request headers
|
||||
//
|
||||
// You cannot specify
|
||||
// access permission using both the body and the request headers. Depending on your
|
||||
// application needs, you may choose to set the ACL on a bucket using either the
|
||||
// request body or the headers. For example, if you have an existing application
|
||||
// that updates a bucket ACL using the request body, then you can continue to use
|
||||
// that approach. Access Permissions You can set access permissions using one of
|
||||
// the following methods:
|
||||
//
|
||||
// * Specify a canned ACL with the x-amz-acl request
|
||||
// header. Amazon S3 supports a set of predefined ACLs, known as canned ACLs. Each
|
||||
// canned ACL has a predefined set of grantees and permissions. Specify the canned
|
||||
// ACL name as the value of x-amz-acl. If you use this header, you cannot use other
|
||||
// access control-specific headers in your request. For more information, see
|
||||
// Canned ACL
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#CannedACL).
|
||||
//
|
||||
// *
|
||||
// Specify access permissions explicitly with the x-amz-grant-read,
|
||||
// x-amz-grant-read-acp, x-amz-grant-write-acp, and x-amz-grant-full-control
|
||||
// headers. When using these headers, you specify explicit access permissions and
|
||||
// grantees (Amazon Web Services accounts or Amazon S3 groups) who will receive the
|
||||
// permission. If you use these ACL-specific headers, you cannot use the x-amz-acl
|
||||
// header to set a canned ACL. These parameters map to the set of permissions that
|
||||
// Amazon S3 supports in an ACL. For more information, see Access Control List
|
||||
// (ACL) Overview
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html). You specify
|
||||
// each grantee as a type=value pair, where the type is one of the following:
|
||||
//
|
||||
// * id
|
||||
// – if the value specified is the canonical user ID of an Amazon Web Services
|
||||
// account
|
||||
//
|
||||
// * uri – if you are granting permissions to a predefined group
|
||||
//
|
||||
// *
|
||||
// emailAddress – if the value specified is the email address of an Amazon Web
|
||||
// Services account Using email addresses to specify a grantee is only supported in
|
||||
// the following Amazon Web Services Regions:
|
||||
//
|
||||
// * US East (N. Virginia)
|
||||
//
|
||||
// * US West
|
||||
// (N. California)
|
||||
//
|
||||
// * US West (Oregon)
|
||||
//
|
||||
// * Asia Pacific (Singapore)
|
||||
//
|
||||
// * Asia Pacific
|
||||
// (Sydney)
|
||||
//
|
||||
// * Asia Pacific (Tokyo)
|
||||
//
|
||||
// * Europe (Ireland)
|
||||
//
|
||||
// * South America (São
|
||||
// Paulo)
|
||||
//
|
||||
// For a list of all the Amazon S3 supported Regions and endpoints, see
|
||||
// Regions and Endpoints
|
||||
// (https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region) in the
|
||||
// Amazon Web Services General Reference.
|
||||
//
|
||||
// For example, the following
|
||||
// x-amz-grant-write header grants create, overwrite, and delete objects permission
|
||||
// to LogDelivery group predefined by Amazon S3 and two Amazon Web Services
|
||||
// accounts identified by their email addresses. x-amz-grant-write:
|
||||
// uri="http://acs.amazonaws.com/groups/s3/LogDelivery", id="111122223333",
|
||||
// id="555566667777"
|
||||
//
|
||||
// You can use either a canned ACL or specify access permissions
|
||||
// explicitly. You cannot do both. Grantee Values You can specify the person
|
||||
// (grantee) to whom you're assigning access rights (using request elements) in the
|
||||
// following ways:
|
||||
//
|
||||
// * By the person's ID: <>ID<><>GranteesEmail<> DisplayName is
|
||||
// optional and ignored in the request
|
||||
//
|
||||
// * By URI:
|
||||
// <>http://acs.amazonaws.com/groups/global/AuthenticatedUsers<>
|
||||
//
|
||||
// * By Email
|
||||
// address: <>Grantees@email.com<>lt;/Grantee> The grantee is resolved to the
|
||||
// CanonicalUser and, in a response to a GET Object acl request, appears as the
|
||||
// CanonicalUser. Using email addresses to specify a grantee is only supported in
|
||||
// the following Amazon Web Services Regions:
|
||||
//
|
||||
// * US East (N. Virginia)
|
||||
//
|
||||
// * US West
|
||||
// (N. California)
|
||||
//
|
||||
// * US West (Oregon)
|
||||
//
|
||||
// * Asia Pacific (Singapore)
|
||||
//
|
||||
// * Asia Pacific
|
||||
// (Sydney)
|
||||
//
|
||||
// * Asia Pacific (Tokyo)
|
||||
//
|
||||
// * Europe (Ireland)
|
||||
//
|
||||
// * South America (São
|
||||
// Paulo)
|
||||
//
|
||||
// For a list of all the Amazon S3 supported Regions and endpoints, see
|
||||
// Regions and Endpoints
|
||||
// (https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region) in the
|
||||
// Amazon Web Services General Reference.
|
||||
//
|
||||
// Related Resources
|
||||
//
|
||||
// * CreateBucket
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html)
|
||||
//
|
||||
// *
|
||||
// DeleteBucket
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucket.html)
|
||||
//
|
||||
// *
|
||||
// GetObjectAcl
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectAcl.html)
|
||||
func (c *Client) PutBucketAcl(ctx context.Context, params *PutBucketAclInput, optFns ...func(*Options)) (*PutBucketAclOutput, error) {
|
||||
if params == nil {
|
||||
params = &PutBucketAclInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "PutBucketAcl", params, optFns, c.addOperationPutBucketAclMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*PutBucketAclOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type PutBucketAclInput struct {
|
||||
|
||||
// The bucket to which to apply the ACL.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The canned ACL to apply to the bucket.
|
||||
ACL types.BucketCannedACL
|
||||
|
||||
// Contains the elements that set the ACL permissions for an object per grantee.
|
||||
AccessControlPolicy *types.AccessControlPolicy
|
||||
|
||||
// The base64-encoded 128-bit MD5 digest of the data. This header must be used as a
|
||||
// message integrity check to verify that the request body was not corrupted in
|
||||
// transit. For more information, go to RFC 1864.
|
||||
// (http://www.ietf.org/rfc/rfc1864.txt) For requests made using the Amazon Web
|
||||
// Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is
|
||||
// calculated automatically.
|
||||
ContentMD5 *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
// Allows grantee the read, write, read ACP, and write ACP permissions on the
|
||||
// bucket.
|
||||
GrantFullControl *string
|
||||
|
||||
// Allows grantee to list the objects in the bucket.
|
||||
GrantRead *string
|
||||
|
||||
// Allows grantee to read the bucket ACL.
|
||||
GrantReadACP *string
|
||||
|
||||
// Allows grantee to create new objects in the bucket. For the bucket and object
|
||||
// owners of existing objects, also allows deletions and overwrites of those
|
||||
// objects.
|
||||
GrantWrite *string
|
||||
|
||||
// Allows grantee to write the ACL for the applicable bucket.
|
||||
GrantWriteACP *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type PutBucketAclOutput struct {
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationPutBucketAclMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpPutBucketAcl{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpPutBucketAcl{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpPutBucketAclValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opPutBucketAcl(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addPutBucketAclUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddContentChecksumMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opPutBucketAcl(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "PutBucketAcl",
|
||||
}
|
||||
}
|
||||
|
||||
// getPutBucketAclBucketMember returns a pointer to string denoting a provided
|
||||
// bucket member valueand a boolean indicating if the input has a modeled bucket
|
||||
// name,
|
||||
func getPutBucketAclBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*PutBucketAclInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addPutBucketAclUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getPutBucketAclBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
234
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketAnalyticsConfiguration.go
generated
vendored
Normal file
234
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketAnalyticsConfiguration.go
generated
vendored
Normal file
@@ -0,0 +1,234 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Sets an analytics configuration for the bucket (specified by the analytics
|
||||
// configuration ID). You can have up to 1,000 analytics configurations per bucket.
|
||||
// You can choose to have storage class analysis export analysis reports sent to a
|
||||
// comma-separated values (CSV) flat file. See the DataExport request element.
|
||||
// Reports are updated daily and are based on the object filters that you
|
||||
// configure. When selecting data export, you specify a destination bucket and an
|
||||
// optional destination prefix where the file is written. You can export the data
|
||||
// to a destination bucket in a different account. However, the destination bucket
|
||||
// must be in the same Region as the bucket that you are making the PUT analytics
|
||||
// configuration to. For more information, see Amazon S3 Analytics – Storage Class
|
||||
// Analysis
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/analytics-storage-class.html).
|
||||
// You must create a bucket policy on the destination bucket where the exported
|
||||
// file is written to grant permissions to Amazon S3 to write objects to the
|
||||
// bucket. For an example policy, see Granting Permissions for Amazon S3 Inventory
|
||||
// and Storage Class Analysis
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/example-bucket-policies.html#example-bucket-policies-use-case-9).
|
||||
// To use this operation, you must have permissions to perform the
|
||||
// s3:PutAnalyticsConfiguration action. The 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).
|
||||
// Special Errors
|
||||
//
|
||||
// * HTTP Error: HTTP 400 Bad Request
|
||||
//
|
||||
// * Code: InvalidArgument
|
||||
//
|
||||
// *
|
||||
// Cause: Invalid argument.
|
||||
//
|
||||
// * HTTP Error: HTTP 400 Bad Request
|
||||
//
|
||||
// * Code:
|
||||
// TooManyConfigurations
|
||||
//
|
||||
// * Cause: You are attempting to create a new configuration
|
||||
// but have already reached the 1,000-configuration limit.
|
||||
//
|
||||
// * HTTP Error: HTTP 403
|
||||
// Forbidden
|
||||
//
|
||||
// * Code: AccessDenied
|
||||
//
|
||||
// * Cause: You are not the owner of the specified
|
||||
// bucket, or you do not have the s3:PutAnalyticsConfiguration bucket permission to
|
||||
// set the configuration on the bucket.
|
||||
//
|
||||
// Related Resources
|
||||
//
|
||||
// *
|
||||
// GetBucketAnalyticsConfiguration
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketAnalyticsConfiguration.html)
|
||||
//
|
||||
// *
|
||||
// DeleteBucketAnalyticsConfiguration
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketAnalyticsConfiguration.html)
|
||||
//
|
||||
// *
|
||||
// ListBucketAnalyticsConfigurations
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBucketAnalyticsConfigurations.html)
|
||||
func (c *Client) PutBucketAnalyticsConfiguration(ctx context.Context, params *PutBucketAnalyticsConfigurationInput, optFns ...func(*Options)) (*PutBucketAnalyticsConfigurationOutput, error) {
|
||||
if params == nil {
|
||||
params = &PutBucketAnalyticsConfigurationInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "PutBucketAnalyticsConfiguration", params, optFns, c.addOperationPutBucketAnalyticsConfigurationMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*PutBucketAnalyticsConfigurationOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type PutBucketAnalyticsConfigurationInput struct {
|
||||
|
||||
// The configuration and any analyses for the analytics filter.
|
||||
//
|
||||
// This member is required.
|
||||
AnalyticsConfiguration *types.AnalyticsConfiguration
|
||||
|
||||
// The name of the bucket to which an analytics configuration is stored.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The ID that identifies the analytics configuration.
|
||||
//
|
||||
// This member is required.
|
||||
Id *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type PutBucketAnalyticsConfigurationOutput struct {
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationPutBucketAnalyticsConfigurationMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpPutBucketAnalyticsConfiguration{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpPutBucketAnalyticsConfiguration{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpPutBucketAnalyticsConfigurationValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opPutBucketAnalyticsConfiguration(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addPutBucketAnalyticsConfigurationUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opPutBucketAnalyticsConfiguration(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "PutBucketAnalyticsConfiguration",
|
||||
}
|
||||
}
|
||||
|
||||
// getPutBucketAnalyticsConfigurationBucketMember returns a pointer to string
|
||||
// denoting a provided bucket member valueand a boolean indicating if the input has
|
||||
// a modeled bucket name,
|
||||
func getPutBucketAnalyticsConfigurationBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*PutBucketAnalyticsConfigurationInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addPutBucketAnalyticsConfigurationUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getPutBucketAnalyticsConfigurationBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
221
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketCors.go
generated
vendored
Normal file
221
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketCors.go
generated
vendored
Normal file
@@ -0,0 +1,221 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Sets the cors configuration for your bucket. If the configuration exists, Amazon
|
||||
// S3 replaces it. To use this operation, you must be allowed to perform the
|
||||
// s3:PutBucketCORS action. By default, the bucket owner has this permission and
|
||||
// can grant it to others. You set this configuration on a bucket so that the
|
||||
// bucket can service cross-origin requests. For example, you might want to enable
|
||||
// a request whose origin is http://www.example.com to access your Amazon S3 bucket
|
||||
// at my.example.bucket.com by using the browser's XMLHttpRequest capability. To
|
||||
// enable cross-origin resource sharing (CORS) on a bucket, you add the cors
|
||||
// subresource to the bucket. The cors subresource is an XML document in which you
|
||||
// configure rules that identify origins and the HTTP methods that can be executed
|
||||
// on your bucket. The document is limited to 64 KB in size. When Amazon S3
|
||||
// receives a cross-origin request (or a pre-flight OPTIONS request) against a
|
||||
// bucket, it evaluates the cors configuration on the bucket and uses the first
|
||||
// CORSRule rule that matches the incoming browser request to enable a cross-origin
|
||||
// request. For a rule to match, the following conditions must be met:
|
||||
//
|
||||
// * The
|
||||
// request's Origin header must match AllowedOrigin elements.
|
||||
//
|
||||
// * The request method
|
||||
// (for example, GET, PUT, HEAD, and so on) or the Access-Control-Request-Method
|
||||
// header in case of a pre-flight OPTIONS request must be one of the AllowedMethod
|
||||
// elements.
|
||||
//
|
||||
// * Every header specified in the Access-Control-Request-Headers
|
||||
// request header of a pre-flight request must match an AllowedHeader element.
|
||||
//
|
||||
// For
|
||||
// more information about CORS, go to Enabling Cross-Origin Resource Sharing
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/cors.html) in the Amazon S3
|
||||
// User Guide. Related Resources
|
||||
//
|
||||
// * GetBucketCors
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketCors.html)
|
||||
//
|
||||
// *
|
||||
// DeleteBucketCors
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketCors.html)
|
||||
//
|
||||
// *
|
||||
// RESTOPTIONSobject
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/RESTOPTIONSobject.html)
|
||||
func (c *Client) PutBucketCors(ctx context.Context, params *PutBucketCorsInput, optFns ...func(*Options)) (*PutBucketCorsOutput, error) {
|
||||
if params == nil {
|
||||
params = &PutBucketCorsInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "PutBucketCors", params, optFns, c.addOperationPutBucketCorsMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*PutBucketCorsOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type PutBucketCorsInput struct {
|
||||
|
||||
// Specifies the bucket impacted by the corsconfiguration.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// Describes the cross-origin access configuration for objects in an Amazon S3
|
||||
// bucket. For more information, see Enabling Cross-Origin Resource Sharing
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/cors.html) in the Amazon S3
|
||||
// User Guide.
|
||||
//
|
||||
// This member is required.
|
||||
CORSConfiguration *types.CORSConfiguration
|
||||
|
||||
// The base64-encoded 128-bit MD5 digest of the data. This header must be used as a
|
||||
// message integrity check to verify that the request body was not corrupted in
|
||||
// transit. For more information, go to RFC 1864.
|
||||
// (http://www.ietf.org/rfc/rfc1864.txt) For requests made using the Amazon Web
|
||||
// Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is
|
||||
// calculated automatically.
|
||||
ContentMD5 *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type PutBucketCorsOutput struct {
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationPutBucketCorsMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpPutBucketCors{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpPutBucketCors{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpPutBucketCorsValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opPutBucketCors(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addPutBucketCorsUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddContentChecksumMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opPutBucketCors(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "PutBucketCors",
|
||||
}
|
||||
}
|
||||
|
||||
// getPutBucketCorsBucketMember returns a pointer to string denoting a provided
|
||||
// bucket member valueand a boolean indicating if the input has a modeled bucket
|
||||
// name,
|
||||
func getPutBucketCorsBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*PutBucketCorsInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addPutBucketCorsUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getPutBucketCorsBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
208
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketEncryption.go
generated
vendored
Normal file
208
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketEncryption.go
generated
vendored
Normal file
@@ -0,0 +1,208 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// This action uses the encryption subresource to configure default encryption and
|
||||
// Amazon S3 Bucket Key for an existing bucket. Default encryption for a bucket can
|
||||
// use server-side encryption with Amazon S3-managed keys (SSE-S3) or customer
|
||||
// managed keys (SSE-KMS). If you specify default encryption using SSE-KMS, you can
|
||||
// also configure Amazon S3 Bucket Key. For information about default encryption,
|
||||
// see Amazon S3 default bucket encryption
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html) in the
|
||||
// Amazon S3 User Guide. For more information about S3 Bucket Keys, see Amazon S3
|
||||
// Bucket Keys (https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-key.html) in
|
||||
// the Amazon S3 User Guide. This action requires Amazon Web Services Signature
|
||||
// Version 4. For more information, see Authenticating Requests (Amazon Web
|
||||
// Services Signature Version 4)
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/sig-v4-authenticating-requests.html).
|
||||
// To use this operation, you must have permissions to perform the
|
||||
// s3:PutEncryptionConfiguration action. The 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)
|
||||
// in the Amazon S3 User Guide. Related Resources
|
||||
//
|
||||
// * GetBucketEncryption
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketEncryption.html)
|
||||
//
|
||||
// *
|
||||
// DeleteBucketEncryption
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketEncryption.html)
|
||||
func (c *Client) PutBucketEncryption(ctx context.Context, params *PutBucketEncryptionInput, optFns ...func(*Options)) (*PutBucketEncryptionOutput, error) {
|
||||
if params == nil {
|
||||
params = &PutBucketEncryptionInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "PutBucketEncryption", params, optFns, c.addOperationPutBucketEncryptionMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*PutBucketEncryptionOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type PutBucketEncryptionInput struct {
|
||||
|
||||
// Specifies default encryption for a bucket using server-side encryption with
|
||||
// Amazon S3-managed keys (SSE-S3) or customer managed keys (SSE-KMS). For
|
||||
// information about the Amazon S3 default encryption feature, see Amazon S3
|
||||
// Default Bucket Encryption
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html) in the
|
||||
// Amazon S3 User Guide.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// Specifies the default server-side-encryption configuration.
|
||||
//
|
||||
// This member is required.
|
||||
ServerSideEncryptionConfiguration *types.ServerSideEncryptionConfiguration
|
||||
|
||||
// The base64-encoded 128-bit MD5 digest of the server-side encryption
|
||||
// configuration. For requests made using the Amazon Web Services Command Line
|
||||
// Interface (CLI) or Amazon Web Services SDKs, this field is calculated
|
||||
// automatically.
|
||||
ContentMD5 *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type PutBucketEncryptionOutput struct {
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationPutBucketEncryptionMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpPutBucketEncryption{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpPutBucketEncryption{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpPutBucketEncryptionValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opPutBucketEncryption(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addPutBucketEncryptionUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddContentChecksumMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opPutBucketEncryption(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "PutBucketEncryption",
|
||||
}
|
||||
}
|
||||
|
||||
// getPutBucketEncryptionBucketMember returns a pointer to string denoting a
|
||||
// provided bucket member valueand a boolean indicating if the input has a modeled
|
||||
// bucket name,
|
||||
func getPutBucketEncryptionBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*PutBucketEncryptionInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addPutBucketEncryptionUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getPutBucketEncryptionBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
226
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketIntelligentTieringConfiguration.go
generated
vendored
Normal file
226
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketIntelligentTieringConfiguration.go
generated
vendored
Normal file
@@ -0,0 +1,226 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Puts a S3 Intelligent-Tiering configuration to the specified bucket. You can
|
||||
// have up to 1,000 S3 Intelligent-Tiering configurations per bucket. The S3
|
||||
// Intelligent-Tiering storage class is designed to optimize storage costs by
|
||||
// automatically moving data to the most cost-effective storage access tier,
|
||||
// without performance impact or operational overhead. S3 Intelligent-Tiering
|
||||
// delivers automatic cost savings in two low latency and high throughput access
|
||||
// tiers. For data that can be accessed asynchronously, you can choose to activate
|
||||
// automatic archiving capabilities within the S3 Intelligent-Tiering storage
|
||||
// class. The S3 Intelligent-Tiering storage class is the ideal storage class for
|
||||
// data with unknown, changing, or unpredictable access patterns, independent of
|
||||
// object size or retention period. If the size of an object is less than 128 KB,
|
||||
// it is not eligible for auto-tiering. Smaller objects can be stored, but they are
|
||||
// always charged at the Frequent Access tier rates in the S3 Intelligent-Tiering
|
||||
// storage class. For more information, see Storage class for automatically
|
||||
// optimizing frequently and infrequently accessed objects
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html#sc-dynamic-data-access).
|
||||
// Operations related to PutBucketIntelligentTieringConfiguration include:
|
||||
//
|
||||
// *
|
||||
// DeleteBucketIntelligentTieringConfiguration
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketIntelligentTieringConfiguration.html)
|
||||
//
|
||||
// *
|
||||
// GetBucketIntelligentTieringConfiguration
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketIntelligentTieringConfiguration.html)
|
||||
//
|
||||
// *
|
||||
// ListBucketIntelligentTieringConfigurations
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBucketIntelligentTieringConfigurations.html)
|
||||
//
|
||||
// You
|
||||
// only need S3 Intelligent-Tiering enabled on a bucket if you want to
|
||||
// automatically move objects stored in the S3 Intelligent-Tiering storage class to
|
||||
// the Archive Access or Deep Archive Access tier. Special Errors
|
||||
//
|
||||
// * HTTP 400 Bad
|
||||
// Request Error
|
||||
//
|
||||
// * Code: InvalidArgument
|
||||
//
|
||||
// * Cause: Invalid Argument
|
||||
//
|
||||
// * HTTP 400
|
||||
// Bad Request Error
|
||||
//
|
||||
// * Code: TooManyConfigurations
|
||||
//
|
||||
// * Cause: You are attempting to
|
||||
// create a new configuration but have already reached the 1,000-configuration
|
||||
// limit.
|
||||
//
|
||||
// * HTTP 403 Forbidden Error
|
||||
//
|
||||
// * Code: AccessDenied
|
||||
//
|
||||
// * Cause: You are not
|
||||
// the owner of the specified bucket, or you do not have the
|
||||
// s3:PutIntelligentTieringConfiguration bucket permission to set the configuration
|
||||
// on the bucket.
|
||||
func (c *Client) PutBucketIntelligentTieringConfiguration(ctx context.Context, params *PutBucketIntelligentTieringConfigurationInput, optFns ...func(*Options)) (*PutBucketIntelligentTieringConfigurationOutput, error) {
|
||||
if params == nil {
|
||||
params = &PutBucketIntelligentTieringConfigurationInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "PutBucketIntelligentTieringConfiguration", params, optFns, c.addOperationPutBucketIntelligentTieringConfigurationMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*PutBucketIntelligentTieringConfigurationOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type PutBucketIntelligentTieringConfigurationInput struct {
|
||||
|
||||
// The name of the Amazon S3 bucket whose configuration you want to modify or
|
||||
// retrieve.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The ID used to identify the S3 Intelligent-Tiering configuration.
|
||||
//
|
||||
// This member is required.
|
||||
Id *string
|
||||
|
||||
// Container for S3 Intelligent-Tiering configuration.
|
||||
//
|
||||
// This member is required.
|
||||
IntelligentTieringConfiguration *types.IntelligentTieringConfiguration
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type PutBucketIntelligentTieringConfigurationOutput struct {
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationPutBucketIntelligentTieringConfigurationMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpPutBucketIntelligentTieringConfiguration{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpPutBucketIntelligentTieringConfiguration{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpPutBucketIntelligentTieringConfigurationValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opPutBucketIntelligentTieringConfiguration(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addPutBucketIntelligentTieringConfigurationUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opPutBucketIntelligentTieringConfiguration(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "PutBucketIntelligentTieringConfiguration",
|
||||
}
|
||||
}
|
||||
|
||||
// getPutBucketIntelligentTieringConfigurationBucketMember returns a pointer to
|
||||
// string denoting a provided bucket member valueand a boolean indicating if the
|
||||
// input has a modeled bucket name,
|
||||
func getPutBucketIntelligentTieringConfigurationBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*PutBucketIntelligentTieringConfigurationInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addPutBucketIntelligentTieringConfigurationUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getPutBucketIntelligentTieringConfigurationBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
235
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketInventoryConfiguration.go
generated
vendored
Normal file
235
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketInventoryConfiguration.go
generated
vendored
Normal file
@@ -0,0 +1,235 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// This implementation of the PUT action adds an inventory configuration
|
||||
// (identified by the inventory ID) to the bucket. You can have up to 1,000
|
||||
// inventory configurations per bucket. Amazon S3 inventory generates inventories
|
||||
// of the objects in the bucket on a daily or weekly basis, and the results are
|
||||
// published to a flat file. The bucket that is inventoried is called the source
|
||||
// bucket, and the bucket where the inventory flat file is stored is called the
|
||||
// destination bucket. The destination bucket must be in the same Amazon Web
|
||||
// Services Region as the source bucket. When you configure an inventory for a
|
||||
// source bucket, you specify the destination bucket where you want the inventory
|
||||
// to be stored, and whether to generate the inventory daily or weekly. You can
|
||||
// also configure what object metadata to include and whether to inventory all
|
||||
// object versions or only current versions. For more information, see Amazon S3
|
||||
// Inventory
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-inventory.html) in the
|
||||
// Amazon S3 User Guide. You must create a bucket policy on the destination bucket
|
||||
// to grant permissions to Amazon S3 to write objects to the bucket in the defined
|
||||
// location. For an example policy, see Granting Permissions for Amazon S3
|
||||
// Inventory and Storage Class Analysis
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/example-bucket-policies.html#example-bucket-policies-use-case-9).
|
||||
// To use this operation, you must have permissions to perform the
|
||||
// s3:PutInventoryConfiguration action. The 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)
|
||||
// in the Amazon S3 User Guide. Special Errors
|
||||
//
|
||||
// * HTTP 400 Bad Request Error
|
||||
//
|
||||
// *
|
||||
// Code: InvalidArgument
|
||||
//
|
||||
// * Cause: Invalid Argument
|
||||
//
|
||||
// * HTTP 400 Bad Request
|
||||
// Error
|
||||
//
|
||||
// * Code: TooManyConfigurations
|
||||
//
|
||||
// * Cause: You are attempting to create a
|
||||
// new configuration but have already reached the 1,000-configuration limit.
|
||||
//
|
||||
// *
|
||||
// HTTP 403 Forbidden Error
|
||||
//
|
||||
// * Code: AccessDenied
|
||||
//
|
||||
// * Cause: You are not the owner
|
||||
// of the specified bucket, or you do not have the s3:PutInventoryConfiguration
|
||||
// bucket permission to set the configuration on the bucket.
|
||||
//
|
||||
// Related Resources
|
||||
//
|
||||
// *
|
||||
// GetBucketInventoryConfiguration
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketInventoryConfiguration.html)
|
||||
//
|
||||
// *
|
||||
// DeleteBucketInventoryConfiguration
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketInventoryConfiguration.html)
|
||||
//
|
||||
// *
|
||||
// ListBucketInventoryConfigurations
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBucketInventoryConfigurations.html)
|
||||
func (c *Client) PutBucketInventoryConfiguration(ctx context.Context, params *PutBucketInventoryConfigurationInput, optFns ...func(*Options)) (*PutBucketInventoryConfigurationOutput, error) {
|
||||
if params == nil {
|
||||
params = &PutBucketInventoryConfigurationInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "PutBucketInventoryConfiguration", params, optFns, c.addOperationPutBucketInventoryConfigurationMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*PutBucketInventoryConfigurationOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type PutBucketInventoryConfigurationInput struct {
|
||||
|
||||
// The name of the bucket where the inventory configuration will be stored.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The ID used to identify the inventory configuration.
|
||||
//
|
||||
// This member is required.
|
||||
Id *string
|
||||
|
||||
// Specifies the inventory configuration.
|
||||
//
|
||||
// This member is required.
|
||||
InventoryConfiguration *types.InventoryConfiguration
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type PutBucketInventoryConfigurationOutput struct {
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationPutBucketInventoryConfigurationMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpPutBucketInventoryConfiguration{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpPutBucketInventoryConfiguration{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpPutBucketInventoryConfigurationValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opPutBucketInventoryConfiguration(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addPutBucketInventoryConfigurationUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opPutBucketInventoryConfiguration(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "PutBucketInventoryConfiguration",
|
||||
}
|
||||
}
|
||||
|
||||
// getPutBucketInventoryConfigurationBucketMember returns a pointer to string
|
||||
// denoting a provided bucket member valueand a boolean indicating if the input has
|
||||
// a modeled bucket name,
|
||||
func getPutBucketInventoryConfigurationBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*PutBucketInventoryConfigurationInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addPutBucketInventoryConfigurationUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getPutBucketInventoryConfigurationBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
233
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketLifecycleConfiguration.go
generated
vendored
Normal file
233
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketLifecycleConfiguration.go
generated
vendored
Normal file
@@ -0,0 +1,233 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Creates a new lifecycle configuration for the bucket or replaces an existing
|
||||
// lifecycle configuration. For information about lifecycle configuration, see
|
||||
// Managing your storage lifecycle
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-lifecycle-mgmt.html).
|
||||
// Bucket lifecycle configuration now supports specifying a lifecycle rule using an
|
||||
// object key name prefix, one or more object tags, or a combination of both.
|
||||
// Accordingly, this section describes the latest API. The previous version of the
|
||||
// API supported filtering based only on an object key name prefix, which is
|
||||
// supported for backward compatibility. For the related API description, see
|
||||
// PutBucketLifecycle
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycle.html).
|
||||
// Rules You specify the lifecycle configuration in your request body. The
|
||||
// lifecycle configuration is specified as XML consisting of one or more rules.
|
||||
// Each rule consists of the following:
|
||||
//
|
||||
// * Filter identifying a subset of objects
|
||||
// to which the rule applies. The filter can be based on a key name prefix, object
|
||||
// tags, or a combination of both.
|
||||
//
|
||||
// * Status whether the rule is in effect.
|
||||
//
|
||||
// * One
|
||||
// or more lifecycle transition and expiration actions that you want Amazon S3 to
|
||||
// perform on the objects identified by the filter. If the state of your bucket is
|
||||
// versioning-enabled or versioning-suspended, you can have many versions of the
|
||||
// same object (one current version and zero or more noncurrent versions). Amazon
|
||||
// S3 provides predefined actions that you can specify for current and noncurrent
|
||||
// object versions.
|
||||
//
|
||||
// For more information, see Object Lifecycle Management
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html) and
|
||||
// Lifecycle Configuration Elements
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/intro-lifecycle-rules.html).
|
||||
// Permissions By default, all Amazon S3 resources are private, including buckets,
|
||||
// objects, and related subresources (for example, lifecycle configuration and
|
||||
// website configuration). Only the resource owner (that is, the Amazon Web
|
||||
// Services account that created it) can access the resource. The resource owner
|
||||
// can optionally grant access permissions to others by writing an access policy.
|
||||
// For this operation, a user must get the s3:PutLifecycleConfiguration permission.
|
||||
// You can also explicitly deny permissions. Explicit deny also supersedes any
|
||||
// other permissions. If you want to block users or accounts from removing or
|
||||
// deleting objects from your bucket, you must deny them permissions for the
|
||||
// following actions:
|
||||
//
|
||||
// * s3:DeleteObject
|
||||
//
|
||||
// * s3:DeleteObjectVersion
|
||||
//
|
||||
// *
|
||||
// s3:PutLifecycleConfiguration
|
||||
//
|
||||
// For more information about permissions, see
|
||||
// Managing Access Permissions to Your Amazon S3 Resources
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html).
|
||||
// The following are related to PutBucketLifecycleConfiguration:
|
||||
//
|
||||
// * Examples of
|
||||
// Lifecycle Configuration
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/lifecycle-configuration-examples.html)
|
||||
//
|
||||
// *
|
||||
// GetBucketLifecycleConfiguration
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLifecycleConfiguration.html)
|
||||
//
|
||||
// *
|
||||
// DeleteBucketLifecycle
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketLifecycle.html)
|
||||
func (c *Client) PutBucketLifecycleConfiguration(ctx context.Context, params *PutBucketLifecycleConfigurationInput, optFns ...func(*Options)) (*PutBucketLifecycleConfigurationOutput, error) {
|
||||
if params == nil {
|
||||
params = &PutBucketLifecycleConfigurationInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "PutBucketLifecycleConfiguration", params, optFns, c.addOperationPutBucketLifecycleConfigurationMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*PutBucketLifecycleConfigurationOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type PutBucketLifecycleConfigurationInput struct {
|
||||
|
||||
// The name of the bucket for which to set the configuration.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
// Container for lifecycle rules. You can add as many as 1,000 rules.
|
||||
LifecycleConfiguration *types.BucketLifecycleConfiguration
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type PutBucketLifecycleConfigurationOutput struct {
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationPutBucketLifecycleConfigurationMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpPutBucketLifecycleConfiguration{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpPutBucketLifecycleConfiguration{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpPutBucketLifecycleConfigurationValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opPutBucketLifecycleConfiguration(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addPutBucketLifecycleConfigurationUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddContentChecksumMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opPutBucketLifecycleConfiguration(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "PutBucketLifecycleConfiguration",
|
||||
}
|
||||
}
|
||||
|
||||
// getPutBucketLifecycleConfigurationBucketMember returns a pointer to string
|
||||
// denoting a provided bucket member valueand a boolean indicating if the input has
|
||||
// a modeled bucket name,
|
||||
func getPutBucketLifecycleConfigurationBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*PutBucketLifecycleConfigurationInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addPutBucketLifecycleConfigurationUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getPutBucketLifecycleConfigurationBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
219
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketLogging.go
generated
vendored
Normal file
219
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketLogging.go
generated
vendored
Normal file
@@ -0,0 +1,219 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Set the logging parameters for a bucket and to specify permissions for who can
|
||||
// view and modify the logging parameters. All logs are saved to buckets in the
|
||||
// same Amazon Web Services Region as the source bucket. To set the logging status
|
||||
// of a bucket, you must be the bucket owner. The bucket owner is automatically
|
||||
// granted FULL_CONTROL to all logs. You use the Grantee request element to grant
|
||||
// access to other people. The Permissions request element specifies the kind of
|
||||
// access the grantee has to the logs. Grantee Values You can specify the person
|
||||
// (grantee) to whom you're assigning access rights (using request elements) in the
|
||||
// following ways:
|
||||
//
|
||||
// * By the person's ID: <>ID<><>GranteesEmail<> DisplayName is
|
||||
// optional and ignored in the request.
|
||||
//
|
||||
// * By Email address:
|
||||
// <>Grantees@email.com<> The grantee is resolved to the CanonicalUser and, in a
|
||||
// response to a GET Object acl request, appears as the CanonicalUser.
|
||||
//
|
||||
// * By URI:
|
||||
// <>http://acs.amazonaws.com/groups/global/AuthenticatedUsers<>
|
||||
//
|
||||
// To enable
|
||||
// logging, you use LoggingEnabled and its children request elements. To disable
|
||||
// logging, you use an empty BucketLoggingStatus request element: For more
|
||||
// information about server access logging, see Server Access Logging
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerLogs.html). For more
|
||||
// information about creating a bucket, see CreateBucket
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html). For
|
||||
// more information about returning the logging status of a bucket, see
|
||||
// GetBucketLogging
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLogging.html). The
|
||||
// following operations are related to PutBucketLogging:
|
||||
//
|
||||
// * PutObject
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html)
|
||||
//
|
||||
// *
|
||||
// DeleteBucket
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucket.html)
|
||||
//
|
||||
// *
|
||||
// CreateBucket
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html)
|
||||
//
|
||||
// *
|
||||
// GetBucketLogging
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLogging.html)
|
||||
func (c *Client) PutBucketLogging(ctx context.Context, params *PutBucketLoggingInput, optFns ...func(*Options)) (*PutBucketLoggingOutput, error) {
|
||||
if params == nil {
|
||||
params = &PutBucketLoggingInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "PutBucketLogging", params, optFns, c.addOperationPutBucketLoggingMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*PutBucketLoggingOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type PutBucketLoggingInput struct {
|
||||
|
||||
// The name of the bucket for which to set the logging parameters.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// Container for logging status information.
|
||||
//
|
||||
// This member is required.
|
||||
BucketLoggingStatus *types.BucketLoggingStatus
|
||||
|
||||
// The MD5 hash of the PutBucketLogging request body. For requests made using the
|
||||
// Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs,
|
||||
// this field is calculated automatically.
|
||||
ContentMD5 *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type PutBucketLoggingOutput struct {
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationPutBucketLoggingMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpPutBucketLogging{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpPutBucketLogging{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpPutBucketLoggingValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opPutBucketLogging(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addPutBucketLoggingUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddContentChecksumMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opPutBucketLogging(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "PutBucketLogging",
|
||||
}
|
||||
}
|
||||
|
||||
// getPutBucketLoggingBucketMember returns a pointer to string denoting a provided
|
||||
// bucket member valueand a boolean indicating if the input has a modeled bucket
|
||||
// name,
|
||||
func getPutBucketLoggingBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*PutBucketLoggingInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addPutBucketLoggingUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getPutBucketLoggingBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
209
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketMetricsConfiguration.go
generated
vendored
Normal file
209
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketMetricsConfiguration.go
generated
vendored
Normal file
@@ -0,0 +1,209 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Sets a metrics configuration (specified by the metrics configuration ID) for the
|
||||
// bucket. You can have up to 1,000 metrics configurations per bucket. If you're
|
||||
// updating an existing metrics configuration, note that this is a full replacement
|
||||
// of the existing metrics configuration. If you don't include the elements you
|
||||
// want to keep, they are erased. To use this operation, you must have permissions
|
||||
// to perform the s3:PutMetricsConfiguration action. The 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).
|
||||
// For information about CloudWatch request metrics for Amazon S3, see Monitoring
|
||||
// Metrics with Amazon CloudWatch
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/cloudwatch-monitoring.html).
|
||||
// The following operations are related to PutBucketMetricsConfiguration:
|
||||
//
|
||||
// *
|
||||
// DeleteBucketMetricsConfiguration
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketMetricsConfiguration.html)
|
||||
//
|
||||
// *
|
||||
// GetBucketMetricsConfiguration
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketMetricsConfiguration.html)
|
||||
//
|
||||
// *
|
||||
// ListBucketMetricsConfigurations
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBucketMetricsConfigurations.html)
|
||||
//
|
||||
// GetBucketLifecycle
|
||||
// has the following special error:
|
||||
//
|
||||
// * Error code: TooManyConfigurations
|
||||
//
|
||||
// *
|
||||
// Description: You are attempting to create a new configuration but have already
|
||||
// reached the 1,000-configuration limit.
|
||||
//
|
||||
// * HTTP Status Code: HTTP 400 Bad Request
|
||||
func (c *Client) PutBucketMetricsConfiguration(ctx context.Context, params *PutBucketMetricsConfigurationInput, optFns ...func(*Options)) (*PutBucketMetricsConfigurationOutput, error) {
|
||||
if params == nil {
|
||||
params = &PutBucketMetricsConfigurationInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "PutBucketMetricsConfiguration", params, optFns, c.addOperationPutBucketMetricsConfigurationMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*PutBucketMetricsConfigurationOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type PutBucketMetricsConfigurationInput struct {
|
||||
|
||||
// The name of the bucket for which the metrics configuration is set.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The ID used to identify the metrics configuration.
|
||||
//
|
||||
// This member is required.
|
||||
Id *string
|
||||
|
||||
// Specifies the metrics configuration.
|
||||
//
|
||||
// This member is required.
|
||||
MetricsConfiguration *types.MetricsConfiguration
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type PutBucketMetricsConfigurationOutput struct {
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationPutBucketMetricsConfigurationMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpPutBucketMetricsConfiguration{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpPutBucketMetricsConfiguration{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpPutBucketMetricsConfigurationValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opPutBucketMetricsConfiguration(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addPutBucketMetricsConfigurationUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opPutBucketMetricsConfiguration(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "PutBucketMetricsConfiguration",
|
||||
}
|
||||
}
|
||||
|
||||
// getPutBucketMetricsConfigurationBucketMember returns a pointer to string
|
||||
// denoting a provided bucket member valueand a boolean indicating if the input has
|
||||
// a modeled bucket name,
|
||||
func getPutBucketMetricsConfigurationBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*PutBucketMetricsConfigurationInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addPutBucketMetricsConfigurationUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getPutBucketMetricsConfigurationBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
201
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketNotificationConfiguration.go
generated
vendored
Normal file
201
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketNotificationConfiguration.go
generated
vendored
Normal file
@@ -0,0 +1,201 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Enables notifications of specified events for a bucket. For more information
|
||||
// about event notifications, see Configuring Event Notifications
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html). Using
|
||||
// this API, you can replace an existing notification configuration. The
|
||||
// configuration is an XML file that defines the event types that you want Amazon
|
||||
// S3 to publish and the destination where you want Amazon S3 to publish an event
|
||||
// notification when it detects an event of the specified type. By default, your
|
||||
// bucket has no event notifications configured. That is, the notification
|
||||
// configuration will be an empty NotificationConfiguration. This action replaces
|
||||
// the existing notification configuration with the configuration you include in
|
||||
// the request body. After Amazon S3 receives this request, it first verifies that
|
||||
// any Amazon Simple Notification Service (Amazon SNS) or Amazon Simple Queue
|
||||
// Service (Amazon SQS) destination exists, and that the bucket owner has
|
||||
// permission to publish to it by sending a test notification. In the case of
|
||||
// Lambda destinations, Amazon S3 verifies that the Lambda function permissions
|
||||
// grant Amazon S3 permission to invoke the function from the Amazon S3 bucket. For
|
||||
// more information, see Configuring Notifications for Amazon S3 Events
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html). You
|
||||
// can disable notifications by adding the empty NotificationConfiguration element.
|
||||
// By default, only the bucket owner can configure notifications on a bucket.
|
||||
// However, bucket owners can use a bucket policy to grant permission to other
|
||||
// users to set this configuration with s3:PutBucketNotification permission. The
|
||||
// PUT notification is an atomic operation. For example, suppose your notification
|
||||
// configuration includes SNS topic, SQS queue, and Lambda function configurations.
|
||||
// When you send a PUT request with this configuration, Amazon S3 sends test
|
||||
// messages to your SNS topic. If the message fails, the entire PUT action will
|
||||
// fail, and Amazon S3 will not add the configuration to your bucket. Responses If
|
||||
// the configuration in the request body includes only one TopicConfiguration
|
||||
// specifying only the s3:ReducedRedundancyLostObject event type, the response will
|
||||
// also include the x-amz-sns-test-message-id header containing the message ID of
|
||||
// the test notification sent to the topic. The following action is related to
|
||||
// PutBucketNotificationConfiguration:
|
||||
//
|
||||
// * GetBucketNotificationConfiguration
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketNotificationConfiguration.html)
|
||||
func (c *Client) PutBucketNotificationConfiguration(ctx context.Context, params *PutBucketNotificationConfigurationInput, optFns ...func(*Options)) (*PutBucketNotificationConfigurationOutput, error) {
|
||||
if params == nil {
|
||||
params = &PutBucketNotificationConfigurationInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "PutBucketNotificationConfiguration", params, optFns, c.addOperationPutBucketNotificationConfigurationMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*PutBucketNotificationConfigurationOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type PutBucketNotificationConfigurationInput struct {
|
||||
|
||||
// The name of the bucket.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// A container for specifying the notification configuration of the bucket. If this
|
||||
// element is empty, notifications are turned off for the bucket.
|
||||
//
|
||||
// This member is required.
|
||||
NotificationConfiguration *types.NotificationConfiguration
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type PutBucketNotificationConfigurationOutput struct {
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationPutBucketNotificationConfigurationMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpPutBucketNotificationConfiguration{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpPutBucketNotificationConfiguration{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpPutBucketNotificationConfigurationValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opPutBucketNotificationConfiguration(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addPutBucketNotificationConfigurationUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opPutBucketNotificationConfiguration(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "PutBucketNotificationConfiguration",
|
||||
}
|
||||
}
|
||||
|
||||
// getPutBucketNotificationConfigurationBucketMember returns a pointer to string
|
||||
// denoting a provided bucket member valueand a boolean indicating if the input has
|
||||
// a modeled bucket name,
|
||||
func getPutBucketNotificationConfigurationBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*PutBucketNotificationConfigurationInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addPutBucketNotificationConfigurationUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getPutBucketNotificationConfigurationBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
186
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketOwnershipControls.go
generated
vendored
Normal file
186
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketOwnershipControls.go
generated
vendored
Normal file
@@ -0,0 +1,186 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Creates or modifies OwnershipControls for an Amazon S3 bucket. To use this
|
||||
// operation, you must have the s3:PutBucketOwnershipControls permission. For more
|
||||
// information about Amazon S3 permissions, see Specifying Permissions in a Policy
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html).
|
||||
// For information about Amazon S3 Object Ownership, see Using Object Ownership
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/about-object-ownership.html).
|
||||
// The following operations are related to PutBucketOwnershipControls:
|
||||
//
|
||||
// *
|
||||
// GetBucketOwnershipControls
|
||||
//
|
||||
// * DeleteBucketOwnershipControls
|
||||
func (c *Client) PutBucketOwnershipControls(ctx context.Context, params *PutBucketOwnershipControlsInput, optFns ...func(*Options)) (*PutBucketOwnershipControlsOutput, error) {
|
||||
if params == nil {
|
||||
params = &PutBucketOwnershipControlsInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "PutBucketOwnershipControls", params, optFns, c.addOperationPutBucketOwnershipControlsMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*PutBucketOwnershipControlsOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type PutBucketOwnershipControlsInput struct {
|
||||
|
||||
// The name of the Amazon S3 bucket whose OwnershipControls you want to set.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The OwnershipControls (BucketOwnerPreferred or ObjectWriter) that you want to
|
||||
// apply to this Amazon S3 bucket.
|
||||
//
|
||||
// This member is required.
|
||||
OwnershipControls *types.OwnershipControls
|
||||
|
||||
// The MD5 hash of the OwnershipControls request body. For requests made using the
|
||||
// Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs,
|
||||
// this field is calculated automatically.
|
||||
ContentMD5 *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type PutBucketOwnershipControlsOutput struct {
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationPutBucketOwnershipControlsMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpPutBucketOwnershipControls{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpPutBucketOwnershipControls{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpPutBucketOwnershipControlsValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opPutBucketOwnershipControls(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addPutBucketOwnershipControlsUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddContentChecksumMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opPutBucketOwnershipControls(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "PutBucketOwnershipControls",
|
||||
}
|
||||
}
|
||||
|
||||
// getPutBucketOwnershipControlsBucketMember returns a pointer to string denoting a
|
||||
// provided bucket member valueand a boolean indicating if the input has a modeled
|
||||
// bucket name,
|
||||
func getPutBucketOwnershipControlsBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*PutBucketOwnershipControlsInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addPutBucketOwnershipControlsUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getPutBucketOwnershipControlsBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
196
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketPolicy.go
generated
vendored
Normal file
196
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketPolicy.go
generated
vendored
Normal file
@@ -0,0 +1,196 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Applies an Amazon S3 bucket policy to an Amazon S3 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 PutBucketPolicy permissions on
|
||||
// the specified bucket and belong to the bucket owner's account in order to use
|
||||
// this operation. 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 operation,
|
||||
// even if the policy explicitly denies the root user the ability to perform this
|
||||
// action. For more information, see Bucket policy examples
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/example-bucket-policies.html).
|
||||
// The following operations are related to PutBucketPolicy:
|
||||
//
|
||||
// * CreateBucket
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html)
|
||||
//
|
||||
// *
|
||||
// DeleteBucket
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucket.html)
|
||||
func (c *Client) PutBucketPolicy(ctx context.Context, params *PutBucketPolicyInput, optFns ...func(*Options)) (*PutBucketPolicyOutput, error) {
|
||||
if params == nil {
|
||||
params = &PutBucketPolicyInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "PutBucketPolicy", params, optFns, c.addOperationPutBucketPolicyMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*PutBucketPolicyOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type PutBucketPolicyInput struct {
|
||||
|
||||
// The name of the bucket.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The bucket policy as a JSON document.
|
||||
//
|
||||
// This member is required.
|
||||
Policy *string
|
||||
|
||||
// Set this parameter to true to confirm that you want to remove your permissions
|
||||
// to change this bucket policy in the future.
|
||||
ConfirmRemoveSelfBucketAccess bool
|
||||
|
||||
// The MD5 hash of the request body. For requests made using the Amazon Web
|
||||
// Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is
|
||||
// calculated automatically.
|
||||
ContentMD5 *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type PutBucketPolicyOutput struct {
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationPutBucketPolicyMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpPutBucketPolicy{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpPutBucketPolicy{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpPutBucketPolicyValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opPutBucketPolicy(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addPutBucketPolicyUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddContentChecksumMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opPutBucketPolicy(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "PutBucketPolicy",
|
||||
}
|
||||
}
|
||||
|
||||
// getPutBucketPolicyBucketMember returns a pointer to string denoting a provided
|
||||
// bucket member valueand a boolean indicating if the input has a modeled bucket
|
||||
// name,
|
||||
func getPutBucketPolicyBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*PutBucketPolicyInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addPutBucketPolicyUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getPutBucketPolicyBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
232
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketReplication.go
generated
vendored
Normal file
232
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketReplication.go
generated
vendored
Normal file
@@ -0,0 +1,232 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Creates a replication configuration or replaces an existing one. For more
|
||||
// information, see Replication
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/replication.html) in the Amazon
|
||||
// S3 User Guide. Specify the replication configuration in the request body. In the
|
||||
// replication configuration, you provide the name of the destination bucket or
|
||||
// buckets where you want Amazon S3 to replicate objects, the IAM role that Amazon
|
||||
// S3 can assume to replicate objects on your behalf, and other relevant
|
||||
// information. A replication configuration must include at least one rule, and can
|
||||
// contain a maximum of 1,000. Each rule identifies a subset of objects to
|
||||
// replicate by filtering the objects in the source 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 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. If you are using an earlier
|
||||
// version of the replication configuration, Amazon S3 handles replication of
|
||||
// delete markers differently. For more information, see Backward Compatibility
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-add-config.html#replication-backward-compat-considerations).
|
||||
// For information about enabling versioning on a bucket, see Using Versioning
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/Versioning.html). Handling
|
||||
// Replication of Encrypted Objects By default, Amazon S3 doesn't replicate objects
|
||||
// that are stored at rest using server-side encryption with KMS keys. To replicate
|
||||
// Amazon Web Services KMS-encrypted objects, add the following:
|
||||
// SourceSelectionCriteria, SseKmsEncryptedObjects, Status,
|
||||
// EncryptionConfiguration, and ReplicaKmsKeyID. For information about replication
|
||||
// configuration, see Replicating Objects Created with SSE Using KMS keys
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-config-for-kms-objects.html).
|
||||
// For information on PutBucketReplication errors, see List of replication-related
|
||||
// error codes
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ReplicationErrorCodeList)
|
||||
// Permissions To create a PutBucketReplication request, you must have
|
||||
// s3:PutReplicationConfiguration permissions for the bucket. By default, a
|
||||
// resource owner, in this case the Amazon Web Services account that created the
|
||||
// bucket, can perform this operation. The resource owner can also grant others
|
||||
// permissions to perform the operation. For more information about permissions,
|
||||
// see Specifying Permissions in a Policy
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html) and
|
||||
// Managing Access Permissions to Your Amazon S3 Resources
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html).
|
||||
// To perform this operation, the user or role performing the action must have the
|
||||
// iam:PassRole
|
||||
// (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_passrole.html)
|
||||
// permission. The following operations are related to PutBucketReplication:
|
||||
//
|
||||
// *
|
||||
// GetBucketReplication
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketReplication.html)
|
||||
//
|
||||
// *
|
||||
// DeleteBucketReplication
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketReplication.html)
|
||||
func (c *Client) PutBucketReplication(ctx context.Context, params *PutBucketReplicationInput, optFns ...func(*Options)) (*PutBucketReplicationOutput, error) {
|
||||
if params == nil {
|
||||
params = &PutBucketReplicationInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "PutBucketReplication", params, optFns, c.addOperationPutBucketReplicationMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*PutBucketReplicationOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type PutBucketReplicationInput struct {
|
||||
|
||||
// The name of the bucket
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// A container for replication rules. You can add up to 1,000 rules. The maximum
|
||||
// size of a replication configuration is 2 MB.
|
||||
//
|
||||
// This member is required.
|
||||
ReplicationConfiguration *types.ReplicationConfiguration
|
||||
|
||||
// The base64-encoded 128-bit MD5 digest of the data. You must use this header as a
|
||||
// message integrity check to verify that the request body was not corrupted in
|
||||
// transit. For more information, see RFC 1864
|
||||
// (http://www.ietf.org/rfc/rfc1864.txt). For requests made using the Amazon Web
|
||||
// Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is
|
||||
// calculated automatically.
|
||||
ContentMD5 *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
// A token to allow Object Lock to be enabled for an existing bucket.
|
||||
Token *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type PutBucketReplicationOutput struct {
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationPutBucketReplicationMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpPutBucketReplication{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpPutBucketReplication{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpPutBucketReplicationValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opPutBucketReplication(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addPutBucketReplicationUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddContentChecksumMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opPutBucketReplication(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "PutBucketReplication",
|
||||
}
|
||||
}
|
||||
|
||||
// getPutBucketReplicationBucketMember returns a pointer to string denoting a
|
||||
// provided bucket member valueand a boolean indicating if the input has a modeled
|
||||
// bucket name,
|
||||
func getPutBucketReplicationBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*PutBucketReplicationInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addPutBucketReplicationUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getPutBucketReplicationBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
189
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketRequestPayment.go
generated
vendored
Normal file
189
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketRequestPayment.go
generated
vendored
Normal file
@@ -0,0 +1,189 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Sets the request payment configuration for a bucket. By default, the bucket
|
||||
// owner pays for downloads from the bucket. This configuration parameter enables
|
||||
// the bucket owner (only) to specify that the person requesting the download will
|
||||
// be charged for the download. For more information, see Requester Pays Buckets
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/RequesterPaysBuckets.html). The
|
||||
// following operations are related to PutBucketRequestPayment:
|
||||
//
|
||||
// * CreateBucket
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html)
|
||||
//
|
||||
// *
|
||||
// GetBucketRequestPayment
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketRequestPayment.html)
|
||||
func (c *Client) PutBucketRequestPayment(ctx context.Context, params *PutBucketRequestPaymentInput, optFns ...func(*Options)) (*PutBucketRequestPaymentOutput, error) {
|
||||
if params == nil {
|
||||
params = &PutBucketRequestPaymentInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "PutBucketRequestPayment", params, optFns, c.addOperationPutBucketRequestPaymentMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*PutBucketRequestPaymentOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type PutBucketRequestPaymentInput struct {
|
||||
|
||||
// The bucket name.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// Container for Payer.
|
||||
//
|
||||
// This member is required.
|
||||
RequestPaymentConfiguration *types.RequestPaymentConfiguration
|
||||
|
||||
// The base64-encoded 128-bit MD5 digest of the data. You must use this header as a
|
||||
// message integrity check to verify that the request body was not corrupted in
|
||||
// transit. For more information, see RFC 1864
|
||||
// (http://www.ietf.org/rfc/rfc1864.txt). For requests made using the Amazon Web
|
||||
// Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is
|
||||
// calculated automatically.
|
||||
ContentMD5 *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type PutBucketRequestPaymentOutput struct {
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationPutBucketRequestPaymentMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpPutBucketRequestPayment{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpPutBucketRequestPayment{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpPutBucketRequestPaymentValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opPutBucketRequestPayment(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addPutBucketRequestPaymentUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddContentChecksumMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opPutBucketRequestPayment(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "PutBucketRequestPayment",
|
||||
}
|
||||
}
|
||||
|
||||
// getPutBucketRequestPaymentBucketMember returns a pointer to string denoting a
|
||||
// provided bucket member valueand a boolean indicating if the input has a modeled
|
||||
// bucket name,
|
||||
func getPutBucketRequestPaymentBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*PutBucketRequestPaymentInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addPutBucketRequestPaymentUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getPutBucketRequestPaymentBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
234
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketTagging.go
generated
vendored
Normal file
234
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketTagging.go
generated
vendored
Normal file
@@ -0,0 +1,234 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Sets the tags for a bucket. 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)
|
||||
// and Using Cost Allocation in Amazon S3 Bucket Tags
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/CostAllocTagging.html). When
|
||||
// this operation sets the tags for a bucket, it will overwrite any current tags
|
||||
// the bucket already has. You cannot use this operation to add tags to an existing
|
||||
// list of tags. To use this operation, you must have permissions to perform the
|
||||
// s3:PutBucketTagging action. The 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. Please try
|
||||
// again.
|
||||
//
|
||||
// * Error code: InternalError
|
||||
//
|
||||
// * Description: The service was unable to
|
||||
// apply the provided tag to the bucket.
|
||||
//
|
||||
// The following operations are related to
|
||||
// PutBucketTagging:
|
||||
//
|
||||
// * GetBucketTagging
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketTagging.html)
|
||||
//
|
||||
// *
|
||||
// DeleteBucketTagging
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketTagging.html)
|
||||
func (c *Client) PutBucketTagging(ctx context.Context, params *PutBucketTaggingInput, optFns ...func(*Options)) (*PutBucketTaggingOutput, error) {
|
||||
if params == nil {
|
||||
params = &PutBucketTaggingInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "PutBucketTagging", params, optFns, c.addOperationPutBucketTaggingMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*PutBucketTaggingOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type PutBucketTaggingInput struct {
|
||||
|
||||
// The bucket name.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// Container for the TagSet and Tag elements.
|
||||
//
|
||||
// This member is required.
|
||||
Tagging *types.Tagging
|
||||
|
||||
// The base64-encoded 128-bit MD5 digest of the data. You must use this header as a
|
||||
// message integrity check to verify that the request body was not corrupted in
|
||||
// transit. For more information, see RFC 1864
|
||||
// (http://www.ietf.org/rfc/rfc1864.txt). For requests made using the Amazon Web
|
||||
// Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is
|
||||
// calculated automatically.
|
||||
ContentMD5 *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type PutBucketTaggingOutput struct {
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationPutBucketTaggingMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpPutBucketTagging{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpPutBucketTagging{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpPutBucketTaggingValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opPutBucketTagging(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addPutBucketTaggingUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddContentChecksumMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opPutBucketTagging(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "PutBucketTagging",
|
||||
}
|
||||
}
|
||||
|
||||
// getPutBucketTaggingBucketMember returns a pointer to string denoting a provided
|
||||
// bucket member valueand a boolean indicating if the input has a modeled bucket
|
||||
// name,
|
||||
func getPutBucketTaggingBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*PutBucketTaggingInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addPutBucketTaggingUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getPutBucketTaggingBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
211
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketVersioning.go
generated
vendored
Normal file
211
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketVersioning.go
generated
vendored
Normal file
@@ -0,0 +1,211 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Sets the versioning state of an existing bucket. To set the versioning state,
|
||||
// you must be the bucket owner. You can set the versioning state with one of the
|
||||
// following values: Enabled—Enables versioning for the objects in the bucket. All
|
||||
// objects added to the bucket receive a unique version ID. Suspended—Disables
|
||||
// versioning for the objects in the bucket. All objects added to the bucket
|
||||
// receive the version ID null. If the versioning state has never been set on a
|
||||
// bucket, it has no versioning state; a GetBucketVersioning
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketVersioning.html)
|
||||
// request does not return a versioning state value. If the bucket owner enables
|
||||
// MFA Delete in the bucket versioning configuration, the bucket owner must include
|
||||
// the x-amz-mfa request header and the Status and the MfaDelete request elements
|
||||
// in a request to set the versioning state of the bucket. If you have an object
|
||||
// expiration lifecycle policy 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 policy
|
||||
// will manage the deletes of the noncurrent object versions in the version-enabled
|
||||
// bucket. (A version-enabled bucket maintains one current and zero or more
|
||||
// noncurrent object versions.) For more information, see Lifecycle and Versioning
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html#lifecycle-and-other-bucket-config).
|
||||
// Related Resources
|
||||
//
|
||||
// * CreateBucket
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html)
|
||||
//
|
||||
// *
|
||||
// DeleteBucket
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucket.html)
|
||||
//
|
||||
// *
|
||||
// GetBucketVersioning
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketVersioning.html)
|
||||
func (c *Client) PutBucketVersioning(ctx context.Context, params *PutBucketVersioningInput, optFns ...func(*Options)) (*PutBucketVersioningOutput, error) {
|
||||
if params == nil {
|
||||
params = &PutBucketVersioningInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "PutBucketVersioning", params, optFns, c.addOperationPutBucketVersioningMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*PutBucketVersioningOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type PutBucketVersioningInput struct {
|
||||
|
||||
// The bucket name.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// Container for setting the versioning state.
|
||||
//
|
||||
// This member is required.
|
||||
VersioningConfiguration *types.VersioningConfiguration
|
||||
|
||||
// >The base64-encoded 128-bit MD5 digest of the data. You must use this header as
|
||||
// a message integrity check to verify that the request body was not corrupted in
|
||||
// transit. For more information, see RFC 1864
|
||||
// (http://www.ietf.org/rfc/rfc1864.txt). For requests made using the Amazon Web
|
||||
// Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is
|
||||
// calculated automatically.
|
||||
ContentMD5 *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
// The concatenation of the authentication device's serial number, a space, and the
|
||||
// value that is displayed on your authentication device.
|
||||
MFA *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type PutBucketVersioningOutput struct {
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationPutBucketVersioningMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpPutBucketVersioning{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpPutBucketVersioning{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpPutBucketVersioningValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opPutBucketVersioning(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addPutBucketVersioningUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddContentChecksumMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opPutBucketVersioning(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "PutBucketVersioning",
|
||||
}
|
||||
}
|
||||
|
||||
// getPutBucketVersioningBucketMember returns a pointer to string denoting a
|
||||
// provided bucket member valueand a boolean indicating if the input has a modeled
|
||||
// bucket name,
|
||||
func getPutBucketVersioningBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*PutBucketVersioningInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addPutBucketVersioningUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getPutBucketVersioningBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
247
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketWebsite.go
generated
vendored
Normal file
247
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketWebsite.go
generated
vendored
Normal file
@@ -0,0 +1,247 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Sets the configuration of the website that is specified in the website
|
||||
// subresource. To configure a bucket as a website, you can add this subresource on
|
||||
// the bucket with website configuration information such as the file name of the
|
||||
// index document and any redirect rules. For more information, see Hosting
|
||||
// Websites on Amazon S3
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/WebsiteHosting.html). This PUT
|
||||
// action requires the S3:PutBucketWebsite permission. By default, only the bucket
|
||||
// owner can configure the website attached to a bucket; however, bucket owners can
|
||||
// allow other users to set the website configuration by writing a bucket policy
|
||||
// that grants them the S3:PutBucketWebsite permission. To redirect all website
|
||||
// requests sent to the bucket's website endpoint, you add a website configuration
|
||||
// with the following elements. Because all requests are sent to another website,
|
||||
// you don't need to provide index document name for the bucket.
|
||||
//
|
||||
// *
|
||||
// WebsiteConfiguration
|
||||
//
|
||||
// * RedirectAllRequestsTo
|
||||
//
|
||||
// * HostName
|
||||
//
|
||||
// * Protocol
|
||||
//
|
||||
// If you
|
||||
// want granular control over redirects, you can use the following elements to add
|
||||
// routing rules that describe conditions for redirecting requests and information
|
||||
// about the redirect destination. In this case, the website configuration must
|
||||
// provide an index document for the bucket, because some requests might not be
|
||||
// redirected.
|
||||
//
|
||||
// * WebsiteConfiguration
|
||||
//
|
||||
// * IndexDocument
|
||||
//
|
||||
// * Suffix
|
||||
//
|
||||
// *
|
||||
// ErrorDocument
|
||||
//
|
||||
// * Key
|
||||
//
|
||||
// * RoutingRules
|
||||
//
|
||||
// * RoutingRule
|
||||
//
|
||||
// * Condition
|
||||
//
|
||||
// *
|
||||
// HttpErrorCodeReturnedEquals
|
||||
//
|
||||
// * KeyPrefixEquals
|
||||
//
|
||||
// * Redirect
|
||||
//
|
||||
// * Protocol
|
||||
//
|
||||
// *
|
||||
// HostName
|
||||
//
|
||||
// * ReplaceKeyPrefixWith
|
||||
//
|
||||
// * ReplaceKeyWith
|
||||
//
|
||||
// * HttpRedirectCode
|
||||
//
|
||||
// Amazon
|
||||
// S3 has a limitation of 50 routing rules per website configuration. If you
|
||||
// require more than 50 routing rules, you can use object redirect. For more
|
||||
// information, see Configuring an Object Redirect
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/how-to-page-redirect.html) in
|
||||
// the Amazon S3 User Guide.
|
||||
func (c *Client) PutBucketWebsite(ctx context.Context, params *PutBucketWebsiteInput, optFns ...func(*Options)) (*PutBucketWebsiteOutput, error) {
|
||||
if params == nil {
|
||||
params = &PutBucketWebsiteInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "PutBucketWebsite", params, optFns, c.addOperationPutBucketWebsiteMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*PutBucketWebsiteOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type PutBucketWebsiteInput struct {
|
||||
|
||||
// The bucket name.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// Container for the request.
|
||||
//
|
||||
// This member is required.
|
||||
WebsiteConfiguration *types.WebsiteConfiguration
|
||||
|
||||
// The base64-encoded 128-bit MD5 digest of the data. You must use this header as a
|
||||
// message integrity check to verify that the request body was not corrupted in
|
||||
// transit. For more information, see RFC 1864
|
||||
// (http://www.ietf.org/rfc/rfc1864.txt). For requests made using the Amazon Web
|
||||
// Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is
|
||||
// calculated automatically.
|
||||
ContentMD5 *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type PutBucketWebsiteOutput struct {
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationPutBucketWebsiteMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpPutBucketWebsite{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpPutBucketWebsite{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpPutBucketWebsiteValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opPutBucketWebsite(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addPutBucketWebsiteUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddContentChecksumMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opPutBucketWebsite(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "PutBucketWebsite",
|
||||
}
|
||||
}
|
||||
|
||||
// getPutBucketWebsiteBucketMember returns a pointer to string denoting a provided
|
||||
// bucket member valueand a boolean indicating if the input has a modeled bucket
|
||||
// name,
|
||||
func getPutBucketWebsiteBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*PutBucketWebsiteInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addPutBucketWebsiteUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getPutBucketWebsiteBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
498
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutObject.go
generated
vendored
Normal file
498
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutObject.go
generated
vendored
Normal file
@@ -0,0 +1,498 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
awshttp "github.com/aws/aws-sdk-go-v2/aws/transport/http"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
"io"
|
||||
"time"
|
||||
)
|
||||
|
||||
// Adds an object to a bucket. You must have WRITE permissions on a bucket to add
|
||||
// an object to it. Amazon S3 never adds partial objects; if you receive a success
|
||||
// response, Amazon S3 added the entire object to the bucket. Amazon S3 is a
|
||||
// distributed system. If it receives multiple write requests for the same object
|
||||
// simultaneously, it overwrites all but the last object written. Amazon S3 does
|
||||
// not provide object locking; if you need this, make sure to build it into your
|
||||
// application layer or use versioning instead. To ensure that data is not
|
||||
// corrupted traversing the network, use the Content-MD5 header. When you use this
|
||||
// header, Amazon S3 checks the object against the provided MD5 value and, if they
|
||||
// do not match, returns an error. Additionally, you can calculate the MD5 while
|
||||
// putting an object to Amazon S3 and compare the returned ETag to the calculated
|
||||
// MD5 value.
|
||||
//
|
||||
// * To successfully complete the PutObject request, you must have the
|
||||
// s3:PutObject in your IAM permissions.
|
||||
//
|
||||
// * To successfully change the objects acl
|
||||
// of your PutObject request, you must have the s3:PutObjectAcl in your IAM
|
||||
// permissions.
|
||||
//
|
||||
// * The Content-MD5 header is required for any request to upload an
|
||||
// object with a retention period configured using Amazon S3 Object Lock. For more
|
||||
// information about Amazon S3 Object Lock, see Amazon S3 Object Lock Overview
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock-overview.html) in
|
||||
// the Amazon S3 User Guide.
|
||||
//
|
||||
// Server-side Encryption You can optionally request
|
||||
// server-side encryption. With server-side encryption, Amazon S3 encrypts your
|
||||
// data as it writes it to disks in its data centers and decrypts the data when you
|
||||
// access it. You have the option to provide your own encryption key or use Amazon
|
||||
// Web Services managed encryption keys (SSE-S3 or SSE-KMS). For more information,
|
||||
// see Using Server-Side Encryption
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingServerSideEncryption.html).
|
||||
// If you request server-side encryption using Amazon Web Services Key Management
|
||||
// Service (SSE-KMS), you can enable an S3 Bucket Key at the object-level. For more
|
||||
// information, see Amazon S3 Bucket Keys
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-key.html) in the Amazon
|
||||
// S3 User Guide. Access Control List (ACL)-Specific Request Headers You can use
|
||||
// headers to grant ACL- based permissions. By default, all objects are private.
|
||||
// Only the owner has full access control. When adding a new object, you can grant
|
||||
// permissions to individual Amazon Web Services accounts or to predefined groups
|
||||
// defined by Amazon S3. These permissions are then added to the ACL on the object.
|
||||
// For more information, see Access Control List (ACL) Overview
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html) and Managing
|
||||
// ACLs Using the REST API
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-using-rest-api.html).
|
||||
// Storage Class Options By default, Amazon S3 uses the STANDARD Storage Class to
|
||||
// store newly created objects. The STANDARD storage class provides high durability
|
||||
// and high availability. Depending on performance needs, you can specify a
|
||||
// different Storage Class. Amazon S3 on Outposts only uses the OUTPOSTS Storage
|
||||
// Class. For more information, see Storage Classes
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html) in
|
||||
// the Amazon S3 User Guide. Versioning If you enable versioning for a bucket,
|
||||
// Amazon S3 automatically generates a unique version ID for the object being
|
||||
// stored. Amazon S3 returns this ID in the response. When you enable versioning
|
||||
// for a bucket, if Amazon S3 receives multiple write requests for the same object
|
||||
// simultaneously, it stores all of the objects. For more information about
|
||||
// versioning, see Adding Objects to Versioning Enabled Buckets
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/AddingObjectstoVersioningEnabledBuckets.html).
|
||||
// For information about returning the versioning state of a bucket, see
|
||||
// GetBucketVersioning
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketVersioning.html).
|
||||
// Related Resources
|
||||
//
|
||||
// * CopyObject
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html)
|
||||
//
|
||||
// *
|
||||
// DeleteObject
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObject.html)
|
||||
func (c *Client) PutObject(ctx context.Context, params *PutObjectInput, optFns ...func(*Options)) (*PutObjectOutput, error) {
|
||||
if params == nil {
|
||||
params = &PutObjectInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "PutObject", params, optFns, c.addOperationPutObjectMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*PutObjectOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type PutObjectInput struct {
|
||||
|
||||
// The bucket name to which the PUT action was initiated. When using this action
|
||||
// with an access point, you must direct requests to the access point hostname. The
|
||||
// access point hostname takes the form
|
||||
// AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this
|
||||
// action with an access point through the Amazon Web Services SDKs, you provide
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see Using access points
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide. When using this action with Amazon S3 on Outposts,
|
||||
// you must direct requests to the S3 on Outposts hostname. The S3 on Outposts
|
||||
// hostname takes the form
|
||||
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When using
|
||||
// this action using S3 on Outposts through the Amazon Web Services SDKs, you
|
||||
// provide the Outposts bucket ARN in place of the bucket name. For more
|
||||
// information about S3 on Outposts ARNs, see Using S3 on Outposts
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) in the
|
||||
// Amazon S3 User Guide.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// Object key for which the PUT action was initiated.
|
||||
//
|
||||
// This member is required.
|
||||
Key *string
|
||||
|
||||
// The canned ACL to apply to the object. For more information, see Canned ACL
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#CannedACL).
|
||||
// This action is not supported by Amazon S3 on Outposts.
|
||||
ACL types.ObjectCannedACL
|
||||
|
||||
// Object data.
|
||||
Body io.Reader
|
||||
|
||||
// Specifies whether Amazon S3 should use an S3 Bucket Key for object encryption
|
||||
// with server-side encryption using AWS 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 a PUT action doesn’t affect bucket-level settings
|
||||
// for S3 Bucket Key.
|
||||
BucketKeyEnabled bool
|
||||
|
||||
// Can be used to specify caching behavior along the request/reply chain. For more
|
||||
// information, see http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9
|
||||
// (http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9).
|
||||
CacheControl *string
|
||||
|
||||
// Specifies presentational information for the object. For more information, see
|
||||
// http://www.w3.org/Protocols/rfc2616/rfc2616-sec19.html#sec19.5.1
|
||||
// (http://www.w3.org/Protocols/rfc2616/rfc2616-sec19.html#sec19.5.1).
|
||||
ContentDisposition *string
|
||||
|
||||
// Specifies what content encodings have been applied to the object and thus what
|
||||
// decoding mechanisms must be applied to obtain the media-type referenced by the
|
||||
// Content-Type header field. For more information, see
|
||||
// http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.11
|
||||
// (http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.11).
|
||||
ContentEncoding *string
|
||||
|
||||
// The language the content is in.
|
||||
ContentLanguage *string
|
||||
|
||||
// Size of the body in bytes. This parameter is useful when the size of the body
|
||||
// cannot be determined automatically. For more information, see
|
||||
// http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.13
|
||||
// (http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.13).
|
||||
ContentLength int64
|
||||
|
||||
// The base64-encoded 128-bit MD5 digest of the message (without the headers)
|
||||
// according to RFC 1864. This header can be used as a message integrity check to
|
||||
// verify that the data is the same data that was originally sent. Although it is
|
||||
// optional, we recommend using the Content-MD5 mechanism as an end-to-end
|
||||
// integrity check. For more information about REST request authentication, see
|
||||
// REST Authentication
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/RESTAuthentication.html).
|
||||
ContentMD5 *string
|
||||
|
||||
// A standard MIME type describing the format of the contents. For more
|
||||
// information, see http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.17
|
||||
// (http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.17).
|
||||
ContentType *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
// The date and time at which the object is no longer cacheable. For more
|
||||
// information, see http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.21
|
||||
// (http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.21).
|
||||
Expires *time.Time
|
||||
|
||||
// Gives the grantee READ, READ_ACP, and WRITE_ACP permissions on the object. This
|
||||
// action is not supported by Amazon S3 on Outposts.
|
||||
GrantFullControl *string
|
||||
|
||||
// Allows grantee to read the object data and its metadata. This action is not
|
||||
// supported by Amazon S3 on Outposts.
|
||||
GrantRead *string
|
||||
|
||||
// Allows grantee to read the object ACL. This action is not supported by Amazon S3
|
||||
// on Outposts.
|
||||
GrantReadACP *string
|
||||
|
||||
// Allows grantee to write the ACL for the applicable object. This action is not
|
||||
// supported by Amazon S3 on Outposts.
|
||||
GrantWriteACP *string
|
||||
|
||||
// A map of metadata to store with the object in S3.
|
||||
Metadata map[string]string
|
||||
|
||||
// Specifies whether a legal hold will be applied to this object. For more
|
||||
// information about S3 Object Lock, see Object Lock
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html).
|
||||
ObjectLockLegalHoldStatus types.ObjectLockLegalHoldStatus
|
||||
|
||||
// The Object Lock mode that you want to apply to this object.
|
||||
ObjectLockMode types.ObjectLockMode
|
||||
|
||||
// The date and time when you want this object's Object Lock to expire. Must be
|
||||
// formatted as a timestamp parameter.
|
||||
ObjectLockRetainUntilDate *time.Time
|
||||
|
||||
// Confirms that the requester knows that they will be charged for the request.
|
||||
// Bucket owners need not specify this parameter in their requests. For information
|
||||
// about downloading objects from requester pays buckets, see Downloading Objects
|
||||
// in Requestor Pays Buckets
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
RequestPayer types.RequestPayer
|
||||
|
||||
// Specifies the algorithm to use to when encrypting the object (for example,
|
||||
// AES256).
|
||||
SSECustomerAlgorithm *string
|
||||
|
||||
// Specifies the customer-provided encryption key for Amazon S3 to use in
|
||||
// encrypting data. This value is used to store the object and then it is
|
||||
// discarded; Amazon S3 does not store the encryption key. The key must be
|
||||
// appropriate for use with the algorithm specified in the
|
||||
// x-amz-server-side-encryption-customer-algorithm header.
|
||||
SSECustomerKey *string
|
||||
|
||||
// Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321.
|
||||
// Amazon S3 uses this header for a message integrity check to ensure that the
|
||||
// encryption key was transmitted without error.
|
||||
SSECustomerKeyMD5 *string
|
||||
|
||||
// Specifies the Amazon Web Services KMS Encryption Context to use for object
|
||||
// encryption. The value of this header is a base64-encoded UTF-8 string holding
|
||||
// JSON with the encryption context key-value pairs.
|
||||
SSEKMSEncryptionContext *string
|
||||
|
||||
// If x-amz-server-side-encryption is present and has the value of aws:kms, this
|
||||
// header specifies the ID of the Amazon Web Services Key Management Service
|
||||
// (Amazon Web Services KMS) symmetrical customer managed key that was used for the
|
||||
// object. If you specify x-amz-server-side-encryption:aws:kms, but do not provide
|
||||
// x-amz-server-side-encryption-aws-kms-key-id, Amazon S3 uses the Amazon Web
|
||||
// Services managed key to protect the data. If the KMS key does not exist in the
|
||||
// same account issuing the command, you must use the full ARN and not just the ID.
|
||||
SSEKMSKeyId *string
|
||||
|
||||
// The server-side encryption algorithm used when storing this object in Amazon S3
|
||||
// (for example, AES256, aws:kms).
|
||||
ServerSideEncryption types.ServerSideEncryption
|
||||
|
||||
// By default, Amazon S3 uses the STANDARD Storage Class to store newly created
|
||||
// objects. The STANDARD storage class provides high durability and high
|
||||
// availability. Depending on performance needs, you can specify a different
|
||||
// Storage Class. Amazon S3 on Outposts only uses the OUTPOSTS Storage Class. For
|
||||
// more information, see Storage Classes
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html) in
|
||||
// the Amazon S3 User Guide.
|
||||
StorageClass types.StorageClass
|
||||
|
||||
// The tag-set for the object. The tag-set must be encoded as URL Query parameters.
|
||||
// (For example, "Key1=Value1")
|
||||
Tagging *string
|
||||
|
||||
// If the bucket is configured as a website, redirects requests for this object to
|
||||
// another object in the same bucket or to an external URL. Amazon S3 stores the
|
||||
// value of this header in the object metadata. For information about object
|
||||
// metadata, see Object Key and Metadata
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html). In the
|
||||
// following example, the request header sets the redirect to an object
|
||||
// (anotherPage.html) in the same bucket: x-amz-website-redirect-location:
|
||||
// /anotherPage.html In the following example, the request header sets the object
|
||||
// redirect to another website: x-amz-website-redirect-location:
|
||||
// http://www.example.com/ For more information about website hosting in Amazon S3,
|
||||
// see Hosting Websites on Amazon S3
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/WebsiteHosting.html) and How to
|
||||
// Configure Website Page Redirects
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/how-to-page-redirect.html).
|
||||
WebsiteRedirectLocation *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type PutObjectOutput struct {
|
||||
|
||||
// Indicates whether the uploaded object uses an S3 Bucket Key for server-side
|
||||
// encryption with Amazon Web Services KMS (SSE-KMS).
|
||||
BucketKeyEnabled bool
|
||||
|
||||
// Entity tag for the uploaded object.
|
||||
ETag *string
|
||||
|
||||
// If the expiration is configured for the object (see
|
||||
// PutBucketLifecycleConfiguration
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html)),
|
||||
// the response includes this header. It includes the expiry-date and rule-id
|
||||
// key-value pairs that provide information about object expiration. The value of
|
||||
// the rule-id is URL encoded.
|
||||
Expiration *string
|
||||
|
||||
// If present, indicates that the requester was successfully charged for the
|
||||
// request.
|
||||
RequestCharged types.RequestCharged
|
||||
|
||||
// If server-side encryption with a customer-provided encryption key was requested,
|
||||
// the response will include this header confirming the encryption algorithm used.
|
||||
SSECustomerAlgorithm *string
|
||||
|
||||
// If server-side encryption with a customer-provided encryption key was requested,
|
||||
// the response will include this header to provide round-trip message integrity
|
||||
// verification of the customer-provided encryption key.
|
||||
SSECustomerKeyMD5 *string
|
||||
|
||||
// If present, specifies the Amazon Web Services KMS Encryption Context to use for
|
||||
// object encryption. The value of this header is a base64-encoded UTF-8 string
|
||||
// holding JSON with the encryption context key-value pairs.
|
||||
SSEKMSEncryptionContext *string
|
||||
|
||||
// If x-amz-server-side-encryption is present and has the value of aws:kms, this
|
||||
// header specifies the ID of the Amazon Web Services Key Management Service
|
||||
// (Amazon Web Services KMS) symmetric customer managed key that was used for the
|
||||
// object.
|
||||
SSEKMSKeyId *string
|
||||
|
||||
// If you specified server-side encryption either with an Amazon Web Services KMS
|
||||
// key or Amazon S3-managed encryption key in your PUT request, the response
|
||||
// includes this header. It confirms the encryption algorithm that Amazon S3 used
|
||||
// to encrypt the object.
|
||||
ServerSideEncryption types.ServerSideEncryption
|
||||
|
||||
// Version of the object.
|
||||
VersionId *string
|
||||
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationPutObjectMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpPutObject{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpPutObject{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpPutObjectValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opPutObject(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addPutObjectUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opPutObject(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "PutObject",
|
||||
}
|
||||
}
|
||||
|
||||
// getPutObjectBucketMember returns a pointer to string denoting a provided bucket
|
||||
// member valueand a boolean indicating if the input has a modeled bucket name,
|
||||
func getPutObjectBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*PutObjectInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addPutObjectUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getPutObjectBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
|
||||
// PresignPutObject is used to generate a presigned HTTP Request which contains
|
||||
// presigned URL, signed headers and HTTP method used.
|
||||
func (c *PresignClient) PresignPutObject(ctx context.Context, params *PutObjectInput, optFns ...func(*PresignOptions)) (*v4.PresignedHTTPRequest, error) {
|
||||
if params == nil {
|
||||
params = &PutObjectInput{}
|
||||
}
|
||||
options := c.options.copy()
|
||||
for _, fn := range optFns {
|
||||
fn(&options)
|
||||
}
|
||||
clientOptFns := append(options.ClientOptions, withNopHTTPClientAPIOption)
|
||||
|
||||
result, _, err := c.client.invokeOperation(ctx, "PutObject", params, clientOptFns,
|
||||
c.client.addOperationPutObjectMiddlewares,
|
||||
presignConverter(options).convertToPresignMiddleware,
|
||||
func(stack *middleware.Stack, options Options) error {
|
||||
return awshttp.RemoveContentTypeHeader(stack)
|
||||
},
|
||||
addPutObjectPayloadAsUnsigned,
|
||||
)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*v4.PresignedHTTPRequest)
|
||||
return out, nil
|
||||
}
|
||||
|
||||
func addPutObjectPayloadAsUnsigned(stack *middleware.Stack, options Options) error {
|
||||
v4.RemoveContentSHA256HeaderMiddleware(stack)
|
||||
v4.RemoveComputePayloadSHA256Middleware(stack)
|
||||
return v4.AddUnsignedPayloadMiddleware(stack)
|
||||
}
|
||||
371
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutObjectAcl.go
generated
vendored
Normal file
371
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutObjectAcl.go
generated
vendored
Normal file
@@ -0,0 +1,371 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Uses the acl subresource to set the access control list (ACL) permissions for a
|
||||
// new or existing object in an S3 bucket. You must have WRITE_ACP permission to
|
||||
// set the ACL of an object. For more information, see What permissions can I
|
||||
// grant?
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#permissions)
|
||||
// in the Amazon S3 User Guide. This action is not supported by Amazon S3 on
|
||||
// Outposts. Depending on your application needs, you can choose to set the ACL on
|
||||
// an object using either the request body or the headers. For example, if you have
|
||||
// an existing application that updates a bucket ACL using the request body, you
|
||||
// can continue to use that approach. For more information, see Access Control List
|
||||
// (ACL) Overview
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html) in the
|
||||
// Amazon S3 User Guide. Access Permissions You can set access permissions using
|
||||
// one of the following methods:
|
||||
//
|
||||
// * Specify a canned ACL with the x-amz-acl request
|
||||
// header. Amazon S3 supports a set of predefined ACLs, known as canned ACLs. Each
|
||||
// canned ACL has a predefined set of grantees and permissions. Specify the canned
|
||||
// ACL name as the value of x-amz-acl. If you use this header, you cannot use other
|
||||
// access control-specific headers in your request. For more information, see
|
||||
// Canned ACL
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#CannedACL).
|
||||
//
|
||||
// *
|
||||
// Specify access permissions explicitly with the x-amz-grant-read,
|
||||
// x-amz-grant-read-acp, x-amz-grant-write-acp, and x-amz-grant-full-control
|
||||
// headers. When using these headers, you specify explicit access permissions and
|
||||
// grantees (Amazon Web Services accounts or Amazon S3 groups) who will receive the
|
||||
// permission. If you use these ACL-specific headers, you cannot use x-amz-acl
|
||||
// header to set a canned ACL. These parameters map to the set of permissions that
|
||||
// Amazon S3 supports in an ACL. For more information, see Access Control List
|
||||
// (ACL) Overview
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html). You specify
|
||||
// each grantee as a type=value pair, where the type is one of the following:
|
||||
//
|
||||
// * id
|
||||
// – if the value specified is the canonical user ID of an Amazon Web Services
|
||||
// account
|
||||
//
|
||||
// * uri – if you are granting permissions to a predefined group
|
||||
//
|
||||
// *
|
||||
// emailAddress – if the value specified is the email address of an Amazon Web
|
||||
// Services account Using email addresses to specify a grantee is only supported in
|
||||
// the following Amazon Web Services Regions:
|
||||
//
|
||||
// * US East (N. Virginia)
|
||||
//
|
||||
// * US West
|
||||
// (N. California)
|
||||
//
|
||||
// * US West (Oregon)
|
||||
//
|
||||
// * Asia Pacific (Singapore)
|
||||
//
|
||||
// * Asia Pacific
|
||||
// (Sydney)
|
||||
//
|
||||
// * Asia Pacific (Tokyo)
|
||||
//
|
||||
// * Europe (Ireland)
|
||||
//
|
||||
// * South America (São
|
||||
// Paulo)
|
||||
//
|
||||
// For a list of all the Amazon S3 supported Regions and endpoints, see
|
||||
// Regions and Endpoints
|
||||
// (https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region) in the
|
||||
// Amazon Web Services General Reference.
|
||||
//
|
||||
// For example, the following
|
||||
// x-amz-grant-read header grants list objects permission to the two Amazon Web
|
||||
// Services accounts identified by their email addresses. x-amz-grant-read:
|
||||
// emailAddress="xyz@amazon.com", emailAddress="abc@amazon.com"
|
||||
//
|
||||
// You can use either
|
||||
// a canned ACL or specify access permissions explicitly. You cannot do both.
|
||||
// Grantee Values You can specify the person (grantee) to whom you're assigning
|
||||
// access rights (using request elements) in the following ways:
|
||||
//
|
||||
// * By the person's
|
||||
// ID: <>ID<><>GranteesEmail<> DisplayName is optional and ignored in the
|
||||
// request.
|
||||
//
|
||||
// * By URI:
|
||||
// <>http://acs.amazonaws.com/groups/global/AuthenticatedUsers<>
|
||||
//
|
||||
// * By Email
|
||||
// address: <>Grantees@email.com<>lt;/Grantee> The grantee is resolved to the
|
||||
// CanonicalUser and, in a response to a GET Object acl request, appears as the
|
||||
// CanonicalUser. Using email addresses to specify a grantee is only supported in
|
||||
// the following Amazon Web Services Regions:
|
||||
//
|
||||
// * US East (N. Virginia)
|
||||
//
|
||||
// * US West
|
||||
// (N. California)
|
||||
//
|
||||
// * US West (Oregon)
|
||||
//
|
||||
// * Asia Pacific (Singapore)
|
||||
//
|
||||
// * Asia Pacific
|
||||
// (Sydney)
|
||||
//
|
||||
// * Asia Pacific (Tokyo)
|
||||
//
|
||||
// * Europe (Ireland)
|
||||
//
|
||||
// * South America (São
|
||||
// Paulo)
|
||||
//
|
||||
// For a list of all the Amazon S3 supported Regions and endpoints, see
|
||||
// Regions and Endpoints
|
||||
// (https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region) in the
|
||||
// Amazon Web Services General Reference.
|
||||
//
|
||||
// Versioning The ACL of an object is set
|
||||
// at the object version level. By default, PUT sets the ACL of the current version
|
||||
// of an object. To set the ACL of a different version, use the versionId
|
||||
// subresource. Related Resources
|
||||
//
|
||||
// * CopyObject
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html)
|
||||
//
|
||||
// *
|
||||
// GetObject (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html)
|
||||
func (c *Client) PutObjectAcl(ctx context.Context, params *PutObjectAclInput, optFns ...func(*Options)) (*PutObjectAclOutput, error) {
|
||||
if params == nil {
|
||||
params = &PutObjectAclInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "PutObjectAcl", params, optFns, c.addOperationPutObjectAclMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*PutObjectAclOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type PutObjectAclInput struct {
|
||||
|
||||
// The bucket name that contains the object to which you want to attach the ACL.
|
||||
// When using this action with an access point, you must direct requests to the
|
||||
// access point hostname. The access point hostname takes the form
|
||||
// AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this
|
||||
// action with an access point through the Amazon Web Services SDKs, you provide
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see Using access points
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// Key for which the PUT action was initiated. When using this action with an
|
||||
// access point, you must direct requests to the access point hostname. The access
|
||||
// point hostname takes the form
|
||||
// AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this
|
||||
// action with an access point through the Amazon Web Services SDKs, you provide
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see Using access points
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide. When using this action with Amazon S3 on Outposts,
|
||||
// you must direct requests to the S3 on Outposts hostname. The S3 on Outposts
|
||||
// hostname takes the form
|
||||
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When using
|
||||
// this action using S3 on Outposts through the Amazon Web Services SDKs, you
|
||||
// provide the Outposts bucket ARN in place of the bucket name. For more
|
||||
// information about S3 on Outposts ARNs, see Using S3 on Outposts
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) in the
|
||||
// Amazon S3 User Guide.
|
||||
//
|
||||
// This member is required.
|
||||
Key *string
|
||||
|
||||
// The canned ACL to apply to the object. For more information, see Canned ACL
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#CannedACL).
|
||||
ACL types.ObjectCannedACL
|
||||
|
||||
// Contains the elements that set the ACL permissions for an object per grantee.
|
||||
AccessControlPolicy *types.AccessControlPolicy
|
||||
|
||||
// The base64-encoded 128-bit MD5 digest of the data. This header must be used as a
|
||||
// message integrity check to verify that the request body was not corrupted in
|
||||
// transit. For more information, go to RFC 1864.>
|
||||
// (http://www.ietf.org/rfc/rfc1864.txt) For requests made using the Amazon Web
|
||||
// Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is
|
||||
// calculated automatically.
|
||||
ContentMD5 *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
// Allows grantee the read, write, read ACP, and write ACP permissions on the
|
||||
// bucket. This action is not supported by Amazon S3 on Outposts.
|
||||
GrantFullControl *string
|
||||
|
||||
// Allows grantee to list the objects in the bucket. This action is not supported
|
||||
// by Amazon S3 on Outposts.
|
||||
GrantRead *string
|
||||
|
||||
// Allows grantee to read the bucket ACL. This action is not supported by Amazon S3
|
||||
// on Outposts.
|
||||
GrantReadACP *string
|
||||
|
||||
// Allows grantee to create new objects in the bucket. For the bucket and object
|
||||
// owners of existing objects, also allows deletions and overwrites of those
|
||||
// objects.
|
||||
GrantWrite *string
|
||||
|
||||
// Allows grantee to write the ACL for the applicable bucket. This action is not
|
||||
// supported by Amazon S3 on Outposts.
|
||||
GrantWriteACP *string
|
||||
|
||||
// Confirms that the requester knows that they will be charged for the request.
|
||||
// Bucket owners need not specify this parameter in their requests. For information
|
||||
// about downloading objects from requester pays buckets, see Downloading Objects
|
||||
// in Requestor Pays Buckets
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
RequestPayer types.RequestPayer
|
||||
|
||||
// VersionId used to reference a specific version of the object.
|
||||
VersionId *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type PutObjectAclOutput struct {
|
||||
|
||||
// If present, indicates that the requester was successfully charged for the
|
||||
// request.
|
||||
RequestCharged types.RequestCharged
|
||||
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationPutObjectAclMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpPutObjectAcl{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpPutObjectAcl{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpPutObjectAclValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opPutObjectAcl(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addPutObjectAclUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddContentChecksumMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opPutObjectAcl(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "PutObjectAcl",
|
||||
}
|
||||
}
|
||||
|
||||
// getPutObjectAclBucketMember returns a pointer to string denoting a provided
|
||||
// bucket member valueand a boolean indicating if the input has a modeled bucket
|
||||
// name,
|
||||
func getPutObjectAclBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*PutObjectAclInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addPutObjectAclUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getPutObjectAclBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
205
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutObjectLegalHold.go
generated
vendored
Normal file
205
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutObjectLegalHold.go
generated
vendored
Normal file
@@ -0,0 +1,205 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Applies a Legal Hold configuration to the specified object. For more
|
||||
// information, see Locking Objects
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html). This action
|
||||
// is not supported by Amazon S3 on Outposts.
|
||||
func (c *Client) PutObjectLegalHold(ctx context.Context, params *PutObjectLegalHoldInput, optFns ...func(*Options)) (*PutObjectLegalHoldOutput, error) {
|
||||
if params == nil {
|
||||
params = &PutObjectLegalHoldInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "PutObjectLegalHold", params, optFns, c.addOperationPutObjectLegalHoldMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*PutObjectLegalHoldOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type PutObjectLegalHoldInput struct {
|
||||
|
||||
// The bucket name containing the object that you want to place a Legal Hold on.
|
||||
// When using this action with an access point, you must direct requests to the
|
||||
// access point hostname. The access point hostname takes the form
|
||||
// AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this
|
||||
// action with an access point through the Amazon Web Services SDKs, you provide
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see Using access points
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The key name for the object that you want to place a Legal Hold on.
|
||||
//
|
||||
// This member is required.
|
||||
Key *string
|
||||
|
||||
// The MD5 hash for the request body. For requests made using the Amazon Web
|
||||
// Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is
|
||||
// calculated automatically.
|
||||
ContentMD5 *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
// Container element for the Legal Hold configuration you want to apply to the
|
||||
// specified object.
|
||||
LegalHold *types.ObjectLockLegalHold
|
||||
|
||||
// Confirms that the requester knows that they will be charged for the request.
|
||||
// Bucket owners need not specify this parameter in their requests. For information
|
||||
// about downloading objects from requester pays buckets, see Downloading Objects
|
||||
// in Requestor Pays Buckets
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
RequestPayer types.RequestPayer
|
||||
|
||||
// The version ID of the object that you want to place a Legal Hold on.
|
||||
VersionId *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type PutObjectLegalHoldOutput struct {
|
||||
|
||||
// If present, indicates that the requester was successfully charged for the
|
||||
// request.
|
||||
RequestCharged types.RequestCharged
|
||||
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationPutObjectLegalHoldMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpPutObjectLegalHold{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpPutObjectLegalHold{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpPutObjectLegalHoldValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opPutObjectLegalHold(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addPutObjectLegalHoldUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddContentChecksumMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opPutObjectLegalHold(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "PutObjectLegalHold",
|
||||
}
|
||||
}
|
||||
|
||||
// getPutObjectLegalHoldBucketMember returns a pointer to string denoting a
|
||||
// provided bucket member valueand a boolean indicating if the input has a modeled
|
||||
// bucket name,
|
||||
func getPutObjectLegalHoldBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*PutObjectLegalHoldInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addPutObjectLegalHoldUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getPutObjectLegalHoldBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
202
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutObjectLockConfiguration.go
generated
vendored
Normal file
202
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutObjectLockConfiguration.go
generated
vendored
Normal file
@@ -0,0 +1,202 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Places an Object Lock configuration on the specified bucket. The rule specified
|
||||
// in the Object Lock configuration will be applied by default to every new object
|
||||
// placed in the specified bucket. For more information, see Locking Objects
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html).
|
||||
//
|
||||
// * The
|
||||
// DefaultRetention settings require both a mode and a period.
|
||||
//
|
||||
// * The
|
||||
// DefaultRetention period can be either Days or Years but you must select one. You
|
||||
// cannot specify Days and Years at the same time.
|
||||
//
|
||||
// * You can only enable Object
|
||||
// Lock for new buckets. If you want to turn on Object Lock for an existing bucket,
|
||||
// contact Amazon Web Services Support.
|
||||
func (c *Client) PutObjectLockConfiguration(ctx context.Context, params *PutObjectLockConfigurationInput, optFns ...func(*Options)) (*PutObjectLockConfigurationOutput, error) {
|
||||
if params == nil {
|
||||
params = &PutObjectLockConfigurationInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "PutObjectLockConfiguration", params, optFns, c.addOperationPutObjectLockConfigurationMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*PutObjectLockConfigurationOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type PutObjectLockConfigurationInput struct {
|
||||
|
||||
// The bucket whose Object Lock configuration you want to create or replace.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The MD5 hash for the request body. For requests made using the Amazon Web
|
||||
// Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is
|
||||
// calculated automatically.
|
||||
ContentMD5 *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
// The Object Lock configuration that you want to apply to the specified bucket.
|
||||
ObjectLockConfiguration *types.ObjectLockConfiguration
|
||||
|
||||
// Confirms that the requester knows that they will be charged for the request.
|
||||
// Bucket owners need not specify this parameter in their requests. For information
|
||||
// about downloading objects from requester pays buckets, see Downloading Objects
|
||||
// in Requestor Pays Buckets
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
RequestPayer types.RequestPayer
|
||||
|
||||
// A token to allow Object Lock to be enabled for an existing bucket.
|
||||
Token *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type PutObjectLockConfigurationOutput struct {
|
||||
|
||||
// If present, indicates that the requester was successfully charged for the
|
||||
// request.
|
||||
RequestCharged types.RequestCharged
|
||||
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationPutObjectLockConfigurationMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpPutObjectLockConfiguration{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpPutObjectLockConfiguration{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpPutObjectLockConfigurationValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opPutObjectLockConfiguration(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addPutObjectLockConfigurationUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddContentChecksumMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opPutObjectLockConfiguration(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "PutObjectLockConfiguration",
|
||||
}
|
||||
}
|
||||
|
||||
// getPutObjectLockConfigurationBucketMember returns a pointer to string denoting a
|
||||
// provided bucket member valueand a boolean indicating if the input has a modeled
|
||||
// bucket name,
|
||||
func getPutObjectLockConfigurationBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*PutObjectLockConfigurationInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addPutObjectLockConfigurationUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getPutObjectLockConfigurationBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
215
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutObjectRetention.go
generated
vendored
Normal file
215
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutObjectRetention.go
generated
vendored
Normal file
@@ -0,0 +1,215 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Places an Object Retention configuration on an object. For more information, see
|
||||
// Locking Objects
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html). Users or
|
||||
// accounts require the s3:PutObjectRetention permission in order to place an
|
||||
// Object Retention configuration on objects. Bypassing a Governance Retention
|
||||
// configuration requires the s3:BypassGovernanceRetention permission. This action
|
||||
// is not supported by Amazon S3 on Outposts. Permissions When the Object Lock
|
||||
// retention mode is set to compliance, you need s3:PutObjectRetention and
|
||||
// s3:BypassGovernanceRetention permissions. For other requests to
|
||||
// PutObjectRetention, only s3:PutObjectRetention permissions are required.
|
||||
func (c *Client) PutObjectRetention(ctx context.Context, params *PutObjectRetentionInput, optFns ...func(*Options)) (*PutObjectRetentionOutput, error) {
|
||||
if params == nil {
|
||||
params = &PutObjectRetentionInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "PutObjectRetention", params, optFns, c.addOperationPutObjectRetentionMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*PutObjectRetentionOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type PutObjectRetentionInput struct {
|
||||
|
||||
// The bucket name that contains the object you want to apply this Object Retention
|
||||
// configuration to. When using this action with an access point, you must direct
|
||||
// requests to the access point hostname. The access point hostname takes the form
|
||||
// AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this
|
||||
// action with an access point through the Amazon Web Services SDKs, you provide
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see Using access points
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The key name for the object that you want to apply this Object Retention
|
||||
// configuration to.
|
||||
//
|
||||
// This member is required.
|
||||
Key *string
|
||||
|
||||
// Indicates whether this action should bypass Governance-mode restrictions.
|
||||
BypassGovernanceRetention bool
|
||||
|
||||
// The MD5 hash for the request body. For requests made using the Amazon Web
|
||||
// Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is
|
||||
// calculated automatically.
|
||||
ContentMD5 *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
// Confirms that the requester knows that they will be charged for the request.
|
||||
// Bucket owners need not specify this parameter in their requests. For information
|
||||
// about downloading objects from requester pays buckets, see Downloading Objects
|
||||
// in Requestor Pays Buckets
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
RequestPayer types.RequestPayer
|
||||
|
||||
// The container element for the Object Retention configuration.
|
||||
Retention *types.ObjectLockRetention
|
||||
|
||||
// The version ID for the object that you want to apply this Object Retention
|
||||
// configuration to.
|
||||
VersionId *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type PutObjectRetentionOutput struct {
|
||||
|
||||
// If present, indicates that the requester was successfully charged for the
|
||||
// request.
|
||||
RequestCharged types.RequestCharged
|
||||
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationPutObjectRetentionMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpPutObjectRetention{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpPutObjectRetention{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpPutObjectRetentionValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opPutObjectRetention(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addPutObjectRetentionUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddContentChecksumMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opPutObjectRetention(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "PutObjectRetention",
|
||||
}
|
||||
}
|
||||
|
||||
// getPutObjectRetentionBucketMember returns a pointer to string denoting a
|
||||
// provided bucket member valueand a boolean indicating if the input has a modeled
|
||||
// bucket name,
|
||||
func getPutObjectRetentionBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*PutObjectRetentionInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addPutObjectRetentionUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getPutObjectRetentionBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
259
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutObjectTagging.go
generated
vendored
Normal file
259
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutObjectTagging.go
generated
vendored
Normal file
@@ -0,0 +1,259 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Sets the supplied tag-set to an object that already exists in a bucket. A tag is
|
||||
// a key-value pair. You can associate tags with an object by sending a PUT request
|
||||
// against the tagging subresource that is associated with the object. You can
|
||||
// retrieve tags by sending a GET request. For more information, see
|
||||
// GetObjectTagging
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectTagging.html). For
|
||||
// tagging-related restrictions related to characters and encodings, see Tag
|
||||
// Restrictions
|
||||
// (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/allocation-tag-restrictions.html).
|
||||
// Note that Amazon S3 limits the maximum number of tags to 10 tags per object. To
|
||||
// use this operation, you must have permission to perform the s3:PutObjectTagging
|
||||
// action. By default, the bucket owner has this permission and can grant this
|
||||
// permission to others. To put tags of any other version, use the versionId query
|
||||
// parameter. You also need permission for the s3:PutObjectVersionTagging action.
|
||||
// For information about the Amazon S3 object tagging feature, see Object Tagging
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/object-tagging.html). Special
|
||||
// Errors
|
||||
//
|
||||
// * Code: InvalidTagError
|
||||
//
|
||||
// * Cause: The tag provided was not a valid tag.
|
||||
// This error can occur if the tag did not pass input validation. For more
|
||||
// information, see Object Tagging
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/object-tagging.html).
|
||||
//
|
||||
// * Code:
|
||||
// MalformedXMLError
|
||||
//
|
||||
// * Cause: The XML provided does not match the schema.
|
||||
//
|
||||
// * Code:
|
||||
// OperationAbortedError
|
||||
//
|
||||
// * Cause: A conflicting conditional action is currently in
|
||||
// progress against this resource. Please try again.
|
||||
//
|
||||
// * Code: InternalError
|
||||
//
|
||||
// *
|
||||
// Cause: The service was unable to apply the provided tag to the object.
|
||||
//
|
||||
// Related
|
||||
// Resources
|
||||
//
|
||||
// * GetObjectTagging
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectTagging.html)
|
||||
//
|
||||
// *
|
||||
// DeleteObjectTagging
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObjectTagging.html)
|
||||
func (c *Client) PutObjectTagging(ctx context.Context, params *PutObjectTaggingInput, optFns ...func(*Options)) (*PutObjectTaggingOutput, error) {
|
||||
if params == nil {
|
||||
params = &PutObjectTaggingInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "PutObjectTagging", params, optFns, c.addOperationPutObjectTaggingMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*PutObjectTaggingOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type PutObjectTaggingInput struct {
|
||||
|
||||
// The bucket name containing the object. When using this action with an access
|
||||
// point, you must direct requests to the access point hostname. The access point
|
||||
// hostname takes the form
|
||||
// AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this
|
||||
// action with an access point through the Amazon Web Services SDKs, you provide
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see Using access points
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide. When using this action with Amazon S3 on Outposts,
|
||||
// you must direct requests to the S3 on Outposts hostname. The S3 on Outposts
|
||||
// hostname takes the form
|
||||
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When using
|
||||
// this action using S3 on Outposts through the Amazon Web Services SDKs, you
|
||||
// provide the Outposts bucket ARN in place of the bucket name. For more
|
||||
// information about S3 on Outposts ARNs, see Using S3 on Outposts
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) in the
|
||||
// Amazon S3 User Guide.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// Name of the object key.
|
||||
//
|
||||
// This member is required.
|
||||
Key *string
|
||||
|
||||
// Container for the TagSet and Tag elements
|
||||
//
|
||||
// This member is required.
|
||||
Tagging *types.Tagging
|
||||
|
||||
// The MD5 hash for the request body. For requests made using the Amazon Web
|
||||
// Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is
|
||||
// calculated automatically.
|
||||
ContentMD5 *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
// Confirms that the requester knows that they will be charged for the request.
|
||||
// Bucket owners need not specify this parameter in their requests. For information
|
||||
// about downloading objects from requester pays buckets, see Downloading Objects
|
||||
// in Requestor Pays Buckets
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
RequestPayer types.RequestPayer
|
||||
|
||||
// The versionId of the object that the tag-set will be added to.
|
||||
VersionId *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type PutObjectTaggingOutput struct {
|
||||
|
||||
// The versionId of the object the tag-set was added to.
|
||||
VersionId *string
|
||||
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationPutObjectTaggingMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpPutObjectTagging{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpPutObjectTagging{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpPutObjectTaggingValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opPutObjectTagging(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addPutObjectTaggingUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddContentChecksumMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opPutObjectTagging(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "PutObjectTagging",
|
||||
}
|
||||
}
|
||||
|
||||
// getPutObjectTaggingBucketMember returns a pointer to string denoting a provided
|
||||
// bucket member valueand a boolean indicating if the input has a modeled bucket
|
||||
// name,
|
||||
func getPutObjectTaggingBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*PutObjectTaggingInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addPutObjectTaggingUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getPutObjectTaggingBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
208
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutPublicAccessBlock.go
generated
vendored
Normal file
208
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutPublicAccessBlock.go
generated
vendored
Normal file
@@ -0,0 +1,208 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Creates or modifies the PublicAccessBlock configuration for an Amazon S3 bucket.
|
||||
// To use this operation, you must have the s3:PutBucketPublicAccessBlock
|
||||
// permission. For more information about Amazon S3 permissions, see Specifying
|
||||
// Permissions in a Policy
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html).
|
||||
// When Amazon S3 evaluates the PublicAccessBlock configuration for a bucket or an
|
||||
// object, it checks the PublicAccessBlock configuration for both the bucket (or
|
||||
// the bucket that contains the object) and the bucket owner's account. If the
|
||||
// PublicAccessBlock configurations are different between the bucket and the
|
||||
// account, Amazon S3 uses the most restrictive combination of the bucket-level and
|
||||
// account-level settings. For more information about when Amazon S3 considers a
|
||||
// bucket or an 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).
|
||||
// Related Resources
|
||||
//
|
||||
// * GetPublicAccessBlock
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetPublicAccessBlock.html)
|
||||
//
|
||||
// *
|
||||
// DeletePublicAccessBlock
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeletePublicAccessBlock.html)
|
||||
//
|
||||
// *
|
||||
// GetBucketPolicyStatus
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketPolicyStatus.html)
|
||||
//
|
||||
// *
|
||||
// Using Amazon S3 Block Public Access
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html)
|
||||
func (c *Client) PutPublicAccessBlock(ctx context.Context, params *PutPublicAccessBlockInput, optFns ...func(*Options)) (*PutPublicAccessBlockOutput, error) {
|
||||
if params == nil {
|
||||
params = &PutPublicAccessBlockInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "PutPublicAccessBlock", params, optFns, c.addOperationPutPublicAccessBlockMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*PutPublicAccessBlockOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type PutPublicAccessBlockInput struct {
|
||||
|
||||
// The name of the Amazon S3 bucket whose PublicAccessBlock configuration you want
|
||||
// to set.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// The PublicAccessBlock configuration that you want to apply to this Amazon S3
|
||||
// bucket. 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 member is required.
|
||||
PublicAccessBlockConfiguration *types.PublicAccessBlockConfiguration
|
||||
|
||||
// The MD5 hash of the PutPublicAccessBlock request body. For requests made using
|
||||
// the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services
|
||||
// SDKs, this field is calculated automatically.
|
||||
ContentMD5 *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type PutPublicAccessBlockOutput struct {
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationPutPublicAccessBlockMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpPutPublicAccessBlock{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpPutPublicAccessBlock{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpPutPublicAccessBlockValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opPutPublicAccessBlock(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addPutPublicAccessBlockUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddContentChecksumMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opPutPublicAccessBlock(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "PutPublicAccessBlock",
|
||||
}
|
||||
}
|
||||
|
||||
// getPutPublicAccessBlockBucketMember returns a pointer to string denoting a
|
||||
// provided bucket member valueand a boolean indicating if the input has a modeled
|
||||
// bucket name,
|
||||
func getPutPublicAccessBlockBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*PutPublicAccessBlockInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addPutPublicAccessBlockUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getPutPublicAccessBlockBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
422
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_RestoreObject.go
generated
vendored
Normal file
422
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_RestoreObject.go
generated
vendored
Normal file
@@ -0,0 +1,422 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// Restores an archived copy of an object back into Amazon S3 This action is not
|
||||
// supported by Amazon S3 on Outposts. This action performs the following types of
|
||||
// requests:
|
||||
//
|
||||
// * select - Perform a select query on an archived object
|
||||
//
|
||||
// * restore an
|
||||
// archive - Restore an archived object
|
||||
//
|
||||
// To use this operation, you must have
|
||||
// permissions to perform the s3:RestoreObject action. The 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)
|
||||
// in the Amazon S3 User Guide. Querying Archives with Select Requests You use a
|
||||
// select type of request to perform SQL queries on archived objects. The archived
|
||||
// objects that are being queried by the select request must be formatted as
|
||||
// uncompressed comma-separated values (CSV) files. You can run queries and custom
|
||||
// analytics on your archived data without having to restore your data to a hotter
|
||||
// Amazon S3 tier. For an overview about select requests, see Querying Archived
|
||||
// Objects
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/querying-glacier-archives.html)
|
||||
// in the Amazon S3 User Guide. When making a select request, do the following:
|
||||
//
|
||||
// *
|
||||
// Define an output location for the select query's output. This must be an Amazon
|
||||
// S3 bucket in the same Amazon Web Services Region as the bucket that contains the
|
||||
// archive object that is being queried. The Amazon Web Services account that
|
||||
// initiates the job must have permissions to write to the S3 bucket. You can
|
||||
// specify the storage class and encryption for the output objects stored in the
|
||||
// bucket. For more information about output, see Querying Archived Objects
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/querying-glacier-archives.html)
|
||||
// in the Amazon S3 User Guide. For more information about the S3 structure in the
|
||||
// request body, see the following:
|
||||
//
|
||||
// * PutObject
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html)
|
||||
//
|
||||
// * Managing
|
||||
// Access with ACLs
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/S3_ACLs_UsingACLs.html) in the
|
||||
// Amazon S3 User Guide
|
||||
//
|
||||
// * Protecting Data Using Server-Side Encryption
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html) in
|
||||
// the Amazon S3 User Guide
|
||||
//
|
||||
// * Define the SQL expression for the SELECT type of
|
||||
// restoration for your query in the request body's SelectParameters structure. You
|
||||
// can use expressions like the following examples.
|
||||
//
|
||||
// * The following expression
|
||||
// returns all records from the specified object. SELECT * FROM Object
|
||||
//
|
||||
// * Assuming
|
||||
// that you are not using any headers for data stored in the object, you can
|
||||
// specify columns with positional headers. SELECT s._1, s._2 FROM Object s WHERE
|
||||
// s._3 > 100
|
||||
//
|
||||
// * If you have headers and you set the fileHeaderInfo in the CSV
|
||||
// structure in the request body to USE, you can specify headers in the query. (If
|
||||
// you set the fileHeaderInfo field to IGNORE, the first row is skipped for the
|
||||
// query.) You cannot mix ordinal positions with header column names. SELECT s.Id,
|
||||
// s.FirstName, s.SSN FROM S3Object s
|
||||
//
|
||||
// For more information about using SQL with S3
|
||||
// Glacier Select restore, see SQL Reference for Amazon S3 Select and S3 Glacier
|
||||
// Select
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-glacier-select-sql-reference.html)
|
||||
// in the Amazon S3 User Guide. When making a select request, you can also do the
|
||||
// following:
|
||||
//
|
||||
// * To expedite your queries, specify the Expedited tier. For more
|
||||
// information about tiers, see "Restoring Archives," later in this topic.
|
||||
//
|
||||
// *
|
||||
// Specify details about the data serialization format of both the input object
|
||||
// that is being queried and the serialization of the CSV-encoded query
|
||||
// results.
|
||||
//
|
||||
// The following are additional important facts about the select
|
||||
// feature:
|
||||
//
|
||||
// * The output results are new Amazon S3 objects. Unlike archive
|
||||
// retrievals, they are stored until explicitly deleted-manually or through a
|
||||
// lifecycle policy.
|
||||
//
|
||||
// * You can issue more than one select request on the same
|
||||
// Amazon S3 object. Amazon S3 doesn't deduplicate requests, so avoid issuing
|
||||
// duplicate requests.
|
||||
//
|
||||
// * Amazon S3 accepts a select request even if the object has
|
||||
// already been restored. A select request doesn’t return error response
|
||||
// 409.
|
||||
//
|
||||
// Restoring objects Objects that you archive to the S3 Glacier or S3 Glacier
|
||||
// Deep Archive storage class, and S3 Intelligent-Tiering Archive or S3
|
||||
// Intelligent-Tiering Deep Archive tiers are not accessible in real time. For
|
||||
// objects in Archive Access or Deep Archive Access tiers you must first initiate a
|
||||
// restore request, and then wait until the object is moved into the Frequent
|
||||
// Access tier. For objects in S3 Glacier or S3 Glacier Deep Archive storage
|
||||
// classes you must first initiate a restore request, and then wait until a
|
||||
// temporary copy of the object is available. To access an archived object, you
|
||||
// must restore the object for the duration (number of days) that you specify. To
|
||||
// restore a specific object version, you can provide a version ID. If you don't
|
||||
// provide a version ID, Amazon S3 restores the current version. When restoring an
|
||||
// archived object (or using a select request), you can specify one of the
|
||||
// following data access tier options in the Tier element of the request body:
|
||||
//
|
||||
// *
|
||||
// Expedited - Expedited retrievals allow you to quickly access your data stored in
|
||||
// the S3 Glacier storage class or S3 Intelligent-Tiering Archive tier when
|
||||
// occasional urgent requests for a subset of archives are required. For all but
|
||||
// the largest archived objects (250 MB+), data accessed using Expedited retrievals
|
||||
// is typically made available within 1–5 minutes. Provisioned capacity ensures
|
||||
// that retrieval capacity for Expedited retrievals is available when you need it.
|
||||
// Expedited retrievals and provisioned capacity are not available for objects
|
||||
// stored in the S3 Glacier Deep Archive storage class or S3 Intelligent-Tiering
|
||||
// Deep Archive tier.
|
||||
//
|
||||
// * Standard - Standard retrievals allow you to access any of
|
||||
// your archived objects within several hours. This is the default option for
|
||||
// retrieval requests that do not specify the retrieval option. Standard retrievals
|
||||
// typically finish within 3–5 hours for objects stored in the S3 Glacier storage
|
||||
// class or S3 Intelligent-Tiering Archive tier. They typically finish within 12
|
||||
// hours for objects stored in the S3 Glacier Deep Archive storage class or S3
|
||||
// Intelligent-Tiering Deep Archive tier. Standard retrievals are free for objects
|
||||
// stored in S3 Intelligent-Tiering.
|
||||
//
|
||||
// * Bulk - Bulk retrievals are the lowest-cost
|
||||
// retrieval option in S3 Glacier, enabling you to retrieve large amounts, even
|
||||
// petabytes, of data inexpensively. Bulk retrievals typically finish within 5–12
|
||||
// hours for objects stored in the S3 Glacier storage class or S3
|
||||
// Intelligent-Tiering Archive tier. They typically finish within 48 hours for
|
||||
// objects stored in the S3 Glacier Deep Archive storage class or S3
|
||||
// Intelligent-Tiering Deep Archive tier. Bulk retrievals are free for objects
|
||||
// stored in S3 Intelligent-Tiering.
|
||||
//
|
||||
// For more information about archive retrieval
|
||||
// options and provisioned capacity for Expedited data access, see Restoring
|
||||
// Archived Objects
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/restoring-objects.html) in the
|
||||
// Amazon S3 User Guide. You can use Amazon S3 restore speed upgrade to change the
|
||||
// restore speed to a faster speed while it is in progress. For more information,
|
||||
// see Upgrading the speed of an in-progress restore
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/restoring-objects.html#restoring-objects-upgrade-tier.title.html)
|
||||
// in the Amazon S3 User Guide. To get the status of object restoration, you can
|
||||
// send a HEAD request. Operations return the x-amz-restore header, which provides
|
||||
// information about the restoration status, in the response. You can use Amazon S3
|
||||
// event notifications to notify you when a restore is initiated or completed. For
|
||||
// more information, see Configuring Amazon S3 Event Notifications
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html) in the
|
||||
// Amazon S3 User Guide. After restoring an archived object, you can update the
|
||||
// restoration period by reissuing the request with a new period. Amazon S3 updates
|
||||
// the restoration period relative to the current time and charges only for the
|
||||
// request-there are no data transfer charges. You cannot update the restoration
|
||||
// period when Amazon S3 is actively processing your current restore request for
|
||||
// the object. If your bucket has a lifecycle configuration with a rule that
|
||||
// includes an expiration action, the object expiration overrides the life span
|
||||
// that you specify in a restore request. For example, if you restore an object
|
||||
// copy for 10 days, but the object is scheduled to expire in 3 days, Amazon S3
|
||||
// deletes the object in 3 days. For more information about lifecycle
|
||||
// configuration, see PutBucketLifecycleConfiguration
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html)
|
||||
// and Object Lifecycle Management
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html) in
|
||||
// Amazon S3 User Guide. Responses A successful action returns either the 200 OK or
|
||||
// 202 Accepted status code.
|
||||
//
|
||||
// * If the object is not previously restored, then
|
||||
// Amazon S3 returns 202 Accepted in the response.
|
||||
//
|
||||
// * If the object is previously
|
||||
// restored, Amazon S3 returns 200 OK in the response.
|
||||
//
|
||||
// Special Errors
|
||||
//
|
||||
// * Code:
|
||||
// RestoreAlreadyInProgress
|
||||
//
|
||||
// * Cause: Object restore is already in progress. (This
|
||||
// error does not apply to SELECT type requests.)
|
||||
//
|
||||
// * HTTP Status Code: 409
|
||||
// Conflict
|
||||
//
|
||||
// * SOAP Fault Code Prefix: Client
|
||||
//
|
||||
// * Code:
|
||||
// GlacierExpeditedRetrievalNotAvailable
|
||||
//
|
||||
// * Cause: expedited retrievals are
|
||||
// currently not available. Try again later. (Returned if there is insufficient
|
||||
// capacity to process the Expedited request. This error applies only to Expedited
|
||||
// retrievals and not to S3 Standard or Bulk retrievals.)
|
||||
//
|
||||
// * HTTP Status Code:
|
||||
// 503
|
||||
//
|
||||
// * SOAP Fault Code Prefix: N/A
|
||||
//
|
||||
// Related Resources
|
||||
//
|
||||
// *
|
||||
// PutBucketLifecycleConfiguration
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html)
|
||||
//
|
||||
// *
|
||||
// GetBucketNotificationConfiguration
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketNotificationConfiguration.html)
|
||||
//
|
||||
// *
|
||||
// SQL Reference for Amazon S3 Select and S3 Glacier Select
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-glacier-select-sql-reference.html)
|
||||
// in the Amazon S3 User Guide
|
||||
func (c *Client) RestoreObject(ctx context.Context, params *RestoreObjectInput, optFns ...func(*Options)) (*RestoreObjectOutput, error) {
|
||||
if params == nil {
|
||||
params = &RestoreObjectInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "RestoreObject", params, optFns, c.addOperationRestoreObjectMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*RestoreObjectOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type RestoreObjectInput struct {
|
||||
|
||||
// The bucket name containing the object to restore. When using this action with an
|
||||
// access point, you must direct requests to the access point hostname. The access
|
||||
// point hostname takes the form
|
||||
// AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this
|
||||
// action with an access point through the Amazon Web Services SDKs, you provide
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see Using access points
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide. When using this action with Amazon S3 on Outposts,
|
||||
// you must direct requests to the S3 on Outposts hostname. The S3 on Outposts
|
||||
// hostname takes the form
|
||||
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When using
|
||||
// this action using S3 on Outposts through the Amazon Web Services SDKs, you
|
||||
// provide the Outposts bucket ARN in place of the bucket name. For more
|
||||
// information about S3 on Outposts ARNs, see Using S3 on Outposts
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) in the
|
||||
// Amazon S3 User Guide.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// Object key for which the action was initiated.
|
||||
//
|
||||
// This member is required.
|
||||
Key *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
// Confirms that the requester knows that they will be charged for the request.
|
||||
// Bucket owners need not specify this parameter in their requests. For information
|
||||
// about downloading objects from requester pays buckets, see Downloading Objects
|
||||
// in Requestor Pays Buckets
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
RequestPayer types.RequestPayer
|
||||
|
||||
// Container for restore job parameters.
|
||||
RestoreRequest *types.RestoreRequest
|
||||
|
||||
// VersionId used to reference a specific version of the object.
|
||||
VersionId *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type RestoreObjectOutput struct {
|
||||
|
||||
// If present, indicates that the requester was successfully charged for the
|
||||
// request.
|
||||
RequestCharged types.RequestCharged
|
||||
|
||||
// Indicates the path in the provided S3 output location where Select results will
|
||||
// be restored to.
|
||||
RestoreOutputPath *string
|
||||
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationRestoreObjectMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpRestoreObject{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpRestoreObject{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpRestoreObjectValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opRestoreObject(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRestoreObjectUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opRestoreObject(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "RestoreObject",
|
||||
}
|
||||
}
|
||||
|
||||
// getRestoreObjectBucketMember returns a pointer to string denoting a provided
|
||||
// bucket member valueand a boolean indicating if the input has a modeled bucket
|
||||
// name,
|
||||
func getRestoreObjectBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*RestoreObjectInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addRestoreObjectUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getRestoreObjectBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
390
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_UploadPart.go
generated
vendored
Normal file
390
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_UploadPart.go
generated
vendored
Normal file
@@ -0,0 +1,390 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
awshttp "github.com/aws/aws-sdk-go-v2/aws/transport/http"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
"io"
|
||||
)
|
||||
|
||||
// Uploads a part in a multipart upload. In this operation, you provide part data
|
||||
// in your request. However, you have an option to specify your existing Amazon S3
|
||||
// object as a data source for the part you are uploading. To upload a part from an
|
||||
// existing object, you use the UploadPartCopy
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html)
|
||||
// operation. You must initiate a multipart upload (see CreateMultipartUpload
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html))
|
||||
// before you can upload any part. In response to your initiate request, Amazon S3
|
||||
// returns an upload ID, a unique identifier, that you must include in your upload
|
||||
// part request. Part numbers can be any number from 1 to 10,000, inclusive. A part
|
||||
// number uniquely identifies a part and also defines its position within the
|
||||
// object being created. If you upload a new part using the same part number that
|
||||
// was used with a previous part, the previously uploaded part is overwritten. Each
|
||||
// part must be at least 5 MB in size, except the last part. There is no size limit
|
||||
// on the last part of your multipart upload. To ensure that data is not corrupted
|
||||
// when traversing the network, specify the Content-MD5 header in the upload part
|
||||
// request. Amazon S3 checks the part data against the provided MD5 value. If they
|
||||
// do not match, Amazon S3 returns an error. If the upload request is signed with
|
||||
// Signature Version 4, then Amazon Web Services S3 uses the x-amz-content-sha256
|
||||
// header as a checksum instead of Content-MD5. For more information see
|
||||
// Authenticating Requests: Using the Authorization Header (Amazon Web Services
|
||||
// Signature Version 4)
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/sigv4-auth-using-authorization-header.html).
|
||||
// Note: After you initiate multipart upload and upload one or more parts, you must
|
||||
// either complete or abort multipart upload in order to stop getting charged for
|
||||
// storage of the uploaded parts. Only after you either complete or abort multipart
|
||||
// upload, Amazon S3 frees up the parts storage and stops charging you for the
|
||||
// parts storage. For more information on multipart uploads, go to Multipart Upload
|
||||
// Overview (https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html) in
|
||||
// the Amazon S3 User Guide . For information on the permissions required to use
|
||||
// the multipart upload API, go to Multipart Upload and Permissions
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html) in the
|
||||
// Amazon S3 User Guide. You can optionally request server-side encryption where
|
||||
// Amazon S3 encrypts your data as it writes it to disks in its data centers and
|
||||
// decrypts it for you when you access it. You have the option of providing your
|
||||
// own encryption key, or you can use the Amazon Web Services managed encryption
|
||||
// keys. If you choose to provide your own encryption key, the request headers you
|
||||
// provide in the request must match the headers you used in the request to
|
||||
// initiate the upload by using CreateMultipartUpload
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html).
|
||||
// For more information, go to Using Server-Side Encryption
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingServerSideEncryption.html)
|
||||
// in the Amazon S3 User Guide. Server-side encryption is supported by the S3
|
||||
// Multipart Upload actions. Unless you are using a customer-provided encryption
|
||||
// key, you don't need to specify the encryption parameters in each UploadPart
|
||||
// request. Instead, you only need to specify the server-side encryption parameters
|
||||
// in the initial Initiate Multipart request. For more information, see
|
||||
// CreateMultipartUpload
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html).
|
||||
// If you requested server-side encryption using a customer-provided encryption key
|
||||
// in your initiate multipart upload request, you must provide identical encryption
|
||||
// information in each part upload using the following headers.
|
||||
//
|
||||
// *
|
||||
// x-amz-server-side-encryption-customer-algorithm
|
||||
//
|
||||
// *
|
||||
// x-amz-server-side-encryption-customer-key
|
||||
//
|
||||
// *
|
||||
// x-amz-server-side-encryption-customer-key-MD5
|
||||
//
|
||||
// Special Errors
|
||||
//
|
||||
// * Code:
|
||||
// NoSuchUpload
|
||||
//
|
||||
// * Cause: The specified multipart upload does not exist. The upload
|
||||
// ID might be invalid, or the multipart upload might have been aborted or
|
||||
// completed.
|
||||
//
|
||||
// * HTTP Status Code: 404 Not Found
|
||||
//
|
||||
// * SOAP Fault Code Prefix:
|
||||
// Client
|
||||
//
|
||||
// Related Resources
|
||||
//
|
||||
// * CreateMultipartUpload
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html)
|
||||
//
|
||||
// *
|
||||
// CompleteMultipartUpload
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CompleteMultipartUpload.html)
|
||||
//
|
||||
// *
|
||||
// AbortMultipartUpload
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_AbortMultipartUpload.html)
|
||||
//
|
||||
// *
|
||||
// ListParts
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListParts.html)
|
||||
//
|
||||
// *
|
||||
// ListMultipartUploads
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListMultipartUploads.html)
|
||||
func (c *Client) UploadPart(ctx context.Context, params *UploadPartInput, optFns ...func(*Options)) (*UploadPartOutput, error) {
|
||||
if params == nil {
|
||||
params = &UploadPartInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "UploadPart", params, optFns, c.addOperationUploadPartMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*UploadPartOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type UploadPartInput struct {
|
||||
|
||||
// The name of the bucket to which the multipart upload was initiated. When using
|
||||
// this action with an access point, you must direct requests to the access point
|
||||
// hostname. The access point hostname takes the form
|
||||
// AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this
|
||||
// action with an access point through the Amazon Web Services SDKs, you provide
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see Using access points
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide. When using this action with Amazon S3 on Outposts,
|
||||
// you must direct requests to the S3 on Outposts hostname. The S3 on Outposts
|
||||
// hostname takes the form
|
||||
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When using
|
||||
// this action using S3 on Outposts through the Amazon Web Services SDKs, you
|
||||
// provide the Outposts bucket ARN in place of the bucket name. For more
|
||||
// information about S3 on Outposts ARNs, see Using S3 on Outposts
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) in the
|
||||
// Amazon S3 User Guide.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// Object key for which the multipart upload was initiated.
|
||||
//
|
||||
// This member is required.
|
||||
Key *string
|
||||
|
||||
// Part number of part being uploaded. This is a positive integer between 1 and
|
||||
// 10,000.
|
||||
//
|
||||
// This member is required.
|
||||
PartNumber int32
|
||||
|
||||
// Upload ID identifying the multipart upload whose part is being uploaded.
|
||||
//
|
||||
// This member is required.
|
||||
UploadId *string
|
||||
|
||||
// Object data.
|
||||
Body io.Reader
|
||||
|
||||
// Size of the body in bytes. This parameter is useful when the size of the body
|
||||
// cannot be determined automatically.
|
||||
ContentLength int64
|
||||
|
||||
// The base64-encoded 128-bit MD5 digest of the part data. This parameter is
|
||||
// auto-populated when using the command from the CLI. This parameter is required
|
||||
// if object lock parameters are specified.
|
||||
ContentMD5 *string
|
||||
|
||||
// The account ID of the expected bucket owner. If the bucket is owned by a
|
||||
// different account, the request will fail with an HTTP 403 (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
// Confirms that the requester knows that they will be charged for the request.
|
||||
// Bucket owners need not specify this parameter in their requests. For information
|
||||
// about downloading objects from requester pays buckets, see Downloading Objects
|
||||
// in Requestor Pays Buckets
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
RequestPayer types.RequestPayer
|
||||
|
||||
// Specifies the algorithm to use to when encrypting the object (for example,
|
||||
// AES256).
|
||||
SSECustomerAlgorithm *string
|
||||
|
||||
// Specifies the customer-provided encryption key for Amazon S3 to use in
|
||||
// encrypting data. This value is used to store the object and then it is
|
||||
// discarded; Amazon S3 does not store the encryption key. The key must be
|
||||
// appropriate for use with the algorithm specified in the
|
||||
// x-amz-server-side-encryption-customer-algorithm header. This must be the same
|
||||
// encryption key specified in the initiate multipart upload request.
|
||||
SSECustomerKey *string
|
||||
|
||||
// Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321.
|
||||
// Amazon S3 uses this header for a message integrity check to ensure that the
|
||||
// encryption key was transmitted without error.
|
||||
SSECustomerKeyMD5 *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type UploadPartOutput struct {
|
||||
|
||||
// Indicates whether the multipart upload uses an S3 Bucket Key for server-side
|
||||
// encryption with Amazon Web Services KMS (SSE-KMS).
|
||||
BucketKeyEnabled bool
|
||||
|
||||
// Entity tag for the uploaded object.
|
||||
ETag *string
|
||||
|
||||
// If present, indicates that the requester was successfully charged for the
|
||||
// request.
|
||||
RequestCharged types.RequestCharged
|
||||
|
||||
// If server-side encryption with a customer-provided encryption key was requested,
|
||||
// the response will include this header confirming the encryption algorithm used.
|
||||
SSECustomerAlgorithm *string
|
||||
|
||||
// If server-side encryption with a customer-provided encryption key was requested,
|
||||
// the response will include this header to provide round-trip message integrity
|
||||
// verification of the customer-provided encryption key.
|
||||
SSECustomerKeyMD5 *string
|
||||
|
||||
// If present, specifies the ID of the Amazon Web Services Key Management Service
|
||||
// (Amazon Web Services KMS) symmetric customer managed key was used for the
|
||||
// object.
|
||||
SSEKMSKeyId *string
|
||||
|
||||
// The server-side encryption algorithm used when storing this object in Amazon S3
|
||||
// (for example, AES256, aws:kms).
|
||||
ServerSideEncryption types.ServerSideEncryption
|
||||
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationUploadPartMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpUploadPart{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpUploadPart{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpUploadPartValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opUploadPart(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addUploadPartUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opUploadPart(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "UploadPart",
|
||||
}
|
||||
}
|
||||
|
||||
// getUploadPartBucketMember returns a pointer to string denoting a provided bucket
|
||||
// member valueand a boolean indicating if the input has a modeled bucket name,
|
||||
func getUploadPartBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*UploadPartInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addUploadPartUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getUploadPartBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
|
||||
// PresignUploadPart is used to generate a presigned HTTP Request which contains
|
||||
// presigned URL, signed headers and HTTP method used.
|
||||
func (c *PresignClient) PresignUploadPart(ctx context.Context, params *UploadPartInput, optFns ...func(*PresignOptions)) (*v4.PresignedHTTPRequest, error) {
|
||||
if params == nil {
|
||||
params = &UploadPartInput{}
|
||||
}
|
||||
options := c.options.copy()
|
||||
for _, fn := range optFns {
|
||||
fn(&options)
|
||||
}
|
||||
clientOptFns := append(options.ClientOptions, withNopHTTPClientAPIOption)
|
||||
|
||||
result, _, err := c.client.invokeOperation(ctx, "UploadPart", params, clientOptFns,
|
||||
c.client.addOperationUploadPartMiddlewares,
|
||||
presignConverter(options).convertToPresignMiddleware,
|
||||
func(stack *middleware.Stack, options Options) error {
|
||||
return awshttp.RemoveContentTypeHeader(stack)
|
||||
},
|
||||
addUploadPartPayloadAsUnsigned,
|
||||
)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*v4.PresignedHTTPRequest)
|
||||
return out, nil
|
||||
}
|
||||
|
||||
func addUploadPartPayloadAsUnsigned(stack *middleware.Stack, options Options) error {
|
||||
v4.RemoveContentSHA256HeaderMiddleware(stack)
|
||||
v4.RemoveComputePayloadSHA256Middleware(stack)
|
||||
return v4.AddUnsignedPayloadMiddleware(stack)
|
||||
}
|
||||
437
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_UploadPartCopy.go
generated
vendored
Normal file
437
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_UploadPartCopy.go
generated
vendored
Normal file
@@ -0,0 +1,437 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
"time"
|
||||
)
|
||||
|
||||
// Uploads a part by copying data from an existing object as data source. You
|
||||
// specify the data source by adding the request header x-amz-copy-source in your
|
||||
// request and a byte range by adding the request header x-amz-copy-source-range in
|
||||
// your request. The minimum allowable part size for a multipart upload is 5 MB.
|
||||
// For more information about multipart upload limits, go to Quick Facts
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/qfacts.html) in the Amazon S3
|
||||
// User Guide. Instead of using an existing object as part data, you might use the
|
||||
// UploadPart (https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html)
|
||||
// action and provide data in your request. You must initiate a multipart upload
|
||||
// before you can upload any part. In response to your initiate request. Amazon S3
|
||||
// returns a unique identifier, the upload ID, that you must include in your upload
|
||||
// part request. For more information about using the UploadPartCopy operation, see
|
||||
// the following:
|
||||
//
|
||||
// * For conceptual information about multipart uploads, see
|
||||
// Uploading Objects Using Multipart Upload
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/uploadobjusingmpu.html) in the
|
||||
// Amazon S3 User Guide.
|
||||
//
|
||||
// * For information about permissions required to use the
|
||||
// multipart upload API, see Multipart Upload and Permissions
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html) in the
|
||||
// Amazon S3 User Guide.
|
||||
//
|
||||
// * For information about copying objects using a single
|
||||
// atomic action vs. the multipart upload, see Operations on Objects
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectOperations.html) in the
|
||||
// Amazon S3 User Guide.
|
||||
//
|
||||
// * For information about using server-side encryption with
|
||||
// customer-provided encryption keys with the UploadPartCopy operation, see
|
||||
// CopyObject (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html)
|
||||
// and UploadPart
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html).
|
||||
//
|
||||
// Note the
|
||||
// following additional considerations about the request headers
|
||||
// x-amz-copy-source-if-match, x-amz-copy-source-if-none-match,
|
||||
// x-amz-copy-source-if-unmodified-since, and
|
||||
// x-amz-copy-source-if-modified-since:
|
||||
//
|
||||
// * Consideration 1 - If both of the
|
||||
// x-amz-copy-source-if-match and x-amz-copy-source-if-unmodified-since headers are
|
||||
// present in the request as follows: x-amz-copy-source-if-match condition
|
||||
// evaluates to true, and; x-amz-copy-source-if-unmodified-since condition
|
||||
// evaluates to false; Amazon S3 returns 200 OK and copies the data.
|
||||
//
|
||||
// *
|
||||
// Consideration 2 - If both of the x-amz-copy-source-if-none-match and
|
||||
// x-amz-copy-source-if-modified-since headers are present in the request as
|
||||
// follows: x-amz-copy-source-if-none-match condition evaluates to false, and;
|
||||
// x-amz-copy-source-if-modified-since condition evaluates to true; Amazon S3
|
||||
// returns 412 Precondition Failed response code.
|
||||
//
|
||||
// Versioning If your bucket has
|
||||
// versioning enabled, you could have multiple versions of the same object. By
|
||||
// default, x-amz-copy-source identifies the current version of the object to copy.
|
||||
// If the current version is a delete marker and you don't specify a versionId in
|
||||
// the x-amz-copy-source, Amazon S3 returns a 404 error, because the object does
|
||||
// not exist. If you specify versionId in the x-amz-copy-source and the versionId
|
||||
// is a delete marker, Amazon S3 returns an HTTP 400 error, because you are not
|
||||
// allowed to specify a delete marker as a version for the x-amz-copy-source. You
|
||||
// can optionally specify a specific version of the source object to copy by adding
|
||||
// the versionId subresource as shown in the following example: x-amz-copy-source:
|
||||
// /bucket/object?versionId=version id Special Errors
|
||||
//
|
||||
// * Code: NoSuchUpload
|
||||
//
|
||||
// *
|
||||
// Cause: The specified multipart upload does not exist. The upload ID might be
|
||||
// invalid, or the multipart upload might have been aborted or completed.
|
||||
//
|
||||
// * HTTP
|
||||
// Status Code: 404 Not Found
|
||||
//
|
||||
// * Code: InvalidRequest
|
||||
//
|
||||
// * Cause: The specified copy
|
||||
// source is not supported as a byte-range copy source.
|
||||
//
|
||||
// * HTTP Status Code: 400
|
||||
// Bad Request
|
||||
//
|
||||
// Related Resources
|
||||
//
|
||||
// * CreateMultipartUpload
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html)
|
||||
//
|
||||
// *
|
||||
// UploadPart
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html)
|
||||
//
|
||||
// *
|
||||
// CompleteMultipartUpload
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CompleteMultipartUpload.html)
|
||||
//
|
||||
// *
|
||||
// AbortMultipartUpload
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_AbortMultipartUpload.html)
|
||||
//
|
||||
// *
|
||||
// ListParts
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListParts.html)
|
||||
//
|
||||
// *
|
||||
// ListMultipartUploads
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListMultipartUploads.html)
|
||||
func (c *Client) UploadPartCopy(ctx context.Context, params *UploadPartCopyInput, optFns ...func(*Options)) (*UploadPartCopyOutput, error) {
|
||||
if params == nil {
|
||||
params = &UploadPartCopyInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "UploadPartCopy", params, optFns, c.addOperationUploadPartCopyMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*UploadPartCopyOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type UploadPartCopyInput struct {
|
||||
|
||||
// The bucket name. When using this action with an access point, you must direct
|
||||
// requests to the access point hostname. The access point hostname takes the form
|
||||
// AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this
|
||||
// action with an access point through the Amazon Web Services SDKs, you provide
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see Using access points
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide. When using this action with Amazon S3 on Outposts,
|
||||
// you must direct requests to the S3 on Outposts hostname. The S3 on Outposts
|
||||
// hostname takes the form
|
||||
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When using
|
||||
// this action using S3 on Outposts through the Amazon Web Services SDKs, you
|
||||
// provide the Outposts bucket ARN in place of the bucket name. For more
|
||||
// information about S3 on Outposts ARNs, see Using S3 on Outposts
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) in the
|
||||
// Amazon S3 User Guide.
|
||||
//
|
||||
// This member is required.
|
||||
Bucket *string
|
||||
|
||||
// Specifies the source object for the copy operation. You specify the value in one
|
||||
// of two formats, depending on whether you want to access the source object
|
||||
// through an access point
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-points.html):
|
||||
//
|
||||
// *
|
||||
// For objects not accessed through an access point, specify the name of the source
|
||||
// bucket and key of the source object, separated by a slash (/). For example, to
|
||||
// copy the object reports/january.pdf from the bucket awsexamplebucket, use
|
||||
// awsexamplebucket/reports/january.pdf. The value must be URL encoded.
|
||||
//
|
||||
// * For
|
||||
// objects accessed through access points, specify the Amazon Resource Name (ARN)
|
||||
// of the object as accessed through the access point, in the format
|
||||
// arn:aws:s3:::accesspoint//object/. For example, to copy the object
|
||||
// reports/january.pdf through access point my-access-point owned by account
|
||||
// 123456789012 in Region us-west-2, use the URL encoding of
|
||||
// arn:aws:s3:us-west-2:123456789012:accesspoint/my-access-point/object/reports/january.pdf.
|
||||
// The value must be URL encoded. Amazon S3 supports copy operations using access
|
||||
// points only when the source and destination buckets are in the same Amazon Web
|
||||
// Services Region. Alternatively, for objects accessed through Amazon S3 on
|
||||
// Outposts, specify the ARN of the object as accessed in the format
|
||||
// arn:aws:s3-outposts:::outpost//object/. For example, to copy the object
|
||||
// reports/january.pdf 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/object/reports/january.pdf.
|
||||
// The value must be URL encoded.
|
||||
//
|
||||
// To copy a specific version of an object, append
|
||||
// ?versionId= to the value (for example,
|
||||
// awsexamplebucket/reports/january.pdf?versionId=QUpfdndhfd8438MNFDN93jdnJFkdmqnh893).
|
||||
// If you don't specify a version ID, Amazon S3 copies the latest version of the
|
||||
// source object.
|
||||
//
|
||||
// This member is required.
|
||||
CopySource *string
|
||||
|
||||
// Object key for which the multipart upload was initiated.
|
||||
//
|
||||
// This member is required.
|
||||
Key *string
|
||||
|
||||
// Part number of part being copied. This is a positive integer between 1 and
|
||||
// 10,000.
|
||||
//
|
||||
// This member is required.
|
||||
PartNumber int32
|
||||
|
||||
// Upload ID identifying the multipart upload whose part is being copied.
|
||||
//
|
||||
// This member is required.
|
||||
UploadId *string
|
||||
|
||||
// Copies the object if its entity tag (ETag) matches the specified tag.
|
||||
CopySourceIfMatch *string
|
||||
|
||||
// Copies the object if it has been modified since the specified time.
|
||||
CopySourceIfModifiedSince *time.Time
|
||||
|
||||
// Copies the object if its entity tag (ETag) is different than the specified ETag.
|
||||
CopySourceIfNoneMatch *string
|
||||
|
||||
// Copies the object if it hasn't been modified since the specified time.
|
||||
CopySourceIfUnmodifiedSince *time.Time
|
||||
|
||||
// The range of bytes to copy from the source object. The range value must use the
|
||||
// form bytes=first-last, where the first and last are the zero-based byte offsets
|
||||
// to copy. For example, bytes=0-9 indicates that you want to copy the first 10
|
||||
// bytes of the source. You can copy a range only if the source object is greater
|
||||
// than 5 MB.
|
||||
CopySourceRange *string
|
||||
|
||||
// Specifies the algorithm to use when decrypting the source object (for example,
|
||||
// AES256).
|
||||
CopySourceSSECustomerAlgorithm *string
|
||||
|
||||
// Specifies the customer-provided encryption key for Amazon S3 to use to decrypt
|
||||
// the source object. The encryption key provided in this header must be one that
|
||||
// was used when the source object was created.
|
||||
CopySourceSSECustomerKey *string
|
||||
|
||||
// Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321.
|
||||
// Amazon S3 uses this header for a message integrity check to ensure that the
|
||||
// encryption key was transmitted without error.
|
||||
CopySourceSSECustomerKeyMD5 *string
|
||||
|
||||
// The account ID of the expected destination bucket owner. If the destination
|
||||
// bucket is owned by a different account, the request will fail with an HTTP 403
|
||||
// (Access Denied) error.
|
||||
ExpectedBucketOwner *string
|
||||
|
||||
// The account ID of the expected source bucket owner. If the source bucket is
|
||||
// owned by a different account, the request will fail with an HTTP 403 (Access
|
||||
// Denied) error.
|
||||
ExpectedSourceBucketOwner *string
|
||||
|
||||
// Confirms that the requester knows that they will be charged for the request.
|
||||
// Bucket owners need not specify this parameter in their requests. For information
|
||||
// about downloading objects from requester pays buckets, see Downloading Objects
|
||||
// in Requestor Pays Buckets
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
RequestPayer types.RequestPayer
|
||||
|
||||
// Specifies the algorithm to use to when encrypting the object (for example,
|
||||
// AES256).
|
||||
SSECustomerAlgorithm *string
|
||||
|
||||
// Specifies the customer-provided encryption key for Amazon S3 to use in
|
||||
// encrypting data. This value is used to store the object and then it is
|
||||
// discarded; Amazon S3 does not store the encryption key. The key must be
|
||||
// appropriate for use with the algorithm specified in the
|
||||
// x-amz-server-side-encryption-customer-algorithm header. This must be the same
|
||||
// encryption key specified in the initiate multipart upload request.
|
||||
SSECustomerKey *string
|
||||
|
||||
// Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321.
|
||||
// Amazon S3 uses this header for a message integrity check to ensure that the
|
||||
// encryption key was transmitted without error.
|
||||
SSECustomerKeyMD5 *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type UploadPartCopyOutput struct {
|
||||
|
||||
// Indicates whether the multipart upload uses an S3 Bucket Key for server-side
|
||||
// encryption with Amazon Web Services KMS (SSE-KMS).
|
||||
BucketKeyEnabled bool
|
||||
|
||||
// Container for all response elements.
|
||||
CopyPartResult *types.CopyPartResult
|
||||
|
||||
// The version of the source object that was copied, if you have enabled versioning
|
||||
// on the source bucket.
|
||||
CopySourceVersionId *string
|
||||
|
||||
// If present, indicates that the requester was successfully charged for the
|
||||
// request.
|
||||
RequestCharged types.RequestCharged
|
||||
|
||||
// If server-side encryption with a customer-provided encryption key was requested,
|
||||
// the response will include this header confirming the encryption algorithm used.
|
||||
SSECustomerAlgorithm *string
|
||||
|
||||
// If server-side encryption with a customer-provided encryption key was requested,
|
||||
// the response will include this header to provide round-trip message integrity
|
||||
// verification of the customer-provided encryption key.
|
||||
SSECustomerKeyMD5 *string
|
||||
|
||||
// If present, specifies the ID of the Amazon Web Services Key Management Service
|
||||
// (Amazon Web Services KMS) symmetric customer managed key that was used for the
|
||||
// object.
|
||||
SSEKMSKeyId *string
|
||||
|
||||
// The server-side encryption algorithm used when storing this object in Amazon S3
|
||||
// (for example, AES256, aws:kms).
|
||||
ServerSideEncryption types.ServerSideEncryption
|
||||
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationUploadPartCopyMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpUploadPartCopy{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpUploadPartCopy{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpUploadPartCopyValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opUploadPartCopy(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addUploadPartCopyUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = s3cust.HandleResponseErrorWith200Status(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opUploadPartCopy(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "UploadPartCopy",
|
||||
}
|
||||
}
|
||||
|
||||
// getUploadPartCopyBucketMember returns a pointer to string denoting a provided
|
||||
// bucket member valueand a boolean indicating if the input has a modeled bucket
|
||||
// name,
|
||||
func getUploadPartCopyBucketMember(input interface{}) (*string, bool) {
|
||||
in := input.(*UploadPartCopyInput)
|
||||
if in.Bucket == nil {
|
||||
return nil, false
|
||||
}
|
||||
return in.Bucket, true
|
||||
}
|
||||
func addUploadPartCopyUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: getUploadPartCopyBucketMember,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: false,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
403
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_WriteGetObjectResponse.go
generated
vendored
Normal file
403
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_WriteGetObjectResponse.go
generated
vendored
Normal file
@@ -0,0 +1,403 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
"fmt"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
s3cust "github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
smithy "github.com/aws/smithy-go"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
"io"
|
||||
"strings"
|
||||
"time"
|
||||
)
|
||||
|
||||
// Passes transformed objects to a GetObject operation when using Object Lambda
|
||||
// access points. For information about Object Lambda access points, 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. This operation supports metadata that can be
|
||||
// returned by GetObject
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html), in
|
||||
// addition to RequestRoute, RequestToken, StatusCode, ErrorCode, and ErrorMessage.
|
||||
// The GetObject response metadata is supported so that the WriteGetObjectResponse
|
||||
// caller, typically an Lambda function, can provide the same metadata when it
|
||||
// internally invokes GetObject. When WriteGetObjectResponse is called by a
|
||||
// customer-owned Lambda function, the metadata returned to the end user GetObject
|
||||
// call might differ from what Amazon S3 would normally return. You can include any
|
||||
// number of metadata headers. When including a metadata header, it should be
|
||||
// prefaced with x-amz-meta. For example, x-amz-meta-my-custom-header:
|
||||
// MyCustomValue. The primary use case for this is to forward GetObject metadata.
|
||||
// Amazon Web Services provides some prebuilt Lambda functions that you can use
|
||||
// with S3 Object Lambda to detect and redact personally identifiable information
|
||||
// (PII) and decompress S3 objects. These Lambda functions are available in the
|
||||
// Amazon Web Services Serverless Application Repository, and can be selected
|
||||
// through the Amazon Web Services Management Console when you create your Object
|
||||
// Lambda access point. Example 1: PII Access Control - This Lambda function uses
|
||||
// Amazon Comprehend, a natural language processing (NLP) service using machine
|
||||
// learning to find insights and relationships in text. It automatically detects
|
||||
// personally identifiable information (PII) such as names, addresses, dates,
|
||||
// credit card numbers, and social security numbers from documents in your Amazon
|
||||
// S3 bucket. Example 2: PII Redaction - This Lambda function uses Amazon
|
||||
// Comprehend, a natural language processing (NLP) service using machine learning
|
||||
// to find insights and relationships in text. It automatically redacts personally
|
||||
// identifiable information (PII) such as names, addresses, dates, credit card
|
||||
// numbers, and social security numbers from documents in your Amazon S3 bucket.
|
||||
// Example 3: Decompression - The Lambda function S3ObjectLambdaDecompression, is
|
||||
// equipped to decompress objects stored in S3 in one of six compressed file
|
||||
// formats including bzip2, gzip, snappy, zlib, zstandard and ZIP. For information
|
||||
// on how to view and use these functions, see Using Amazon Web Services built
|
||||
// Lambda functions
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/olap-examples.html) in
|
||||
// the Amazon S3 User Guide.
|
||||
func (c *Client) WriteGetObjectResponse(ctx context.Context, params *WriteGetObjectResponseInput, optFns ...func(*Options)) (*WriteGetObjectResponseOutput, error) {
|
||||
if params == nil {
|
||||
params = &WriteGetObjectResponseInput{}
|
||||
}
|
||||
|
||||
result, metadata, err := c.invokeOperation(ctx, "WriteGetObjectResponse", params, optFns, c.addOperationWriteGetObjectResponseMiddlewares)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := result.(*WriteGetObjectResponseOutput)
|
||||
out.ResultMetadata = metadata
|
||||
return out, nil
|
||||
}
|
||||
|
||||
type WriteGetObjectResponseInput struct {
|
||||
|
||||
// Route prefix to the HTTP URL generated.
|
||||
//
|
||||
// This member is required.
|
||||
RequestRoute *string
|
||||
|
||||
// A single use encrypted token that maps WriteGetObjectResponse to the end user
|
||||
// GetObject request.
|
||||
//
|
||||
// This member is required.
|
||||
RequestToken *string
|
||||
|
||||
// Indicates that a range of bytes was specified.
|
||||
AcceptRanges *string
|
||||
|
||||
// The object data.
|
||||
Body io.Reader
|
||||
|
||||
// Indicates whether the object stored in Amazon S3 uses an S3 bucket key for
|
||||
// server-side encryption with Amazon Web Services KMS (SSE-KMS).
|
||||
BucketKeyEnabled bool
|
||||
|
||||
// Specifies caching behavior along the request/reply chain.
|
||||
CacheControl *string
|
||||
|
||||
// Specifies presentational information for the object.
|
||||
ContentDisposition *string
|
||||
|
||||
// Specifies what content encodings have been applied to the object and thus what
|
||||
// decoding mechanisms must be applied to obtain the media-type referenced by the
|
||||
// Content-Type header field.
|
||||
ContentEncoding *string
|
||||
|
||||
// The language the content is in.
|
||||
ContentLanguage *string
|
||||
|
||||
// The size of the content body in bytes.
|
||||
ContentLength int64
|
||||
|
||||
// The portion of the object returned in the response.
|
||||
ContentRange *string
|
||||
|
||||
// A standard MIME type describing the format of the object data.
|
||||
ContentType *string
|
||||
|
||||
// Specifies whether an object stored in Amazon S3 is (true) or is not (false) a
|
||||
// delete marker.
|
||||
DeleteMarker bool
|
||||
|
||||
// An opaque identifier assigned by a web server to a specific version of a
|
||||
// resource found at a URL.
|
||||
ETag *string
|
||||
|
||||
// A string that uniquely identifies an error condition. Returned in the tag of
|
||||
// the error XML response for a corresponding GetObject call. Cannot be used with a
|
||||
// successful StatusCode header or when the transformed object is provided in the
|
||||
// body. All error codes from S3 are sentence-cased. Regex value is
|
||||
// "^[A-Z][a-zA-Z]+$".
|
||||
ErrorCode *string
|
||||
|
||||
// Contains a generic description of the error condition. Returned in the tag of
|
||||
// the error XML response for a corresponding GetObject call. Cannot be used with a
|
||||
// successful StatusCode header or when the transformed object is provided in body.
|
||||
ErrorMessage *string
|
||||
|
||||
// If object stored in Amazon S3 expiration is configured (see PUT Bucket
|
||||
// lifecycle) it includes expiry-date and rule-id key-value pairs providing object
|
||||
// expiration information. The value of the rule-id is URL encoded.
|
||||
Expiration *string
|
||||
|
||||
// The date and time at which the object is no longer cacheable.
|
||||
Expires *time.Time
|
||||
|
||||
// The date and time that the object was last modified.
|
||||
LastModified *time.Time
|
||||
|
||||
// A map of metadata to store with the object in S3.
|
||||
Metadata map[string]string
|
||||
|
||||
// Set to the number of metadata entries not returned in x-amz-meta headers. This
|
||||
// can happen if you create metadata using an API like SOAP that supports more
|
||||
// flexible metadata than the REST API. For example, using SOAP, you can create
|
||||
// metadata whose values are not legal HTTP headers.
|
||||
MissingMeta int32
|
||||
|
||||
// Indicates whether an object stored in Amazon S3 has an active legal hold.
|
||||
ObjectLockLegalHoldStatus types.ObjectLockLegalHoldStatus
|
||||
|
||||
// Indicates whether an object stored in Amazon S3 has Object Lock enabled. For
|
||||
// more information about S3 Object Lock, see Object Lock
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-lock.html).
|
||||
ObjectLockMode types.ObjectLockMode
|
||||
|
||||
// The date and time when Object Lock is configured to expire.
|
||||
ObjectLockRetainUntilDate *time.Time
|
||||
|
||||
// The count of parts this object has.
|
||||
PartsCount int32
|
||||
|
||||
// Indicates if request involves bucket that is either a source or destination in a
|
||||
// Replication rule. For more information about S3 Replication, see Replication
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/replication.html).
|
||||
ReplicationStatus types.ReplicationStatus
|
||||
|
||||
// If present, indicates that the requester was successfully charged for the
|
||||
// request.
|
||||
RequestCharged types.RequestCharged
|
||||
|
||||
// Provides information about object restoration operation and expiration time of
|
||||
// the restored object copy.
|
||||
Restore *string
|
||||
|
||||
// Encryption algorithm used if server-side encryption with a customer-provided
|
||||
// encryption key was specified for object stored in Amazon S3.
|
||||
SSECustomerAlgorithm *string
|
||||
|
||||
// 128-bit MD5 digest of customer-provided encryption key used in Amazon S3 to
|
||||
// encrypt data stored in S3. For more information, see Protecting data using
|
||||
// server-side encryption with customer-provided encryption keys (SSE-C)
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/ServerSideEncryptionCustomerKeys.html).
|
||||
SSECustomerKeyMD5 *string
|
||||
|
||||
// If present, specifies the ID of the Amazon Web Services Key Management Service
|
||||
// (Amazon Web Services KMS) symmetric customer managed key that was used for
|
||||
// stored in Amazon S3 object.
|
||||
SSEKMSKeyId *string
|
||||
|
||||
// The server-side encryption algorithm used when storing requested object in
|
||||
// Amazon S3 (for example, AES256, aws:kms).
|
||||
ServerSideEncryption types.ServerSideEncryption
|
||||
|
||||
// The integer status code for an HTTP response of a corresponding GetObject
|
||||
// request. Status Codes
|
||||
//
|
||||
// * 200 - OK
|
||||
//
|
||||
// * 206 - Partial Content
|
||||
//
|
||||
// * 304 - Not
|
||||
// Modified
|
||||
//
|
||||
// * 400 - Bad Request
|
||||
//
|
||||
// * 401 - Unauthorized
|
||||
//
|
||||
// * 403 - Forbidden
|
||||
//
|
||||
// * 404 -
|
||||
// Not Found
|
||||
//
|
||||
// * 405 - Method Not Allowed
|
||||
//
|
||||
// * 409 - Conflict
|
||||
//
|
||||
// * 411 - Length
|
||||
// Required
|
||||
//
|
||||
// * 412 - Precondition Failed
|
||||
//
|
||||
// * 416 - Range Not Satisfiable
|
||||
//
|
||||
// * 500 -
|
||||
// Internal Server Error
|
||||
//
|
||||
// * 503 - Service Unavailable
|
||||
StatusCode int32
|
||||
|
||||
// The class of storage used to store object in Amazon S3.
|
||||
StorageClass types.StorageClass
|
||||
|
||||
// The number of tags, if any, on the object.
|
||||
TagCount int32
|
||||
|
||||
// An ID used to reference a specific version of the object.
|
||||
VersionId *string
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
type WriteGetObjectResponseOutput struct {
|
||||
// Metadata pertaining to the operation's result.
|
||||
ResultMetadata middleware.Metadata
|
||||
|
||||
noSmithyDocumentSerde
|
||||
}
|
||||
|
||||
func (c *Client) addOperationWriteGetObjectResponseMiddlewares(stack *middleware.Stack, options Options) (err error) {
|
||||
err = stack.Serialize.Add(&awsRestxml_serializeOpWriteGetObjectResponse{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = stack.Deserialize.Add(&awsRestxml_deserializeOpWriteGetObjectResponse{}, middleware.After)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addSetLoggerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResolveEndpointMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddUnsignedPayloadMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = v4.AddContentSHA256HeaderMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRetryMiddlewares(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addClientUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = swapWithCustomHTTPSignerMiddleware(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addEndpointPrefix_opWriteGetObjectResponseMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpWriteGetObjectResponseValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opWriteGetObjectResponse(options.Region), middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addMetadataRetrieverMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addWriteGetObjectResponseUpdateEndpoint(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addResponseErrorMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = disableAcceptEncodingGzip(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addRequestResponseLogging(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
type endpointPrefix_opWriteGetObjectResponseMiddleware struct {
|
||||
}
|
||||
|
||||
func (*endpointPrefix_opWriteGetObjectResponseMiddleware) ID() string {
|
||||
return "EndpointHostPrefix"
|
||||
}
|
||||
|
||||
func (m *endpointPrefix_opWriteGetObjectResponseMiddleware) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
|
||||
out middleware.SerializeOutput, metadata middleware.Metadata, err error,
|
||||
) {
|
||||
if smithyhttp.GetHostnameImmutable(ctx) || smithyhttp.IsEndpointHostPrefixDisabled(ctx) {
|
||||
return next.HandleSerialize(ctx, in)
|
||||
}
|
||||
|
||||
req, ok := in.Request.(*smithyhttp.Request)
|
||||
if !ok {
|
||||
return out, metadata, fmt.Errorf("unknown transport type %T", in.Request)
|
||||
}
|
||||
|
||||
input, ok := in.Parameters.(*WriteGetObjectResponseInput)
|
||||
if !ok {
|
||||
return out, metadata, fmt.Errorf("unknown input type %T", in.Parameters)
|
||||
}
|
||||
|
||||
var prefix strings.Builder
|
||||
if input.RequestRoute == nil {
|
||||
return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("RequestRoute forms part of the endpoint host and so may not be nil")}
|
||||
} else if !smithyhttp.ValidHostLabel(*input.RequestRoute) {
|
||||
return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("RequestRoute forms part of the endpoint host and so must match \"[a-zA-Z0-9-]{1,63}\", but was \"%s\"", *input.RequestRoute)}
|
||||
} else {
|
||||
prefix.WriteString(*input.RequestRoute)
|
||||
}
|
||||
prefix.WriteString(".")
|
||||
req.URL.Host = prefix.String() + req.URL.Host
|
||||
|
||||
return next.HandleSerialize(ctx, in)
|
||||
}
|
||||
func addEndpointPrefix_opWriteGetObjectResponseMiddleware(stack *middleware.Stack) error {
|
||||
return stack.Serialize.Insert(&endpointPrefix_opWriteGetObjectResponseMiddleware{}, `OperationSerializer`, middleware.After)
|
||||
}
|
||||
|
||||
func newServiceMetadataMiddleware_opWriteGetObjectResponse(region string) *awsmiddleware.RegisterServiceMetadata {
|
||||
return &awsmiddleware.RegisterServiceMetadata{
|
||||
Region: region,
|
||||
ServiceID: ServiceID,
|
||||
SigningName: "s3",
|
||||
OperationName: "WriteGetObjectResponse",
|
||||
}
|
||||
}
|
||||
|
||||
func addWriteGetObjectResponseUpdateEndpoint(stack *middleware.Stack, options Options) error {
|
||||
return s3cust.UpdateEndpoint(stack, s3cust.UpdateEndpointOptions{
|
||||
Accessor: s3cust.UpdateEndpointParameterAccessor{
|
||||
GetBucketFromInput: nopGetBucketAccessor,
|
||||
},
|
||||
UsePathStyle: options.UsePathStyle,
|
||||
UseAccelerate: options.UseAccelerate,
|
||||
SupportsAccelerate: true,
|
||||
TargetS3ObjectLambda: true,
|
||||
EndpointResolver: options.EndpointResolver,
|
||||
EndpointResolverOptions: options.EndpointOptions,
|
||||
UseDualstack: options.UseDualstack,
|
||||
UseARNRegion: options.UseARNRegion,
|
||||
DisableMultiRegionAccessPoints: options.DisableMultiRegionAccessPoints,
|
||||
})
|
||||
}
|
||||
20164
vendor/github.com/aws/aws-sdk-go-v2/service/s3/deserializers.go
generated
vendored
Normal file
20164
vendor/github.com/aws/aws-sdk-go-v2/service/s3/deserializers.go
generated
vendored
Normal file
File diff suppressed because it is too large
Load Diff
7
vendor/github.com/aws/aws-sdk-go-v2/service/s3/doc.go
generated
vendored
Normal file
7
vendor/github.com/aws/aws-sdk-go-v2/service/s3/doc.go
generated
vendored
Normal file
@@ -0,0 +1,7 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
// Package s3 provides the API client, operations, and parameter types for Amazon
|
||||
// Simple Storage Service.
|
||||
//
|
||||
//
|
||||
package s3
|
||||
160
vendor/github.com/aws/aws-sdk-go-v2/service/s3/endpoints.go
generated
vendored
Normal file
160
vendor/github.com/aws/aws-sdk-go-v2/service/s3/endpoints.go
generated
vendored
Normal file
@@ -0,0 +1,160 @@
|
||||
// Code generated by smithy-go-codegen DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
import (
|
||||
"context"
|
||||
"errors"
|
||||
"fmt"
|
||||
"github.com/aws/aws-sdk-go-v2/aws"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
internalendpoints "github.com/aws/aws-sdk-go-v2/service/s3/internal/endpoints"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
"net/url"
|
||||
)
|
||||
|
||||
// EndpointResolverOptions is the service endpoint resolver options
|
||||
type EndpointResolverOptions = internalendpoints.Options
|
||||
|
||||
// EndpointResolver interface for resolving service endpoints.
|
||||
type EndpointResolver interface {
|
||||
ResolveEndpoint(region string, options EndpointResolverOptions) (aws.Endpoint, error)
|
||||
}
|
||||
|
||||
var _ EndpointResolver = &internalendpoints.Resolver{}
|
||||
|
||||
// NewDefaultEndpointResolver constructs a new service endpoint resolver
|
||||
func NewDefaultEndpointResolver() *internalendpoints.Resolver {
|
||||
return internalendpoints.New()
|
||||
}
|
||||
|
||||
// EndpointResolverFunc is a helper utility that wraps a function so it satisfies
|
||||
// the EndpointResolver interface. This is useful when you want to add additional
|
||||
// endpoint resolving logic, or stub out specific endpoints with custom values.
|
||||
type EndpointResolverFunc func(region string, options EndpointResolverOptions) (aws.Endpoint, error)
|
||||
|
||||
func (fn EndpointResolverFunc) ResolveEndpoint(region string, options EndpointResolverOptions) (endpoint aws.Endpoint, err error) {
|
||||
return fn(region, options)
|
||||
}
|
||||
|
||||
func resolveDefaultEndpointConfiguration(o *Options) {
|
||||
if o.EndpointResolver != nil {
|
||||
return
|
||||
}
|
||||
o.EndpointResolver = NewDefaultEndpointResolver()
|
||||
}
|
||||
|
||||
// EndpointResolverFromURL returns an EndpointResolver configured using the
|
||||
// provided endpoint url. By default, the resolved endpoint resolver uses the
|
||||
// client region as signing region, and the endpoint source is set to
|
||||
// EndpointSourceCustom.You can provide functional options to configure endpoint
|
||||
// values for the resolved endpoint.
|
||||
func EndpointResolverFromURL(url string, optFns ...func(*aws.Endpoint)) EndpointResolver {
|
||||
e := aws.Endpoint{URL: url, Source: aws.EndpointSourceCustom}
|
||||
for _, fn := range optFns {
|
||||
fn(&e)
|
||||
}
|
||||
|
||||
return EndpointResolverFunc(
|
||||
func(region string, options EndpointResolverOptions) (aws.Endpoint, error) {
|
||||
if len(e.SigningRegion) == 0 {
|
||||
e.SigningRegion = region
|
||||
}
|
||||
return e, nil
|
||||
},
|
||||
)
|
||||
}
|
||||
|
||||
type ResolveEndpoint struct {
|
||||
Resolver EndpointResolver
|
||||
Options EndpointResolverOptions
|
||||
}
|
||||
|
||||
func (*ResolveEndpoint) ID() string {
|
||||
return "ResolveEndpoint"
|
||||
}
|
||||
|
||||
func (m *ResolveEndpoint) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
|
||||
out middleware.SerializeOutput, metadata middleware.Metadata, err error,
|
||||
) {
|
||||
req, ok := in.Request.(*smithyhttp.Request)
|
||||
if !ok {
|
||||
return out, metadata, fmt.Errorf("unknown transport type %T", in.Request)
|
||||
}
|
||||
|
||||
if m.Resolver == nil {
|
||||
return out, metadata, fmt.Errorf("expected endpoint resolver to not be nil")
|
||||
}
|
||||
|
||||
var endpoint aws.Endpoint
|
||||
endpoint, err = m.Resolver.ResolveEndpoint(awsmiddleware.GetRegion(ctx), m.Options)
|
||||
if err != nil {
|
||||
return out, metadata, fmt.Errorf("failed to resolve service endpoint, %w", err)
|
||||
}
|
||||
|
||||
req.URL, err = url.Parse(endpoint.URL)
|
||||
if err != nil {
|
||||
return out, metadata, fmt.Errorf("failed to parse endpoint URL: %w", err)
|
||||
}
|
||||
|
||||
if len(awsmiddleware.GetSigningName(ctx)) == 0 {
|
||||
signingName := endpoint.SigningName
|
||||
if len(signingName) == 0 {
|
||||
signingName = "s3"
|
||||
}
|
||||
ctx = awsmiddleware.SetSigningName(ctx, signingName)
|
||||
}
|
||||
ctx = awsmiddleware.SetEndpointSource(ctx, endpoint.Source)
|
||||
ctx = smithyhttp.SetHostnameImmutable(ctx, endpoint.HostnameImmutable)
|
||||
ctx = awsmiddleware.SetSigningRegion(ctx, endpoint.SigningRegion)
|
||||
ctx = awsmiddleware.SetPartitionID(ctx, endpoint.PartitionID)
|
||||
return next.HandleSerialize(ctx, in)
|
||||
}
|
||||
func addResolveEndpointMiddleware(stack *middleware.Stack, o Options) error {
|
||||
return stack.Serialize.Insert(&ResolveEndpoint{
|
||||
Resolver: o.EndpointResolver,
|
||||
Options: o.EndpointOptions,
|
||||
}, "OperationSerializer", middleware.Before)
|
||||
}
|
||||
|
||||
func removeResolveEndpointMiddleware(stack *middleware.Stack) error {
|
||||
_, err := stack.Serialize.Remove((&ResolveEndpoint{}).ID())
|
||||
return err
|
||||
}
|
||||
|
||||
type wrappedEndpointResolver struct {
|
||||
awsResolver aws.EndpointResolver
|
||||
resolver EndpointResolver
|
||||
}
|
||||
|
||||
func (w *wrappedEndpointResolver) ResolveEndpoint(region string, options EndpointResolverOptions) (endpoint aws.Endpoint, err error) {
|
||||
if w.awsResolver == nil {
|
||||
goto fallback
|
||||
}
|
||||
endpoint, err = w.awsResolver.ResolveEndpoint(ServiceID, region)
|
||||
if err == nil {
|
||||
return endpoint, nil
|
||||
}
|
||||
|
||||
if nf := (&aws.EndpointNotFoundError{}); !errors.As(err, &nf) {
|
||||
return endpoint, err
|
||||
}
|
||||
|
||||
fallback:
|
||||
if w.resolver == nil {
|
||||
return endpoint, fmt.Errorf("default endpoint resolver provided was nil")
|
||||
}
|
||||
return w.resolver.ResolveEndpoint(region, options)
|
||||
}
|
||||
|
||||
// withEndpointResolver returns an EndpointResolver that first delegates endpoint
|
||||
// resolution to the awsResolver. If awsResolver returns aws.EndpointNotFoundError
|
||||
// error, the resolver will use the the provided fallbackResolver for resolution.
|
||||
// awsResolver and fallbackResolver must not be nil
|
||||
func withEndpointResolver(awsResolver aws.EndpointResolver, fallbackResolver EndpointResolver) EndpointResolver {
|
||||
return &wrappedEndpointResolver{
|
||||
awsResolver: awsResolver,
|
||||
resolver: fallbackResolver,
|
||||
}
|
||||
}
|
||||
119
vendor/github.com/aws/aws-sdk-go-v2/service/s3/generated.json
generated
vendored
Normal file
119
vendor/github.com/aws/aws-sdk-go-v2/service/s3/generated.json
generated
vendored
Normal file
@@ -0,0 +1,119 @@
|
||||
{
|
||||
"dependencies": {
|
||||
"github.com/aws/aws-sdk-go-v2": "v1.4.0",
|
||||
"github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding": "v1.0.5",
|
||||
"github.com/aws/aws-sdk-go-v2/service/internal/presigned-url": "v1.0.7",
|
||||
"github.com/aws/aws-sdk-go-v2/service/internal/s3shared": "v1.2.3",
|
||||
"github.com/aws/smithy-go": "v1.4.0"
|
||||
},
|
||||
"files": [
|
||||
"api_client.go",
|
||||
"api_op_AbortMultipartUpload.go",
|
||||
"api_op_CompleteMultipartUpload.go",
|
||||
"api_op_CopyObject.go",
|
||||
"api_op_CreateBucket.go",
|
||||
"api_op_CreateMultipartUpload.go",
|
||||
"api_op_DeleteBucket.go",
|
||||
"api_op_DeleteBucketAnalyticsConfiguration.go",
|
||||
"api_op_DeleteBucketCors.go",
|
||||
"api_op_DeleteBucketEncryption.go",
|
||||
"api_op_DeleteBucketIntelligentTieringConfiguration.go",
|
||||
"api_op_DeleteBucketInventoryConfiguration.go",
|
||||
"api_op_DeleteBucketLifecycle.go",
|
||||
"api_op_DeleteBucketMetricsConfiguration.go",
|
||||
"api_op_DeleteBucketOwnershipControls.go",
|
||||
"api_op_DeleteBucketPolicy.go",
|
||||
"api_op_DeleteBucketReplication.go",
|
||||
"api_op_DeleteBucketTagging.go",
|
||||
"api_op_DeleteBucketWebsite.go",
|
||||
"api_op_DeleteObject.go",
|
||||
"api_op_DeleteObjectTagging.go",
|
||||
"api_op_DeleteObjects.go",
|
||||
"api_op_DeletePublicAccessBlock.go",
|
||||
"api_op_GetBucketAccelerateConfiguration.go",
|
||||
"api_op_GetBucketAcl.go",
|
||||
"api_op_GetBucketAnalyticsConfiguration.go",
|
||||
"api_op_GetBucketCors.go",
|
||||
"api_op_GetBucketEncryption.go",
|
||||
"api_op_GetBucketIntelligentTieringConfiguration.go",
|
||||
"api_op_GetBucketInventoryConfiguration.go",
|
||||
"api_op_GetBucketLifecycleConfiguration.go",
|
||||
"api_op_GetBucketLocation.go",
|
||||
"api_op_GetBucketLogging.go",
|
||||
"api_op_GetBucketMetricsConfiguration.go",
|
||||
"api_op_GetBucketNotificationConfiguration.go",
|
||||
"api_op_GetBucketOwnershipControls.go",
|
||||
"api_op_GetBucketPolicy.go",
|
||||
"api_op_GetBucketPolicyStatus.go",
|
||||
"api_op_GetBucketReplication.go",
|
||||
"api_op_GetBucketRequestPayment.go",
|
||||
"api_op_GetBucketTagging.go",
|
||||
"api_op_GetBucketVersioning.go",
|
||||
"api_op_GetBucketWebsite.go",
|
||||
"api_op_GetObject.go",
|
||||
"api_op_GetObjectAcl.go",
|
||||
"api_op_GetObjectLegalHold.go",
|
||||
"api_op_GetObjectLockConfiguration.go",
|
||||
"api_op_GetObjectRetention.go",
|
||||
"api_op_GetObjectTagging.go",
|
||||
"api_op_GetObjectTorrent.go",
|
||||
"api_op_GetPublicAccessBlock.go",
|
||||
"api_op_HeadBucket.go",
|
||||
"api_op_HeadObject.go",
|
||||
"api_op_ListBucketAnalyticsConfigurations.go",
|
||||
"api_op_ListBucketIntelligentTieringConfigurations.go",
|
||||
"api_op_ListBucketInventoryConfigurations.go",
|
||||
"api_op_ListBucketMetricsConfigurations.go",
|
||||
"api_op_ListBuckets.go",
|
||||
"api_op_ListMultipartUploads.go",
|
||||
"api_op_ListObjectVersions.go",
|
||||
"api_op_ListObjects.go",
|
||||
"api_op_ListObjectsV2.go",
|
||||
"api_op_ListParts.go",
|
||||
"api_op_PutBucketAccelerateConfiguration.go",
|
||||
"api_op_PutBucketAcl.go",
|
||||
"api_op_PutBucketAnalyticsConfiguration.go",
|
||||
"api_op_PutBucketCors.go",
|
||||
"api_op_PutBucketEncryption.go",
|
||||
"api_op_PutBucketIntelligentTieringConfiguration.go",
|
||||
"api_op_PutBucketInventoryConfiguration.go",
|
||||
"api_op_PutBucketLifecycleConfiguration.go",
|
||||
"api_op_PutBucketLogging.go",
|
||||
"api_op_PutBucketMetricsConfiguration.go",
|
||||
"api_op_PutBucketNotificationConfiguration.go",
|
||||
"api_op_PutBucketOwnershipControls.go",
|
||||
"api_op_PutBucketPolicy.go",
|
||||
"api_op_PutBucketReplication.go",
|
||||
"api_op_PutBucketRequestPayment.go",
|
||||
"api_op_PutBucketTagging.go",
|
||||
"api_op_PutBucketVersioning.go",
|
||||
"api_op_PutBucketWebsite.go",
|
||||
"api_op_PutObject.go",
|
||||
"api_op_PutObjectAcl.go",
|
||||
"api_op_PutObjectLegalHold.go",
|
||||
"api_op_PutObjectLockConfiguration.go",
|
||||
"api_op_PutObjectRetention.go",
|
||||
"api_op_PutObjectTagging.go",
|
||||
"api_op_PutPublicAccessBlock.go",
|
||||
"api_op_RestoreObject.go",
|
||||
"api_op_UploadPart.go",
|
||||
"api_op_UploadPartCopy.go",
|
||||
"api_op_WriteGetObjectResponse.go",
|
||||
"deserializers.go",
|
||||
"doc.go",
|
||||
"endpoints.go",
|
||||
"generated.json",
|
||||
"internal/endpoints/endpoints.go",
|
||||
"internal/endpoints/endpoints_test.go",
|
||||
"protocol_test.go",
|
||||
"serializers.go",
|
||||
"types/enums.go",
|
||||
"types/errors.go",
|
||||
"types/types.go",
|
||||
"types/types_exported_test.go",
|
||||
"validators.go"
|
||||
],
|
||||
"go": "1.15",
|
||||
"module": "github.com/aws/aws-sdk-go-v2/service/s3",
|
||||
"unstable": false
|
||||
}
|
||||
6
vendor/github.com/aws/aws-sdk-go-v2/service/s3/go_module_metadata.go
generated
vendored
Normal file
6
vendor/github.com/aws/aws-sdk-go-v2/service/s3/go_module_metadata.go
generated
vendored
Normal file
@@ -0,0 +1,6 @@
|
||||
// Code generated by internal/repotools/cmd/updatemodulemeta DO NOT EDIT.
|
||||
|
||||
package s3
|
||||
|
||||
// goModuleVersion is the tagged release for this module
|
||||
const goModuleVersion = "1.16.0"
|
||||
106
vendor/github.com/aws/aws-sdk-go-v2/service/s3/internal/arn/arn_parser.go
generated
vendored
Normal file
106
vendor/github.com/aws/aws-sdk-go-v2/service/s3/internal/arn/arn_parser.go
generated
vendored
Normal file
@@ -0,0 +1,106 @@
|
||||
package arn
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"strings"
|
||||
|
||||
awsarn "github.com/aws/aws-sdk-go-v2/aws/arn"
|
||||
"github.com/aws/aws-sdk-go-v2/service/internal/s3shared/arn"
|
||||
)
|
||||
|
||||
const (
|
||||
s3Namespace = "s3"
|
||||
s3ObjectsLambdaNamespace = "s3-object-lambda"
|
||||
s3OutpostsNamespace = "s3-outposts"
|
||||
)
|
||||
|
||||
// ParseEndpointARN parses a given generic aws ARN into a s3 arn resource.
|
||||
func ParseEndpointARN(v awsarn.ARN) (arn.Resource, error) {
|
||||
return arn.ParseResource(v, accessPointResourceParser)
|
||||
}
|
||||
|
||||
func accessPointResourceParser(a awsarn.ARN) (arn.Resource, error) {
|
||||
resParts := arn.SplitResource(a.Resource)
|
||||
|
||||
switch resParts[0] {
|
||||
case "accesspoint":
|
||||
switch a.Service {
|
||||
case s3Namespace:
|
||||
return arn.ParseAccessPointResource(a, resParts[1:])
|
||||
case s3ObjectsLambdaNamespace:
|
||||
return parseS3ObjectLambdaAccessPointResource(a, resParts)
|
||||
default:
|
||||
return arn.AccessPointARN{}, arn.InvalidARNError{ARN: a, Reason: fmt.Sprintf("service is not %s or %s", s3Namespace, s3ObjectsLambdaNamespace)}
|
||||
}
|
||||
case "outpost":
|
||||
if a.Service != s3OutpostsNamespace {
|
||||
return arn.OutpostAccessPointARN{}, arn.InvalidARNError{ARN: a, Reason: "service is not %s"}
|
||||
}
|
||||
return parseOutpostAccessPointResource(a, resParts[1:])
|
||||
default:
|
||||
return nil, arn.InvalidARNError{ARN: a, Reason: "unknown resource type"}
|
||||
}
|
||||
}
|
||||
|
||||
func parseOutpostAccessPointResource(a awsarn.ARN, resParts []string) (arn.OutpostAccessPointARN, error) {
|
||||
// outpost accesspoint arn is only valid if service is s3-outposts
|
||||
if a.Service != "s3-outposts" {
|
||||
return arn.OutpostAccessPointARN{}, arn.InvalidARNError{ARN: a, Reason: "service is not s3-outposts"}
|
||||
}
|
||||
|
||||
if len(resParts) == 0 {
|
||||
return arn.OutpostAccessPointARN{}, arn.InvalidARNError{ARN: a, Reason: "outpost resource-id not set"}
|
||||
}
|
||||
|
||||
if len(resParts) < 3 {
|
||||
return arn.OutpostAccessPointARN{}, arn.InvalidARNError{
|
||||
ARN: a, Reason: "access-point resource not set in Outpost ARN",
|
||||
}
|
||||
}
|
||||
|
||||
resID := strings.TrimSpace(resParts[0])
|
||||
if len(resID) == 0 {
|
||||
return arn.OutpostAccessPointARN{}, arn.InvalidARNError{ARN: a, Reason: "outpost resource-id not set"}
|
||||
}
|
||||
|
||||
var outpostAccessPointARN = arn.OutpostAccessPointARN{}
|
||||
switch resParts[1] {
|
||||
case "accesspoint":
|
||||
// Do not allow region-less outpost access-point arns.
|
||||
if len(a.Region) == 0 {
|
||||
return arn.OutpostAccessPointARN{}, arn.InvalidARNError{ARN: a, Reason: "region is not set"}
|
||||
}
|
||||
|
||||
accessPointARN, err := arn.ParseAccessPointResource(a, resParts[2:])
|
||||
if err != nil {
|
||||
return arn.OutpostAccessPointARN{}, err
|
||||
}
|
||||
// set access-point arn
|
||||
outpostAccessPointARN.AccessPointARN = accessPointARN
|
||||
default:
|
||||
return arn.OutpostAccessPointARN{}, arn.InvalidARNError{ARN: a, Reason: "access-point resource not set in Outpost ARN"}
|
||||
}
|
||||
|
||||
// set outpost id
|
||||
outpostAccessPointARN.OutpostID = resID
|
||||
return outpostAccessPointARN, nil
|
||||
}
|
||||
|
||||
func parseS3ObjectLambdaAccessPointResource(a awsarn.ARN, resParts []string) (arn.S3ObjectLambdaAccessPointARN, error) {
|
||||
if a.Service != s3ObjectsLambdaNamespace {
|
||||
return arn.S3ObjectLambdaAccessPointARN{}, arn.InvalidARNError{ARN: a, Reason: fmt.Sprintf("service is not %s", s3ObjectsLambdaNamespace)}
|
||||
}
|
||||
|
||||
if len(a.Region) == 0 {
|
||||
return arn.S3ObjectLambdaAccessPointARN{}, arn.InvalidARNError{ARN: a, Reason: fmt.Sprintf("%s region not set", s3ObjectsLambdaNamespace)}
|
||||
}
|
||||
|
||||
accessPointARN, err := arn.ParseAccessPointResource(a, resParts[1:])
|
||||
if err != nil {
|
||||
return arn.S3ObjectLambdaAccessPointARN{}, err
|
||||
}
|
||||
|
||||
return arn.S3ObjectLambdaAccessPointARN{
|
||||
AccessPointARN: accessPointARN,
|
||||
}, nil
|
||||
}
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user