feat(train): add new command to interact with aws and train models
This commit is contained in:
20
vendor/github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding/CHANGELOG.md
generated
vendored
Normal file
20
vendor/github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding/CHANGELOG.md
generated
vendored
Normal file
@@ -0,0 +1,20 @@
|
||||
# v1.3.0 (2021-08-27)
|
||||
|
||||
* **Feature**: Updated `github.com/aws/smithy-go` to latest version
|
||||
|
||||
# v1.2.2 (2021-08-04)
|
||||
|
||||
* **Dependency Update**: Updated `github.com/aws/smithy-go` to latest version.
|
||||
|
||||
# v1.2.1 (2021-07-15)
|
||||
|
||||
* **Dependency Update**: Updated `github.com/aws/smithy-go` to latest version
|
||||
|
||||
# v1.2.0 (2021-06-25)
|
||||
|
||||
* **Feature**: Updated `github.com/aws/smithy-go` to latest version
|
||||
|
||||
# v1.1.0 (2021-05-14)
|
||||
|
||||
* **Feature**: Constant has been added to modules to enable runtime version inspection for reporting.
|
||||
|
||||
202
vendor/github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding/LICENSE.txt
generated
vendored
Normal file
202
vendor/github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding/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.
|
||||
176
vendor/github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding/accept_encoding_gzip.go
generated
vendored
Normal file
176
vendor/github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding/accept_encoding_gzip.go
generated
vendored
Normal file
@@ -0,0 +1,176 @@
|
||||
package acceptencoding
|
||||
|
||||
import (
|
||||
"compress/gzip"
|
||||
"context"
|
||||
"fmt"
|
||||
"io"
|
||||
|
||||
"github.com/aws/smithy-go"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
const acceptEncodingHeaderKey = "Accept-Encoding"
|
||||
const contentEncodingHeaderKey = "Content-Encoding"
|
||||
|
||||
// AddAcceptEncodingGzipOptions provides the options for the
|
||||
// AddAcceptEncodingGzip middleware setup.
|
||||
type AddAcceptEncodingGzipOptions struct {
|
||||
Enable bool
|
||||
}
|
||||
|
||||
// AddAcceptEncodingGzip explicitly adds handling for accept-encoding GZIP
|
||||
// middleware to the operation stack. This allows checksums to be correctly
|
||||
// computed without disabling GZIP support.
|
||||
func AddAcceptEncodingGzip(stack *middleware.Stack, options AddAcceptEncodingGzipOptions) error {
|
||||
if options.Enable {
|
||||
if err := stack.Finalize.Add(&EnableGzip{}, middleware.Before); err != nil {
|
||||
return err
|
||||
}
|
||||
if err := stack.Deserialize.Insert(&DecompressGzip{}, "OperationDeserializer", middleware.After); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
return stack.Finalize.Add(&DisableGzip{}, middleware.Before)
|
||||
}
|
||||
|
||||
// DisableGzip provides the middleware that will
|
||||
// disable the underlying http client automatically enabling for gzip
|
||||
// decompress content-encoding support.
|
||||
type DisableGzip struct{}
|
||||
|
||||
// ID returns the id for the middleware.
|
||||
func (*DisableGzip) ID() string {
|
||||
return "DisableAcceptEncodingGzip"
|
||||
}
|
||||
|
||||
// HandleFinalize implements the FinalizeMiddleware interface.
|
||||
func (*DisableGzip) HandleFinalize(
|
||||
ctx context.Context, input middleware.FinalizeInput, next middleware.FinalizeHandler,
|
||||
) (
|
||||
output middleware.FinalizeOutput, metadata middleware.Metadata, err error,
|
||||
) {
|
||||
req, ok := input.Request.(*smithyhttp.Request)
|
||||
if !ok {
|
||||
return output, metadata, &smithy.SerializationError{
|
||||
Err: fmt.Errorf("unknown request type %T", input.Request),
|
||||
}
|
||||
}
|
||||
|
||||
// Explicitly enable gzip support, this will prevent the http client from
|
||||
// auto extracting the zipped content.
|
||||
req.Header.Set(acceptEncodingHeaderKey, "identity")
|
||||
|
||||
return next.HandleFinalize(ctx, input)
|
||||
}
|
||||
|
||||
// EnableGzip provides a middleware to enable support for
|
||||
// gzip responses, with manual decompression. This prevents the underlying HTTP
|
||||
// client from performing the gzip decompression automatically.
|
||||
type EnableGzip struct{}
|
||||
|
||||
// ID returns the id for the middleware.
|
||||
func (*EnableGzip) ID() string {
|
||||
return "AcceptEncodingGzip"
|
||||
}
|
||||
|
||||
// HandleFinalize implements the FinalizeMiddleware interface.
|
||||
func (*EnableGzip) HandleFinalize(
|
||||
ctx context.Context, input middleware.FinalizeInput, next middleware.FinalizeHandler,
|
||||
) (
|
||||
output middleware.FinalizeOutput, metadata middleware.Metadata, err error,
|
||||
) {
|
||||
req, ok := input.Request.(*smithyhttp.Request)
|
||||
if !ok {
|
||||
return output, metadata, &smithy.SerializationError{
|
||||
Err: fmt.Errorf("unknown request type %T", input.Request),
|
||||
}
|
||||
}
|
||||
|
||||
// Explicitly enable gzip support, this will prevent the http client from
|
||||
// auto extracting the zipped content.
|
||||
req.Header.Set(acceptEncodingHeaderKey, "gzip")
|
||||
|
||||
return next.HandleFinalize(ctx, input)
|
||||
}
|
||||
|
||||
// DecompressGzip provides the middleware for decompressing a gzip
|
||||
// response from the service.
|
||||
type DecompressGzip struct{}
|
||||
|
||||
// ID returns the id for the middleware.
|
||||
func (*DecompressGzip) ID() string {
|
||||
return "DecompressGzip"
|
||||
}
|
||||
|
||||
// HandleDeserialize implements the DeserializeMiddlware interface.
|
||||
func (*DecompressGzip) HandleDeserialize(
|
||||
ctx context.Context, input middleware.DeserializeInput, next middleware.DeserializeHandler,
|
||||
) (
|
||||
output middleware.DeserializeOutput, metadata middleware.Metadata, err error,
|
||||
) {
|
||||
output, metadata, err = next.HandleDeserialize(ctx, input)
|
||||
if err != nil {
|
||||
return output, metadata, err
|
||||
}
|
||||
|
||||
resp, ok := output.RawResponse.(*smithyhttp.Response)
|
||||
if !ok {
|
||||
return output, metadata, &smithy.DeserializationError{
|
||||
Err: fmt.Errorf("unknown response type %T", output.RawResponse),
|
||||
}
|
||||
}
|
||||
if v := resp.Header.Get(contentEncodingHeaderKey); v != "gzip" {
|
||||
return output, metadata, err
|
||||
}
|
||||
|
||||
// Clear content length since it will no longer be valid once the response
|
||||
// body is decompressed.
|
||||
resp.Header.Del("Content-Length")
|
||||
resp.ContentLength = -1
|
||||
|
||||
resp.Body = wrapGzipReader(resp.Body)
|
||||
|
||||
return output, metadata, err
|
||||
}
|
||||
|
||||
type gzipReader struct {
|
||||
reader io.ReadCloser
|
||||
gzip *gzip.Reader
|
||||
}
|
||||
|
||||
func wrapGzipReader(reader io.ReadCloser) *gzipReader {
|
||||
return &gzipReader{
|
||||
reader: reader,
|
||||
}
|
||||
}
|
||||
|
||||
// Read wraps the gzip reader around the underlying io.Reader to extract the
|
||||
// response bytes on the fly.
|
||||
func (g *gzipReader) Read(b []byte) (n int, err error) {
|
||||
if g.gzip == nil {
|
||||
g.gzip, err = gzip.NewReader(g.reader)
|
||||
if err != nil {
|
||||
g.gzip = nil // ensure uninitialized gzip value isn't used in close.
|
||||
return 0, fmt.Errorf("failed to decompress gzip response, %w", err)
|
||||
}
|
||||
}
|
||||
|
||||
return g.gzip.Read(b)
|
||||
}
|
||||
|
||||
func (g *gzipReader) Close() error {
|
||||
if g.gzip == nil {
|
||||
return nil
|
||||
}
|
||||
|
||||
if err := g.gzip.Close(); err != nil {
|
||||
g.reader.Close()
|
||||
return fmt.Errorf("failed to decompress gzip response, %w", err)
|
||||
}
|
||||
|
||||
return g.reader.Close()
|
||||
}
|
||||
23
vendor/github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding/doc.go
generated
vendored
Normal file
23
vendor/github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding/doc.go
generated
vendored
Normal file
@@ -0,0 +1,23 @@
|
||||
/*
|
||||
Package acceptencoding provides customizations associated with Accept Encoding Header.
|
||||
|
||||
Accept encoding gzip
|
||||
|
||||
The Go HTTP client automatically supports accept-encoding and content-encoding
|
||||
gzip by default. This default behavior is not desired by the SDK, and prevents
|
||||
validating the response body's checksum. To prevent this the SDK must manually
|
||||
control usage of content-encoding gzip.
|
||||
|
||||
To control content-encoding, the SDK must always set the `Accept-Encoding`
|
||||
header to a value. This prevents the HTTP client from using gzip automatically.
|
||||
When gzip is enabled on the API client, the SDK's customization will control
|
||||
decompressing the gzip data in order to not break the checksum validation. When
|
||||
gzip is disabled, the API client will disable gzip, preventing the HTTP
|
||||
client's default behavior.
|
||||
|
||||
An `EnableAcceptEncodingGzip` option may or may not be present depending on the client using
|
||||
the below middleware. The option if present can be used to enable auto decompressing
|
||||
gzip by the SDK.
|
||||
|
||||
*/
|
||||
package acceptencoding
|
||||
6
vendor/github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding/go_module_metadata.go
generated
vendored
Normal file
6
vendor/github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding/go_module_metadata.go
generated
vendored
Normal file
@@ -0,0 +1,6 @@
|
||||
// Code generated by internal/repotools/cmd/updatemodulemeta DO NOT EDIT.
|
||||
|
||||
package acceptencoding
|
||||
|
||||
// goModuleVersion is the tagged release for this module
|
||||
const goModuleVersion = "1.3.0"
|
||||
37
vendor/github.com/aws/aws-sdk-go-v2/service/internal/presigned-url/CHANGELOG.md
generated
vendored
Normal file
37
vendor/github.com/aws/aws-sdk-go-v2/service/internal/presigned-url/CHANGELOG.md
generated
vendored
Normal file
@@ -0,0 +1,37 @@
|
||||
# v1.3.1 (2021-09-17)
|
||||
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.3.0 (2021-08-27)
|
||||
|
||||
* **Feature**: Updated `github.com/aws/smithy-go` to latest version
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.2.3 (2021-08-19)
|
||||
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.2.2 (2021-08-04)
|
||||
|
||||
* **Dependency Update**: Updated `github.com/aws/smithy-go` to latest version.
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.2.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.2.0 (2021-06-25)
|
||||
|
||||
* **Feature**: Updated `github.com/aws/smithy-go` to latest version
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.1.1 (2021-05-20)
|
||||
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.1.0 (2021-05-14)
|
||||
|
||||
* **Feature**: Constant has been added to modules to enable runtime version inspection for reporting.
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
202
vendor/github.com/aws/aws-sdk-go-v2/service/internal/presigned-url/LICENSE.txt
generated
vendored
Normal file
202
vendor/github.com/aws/aws-sdk-go-v2/service/internal/presigned-url/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.
|
||||
48
vendor/github.com/aws/aws-sdk-go-v2/service/internal/presigned-url/context.go
generated
vendored
Normal file
48
vendor/github.com/aws/aws-sdk-go-v2/service/internal/presigned-url/context.go
generated
vendored
Normal file
@@ -0,0 +1,48 @@
|
||||
package presignedurl
|
||||
|
||||
import (
|
||||
"context"
|
||||
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
)
|
||||
|
||||
// WithIsPresigning adds the isPresigning sentinel value to a context to signal
|
||||
// that the middleware stack is using the presign flow.
|
||||
//
|
||||
// Scoped to stack values. Use github.com/aws/smithy-go/middleware#ClearStackValues
|
||||
// to clear all stack values.
|
||||
func WithIsPresigning(ctx context.Context) context.Context {
|
||||
return middleware.WithStackValue(ctx, isPresigningKey{}, true)
|
||||
}
|
||||
|
||||
// GetIsPresigning returns if the context contains the isPresigning sentinel
|
||||
// value for presigning flows.
|
||||
//
|
||||
// Scoped to stack values. Use github.com/aws/smithy-go/middleware#ClearStackValues
|
||||
// to clear all stack values.
|
||||
func GetIsPresigning(ctx context.Context) bool {
|
||||
v, _ := middleware.GetStackValue(ctx, isPresigningKey{}).(bool)
|
||||
return v
|
||||
}
|
||||
|
||||
type isPresigningKey struct{}
|
||||
|
||||
// AddAsIsPresigingMiddleware adds a middleware to the head of the stack that
|
||||
// will update the stack's context to be flagged as being invoked for the
|
||||
// purpose of presigning.
|
||||
func AddAsIsPresigingMiddleware(stack *middleware.Stack) error {
|
||||
return stack.Initialize.Add(asIsPresigningMiddleware{}, middleware.Before)
|
||||
}
|
||||
|
||||
type asIsPresigningMiddleware struct{}
|
||||
|
||||
func (asIsPresigningMiddleware) ID() string { return "AsIsPresigningMiddleware" }
|
||||
|
||||
func (asIsPresigningMiddleware) HandleInitialize(
|
||||
ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler,
|
||||
) (
|
||||
out middleware.InitializeOutput, metadata middleware.Metadata, err error,
|
||||
) {
|
||||
ctx = WithIsPresigning(ctx)
|
||||
return next.HandleInitialize(ctx, in)
|
||||
}
|
||||
3
vendor/github.com/aws/aws-sdk-go-v2/service/internal/presigned-url/doc.go
generated
vendored
Normal file
3
vendor/github.com/aws/aws-sdk-go-v2/service/internal/presigned-url/doc.go
generated
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
// Package presignedurl provides the customizations for API clients to fill in
|
||||
// presigned URLs into input parameters.
|
||||
package presignedurl
|
||||
6
vendor/github.com/aws/aws-sdk-go-v2/service/internal/presigned-url/go_module_metadata.go
generated
vendored
Normal file
6
vendor/github.com/aws/aws-sdk-go-v2/service/internal/presigned-url/go_module_metadata.go
generated
vendored
Normal file
@@ -0,0 +1,6 @@
|
||||
// Code generated by internal/repotools/cmd/updatemodulemeta DO NOT EDIT.
|
||||
|
||||
package presignedurl
|
||||
|
||||
// goModuleVersion is the tagged release for this module
|
||||
const goModuleVersion = "1.3.1"
|
||||
110
vendor/github.com/aws/aws-sdk-go-v2/service/internal/presigned-url/middleware.go
generated
vendored
Normal file
110
vendor/github.com/aws/aws-sdk-go-v2/service/internal/presigned-url/middleware.go
generated
vendored
Normal file
@@ -0,0 +1,110 @@
|
||||
package presignedurl
|
||||
|
||||
import (
|
||||
"context"
|
||||
"fmt"
|
||||
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
v4 "github.com/aws/aws-sdk-go-v2/aws/signer/v4"
|
||||
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
)
|
||||
|
||||
// URLPresigner provides the interface to presign the input parameters in to a
|
||||
// presigned URL.
|
||||
type URLPresigner interface {
|
||||
// PresignURL presigns a URL.
|
||||
PresignURL(ctx context.Context, srcRegion string, params interface{}) (*v4.PresignedHTTPRequest, error)
|
||||
}
|
||||
|
||||
// ParameterAccessor provides an collection of accessor to for retrieving and
|
||||
// setting the values needed to PresignedURL generation
|
||||
type ParameterAccessor struct {
|
||||
// GetPresignedURL accessor points to a function that retrieves a presigned url if present
|
||||
GetPresignedURL func(interface{}) (string, bool, error)
|
||||
|
||||
// GetSourceRegion accessor points to a function that retrieves source region for presigned url
|
||||
GetSourceRegion func(interface{}) (string, bool, error)
|
||||
|
||||
// CopyInput accessor points to a function that takes in an input, and returns a copy.
|
||||
CopyInput func(interface{}) (interface{}, error)
|
||||
|
||||
// SetDestinationRegion accessor points to a function that sets destination region on api input struct
|
||||
SetDestinationRegion func(interface{}, string) error
|
||||
|
||||
// SetPresignedURL accessor points to a function that sets presigned url on api input struct
|
||||
SetPresignedURL func(interface{}, string) error
|
||||
}
|
||||
|
||||
// Options provides the set of options needed by the presigned URL middleware.
|
||||
type Options struct {
|
||||
// Accessor are the parameter accessors used by this middleware
|
||||
Accessor ParameterAccessor
|
||||
|
||||
// Presigner is the URLPresigner used by the middleware
|
||||
Presigner URLPresigner
|
||||
}
|
||||
|
||||
// AddMiddleware adds the Presign URL middleware to the middleware stack.
|
||||
func AddMiddleware(stack *middleware.Stack, opts Options) error {
|
||||
return stack.Initialize.Add(&presign{options: opts}, middleware.Before)
|
||||
}
|
||||
|
||||
// RemoveMiddleware removes the Presign URL middleware from the stack.
|
||||
func RemoveMiddleware(stack *middleware.Stack) error {
|
||||
_, err := stack.Initialize.Remove((*presign)(nil).ID())
|
||||
return err
|
||||
}
|
||||
|
||||
type presign struct {
|
||||
options Options
|
||||
}
|
||||
|
||||
func (m *presign) ID() string { return "Presign" }
|
||||
|
||||
func (m *presign) HandleInitialize(
|
||||
ctx context.Context, input middleware.InitializeInput, next middleware.InitializeHandler,
|
||||
) (
|
||||
out middleware.InitializeOutput, metadata middleware.Metadata, err error,
|
||||
) {
|
||||
// If PresignedURL is already set ignore middleware.
|
||||
if _, ok, err := m.options.Accessor.GetPresignedURL(input.Parameters); err != nil {
|
||||
return out, metadata, fmt.Errorf("presign middleware failed, %w", err)
|
||||
} else if ok {
|
||||
return next.HandleInitialize(ctx, input)
|
||||
}
|
||||
|
||||
// If have source region is not set ignore middleware.
|
||||
srcRegion, ok, err := m.options.Accessor.GetSourceRegion(input.Parameters)
|
||||
if err != nil {
|
||||
return out, metadata, fmt.Errorf("presign middleware failed, %w", err)
|
||||
} else if !ok || len(srcRegion) == 0 {
|
||||
return next.HandleInitialize(ctx, input)
|
||||
}
|
||||
|
||||
// Create a copy of the original input so the destination region value can
|
||||
// be added. This ensures that value does not leak into the original
|
||||
// request parameters.
|
||||
paramCpy, err := m.options.Accessor.CopyInput(input.Parameters)
|
||||
if err != nil {
|
||||
return out, metadata, fmt.Errorf("unable to create presigned URL, %w", err)
|
||||
}
|
||||
|
||||
// Destination region is the API client's configured region.
|
||||
dstRegion := awsmiddleware.GetRegion(ctx)
|
||||
if err = m.options.Accessor.SetDestinationRegion(paramCpy, dstRegion); err != nil {
|
||||
return out, metadata, fmt.Errorf("presign middleware failed, %w", err)
|
||||
}
|
||||
|
||||
presignedReq, err := m.options.Presigner.PresignURL(ctx, srcRegion, paramCpy)
|
||||
if err != nil {
|
||||
return out, metadata, fmt.Errorf("unable to create presigned URL, %w", err)
|
||||
}
|
||||
|
||||
// Update the original input with the presigned URL value.
|
||||
if err = m.options.Accessor.SetPresignedURL(input.Parameters, presignedReq.URL); err != nil {
|
||||
return out, metadata, fmt.Errorf("presign middleware failed, %w", err)
|
||||
}
|
||||
|
||||
return next.HandleInitialize(ctx, input)
|
||||
}
|
||||
45
vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/CHANGELOG.md
generated
vendored
Normal file
45
vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/CHANGELOG.md
generated
vendored
Normal file
@@ -0,0 +1,45 @@
|
||||
# v1.7.1 (2021-09-17)
|
||||
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.7.0 (2021-09-02)
|
||||
|
||||
* **Feature**: Add support for S3 Multi-Region Access Point ARNs.
|
||||
|
||||
# v1.6.0 (2021-08-27)
|
||||
|
||||
* **Feature**: Updated `github.com/aws/smithy-go` to latest version
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.5.3 (2021-08-19)
|
||||
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.5.2 (2021-08-04)
|
||||
|
||||
* **Dependency Update**: Updated `github.com/aws/smithy-go` to latest version.
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.5.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.5.0 (2021-06-25)
|
||||
|
||||
* **Feature**: Updated `github.com/aws/smithy-go` to latest version
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.4.0 (2021-06-04)
|
||||
|
||||
* **Feature**: The handling of AccessPoint and Outpost ARNs have been updated.
|
||||
|
||||
# v1.3.1 (2021-05-20)
|
||||
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.3.0 (2021-05-14)
|
||||
|
||||
* **Feature**: Constant has been added to modules to enable runtime version inspection for reporting.
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
202
vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/LICENSE.txt
generated
vendored
Normal file
202
vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/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.
|
||||
54
vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/arn/accesspoint_arn.go
generated
vendored
Normal file
54
vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/arn/accesspoint_arn.go
generated
vendored
Normal file
@@ -0,0 +1,54 @@
|
||||
package arn
|
||||
|
||||
import (
|
||||
"strings"
|
||||
|
||||
"github.com/aws/aws-sdk-go-v2/aws/arn"
|
||||
)
|
||||
|
||||
// AccessPointARN provides representation
|
||||
type AccessPointARN struct {
|
||||
arn.ARN
|
||||
AccessPointName string
|
||||
}
|
||||
|
||||
// GetARN returns the base ARN for the Access Point resource
|
||||
func (a AccessPointARN) GetARN() arn.ARN {
|
||||
return a.ARN
|
||||
}
|
||||
|
||||
// ParseAccessPointResource attempts to parse the ARN's resource as an
|
||||
// AccessPoint resource.
|
||||
//
|
||||
// Supported Access point resource format:
|
||||
// - Access point format: arn:{partition}:s3:{region}:{accountId}:accesspoint/{accesspointName}
|
||||
// - example: arn:aws:s3:us-west-2:012345678901:accesspoint/myaccesspoint
|
||||
//
|
||||
func ParseAccessPointResource(a arn.ARN, resParts []string) (AccessPointARN, error) {
|
||||
if isFIPS(a.Region) {
|
||||
return AccessPointARN{}, InvalidARNError{ARN: a, Reason: "FIPS region not allowed in ARN"}
|
||||
}
|
||||
if len(a.AccountID) == 0 {
|
||||
return AccessPointARN{}, InvalidARNError{ARN: a, Reason: "account-id not set"}
|
||||
}
|
||||
if len(resParts) == 0 {
|
||||
return AccessPointARN{}, InvalidARNError{ARN: a, Reason: "resource-id not set"}
|
||||
}
|
||||
if len(resParts) > 1 {
|
||||
return AccessPointARN{}, InvalidARNError{ARN: a, Reason: "sub resource not supported"}
|
||||
}
|
||||
|
||||
resID := resParts[0]
|
||||
if len(strings.TrimSpace(resID)) == 0 {
|
||||
return AccessPointARN{}, InvalidARNError{ARN: a, Reason: "resource-id not set"}
|
||||
}
|
||||
|
||||
return AccessPointARN{
|
||||
ARN: a,
|
||||
AccessPointName: resID,
|
||||
}, nil
|
||||
}
|
||||
|
||||
func isFIPS(region string) bool {
|
||||
return strings.HasPrefix(region, "fips-") || strings.HasSuffix(region, "-fips")
|
||||
}
|
||||
85
vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/arn/arn.go
generated
vendored
Normal file
85
vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/arn/arn.go
generated
vendored
Normal file
@@ -0,0 +1,85 @@
|
||||
package arn
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"strings"
|
||||
|
||||
"github.com/aws/aws-sdk-go-v2/aws/arn"
|
||||
)
|
||||
|
||||
var supportedServiceARN = []string{
|
||||
"s3",
|
||||
"s3-outposts",
|
||||
"s3-object-lambda",
|
||||
}
|
||||
|
||||
func isSupportedServiceARN(service string) bool {
|
||||
for _, name := range supportedServiceARN {
|
||||
if name == service {
|
||||
return true
|
||||
}
|
||||
}
|
||||
return false
|
||||
}
|
||||
|
||||
// Resource provides the interfaces abstracting ARNs of specific resource
|
||||
// types.
|
||||
type Resource interface {
|
||||
GetARN() arn.ARN
|
||||
String() string
|
||||
}
|
||||
|
||||
// ResourceParser provides the function for parsing an ARN's resource
|
||||
// component into a typed resource.
|
||||
type ResourceParser func(arn.ARN) (Resource, error)
|
||||
|
||||
// ParseResource parses an AWS ARN into a typed resource for the S3 API.
|
||||
func ParseResource(a arn.ARN, resParser ResourceParser) (resARN Resource, err error) {
|
||||
if len(a.Partition) == 0 {
|
||||
return nil, InvalidARNError{ARN: a, Reason: "partition not set"}
|
||||
}
|
||||
|
||||
if !isSupportedServiceARN(a.Service) {
|
||||
return nil, InvalidARNError{ARN: a, Reason: "service is not supported"}
|
||||
}
|
||||
|
||||
if len(a.Resource) == 0 {
|
||||
return nil, InvalidARNError{ARN: a, Reason: "resource not set"}
|
||||
}
|
||||
|
||||
return resParser(a)
|
||||
}
|
||||
|
||||
// SplitResource splits the resource components by the ARN resource delimiters.
|
||||
func SplitResource(v string) []string {
|
||||
var parts []string
|
||||
var offset int
|
||||
|
||||
for offset <= len(v) {
|
||||
idx := strings.IndexAny(v[offset:], "/:")
|
||||
if idx < 0 {
|
||||
parts = append(parts, v[offset:])
|
||||
break
|
||||
}
|
||||
parts = append(parts, v[offset:idx+offset])
|
||||
offset += idx + 1
|
||||
}
|
||||
|
||||
return parts
|
||||
}
|
||||
|
||||
// IsARN returns whether the given string is an ARN
|
||||
func IsARN(s string) bool {
|
||||
return arn.IsARN(s)
|
||||
}
|
||||
|
||||
// InvalidARNError provides the error for an invalid ARN error.
|
||||
type InvalidARNError struct {
|
||||
ARN arn.ARN
|
||||
Reason string
|
||||
}
|
||||
|
||||
// Error returns a string denoting the occurred InvalidARNError
|
||||
func (e InvalidARNError) Error() string {
|
||||
return fmt.Sprintf("invalid Amazon %s ARN, %s, %s", e.ARN.Service, e.Reason, e.ARN.String())
|
||||
}
|
||||
130
vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/arn/outpost_arn.go
generated
vendored
Normal file
130
vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/arn/outpost_arn.go
generated
vendored
Normal file
@@ -0,0 +1,130 @@
|
||||
package arn
|
||||
|
||||
import (
|
||||
"strings"
|
||||
|
||||
"github.com/aws/aws-sdk-go-v2/aws/arn"
|
||||
)
|
||||
|
||||
// OutpostARN interface that should be satisfied by outpost ARNs
|
||||
type OutpostARN interface {
|
||||
Resource
|
||||
GetOutpostID() string
|
||||
}
|
||||
|
||||
// ParseOutpostARNResource will parse a provided ARNs resource using the appropriate ARN format
|
||||
// and return a specific OutpostARN type
|
||||
//
|
||||
// Currently supported outpost ARN formats:
|
||||
// * Outpost AccessPoint ARN format:
|
||||
// - ARN format: arn:{partition}:s3-outposts:{region}:{accountId}:outpost/{outpostId}/accesspoint/{accesspointName}
|
||||
// - example: arn:aws:s3-outposts:us-west-2:012345678901:outpost/op-1234567890123456/accesspoint/myaccesspoint
|
||||
//
|
||||
// * Outpost Bucket ARN format:
|
||||
// - ARN format: arn:{partition}:s3-outposts:{region}:{accountId}:outpost/{outpostId}/bucket/{bucketName}
|
||||
// - example: arn:aws:s3-outposts:us-west-2:012345678901:outpost/op-1234567890123456/bucket/mybucket
|
||||
//
|
||||
// Other outpost ARN formats may be supported and added in the future.
|
||||
//
|
||||
func ParseOutpostARNResource(a arn.ARN, resParts []string) (OutpostARN, error) {
|
||||
if len(a.Region) == 0 {
|
||||
return nil, InvalidARNError{ARN: a, Reason: "region not set"}
|
||||
}
|
||||
|
||||
if isFIPS(a.Region) {
|
||||
return nil, InvalidARNError{ARN: a, Reason: "FIPS region not allowed in ARN"}
|
||||
}
|
||||
|
||||
if len(a.AccountID) == 0 {
|
||||
return nil, InvalidARNError{ARN: a, Reason: "account-id not set"}
|
||||
}
|
||||
|
||||
// verify if outpost id is present and valid
|
||||
if len(resParts) == 0 || len(strings.TrimSpace(resParts[0])) == 0 {
|
||||
return nil, InvalidARNError{ARN: a, Reason: "outpost resource-id not set"}
|
||||
}
|
||||
|
||||
// verify possible resource type exists
|
||||
if len(resParts) < 3 {
|
||||
return nil, InvalidARNError{
|
||||
ARN: a, Reason: "incomplete outpost resource type. Expected bucket or access-point resource to be present",
|
||||
}
|
||||
}
|
||||
|
||||
// Since we know this is a OutpostARN fetch outpostID
|
||||
outpostID := strings.TrimSpace(resParts[0])
|
||||
|
||||
switch resParts[1] {
|
||||
case "accesspoint":
|
||||
accesspointARN, err := ParseAccessPointResource(a, resParts[2:])
|
||||
if err != nil {
|
||||
return OutpostAccessPointARN{}, err
|
||||
}
|
||||
return OutpostAccessPointARN{
|
||||
AccessPointARN: accesspointARN,
|
||||
OutpostID: outpostID,
|
||||
}, nil
|
||||
|
||||
case "bucket":
|
||||
bucketName, err := parseBucketResource(a, resParts[2:])
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return OutpostBucketARN{
|
||||
ARN: a,
|
||||
BucketName: bucketName,
|
||||
OutpostID: outpostID,
|
||||
}, nil
|
||||
|
||||
default:
|
||||
return nil, InvalidARNError{ARN: a, Reason: "unknown resource set for outpost ARN"}
|
||||
}
|
||||
}
|
||||
|
||||
// OutpostAccessPointARN represents outpost access point ARN.
|
||||
type OutpostAccessPointARN struct {
|
||||
AccessPointARN
|
||||
OutpostID string
|
||||
}
|
||||
|
||||
// GetOutpostID returns the outpost id of outpost access point arn
|
||||
func (o OutpostAccessPointARN) GetOutpostID() string {
|
||||
return o.OutpostID
|
||||
}
|
||||
|
||||
// OutpostBucketARN represents the outpost bucket ARN.
|
||||
type OutpostBucketARN struct {
|
||||
arn.ARN
|
||||
BucketName string
|
||||
OutpostID string
|
||||
}
|
||||
|
||||
// GetOutpostID returns the outpost id of outpost bucket arn
|
||||
func (o OutpostBucketARN) GetOutpostID() string {
|
||||
return o.OutpostID
|
||||
}
|
||||
|
||||
// GetARN retrives the base ARN from outpost bucket ARN resource
|
||||
func (o OutpostBucketARN) GetARN() arn.ARN {
|
||||
return o.ARN
|
||||
}
|
||||
|
||||
// parseBucketResource attempts to parse the ARN's bucket resource and retrieve the
|
||||
// bucket resource id.
|
||||
//
|
||||
// parseBucketResource only parses the bucket resource id.
|
||||
//
|
||||
func parseBucketResource(a arn.ARN, resParts []string) (bucketName string, err error) {
|
||||
if len(resParts) == 0 {
|
||||
return bucketName, InvalidARNError{ARN: a, Reason: "bucket resource-id not set"}
|
||||
}
|
||||
if len(resParts) > 1 {
|
||||
return bucketName, InvalidARNError{ARN: a, Reason: "sub resource not supported"}
|
||||
}
|
||||
|
||||
bucketName = strings.TrimSpace(resParts[0])
|
||||
if len(bucketName) == 0 {
|
||||
return bucketName, InvalidARNError{ARN: a, Reason: "bucket resource-id not set"}
|
||||
}
|
||||
return bucketName, err
|
||||
}
|
||||
15
vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/arn/s3_object_lambda_arn.go
generated
vendored
Normal file
15
vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/arn/s3_object_lambda_arn.go
generated
vendored
Normal file
@@ -0,0 +1,15 @@
|
||||
package arn
|
||||
|
||||
// S3ObjectLambdaARN represents an ARN for the s3-object-lambda service
|
||||
type S3ObjectLambdaARN interface {
|
||||
Resource
|
||||
|
||||
isS3ObjectLambdasARN()
|
||||
}
|
||||
|
||||
// S3ObjectLambdaAccessPointARN is an S3ObjectLambdaARN for the Access Point resource type
|
||||
type S3ObjectLambdaAccessPointARN struct {
|
||||
AccessPointARN
|
||||
}
|
||||
|
||||
func (s S3ObjectLambdaAccessPointARN) isS3ObjectLambdasARN() {}
|
||||
73
vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/arn_lookup.go
generated
vendored
Normal file
73
vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/arn_lookup.go
generated
vendored
Normal file
@@ -0,0 +1,73 @@
|
||||
package s3shared
|
||||
|
||||
import (
|
||||
"context"
|
||||
"fmt"
|
||||
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
|
||||
"github.com/aws/aws-sdk-go-v2/aws/arn"
|
||||
)
|
||||
|
||||
// ARNLookup is the initial middleware that looks up if an arn is provided.
|
||||
// This middleware is responsible for fetching ARN from a arnable field, and registering the ARN on
|
||||
// middleware context. This middleware must be executed before input validation step or any other
|
||||
// arn processing middleware.
|
||||
type ARNLookup struct {
|
||||
|
||||
// GetARNValue takes in a input interface and returns a ptr to string and a bool
|
||||
GetARNValue func(interface{}) (*string, bool)
|
||||
}
|
||||
|
||||
// ID for the middleware
|
||||
func (m *ARNLookup) ID() string {
|
||||
return "S3Shared:ARNLookup"
|
||||
}
|
||||
|
||||
// HandleInitialize handles the behavior of this initialize step
|
||||
func (m *ARNLookup) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
|
||||
out middleware.InitializeOutput, metadata middleware.Metadata, err error,
|
||||
) {
|
||||
// check if GetARNValue is supported
|
||||
if m.GetARNValue == nil {
|
||||
return next.HandleInitialize(ctx, in)
|
||||
}
|
||||
|
||||
// check is input resource is an ARN; if not go to next
|
||||
v, ok := m.GetARNValue(in.Parameters)
|
||||
if !ok || v == nil || !arn.IsARN(*v) {
|
||||
return next.HandleInitialize(ctx, in)
|
||||
}
|
||||
|
||||
// if ARN process ResourceRequest and put it on ctx
|
||||
av, err := arn.Parse(*v)
|
||||
if err != nil {
|
||||
return out, metadata, fmt.Errorf("error parsing arn: %w", err)
|
||||
}
|
||||
// set parsed arn on context
|
||||
ctx = setARNResourceOnContext(ctx, av)
|
||||
|
||||
return next.HandleInitialize(ctx, in)
|
||||
}
|
||||
|
||||
// arnResourceKey is the key set on context used to identify, retrive an ARN resource
|
||||
// if present on the context.
|
||||
type arnResourceKey struct{}
|
||||
|
||||
// SetARNResourceOnContext sets the S3 ARN on the context.
|
||||
//
|
||||
// Scoped to stack values. Use github.com/aws/smithy-go/middleware#ClearStackValues
|
||||
// to clear all stack values.
|
||||
func setARNResourceOnContext(ctx context.Context, value arn.ARN) context.Context {
|
||||
return middleware.WithStackValue(ctx, arnResourceKey{}, value)
|
||||
}
|
||||
|
||||
// GetARNResourceFromContext returns an ARN from context and a bool indicating
|
||||
// presence of ARN on ctx.
|
||||
//
|
||||
// Scoped to stack values. Use github.com/aws/smithy-go/middleware#ClearStackValues
|
||||
// to clear all stack values.
|
||||
func GetARNResourceFromContext(ctx context.Context) (arn.ARN, bool) {
|
||||
v, ok := middleware.GetStackValue(ctx, arnResourceKey{}).(arn.ARN)
|
||||
return v, ok
|
||||
}
|
||||
22
vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/config/config.go
generated
vendored
Normal file
22
vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/config/config.go
generated
vendored
Normal file
@@ -0,0 +1,22 @@
|
||||
package config
|
||||
|
||||
import "context"
|
||||
|
||||
// UseARNRegionProvider is an interface for retrieving external configuration value for UseARNRegion
|
||||
type UseARNRegionProvider interface {
|
||||
GetS3UseARNRegion(ctx context.Context) (value bool, found bool, err error)
|
||||
}
|
||||
|
||||
// ResolveUseARNRegion extracts the first instance of a UseARNRegion from the config slice.
|
||||
// Additionally returns a boolean to indicate if the value was found in provided configs, and error if one is encountered.
|
||||
func ResolveUseARNRegion(ctx context.Context, configs []interface{}) (value bool, found bool, err error) {
|
||||
for _, cfg := range configs {
|
||||
if p, ok := cfg.(UseARNRegionProvider); ok {
|
||||
value, found, err = p.GetS3UseARNRegion(ctx)
|
||||
if err != nil || found {
|
||||
break
|
||||
}
|
||||
}
|
||||
}
|
||||
return
|
||||
}
|
||||
183
vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/endpoint_error.go
generated
vendored
Normal file
183
vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/endpoint_error.go
generated
vendored
Normal file
@@ -0,0 +1,183 @@
|
||||
package s3shared
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
|
||||
"github.com/aws/aws-sdk-go-v2/service/internal/s3shared/arn"
|
||||
)
|
||||
|
||||
// TODO: fix these error statements to be relevant to v2 sdk
|
||||
|
||||
const (
|
||||
invalidARNErrorErrCode = "InvalidARNError"
|
||||
configurationErrorErrCode = "ConfigurationError"
|
||||
)
|
||||
|
||||
// InvalidARNError denotes the error for Invalid ARN
|
||||
type InvalidARNError struct {
|
||||
message string
|
||||
resource arn.Resource
|
||||
origErr error
|
||||
}
|
||||
|
||||
// Error returns the InvalidARN error string
|
||||
func (e InvalidARNError) Error() string {
|
||||
var extra string
|
||||
if e.resource != nil {
|
||||
extra = "ARN: " + e.resource.String()
|
||||
}
|
||||
msg := invalidARNErrorErrCode + " : " + e.message
|
||||
if extra != "" {
|
||||
msg = msg + "\n\t" + extra
|
||||
}
|
||||
|
||||
return msg
|
||||
}
|
||||
|
||||
// OrigErr is the original error wrapped by Invalid ARN Error
|
||||
func (e InvalidARNError) Unwrap() error {
|
||||
return e.origErr
|
||||
}
|
||||
|
||||
// NewInvalidARNError denotes invalid arn error
|
||||
func NewInvalidARNError(resource arn.Resource, err error) InvalidARNError {
|
||||
return InvalidARNError{
|
||||
message: "invalid ARN",
|
||||
origErr: err,
|
||||
resource: resource,
|
||||
}
|
||||
}
|
||||
|
||||
// NewInvalidARNWithUnsupportedPartitionError ARN not supported for the target partition
|
||||
func NewInvalidARNWithUnsupportedPartitionError(resource arn.Resource, err error) InvalidARNError {
|
||||
return InvalidARNError{
|
||||
message: "resource ARN not supported for the target ARN partition",
|
||||
origErr: err,
|
||||
resource: resource,
|
||||
}
|
||||
}
|
||||
|
||||
// NewInvalidARNWithFIPSError ARN not supported for FIPS region
|
||||
//
|
||||
// Deprecated: FIPS will not appear in the ARN region component.
|
||||
func NewInvalidARNWithFIPSError(resource arn.Resource, err error) InvalidARNError {
|
||||
return InvalidARNError{
|
||||
message: "resource ARN not supported for FIPS region",
|
||||
resource: resource,
|
||||
origErr: err,
|
||||
}
|
||||
}
|
||||
|
||||
// ConfigurationError is used to denote a client configuration error
|
||||
type ConfigurationError struct {
|
||||
message string
|
||||
resource arn.Resource
|
||||
clientPartitionID string
|
||||
clientRegion string
|
||||
origErr error
|
||||
}
|
||||
|
||||
// Error returns the Configuration error string
|
||||
func (e ConfigurationError) Error() string {
|
||||
extra := fmt.Sprintf("ARN: %s, client partition: %s, client region: %s",
|
||||
e.resource, e.clientPartitionID, e.clientRegion)
|
||||
|
||||
msg := configurationErrorErrCode + " : " + e.message
|
||||
if extra != "" {
|
||||
msg = msg + "\n\t" + extra
|
||||
}
|
||||
return msg
|
||||
}
|
||||
|
||||
// OrigErr is the original error wrapped by Configuration Error
|
||||
func (e ConfigurationError) Unwrap() error {
|
||||
return e.origErr
|
||||
}
|
||||
|
||||
// NewClientPartitionMismatchError stub
|
||||
func NewClientPartitionMismatchError(resource arn.Resource, clientPartitionID, clientRegion string, err error) ConfigurationError {
|
||||
return ConfigurationError{
|
||||
message: "client partition does not match provided ARN partition",
|
||||
origErr: err,
|
||||
resource: resource,
|
||||
clientPartitionID: clientPartitionID,
|
||||
clientRegion: clientRegion,
|
||||
}
|
||||
}
|
||||
|
||||
// NewClientRegionMismatchError denotes cross region access error
|
||||
func NewClientRegionMismatchError(resource arn.Resource, clientPartitionID, clientRegion string, err error) ConfigurationError {
|
||||
return ConfigurationError{
|
||||
message: "client region does not match provided ARN region",
|
||||
origErr: err,
|
||||
resource: resource,
|
||||
clientPartitionID: clientPartitionID,
|
||||
clientRegion: clientRegion,
|
||||
}
|
||||
}
|
||||
|
||||
// NewFailedToResolveEndpointError denotes endpoint resolving error
|
||||
func NewFailedToResolveEndpointError(resource arn.Resource, clientPartitionID, clientRegion string, err error) ConfigurationError {
|
||||
return ConfigurationError{
|
||||
message: "endpoint resolver failed to find an endpoint for the provided ARN region",
|
||||
origErr: err,
|
||||
resource: resource,
|
||||
clientPartitionID: clientPartitionID,
|
||||
clientRegion: clientRegion,
|
||||
}
|
||||
}
|
||||
|
||||
// NewClientConfiguredForFIPSError denotes client config error for unsupported cross region FIPS access
|
||||
func NewClientConfiguredForFIPSError(resource arn.Resource, clientPartitionID, clientRegion string, err error) ConfigurationError {
|
||||
return ConfigurationError{
|
||||
message: "client configured for fips but cross-region resource ARN provided",
|
||||
origErr: err,
|
||||
resource: resource,
|
||||
clientPartitionID: clientPartitionID,
|
||||
clientRegion: clientRegion,
|
||||
}
|
||||
}
|
||||
|
||||
// NewFIPSConfigurationError denotes a configuration error when a client or request is configured for FIPS
|
||||
func NewFIPSConfigurationError(resource arn.Resource, clientPartitionID, clientRegion string, err error) ConfigurationError {
|
||||
return ConfigurationError{
|
||||
message: "use of ARN is not supported when client or request is configured for FIPS",
|
||||
origErr: err,
|
||||
resource: resource,
|
||||
clientPartitionID: clientPartitionID,
|
||||
clientRegion: clientRegion,
|
||||
}
|
||||
}
|
||||
|
||||
// NewClientConfiguredForAccelerateError denotes client config error for unsupported S3 accelerate
|
||||
func NewClientConfiguredForAccelerateError(resource arn.Resource, clientPartitionID, clientRegion string, err error) ConfigurationError {
|
||||
return ConfigurationError{
|
||||
message: "client configured for S3 Accelerate but is not supported with resource ARN",
|
||||
origErr: err,
|
||||
resource: resource,
|
||||
clientPartitionID: clientPartitionID,
|
||||
clientRegion: clientRegion,
|
||||
}
|
||||
}
|
||||
|
||||
// NewClientConfiguredForCrossRegionFIPSError denotes client config error for unsupported cross region FIPS request
|
||||
func NewClientConfiguredForCrossRegionFIPSError(resource arn.Resource, clientPartitionID, clientRegion string, err error) ConfigurationError {
|
||||
return ConfigurationError{
|
||||
message: "client configured for FIPS with cross-region enabled but is supported with cross-region resource ARN",
|
||||
origErr: err,
|
||||
resource: resource,
|
||||
clientPartitionID: clientPartitionID,
|
||||
clientRegion: clientRegion,
|
||||
}
|
||||
}
|
||||
|
||||
// NewClientConfiguredForDualStackError denotes client config error for unsupported S3 Dual-stack
|
||||
func NewClientConfiguredForDualStackError(resource arn.Resource, clientPartitionID, clientRegion string, err error) ConfigurationError {
|
||||
return ConfigurationError{
|
||||
message: "client configured for S3 Dual-stack but is not supported with resource ARN",
|
||||
origErr: err,
|
||||
resource: resource,
|
||||
clientPartitionID: clientPartitionID,
|
||||
clientRegion: clientRegion,
|
||||
}
|
||||
}
|
||||
6
vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/go_module_metadata.go
generated
vendored
Normal file
6
vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/go_module_metadata.go
generated
vendored
Normal file
@@ -0,0 +1,6 @@
|
||||
// Code generated by internal/repotools/cmd/updatemodulemeta DO NOT EDIT.
|
||||
|
||||
package s3shared
|
||||
|
||||
// goModuleVersion is the tagged release for this module
|
||||
const goModuleVersion = "1.7.1"
|
||||
29
vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/host_id.go
generated
vendored
Normal file
29
vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/host_id.go
generated
vendored
Normal file
@@ -0,0 +1,29 @@
|
||||
package s3shared
|
||||
|
||||
import (
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
)
|
||||
|
||||
// hostID is used to retrieve host id from response metadata
|
||||
type hostID struct {
|
||||
}
|
||||
|
||||
// SetHostIDMetadata sets the provided host id over middleware metadata
|
||||
func SetHostIDMetadata(metadata *middleware.Metadata, id string) {
|
||||
metadata.Set(hostID{}, id)
|
||||
}
|
||||
|
||||
// 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) {
|
||||
if !metadata.Has(hostID{}) {
|
||||
return "", false
|
||||
}
|
||||
|
||||
v, ok := metadata.Get(hostID{}).(string)
|
||||
if !ok {
|
||||
return "", true
|
||||
}
|
||||
return v, true
|
||||
}
|
||||
28
vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/metadata.go
generated
vendored
Normal file
28
vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/metadata.go
generated
vendored
Normal file
@@ -0,0 +1,28 @@
|
||||
package s3shared
|
||||
|
||||
import (
|
||||
"context"
|
||||
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
)
|
||||
|
||||
// clonedInputKey used to denote if request input was cloned.
|
||||
type clonedInputKey struct{}
|
||||
|
||||
// SetClonedInputKey sets a key on context to denote input was cloned previously.
|
||||
//
|
||||
// Scoped to stack values. Use github.com/aws/smithy-go/middleware#ClearStackValues
|
||||
// to clear all stack values.
|
||||
func SetClonedInputKey(ctx context.Context, value bool) context.Context {
|
||||
return middleware.WithStackValue(ctx, clonedInputKey{}, value)
|
||||
}
|
||||
|
||||
// IsClonedInput retrieves if context key for cloned input was set.
|
||||
// If set, we can infer that the reuqest input was cloned previously.
|
||||
//
|
||||
// Scoped to stack values. Use github.com/aws/smithy-go/middleware#ClearStackValues
|
||||
// to clear all stack values.
|
||||
func IsClonedInput(ctx context.Context) bool {
|
||||
v, _ := middleware.GetStackValue(ctx, clonedInputKey{}).(bool)
|
||||
return v
|
||||
}
|
||||
52
vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/metadata_retriever.go
generated
vendored
Normal file
52
vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/metadata_retriever.go
generated
vendored
Normal file
@@ -0,0 +1,52 @@
|
||||
package s3shared
|
||||
|
||||
import (
|
||||
"context"
|
||||
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
const metadataRetrieverID = "S3MetadataRetriever"
|
||||
|
||||
// AddMetadataRetrieverMiddleware adds request id, host id retriever middleware
|
||||
func AddMetadataRetrieverMiddleware(stack *middleware.Stack) error {
|
||||
// add metadata retriever middleware before operation deserializers so that it can retrieve metadata such as
|
||||
// host id, request id from response header returned by operation deserializers
|
||||
return stack.Deserialize.Insert(&metadataRetriever{}, "OperationDeserializer", middleware.Before)
|
||||
}
|
||||
|
||||
type metadataRetriever struct {
|
||||
}
|
||||
|
||||
// ID returns the middleware identifier
|
||||
func (m *metadataRetriever) ID() string {
|
||||
return metadataRetrieverID
|
||||
}
|
||||
|
||||
func (m *metadataRetriever) 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)
|
||||
|
||||
resp, ok := out.RawResponse.(*smithyhttp.Response)
|
||||
if !ok {
|
||||
// No raw response to wrap with.
|
||||
return out, metadata, err
|
||||
}
|
||||
|
||||
// check for header for Request id
|
||||
if v := resp.Header.Get("X-Amz-Request-Id"); len(v) != 0 {
|
||||
// set reqID on metadata for successful responses.
|
||||
awsmiddleware.SetRequestIDMetadata(&metadata, v)
|
||||
}
|
||||
|
||||
// look up host-id
|
||||
if v := resp.Header.Get("X-Amz-Id-2"); len(v) != 0 {
|
||||
// set reqID on metadata for successful responses.
|
||||
SetHostIDMetadata(&metadata, v)
|
||||
}
|
||||
|
||||
return out, metadata, err
|
||||
}
|
||||
77
vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/resource_request.go
generated
vendored
Normal file
77
vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/resource_request.go
generated
vendored
Normal file
@@ -0,0 +1,77 @@
|
||||
package s3shared
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"strings"
|
||||
|
||||
awsarn "github.com/aws/aws-sdk-go-v2/aws/arn"
|
||||
"github.com/aws/aws-sdk-go-v2/service/internal/s3shared/arn"
|
||||
)
|
||||
|
||||
// ResourceRequest represents an ARN resource and api request metadata
|
||||
type ResourceRequest struct {
|
||||
Resource arn.Resource
|
||||
// RequestRegion is the region configured on the request config
|
||||
RequestRegion string
|
||||
|
||||
// SigningRegion is the signing region resolved for the request
|
||||
SigningRegion string
|
||||
|
||||
// PartitionID is the resolved partition id for the provided request region
|
||||
PartitionID string
|
||||
|
||||
// UseARNRegion indicates if client should use the region provided in an ARN resource
|
||||
UseARNRegion bool
|
||||
}
|
||||
|
||||
// ARN returns the resource ARN
|
||||
func (r ResourceRequest) ARN() awsarn.ARN {
|
||||
return r.Resource.GetARN()
|
||||
}
|
||||
|
||||
// UseFips returns true if request config region is FIPS region.
|
||||
func (r ResourceRequest) UseFips() bool {
|
||||
return IsFIPS(r.RequestRegion)
|
||||
}
|
||||
|
||||
// ResourceConfiguredForFIPS returns true if resource ARNs region is FIPS
|
||||
//
|
||||
// Deprecated: FIPS will not be present in the ARN region
|
||||
func (r ResourceRequest) ResourceConfiguredForFIPS() bool {
|
||||
return IsFIPS(r.ARN().Region)
|
||||
}
|
||||
|
||||
// AllowCrossRegion returns a bool value to denote if S3UseARNRegion flag is set
|
||||
func (r ResourceRequest) AllowCrossRegion() bool {
|
||||
return r.UseARNRegion
|
||||
}
|
||||
|
||||
// IsCrossPartition returns true if request is configured for region of another partition, than
|
||||
// the partition that resource ARN region resolves to. IsCrossPartition will not return an error,
|
||||
// if request is not configured with a specific partition id. This might happen if customer provides
|
||||
// custom endpoint url, but does not associate a partition id with it.
|
||||
func (r ResourceRequest) IsCrossPartition() (bool, error) {
|
||||
rv := r.PartitionID
|
||||
if len(rv) == 0 {
|
||||
return false, nil
|
||||
}
|
||||
|
||||
av := r.Resource.GetARN().Partition
|
||||
if len(av) == 0 {
|
||||
return false, fmt.Errorf("no partition id for provided ARN")
|
||||
}
|
||||
|
||||
return !strings.EqualFold(rv, av), nil
|
||||
}
|
||||
|
||||
// IsCrossRegion returns true if request signing region is not same as arn region
|
||||
func (r ResourceRequest) IsCrossRegion() bool {
|
||||
v := r.SigningRegion
|
||||
return !strings.EqualFold(v, r.Resource.GetARN().Region)
|
||||
}
|
||||
|
||||
// IsFIPS returns true if region is a fips pseudo-region
|
||||
func IsFIPS(region string) bool {
|
||||
return strings.HasPrefix(region, "fips-") ||
|
||||
strings.HasSuffix(region, "-fips")
|
||||
}
|
||||
33
vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/response_error.go
generated
vendored
Normal file
33
vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/response_error.go
generated
vendored
Normal file
@@ -0,0 +1,33 @@
|
||||
package s3shared
|
||||
|
||||
import (
|
||||
"errors"
|
||||
"fmt"
|
||||
|
||||
awshttp "github.com/aws/aws-sdk-go-v2/aws/transport/http"
|
||||
)
|
||||
|
||||
// ResponseError provides the HTTP centric error type wrapping the underlying error
|
||||
// with the HTTP response value and the deserialized RequestID.
|
||||
type ResponseError struct {
|
||||
*awshttp.ResponseError
|
||||
|
||||
// HostID associated with response error
|
||||
HostID string
|
||||
}
|
||||
|
||||
// ServiceHostID returns the host id associated with Response Error
|
||||
func (e *ResponseError) ServiceHostID() string { return e.HostID }
|
||||
|
||||
// Error returns the formatted error
|
||||
func (e *ResponseError) Error() string {
|
||||
return fmt.Sprintf(
|
||||
"https response error StatusCode: %d, RequestID: %s, HostID: %s, %v",
|
||||
e.Response.StatusCode, e.RequestID, e.HostID, e.Err)
|
||||
}
|
||||
|
||||
// As populates target and returns true if the type of target is a error type that
|
||||
// the ResponseError embeds, (e.g.S3 HTTP ResponseError)
|
||||
func (e *ResponseError) As(target interface{}) bool {
|
||||
return errors.As(e.ResponseError, target)
|
||||
}
|
||||
60
vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/response_error_middleware.go
generated
vendored
Normal file
60
vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/response_error_middleware.go
generated
vendored
Normal file
@@ -0,0 +1,60 @@
|
||||
package s3shared
|
||||
|
||||
import (
|
||||
"context"
|
||||
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
awshttp "github.com/aws/aws-sdk-go-v2/aws/transport/http"
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
)
|
||||
|
||||
// AddResponseErrorMiddleware adds response error wrapper middleware
|
||||
func AddResponseErrorMiddleware(stack *middleware.Stack) error {
|
||||
// add error wrapper middleware before request id retriever middleware so that it can wrap the error response
|
||||
// returned by operation deserializers
|
||||
return stack.Deserialize.Insert(&errorWrapper{}, metadataRetrieverID, middleware.Before)
|
||||
}
|
||||
|
||||
type errorWrapper struct {
|
||||
}
|
||||
|
||||
// ID returns the middleware identifier
|
||||
func (m *errorWrapper) ID() string {
|
||||
return "ResponseErrorWrapper"
|
||||
}
|
||||
|
||||
func (m *errorWrapper) 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 {
|
||||
// Nothing to do when there is no error.
|
||||
return out, metadata, err
|
||||
}
|
||||
|
||||
resp, ok := out.RawResponse.(*smithyhttp.Response)
|
||||
if !ok {
|
||||
// No raw response to wrap with.
|
||||
return out, metadata, err
|
||||
}
|
||||
|
||||
// look for request id in metadata
|
||||
reqID, _ := awsmiddleware.GetRequestIDMetadata(metadata)
|
||||
// look for host id in metadata
|
||||
hostID, _ := GetHostIDMetadata(metadata)
|
||||
|
||||
// Wrap the returned smithy error with the request id retrieved from the metadata
|
||||
err = &ResponseError{
|
||||
ResponseError: &awshttp.ResponseError{
|
||||
ResponseError: &smithyhttp.ResponseError{
|
||||
Response: resp,
|
||||
Err: err,
|
||||
},
|
||||
RequestID: reqID,
|
||||
},
|
||||
HostID: hostID,
|
||||
}
|
||||
|
||||
return out, metadata, err
|
||||
}
|
||||
76
vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/update_endpoint.go
generated
vendored
Normal file
76
vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/update_endpoint.go
generated
vendored
Normal file
@@ -0,0 +1,76 @@
|
||||
package s3shared
|
||||
|
||||
import (
|
||||
"context"
|
||||
"fmt"
|
||||
"strings"
|
||||
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
smithyhttp "github.com/aws/smithy-go/transport/http"
|
||||
|
||||
awsmiddle "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
)
|
||||
|
||||
// EnableDualstack represents middleware struct for enabling dualstack support
|
||||
type EnableDualstack struct {
|
||||
// UseDualstack indicates if dualstack endpoint resolving is to be enabled
|
||||
UseDualstack bool
|
||||
|
||||
// DefaultServiceID is the service id prefix used in endpoint resolving
|
||||
// by default service-id is 's3' and 's3-control' for service s3, s3control.
|
||||
DefaultServiceID string
|
||||
}
|
||||
|
||||
// ID returns the middleware ID.
|
||||
func (*EnableDualstack) ID() string {
|
||||
return "EnableDualstack"
|
||||
}
|
||||
|
||||
// HandleSerialize handles serializer middleware behavior when middleware is executed
|
||||
func (u *EnableDualstack) HandleSerialize(
|
||||
ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler,
|
||||
) (
|
||||
out middleware.SerializeOutput, metadata middleware.Metadata, err error,
|
||||
) {
|
||||
|
||||
// check for host name immutable property
|
||||
if smithyhttp.GetHostnameImmutable(ctx) {
|
||||
return next.HandleSerialize(ctx, in)
|
||||
}
|
||||
|
||||
serviceID := awsmiddle.GetServiceID(ctx)
|
||||
|
||||
// s3-control may be represented as `S3 Control` as in model
|
||||
if serviceID == "S3 Control" {
|
||||
serviceID = "s3-control"
|
||||
}
|
||||
|
||||
if len(serviceID) == 0 {
|
||||
// default service id
|
||||
serviceID = u.DefaultServiceID
|
||||
}
|
||||
|
||||
req, ok := in.Request.(*smithyhttp.Request)
|
||||
if !ok {
|
||||
return out, metadata, fmt.Errorf("unknown request type %T", req)
|
||||
}
|
||||
|
||||
if u.UseDualstack {
|
||||
parts := strings.Split(req.URL.Host, ".")
|
||||
if len(parts) < 3 {
|
||||
return out, metadata, fmt.Errorf("unable to update endpoint host for dualstack, hostname invalid, %s", req.URL.Host)
|
||||
}
|
||||
|
||||
for i := 0; i+1 < len(parts); i++ {
|
||||
if strings.EqualFold(parts[i], serviceID) {
|
||||
parts[i] = parts[i] + ".dualstack"
|
||||
break
|
||||
}
|
||||
}
|
||||
|
||||
// construct the url host
|
||||
req.URL.Host = strings.Join(parts, ".")
|
||||
}
|
||||
|
||||
return next.HandleSerialize(ctx, in)
|
||||
}
|
||||
89
vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/xml_utils.go
generated
vendored
Normal file
89
vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/xml_utils.go
generated
vendored
Normal file
@@ -0,0 +1,89 @@
|
||||
package s3shared
|
||||
|
||||
import (
|
||||
"encoding/xml"
|
||||
"fmt"
|
||||
"io"
|
||||
"net/http"
|
||||
"strings"
|
||||
)
|
||||
|
||||
// ErrorComponents represents the error response fields
|
||||
// that will be deserialized from an xml error response body
|
||||
type ErrorComponents struct {
|
||||
Code string `xml:"Code"`
|
||||
Message string `xml:"Message"`
|
||||
RequestID string `xml:"RequestId"`
|
||||
HostID string `xml:"HostId"`
|
||||
}
|
||||
|
||||
// GetUnwrappedErrorResponseComponents returns the error fields from an xml error response body
|
||||
func GetUnwrappedErrorResponseComponents(r io.Reader) (ErrorComponents, error) {
|
||||
var errComponents ErrorComponents
|
||||
if err := xml.NewDecoder(r).Decode(&errComponents); err != nil && err != io.EOF {
|
||||
return ErrorComponents{}, fmt.Errorf("error while deserializing xml error response : %w", err)
|
||||
}
|
||||
return errComponents, nil
|
||||
}
|
||||
|
||||
// GetWrappedErrorResponseComponents returns the error fields from an xml error response body
|
||||
// in which error code, and message are wrapped by a <Error> tag
|
||||
func GetWrappedErrorResponseComponents(r io.Reader) (ErrorComponents, error) {
|
||||
var errComponents struct {
|
||||
Code string `xml:"Error>Code"`
|
||||
Message string `xml:"Error>Message"`
|
||||
RequestID string `xml:"RequestId"`
|
||||
HostID string `xml:"HostId"`
|
||||
}
|
||||
|
||||
if err := xml.NewDecoder(r).Decode(&errComponents); err != nil && err != io.EOF {
|
||||
return ErrorComponents{}, fmt.Errorf("error while deserializing xml error response : %w", err)
|
||||
}
|
||||
|
||||
return ErrorComponents{
|
||||
Code: errComponents.Code,
|
||||
Message: errComponents.Message,
|
||||
RequestID: errComponents.RequestID,
|
||||
HostID: errComponents.HostID,
|
||||
}, nil
|
||||
}
|
||||
|
||||
// GetErrorResponseComponents retrieves error components according to passed in options
|
||||
func GetErrorResponseComponents(r io.Reader, options ErrorResponseDeserializerOptions) (ErrorComponents, error) {
|
||||
var errComponents ErrorComponents
|
||||
var err error
|
||||
|
||||
if options.IsWrappedWithErrorTag {
|
||||
errComponents, err = GetWrappedErrorResponseComponents(r)
|
||||
} else {
|
||||
errComponents, err = GetUnwrappedErrorResponseComponents(r)
|
||||
}
|
||||
|
||||
if err != nil {
|
||||
return ErrorComponents{}, err
|
||||
}
|
||||
|
||||
// If an error code or message is not retrieved, it is derived from the http status code
|
||||
// eg, for S3 service, we derive err code and message, if none is found
|
||||
if options.UseStatusCode && len(errComponents.Code) == 0 &&
|
||||
len(errComponents.Message) == 0 {
|
||||
// derive code and message from status code
|
||||
statusText := http.StatusText(options.StatusCode)
|
||||
errComponents.Code = strings.Replace(statusText, " ", "", -1)
|
||||
errComponents.Message = statusText
|
||||
}
|
||||
return errComponents, nil
|
||||
}
|
||||
|
||||
// ErrorResponseDeserializerOptions represents error response deserializer options for s3 and s3-control service
|
||||
type ErrorResponseDeserializerOptions struct {
|
||||
// UseStatusCode denotes if status code should be used to retrieve error code, msg
|
||||
UseStatusCode bool
|
||||
|
||||
// StatusCode is status code of error response
|
||||
StatusCode int
|
||||
|
||||
//IsWrappedWithErrorTag represents if error response's code, msg is wrapped within an
|
||||
// additional <Error> tag
|
||||
IsWrappedWithErrorTag bool
|
||||
}
|
||||
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,
|
||||
})
|
||||
}
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user