diff options
author | arcadia-devtools <arcadia-devtools@yandex-team.ru> | 2022-03-02 12:50:27 +0300 |
---|---|---|
committer | arcadia-devtools <arcadia-devtools@yandex-team.ru> | 2022-03-02 12:50:27 +0300 |
commit | d0f80d5e60d77854f9d6262a59a7349e2b21f9d2 (patch) | |
tree | 01f1e033ce5519d96b7d6a83718221dcb8021eec /contrib | |
parent | 26286f616cee657612a9d820be6da2cdbd4de0ef (diff) | |
download | ydb-d0f80d5e60d77854f9d6262a59a7349e2b21f9d2.tar.gz |
intermediate changes
ref:40ac71fae6ea311a73473cf4297ca93bf27559c3
Diffstat (limited to 'contrib')
272 files changed, 10180 insertions, 5918 deletions
diff --git a/contrib/libs/aws-sdk-cpp/README.md b/contrib/libs/aws-sdk-cpp/README.md index e2acf6bf35..b80b18c836 100644 --- a/contrib/libs/aws-sdk-cpp/README.md +++ b/contrib/libs/aws-sdk-cpp/README.md @@ -56,56 +56,6 @@ __Jump To:__ cmake <path-to-root-of-this-source-code> -G Xcode -DTARGET_ARCH="APPLE" -DCMAKE_BUILD_TYPE=Debug xcodebuild -target ALL_BUILD ``` - -### Third party dependencies: -Starting from version 1.7.0, we added several third party dependencies, including [`aws-c-common`](https://github.com/awslabs/aws-c-common), [`aws-checksums`](https://github.com/awslabs/aws-checksums) and [`aws-c-event-stream`](https://github.com/awslabs/aws-c-event-stream). By default, they will be built and installed in `<BUILD_DIR>/.deps/install`, and copied to default system directory during SDK installation. You can change the location by specifying `CMAKE_INSTALL_PREFIX`. - -However, if you want to build and install these libraries in custom locations: -1. Download, build and install `aws-c-common`: - ```sh - git clone https://github.com/awslabs/aws-c-common - cd aws-c-common - # checkout to a specific commit id if you want. - git checkout <commit-id> - mkdir build && cd build - # without CMAKE_INSTALL_PREFIX, it will be installed to default system directory. - cmake .. -DCMAKE_INSTALL_PREFIX=<deps-install-dir> <extra-cmake-parameters-here> - make # or MSBuild ALL_BUILD.vcxproj on Windows - make install # or MSBuild INSTALL.vcxproj on Windows - ``` -2. Download, build and install `aws-checksums`: - ```sh - git clone https://github.com/awslabs/aws-checksums - cd aws-checksums - # checkout to a specific commit id if you want - git checkout <commit-id> - mkdir build && cd build - # without CMAKE_INSTALL_PREFIX, it will be installed to default system directory. - cmake .. -DCMAKE_INSTALL_PREFIX=<deps-install-dir> <extra-cmake-parameters-here> - make # or MSBuild ALL_BUILD.vcxproj on Windows - make install # or MSBuild INSTALL.vcxproj on Windows - ``` -3. Download, build and install `aws-c-event-stream`: - ```sh - git clone https://github.com/awslabs/aws-c-event-stream - cd aws-c-event-stream - # checkout to a specific commit id if you want - git checkout <commit-id> - mkdir build && cd build - # aws-c-common and aws-checksums are dependencies of aws-c-event-stream - # without CMAKE_INSTALL_PREFIX, it will be installed to default system directory. - cmake .. -DCMAKE_INSTALL_PREFIX=<deps-install-dir> -DCMAKE_PREFIX_PATH=<deps-install-dir> <extra-cmake-parameters-here> - make # or MSBuild ALL_BUILD.vcxproj on Windows - make install # or MSBuild INSTALL.vcxproj on Windows - ``` -4. Turn off `BUILD_DEPS` when building C++ SDK: - ```sh - cd BUILD_DIR - cmake <path-to-root-of-this-source-code> -DBUILD_DEPS=OFF -DCMAKE_PREFIX_PATH=<deps-install-dir> - ``` -You may also find the following link helpful for including the build in your project: -https://aws.amazon.com/blogs/developer/using-cmake-exports-with-the-aws-sdk-for-c/ - #### Other Dependencies: To compile in Linux, you must have the header files for libcurl, libopenssl. The packages are typically available in your package manager. @@ -147,10 +97,11 @@ For information about maintenance and support for SDK major versions and our und * [AWS SDKs and Tools Version Support Matrix](https://docs.aws.amazon.com/credref/latest/refdocs/version-support-matrix.html) - # Getting Help -The best way to interact with our team is through GitHub. You can [open an issue](https://github.com/aws/aws-sdk-cpp/issues/new/choose) and choose from one of our templates for guidance, bug reports, or feature requests. You may also find help on community resources such as [StackOverFlow](https://stackoverflow.com/questions/tagged/aws-sdk-cpp) with the tag #aws-sdk-cpp or If you have a support plan with [AWS Support](https://aws.amazon.com/premiumsupport/), you can also create a new support case. +The best way to interact with our team is through GitHub. You can [open an issue](https://github.com/aws/aws-sdk-cpp/issues/new/choose) and choose from one of our templates for guidance, bug reports, or feature requests. + +You may also find help on community resources such as [StackOverFlow](https://stackoverflow.com/) with the tag [#aws-sdk-cpp](https://stackoverflow.com/questions/tagged/aws-cli) or on the [AWS Discussion Forum for CPP](https://forums.aws.amazon.com/forum.jspa?forumID=245). If you have a support plan with [AWS Support](https://aws.amazon.com/premiumsupport/), you can also create a new support case. Please make sure to check out our resources too before opening an issue: * Our [Developer Guide](https://docs.aws.amazon.com/sdk-for-cpp/v1/developer-guide/welcome.html) and [API reference](http://sdk.amazonaws.com/cpp/api/LATEST/index.html) @@ -158,6 +109,7 @@ Please make sure to check out our resources too before opening an issue: * Our [Contribute](./CONTRIBUTING.md) guide. * Our [samples repo](https://github.com/awsdocs/aws-doc-sdk-examples/tree/master/cpp). + # Using the SDK and Other Topics * [Using the SDK](./Docs/SDK_usage_guide.md) * [CMake Parameters](./Docs/CMake_Parameters.md) diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/CMakeLists.txt b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/CMakeLists.txt index 3d7f5478bb..46cb712750 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/CMakeLists.txt +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/CMakeLists.txt @@ -17,7 +17,7 @@ target_compile_options(libs-aws-sdk-cpp-aws-cpp-sdk-core PRIVATE -DAWS_IO_USE_IMPORT_EXPORT -DAWS_SDK_VERSION_MAJOR=1 -DAWS_SDK_VERSION_MINOR=8 - -DAWS_SDK_VERSION_PATCH=113 + -DAWS_SDK_VERSION_PATCH=186 -DAWS_USE_EPOLL -DCURL_HAS_H2 -DCURL_HAS_TLS_PROXY @@ -63,6 +63,7 @@ target_sources(libs-aws-sdk-cpp-aws-cpp-sdk-core PRIVATE ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/auth/AWSAuthSignerProvider.cpp ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/auth/AWSCredentialsProvider.cpp ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/auth/AWSCredentialsProviderChain.cpp + ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/auth/SSOCredentialsProvider.cpp ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/auth/STSCredentialsProvider.cpp ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/client/AWSClient.cpp ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/client/AWSErrorMarshaller.cpp @@ -117,6 +118,7 @@ target_sources(libs-aws-sdk-cpp-aws-cpp-sdk-core PRIVATE ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/crypto/EncryptionMaterials.cpp ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/crypto/KeyWrapAlgorithm.cpp ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/crypto/MD5.cpp + ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/crypto/Sha1.cpp ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/crypto/Sha256.cpp ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/crypto/Sha256HMAC.cpp ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/crypto/factory/Factories.cpp diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/include/aws/core/Aws.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/include/aws/core/Aws.h index 4fcdb17779..7c2d7af53f 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/include/aws/core/Aws.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/include/aws/core/Aws.h @@ -97,6 +97,10 @@ namespace Aws */ std::function<std::shared_ptr<Aws::Utils::Crypto::HashFactory>()> md5Factory_create_fn; /** + * If set, this closure will be used to create and install the factory. + */ + std::function<std::shared_ptr<Aws::Utils::Crypto::HashFactory>()> sha1Factory_create_fn; + /** * If set, this closure will be used to create and install the factory. */ std::function<std::shared_ptr<Aws::Utils::Crypto::HashFactory>()> sha256Factory_create_fn; diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/include/aws/core/VersionConfig.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/include/aws/core/VersionConfig.h index 9304d56ee7..fd965734a6 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/include/aws/core/VersionConfig.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/include/aws/core/VersionConfig.h @@ -3,4 +3,4 @@ * SPDX-License-Identifier: Apache-2.0. */ -#define AWS_SDK_VERSION_STRING "1.8.113" +#define AWS_SDK_VERSION_STRING "1.8.186" diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/include/aws/core/auth/SSOCredentialsProvider.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/include/aws/core/auth/SSOCredentialsProvider.h new file mode 100644 index 0000000000..288beccb3b --- /dev/null +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/include/aws/core/auth/SSOCredentialsProvider.h @@ -0,0 +1,48 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + + +#pragma once + +#include <aws/core/Core_EXPORTS.h> +#include <aws/core/auth/AWSCredentialsProvider.h> +#include <memory> + +namespace Aws { + namespace Auth { + /** + * To support usage of SSO credentials + */ + class AWS_CORE_API SSOCredentialsProvider : public AWSCredentialsProvider + { + public: + SSOCredentialsProvider(); + explicit SSOCredentialsProvider(const Aws::String& profile); + /** + * Retrieves the credentials if found, otherwise returns empty credential set. + */ + AWSCredentials GetAWSCredentials() override; + + private: + Aws::UniquePtr<Aws::Internal::SSOCredentialsClient> m_client; + Aws::Auth::AWSCredentials m_credentials; + + // Profile description variables + Aws::String m_profileToUse; + + // The AWS account ID that temporary AWS credentials are resolved for. + Aws::String m_ssoAccountId; + // The AWS region where the SSO directory for the given sso_start_url is hosted. + // This is independent of the general region configuration and MUST NOT be conflated. + Aws::String m_ssoRegion; + // The expiration time of the accessToken. + Aws::Utils::DateTime m_expiresAt; + + void Reload() override; + void RefreshIfExpired(); + Aws::String LoadAccessTokenFile(const Aws::String& ssoAccessTokenPath); + }; + } // namespace Auth +} // namespace Aws diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/include/aws/core/client/AWSError.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/include/aws/core/client/AWSError.h index c88c1bdd5d..39f033c3fc 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/include/aws/core/client/AWSError.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/include/aws/core/client/AWSError.h @@ -56,8 +56,8 @@ namespace Aws m_errorType(errorType), m_responseCode(Aws::Http::HttpResponseCode::REQUEST_NOT_MADE), m_isRetryable(isRetryable), m_errorPayloadType(ErrorPayloadType::NOT_SET) {} - AWSError(AWSError&& rhs) = default; - AWSError(const AWSError& rhs) = default; + AWSError(AWSError&&) = default; + AWSError(const AWSError&) = default; template<typename OTHER_ERROR_TYPE> AWSError(AWSError<OTHER_ERROR_TYPE>&& rhs) : diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/include/aws/core/client/ClientConfiguration.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/include/aws/core/client/ClientConfiguration.h index ba54baaa83..69c2166a6e 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/include/aws/core/client/ClientConfiguration.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/include/aws/core/client/ClientConfiguration.h @@ -10,6 +10,7 @@ #include <aws/core/Region.h> #include <aws/core/utils/memory/stl/AWSString.h> #include <aws/core/http/HttpTypes.h> +#include <aws/core/utils/Array.h> #include <memory> namespace Aws @@ -165,6 +166,10 @@ namespace Aws */ Aws::String proxySSLKeyPassword; /** + * Calls to hosts in this vector will not use proxy configuration + */ + Aws::Utils::Array<Aws::String> nonProxyHosts; + /** * Threading Executor implementation. Default uses std::thread::detach() */ std::shared_ptr<Aws::Utils::Threading::Executor> executor; diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/include/aws/core/config/AWSProfileConfigLoader.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/include/aws/core/config/AWSProfileConfigLoader.h index 84c62713da..ee467c5640 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/include/aws/core/config/AWSProfileConfigLoader.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/include/aws/core/config/AWSProfileConfigLoader.h @@ -36,6 +36,14 @@ namespace Aws inline void SetRoleArn(const Aws::String& value) { m_roleArn = value; } inline const Aws::String& GetExternalId() const { return m_externalId; } inline void SetExternalId(const Aws::String& value) { m_externalId = value; } + inline const Aws::String& GetSsoStartUrl() const { return m_ssoStartUrl; } + inline void SetSsoStartUrl(const Aws::String& value) { m_ssoStartUrl = value; } + inline const Aws::String& GetSsoRegion() const { return m_ssoRegion; } + inline void SetSsoRegion(const Aws::String& value) { m_ssoRegion = value; } + inline const Aws::String& GetSsoAccountId() const { return m_ssoAccountId; } + inline void SetSsoAccountId(const Aws::String& value) { m_ssoAccountId = value; } + inline const Aws::String& GetSsoRoleName() const { return m_ssoRoleName; } + inline void SetSsoRoleName(const Aws::String& value) { m_ssoRoleName = value; } inline const Aws::String& GetSourceProfile() const { return m_sourceProfile; } inline void SetSourceProfile(const Aws::String& value ) { m_sourceProfile = value; } inline const Aws::String& GetCredentialProcess() const { return m_credentialProcess; } @@ -56,6 +64,10 @@ namespace Aws Aws::String m_externalId; Aws::String m_sourceProfile; Aws::String m_credentialProcess; + Aws::String m_ssoStartUrl; + Aws::String m_ssoRegion; + Aws::String m_ssoAccountId; + Aws::String m_ssoRoleName; Aws::Map<Aws::String, Aws::String> m_allKeyValPairs; }; @@ -156,7 +168,6 @@ namespace Aws protected: virtual bool LoadInternal() override; - private: std::shared_ptr<Aws::Internal::EC2MetadataClient> m_ec2metadataClient; }; diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/include/aws/core/http/curl/CurlHttpClient.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/include/aws/core/http/curl/CurlHttpClient.h index 31f96befd5..d706405add 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/include/aws/core/http/curl/CurlHttpClient.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/include/aws/core/http/curl/CurlHttpClient.h @@ -60,6 +60,7 @@ private: Aws::String m_proxySSLKeyType; Aws::String m_proxyKeyPasswd; unsigned m_proxyPort; + Aws::String m_nonProxyHosts; bool m_verifySSL; Aws::String m_caPath; Aws::String m_caFile; diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/include/aws/core/internal/AWSHttpResourceClient.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/include/aws/core/internal/AWSHttpResourceClient.h index c58a1b70bf..bc28cd8861 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/include/aws/core/internal/AWSHttpResourceClient.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/include/aws/core/internal/AWSHttpResourceClient.h @@ -221,5 +221,36 @@ namespace Aws private: Aws::String m_endpoint; }; + + /** + * To support retrieving credentials from SSO. + */ + class AWS_CORE_API SSOCredentialsClient : public AWSHttpResourceClient + { + public: + SSOCredentialsClient(const Client::ClientConfiguration& clientConfiguration); + + SSOCredentialsClient& operator =(SSOCredentialsClient& rhs) = delete; + SSOCredentialsClient(const SSOCredentialsClient& rhs) = delete; + SSOCredentialsClient& operator =(SSOCredentialsClient&& rhs) = delete; + SSOCredentialsClient(SSOCredentialsClient&& rhs) = delete; + + struct SSOGetRoleCredentialsRequest + { + Aws::String m_ssoAccountId; + Aws::String m_ssoRoleName; + Aws::String m_accessToken; + }; + + struct SSOGetRoleCredentialsResult + { + Aws::Auth::AWSCredentials creds; + }; + + SSOGetRoleCredentialsResult GetSSOCredentials(const SSOGetRoleCredentialsRequest& request); + + private: + Aws::String m_endpoint; + }; } // namespace Internal } // namespace Aws diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/include/aws/core/utils/HashingUtils.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/include/aws/core/utils/HashingUtils.h index 48c04daf59..465c9827b2 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/include/aws/core/utils/HashingUtils.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/include/aws/core/utils/HashingUtils.h @@ -68,6 +68,16 @@ namespace Aws static ByteBuffer CalculateSHA256TreeHash(Aws::IOStream& stream); /** + * Calculates a SHA1 Hash digest (not hex encoded) + */ + static ByteBuffer CalculateSHA1(const Aws::String& str); + + /** + * Calculates a SHA1 Hash digest on a stream (the entire stream is read, not hex encoded.) + */ + static ByteBuffer CalculateSHA1(Aws::IOStream& stream); + + /** * Calculates a MD5 Hash value */ static ByteBuffer CalculateMD5(const Aws::String& str); diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/include/aws/core/utils/crypto/Factories.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/include/aws/core/utils/crypto/Factories.h index b4c17b2a96..a219d3eae5 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/include/aws/core/utils/crypto/Factories.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/include/aws/core/utils/crypto/Factories.h @@ -44,6 +44,10 @@ namespace Aws */ AWS_CORE_API std::shared_ptr<Hash> CreateMD5Implementation(); /** + * Create a Sha1 Hash provider + */ + AWS_CORE_API std::shared_ptr<Hash> CreateSha1Implementation(); + /** * Create a Sha256 Hash provider */ AWS_CORE_API std::shared_ptr<Hash> CreateSha256Implementation(); @@ -114,6 +118,10 @@ namespace Aws */ AWS_CORE_API void SetMD5Factory(const std::shared_ptr<HashFactory>& factory); /** + * Set the global factory for Sha1 Hash providers + */ + AWS_CORE_API void SetSha1Factory(const std::shared_ptr<HashFactory>& factory); + /** * Set the global factory for Sha256 Hash providers */ AWS_CORE_API void SetSha256Factory(const std::shared_ptr<HashFactory>& factory); diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/include/aws/core/utils/crypto/Sha1.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/include/aws/core/utils/crypto/Sha1.h new file mode 100644 index 0000000000..5d9d44f867 --- /dev/null +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/include/aws/core/utils/crypto/Sha1.h @@ -0,0 +1,65 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +/* +* Interface for Sha1 encryptor +*/ +#pragma once + +#ifdef __APPLE__ + +#ifdef __clang__ +#pragma clang diagnostic ignored "-Wdeprecated-declarations" +#endif // __clang__ + +#ifdef __GNUC__ +#pragma GCC diagnostic ignored "-Wdeprecated-declarations" +#endif // __GNUC__ + +#endif // __APPLE__ + +#include <aws/core/Core_EXPORTS.h> + +#include <aws/core/utils/crypto/Hash.h> + +namespace Aws +{ + namespace Utils + { + namespace Crypto + { + class WindowsHashImpl; + + /** + * Sha1 hash implementation. + */ + class AWS_CORE_API Sha1 : public Hash + { + public: + /** + * Initializes platform crypto libs. + */ + Sha1(); + virtual ~Sha1(); + + /** + * Calculates a SHA1 Hash digest (not hex encoded) + */ + virtual HashResult Calculate(const Aws::String& str) override; + + /** + * Calculates a SHA1 Hash digest on a stream (the entire stream is read) + */ + virtual HashResult Calculate(Aws::IStream& stream) override; + + private: + + std::shared_ptr< Hash > m_hashImpl; + }; + + } // namespace Crypto + } // namespace Utils +} // namespace Aws + diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/include/aws/core/utils/crypto/openssl/CryptoImpl.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/include/aws/core/utils/crypto/openssl/CryptoImpl.h index e3f37edda9..39f5e5fcd4 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/include/aws/core/utils/crypto/openssl/CryptoImpl.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/include/aws/core/utils/crypto/openssl/CryptoImpl.h @@ -70,6 +70,18 @@ namespace Aws }; + class Sha1OpenSSLImpl : public Hash + { + public: + + Sha1OpenSSLImpl() {} + virtual ~Sha1OpenSSLImpl() = default; + + virtual HashResult Calculate(const Aws::String& str) override; + + virtual HashResult Calculate(Aws::IStream& stream) override; + }; + class Sha256OpenSSLImpl : public Hash { public: diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/Aws.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/Aws.cpp index 1eaa477fca..33856b968a 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/Aws.cpp +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/Aws.cpp @@ -65,6 +65,11 @@ namespace Aws Aws::Utils::Crypto::SetMD5Factory(options.cryptoOptions.md5Factory_create_fn()); } + if(options.cryptoOptions.sha1Factory_create_fn) + { + Aws::Utils::Crypto::SetSha1Factory(options.cryptoOptions.sha1Factory_create_fn()); + } + if(options.cryptoOptions.sha256Factory_create_fn) { Aws::Utils::Crypto::SetSha256Factory(options.cryptoOptions.sha256Factory_create_fn()); diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/auth/AWSAuthSigner.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/auth/AWSAuthSigner.cpp index de4826fa5b..0baa00058f 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/auth/AWSAuthSigner.cpp +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/auth/AWSAuthSigner.cpp @@ -417,7 +417,7 @@ bool AWSAuthV4Signer::ServiceRequireUnsignedPayload(const Aws::String& serviceNa // However, other services (for example RDS) implement the specification as outlined here: // https://docs.aws.amazon.com/general/latest/gr/sigv4-create-canonical-request.html // which states that body-less requests should use the empty-string SHA256 hash. - return "s3" == serviceName; + return "s3" == serviceName || "s3-object-lambda" == serviceName; } Aws::String AWSAuthV4Signer::GenerateSignature(const AWSCredentials& credentials, const Aws::String& stringToSign, diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/auth/AWSCredentialsProvider.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/auth/AWSCredentialsProvider.cpp index 31e28b996f..bf20ede35e 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/auth/AWSCredentialsProvider.cpp +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/auth/AWSCredentialsProvider.cpp @@ -383,7 +383,7 @@ void ProcessCredentialsProvider::Reload() const Aws::String &command = profile.GetCredentialProcess(); if (command.empty()) { - AWS_LOGSTREAM_ERROR(PROCESS_LOG_TAG, "Failed to find credential process's profile: " << m_profileToUse); + AWS_LOGSTREAM_INFO(PROCESS_LOG_TAG, "Failed to find credential process's profile: " << m_profileToUse); return; } m_credentials = GetCredentialsFromProcess(command); diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/auth/AWSCredentialsProviderChain.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/auth/AWSCredentialsProviderChain.cpp index 373136d96a..8b019a1664 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/auth/AWSCredentialsProviderChain.cpp +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/auth/AWSCredentialsProviderChain.cpp @@ -5,6 +5,7 @@ #include <aws/core/auth/AWSCredentialsProviderChain.h> #include <aws/core/auth/STSCredentialsProvider.h> +#include <aws/core/auth/SSOCredentialsProvider.h> #include <aws/core/platform/Environment.h> #include <aws/core/utils/memory/AWSMemory.h> #include <aws/core/utils/StringUtils.h> @@ -38,6 +39,7 @@ DefaultAWSCredentialsProviderChain::DefaultAWSCredentialsProviderChain() : AWSCr AddProvider(Aws::MakeShared<ProfileConfigFileAWSCredentialsProvider>(DefaultCredentialsProviderChainTag)); AddProvider(Aws::MakeShared<ProcessCredentialsProvider>(DefaultCredentialsProviderChainTag)); AddProvider(Aws::MakeShared<STSAssumeRoleWebIdentityCredentialsProvider>(DefaultCredentialsProviderChainTag)); + AddProvider(Aws::MakeShared<SSOCredentialsProvider>(DefaultCredentialsProviderChainTag)); //ECS TaskRole Credentials only available when ENVIRONMENT VARIABLE is set const auto relativeUri = Aws::Environment::GetEnv(AWS_ECS_CONTAINER_CREDENTIALS_RELATIVE_URI); diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/auth/SSOCredentialsProvider.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/auth/SSOCredentialsProvider.cpp new file mode 100644 index 0000000000..e8f780762e --- /dev/null +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/auth/SSOCredentialsProvider.cpp @@ -0,0 +1,146 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + + +#include <aws/core/auth/SSOCredentialsProvider.h> +#include <aws/core/config/AWSProfileConfigLoader.h> +#include <aws/core/internal/AWSHttpResourceClient.h> +#include <aws/core/platform/Environment.h> +#include <aws/core/platform/FileSystem.h> +#include <aws/core/utils/logging/LogMacros.h> +#include <aws/core/utils/StringUtils.h> +#include <aws/core/utils/FileSystemUtils.h> +#include <aws/core/client/SpecifiedRetryableErrorsRetryStrategy.h> +#include <aws/core/utils/UUID.h> +#include <aws/core/utils/HashingUtils.h> +#include <aws/core/utils/json/JsonSerializer.h> + +using namespace Aws::Utils; +using namespace Aws::Utils::Logging; +using namespace Aws::Auth; +using namespace Aws::Internal; +using namespace Aws::FileSystem; +using namespace Aws::Client; +using Aws::Utils::Threading::ReaderLockGuard; + + +static const char SSO_CREDENTIALS_PROVIDER_LOG_TAG[] = "SSOCredentialsProvider"; + +SSOCredentialsProvider::SSOCredentialsProvider() : m_profileToUse(GetConfigProfileName()) +{ + AWS_LOGSTREAM_INFO(SSO_CREDENTIALS_PROVIDER_LOG_TAG, "Setting sso credentials provider to read config from " << m_profileToUse); +} + +SSOCredentialsProvider::SSOCredentialsProvider(const Aws::String& profile) : m_profileToUse(profile) +{ + AWS_LOGSTREAM_INFO(SSO_CREDENTIALS_PROVIDER_LOG_TAG, "Setting sso credentials provider to read config from " << m_profileToUse); +} + +AWSCredentials SSOCredentialsProvider::GetAWSCredentials() +{ + RefreshIfExpired(); + ReaderLockGuard guard(m_reloadLock); + return m_credentials; +} + +void SSOCredentialsProvider::Reload() +{ + auto profile = Aws::Config::GetCachedConfigProfile(m_profileToUse); + + Aws::String hashedStartUrl = Aws::Utils::HashingUtils::HexEncode(Aws::Utils::HashingUtils::CalculateSHA1(profile.GetSsoStartUrl())); + auto profileDirectory = ProfileConfigFileAWSCredentialsProvider::GetProfileDirectory(); + Aws::StringStream ssToken; + ssToken << profileDirectory; + ssToken << PATH_DELIM << "sso" << PATH_DELIM << "cache" << PATH_DELIM << hashedStartUrl << ".json"; + auto ssoTokenPath = ssToken.str(); + AWS_LOGSTREAM_DEBUG(SSO_CREDENTIALS_PROVIDER_LOG_TAG, "Loading token from: " << ssoTokenPath) + Aws::String accessToken = LoadAccessTokenFile(ssoTokenPath); + if (accessToken.empty()) { + AWS_LOGSTREAM_TRACE(SSO_CREDENTIALS_PROVIDER_LOG_TAG, "Access token for SSO not available"); + return; + } + if (m_expiresAt < Aws::Utils::DateTime::Now()) { + AWS_LOGSTREAM_ERROR(SSO_CREDENTIALS_PROVIDER_LOG_TAG, "Cached Token expired at " << m_expiresAt.ToGmtString(DateFormat::ISO_8601)); + return; + } + SSOCredentialsClient::SSOGetRoleCredentialsRequest request; + request.m_ssoAccountId = profile.GetSsoAccountId(); + request.m_ssoRoleName = profile.GetSsoRoleName(); + request.m_accessToken = accessToken; + + Aws::Client::ClientConfiguration config; + config.scheme = Aws::Http::Scheme::HTTPS; + config.region = profile.GetSsoRegion(); + AWS_LOGSTREAM_DEBUG(SSO_CREDENTIALS_PROVIDER_LOG_TAG, "Passing config to client for region: " << m_ssoRegion); + + Aws::Vector<Aws::String> retryableErrors; + retryableErrors.push_back("TooManyRequestsException"); + + config.retryStrategy = Aws::MakeShared<SpecifiedRetryableErrorsRetryStrategy>(SSO_CREDENTIALS_PROVIDER_LOG_TAG, retryableErrors, 3/*maxRetries*/); + m_client = Aws::MakeUnique<Aws::Internal::SSOCredentialsClient>(SSO_CREDENTIALS_PROVIDER_LOG_TAG, config); + + AWS_LOGSTREAM_TRACE(SSO_CREDENTIALS_PROVIDER_LOG_TAG, "Requesting credentials with AWS_ACCESS_KEY: " << m_ssoAccountId); + auto result = m_client->GetSSOCredentials(request); + AWS_LOGSTREAM_TRACE(SSO_CREDENTIALS_PROVIDER_LOG_TAG, "Successfully retrieved credentials with AWS_ACCESS_KEY: " << result.creds.GetAWSAccessKeyId()); + + m_credentials = result.creds; +} + +void SSOCredentialsProvider::RefreshIfExpired() +{ + ReaderLockGuard guard(m_reloadLock); + if (!m_credentials.IsExpiredOrEmpty()) + { + return; + } + + guard.UpgradeToWriterLock(); + if (!m_credentials.IsExpiredOrEmpty()) // double-checked lock to avoid refreshing twice + { + return; + } + + Reload(); +} + +Aws::String SSOCredentialsProvider::LoadAccessTokenFile(const Aws::String& ssoAccessTokenPath) +{ + AWS_LOGSTREAM_DEBUG(SSO_CREDENTIALS_PROVIDER_LOG_TAG, "Preparing to load token from: " << ssoAccessTokenPath); + + Aws::IFStream inputFile(ssoAccessTokenPath.c_str()); + if(inputFile) + { + AWS_LOGSTREAM_DEBUG(SSO_CREDENTIALS_PROVIDER_LOG_TAG, "Reading content from token file: " << ssoAccessTokenPath); + + Json::JsonValue tokenDoc(inputFile); + if (!tokenDoc.WasParseSuccessful()) + { + AWS_LOGSTREAM_ERROR(SSO_CREDENTIALS_PROVIDER_LOG_TAG, "Failed to parse token file: " << ssoAccessTokenPath); + return ""; + } + Utils::Json::JsonView tokenView(tokenDoc); + Aws::String tmpAccessToken, expirationStr; + tmpAccessToken = tokenView.GetString("accessToken"); + expirationStr = tokenView.GetString("expiresAt"); + DateTime expiration(expirationStr, DateFormat::ISO_8601); + + AWS_LOGSTREAM_TRACE(SSO_CREDENTIALS_PROVIDER_LOG_TAG, "Token cache file contains accessToken [" << tmpAccessToken << "], expiration [" << expirationStr << "]"); + + if (tmpAccessToken.empty() || !expiration.WasParseSuccessful()) { + AWS_LOG_ERROR(SSO_CREDENTIALS_PROVIDER_LOG_TAG, R"(The SSO session associated with this profile has expired or is otherwise invalid. To refresh this SSO session run aws sso login with the corresponding profile.)"); + AWS_LOGSTREAM_TRACE(SSO_CREDENTIALS_PROVIDER_LOG_TAG, "Token cache file failed because " + << (tmpAccessToken.empty()?"AccessToken was empty ":"") + << (!expiration.WasParseSuccessful()? "failed to parse expiration":"")); + return ""; + } + m_expiresAt = expiration; + return tmpAccessToken; + } + else + { + AWS_LOGSTREAM_INFO(SSO_CREDENTIALS_PROVIDER_LOG_TAG,"Unable to open token file on path: " << ssoAccessTokenPath); + return ""; + } +}
\ No newline at end of file diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/client/AWSClient.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/client/AWSClient.cpp index e1ff064840..4b2a38b4e6 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/client/AWSClient.cpp +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/client/AWSClient.cpp @@ -137,7 +137,7 @@ void AWSClient::SetServiceClientName(const Aws::String& name) if (!m_customizedUserAgent) { Aws::StringStream ss; - ss << "aws-sdk-cpp/" << Version::GetVersionString() << "/" << m_serviceName << "/" << Aws::OSVersionInfo::ComputeOSVersionString() + ss << "aws-sdk-cpp/" << Version::GetVersionString() << " " << Aws::OSVersionInfo::ComputeOSVersionString() << " " << Version::GetCompilerVersionString(); m_userAgent = ss.str(); } @@ -626,7 +626,7 @@ void AWSClient::AddContentBodyToRequest(const std::shared_ptr<Aws::Http::HttpReq } //Add transfer-encoding:chunked to header - if (body && isChunked) + if (body && isChunked && !httpRequest->HasHeader(Http::CONTENT_LENGTH_HEADER)) { httpRequest->SetTransferEncoding(CHUNKED_VALUE); } diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/config/AWSProfileConfigLoader.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/config/AWSProfileConfigLoader.cpp index 9ec2e54f55..bb6acd0b3a 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/config/AWSProfileConfigLoader.cpp +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/config/AWSProfileConfigLoader.cpp @@ -67,6 +67,10 @@ namespace Aws static const char ACCESS_KEY_ID_KEY[] = "aws_access_key_id"; static const char SECRET_KEY_KEY[] = "aws_secret_access_key"; static const char SESSION_TOKEN_KEY[] = "aws_session_token"; + static const char SSO_START_URL_KEY[] = "sso_start_url"; + static const char SSO_REGION_KEY[] = "sso_region"; + static const char SSO_ACCOUNT_ID_KEY[] = "sso_account_id"; + static const char SSO_ROLE_NAME_KEY[] = "sso_role_name"; static const char ROLE_ARN_KEY[] = "role_arn"; static const char EXTERNAL_ID_KEY[] = "external_id"; static const char CREDENTIAL_PROCESS_COMMAND[] = "credential_process"; @@ -184,6 +188,33 @@ namespace Aws profile.SetCredentials(Aws::Auth::AWSCredentials(accessKey, secretKey, sessionToken)); } + auto ssoStartUrlIter = m_profileKeyValuePairs.find(SSO_START_URL_KEY); + auto ssoRegionIter = m_profileKeyValuePairs.find(SSO_REGION_KEY); + auto ssoRoleNameIter = m_profileKeyValuePairs.find(SSO_ROLE_NAME_KEY); + auto ssoAccountIdIter = m_profileKeyValuePairs.find(SSO_ACCOUNT_ID_KEY); + if (ssoStartUrlIter != m_profileKeyValuePairs.end() + || ssoRegionIter != m_profileKeyValuePairs.end() + || ssoRoleNameIter != m_profileKeyValuePairs.end() + || ssoAccountIdIter != m_profileKeyValuePairs.end()) + { + if (ssoStartUrlIter != m_profileKeyValuePairs.end() + && ssoRegionIter != m_profileKeyValuePairs.end() + && ssoRoleNameIter != m_profileKeyValuePairs.end() + && ssoAccountIdIter != m_profileKeyValuePairs.end()) + { + AWS_LOGSTREAM_DEBUG(PARSER_TAG, "found sso_start_url " << ssoStartUrlIter->second); + profile.SetSsoStartUrl(ssoStartUrlIter->second); + AWS_LOGSTREAM_DEBUG(PARSER_TAG, "found sso_region " << ssoRegionIter->second); + profile.SetSsoRegion(ssoRegionIter->second); + AWS_LOGSTREAM_DEBUG(PARSER_TAG, "found sso_account_id " << ssoAccountIdIter->second); + profile.SetSsoAccountId(ssoAccountIdIter->second); + AWS_LOGSTREAM_DEBUG(PARSER_TAG, "found sso_role_name " << ssoRoleNameIter->second); + profile.SetSsoRoleName(ssoRoleNameIter->second); + } else { + AWS_LOGSTREAM_ERROR(PARSER_TAG, "invalid configuration for sso profile " << profile.GetName()); + } + } + auto assumeRoleArnIter = m_profileKeyValuePairs.find(ROLE_ARN_KEY); if (assumeRoleArnIter != m_profileKeyValuePairs.end()) { diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/http/curl/CurlHttpClient.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/http/curl/CurlHttpClient.cpp index 2fb9cc9643..95132f5df0 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/http/curl/CurlHttpClient.cpp +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/http/curl/CurlHttpClient.cpp @@ -142,8 +142,9 @@ struct CurlWriteCallbackContext struct CurlReadCallbackContext { - CurlReadCallbackContext(const CurlHttpClient* client, HttpRequest* request, Aws::Utils::RateLimits::RateLimiterInterface* limiter) : + CurlReadCallbackContext(const CurlHttpClient* client, CURL* curlHandle, HttpRequest* request, Aws::Utils::RateLimits::RateLimiterInterface* limiter) : m_client(client), + m_curlHandle(curlHandle), m_rateLimiter(limiter), m_request(request) {} @@ -236,10 +237,10 @@ static size_t ReadBody(char* ptr, size_t size, size_t nmemb, void* userdata) { if (request->IsEventStreamRequest()) { - // Waiting for next available character to read. - // Without peek(), readsome() will keep reading 0 byte from the stream. - ioStream->peek(); - ioStream->readsome(ptr, amountToRead); + if (ioStream->readsome(ptr, amountToRead) == 0 && !ioStream->eof()) + { + return CURL_READFUNC_PAUSE; + } } else { @@ -304,6 +305,33 @@ static size_t SeekBody(void* userdata, curl_off_t offset, int origin) return CURL_SEEKFUNC_OK; } +#if LIBCURL_VERSION_NUM >= 0x072000 // 7.32.0 +static int CurlProgressCallback(void *userdata, curl_off_t, curl_off_t, curl_off_t, curl_off_t) +#else +static int CurlProgressCallback(void *userdata, double, double, double, double) +#endif +{ + CurlReadCallbackContext* context = reinterpret_cast<CurlReadCallbackContext*>(userdata); + + const std::shared_ptr<Aws::IOStream>& ioStream = context->m_request->GetContentBody(); + if (ioStream->eof()) + { + curl_easy_pause(context->m_curlHandle, CURLPAUSE_CONT); + return 0; + } + char output[1]; + if (ioStream->readsome(output, 1) > 0) + { + ioStream->unget(); + if (!ioStream->good()) + { + AWS_LOGSTREAM_WARN(CURL_HTTP_CLIENT_TAG, "Input stream failed to perform unget()."); + } + curl_easy_pause(context->m_curlHandle, CURLPAUSE_CONT); + } + + return 0; +} void SetOptCodeForHttpMethod(CURL* requestHandle, const std::shared_ptr<HttpRequest>& request) { @@ -456,6 +484,16 @@ CurlHttpClient::CurlHttpClient(const ClientConfiguration& clientConfig) : { m_allowRedirects = true; } + if(clientConfig.nonProxyHosts.GetLength() > 0) + { + Aws::StringStream ss; + ss << clientConfig.nonProxyHosts.GetItem(0); + for (auto i=1u; i < clientConfig.nonProxyHosts.GetLength(); i++) + { + ss << "," << clientConfig.nonProxyHosts.GetItem(i); + } + m_nonProxyHosts = ss.str(); + } } @@ -521,7 +559,7 @@ std::shared_ptr<HttpResponse> CurlHttpClient::MakeRequest(const std::shared_ptr< } CurlWriteCallbackContext writeContext(this, request.get(), response.get(), readLimiter); - CurlReadCallbackContext readContext(this, request.get(), writeLimiter); + CurlReadCallbackContext readContext(this, connectionHandle, request.get(), writeLimiter); SetOptCodeForHttpMethod(connectionHandle, request); @@ -595,6 +633,7 @@ std::shared_ptr<HttpResponse> CurlHttpClient::MakeRequest(const std::shared_ptr< curl_easy_setopt(connectionHandle, CURLOPT_PROXYUSERNAME, m_proxyUserName.c_str()); curl_easy_setopt(connectionHandle, CURLOPT_PROXYPASSWORD, m_proxyPassword.c_str()); } + curl_easy_setopt(connectionHandle, CURLOPT_NOPROXY, m_nonProxyHosts.c_str()); #ifdef CURL_HAS_TLS_PROXY if (!m_proxySSLCertPath.empty()) { @@ -629,6 +668,17 @@ std::shared_ptr<HttpResponse> CurlHttpClient::MakeRequest(const std::shared_ptr< curl_easy_setopt(connectionHandle, CURLOPT_READDATA, &readContext); curl_easy_setopt(connectionHandle, CURLOPT_SEEKFUNCTION, SeekBody); curl_easy_setopt(connectionHandle, CURLOPT_SEEKDATA, &readContext); + if (request->IsEventStreamRequest()) + { + curl_easy_setopt(connectionHandle, CURLOPT_NOPROGRESS, 0L); +#if LIBCURL_VERSION_NUM >= 0x072000 // 7.32.0 + curl_easy_setopt(connectionHandle, CURLOPT_XFERINFOFUNCTION, CurlProgressCallback); + curl_easy_setopt(connectionHandle, CURLOPT_XFERINFODATA, &readContext); +#else + curl_easy_setopt(connectionHandle, CURLOPT_PROGRESSFUNCTION, CurlProgressCallback); + curl_easy_setopt(connectionHandle, CURLOPT_PROGRESSDATA, &readContext); +#endif + } } OverrideOptionsOnConnectionHandle(connectionHandle); diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/internal/AWSHttpResourceClient.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/internal/AWSHttpResourceClient.cpp index 24145e4d92..2f372ec82a 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/internal/AWSHttpResourceClient.cpp +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/internal/AWSHttpResourceClient.cpp @@ -35,6 +35,7 @@ static const char EC2_IMDS_TOKEN_HEADER[] = "x-aws-ec2-metadata-token"; static const char RESOURCE_CLIENT_CONFIGURATION_ALLOCATION_TAG[] = "AWSHttpResourceClient"; static const char EC2_METADATA_CLIENT_LOG_TAG[] = "EC2MetadataClient"; static const char ECS_CREDENTIALS_CLIENT_LOG_TAG[] = "ECSCredentialsClient"; +static const char SSO_GET_ROLE_RESOURCE[] = "/federation/credentials"; namespace Aws { @@ -160,7 +161,7 @@ namespace Aws if (!m_retryStrategy->ShouldRetry(error, retries)) { - AWS_LOGSTREAM_ERROR(m_logtag.c_str(), "Can not retrive resource from " << httpRequest->GetURIString()); + AWS_LOGSTREAM_ERROR(m_logtag.c_str(), "Can not retrieve resource from " << httpRequest->GetURIString()); return {{}, response->GetHeaders(), error.GetResponseCode()}; } auto sleepMillis = m_retryStrategy->CalculateDelayBeforeNextRetry(error, retries); @@ -502,5 +503,73 @@ namespace Aws } return result; } + + static const char SSO_RESOURCE_CLIENT_LOG_TAG[] = "SSOResourceClient"; + SSOCredentialsClient::SSOCredentialsClient(const Aws::Client::ClientConfiguration& clientConfiguration) + : AWSHttpResourceClient(clientConfiguration, SSO_RESOURCE_CLIENT_LOG_TAG) + { + SetErrorMarshaller(Aws::MakeUnique<Aws::Client::JsonErrorMarshaller>(SSO_RESOURCE_CLIENT_LOG_TAG)); + + Aws::StringStream ss; + if (clientConfiguration.scheme == Aws::Http::Scheme::HTTP) + { + ss << "http://"; + } + else + { + ss << "https://"; + } + + static const int CN_NORTH_1_HASH = Aws::Utils::HashingUtils::HashString(Aws::Region::CN_NORTH_1); + static const int CN_NORTHWEST_1_HASH = Aws::Utils::HashingUtils::HashString(Aws::Region::CN_NORTHWEST_1); + auto hash = Aws::Utils::HashingUtils::HashString(clientConfiguration.region.c_str()); + + AWS_LOGSTREAM_DEBUG(SSO_RESOURCE_CLIENT_LOG_TAG, "Preparing SSO client for region: " << clientConfiguration.region); + + ss << "portal.sso." << clientConfiguration.region << ".amazonaws.com/federation/credentials"; + if (hash == CN_NORTH_1_HASH || hash == CN_NORTHWEST_1_HASH) + { + ss << ".cn"; + } + m_endpoint = ss.str(); + + AWS_LOGSTREAM_INFO(SSO_RESOURCE_CLIENT_LOG_TAG, "Creating SSO ResourceClient with endpoint: " << m_endpoint); + } + + SSOCredentialsClient::SSOGetRoleCredentialsResult SSOCredentialsClient::GetSSOCredentials(const SSOGetRoleCredentialsRequest &request) + { + Aws::StringStream ssUri; + ssUri << m_endpoint << SSO_GET_ROLE_RESOURCE; + + std::shared_ptr<HttpRequest> httpRequest(CreateHttpRequest(m_endpoint, HttpMethod::HTTP_GET, + Aws::Utils::Stream::DefaultResponseStreamFactoryMethod)); + + httpRequest->SetHeaderValue("x-amz-sso_bearer_token", request.m_accessToken); + + httpRequest->SetUserAgent(ComputeUserAgentString()); + + httpRequest->AddQueryStringParameter("account_id", Aws::Utils::StringUtils::URLEncode(request.m_ssoAccountId.c_str())); + httpRequest->AddQueryStringParameter("role_name", Aws::Utils::StringUtils::URLEncode(request.m_ssoRoleName.c_str())); + + Aws::String credentialsStr = GetResourceWithAWSWebServiceResult(httpRequest).GetPayload(); + + Json::JsonValue credentialsDoc(credentialsStr); + AWS_LOGSTREAM_TRACE(SSO_RESOURCE_CLIENT_LOG_TAG, "Raw creds returned: " << credentialsStr); + Aws::Auth::AWSCredentials creds; + if (!credentialsDoc.WasParseSuccessful()) + { + AWS_LOGSTREAM_ERROR(SSO_RESOURCE_CLIENT_LOG_TAG, "Failed to load credential from running. Error: " << credentialsStr); + return SSOGetRoleCredentialsResult{creds}; + } + Utils::Json::JsonView credentialsView(credentialsDoc); + auto roleCredentials = credentialsView.GetObject("roleCredentials"); + creds.SetAWSAccessKeyId(roleCredentials.GetString("accessKeyId")); + creds.SetAWSSecretKey(roleCredentials.GetString("secretAccessKey")); + creds.SetSessionToken(roleCredentials.GetString("sessionToken")); + creds.SetExpiration(roleCredentials.GetInt64("expiration")); + SSOCredentialsClient::SSOGetRoleCredentialsResult result; + result.creds = creds; + return result; + } } } diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/HashingUtils.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/HashingUtils.cpp index 147bddf33e..0e49a61634 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/HashingUtils.cpp +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/HashingUtils.cpp @@ -9,6 +9,7 @@ #include <aws/core/utils/base64/Base64.h> #include <aws/core/utils/crypto/Sha256.h> #include <aws/core/utils/crypto/Sha256HMAC.h> +#include <aws/core/utils/crypto/Sha1.h> #include <aws/core/utils/crypto/MD5.h> #include <aws/core/utils/Outcome.h> #include <aws/core/utils/memory/stl/AWSStringStream.h> @@ -209,6 +210,18 @@ ByteBuffer HashingUtils::HexDecode(const Aws::String& str) return hexBuffer; } +ByteBuffer HashingUtils::CalculateSHA1(const Aws::String& str) +{ + Sha1 hash; + return hash.Calculate(str).GetResult(); +} + +ByteBuffer HashingUtils::CalculateSHA1(Aws::IOStream& stream) +{ + Sha1 hash; + return hash.Calculate(stream).GetResult(); +} + ByteBuffer HashingUtils::CalculateMD5(const Aws::String& str) { MD5 hash; diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/crypto/Sha1.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/crypto/Sha1.cpp new file mode 100644 index 0000000000..5da3e63d28 --- /dev/null +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/crypto/Sha1.cpp @@ -0,0 +1,30 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + + +#include <aws/core/utils/crypto/Sha1.h> +#include <aws/core/utils/Outcome.h> +#include <aws/core/utils/crypto/Factories.h> + +using namespace Aws::Utils::Crypto; + +Sha1::Sha1() : + m_hashImpl(CreateSha1Implementation()) +{ +} + +Sha1::~Sha1() +{ +} + +HashResult Sha1::Calculate(const Aws::String& str) +{ + return m_hashImpl->Calculate(str); +} + +HashResult Sha1::Calculate(Aws::IStream& stream) +{ + return m_hashImpl->Calculate(stream); +} diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/crypto/Sha256.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/crypto/Sha256.cpp index 178df00d37..a8aa5ae879 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/crypto/Sha256.cpp +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/crypto/Sha256.cpp @@ -10,7 +10,7 @@ using namespace Aws::Utils::Crypto; -Sha256::Sha256() : +Sha256::Sha256() : m_hashImpl(CreateSha256Implementation()) { } diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/crypto/factory/Factories.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/crypto/factory/Factories.cpp index bff0382241..88ca147d11 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/crypto/factory/Factories.cpp +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/crypto/factory/Factories.cpp @@ -35,6 +35,12 @@ static std::shared_ptr<HashFactory>& GetMD5Factory() return s_MD5Factory; } +static std::shared_ptr<HashFactory>& GetSha1Factory() +{ + static std::shared_ptr<HashFactory> s_Sha1Factory(nullptr); + return s_Sha1Factory; +} + static std::shared_ptr<HashFactory>& GetSha256Factory() { static std::shared_ptr<HashFactory> s_Sha256Factory(nullptr); @@ -130,6 +136,51 @@ public: } }; +class DefaultSHA1Factory : public HashFactory +{ +public: + std::shared_ptr<Hash> CreateImplementation() const override + { +#if ENABLE_BCRYPT_ENCRYPTION + return Aws::MakeShared<Sha1BcryptImpl>(s_allocationTag); +#elif ENABLE_OPENSSL_ENCRYPTION + return Aws::MakeShared<Sha1OpenSSLImpl>(s_allocationTag); +#elif ENABLE_COMMONCRYPTO_ENCRYPTION + return Aws::MakeShared<Sha1CommonCryptoImpl>(s_allocationTag); +#else + return nullptr; +#endif + } + + /** + * Opportunity to make any static initialization calls you need to make. + * Will only be called once. + */ + void InitStaticState() override + { +#if ENABLE_OPENSSL_ENCRYPTION + if(s_InitCleanupOpenSSLFlag) + { + OpenSSL::getTheLights.EnterRoom(&OpenSSL::init_static_state); + } +#endif + } + + /** + * Opportunity to make any static cleanup calls you need to make. + * will only be called at the end of the application. + */ + void CleanupStaticState() override + { +#if ENABLE_OPENSSL_ENCRYPTION + if(s_InitCleanupOpenSSLFlag) + { + OpenSSL::getTheLights.LeaveRoom(&OpenSSL::cleanup_static_state); + } +#endif + } +}; + class DefaultSHA256Factory : public HashFactory { public: @@ -616,6 +667,16 @@ void Aws::Utils::Crypto::InitCrypto() GetMD5Factory()->InitStaticState(); } + if(GetSha1Factory()) + { + GetSha1Factory()->InitStaticState(); + } + else + { + GetSha1Factory() = Aws::MakeShared<DefaultSHA1Factory>(s_allocationTag); + GetSha1Factory()->InitStaticState(); + } + if(GetSha256Factory()) { GetSha256Factory()->InitStaticState(); @@ -693,6 +754,12 @@ void Aws::Utils::Crypto::CleanupCrypto() GetMD5Factory() = nullptr; } + if(GetSha1Factory()) + { + GetSha1Factory()->CleanupStaticState(); + GetSha1Factory() = nullptr; + } + if(GetSha256Factory()) { GetSha256Factory()->CleanupStaticState(); @@ -742,6 +809,11 @@ void Aws::Utils::Crypto::SetMD5Factory(const std::shared_ptr<HashFactory>& facto GetMD5Factory() = factory; } +void Aws::Utils::Crypto::SetSha1Factory(const std::shared_ptr<HashFactory>& factory) +{ + GetSha1Factory() = factory; +} + void Aws::Utils::Crypto::SetSha256Factory(const std::shared_ptr<HashFactory>& factory) { GetSha256Factory() = factory; @@ -782,8 +854,12 @@ std::shared_ptr<Hash> Aws::Utils::Crypto::CreateMD5Implementation() return GetMD5Factory()->CreateImplementation(); } -std::shared_ptr<Hash> Aws::Utils::Crypto::CreateSha256Implementation() +std::shared_ptr<Hash> Aws::Utils::Crypto::CreateSha1Implementation() { + return GetSha1Factory()->CreateImplementation(); +} + +std::shared_ptr<Hash> Aws::Utils::Crypto::CreateSha256Implementation() { return GetSha256Factory()->CreateImplementation(); } diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/crypto/openssl/CryptoImpl.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/crypto/openssl/CryptoImpl.cpp index 911838864b..3a89265e6e 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/crypto/openssl/CryptoImpl.cpp +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/crypto/openssl/CryptoImpl.cpp @@ -222,6 +222,56 @@ namespace Aws return HashResult(std::move(hash)); } + HashResult Sha1OpenSSLImpl::Calculate(const Aws::String& str) + { + OpensslCtxRAIIGuard guard; + auto ctx = guard.getResource(); + EVP_DigestInit_ex(ctx, EVP_sha1(), nullptr); + EVP_DigestUpdate(ctx, str.c_str(), str.size()); + + ByteBuffer hash(EVP_MD_size(EVP_sha1())); + EVP_DigestFinal(ctx, hash.GetUnderlyingData(), nullptr); + + return HashResult(std::move(hash)); + } + + HashResult Sha1OpenSSLImpl::Calculate(Aws::IStream& stream) + { + OpensslCtxRAIIGuard guard; + auto ctx = guard.getResource(); + + EVP_DigestInit_ex(ctx, EVP_sha1(), nullptr); + + auto currentPos = stream.tellg(); + if (currentPos == -1) + { + currentPos = 0; + stream.clear(); + } + + stream.seekg(0, stream.beg); + + char streamBuffer[Aws::Utils::Crypto::Hash::INTERNAL_HASH_STREAM_BUFFER_SIZE]; + while (stream.good()) + { + stream.read(streamBuffer, Aws::Utils::Crypto::Hash::INTERNAL_HASH_STREAM_BUFFER_SIZE); + auto bytesRead = stream.gcount(); + + if (bytesRead > 0) + { + EVP_DigestUpdate(ctx, streamBuffer, static_cast<size_t>(bytesRead)); + } + } + + stream.clear(); + stream.seekg(currentPos, stream.beg); + + ByteBuffer hash(EVP_MD_size(EVP_sha1())); + EVP_DigestFinal(ctx, hash.GetUnderlyingData(), nullptr); + + return HashResult(std::move(hash)); + } + HashResult Sha256OpenSSLImpl::Calculate(const Aws::String& str) { OpensslCtxRAIIGuard guard; diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/stream/ConcurrentStreamBuf.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/stream/ConcurrentStreamBuf.cpp index 3f59dbe96d..1ef4ee6758 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/stream/ConcurrentStreamBuf.cpp +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/stream/ConcurrentStreamBuf.cpp @@ -89,7 +89,10 @@ namespace Aws std::streamsize ConcurrentStreamBuf::showmanyc() { std::unique_lock<std::mutex> lock(m_lock); - AWS_LOGSTREAM_TRACE(TAG, "stream how many character? " << m_backbuf.size()); + if (!m_backbuf.empty()) + { + AWS_LOGSTREAM_TRACE(TAG, "Stream characters in buffer: " << m_backbuf.size()); + } return m_backbuf.size(); } diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/ya.make b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/ya.make index 308c7f5011..d6872ee9b7 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/ya.make +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/ya.make @@ -39,7 +39,7 @@ CFLAGS( -DAWS_IO_USE_IMPORT_EXPORT -DAWS_SDK_VERSION_MAJOR=1 -DAWS_SDK_VERSION_MINOR=8 - -DAWS_SDK_VERSION_PATCH=113 + -DAWS_SDK_VERSION_PATCH=186 -DAWS_USE_EPOLL -DCURL_HAS_H2 -DCURL_HAS_TLS_PROXY @@ -73,6 +73,7 @@ SRCS( source/auth/AWSAuthSignerProvider.cpp source/auth/AWSCredentialsProvider.cpp source/auth/AWSCredentialsProviderChain.cpp + source/auth/SSOCredentialsProvider.cpp source/auth/STSCredentialsProvider.cpp source/client/AWSClient.cpp source/client/AWSErrorMarshaller.cpp @@ -127,6 +128,7 @@ SRCS( source/utils/crypto/EncryptionMaterials.cpp source/utils/crypto/KeyWrapAlgorithm.cpp source/utils/crypto/MD5.cpp + source/utils/crypto/Sha1.cpp source/utils/crypto/Sha256.cpp source/utils/crypto/Sha256HMAC.cpp source/utils/crypto/factory/Factories.cpp diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/CMakeLists.txt b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/CMakeLists.txt index 0ffd052991..e45e80ba0a 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/CMakeLists.txt +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/CMakeLists.txt @@ -16,7 +16,7 @@ target_compile_options(libs-aws-sdk-cpp-aws-cpp-sdk-s3 PRIVATE -DAWS_IO_USE_IMPORT_EXPORT -DAWS_SDK_VERSION_MAJOR=1 -DAWS_SDK_VERSION_MINOR=8 - -DAWS_SDK_VERSION_PATCH=113 + -DAWS_SDK_VERSION_PATCH=186 -DAWS_USE_EPOLL -DENABLE_CURL_CLIENT -DENABLE_OPENSSL_ENCRYPTION @@ -385,4 +385,5 @@ target_sources(libs-aws-sdk-cpp-aws-cpp-sdk-s3 PRIVATE ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/UploadPartResult.cpp ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/VersioningConfiguration.cpp ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/WebsiteConfiguration.cpp + ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/WriteGetObjectResponseRequest.cpp ) diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/S3ARN.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/S3ARN.h index 4d6cb56867..546f1582b7 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/S3ARN.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/S3ARN.h @@ -20,6 +20,13 @@ namespace Aws namespace S3 { + namespace ARNService + { + static const char S3[] = "s3"; + static const char S3_OUTPOSTS[] = "s3-outposts"; + static const char S3_OBJECT_LAMBDA[] = "s3-object-lambda"; + } + namespace ARNResourceType { static const char ACCESSPOINT[] = "accesspoint"; diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/S3Client.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/S3Client.h index 9c83c0ac1e..5b3d798fcf 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/S3Client.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/S3Client.h @@ -203,6 +203,7 @@ namespace Aws class SelectObjectContentRequest; class UploadPartRequest; class UploadPartCopyRequest; + class WriteGetObjectResponseRequest; typedef Aws::Utils::Outcome<AbortMultipartUploadResult, S3Error> AbortMultipartUploadOutcome; typedef Aws::Utils::Outcome<CompleteMultipartUploadResult, S3Error> CompleteMultipartUploadOutcome; @@ -295,6 +296,7 @@ namespace Aws typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> SelectObjectContentOutcome; typedef Aws::Utils::Outcome<UploadPartResult, S3Error> UploadPartOutcome; typedef Aws::Utils::Outcome<UploadPartCopyResult, S3Error> UploadPartCopyOutcome; + typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> WriteGetObjectResponseOutcome; typedef std::future<AbortMultipartUploadOutcome> AbortMultipartUploadOutcomeCallable; typedef std::future<CompleteMultipartUploadOutcome> CompleteMultipartUploadOutcomeCallable; @@ -387,6 +389,7 @@ namespace Aws typedef std::future<SelectObjectContentOutcome> SelectObjectContentOutcomeCallable; typedef std::future<UploadPartOutcome> UploadPartOutcomeCallable; typedef std::future<UploadPartCopyOutcome> UploadPartCopyOutcomeCallable; + typedef std::future<WriteGetObjectResponseOutcome> WriteGetObjectResponseOutcomeCallable; } // namespace Model namespace SSEHeaders @@ -491,6 +494,7 @@ namespace Aws typedef std::function<void(const S3Client*, const Model::SelectObjectContentRequest&, const Model::SelectObjectContentOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > SelectObjectContentResponseReceivedHandler; typedef std::function<void(const S3Client*, const Model::UploadPartRequest&, const Model::UploadPartOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > UploadPartResponseReceivedHandler; typedef std::function<void(const S3Client*, const Model::UploadPartCopyRequest&, const Model::UploadPartCopyOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > UploadPartCopyResponseReceivedHandler; + typedef std::function<void(const S3Client*, const Model::WriteGetObjectResponseRequest&, const Model::WriteGetObjectResponseOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > WriteGetObjectResponseResponseReceivedHandler; // Get endpoint, signer region and signer service name after computing the endpoint. struct ComputeEndpointResult @@ -544,19 +548,19 @@ namespace Aws /** - * <p>This operation 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. - * </p> <p>To verify that all parts have been removed, so you don't get charged for - * the part storage, you should call the <a + * <p>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. </p> <p>To verify + * that all parts have been removed, so you don't get charged for the part storage, + * you should call the <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListParts.html">ListParts</a> - * operation and ensure that the parts list is empty.</p> <p>For information about - * permissions required to use the multipart upload API, see <a + * action and ensure that the parts list is empty.</p> <p>For information about + * permissions required to use the multipart upload, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html">Multipart - * Upload API and Permissions</a>.</p> <p>The following operations are related to + * Upload and Permissions</a>.</p> <p>The following operations are related to * <code>AbortMultipartUpload</code>:</p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html">CreateMultipartUpload</a> * </p> </li> <li> <p> <a @@ -574,19 +578,19 @@ namespace Aws virtual Model::AbortMultipartUploadOutcome AbortMultipartUpload(const Model::AbortMultipartUploadRequest& request) const; /** - * <p>This operation 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. - * </p> <p>To verify that all parts have been removed, so you don't get charged for - * the part storage, you should call the <a + * <p>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. </p> <p>To verify + * that all parts have been removed, so you don't get charged for the part storage, + * you should call the <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListParts.html">ListParts</a> - * operation and ensure that the parts list is empty.</p> <p>For information about - * permissions required to use the multipart upload API, see <a + * action and ensure that the parts list is empty.</p> <p>For information about + * permissions required to use the multipart upload, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html">Multipart - * Upload API and Permissions</a>.</p> <p>The following operations are related to + * Upload and Permissions</a>.</p> <p>The following operations are related to * <code>AbortMultipartUpload</code>:</p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html">CreateMultipartUpload</a> * </p> </li> <li> <p> <a @@ -606,19 +610,19 @@ namespace Aws virtual Model::AbortMultipartUploadOutcomeCallable AbortMultipartUploadCallable(const Model::AbortMultipartUploadRequest& request) const; /** - * <p>This operation 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. - * </p> <p>To verify that all parts have been removed, so you don't get charged for - * the part storage, you should call the <a + * <p>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. </p> <p>To verify + * that all parts have been removed, so you don't get charged for the part storage, + * you should call the <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListParts.html">ListParts</a> - * operation and ensure that the parts list is empty.</p> <p>For information about - * permissions required to use the multipart upload API, see <a + * action and ensure that the parts list is empty.</p> <p>For information about + * permissions required to use the multipart upload, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html">Multipart - * Upload API and Permissions</a>.</p> <p>The following operations are related to + * Upload and Permissions</a>.</p> <p>The following operations are related to * <code>AbortMultipartUpload</code>:</p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html">CreateMultipartUpload</a> * </p> </li> <li> <p> <a @@ -643,13 +647,13 @@ namespace Aws * <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html">UploadPart</a> * operation. After successfully uploading all relevant parts of an upload, you - * call this operation to complete the upload. Upon receiving this request, Amazon - * S3 concatenates all the parts in ascending order by part number to create a new + * 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 operation - * concatenates the parts that you provide in the list. For each part in the list, - * you must provide the part number and the <code>ETag</code> value, returned after - * that part was uploaded.</p> <p>Processing of a Complete Multipart Upload request + * 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 <code>ETag</code> value, returned after that + * part was uploaded.</p> <p>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 @@ -665,8 +669,8 @@ namespace Aws * Objects Using Multipart Upload</a>.</p> <p>For information about permissions * required to use the multipart upload API, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html">Multipart - * Upload API and Permissions</a>.</p> <p> <code>CompleteMultipartUpload</code> has - * the following special errors:</p> <ul> <li> <p>Error code: + * Upload and Permissions</a>.</p> <p> <code>CompleteMultipartUpload</code> has the + * following special errors:</p> <ul> <li> <p>Error code: * <code>EntityTooSmall</code> </p> <ul> <li> <p>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.</p> </li> <li> <p>400 Bad Request</p> </li> </ul> @@ -703,13 +707,13 @@ namespace Aws * <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html">UploadPart</a> * operation. After successfully uploading all relevant parts of an upload, you - * call this operation to complete the upload. Upon receiving this request, Amazon - * S3 concatenates all the parts in ascending order by part number to create a new + * 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 operation - * concatenates the parts that you provide in the list. For each part in the list, - * you must provide the part number and the <code>ETag</code> value, returned after - * that part was uploaded.</p> <p>Processing of a Complete Multipart Upload request + * 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 <code>ETag</code> value, returned after that + * part was uploaded.</p> <p>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 @@ -725,8 +729,8 @@ namespace Aws * Objects Using Multipart Upload</a>.</p> <p>For information about permissions * required to use the multipart upload API, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html">Multipart - * Upload API and Permissions</a>.</p> <p> <code>CompleteMultipartUpload</code> has - * the following special errors:</p> <ul> <li> <p>Error code: + * Upload and Permissions</a>.</p> <p> <code>CompleteMultipartUpload</code> has the + * following special errors:</p> <ul> <li> <p>Error code: * <code>EntityTooSmall</code> </p> <ul> <li> <p>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.</p> </li> <li> <p>400 Bad Request</p> </li> </ul> @@ -765,13 +769,13 @@ namespace Aws * <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html">UploadPart</a> * operation. After successfully uploading all relevant parts of an upload, you - * call this operation to complete the upload. Upon receiving this request, Amazon - * S3 concatenates all the parts in ascending order by part number to create a new + * 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 operation - * concatenates the parts that you provide in the list. For each part in the list, - * you must provide the part number and the <code>ETag</code> value, returned after - * that part was uploaded.</p> <p>Processing of a Complete Multipart Upload request + * 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 <code>ETag</code> value, returned after that + * part was uploaded.</p> <p>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 @@ -787,8 +791,8 @@ namespace Aws * Objects Using Multipart Upload</a>.</p> <p>For information about permissions * required to use the multipart upload API, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html">Multipart - * Upload API and Permissions</a>.</p> <p> <code>CompleteMultipartUpload</code> has - * the following special errors:</p> <ul> <li> <p>Error code: + * Upload and Permissions</a>.</p> <p> <code>CompleteMultipartUpload</code> has the + * following special errors:</p> <ul> <li> <p>Error code: * <code>EntityTooSmall</code> </p> <ul> <li> <p>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.</p> </li> <li> <p>400 Bad Request</p> </li> </ul> @@ -824,9 +828,9 @@ namespace Aws /** * <p>Creates a copy of an object that is already stored in Amazon S3.</p> * <p>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 operation 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 <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 <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/CopyingObjctsUsingRESTMPUapi.html">Copy * Object Using the REST Multipart Upload API</a>.</p> <p>All copy requests * must be authenticated. Additionally, you must have <i>read</i> access to the @@ -837,7 +841,7 @@ namespace Aws * the Region that you want to copy the object to must be enabled for your * account.</p> <p>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 operation starts, you receive a standard Amazon S3 error. If the error + * 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 * <code>200 OK</code> response. This means that a <code>200 OK</code> response can * contain either a success or an error. Design your application to parse the @@ -847,7 +851,7 @@ namespace Aws * If it were not, it would not contain the content-length, and you would need to * read the entire body.</p> <p>The copy request charge is based on the * storage class and Region that you specify for the destination object. For - * pricing information, see <a href="https://aws.amazon.com/s3/pricing/">Amazon S3 + * pricing information, see <a href="http://aws.amazon.com/s3/pricing/">Amazon S3 * pricing</a>.</p> <p>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 <code>Bad Request</code> error. For more @@ -904,18 +908,18 @@ namespace Aws * Server-Side Encryption</a>.</p> <p>If a target object uses SSE-KMS, you can * enable an S3 Bucket Key for the object. For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-key.html">Amazon S3 - * Bucket Keys</a> in the <i>Amazon Simple Storage Service Developer Guide</i>.</p> - * <p> <b>Access Control List (ACL)-Specific Request Headers</b> </p> <p>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 AWS - * accounts or to predefined groups defined by Amazon S3. These permissions are - * then added to the ACL on the object. For more information, see <a + * Bucket Keys</a> in the <i>Amazon S3 User Guide</i>.</p> <p> <b>Access Control + * List (ACL)-Specific Request Headers</b> </p> <p>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 AWS accounts or to predefined groups + * defined by Amazon S3. These permissions are then added to the ACL on the object. + * For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html">Access * Control List (ACL) Overview</a> and <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-using-rest-api.html">Managing * ACLs Using the REST API</a>. </p> <p> <b>Storage Class Options</b> </p> <p>You - * can use the <code>CopyObject</code> operation to change the storage class of an + * can use the <code>CopyObject</code> action to change the storage class of an * object that is already stored in Amazon S3 using the <code>StorageClass</code> * parameter. For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html">Storage @@ -949,9 +953,9 @@ namespace Aws /** * <p>Creates a copy of an object that is already stored in Amazon S3.</p> * <p>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 operation 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 <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 <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/CopyingObjctsUsingRESTMPUapi.html">Copy * Object Using the REST Multipart Upload API</a>.</p> <p>All copy requests * must be authenticated. Additionally, you must have <i>read</i> access to the @@ -962,7 +966,7 @@ namespace Aws * the Region that you want to copy the object to must be enabled for your * account.</p> <p>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 operation starts, you receive a standard Amazon S3 error. If the error + * 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 * <code>200 OK</code> response. This means that a <code>200 OK</code> response can * contain either a success or an error. Design your application to parse the @@ -972,7 +976,7 @@ namespace Aws * If it were not, it would not contain the content-length, and you would need to * read the entire body.</p> <p>The copy request charge is based on the * storage class and Region that you specify for the destination object. For - * pricing information, see <a href="https://aws.amazon.com/s3/pricing/">Amazon S3 + * pricing information, see <a href="http://aws.amazon.com/s3/pricing/">Amazon S3 * pricing</a>.</p> <p>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 <code>Bad Request</code> error. For more @@ -1029,18 +1033,18 @@ namespace Aws * Server-Side Encryption</a>.</p> <p>If a target object uses SSE-KMS, you can * enable an S3 Bucket Key for the object. For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-key.html">Amazon S3 - * Bucket Keys</a> in the <i>Amazon Simple Storage Service Developer Guide</i>.</p> - * <p> <b>Access Control List (ACL)-Specific Request Headers</b> </p> <p>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 AWS - * accounts or to predefined groups defined by Amazon S3. These permissions are - * then added to the ACL on the object. For more information, see <a + * Bucket Keys</a> in the <i>Amazon S3 User Guide</i>.</p> <p> <b>Access Control + * List (ACL)-Specific Request Headers</b> </p> <p>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 AWS accounts or to predefined groups + * defined by Amazon S3. These permissions are then added to the ACL on the object. + * For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html">Access * Control List (ACL) Overview</a> and <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-using-rest-api.html">Managing * ACLs Using the REST API</a>. </p> <p> <b>Storage Class Options</b> </p> <p>You - * can use the <code>CopyObject</code> operation to change the storage class of an + * can use the <code>CopyObject</code> action to change the storage class of an * object that is already stored in Amazon S3 using the <code>StorageClass</code> * parameter. For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html">Storage @@ -1076,9 +1080,9 @@ namespace Aws /** * <p>Creates a copy of an object that is already stored in Amazon S3.</p> * <p>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 operation 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 <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 <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/CopyingObjctsUsingRESTMPUapi.html">Copy * Object Using the REST Multipart Upload API</a>.</p> <p>All copy requests * must be authenticated. Additionally, you must have <i>read</i> access to the @@ -1089,7 +1093,7 @@ namespace Aws * the Region that you want to copy the object to must be enabled for your * account.</p> <p>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 operation starts, you receive a standard Amazon S3 error. If the error + * 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 * <code>200 OK</code> response. This means that a <code>200 OK</code> response can * contain either a success or an error. Design your application to parse the @@ -1099,7 +1103,7 @@ namespace Aws * If it were not, it would not contain the content-length, and you would need to * read the entire body.</p> <p>The copy request charge is based on the * storage class and Region that you specify for the destination object. For - * pricing information, see <a href="https://aws.amazon.com/s3/pricing/">Amazon S3 + * pricing information, see <a href="http://aws.amazon.com/s3/pricing/">Amazon S3 * pricing</a>.</p> <p>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 <code>Bad Request</code> error. For more @@ -1156,18 +1160,18 @@ namespace Aws * Server-Side Encryption</a>.</p> <p>If a target object uses SSE-KMS, you can * enable an S3 Bucket Key for the object. For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-key.html">Amazon S3 - * Bucket Keys</a> in the <i>Amazon Simple Storage Service Developer Guide</i>.</p> - * <p> <b>Access Control List (ACL)-Specific Request Headers</b> </p> <p>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 AWS - * accounts or to predefined groups defined by Amazon S3. These permissions are - * then added to the ACL on the object. For more information, see <a + * Bucket Keys</a> in the <i>Amazon S3 User Guide</i>.</p> <p> <b>Access Control + * List (ACL)-Specific Request Headers</b> </p> <p>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 AWS accounts or to predefined groups + * defined by Amazon S3. These permissions are then added to the ACL on the object. + * For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html">Access * Control List (ACL) Overview</a> and <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-using-rest-api.html">Managing * ACLs Using the REST API</a>. </p> <p> <b>Storage Class Options</b> </p> <p>You - * can use the <code>CopyObject</code> operation to change the storage class of an + * can use the <code>CopyObject</code> action to change the storage class of an * object that is already stored in Amazon S3 using the <code>StorageClass</code> * parameter. For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html">Storage @@ -1409,7 +1413,7 @@ namespace Aws virtual void CreateBucketAsync(const Model::CreateBucketRequest& request, const CreateBucketResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; /** - * <p>This operation initiates a multipart upload and returns an upload ID. This + * <p>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 <a @@ -1421,18 +1425,18 @@ namespace Aws * Upload Overview</a>.</p> <p>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 operation and Amazon S3 aborts - * the multipart upload. For more information, see <a + * multipart upload becomes eligible for an abort action and Amazon S3 aborts the + * multipart upload. For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html#mpu-abort-incomplete-mpu-lifecycle-config">Aborting * Incomplete Multipart Uploads Using a Bucket Lifecycle Policy</a>.</p> <p>For * information about the permissions required to use the multipart upload API, see * <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html">Multipart - * Upload API and Permissions</a>.</p> <p>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 <a + * Upload and Permissions</a>.</p> <p>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 <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/sig-v4-authenticating-requests.html">Authenticating * Requests (AWS Signature Version 4)</a>.</p> <p> After you initiate a * multipart upload and upload one or more parts, to stop being charged for storing @@ -1445,7 +1449,8 @@ namespace Aws * key, or use AWS Key Management Service (AWS KMS) customer master keys (CMKs) or * Amazon S3-managed encryption keys. If you choose to provide your own encryption * key, the request headers you provide in <a - * href="AmazonS3/latest/API/API_UploadPart.html">UploadPart</a> and <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html">UploadPart</a> + * and <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html">UploadPartCopy</a> * requests must match the headers you used in the request to initiate the upload * by using <code>CreateMultipartUpload</code>. </p> <p>To perform a multipart @@ -1564,7 +1569,7 @@ namespace Aws virtual Model::CreateMultipartUploadOutcome CreateMultipartUpload(const Model::CreateMultipartUploadRequest& request) const; /** - * <p>This operation initiates a multipart upload and returns an upload ID. This + * <p>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 <a @@ -1576,18 +1581,18 @@ namespace Aws * Upload Overview</a>.</p> <p>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 operation and Amazon S3 aborts - * the multipart upload. For more information, see <a + * multipart upload becomes eligible for an abort action and Amazon S3 aborts the + * multipart upload. For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html#mpu-abort-incomplete-mpu-lifecycle-config">Aborting * Incomplete Multipart Uploads Using a Bucket Lifecycle Policy</a>.</p> <p>For * information about the permissions required to use the multipart upload API, see * <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html">Multipart - * Upload API and Permissions</a>.</p> <p>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 <a + * Upload and Permissions</a>.</p> <p>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 <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/sig-v4-authenticating-requests.html">Authenticating * Requests (AWS Signature Version 4)</a>.</p> <p> After you initiate a * multipart upload and upload one or more parts, to stop being charged for storing @@ -1600,7 +1605,8 @@ namespace Aws * key, or use AWS Key Management Service (AWS KMS) customer master keys (CMKs) or * Amazon S3-managed encryption keys. If you choose to provide your own encryption * key, the request headers you provide in <a - * href="AmazonS3/latest/API/API_UploadPart.html">UploadPart</a> and <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html">UploadPart</a> + * and <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html">UploadPartCopy</a> * requests must match the headers you used in the request to initiate the upload * by using <code>CreateMultipartUpload</code>. </p> <p>To perform a multipart @@ -1721,7 +1727,7 @@ namespace Aws virtual Model::CreateMultipartUploadOutcomeCallable CreateMultipartUploadCallable(const Model::CreateMultipartUploadRequest& request) const; /** - * <p>This operation initiates a multipart upload and returns an upload ID. This + * <p>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 <a @@ -1733,18 +1739,18 @@ namespace Aws * Upload Overview</a>.</p> <p>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 operation and Amazon S3 aborts - * the multipart upload. For more information, see <a + * multipart upload becomes eligible for an abort action and Amazon S3 aborts the + * multipart upload. For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html#mpu-abort-incomplete-mpu-lifecycle-config">Aborting * Incomplete Multipart Uploads Using a Bucket Lifecycle Policy</a>.</p> <p>For * information about the permissions required to use the multipart upload API, see * <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html">Multipart - * Upload API and Permissions</a>.</p> <p>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 <a + * Upload and Permissions</a>.</p> <p>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 <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/sig-v4-authenticating-requests.html">Authenticating * Requests (AWS Signature Version 4)</a>.</p> <p> After you initiate a * multipart upload and upload one or more parts, to stop being charged for storing @@ -1757,7 +1763,8 @@ namespace Aws * key, or use AWS Key Management Service (AWS KMS) customer master keys (CMKs) or * Amazon S3-managed encryption keys. If you choose to provide your own encryption * key, the request headers you provide in <a - * href="AmazonS3/latest/API/API_UploadPart.html">UploadPart</a> and <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html">UploadPart</a> + * and <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html">UploadPartCopy</a> * requests must match the headers you used in the request to initiate the upload * by using <code>CreateMultipartUpload</code>. </p> <p>To perform a multipart @@ -1926,9 +1933,9 @@ namespace Aws * perform the <code>s3:PutAnalyticsConfiguration</code> action. The bucket owner * has this permission by default. The bucket owner can grant this permission to * others. For more information about permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>For information about * the Amazon S3 analytics feature, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/analytics-storage-class.html">Amazon @@ -1951,9 +1958,9 @@ namespace Aws * perform the <code>s3:PutAnalyticsConfiguration</code> action. The bucket owner * has this permission by default. The bucket owner can grant this permission to * others. For more information about permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>For information about * the Amazon S3 analytics feature, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/analytics-storage-class.html">Amazon @@ -1978,9 +1985,9 @@ namespace Aws * perform the <code>s3:PutAnalyticsConfiguration</code> action. The bucket owner * has this permission by default. The bucket owner can grant this permission to * others. For more information about permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>For information about * the Amazon S3 analytics feature, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/analytics-storage-class.html">Amazon @@ -2006,9 +2013,8 @@ namespace Aws * default and can grant this permission to others. </p> <p>For information about * <code>cors</code>, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/cors.html">Enabling - * Cross-Origin Resource Sharing</a> in the <i>Amazon Simple Storage Service - * Developer Guide</i>.</p> <p class="title"> <b>Related Resources:</b> </p> <ul> - * <li> <p> <a + * Cross-Origin Resource Sharing</a> in the <i>Amazon S3 User Guide</i>.</p> <p + * class="title"> <b>Related Resources:</b> </p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketCors.html">PutBucketCors</a> * </p> </li> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/RESTOPTIONSobject.html">RESTOPTIONSobject</a> @@ -2025,9 +2031,8 @@ namespace Aws * default and can grant this permission to others. </p> <p>For information about * <code>cors</code>, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/cors.html">Enabling - * Cross-Origin Resource Sharing</a> in the <i>Amazon Simple Storage Service - * Developer Guide</i>.</p> <p class="title"> <b>Related Resources:</b> </p> <ul> - * <li> <p> <a + * Cross-Origin Resource Sharing</a> in the <i>Amazon S3 User Guide</i>.</p> <p + * class="title"> <b>Related Resources:</b> </p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketCors.html">PutBucketCors</a> * </p> </li> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/RESTOPTIONSobject.html">RESTOPTIONSobject</a> @@ -2046,9 +2051,8 @@ namespace Aws * default and can grant this permission to others. </p> <p>For information about * <code>cors</code>, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/cors.html">Enabling - * Cross-Origin Resource Sharing</a> in the <i>Amazon Simple Storage Service - * Developer Guide</i>.</p> <p class="title"> <b>Related Resources:</b> </p> <ul> - * <li> <p> <a + * Cross-Origin Resource Sharing</a> in the <i>Amazon S3 User Guide</i>.</p> <p + * class="title"> <b>Related Resources:</b> </p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketCors.html">PutBucketCors</a> * </p> </li> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/RESTOPTIONSobject.html">RESTOPTIONSobject</a> @@ -2061,21 +2065,19 @@ namespace Aws virtual void DeleteBucketCorsAsync(const Model::DeleteBucketCorsRequest& request, const DeleteBucketCorsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; /** - * <p>This implementation of the DELETE operation removes default encryption from - * the bucket. For information about the Amazon S3 default encryption feature, see - * <a + * <p>This implementation of the DELETE action removes default encryption from the + * bucket. For information about the Amazon S3 default encryption feature, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html">Amazon - * S3 Default Bucket Encryption</a> in the <i>Amazon Simple Storage Service - * Developer Guide</i>.</p> <p>To use this operation, you must have permissions to - * perform the <code>s3:PutEncryptionConfiguration</code> action. The bucket owner - * has this permission by default. The bucket owner can grant this permission to - * others. For more information about permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * S3 Default Bucket Encryption</a> in the <i>Amazon S3 User Guide</i>.</p> <p>To + * use this operation, you must have permissions to perform the + * <code>s3:PutEncryptionConfiguration</code> action. The bucket owner has this + * permission by default. The bucket owner can grant this permission to others. For + * more information about permissions, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing - * Access Permissions to your Amazon S3 Resources</a> in the <i>Amazon Simple - * Storage Service Developer Guide</i>.</p> <p class="title"> <b>Related - * Resources</b> </p> <ul> <li> <p> <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing + * Access Permissions to your Amazon S3 Resources</a> in the <i>Amazon S3 User + * Guide</i>.</p> <p class="title"> <b>Related Resources</b> </p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketEncryption.html">PutBucketEncryption</a> * </p> </li> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketEncryption.html">GetBucketEncryption</a> @@ -2086,21 +2088,19 @@ namespace Aws virtual Model::DeleteBucketEncryptionOutcome DeleteBucketEncryption(const Model::DeleteBucketEncryptionRequest& request) const; /** - * <p>This implementation of the DELETE operation removes default encryption from - * the bucket. For information about the Amazon S3 default encryption feature, see - * <a + * <p>This implementation of the DELETE action removes default encryption from the + * bucket. For information about the Amazon S3 default encryption feature, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html">Amazon - * S3 Default Bucket Encryption</a> in the <i>Amazon Simple Storage Service - * Developer Guide</i>.</p> <p>To use this operation, you must have permissions to - * perform the <code>s3:PutEncryptionConfiguration</code> action. The bucket owner - * has this permission by default. The bucket owner can grant this permission to - * others. For more information about permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * S3 Default Bucket Encryption</a> in the <i>Amazon S3 User Guide</i>.</p> <p>To + * use this operation, you must have permissions to perform the + * <code>s3:PutEncryptionConfiguration</code> action. The bucket owner has this + * permission by default. The bucket owner can grant this permission to others. For + * more information about permissions, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing - * Access Permissions to your Amazon S3 Resources</a> in the <i>Amazon Simple - * Storage Service Developer Guide</i>.</p> <p class="title"> <b>Related - * Resources</b> </p> <ul> <li> <p> <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing + * Access Permissions to your Amazon S3 Resources</a> in the <i>Amazon S3 User + * Guide</i>.</p> <p class="title"> <b>Related Resources</b> </p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketEncryption.html">PutBucketEncryption</a> * </p> </li> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketEncryption.html">GetBucketEncryption</a> @@ -2113,21 +2113,19 @@ namespace Aws virtual Model::DeleteBucketEncryptionOutcomeCallable DeleteBucketEncryptionCallable(const Model::DeleteBucketEncryptionRequest& request) const; /** - * <p>This implementation of the DELETE operation removes default encryption from - * the bucket. For information about the Amazon S3 default encryption feature, see - * <a + * <p>This implementation of the DELETE action removes default encryption from the + * bucket. For information about the Amazon S3 default encryption feature, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html">Amazon - * S3 Default Bucket Encryption</a> in the <i>Amazon Simple Storage Service - * Developer Guide</i>.</p> <p>To use this operation, you must have permissions to - * perform the <code>s3:PutEncryptionConfiguration</code> action. The bucket owner - * has this permission by default. The bucket owner can grant this permission to - * others. For more information about permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * S3 Default Bucket Encryption</a> in the <i>Amazon S3 User Guide</i>.</p> <p>To + * use this operation, you must have permissions to perform the + * <code>s3:PutEncryptionConfiguration</code> action. The bucket owner has this + * permission by default. The bucket owner can grant this permission to others. For + * more information about permissions, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing - * Access Permissions to your Amazon S3 Resources</a> in the <i>Amazon Simple - * Storage Service Developer Guide</i>.</p> <p class="title"> <b>Related - * Resources</b> </p> <ul> <li> <p> <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing + * Access Permissions to your Amazon S3 Resources</a> in the <i>Amazon S3 User + * Guide</i>.</p> <p class="title"> <b>Related Resources</b> </p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketEncryption.html">PutBucketEncryption</a> * </p> </li> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketEncryption.html">GetBucketEncryption</a> @@ -2236,9 +2234,9 @@ namespace Aws * <code>s3:PutInventoryConfiguration</code> action. The bucket owner has this * permission by default. The bucket owner can grant this permission to others. For * more information about permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>For information about * the Amazon S3 inventory feature, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-inventory.html">Amazon @@ -2261,9 +2259,9 @@ namespace Aws * <code>s3:PutInventoryConfiguration</code> action. The bucket owner has this * permission by default. The bucket owner can grant this permission to others. For * more information about permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>For information about * the Amazon S3 inventory feature, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-inventory.html">Amazon @@ -2288,9 +2286,9 @@ namespace Aws * <code>s3:PutInventoryConfiguration</code> action. The bucket owner has this * permission by default. The bucket owner can grant this permission to others. For * more information about permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>For information about * the Amazon S3 inventory feature, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-inventory.html">Amazon @@ -2389,9 +2387,9 @@ namespace Aws * must have permissions to perform the <code>s3:PutMetricsConfiguration</code> * action. The bucket owner has this permission by default. The bucket owner can * grant this permission to others. For more information about permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>For information about * CloudWatch request metrics for Amazon S3, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/cloudwatch-monitoring.html">Monitoring @@ -2417,9 +2415,9 @@ namespace Aws * must have permissions to perform the <code>s3:PutMetricsConfiguration</code> * action. The bucket owner has this permission by default. The bucket owner can * grant this permission to others. For more information about permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>For information about * CloudWatch request metrics for Amazon S3, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/cloudwatch-monitoring.html">Monitoring @@ -2447,9 +2445,9 @@ namespace Aws * must have permissions to perform the <code>s3:PutMetricsConfiguration</code> * action. The bucket owner has this permission by default. The bucket owner can * grant this permission to others. For more information about permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>For information about * CloudWatch request metrics for Amazon S3, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/cloudwatch-monitoring.html">Monitoring @@ -2526,7 +2524,7 @@ namespace Aws virtual void DeleteBucketOwnershipControlsAsync(const Model::DeleteBucketOwnershipControlsRequest& request, const DeleteBucketOwnershipControlsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; /** - * <p>This implementation of the DELETE operation uses the policy subresource to + * <p>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 AWS account that owns the bucket, the calling identity must * have the <code>DeleteBucketPolicy</code> permissions on the specified bucket and @@ -2538,8 +2536,8 @@ namespace Aws * precaution, the root user of the AWS 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.</p> <p>For more information about bucket - * policies, see <a href=" - * https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html">Using + * policies, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html">Using * Bucket Policies and UserPolicies</a>. </p> <p>The following operations are * related to <code>DeleteBucketPolicy</code> </p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html">CreateBucket</a> @@ -2552,7 +2550,7 @@ namespace Aws virtual Model::DeleteBucketPolicyOutcome DeleteBucketPolicy(const Model::DeleteBucketPolicyRequest& request) const; /** - * <p>This implementation of the DELETE operation uses the policy subresource to + * <p>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 AWS account that owns the bucket, the calling identity must * have the <code>DeleteBucketPolicy</code> permissions on the specified bucket and @@ -2564,8 +2562,8 @@ namespace Aws * precaution, the root user of the AWS 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.</p> <p>For more information about bucket - * policies, see <a href=" - * https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html">Using + * policies, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html">Using * Bucket Policies and UserPolicies</a>. </p> <p>The following operations are * related to <code>DeleteBucketPolicy</code> </p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html">CreateBucket</a> @@ -2580,7 +2578,7 @@ namespace Aws virtual Model::DeleteBucketPolicyOutcomeCallable DeleteBucketPolicyCallable(const Model::DeleteBucketPolicyRequest& request) const; /** - * <p>This implementation of the DELETE operation uses the policy subresource to + * <p>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 AWS account that owns the bucket, the calling identity must * have the <code>DeleteBucketPolicy</code> permissions on the specified bucket and @@ -2592,8 +2590,8 @@ namespace Aws * precaution, the root user of the AWS 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.</p> <p>For more information about bucket - * policies, see <a href=" - * https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html">Using + * policies, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html">Using * Bucket Policies and UserPolicies</a>. </p> <p>The following operations are * related to <code>DeleteBucketPolicy</code> </p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html">CreateBucket</a> @@ -2613,13 +2611,13 @@ namespace Aws * <code>s3:PutReplicationConfiguration</code> action. The bucket owner has these * permissions by default and can grant it to others. For more information about * permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>. </p> <p>It can take a * while for the deletion of a replication configuration to fully propagate.</p> - * <p> For information about replication configuration, see <a href=" - * https://docs.aws.amazon.com/AmazonS3/latest/dev/replication.html">Replication</a> + * <p> For information about replication configuration, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/replication.html">Replication</a> * in the <i>Amazon S3 Developer Guide</i>. </p> <p>The following operations are * related to <code>DeleteBucketReplication</code>:</p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketReplication.html">PutBucketReplication</a> @@ -2637,13 +2635,13 @@ namespace Aws * <code>s3:PutReplicationConfiguration</code> action. The bucket owner has these * permissions by default and can grant it to others. For more information about * permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>. </p> <p>It can take a * while for the deletion of a replication configuration to fully propagate.</p> - * <p> For information about replication configuration, see <a href=" - * https://docs.aws.amazon.com/AmazonS3/latest/dev/replication.html">Replication</a> + * <p> For information about replication configuration, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/replication.html">Replication</a> * in the <i>Amazon S3 Developer Guide</i>. </p> <p>The following operations are * related to <code>DeleteBucketReplication</code>:</p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketReplication.html">PutBucketReplication</a> @@ -2663,13 +2661,13 @@ namespace Aws * <code>s3:PutReplicationConfiguration</code> action. The bucket owner has these * permissions by default and can grant it to others. For more information about * permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>. </p> <p>It can take a * while for the deletion of a replication configuration to fully propagate.</p> - * <p> For information about replication configuration, see <a href=" - * https://docs.aws.amazon.com/AmazonS3/latest/dev/replication.html">Replication</a> + * <p> For information about replication configuration, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/replication.html">Replication</a> * in the <i>Amazon S3 Developer Guide</i>. </p> <p>The following operations are * related to <code>DeleteBucketReplication</code>:</p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketReplication.html">PutBucketReplication</a> @@ -2733,13 +2731,13 @@ namespace Aws virtual void DeleteBucketTaggingAsync(const Model::DeleteBucketTaggingRequest& request, const DeleteBucketTaggingResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; /** - * <p>This operation removes the website configuration for a bucket. Amazon S3 - * returns a <code>200 OK</code> response upon successfully deleting a website + * <p>This action removes the website configuration for a bucket. Amazon S3 returns + * a <code>200 OK</code> response upon successfully deleting a website * configuration on the specified bucket. You will get a <code>200 OK</code> * response if the website configuration you are trying to delete does not exist on * the bucket. Amazon S3 returns a <code>404</code> response if the bucket - * specified in the request does not exist.</p> <p>This DELETE operation requires - * the <code>S3:DeleteBucketWebsite</code> permission. By default, only the bucket + * specified in the request does not exist.</p> <p>This DELETE action requires the + * <code>S3:DeleteBucketWebsite</code> 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 <code>S3:DeleteBucketWebsite</code> @@ -2757,13 +2755,13 @@ namespace Aws virtual Model::DeleteBucketWebsiteOutcome DeleteBucketWebsite(const Model::DeleteBucketWebsiteRequest& request) const; /** - * <p>This operation removes the website configuration for a bucket. Amazon S3 - * returns a <code>200 OK</code> response upon successfully deleting a website + * <p>This action removes the website configuration for a bucket. Amazon S3 returns + * a <code>200 OK</code> response upon successfully deleting a website * configuration on the specified bucket. You will get a <code>200 OK</code> * response if the website configuration you are trying to delete does not exist on * the bucket. Amazon S3 returns a <code>404</code> response if the bucket - * specified in the request does not exist.</p> <p>This DELETE operation requires - * the <code>S3:DeleteBucketWebsite</code> permission. By default, only the bucket + * specified in the request does not exist.</p> <p>This DELETE action requires the + * <code>S3:DeleteBucketWebsite</code> 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 <code>S3:DeleteBucketWebsite</code> @@ -2783,13 +2781,13 @@ namespace Aws virtual Model::DeleteBucketWebsiteOutcomeCallable DeleteBucketWebsiteCallable(const Model::DeleteBucketWebsiteRequest& request) const; /** - * <p>This operation removes the website configuration for a bucket. Amazon S3 - * returns a <code>200 OK</code> response upon successfully deleting a website + * <p>This action removes the website configuration for a bucket. Amazon S3 returns + * a <code>200 OK</code> response upon successfully deleting a website * configuration on the specified bucket. You will get a <code>200 OK</code> * response if the website configuration you are trying to delete does not exist on * the bucket. Amazon S3 returns a <code>404</code> response if the bucket - * specified in the request does not exist.</p> <p>This DELETE operation requires - * the <code>S3:DeleteBucketWebsite</code> permission. By default, only the bucket + * specified in the request does not exist.</p> <p>This DELETE action requires the + * <code>S3:DeleteBucketWebsite</code> 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 <code>S3:DeleteBucketWebsite</code> @@ -2811,27 +2809,27 @@ namespace Aws /** * <p>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.</p> <p>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, - * <code>x-amz-delete-marker</code>, to true. </p> <p>If the object you want to - * delete is in a bucket where the bucket versioning configuration is MFA Delete - * enabled, you must include the <code>x-amz-mfa</code> request header in the - * DELETE <code>versionId</code> request. Requests that include - * <code>x-amz-mfa</code> must use HTTPS. </p> <p> For more information about MFA - * Delete, see <a + * version, Amazon S3 does not remove any objects but will still respond that the + * command was successful.</p> <p>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, <code>x-amz-delete-marker</code>, to true. + * </p> <p>If the object you want to delete is in a bucket where the bucket + * versioning configuration is MFA Delete enabled, you must include the + * <code>x-amz-mfa</code> request header in the DELETE <code>versionId</code> + * request. Requests that include <code>x-amz-mfa</code> must use HTTPS. </p> <p> + * For more information about MFA Delete, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMFADelete.html">Using * MFA Delete</a>. To see sample requests that use versioning, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectDELETE.html#ExampleVersionObjectDelete">Sample - * Request</a>. </p> <p>You can delete objects by explicitly calling the DELETE - * Object API or configure its lifecycle (<a + * Request</a>. </p> <p>You can delete objects by explicitly calling DELETE Object + * or configure its lifecycle (<a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycle.html">PutBucketLifecycle</a>) * 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 <code>s3:DeleteObject</code>, <code>s3:DeleteObjectVersion</code>, and - * <code>s3:PutLifeCycleConfiguration</code> actions. </p> <p>The following - * operation is related to <code>DeleteObject</code>:</p> <ul> <li> <p> <a + * <code>s3:PutLifeCycleConfiguration</code> actions. </p> <p>The following action + * is related to <code>DeleteObject</code>:</p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html">PutObject</a> * </p> </li> </ul><p><h3>See Also:</h3> <a * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteObject">AWS API @@ -2842,27 +2840,27 @@ namespace Aws /** * <p>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.</p> <p>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, - * <code>x-amz-delete-marker</code>, to true. </p> <p>If the object you want to - * delete is in a bucket where the bucket versioning configuration is MFA Delete - * enabled, you must include the <code>x-amz-mfa</code> request header in the - * DELETE <code>versionId</code> request. Requests that include - * <code>x-amz-mfa</code> must use HTTPS. </p> <p> For more information about MFA - * Delete, see <a + * version, Amazon S3 does not remove any objects but will still respond that the + * command was successful.</p> <p>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, <code>x-amz-delete-marker</code>, to true. + * </p> <p>If the object you want to delete is in a bucket where the bucket + * versioning configuration is MFA Delete enabled, you must include the + * <code>x-amz-mfa</code> request header in the DELETE <code>versionId</code> + * request. Requests that include <code>x-amz-mfa</code> must use HTTPS. </p> <p> + * For more information about MFA Delete, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMFADelete.html">Using * MFA Delete</a>. To see sample requests that use versioning, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectDELETE.html#ExampleVersionObjectDelete">Sample - * Request</a>. </p> <p>You can delete objects by explicitly calling the DELETE - * Object API or configure its lifecycle (<a + * Request</a>. </p> <p>You can delete objects by explicitly calling DELETE Object + * or configure its lifecycle (<a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycle.html">PutBucketLifecycle</a>) * 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 <code>s3:DeleteObject</code>, <code>s3:DeleteObjectVersion</code>, and - * <code>s3:PutLifeCycleConfiguration</code> actions. </p> <p>The following - * operation is related to <code>DeleteObject</code>:</p> <ul> <li> <p> <a + * <code>s3:PutLifeCycleConfiguration</code> actions. </p> <p>The following action + * is related to <code>DeleteObject</code>:</p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html">PutObject</a> * </p> </li> </ul><p><h3>See Also:</h3> <a * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteObject">AWS API @@ -2875,27 +2873,27 @@ namespace Aws /** * <p>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.</p> <p>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, - * <code>x-amz-delete-marker</code>, to true. </p> <p>If the object you want to - * delete is in a bucket where the bucket versioning configuration is MFA Delete - * enabled, you must include the <code>x-amz-mfa</code> request header in the - * DELETE <code>versionId</code> request. Requests that include - * <code>x-amz-mfa</code> must use HTTPS. </p> <p> For more information about MFA - * Delete, see <a + * version, Amazon S3 does not remove any objects but will still respond that the + * command was successful.</p> <p>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, <code>x-amz-delete-marker</code>, to true. + * </p> <p>If the object you want to delete is in a bucket where the bucket + * versioning configuration is MFA Delete enabled, you must include the + * <code>x-amz-mfa</code> request header in the DELETE <code>versionId</code> + * request. Requests that include <code>x-amz-mfa</code> must use HTTPS. </p> <p> + * For more information about MFA Delete, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMFADelete.html">Using * MFA Delete</a>. To see sample requests that use versioning, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectDELETE.html#ExampleVersionObjectDelete">Sample - * Request</a>. </p> <p>You can delete objects by explicitly calling the DELETE - * Object API or configure its lifecycle (<a + * Request</a>. </p> <p>You can delete objects by explicitly calling DELETE Object + * or configure its lifecycle (<a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycle.html">PutBucketLifecycle</a>) * 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 <code>s3:DeleteObject</code>, <code>s3:DeleteObjectVersion</code>, and - * <code>s3:PutLifeCycleConfiguration</code> actions. </p> <p>The following - * operation is related to <code>DeleteObject</code>:</p> <ul> <li> <p> <a + * <code>s3:PutLifeCycleConfiguration</code> actions. </p> <p>The following action + * is related to <code>DeleteObject</code>:</p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html">PutObject</a> * </p> </li> </ul><p><h3>See Also:</h3> <a * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteObject">AWS API @@ -2970,27 +2968,27 @@ namespace Aws virtual void DeleteObjectTaggingAsync(const Model::DeleteObjectTaggingRequest& request, const DeleteObjectTaggingResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; /** - * <p>This operation enables you to delete multiple objects from a bucket using a + * <p>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 operation provides a suitable alternative to sending individual delete + * this action provides a suitable alternative to sending individual delete * requests, reducing per-request overhead.</p> <p>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 operation 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.</p> <p> The operation supports two - * modes for the response: verbose and quiet. By default, the operation 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 - * operation encountered an error. For a successful deletion, the operation does - * not return any information about the delete in the response body.</p> <p>When - * performing this operation 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 <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.</p> <p> 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.</p> <p>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 <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/Versioning.html#MultiFactorAuthenticationDelete"> * MFA Delete</a>.</p> <p>Finally, the Content-MD5 header is required for all * Multi-Object Delete requests. Amazon S3 uses the header value to ensure that @@ -3012,27 +3010,27 @@ namespace Aws virtual Model::DeleteObjectsOutcome DeleteObjects(const Model::DeleteObjectsRequest& request) const; /** - * <p>This operation enables you to delete multiple objects from a bucket using a + * <p>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 operation provides a suitable alternative to sending individual delete + * this action provides a suitable alternative to sending individual delete * requests, reducing per-request overhead.</p> <p>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 operation 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.</p> <p> The operation supports two - * modes for the response: verbose and quiet. By default, the operation 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 - * operation encountered an error. For a successful deletion, the operation does - * not return any information about the delete in the response body.</p> <p>When - * performing this operation 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 <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.</p> <p> 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.</p> <p>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 <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/Versioning.html#MultiFactorAuthenticationDelete"> * MFA Delete</a>.</p> <p>Finally, the Content-MD5 header is required for all * Multi-Object Delete requests. Amazon S3 uses the header value to ensure that @@ -3056,27 +3054,27 @@ namespace Aws virtual Model::DeleteObjectsOutcomeCallable DeleteObjectsCallable(const Model::DeleteObjectsRequest& request) const; /** - * <p>This operation enables you to delete multiple objects from a bucket using a + * <p>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 operation provides a suitable alternative to sending individual delete + * this action provides a suitable alternative to sending individual delete * requests, reducing per-request overhead.</p> <p>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 operation 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.</p> <p> The operation supports two - * modes for the response: verbose and quiet. By default, the operation 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 - * operation encountered an error. For a successful deletion, the operation does - * not return any information about the delete in the response body.</p> <p>When - * performing this operation 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 <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.</p> <p> 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.</p> <p>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 <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/Versioning.html#MultiFactorAuthenticationDelete"> * MFA Delete</a>.</p> <p>Finally, the Content-MD5 header is required for all * Multi-Object Delete requests. Amazon S3 uses the header value to ensure that @@ -3104,9 +3102,9 @@ namespace Aws * bucket. To use this operation, you must have the * <code>s3:PutBucketPublicAccessBlock</code> permission. For more information * about permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>The following * operations are related to <code>DeletePublicAccessBlock</code>:</p> <ul> <li> * <p> <a @@ -3128,9 +3126,9 @@ namespace Aws * bucket. To use this operation, you must have the * <code>s3:PutBucketPublicAccessBlock</code> permission. For more information * about permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>The following * operations are related to <code>DeletePublicAccessBlock</code>:</p> <ul> <li> * <p> <a @@ -3154,9 +3152,9 @@ namespace Aws * bucket. To use this operation, you must have the * <code>s3:PutBucketPublicAccessBlock</code> permission. For more information * about permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>The following * operations are related to <code>DeletePublicAccessBlock</code>:</p> <ul> <li> * <p> <a @@ -3176,7 +3174,7 @@ namespace Aws virtual void DeletePublicAccessBlockAsync(const Model::DeletePublicAccessBlockRequest& request, const DeletePublicAccessBlockResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; /** - * <p>This implementation of the GET operation uses the <code>accelerate</code> + * <p>This implementation of the GET action uses the <code>accelerate</code> * subresource to return the Transfer Acceleration state of a bucket, which is * either <code>Enabled</code> or <code>Suspended</code>. Amazon S3 Transfer * Acceleration is a bucket-level feature that enables you to perform faster data @@ -3184,21 +3182,20 @@ namespace Aws * permission to perform the <code>s3:GetAccelerateConfiguration</code> action. The * bucket owner has this permission by default. The bucket owner can grant this * permission to others. For more information about permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing - * Access Permissions to your Amazon S3 Resources</a> in the <i>Amazon Simple - * Storage Service Developer Guide</i>.</p> <p>You set the Transfer Acceleration - * state of an existing bucket to <code>Enabled</code> or <code>Suspended</code> by - * using the <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing + * Access Permissions to your Amazon S3 Resources</a> in the <i>Amazon S3 User + * Guide</i>.</p> <p>You set the Transfer Acceleration state of an existing bucket + * to <code>Enabled</code> or <code>Suspended</code> by using the <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketAccelerateConfiguration.html">PutBucketAccelerateConfiguration</a> * operation. </p> <p>A GET <code>accelerate</code> 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. </p> * <p>For more information about transfer acceleration, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/transfer-acceleration.html">Transfer - * Acceleration</a> in the Amazon Simple Storage Service Developer Guide.</p> <p - * class="title"> <b>Related Resources</b> </p> <ul> <li> <p> <a + * Acceleration</a> in the Amazon S3 User Guide.</p> <p class="title"> <b>Related + * Resources</b> </p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketAccelerateConfiguration.html">PutBucketAccelerateConfiguration</a> * </p> </li> </ul><p><h3>See Also:</h3> <a * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketAccelerateConfiguration">AWS @@ -3207,7 +3204,7 @@ namespace Aws virtual Model::GetBucketAccelerateConfigurationOutcome GetBucketAccelerateConfiguration(const Model::GetBucketAccelerateConfigurationRequest& request) const; /** - * <p>This implementation of the GET operation uses the <code>accelerate</code> + * <p>This implementation of the GET action uses the <code>accelerate</code> * subresource to return the Transfer Acceleration state of a bucket, which is * either <code>Enabled</code> or <code>Suspended</code>. Amazon S3 Transfer * Acceleration is a bucket-level feature that enables you to perform faster data @@ -3215,21 +3212,20 @@ namespace Aws * permission to perform the <code>s3:GetAccelerateConfiguration</code> action. The * bucket owner has this permission by default. The bucket owner can grant this * permission to others. For more information about permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing - * Access Permissions to your Amazon S3 Resources</a> in the <i>Amazon Simple - * Storage Service Developer Guide</i>.</p> <p>You set the Transfer Acceleration - * state of an existing bucket to <code>Enabled</code> or <code>Suspended</code> by - * using the <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing + * Access Permissions to your Amazon S3 Resources</a> in the <i>Amazon S3 User + * Guide</i>.</p> <p>You set the Transfer Acceleration state of an existing bucket + * to <code>Enabled</code> or <code>Suspended</code> by using the <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketAccelerateConfiguration.html">PutBucketAccelerateConfiguration</a> * operation. </p> <p>A GET <code>accelerate</code> 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. </p> * <p>For more information about transfer acceleration, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/transfer-acceleration.html">Transfer - * Acceleration</a> in the Amazon Simple Storage Service Developer Guide.</p> <p - * class="title"> <b>Related Resources</b> </p> <ul> <li> <p> <a + * Acceleration</a> in the Amazon S3 User Guide.</p> <p class="title"> <b>Related + * Resources</b> </p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketAccelerateConfiguration.html">PutBucketAccelerateConfiguration</a> * </p> </li> </ul><p><h3>See Also:</h3> <a * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketAccelerateConfiguration">AWS @@ -3240,7 +3236,7 @@ namespace Aws virtual Model::GetBucketAccelerateConfigurationOutcomeCallable GetBucketAccelerateConfigurationCallable(const Model::GetBucketAccelerateConfigurationRequest& request) const; /** - * <p>This implementation of the GET operation uses the <code>accelerate</code> + * <p>This implementation of the GET action uses the <code>accelerate</code> * subresource to return the Transfer Acceleration state of a bucket, which is * either <code>Enabled</code> or <code>Suspended</code>. Amazon S3 Transfer * Acceleration is a bucket-level feature that enables you to perform faster data @@ -3248,21 +3244,20 @@ namespace Aws * permission to perform the <code>s3:GetAccelerateConfiguration</code> action. The * bucket owner has this permission by default. The bucket owner can grant this * permission to others. For more information about permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing - * Access Permissions to your Amazon S3 Resources</a> in the <i>Amazon Simple - * Storage Service Developer Guide</i>.</p> <p>You set the Transfer Acceleration - * state of an existing bucket to <code>Enabled</code> or <code>Suspended</code> by - * using the <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing + * Access Permissions to your Amazon S3 Resources</a> in the <i>Amazon S3 User + * Guide</i>.</p> <p>You set the Transfer Acceleration state of an existing bucket + * to <code>Enabled</code> or <code>Suspended</code> by using the <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketAccelerateConfiguration.html">PutBucketAccelerateConfiguration</a> * operation. </p> <p>A GET <code>accelerate</code> 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. </p> * <p>For more information about transfer acceleration, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/transfer-acceleration.html">Transfer - * Acceleration</a> in the Amazon Simple Storage Service Developer Guide.</p> <p - * class="title"> <b>Related Resources</b> </p> <ul> <li> <p> <a + * Acceleration</a> in the Amazon S3 User Guide.</p> <p class="title"> <b>Related + * Resources</b> </p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketAccelerateConfiguration.html">PutBucketAccelerateConfiguration</a> * </p> </li> </ul><p><h3>See Also:</h3> <a * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketAccelerateConfiguration">AWS @@ -3273,9 +3268,9 @@ namespace Aws virtual void GetBucketAccelerateConfigurationAsync(const Model::GetBucketAccelerateConfigurationRequest& request, const GetBucketAccelerateConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; /** - * <p>This implementation of the <code>GET</code> operation uses the - * <code>acl</code> subresource to return the access control list (ACL) of a - * bucket. To use <code>GET</code> to return the ACL of the bucket, you must have + * <p>This implementation of the <code>GET</code> action uses the <code>acl</code> + * subresource to return the access control list (ACL) of a bucket. To use + * <code>GET</code> to return the ACL of the bucket, you must have * <code>READ_ACP</code> access to the bucket. If <code>READ_ACP</code> permission * is granted to the anonymous user, you can return the ACL of the bucket without * using an authorization header.</p> <p class="title"> <b>Related Resources</b> @@ -3288,9 +3283,9 @@ namespace Aws virtual Model::GetBucketAclOutcome GetBucketAcl(const Model::GetBucketAclRequest& request) const; /** - * <p>This implementation of the <code>GET</code> operation uses the - * <code>acl</code> subresource to return the access control list (ACL) of a - * bucket. To use <code>GET</code> to return the ACL of the bucket, you must have + * <p>This implementation of the <code>GET</code> action uses the <code>acl</code> + * subresource to return the access control list (ACL) of a bucket. To use + * <code>GET</code> to return the ACL of the bucket, you must have * <code>READ_ACP</code> access to the bucket. If <code>READ_ACP</code> permission * is granted to the anonymous user, you can return the ACL of the bucket without * using an authorization header.</p> <p class="title"> <b>Related Resources</b> @@ -3305,9 +3300,9 @@ namespace Aws virtual Model::GetBucketAclOutcomeCallable GetBucketAclCallable(const Model::GetBucketAclRequest& request) const; /** - * <p>This implementation of the <code>GET</code> operation uses the - * <code>acl</code> subresource to return the access control list (ACL) of a - * bucket. To use <code>GET</code> to return the ACL of the bucket, you must have + * <p>This implementation of the <code>GET</code> action uses the <code>acl</code> + * subresource to return the access control list (ACL) of a bucket. To use + * <code>GET</code> to return the ACL of the bucket, you must have * <code>READ_ACP</code> access to the bucket. If <code>READ_ACP</code> permission * is granted to the anonymous user, you can return the ACL of the bucket without * using an authorization header.</p> <p class="title"> <b>Related Resources</b> @@ -3322,22 +3317,20 @@ namespace Aws virtual void GetBucketAclAsync(const Model::GetBucketAclRequest& request, const GetBucketAclResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; /** - * <p>This implementation of the GET operation returns an analytics configuration + * <p>This implementation of the GET action returns an analytics configuration * (identified by the analytics configuration ID) from the bucket.</p> <p>To use * this operation, you must have permissions to perform the * <code>s3:GetAnalyticsConfiguration</code> action. The bucket owner has this * permission by default. The bucket owner can grant this permission to others. For * more information about permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources"> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources"> * Permissions Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing - * Access Permissions to Your Amazon S3 Resources</a> in the <i>Amazon Simple - * Storage Service Developer Guide</i>. </p> <p>For information about Amazon S3 - * analytics feature, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing + * Access Permissions to Your Amazon S3 Resources</a> in the <i>Amazon S3 User + * Guide</i>. </p> <p>For information about Amazon S3 analytics feature, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/analytics-storage-class.html">Amazon - * S3 Analytics – Storage Class Analysis</a> in the <i>Amazon Simple Storage - * Service Developer Guide</i>.</p> <p class="title"> <b>Related Resources</b> </p> - * <ul> <li> <p> <a + * S3 Analytics – Storage Class Analysis</a> in the <i>Amazon S3 User + * Guide</i>.</p> <p class="title"> <b>Related Resources</b> </p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketAnalyticsConfiguration.html">DeleteBucketAnalyticsConfiguration</a> * </p> </li> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBucketAnalyticsConfigurations.html">ListBucketAnalyticsConfigurations</a> @@ -3350,22 +3343,20 @@ namespace Aws virtual Model::GetBucketAnalyticsConfigurationOutcome GetBucketAnalyticsConfiguration(const Model::GetBucketAnalyticsConfigurationRequest& request) const; /** - * <p>This implementation of the GET operation returns an analytics configuration + * <p>This implementation of the GET action returns an analytics configuration * (identified by the analytics configuration ID) from the bucket.</p> <p>To use * this operation, you must have permissions to perform the * <code>s3:GetAnalyticsConfiguration</code> action. The bucket owner has this * permission by default. The bucket owner can grant this permission to others. For * more information about permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources"> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources"> * Permissions Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing - * Access Permissions to Your Amazon S3 Resources</a> in the <i>Amazon Simple - * Storage Service Developer Guide</i>. </p> <p>For information about Amazon S3 - * analytics feature, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing + * Access Permissions to Your Amazon S3 Resources</a> in the <i>Amazon S3 User + * Guide</i>. </p> <p>For information about Amazon S3 analytics feature, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/analytics-storage-class.html">Amazon - * S3 Analytics – Storage Class Analysis</a> in the <i>Amazon Simple Storage - * Service Developer Guide</i>.</p> <p class="title"> <b>Related Resources</b> </p> - * <ul> <li> <p> <a + * S3 Analytics – Storage Class Analysis</a> in the <i>Amazon S3 User + * Guide</i>.</p> <p class="title"> <b>Related Resources</b> </p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketAnalyticsConfiguration.html">DeleteBucketAnalyticsConfiguration</a> * </p> </li> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBucketAnalyticsConfigurations.html">ListBucketAnalyticsConfigurations</a> @@ -3380,22 +3371,20 @@ namespace Aws virtual Model::GetBucketAnalyticsConfigurationOutcomeCallable GetBucketAnalyticsConfigurationCallable(const Model::GetBucketAnalyticsConfigurationRequest& request) const; /** - * <p>This implementation of the GET operation returns an analytics configuration + * <p>This implementation of the GET action returns an analytics configuration * (identified by the analytics configuration ID) from the bucket.</p> <p>To use * this operation, you must have permissions to perform the * <code>s3:GetAnalyticsConfiguration</code> action. The bucket owner has this * permission by default. The bucket owner can grant this permission to others. For * more information about permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources"> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources"> * Permissions Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing - * Access Permissions to Your Amazon S3 Resources</a> in the <i>Amazon Simple - * Storage Service Developer Guide</i>. </p> <p>For information about Amazon S3 - * analytics feature, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing + * Access Permissions to Your Amazon S3 Resources</a> in the <i>Amazon S3 User + * Guide</i>. </p> <p>For information about Amazon S3 analytics feature, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/analytics-storage-class.html">Amazon - * S3 Analytics – Storage Class Analysis</a> in the <i>Amazon Simple Storage - * Service Developer Guide</i>.</p> <p class="title"> <b>Related Resources</b> </p> - * <ul> <li> <p> <a + * S3 Analytics – Storage Class Analysis</a> in the <i>Amazon S3 User + * Guide</i>.</p> <p class="title"> <b>Related Resources</b> </p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketAnalyticsConfiguration.html">DeleteBucketAnalyticsConfiguration</a> * </p> </li> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBucketAnalyticsConfigurations.html">ListBucketAnalyticsConfigurations</a> @@ -3465,16 +3454,18 @@ namespace Aws virtual void GetBucketCorsAsync(const Model::GetBucketCorsRequest& request, const GetBucketCorsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; /** - * <p>Returns the default encryption configuration for an Amazon S3 bucket. For + * <p>Returns the default encryption configuration for an Amazon S3 bucket. If the + * bucket does not have a default encryption configuration, GetBucketEncryption + * returns <code>ServerSideEncryptionConfigurationNotFoundError</code>. </p> <p>For * information about the Amazon S3 default encryption feature, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html">Amazon * S3 Default Bucket Encryption</a>.</p> <p> To use this operation, you must have * permission to perform the <code>s3:GetEncryptionConfiguration</code> action. The * bucket owner has this permission by default. The bucket owner can grant this * permission to others. For more information about permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>The following * operations are related to <code>GetBucketEncryption</code>:</p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketEncryption.html">PutBucketEncryption</a> @@ -3487,16 +3478,18 @@ namespace Aws virtual Model::GetBucketEncryptionOutcome GetBucketEncryption(const Model::GetBucketEncryptionRequest& request) const; /** - * <p>Returns the default encryption configuration for an Amazon S3 bucket. For + * <p>Returns the default encryption configuration for an Amazon S3 bucket. If the + * bucket does not have a default encryption configuration, GetBucketEncryption + * returns <code>ServerSideEncryptionConfigurationNotFoundError</code>. </p> <p>For * information about the Amazon S3 default encryption feature, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html">Amazon * S3 Default Bucket Encryption</a>.</p> <p> To use this operation, you must have * permission to perform the <code>s3:GetEncryptionConfiguration</code> action. The * bucket owner has this permission by default. The bucket owner can grant this * permission to others. For more information about permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>The following * operations are related to <code>GetBucketEncryption</code>:</p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketEncryption.html">PutBucketEncryption</a> @@ -3511,16 +3504,18 @@ namespace Aws virtual Model::GetBucketEncryptionOutcomeCallable GetBucketEncryptionCallable(const Model::GetBucketEncryptionRequest& request) const; /** - * <p>Returns the default encryption configuration for an Amazon S3 bucket. For + * <p>Returns the default encryption configuration for an Amazon S3 bucket. If the + * bucket does not have a default encryption configuration, GetBucketEncryption + * returns <code>ServerSideEncryptionConfigurationNotFoundError</code>. </p> <p>For * information about the Amazon S3 default encryption feature, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html">Amazon * S3 Default Bucket Encryption</a>.</p> <p> To use this operation, you must have * permission to perform the <code>s3:GetEncryptionConfiguration</code> action. The * bucket owner has this permission by default. The bucket owner can grant this * permission to others. For more information about permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>The following * operations are related to <code>GetBucketEncryption</code>:</p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketEncryption.html">PutBucketEncryption</a> @@ -3631,9 +3626,9 @@ namespace Aws * perform the <code>s3:GetInventoryConfiguration</code> action. The bucket owner * has this permission by default and can grant this permission to others. For more * information about permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>For information about * the Amazon S3 inventory feature, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-inventory.html">Amazon @@ -3656,9 +3651,9 @@ namespace Aws * perform the <code>s3:GetInventoryConfiguration</code> action. The bucket owner * has this permission by default and can grant this permission to others. For more * information about permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>For information about * the Amazon S3 inventory feature, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-inventory.html">Amazon @@ -3683,9 +3678,9 @@ namespace Aws * perform the <code>s3:GetInventoryConfiguration</code> action. The bucket owner * has this permission by default and can grant this permission to others. For more * information about permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>For information about * the Amazon S3 inventory feature, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-inventory.html">Amazon @@ -3710,8 +3705,8 @@ namespace Aws * 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 API - * description, see <a + * version of the lifecycle configuration, it still works. For the earlier action, + * see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLifecycle.html">GetBucketLifecycle</a>.</p> * <p>Returns the lifecycle configuration information set on the bucket. * For information about lifecycle configuration, see <a @@ -3720,9 +3715,9 @@ namespace Aws * to perform the <code>s3:GetLifecycleConfiguration</code> action. The bucket * owner has this permission, by default. The bucket owner can grant this * permission to others. For more information about permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p> <p> * <code>GetBucketLifecycleConfiguration</code> has the following special * error:</p> <ul> <li> <p>Error code: <code>NoSuchLifecycleConfiguration</code> @@ -3747,8 +3742,8 @@ namespace Aws * 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 API - * description, see <a + * version of the lifecycle configuration, it still works. For the earlier action, + * see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLifecycle.html">GetBucketLifecycle</a>.</p> * <p>Returns the lifecycle configuration information set on the bucket. * For information about lifecycle configuration, see <a @@ -3757,9 +3752,9 @@ namespace Aws * to perform the <code>s3:GetLifecycleConfiguration</code> action. The bucket * owner has this permission, by default. The bucket owner can grant this * permission to others. For more information about permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p> <p> * <code>GetBucketLifecycleConfiguration</code> has the following special * error:</p> <ul> <li> <p>Error code: <code>NoSuchLifecycleConfiguration</code> @@ -3786,8 +3781,8 @@ namespace Aws * 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 API - * description, see <a + * version of the lifecycle configuration, it still works. For the earlier action, + * see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLifecycle.html">GetBucketLifecycle</a>.</p> * <p>Returns the lifecycle configuration information set on the bucket. * For information about lifecycle configuration, see <a @@ -3796,9 +3791,9 @@ namespace Aws * to perform the <code>s3:GetLifecycleConfiguration</code> action. The bucket * owner has this permission, by default. The bucket owner can grant this * permission to others. For more information about permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p> <p> * <code>GetBucketLifecycleConfiguration</code> has the following special * error:</p> <ul> <li> <p>Error code: <code>NoSuchLifecycleConfiguration</code> @@ -3927,9 +3922,9 @@ namespace Aws * <code>s3:GetMetricsConfiguration</code> action. The bucket owner has this * permission by default. The bucket owner can grant this permission to others. For * more information about permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p> <p> For information * about CloudWatch request metrics for Amazon S3, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/cloudwatch-monitoring.html">Monitoring @@ -3955,9 +3950,9 @@ namespace Aws * <code>s3:GetMetricsConfiguration</code> action. The bucket owner has this * permission by default. The bucket owner can grant this permission to others. For * more information about permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p> <p> For information * about CloudWatch request metrics for Amazon S3, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/cloudwatch-monitoring.html">Monitoring @@ -3985,9 +3980,9 @@ namespace Aws * <code>s3:GetMetricsConfiguration</code> action. The bucket owner has this * permission by default. The bucket owner can grant this permission to others. For * more information about permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p> <p> For information * about CloudWatch request metrics for Amazon S3, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/cloudwatch-monitoring.html">Monitoring @@ -4010,7 +4005,7 @@ namespace Aws /** * <p>Returns the notification configuration of a bucket.</p> <p>If notifications - * are not enabled on the bucket, the operation returns an empty + * are not enabled on the bucket, the action returns an empty * <code>NotificationConfiguration</code> element.</p> <p>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 @@ -4021,7 +4016,7 @@ namespace Aws * Up Notification of Bucket Events</a>. For more information about bucket * policies, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html">Using - * Bucket Policies</a>.</p> <p>The following operation is related to + * Bucket Policies</a>.</p> <p>The following action is related to * <code>GetBucketNotification</code>:</p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketNotification.html">PutBucketNotification</a> * </p> </li> </ul><p><h3>See Also:</h3> <a @@ -4032,7 +4027,7 @@ namespace Aws /** * <p>Returns the notification configuration of a bucket.</p> <p>If notifications - * are not enabled on the bucket, the operation returns an empty + * are not enabled on the bucket, the action returns an empty * <code>NotificationConfiguration</code> element.</p> <p>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 @@ -4043,7 +4038,7 @@ namespace Aws * Up Notification of Bucket Events</a>. For more information about bucket * policies, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html">Using - * Bucket Policies</a>.</p> <p>The following operation is related to + * Bucket Policies</a>.</p> <p>The following action is related to * <code>GetBucketNotification</code>:</p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketNotification.html">PutBucketNotification</a> * </p> </li> </ul><p><h3>See Also:</h3> <a @@ -4056,7 +4051,7 @@ namespace Aws /** * <p>Returns the notification configuration of a bucket.</p> <p>If notifications - * are not enabled on the bucket, the operation returns an empty + * are not enabled on the bucket, the action returns an empty * <code>NotificationConfiguration</code> element.</p> <p>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 @@ -4067,7 +4062,7 @@ namespace Aws * Up Notification of Bucket Events</a>. For more information about bucket * policies, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html">Using - * Bucket Policies</a>.</p> <p>The following operation is related to + * Bucket Policies</a>.</p> <p>The following action is related to * <code>GetBucketNotification</code>:</p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketNotification.html">PutBucketNotification</a> * </p> </li> </ul><p><h3>See Also:</h3> <a @@ -4147,8 +4142,8 @@ namespace Aws * the ability to perform this action.</p> <p>For more information * about bucket policies, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html">Using - * Bucket Policies and User Policies</a>.</p> <p>The following operation is related - * to <code>GetBucketPolicy</code>:</p> <ul> <li> <p> <a + * Bucket Policies and User Policies</a>.</p> <p>The following action is related to + * <code>GetBucketPolicy</code>:</p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html">GetObject</a> * </p> </li> </ul><p><h3>See Also:</h3> <a * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketPolicy">AWS @@ -4170,8 +4165,8 @@ namespace Aws * the ability to perform this action.</p> <p>For more information * about bucket policies, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html">Using - * Bucket Policies and User Policies</a>.</p> <p>The following operation is related - * to <code>GetBucketPolicy</code>:</p> <ul> <li> <p> <a + * Bucket Policies and User Policies</a>.</p> <p>The following action is related to + * <code>GetBucketPolicy</code>:</p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html">GetObject</a> * </p> </li> </ul><p><h3>See Also:</h3> <a * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketPolicy">AWS @@ -4195,8 +4190,8 @@ namespace Aws * the ability to perform this action.</p> <p>For more information * about bucket policies, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html">Using - * Bucket Policies and User Policies</a>.</p> <p>The following operation is related - * to <code>GetBucketPolicy</code>:</p> <ul> <li> <p> <a + * Bucket Policies and User Policies</a>.</p> <p>The following action is related to + * <code>GetBucketPolicy</code>:</p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html">GetObject</a> * </p> </li> </ul><p><h3>See Also:</h3> <a * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketPolicy">AWS @@ -4288,10 +4283,9 @@ namespace Aws * S3 systems. Therefore, a get request soon after put or delete can return a wrong * result. </p> <p> For information about replication configuration, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/replication.html">Replication</a> - * in the <i>Amazon Simple Storage Service Developer Guide</i>.</p> <p>This - * operation requires permissions for the - * <code>s3:GetReplicationConfiguration</code> action. For more information about - * permissions, see <a + * in the <i>Amazon S3 User Guide</i>.</p> <p>This action requires permissions for + * the <code>s3:GetReplicationConfiguration</code> action. For more information + * about permissions, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html">Using * Bucket Policies and User Policies</a>.</p> <p>If you include the * <code>Filter</code> element in a replication configuration, you must also @@ -4316,10 +4310,9 @@ namespace Aws * S3 systems. Therefore, a get request soon after put or delete can return a wrong * result. </p> <p> For information about replication configuration, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/replication.html">Replication</a> - * in the <i>Amazon Simple Storage Service Developer Guide</i>.</p> <p>This - * operation requires permissions for the - * <code>s3:GetReplicationConfiguration</code> action. For more information about - * permissions, see <a + * in the <i>Amazon S3 User Guide</i>.</p> <p>This action requires permissions for + * the <code>s3:GetReplicationConfiguration</code> action. For more information + * about permissions, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html">Using * Bucket Policies and User Policies</a>.</p> <p>If you include the * <code>Filter</code> element in a replication configuration, you must also @@ -4346,10 +4339,9 @@ namespace Aws * S3 systems. Therefore, a get request soon after put or delete can return a wrong * result. </p> <p> For information about replication configuration, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/replication.html">Replication</a> - * in the <i>Amazon Simple Storage Service Developer Guide</i>.</p> <p>This - * operation requires permissions for the - * <code>s3:GetReplicationConfiguration</code> action. For more information about - * permissions, see <a + * in the <i>Amazon S3 User Guide</i>.</p> <p>This action requires permissions for + * the <code>s3:GetReplicationConfiguration</code> action. For more information + * about permissions, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html">Using * Bucket Policies and User Policies</a>.</p> <p>If you include the * <code>Filter</code> element in a replication configuration, you must also @@ -4534,7 +4526,7 @@ namespace Aws * you can configure a bucket as website by adding a website configuration. For * more information about hosting websites, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/WebsiteHosting.html">Hosting - * Websites on Amazon S3</a>. </p> <p>This GET operation requires the + * Websites on Amazon S3</a>. </p> <p>This GET action requires the * <code>S3:GetBucketWebsite</code> 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 @@ -4555,7 +4547,7 @@ namespace Aws * you can configure a bucket as website by adding a website configuration. For * more information about hosting websites, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/WebsiteHosting.html">Hosting - * Websites on Amazon S3</a>. </p> <p>This GET operation requires the + * Websites on Amazon S3</a>. </p> <p>This GET action requires the * <code>S3:GetBucketWebsite</code> 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 @@ -4578,7 +4570,7 @@ namespace Aws * you can configure a bucket as website by adding a website configuration. For * more information about hosting websites, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/WebsiteHosting.html">Hosting - * Websites on Amazon S3</a>. </p> <p>This GET operation requires the + * Websites on Amazon S3</a>. </p> <p>This GET action requires the * <code>S3:GetBucketWebsite</code> 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 @@ -4626,7 +4618,7 @@ namespace Aws * Intelligent-Tiering Deep Archive tiers, before you can retrieve the object you * must first restore a copy using <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_RestoreObject.html">RestoreObject</a>. - * Otherwise, this operation returns an <code>InvalidObjectStateError</code> error. + * Otherwise, this action returns an <code>InvalidObjectStateError</code> error. * For information about restoring archived objects, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/restoring-objects.html">Restoring * Archived Objects</a>.</p> <p>Encryption request headers, like @@ -4659,7 +4651,7 @@ namespace Aws * HTTP status code 404 ("no such key") error.</p> </li> <li> <p>If you don’t have * the <code>s3:ListBucket</code> permission, Amazon S3 will return an HTTP status * code 403 ("access denied") error.</p> </li> </ul> <p> <b>Versioning</b> </p> - * <p>By default, the GET operation returns the current version of an object. To + * <p>By default, the GET action returns the current version of an object. To * return a different version, use the <code>versionId</code> subresource.</p> * <p>If the current version of the object is a delete marker, Amazon S3 * behaves as if the object was deleted and includes <code>x-amz-delete-marker: @@ -4738,7 +4730,7 @@ namespace Aws * Intelligent-Tiering Deep Archive tiers, before you can retrieve the object you * must first restore a copy using <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_RestoreObject.html">RestoreObject</a>. - * Otherwise, this operation returns an <code>InvalidObjectStateError</code> error. + * Otherwise, this action returns an <code>InvalidObjectStateError</code> error. * For information about restoring archived objects, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/restoring-objects.html">Restoring * Archived Objects</a>.</p> <p>Encryption request headers, like @@ -4771,7 +4763,7 @@ namespace Aws * HTTP status code 404 ("no such key") error.</p> </li> <li> <p>If you don’t have * the <code>s3:ListBucket</code> permission, Amazon S3 will return an HTTP status * code 403 ("access denied") error.</p> </li> </ul> <p> <b>Versioning</b> </p> - * <p>By default, the GET operation returns the current version of an object. To + * <p>By default, the GET action returns the current version of an object. To * return a different version, use the <code>versionId</code> subresource.</p> * <p>If the current version of the object is a delete marker, Amazon S3 * behaves as if the object was deleted and includes <code>x-amz-delete-marker: @@ -4852,7 +4844,7 @@ namespace Aws * Intelligent-Tiering Deep Archive tiers, before you can retrieve the object you * must first restore a copy using <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_RestoreObject.html">RestoreObject</a>. - * Otherwise, this operation returns an <code>InvalidObjectStateError</code> error. + * Otherwise, this action returns an <code>InvalidObjectStateError</code> error. * For information about restoring archived objects, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/restoring-objects.html">Restoring * Archived Objects</a>.</p> <p>Encryption request headers, like @@ -4885,7 +4877,7 @@ namespace Aws * HTTP status code 404 ("no such key") error.</p> </li> <li> <p>If you don’t have * the <code>s3:ListBucket</code> permission, Amazon S3 will return an HTTP status * code 403 ("access denied") error.</p> </li> </ul> <p> <b>Versioning</b> </p> - * <p>By default, the GET operation returns the current version of an object. To + * <p>By default, the GET action returns the current version of an object. To * return a different version, use the <code>versionId</code> subresource.</p> * <p>If the current version of the object is a delete marker, Amazon S3 * behaves as if the object was deleted and includes <code>x-amz-delete-marker: @@ -5106,7 +5098,7 @@ namespace Aws * <p>Returns the tag-set of an object. You send the GET request against the * tagging subresource associated with the object.</p> <p>To use this operation, * you must have permission to perform the <code>s3:GetObjectTagging</code> action. - * By default, the GET operation returns information about current version of an + * 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 @@ -5114,9 +5106,11 @@ namespace Aws * owner has this permission and can grant this permission to others.</p> <p> For * information about the Amazon S3 object tagging feature, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-tagging.html">Object - * Tagging</a>.</p> <p>The following operation is related to + * Tagging</a>.</p> <p>The following action is related to * <code>GetObjectTagging</code>:</p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObjectTagging.html">PutObjectTagging</a> + * </p> </li> <li> <p> <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObjectTagging.html">DeleteObjectTagging</a> * </p> </li> </ul><p><h3>See Also:</h3> <a * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectTagging">AWS * API Reference</a></p> @@ -5127,7 +5121,7 @@ namespace Aws * <p>Returns the tag-set of an object. You send the GET request against the * tagging subresource associated with the object.</p> <p>To use this operation, * you must have permission to perform the <code>s3:GetObjectTagging</code> action. - * By default, the GET operation returns information about current version of an + * 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 @@ -5135,9 +5129,11 @@ namespace Aws * owner has this permission and can grant this permission to others.</p> <p> For * information about the Amazon S3 object tagging feature, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-tagging.html">Object - * Tagging</a>.</p> <p>The following operation is related to + * Tagging</a>.</p> <p>The following action is related to * <code>GetObjectTagging</code>:</p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObjectTagging.html">PutObjectTagging</a> + * </p> </li> <li> <p> <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObjectTagging.html">DeleteObjectTagging</a> * </p> </li> </ul><p><h3>See Also:</h3> <a * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectTagging">AWS * API Reference</a></p> @@ -5150,7 +5146,7 @@ namespace Aws * <p>Returns the tag-set of an object. You send the GET request against the * tagging subresource associated with the object.</p> <p>To use this operation, * you must have permission to perform the <code>s3:GetObjectTagging</code> action. - * By default, the GET operation returns information about current version of an + * 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 @@ -5158,9 +5154,11 @@ namespace Aws * owner has this permission and can grant this permission to others.</p> <p> For * information about the Amazon S3 object tagging feature, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-tagging.html">Object - * Tagging</a>.</p> <p>The following operation is related to + * Tagging</a>.</p> <p>The following action is related to * <code>GetObjectTagging</code>:</p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObjectTagging.html">PutObjectTagging</a> + * </p> </li> <li> <p> <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObjectTagging.html">DeleteObjectTagging</a> * </p> </li> </ul><p><h3>See Also:</h3> <a * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectTagging">AWS * API Reference</a></p> @@ -5177,8 +5175,8 @@ namespace Aws * objects that are less than 5 GB in size, and that are not encrypted using * server-side encryption with a customer-provided encryption key.</p> * <p>To use GET, you must have READ access to the object.</p> <p>This action is - * not supported by Amazon S3 on Outposts.</p> <p>The following operation is - * related to <code>GetObjectTorrent</code>:</p> <ul> <li> <p> <a + * not supported by Amazon S3 on Outposts.</p> <p>The following action is related + * to <code>GetObjectTorrent</code>:</p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html">GetObject</a> * </p> </li> </ul><p><h3>See Also:</h3> <a * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectTorrent">AWS @@ -5194,8 +5192,8 @@ namespace Aws * objects that are less than 5 GB in size, and that are not encrypted using * server-side encryption with a customer-provided encryption key.</p> * <p>To use GET, you must have READ access to the object.</p> <p>This action is - * not supported by Amazon S3 on Outposts.</p> <p>The following operation is - * related to <code>GetObjectTorrent</code>:</p> <ul> <li> <p> <a + * not supported by Amazon S3 on Outposts.</p> <p>The following action is related + * to <code>GetObjectTorrent</code>:</p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html">GetObject</a> * </p> </li> </ul><p><h3>See Also:</h3> <a * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectTorrent">AWS @@ -5213,8 +5211,8 @@ namespace Aws * objects that are less than 5 GB in size, and that are not encrypted using * server-side encryption with a customer-provided encryption key.</p> * <p>To use GET, you must have READ access to the object.</p> <p>This action is - * not supported by Amazon S3 on Outposts.</p> <p>The following operation is - * related to <code>GetObjectTorrent</code>:</p> <ul> <li> <p> <a + * not supported by Amazon S3 on Outposts.</p> <p>The following action is related + * to <code>GetObjectTorrent</code>:</p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html">GetObject</a> * </p> </li> </ul><p><h3>See Also:</h3> <a * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectTorrent">AWS @@ -5319,17 +5317,19 @@ namespace Aws virtual void GetPublicAccessBlockAsync(const Model::GetPublicAccessBlockRequest& request, const GetPublicAccessBlockResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; /** - * <p>This operation is useful to determine if a bucket exists and you have - * permission to access it. The operation returns a <code>200 OK</code> if the - * bucket exists and you have permission to access it. Otherwise, the operation - * might return responses such as <code>404 Not Found</code> and <code>403 - * Forbidden</code>. </p> <p>To use this operation, you must have permissions to - * perform the <code>s3:ListBucket</code> action. The bucket owner has this - * permission by default and can grant this permission to others. For more - * information about permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * <p>This action is useful to determine if a bucket exists and you have permission + * to access it. The action returns a <code>200 OK</code> if the bucket exists and + * you have permission to access it.</p> <p>If the bucket does not exist or you do + * not have permission to access it, the <code>HEAD</code> request returns a + * generic <code>404 Not Found</code> or <code>403 Forbidden</code> code. A message + * body is not included, so you cannot determine the exception beyond these error + * codes.</p> <p>To use this operation, you must have permissions to perform the + * <code>s3:ListBucket</code> action. The bucket owner has this permission by + * default and can grant this permission to others. For more information about + * permissions, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p><p><h3>See Also:</h3> * <a href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/HeadBucket">AWS * API Reference</a></p> @@ -5337,17 +5337,19 @@ namespace Aws virtual Model::HeadBucketOutcome HeadBucket(const Model::HeadBucketRequest& request) const; /** - * <p>This operation is useful to determine if a bucket exists and you have - * permission to access it. The operation returns a <code>200 OK</code> if the - * bucket exists and you have permission to access it. Otherwise, the operation - * might return responses such as <code>404 Not Found</code> and <code>403 - * Forbidden</code>. </p> <p>To use this operation, you must have permissions to - * perform the <code>s3:ListBucket</code> action. The bucket owner has this - * permission by default and can grant this permission to others. For more - * information about permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * <p>This action is useful to determine if a bucket exists and you have permission + * to access it. The action returns a <code>200 OK</code> if the bucket exists and + * you have permission to access it.</p> <p>If the bucket does not exist or you do + * not have permission to access it, the <code>HEAD</code> request returns a + * generic <code>404 Not Found</code> or <code>403 Forbidden</code> code. A message + * body is not included, so you cannot determine the exception beyond these error + * codes.</p> <p>To use this operation, you must have permissions to perform the + * <code>s3:ListBucket</code> action. The bucket owner has this permission by + * default and can grant this permission to others. For more information about + * permissions, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p><p><h3>See Also:</h3> * <a href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/HeadBucket">AWS * API Reference</a></p> @@ -5357,17 +5359,19 @@ namespace Aws virtual Model::HeadBucketOutcomeCallable HeadBucketCallable(const Model::HeadBucketRequest& request) const; /** - * <p>This operation is useful to determine if a bucket exists and you have - * permission to access it. The operation returns a <code>200 OK</code> if the - * bucket exists and you have permission to access it. Otherwise, the operation - * might return responses such as <code>404 Not Found</code> and <code>403 - * Forbidden</code>. </p> <p>To use this operation, you must have permissions to - * perform the <code>s3:ListBucket</code> action. The bucket owner has this - * permission by default and can grant this permission to others. For more - * information about permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * <p>This action is useful to determine if a bucket exists and you have permission + * to access it. The action returns a <code>200 OK</code> if the bucket exists and + * you have permission to access it.</p> <p>If the bucket does not exist or you do + * not have permission to access it, the <code>HEAD</code> request returns a + * generic <code>404 Not Found</code> or <code>403 Forbidden</code> code. A message + * body is not included, so you cannot determine the exception beyond these error + * codes.</p> <p>To use this operation, you must have permissions to perform the + * <code>s3:ListBucket</code> action. The bucket owner has this permission by + * default and can grant this permission to others. For more information about + * permissions, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p><p><h3>See Also:</h3> * <a href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/HeadBucket">AWS * API Reference</a></p> @@ -5377,12 +5381,15 @@ namespace Aws virtual void HeadBucketAsync(const Model::HeadBucketRequest& request, const HeadBucketResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; /** - * <p>The HEAD operation retrieves metadata from an object without returning the - * object itself. This operation is useful if you're only interested in an object's + * <p>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.</p> <p>A - * <code>HEAD</code> request has the same options as a <code>GET</code> operation - * on an object. The response is identical to the <code>GET</code> response except - * that there is no response body.</p> <p>If you encrypt an object by using + * <code>HEAD</code> request has the same options as a <code>GET</code> action on + * an object. The response is identical to the <code>GET</code> response except + * that there is no response body. Because of this, if the <code>HEAD</code> + * request generates an error, it returns a generic <code>404 Not Found</code> or + * <code>403 Forbidden</code> code. It is not possible to retrieve the exact + * exception beyond these error codes.</p> <p>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:</p> <ul> <li> @@ -5391,13 +5398,15 @@ namespace Aws * <p>x-amz-server-side-encryption-customer-key-MD5</p> </li> </ul> <p>For more * information about SSE-C, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Server-Side - * Encryption (Using Customer-Provided Encryption Keys)</a>.</p> + * Encryption (Using Customer-Provided Encryption Keys)</a>.</p> <ul> <li> * <p>Encryption request headers, like <code>x-amz-server-side-encryption</code>, * should not be sent for GET requests if your object uses server-side encryption * with CMKs stored in AWS KMS (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.</p> <p>Request headers - * are limited to 8 KB in size. For more information, see <a + * keys, you’ll get an HTTP 400 BadRequest error.</p> </li> <li> <p> The last + * modified property in this case is the creation date of the object.</p> </li> + * </ul> <p>Request headers are limited to 8 KB in size. For more + * information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/RESTCommonRequestHeaders.html">Common * Request Headers</a>.</p> <p>Consider the following when using request * headers:</p> <ul> <li> <p> Consideration 1 – If both of the @@ -5423,7 +5432,7 @@ namespace Aws * permission on the bucket, Amazon S3 returns an HTTP status code 404 ("no such * key") error.</p> </li> <li> <p>If you don’t have the <code>s3:ListBucket</code> * permission, Amazon S3 returns an HTTP status code 403 ("access denied") - * error.</p> </li> </ul> <p>The following operation is related to + * error.</p> </li> </ul> <p>The following action is related to * <code>HeadObject</code>:</p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html">GetObject</a> * </p> </li> </ul><p><h3>See Also:</h3> <a @@ -5433,12 +5442,15 @@ namespace Aws virtual Model::HeadObjectOutcome HeadObject(const Model::HeadObjectRequest& request) const; /** - * <p>The HEAD operation retrieves metadata from an object without returning the - * object itself. This operation is useful if you're only interested in an object's + * <p>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.</p> <p>A - * <code>HEAD</code> request has the same options as a <code>GET</code> operation - * on an object. The response is identical to the <code>GET</code> response except - * that there is no response body.</p> <p>If you encrypt an object by using + * <code>HEAD</code> request has the same options as a <code>GET</code> action on + * an object. The response is identical to the <code>GET</code> response except + * that there is no response body. Because of this, if the <code>HEAD</code> + * request generates an error, it returns a generic <code>404 Not Found</code> or + * <code>403 Forbidden</code> code. It is not possible to retrieve the exact + * exception beyond these error codes.</p> <p>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:</p> <ul> <li> @@ -5447,13 +5459,15 @@ namespace Aws * <p>x-amz-server-side-encryption-customer-key-MD5</p> </li> </ul> <p>For more * information about SSE-C, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Server-Side - * Encryption (Using Customer-Provided Encryption Keys)</a>.</p> + * Encryption (Using Customer-Provided Encryption Keys)</a>.</p> <ul> <li> * <p>Encryption request headers, like <code>x-amz-server-side-encryption</code>, * should not be sent for GET requests if your object uses server-side encryption * with CMKs stored in AWS KMS (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.</p> <p>Request headers - * are limited to 8 KB in size. For more information, see <a + * keys, you’ll get an HTTP 400 BadRequest error.</p> </li> <li> <p> The last + * modified property in this case is the creation date of the object.</p> </li> + * </ul> <p>Request headers are limited to 8 KB in size. For more + * information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/RESTCommonRequestHeaders.html">Common * Request Headers</a>.</p> <p>Consider the following when using request * headers:</p> <ul> <li> <p> Consideration 1 – If both of the @@ -5479,7 +5493,7 @@ namespace Aws * permission on the bucket, Amazon S3 returns an HTTP status code 404 ("no such * key") error.</p> </li> <li> <p>If you don’t have the <code>s3:ListBucket</code> * permission, Amazon S3 returns an HTTP status code 403 ("access denied") - * error.</p> </li> </ul> <p>The following operation is related to + * error.</p> </li> </ul> <p>The following action is related to * <code>HeadObject</code>:</p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html">GetObject</a> * </p> </li> </ul><p><h3>See Also:</h3> <a @@ -5491,12 +5505,15 @@ namespace Aws virtual Model::HeadObjectOutcomeCallable HeadObjectCallable(const Model::HeadObjectRequest& request) const; /** - * <p>The HEAD operation retrieves metadata from an object without returning the - * object itself. This operation is useful if you're only interested in an object's + * <p>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.</p> <p>A - * <code>HEAD</code> request has the same options as a <code>GET</code> operation - * on an object. The response is identical to the <code>GET</code> response except - * that there is no response body.</p> <p>If you encrypt an object by using + * <code>HEAD</code> request has the same options as a <code>GET</code> action on + * an object. The response is identical to the <code>GET</code> response except + * that there is no response body. Because of this, if the <code>HEAD</code> + * request generates an error, it returns a generic <code>404 Not Found</code> or + * <code>403 Forbidden</code> code. It is not possible to retrieve the exact + * exception beyond these error codes.</p> <p>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:</p> <ul> <li> @@ -5505,13 +5522,15 @@ namespace Aws * <p>x-amz-server-side-encryption-customer-key-MD5</p> </li> </ul> <p>For more * information about SSE-C, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Server-Side - * Encryption (Using Customer-Provided Encryption Keys)</a>.</p> + * Encryption (Using Customer-Provided Encryption Keys)</a>.</p> <ul> <li> * <p>Encryption request headers, like <code>x-amz-server-side-encryption</code>, * should not be sent for GET requests if your object uses server-side encryption * with CMKs stored in AWS KMS (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.</p> <p>Request headers - * are limited to 8 KB in size. For more information, see <a + * keys, you’ll get an HTTP 400 BadRequest error.</p> </li> <li> <p> The last + * modified property in this case is the creation date of the object.</p> </li> + * </ul> <p>Request headers are limited to 8 KB in size. For more + * information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/RESTCommonRequestHeaders.html">Common * Request Headers</a>.</p> <p>Consider the following when using request * headers:</p> <ul> <li> <p> Consideration 1 – If both of the @@ -5537,7 +5556,7 @@ namespace Aws * permission on the bucket, Amazon S3 returns an HTTP status code 404 ("no such * key") error.</p> </li> <li> <p>If you don’t have the <code>s3:ListBucket</code> * permission, Amazon S3 returns an HTTP status code 403 ("access denied") - * error.</p> </li> </ul> <p>The following operation is related to + * error.</p> </li> </ul> <p>The following action is related to * <code>HeadObject</code>:</p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html">GetObject</a> * </p> </li> </ul><p><h3>See Also:</h3> <a @@ -5550,21 +5569,21 @@ namespace Aws /** * <p>Lists the analytics configurations for the bucket. You can have up to 1,000 - * analytics configurations per bucket.</p> <p>This operation supports list - * pagination and does not return more than 100 configurations at a time. You - * should always check the <code>IsTruncated</code> element in the response. If - * there are no more configurations to list, <code>IsTruncated</code> is set to - * false. If there are more configurations to list, <code>IsTruncated</code> is set - * to true, and there will be a value in <code>NextContinuationToken</code>. You - * use the <code>NextContinuationToken</code> value to continue the pagination of - * the list by passing the value in continuation-token in the request to - * <code>GET</code> the next page.</p> <p>To use this operation, you must have - * permissions to perform the <code>s3:GetAnalyticsConfiguration</code> action. The - * bucket owner has this permission by default. The bucket owner can grant this - * permission to others. For more information about permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * analytics configurations per bucket.</p> <p>This action supports list pagination + * and does not return more than 100 configurations at a time. You should always + * check the <code>IsTruncated</code> element in the response. If there are no more + * configurations to list, <code>IsTruncated</code> is set to false. If there are + * more configurations to list, <code>IsTruncated</code> is set to true, and there + * will be a value in <code>NextContinuationToken</code>. You use the + * <code>NextContinuationToken</code> value to continue the pagination of the list + * by passing the value in continuation-token in the request to <code>GET</code> + * the next page.</p> <p>To use this operation, you must have permissions to + * perform the <code>s3:GetAnalyticsConfiguration</code> action. The bucket owner + * has this permission by default. The bucket owner can grant this permission to + * others. For more information about permissions, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>For information about * Amazon S3 analytics feature, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/analytics-storage-class.html">Amazon @@ -5583,21 +5602,21 @@ namespace Aws /** * <p>Lists the analytics configurations for the bucket. You can have up to 1,000 - * analytics configurations per bucket.</p> <p>This operation supports list - * pagination and does not return more than 100 configurations at a time. You - * should always check the <code>IsTruncated</code> element in the response. If - * there are no more configurations to list, <code>IsTruncated</code> is set to - * false. If there are more configurations to list, <code>IsTruncated</code> is set - * to true, and there will be a value in <code>NextContinuationToken</code>. You - * use the <code>NextContinuationToken</code> value to continue the pagination of - * the list by passing the value in continuation-token in the request to - * <code>GET</code> the next page.</p> <p>To use this operation, you must have - * permissions to perform the <code>s3:GetAnalyticsConfiguration</code> action. The - * bucket owner has this permission by default. The bucket owner can grant this - * permission to others. For more information about permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * analytics configurations per bucket.</p> <p>This action supports list pagination + * and does not return more than 100 configurations at a time. You should always + * check the <code>IsTruncated</code> element in the response. If there are no more + * configurations to list, <code>IsTruncated</code> is set to false. If there are + * more configurations to list, <code>IsTruncated</code> is set to true, and there + * will be a value in <code>NextContinuationToken</code>. You use the + * <code>NextContinuationToken</code> value to continue the pagination of the list + * by passing the value in continuation-token in the request to <code>GET</code> + * the next page.</p> <p>To use this operation, you must have permissions to + * perform the <code>s3:GetAnalyticsConfiguration</code> action. The bucket owner + * has this permission by default. The bucket owner can grant this permission to + * others. For more information about permissions, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>For information about * Amazon S3 analytics feature, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/analytics-storage-class.html">Amazon @@ -5618,21 +5637,21 @@ namespace Aws /** * <p>Lists the analytics configurations for the bucket. You can have up to 1,000 - * analytics configurations per bucket.</p> <p>This operation supports list - * pagination and does not return more than 100 configurations at a time. You - * should always check the <code>IsTruncated</code> element in the response. If - * there are no more configurations to list, <code>IsTruncated</code> is set to - * false. If there are more configurations to list, <code>IsTruncated</code> is set - * to true, and there will be a value in <code>NextContinuationToken</code>. You - * use the <code>NextContinuationToken</code> value to continue the pagination of - * the list by passing the value in continuation-token in the request to - * <code>GET</code> the next page.</p> <p>To use this operation, you must have - * permissions to perform the <code>s3:GetAnalyticsConfiguration</code> action. The - * bucket owner has this permission by default. The bucket owner can grant this - * permission to others. For more information about permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * analytics configurations per bucket.</p> <p>This action supports list pagination + * and does not return more than 100 configurations at a time. You should always + * check the <code>IsTruncated</code> element in the response. If there are no more + * configurations to list, <code>IsTruncated</code> is set to false. If there are + * more configurations to list, <code>IsTruncated</code> is set to true, and there + * will be a value in <code>NextContinuationToken</code>. You use the + * <code>NextContinuationToken</code> value to continue the pagination of the list + * by passing the value in continuation-token in the request to <code>GET</code> + * the next page.</p> <p>To use this operation, you must have permissions to + * perform the <code>s3:GetAnalyticsConfiguration</code> action. The bucket owner + * has this permission by default. The bucket owner can grant this permission to + * others. For more information about permissions, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>For information about * Amazon S3 analytics feature, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/analytics-storage-class.html">Amazon @@ -5744,7 +5763,7 @@ namespace Aws /** * <p>Returns a list of inventory configurations for the bucket. You can have up to - * 1,000 analytics configurations per bucket.</p> <p>This operation supports list + * 1,000 analytics configurations per bucket.</p> <p>This action supports list * pagination and does not return more than 100 configurations at a time. Always * check the <code>IsTruncated</code> element in the response. If there are no more * configurations to list, <code>IsTruncated</code> is set to false. If there are @@ -5756,9 +5775,9 @@ namespace Aws * perform the <code>s3:GetInventoryConfiguration</code> action. The bucket owner * has this permission by default. The bucket owner can grant this permission to * others. For more information about permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>For information about * the Amazon S3 inventory feature, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-inventory.html">Amazon @@ -5777,7 +5796,7 @@ namespace Aws /** * <p>Returns a list of inventory configurations for the bucket. You can have up to - * 1,000 analytics configurations per bucket.</p> <p>This operation supports list + * 1,000 analytics configurations per bucket.</p> <p>This action supports list * pagination and does not return more than 100 configurations at a time. Always * check the <code>IsTruncated</code> element in the response. If there are no more * configurations to list, <code>IsTruncated</code> is set to false. If there are @@ -5789,9 +5808,9 @@ namespace Aws * perform the <code>s3:GetInventoryConfiguration</code> action. The bucket owner * has this permission by default. The bucket owner can grant this permission to * others. For more information about permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>For information about * the Amazon S3 inventory feature, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-inventory.html">Amazon @@ -5812,7 +5831,7 @@ namespace Aws /** * <p>Returns a list of inventory configurations for the bucket. You can have up to - * 1,000 analytics configurations per bucket.</p> <p>This operation supports list + * 1,000 analytics configurations per bucket.</p> <p>This action supports list * pagination and does not return more than 100 configurations at a time. Always * check the <code>IsTruncated</code> element in the response. If there are no more * configurations to list, <code>IsTruncated</code> is set to false. If there are @@ -5824,9 +5843,9 @@ namespace Aws * perform the <code>s3:GetInventoryConfiguration</code> action. The bucket owner * has this permission by default. The bucket owner can grant this permission to * others. For more information about permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>For information about * the Amazon S3 inventory feature, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-inventory.html">Amazon @@ -5849,7 +5868,7 @@ namespace Aws * <p>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.</p> - * <p>This operation supports list pagination and does not return more than 100 + * <p>This action supports list pagination and does not return more than 100 * configurations at a time. Always check the <code>IsTruncated</code> element in * the response. If there are no more configurations to list, * <code>IsTruncated</code> is set to false. If there are more configurations to @@ -5861,9 +5880,9 @@ namespace Aws * permissions to perform the <code>s3:GetMetricsConfiguration</code> action. The * bucket owner has this permission by default. The bucket owner can grant this * permission to others. For more information about permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>For more information * about metrics configurations and CloudWatch request metrics, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/cloudwatch-monitoring.html">Monitoring @@ -5884,7 +5903,7 @@ namespace Aws * <p>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.</p> - * <p>This operation supports list pagination and does not return more than 100 + * <p>This action supports list pagination and does not return more than 100 * configurations at a time. Always check the <code>IsTruncated</code> element in * the response. If there are no more configurations to list, * <code>IsTruncated</code> is set to false. If there are more configurations to @@ -5896,9 +5915,9 @@ namespace Aws * permissions to perform the <code>s3:GetMetricsConfiguration</code> action. The * bucket owner has this permission by default. The bucket owner can grant this * permission to others. For more information about permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>For more information * about metrics configurations and CloudWatch request metrics, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/cloudwatch-monitoring.html">Monitoring @@ -5921,7 +5940,7 @@ namespace Aws * <p>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.</p> - * <p>This operation supports list pagination and does not return more than 100 + * <p>This action supports list pagination and does not return more than 100 * configurations at a time. Always check the <code>IsTruncated</code> element in * the response. If there are no more configurations to list, * <code>IsTruncated</code> is set to false. If there are more configurations to @@ -5933,9 +5952,9 @@ namespace Aws * permissions to perform the <code>s3:GetMetricsConfiguration</code> action. The * bucket owner has this permission by default. The bucket owner can grant this * permission to others. For more information about permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>For more information * about metrics configurations and CloudWatch request metrics, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/cloudwatch-monitoring.html">Monitoring @@ -5982,16 +6001,16 @@ namespace Aws */ virtual void ListBucketsAsync(const ListBucketsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; /** - * <p>This operation lists in-progress multipart uploads. An in-progress multipart + * <p>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.</p> <p>This - * operation 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 <code>max-uploads</code> parameter in the response. - * If additional multipart uploads satisfy the list criteria, the response will - * contain an <code>IsTruncated</code> element with the value true. To list the - * additional multipart uploads, use the <code>key-marker</code> and + * 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 <code>max-uploads</code> parameter in the response. If additional + * multipart uploads satisfy the list criteria, the response will contain an + * <code>IsTruncated</code> element with the value true. To list the additional + * multipart uploads, use the <code>key-marker</code> and * <code>upload-id-marker</code> request parameters.</p> <p>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 @@ -6002,7 +6021,7 @@ namespace Aws * Objects Using Multipart Upload</a>.</p> <p>For information on permissions * required to use the multipart upload API, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html">Multipart - * Upload API and Permissions</a>.</p> <p>The following operations are related to + * Upload and Permissions</a>.</p> <p>The following operations are related to * <code>ListMultipartUploads</code>:</p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html">CreateMultipartUpload</a> * </p> </li> <li> <p> <a @@ -6020,16 +6039,16 @@ namespace Aws virtual Model::ListMultipartUploadsOutcome ListMultipartUploads(const Model::ListMultipartUploadsRequest& request) const; /** - * <p>This operation lists in-progress multipart uploads. An in-progress multipart + * <p>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.</p> <p>This - * operation 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 <code>max-uploads</code> parameter in the response. - * If additional multipart uploads satisfy the list criteria, the response will - * contain an <code>IsTruncated</code> element with the value true. To list the - * additional multipart uploads, use the <code>key-marker</code> and + * 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 <code>max-uploads</code> parameter in the response. If additional + * multipart uploads satisfy the list criteria, the response will contain an + * <code>IsTruncated</code> element with the value true. To list the additional + * multipart uploads, use the <code>key-marker</code> and * <code>upload-id-marker</code> request parameters.</p> <p>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 @@ -6040,7 +6059,7 @@ namespace Aws * Objects Using Multipart Upload</a>.</p> <p>For information on permissions * required to use the multipart upload API, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html">Multipart - * Upload API and Permissions</a>.</p> <p>The following operations are related to + * Upload and Permissions</a>.</p> <p>The following operations are related to * <code>ListMultipartUploads</code>:</p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html">CreateMultipartUpload</a> * </p> </li> <li> <p> <a @@ -6060,16 +6079,16 @@ namespace Aws virtual Model::ListMultipartUploadsOutcomeCallable ListMultipartUploadsCallable(const Model::ListMultipartUploadsRequest& request) const; /** - * <p>This operation lists in-progress multipart uploads. An in-progress multipart + * <p>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.</p> <p>This - * operation 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 <code>max-uploads</code> parameter in the response. - * If additional multipart uploads satisfy the list criteria, the response will - * contain an <code>IsTruncated</code> element with the value true. To list the - * additional multipart uploads, use the <code>key-marker</code> and + * 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 <code>max-uploads</code> parameter in the response. If additional + * multipart uploads satisfy the list criteria, the response will contain an + * <code>IsTruncated</code> element with the value true. To list the additional + * multipart uploads, use the <code>key-marker</code> and * <code>upload-id-marker</code> request parameters.</p> <p>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 @@ -6080,7 +6099,7 @@ namespace Aws * Objects Using Multipart Upload</a>.</p> <p>For information on permissions * required to use the multipart upload API, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html">Multipart - * Upload API and Permissions</a>.</p> <p>The following operations are related to + * Upload and Permissions</a>.</p> <p>The following operations are related to * <code>ListMultipartUploads</code>:</p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html">CreateMultipartUpload</a> * </p> </li> <li> <p> <a @@ -6102,12 +6121,14 @@ namespace Aws /** * <p>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. </p> <p> 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.</p> <p>To use this operation, - * you must have READ access to the bucket.</p> <p>This action is not supported by - * Amazon S3 on Outposts.</p> <p>The following operations are related to - * <code>ListObjectVersions</code>:</p> <ul> <li> <p> <a + * of all the object versions.</p> <p> To use this operation, you must + * have permissions to perform the <code>s3:ListBucketVersions</code> action. Be + * aware of the name difference. </p> <p> 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.</p> <p>To use this + * operation, you must have READ access to the bucket.</p> <p>This action is not + * supported by Amazon S3 on Outposts.</p> <p>The following operations are related + * to <code>ListObjectVersions</code>:</p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjectsV2.html">ListObjectsV2</a> * </p> </li> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html">GetObject</a> @@ -6124,12 +6145,14 @@ namespace Aws /** * <p>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. </p> <p> 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.</p> <p>To use this operation, - * you must have READ access to the bucket.</p> <p>This action is not supported by - * Amazon S3 on Outposts.</p> <p>The following operations are related to - * <code>ListObjectVersions</code>:</p> <ul> <li> <p> <a + * of all the object versions.</p> <p> To use this operation, you must + * have permissions to perform the <code>s3:ListBucketVersions</code> action. Be + * aware of the name difference. </p> <p> 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.</p> <p>To use this + * operation, you must have READ access to the bucket.</p> <p>This action is not + * supported by Amazon S3 on Outposts.</p> <p>The following operations are related + * to <code>ListObjectVersions</code>:</p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjectsV2.html">ListObjectsV2</a> * </p> </li> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html">GetObject</a> @@ -6148,12 +6171,14 @@ namespace Aws /** * <p>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. </p> <p> 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.</p> <p>To use this operation, - * you must have READ access to the bucket.</p> <p>This action is not supported by - * Amazon S3 on Outposts.</p> <p>The following operations are related to - * <code>ListObjectVersions</code>:</p> <ul> <li> <p> <a + * of all the object versions.</p> <p> To use this operation, you must + * have permissions to perform the <code>s3:ListBucketVersions</code> action. Be + * aware of the name difference. </p> <p> 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.</p> <p>To use this + * operation, you must have READ access to the bucket.</p> <p>This action is not + * supported by Amazon S3 on Outposts.</p> <p>The following operations are related + * to <code>ListObjectVersions</code>:</p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjectsV2.html">ListObjectsV2</a> * </p> </li> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html">GetObject</a> @@ -6174,8 +6199,8 @@ namespace Aws * 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.</p> <p>This API has been revised. We recommend that - * you use the newer version, <a + * appropriately.</p> <p>This action has been revised. We recommend + * that you use the newer version, <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjectsV2.html">ListObjectsV2</a>, * when developing applications. For backward compatibility, Amazon S3 continues to * support <code>ListObjects</code>.</p> <p>The following operations @@ -6200,8 +6225,8 @@ namespace Aws * 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.</p> <p>This API has been revised. We recommend that - * you use the newer version, <a + * appropriately.</p> <p>This action has been revised. We recommend + * that you use the newer version, <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjectsV2.html">ListObjectsV2</a>, * when developing applications. For backward compatibility, Amazon S3 continues to * support <code>ListObjects</code>.</p> <p>The following operations @@ -6228,8 +6253,8 @@ namespace Aws * 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.</p> <p>This API has been revised. We recommend that - * you use the newer version, <a + * appropriately.</p> <p>This action has been revised. We recommend + * that you use the newer version, <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjectsV2.html">ListObjectsV2</a>, * when developing applications. For backward compatibility, Amazon S3 continues to * support <code>ListObjects</code>.</p> <p>The following operations @@ -6256,19 +6281,20 @@ namespace Aws * request parameters as selection criteria to return a subset of the objects in a * bucket. A <code>200 OK</code> response can contain valid or invalid XML. Make * sure to design your application to parse the contents of the response and handle - * it appropriately.</p> <p>To use this operation, you must have READ access to the - * bucket.</p> <p>To use this operation in an AWS Identity and Access Management - * (IAM) policy, you must have permissions to perform the + * it appropriately. Objects are returned sorted in an ascending order of the + * respective key names in the list.</p> <p>To use this operation, you must have + * READ access to the bucket.</p> <p>To use this action in an AWS Identity and + * Access Management (IAM) policy, you must have permissions to perform the * <code>s3:ListBucket</code> action. The bucket owner has this permission by * default and can grant this permission to others. For more information about * permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>This - * section describes the latest revision of the API. 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, <a + * 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, <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjects.html">ListObjects</a>.</p> * <p>To get a list of your buckets, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBuckets.html">ListBuckets</a>.</p> @@ -6290,19 +6316,20 @@ namespace Aws * request parameters as selection criteria to return a subset of the objects in a * bucket. A <code>200 OK</code> response can contain valid or invalid XML. Make * sure to design your application to parse the contents of the response and handle - * it appropriately.</p> <p>To use this operation, you must have READ access to the - * bucket.</p> <p>To use this operation in an AWS Identity and Access Management - * (IAM) policy, you must have permissions to perform the + * it appropriately. Objects are returned sorted in an ascending order of the + * respective key names in the list.</p> <p>To use this operation, you must have + * READ access to the bucket.</p> <p>To use this action in an AWS Identity and + * Access Management (IAM) policy, you must have permissions to perform the * <code>s3:ListBucket</code> action. The bucket owner has this permission by * default and can grant this permission to others. For more information about * permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>This - * section describes the latest revision of the API. 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, <a + * 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, <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjects.html">ListObjects</a>.</p> * <p>To get a list of your buckets, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBuckets.html">ListBuckets</a>.</p> @@ -6326,19 +6353,20 @@ namespace Aws * request parameters as selection criteria to return a subset of the objects in a * bucket. A <code>200 OK</code> response can contain valid or invalid XML. Make * sure to design your application to parse the contents of the response and handle - * it appropriately.</p> <p>To use this operation, you must have READ access to the - * bucket.</p> <p>To use this operation in an AWS Identity and Access Management - * (IAM) policy, you must have permissions to perform the + * it appropriately. Objects are returned sorted in an ascending order of the + * respective key names in the list.</p> <p>To use this operation, you must have + * READ access to the bucket.</p> <p>To use this action in an AWS Identity and + * Access Management (IAM) policy, you must have permissions to perform the * <code>s3:ListBucket</code> action. The bucket owner has this permission by * default and can grant this permission to others. For more information about * permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>This - * section describes the latest revision of the API. 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, <a + * 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, <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjects.html">ListObjects</a>.</p> * <p>To get a list of your buckets, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBuckets.html">ListBuckets</a>.</p> @@ -6375,7 +6403,7 @@ namespace Aws * Objects Using Multipart Upload</a>.</p> <p>For information on permissions * required to use the multipart upload API, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html">Multipart - * Upload API and Permissions</a>.</p> <p>The following operations are related to + * Upload and Permissions</a>.</p> <p>The following operations are related to * <code>ListParts</code>:</p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html">CreateMultipartUpload</a> * </p> </li> <li> <p> <a @@ -6410,7 +6438,7 @@ namespace Aws * Objects Using Multipart Upload</a>.</p> <p>For information on permissions * required to use the multipart upload API, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html">Multipart - * Upload API and Permissions</a>.</p> <p>The following operations are related to + * Upload and Permissions</a>.</p> <p>The following operations are related to * <code>ListParts</code>:</p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html">CreateMultipartUpload</a> * </p> </li> <li> <p> <a @@ -6447,7 +6475,7 @@ namespace Aws * Objects Using Multipart Upload</a>.</p> <p>For information on permissions * required to use the multipart upload API, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html">Multipart - * Upload API and Permissions</a>.</p> <p>The following operations are related to + * Upload and Permissions</a>.</p> <p>The following operations are related to * <code>ListParts</code>:</p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html">CreateMultipartUpload</a> * </p> </li> <li> <p> <a @@ -6473,18 +6501,18 @@ namespace Aws * 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 <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p> <p> The Transfer * Acceleration state of a bucket can be set to one of the following two * values:</p> <ul> <li> <p> Enabled – Enables accelerated data transfers to the * bucket.</p> </li> <li> <p> Suspended – Disables accelerated data transfers to * the bucket.</p> </li> </ul> <p>The <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketAccelerateConfiguration.html">GetBucketAccelerateConfiguration</a> - * operation returns the transfer acceleration state of a bucket.</p> <p>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.</p> <p> + * action returns the transfer acceleration state of a bucket.</p> <p>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.</p> <p> * The name of the bucket used for Transfer Acceleration must be DNS-compliant and * must not contain periods (".").</p> <p> For more information about transfer * acceleration, see <a @@ -6507,18 +6535,18 @@ namespace Aws * 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 <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p> <p> The Transfer * Acceleration state of a bucket can be set to one of the following two * values:</p> <ul> <li> <p> Enabled – Enables accelerated data transfers to the * bucket.</p> </li> <li> <p> Suspended – Disables accelerated data transfers to * the bucket.</p> </li> </ul> <p>The <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketAccelerateConfiguration.html">GetBucketAccelerateConfiguration</a> - * operation returns the transfer acceleration state of a bucket.</p> <p>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.</p> <p> + * action returns the transfer acceleration state of a bucket.</p> <p>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.</p> <p> * The name of the bucket used for Transfer Acceleration must be DNS-compliant and * must not contain periods (".").</p> <p> For more information about transfer * acceleration, see <a @@ -6543,18 +6571,18 @@ namespace Aws * 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 <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p> <p> The Transfer * Acceleration state of a bucket can be set to one of the following two * values:</p> <ul> <li> <p> Enabled – Enables accelerated data transfers to the * bucket.</p> </li> <li> <p> Suspended – Disables accelerated data transfers to * the bucket.</p> </li> </ul> <p>The <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketAccelerateConfiguration.html">GetBucketAccelerateConfiguration</a> - * operation returns the transfer acceleration state of a bucket.</p> <p>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.</p> <p> + * action returns the transfer acceleration state of a bucket.</p> <p>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.</p> <p> * The name of the bucket used for Transfer Acceleration must be DNS-compliant and * must not contain periods (".").</p> <p> For more information about transfer * acceleration, see <a @@ -6854,9 +6882,9 @@ namespace Aws * <code>s3:PutAnalyticsConfiguration</code> action. The bucket owner has this * permission by default. The bucket owner can grant this permission to others. For * more information about permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p> <p class="title"> * <b>Special Errors</b> </p> <ul> <li> <ul> <li> <p> <i>HTTP Error: HTTP 400 Bad * Request</i> </p> </li> <li> <p> <i>Code: InvalidArgument</i> </p> </li> <li> <p> @@ -6904,9 +6932,9 @@ namespace Aws * <code>s3:PutAnalyticsConfiguration</code> action. The bucket owner has this * permission by default. The bucket owner can grant this permission to others. For * more information about permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p> <p class="title"> * <b>Special Errors</b> </p> <ul> <li> <ul> <li> <p> <i>HTTP Error: HTTP 400 Bad * Request</i> </p> </li> <li> <p> <i>Code: InvalidArgument</i> </p> </li> <li> <p> @@ -6956,9 +6984,9 @@ namespace Aws * <code>s3:PutAnalyticsConfiguration</code> action. The bucket owner has this * permission by default. The bucket owner can grant this permission to others. For * more information about permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p> <p class="title"> * <b>Special Errors</b> </p> <ul> <li> <ul> <li> <p> <i>HTTP Error: HTTP 400 Bad * Request</i> </p> </li> <li> <p> <i>Code: InvalidArgument</i> </p> </li> <li> <p> @@ -7013,9 +7041,8 @@ namespace Aws * request must match an <code>AllowedHeader</code> element. </p> </li> </ul> <p> * For more information about CORS, go to <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/cors.html">Enabling - * Cross-Origin Resource Sharing</a> in the <i>Amazon Simple Storage Service - * Developer Guide</i>.</p> <p class="title"> <b>Related Resources</b> </p> <ul> - * <li> <p> <a + * Cross-Origin Resource Sharing</a> in the <i>Amazon S3 User Guide</i>.</p> <p + * class="title"> <b>Related Resources</b> </p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketCors.html">GetBucketCors</a> * </p> </li> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketCors.html">DeleteBucketCors</a> @@ -7055,9 +7082,8 @@ namespace Aws * request must match an <code>AllowedHeader</code> element. </p> </li> </ul> <p> * For more information about CORS, go to <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/cors.html">Enabling - * Cross-Origin Resource Sharing</a> in the <i>Amazon Simple Storage Service - * Developer Guide</i>.</p> <p class="title"> <b>Related Resources</b> </p> <ul> - * <li> <p> <a + * Cross-Origin Resource Sharing</a> in the <i>Amazon S3 User Guide</i>.</p> <p + * class="title"> <b>Related Resources</b> </p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketCors.html">GetBucketCors</a> * </p> </li> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketCors.html">DeleteBucketCors</a> @@ -7099,9 +7125,8 @@ namespace Aws * request must match an <code>AllowedHeader</code> element. </p> </li> </ul> <p> * For more information about CORS, go to <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/cors.html">Enabling - * Cross-Origin Resource Sharing</a> in the <i>Amazon Simple Storage Service - * Developer Guide</i>.</p> <p class="title"> <b>Related Resources</b> </p> <ul> - * <li> <p> <a + * Cross-Origin Resource Sharing</a> in the <i>Amazon S3 User Guide</i>.</p> <p + * class="title"> <b>Related Resources</b> </p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketCors.html">GetBucketCors</a> * </p> </li> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketCors.html">DeleteBucketCors</a> @@ -7116,30 +7141,29 @@ namespace Aws virtual void PutBucketCorsAsync(const Model::PutBucketCorsRequest& request, const PutBucketCorsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; /** - * <p>This operation uses the <code>encryption</code> subresource to configure - * default encryption and Amazon S3 Bucket Key for an existing bucket.</p> - * <p>Default encryption for a bucket can use server-side encryption with Amazon - * S3-managed keys (SSE-S3) or AWS KMS customer master 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 <a + * <p>This action uses the <code>encryption</code> subresource to configure default + * encryption and Amazon S3 Bucket Key for an existing bucket.</p> <p>Default + * encryption for a bucket can use server-side encryption with Amazon S3-managed + * keys (SSE-S3) or AWS KMS customer master 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 <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html">Amazon - * S3 default bucket encryption</a> in the <i>Amazon Simple Storage Service - * Developer Guide</i>. For more information about S3 Bucket Keys, see <a + * S3 default bucket encryption</a> in the <i>Amazon S3 User Guide</i>. For more + * information about S3 Bucket Keys, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-key.html">Amazon S3 - * Bucket Keys</a> in the <i>Amazon Simple Storage Service Developer Guide</i>.</p> - * <p>This operation requires AWS Signature Version 4. For more - * information, see <a href="sig-v4-authenticating-requests.html"> Authenticating - * Requests (AWS Signature Version 4)</a>. </p> <p>To use this - * operation, you must have permissions to perform the + * Bucket Keys</a> in the <i>Amazon S3 User Guide</i>.</p> <p>This + * action requires AWS Signature Version 4. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/API/sig-v4-authenticating-requests.html"> + * Authenticating Requests (AWS Signature Version 4)</a>. </p> <p>To + * use this operation, you must have permissions to perform the * <code>s3:PutEncryptionConfiguration</code> action. The bucket owner has this * permission by default. The bucket owner can grant this permission to others. For * more information about permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing - * Access Permissions to Your Amazon S3 Resources</a> in the Amazon Simple Storage - * Service Developer Guide. </p> <p class="title"> <b>Related Resources</b> </p> - * <ul> <li> <p> <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing + * Access Permissions to Your Amazon S3 Resources</a> in the Amazon S3 User Guide. + * </p> <p class="title"> <b>Related Resources</b> </p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketEncryption.html">GetBucketEncryption</a> * </p> </li> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketEncryption.html">DeleteBucketEncryption</a> @@ -7150,30 +7174,29 @@ namespace Aws virtual Model::PutBucketEncryptionOutcome PutBucketEncryption(const Model::PutBucketEncryptionRequest& request) const; /** - * <p>This operation uses the <code>encryption</code> subresource to configure - * default encryption and Amazon S3 Bucket Key for an existing bucket.</p> - * <p>Default encryption for a bucket can use server-side encryption with Amazon - * S3-managed keys (SSE-S3) or AWS KMS customer master 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 <a + * <p>This action uses the <code>encryption</code> subresource to configure default + * encryption and Amazon S3 Bucket Key for an existing bucket.</p> <p>Default + * encryption for a bucket can use server-side encryption with Amazon S3-managed + * keys (SSE-S3) or AWS KMS customer master 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 <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html">Amazon - * S3 default bucket encryption</a> in the <i>Amazon Simple Storage Service - * Developer Guide</i>. For more information about S3 Bucket Keys, see <a + * S3 default bucket encryption</a> in the <i>Amazon S3 User Guide</i>. For more + * information about S3 Bucket Keys, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-key.html">Amazon S3 - * Bucket Keys</a> in the <i>Amazon Simple Storage Service Developer Guide</i>.</p> - * <p>This operation requires AWS Signature Version 4. For more - * information, see <a href="sig-v4-authenticating-requests.html"> Authenticating - * Requests (AWS Signature Version 4)</a>. </p> <p>To use this - * operation, you must have permissions to perform the + * Bucket Keys</a> in the <i>Amazon S3 User Guide</i>.</p> <p>This + * action requires AWS Signature Version 4. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/API/sig-v4-authenticating-requests.html"> + * Authenticating Requests (AWS Signature Version 4)</a>. </p> <p>To + * use this operation, you must have permissions to perform the * <code>s3:PutEncryptionConfiguration</code> action. The bucket owner has this * permission by default. The bucket owner can grant this permission to others. For * more information about permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing - * Access Permissions to Your Amazon S3 Resources</a> in the Amazon Simple Storage - * Service Developer Guide. </p> <p class="title"> <b>Related Resources</b> </p> - * <ul> <li> <p> <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing + * Access Permissions to Your Amazon S3 Resources</a> in the Amazon S3 User Guide. + * </p> <p class="title"> <b>Related Resources</b> </p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketEncryption.html">GetBucketEncryption</a> * </p> </li> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketEncryption.html">DeleteBucketEncryption</a> @@ -7186,30 +7209,29 @@ namespace Aws virtual Model::PutBucketEncryptionOutcomeCallable PutBucketEncryptionCallable(const Model::PutBucketEncryptionRequest& request) const; /** - * <p>This operation uses the <code>encryption</code> subresource to configure - * default encryption and Amazon S3 Bucket Key for an existing bucket.</p> - * <p>Default encryption for a bucket can use server-side encryption with Amazon - * S3-managed keys (SSE-S3) or AWS KMS customer master 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 <a + * <p>This action uses the <code>encryption</code> subresource to configure default + * encryption and Amazon S3 Bucket Key for an existing bucket.</p> <p>Default + * encryption for a bucket can use server-side encryption with Amazon S3-managed + * keys (SSE-S3) or AWS KMS customer master 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 <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html">Amazon - * S3 default bucket encryption</a> in the <i>Amazon Simple Storage Service - * Developer Guide</i>. For more information about S3 Bucket Keys, see <a + * S3 default bucket encryption</a> in the <i>Amazon S3 User Guide</i>. For more + * information about S3 Bucket Keys, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-key.html">Amazon S3 - * Bucket Keys</a> in the <i>Amazon Simple Storage Service Developer Guide</i>.</p> - * <p>This operation requires AWS Signature Version 4. For more - * information, see <a href="sig-v4-authenticating-requests.html"> Authenticating - * Requests (AWS Signature Version 4)</a>. </p> <p>To use this - * operation, you must have permissions to perform the + * Bucket Keys</a> in the <i>Amazon S3 User Guide</i>.</p> <p>This + * action requires AWS Signature Version 4. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/API/sig-v4-authenticating-requests.html"> + * Authenticating Requests (AWS Signature Version 4)</a>. </p> <p>To + * use this operation, you must have permissions to perform the * <code>s3:PutEncryptionConfiguration</code> action. The bucket owner has this * permission by default. The bucket owner can grant this permission to others. For * more information about permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing - * Access Permissions to Your Amazon S3 Resources</a> in the Amazon Simple Storage - * Service Developer Guide. </p> <p class="title"> <b>Related Resources</b> </p> - * <ul> <li> <p> <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing + * Access Permissions to Your Amazon S3 Resources</a> in the Amazon S3 User Guide. + * </p> <p class="title"> <b>Related Resources</b> </p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketEncryption.html">GetBucketEncryption</a> * </p> </li> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketEncryption.html">DeleteBucketEncryption</a> @@ -7222,10 +7244,11 @@ namespace Aws virtual void PutBucketEncryptionAsync(const Model::PutBucketEncryptionRequest& request, const PutBucketEncryptionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; /** - * <p>Puts a S3 Intelligent-Tiering configuration to the specified bucket.</p> - * <p>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 additional operational overhead. S3 Intelligent-Tiering delivers + * <p>Puts a S3 Intelligent-Tiering configuration to the specified bucket. You can + * have up to 1,000 S3 Intelligent-Tiering configurations per bucket.</p> <p>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 additional operational overhead. S3 Intelligent-Tiering delivers * automatic cost savings by moving data between access tiers, when access patterns * change.</p> <p>The S3 Intelligent-Tiering storage class is suitable for objects * larger than 128 KB that you plan to store for at least 30 days. If the size of @@ -7244,17 +7267,32 @@ namespace Aws * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketIntelligentTieringConfiguration.html">GetBucketIntelligentTieringConfiguration</a> * </p> </li> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBucketIntelligentTieringConfigurations.html">ListBucketIntelligentTieringConfigurations</a> - * </p> </li> </ul><p><h3>See Also:</h3> <a + * </p> </li> </ul> <p>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.</p> <p class="title"> <b>Special Errors</b> </p> <ul> <li> <p + * class="title"> <b>HTTP 400 Bad Request Error</b> </p> <ul> <li> <p> <i>Code:</i> + * InvalidArgument</p> </li> <li> <p> <i>Cause:</i> Invalid Argument</p> </li> + * </ul> </li> <li> <p class="title"> <b>HTTP 400 Bad Request Error</b> </p> <ul> + * <li> <p> <i>Code:</i> TooManyConfigurations</p> </li> <li> <p> <i>Cause:</i> You + * are attempting to create a new configuration but have already reached the + * 1,000-configuration limit. </p> </li> </ul> </li> <li> <p class="title"> <b>HTTP + * 403 Forbidden Error</b> </p> <ul> <li> <p> <i>Code:</i> AccessDenied</p> </li> + * <li> <p> <i>Cause:</i> You are not the owner of the specified bucket, or you do + * not have the <code>s3:PutIntelligentTieringConfiguration</code> bucket + * permission to set the configuration on the bucket. </p> </li> </ul> </li> + * </ul><p><h3>See Also:</h3> <a * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketIntelligentTieringConfiguration">AWS * API Reference</a></p> */ virtual Model::PutBucketIntelligentTieringConfigurationOutcome PutBucketIntelligentTieringConfiguration(const Model::PutBucketIntelligentTieringConfigurationRequest& request) const; /** - * <p>Puts a S3 Intelligent-Tiering configuration to the specified bucket.</p> - * <p>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 additional operational overhead. S3 Intelligent-Tiering delivers + * <p>Puts a S3 Intelligent-Tiering configuration to the specified bucket. You can + * have up to 1,000 S3 Intelligent-Tiering configurations per bucket.</p> <p>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 additional operational overhead. S3 Intelligent-Tiering delivers * automatic cost savings by moving data between access tiers, when access patterns * change.</p> <p>The S3 Intelligent-Tiering storage class is suitable for objects * larger than 128 KB that you plan to store for at least 30 days. If the size of @@ -7273,7 +7311,21 @@ namespace Aws * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketIntelligentTieringConfiguration.html">GetBucketIntelligentTieringConfiguration</a> * </p> </li> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBucketIntelligentTieringConfigurations.html">ListBucketIntelligentTieringConfigurations</a> - * </p> </li> </ul><p><h3>See Also:</h3> <a + * </p> </li> </ul> <p>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.</p> <p class="title"> <b>Special Errors</b> </p> <ul> <li> <p + * class="title"> <b>HTTP 400 Bad Request Error</b> </p> <ul> <li> <p> <i>Code:</i> + * InvalidArgument</p> </li> <li> <p> <i>Cause:</i> Invalid Argument</p> </li> + * </ul> </li> <li> <p class="title"> <b>HTTP 400 Bad Request Error</b> </p> <ul> + * <li> <p> <i>Code:</i> TooManyConfigurations</p> </li> <li> <p> <i>Cause:</i> You + * are attempting to create a new configuration but have already reached the + * 1,000-configuration limit. </p> </li> </ul> </li> <li> <p class="title"> <b>HTTP + * 403 Forbidden Error</b> </p> <ul> <li> <p> <i>Code:</i> AccessDenied</p> </li> + * <li> <p> <i>Cause:</i> You are not the owner of the specified bucket, or you do + * not have the <code>s3:PutIntelligentTieringConfiguration</code> bucket + * permission to set the configuration on the bucket. </p> </li> </ul> </li> + * </ul><p><h3>See Also:</h3> <a * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketIntelligentTieringConfiguration">AWS * API Reference</a></p> * @@ -7282,10 +7334,11 @@ namespace Aws virtual Model::PutBucketIntelligentTieringConfigurationOutcomeCallable PutBucketIntelligentTieringConfigurationCallable(const Model::PutBucketIntelligentTieringConfigurationRequest& request) const; /** - * <p>Puts a S3 Intelligent-Tiering configuration to the specified bucket.</p> - * <p>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 additional operational overhead. S3 Intelligent-Tiering delivers + * <p>Puts a S3 Intelligent-Tiering configuration to the specified bucket. You can + * have up to 1,000 S3 Intelligent-Tiering configurations per bucket.</p> <p>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 additional operational overhead. S3 Intelligent-Tiering delivers * automatic cost savings by moving data between access tiers, when access patterns * change.</p> <p>The S3 Intelligent-Tiering storage class is suitable for objects * larger than 128 KB that you plan to store for at least 30 days. If the size of @@ -7304,7 +7357,21 @@ namespace Aws * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketIntelligentTieringConfiguration.html">GetBucketIntelligentTieringConfiguration</a> * </p> </li> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBucketIntelligentTieringConfigurations.html">ListBucketIntelligentTieringConfigurations</a> - * </p> </li> </ul><p><h3>See Also:</h3> <a + * </p> </li> </ul> <p>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.</p> <p class="title"> <b>Special Errors</b> </p> <ul> <li> <p + * class="title"> <b>HTTP 400 Bad Request Error</b> </p> <ul> <li> <p> <i>Code:</i> + * InvalidArgument</p> </li> <li> <p> <i>Cause:</i> Invalid Argument</p> </li> + * </ul> </li> <li> <p class="title"> <b>HTTP 400 Bad Request Error</b> </p> <ul> + * <li> <p> <i>Code:</i> TooManyConfigurations</p> </li> <li> <p> <i>Cause:</i> You + * are attempting to create a new configuration but have already reached the + * 1,000-configuration limit. </p> </li> </ul> </li> <li> <p class="title"> <b>HTTP + * 403 Forbidden Error</b> </p> <ul> <li> <p> <i>Code:</i> AccessDenied</p> </li> + * <li> <p> <i>Cause:</i> You are not the owner of the specified bucket, or you do + * not have the <code>s3:PutIntelligentTieringConfiguration</code> bucket + * permission to set the configuration on the bucket. </p> </li> </ul> </li> + * </ul><p><h3>See Also:</h3> <a * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketIntelligentTieringConfiguration">AWS * API Reference</a></p> * @@ -7313,7 +7380,7 @@ namespace Aws virtual void PutBucketIntelligentTieringConfigurationAsync(const Model::PutBucketIntelligentTieringConfigurationRequest& request, const PutBucketIntelligentTieringConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; /** - * <p>This implementation of the <code>PUT</code> operation adds an inventory + * <p>This implementation of the <code>PUT</code> action adds an inventory * configuration (identified by the inventory ID) to the bucket. You can have up to * 1,000 inventory configurations per bucket. </p> <p>Amazon S3 inventory generates * inventories of the objects in the bucket on a daily or weekly basis, and the @@ -7327,32 +7394,31 @@ namespace Aws * include and whether to inventory all object versions or only current versions. * For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-inventory.html">Amazon - * S3 Inventory</a> in the Amazon Simple Storage Service Developer Guide.</p> - * <p>You must create a bucket policy on the <i>destination</i> bucket - * to grant permissions to Amazon S3 to write objects to the bucket in the defined - * location. For an example policy, see <a + * S3 Inventory</a> in the Amazon S3 User Guide.</p> <p>You must create + * a bucket policy on the <i>destination</i> bucket to grant permissions to Amazon + * S3 to write objects to the bucket in the defined location. For an example + * policy, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/example-bucket-policies.html#example-bucket-policies-use-case-9"> * Granting Permissions for Amazon S3 Inventory and Storage Class Analysis</a>.</p> * <p>To use this operation, you must have permissions to perform the * <code>s3:PutInventoryConfiguration</code> action. The bucket owner has this * permission by default and can grant this permission to others. For more * information about permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing - * Access Permissions to Your Amazon S3 Resources</a> in the Amazon Simple Storage - * Service Developer Guide.</p> <p class="title"> <b>Special Errors</b> </p> <ul> - * <li> <p class="title"> <b>HTTP 400 Bad Request Error</b> </p> <ul> <li> <p> - * <i>Code:</i> InvalidArgument</p> </li> <li> <p> <i>Cause:</i> Invalid - * Argument</p> </li> </ul> </li> <li> <p class="title"> <b>HTTP 400 Bad Request - * Error</b> </p> <ul> <li> <p> <i>Code:</i> TooManyConfigurations</p> </li> <li> - * <p> <i>Cause:</i> You are attempting to create a new configuration but have - * already reached the 1,000-configuration limit. </p> </li> </ul> </li> <li> <p - * class="title"> <b>HTTP 403 Forbidden Error</b> </p> <ul> <li> <p> <i>Code:</i> - * AccessDenied</p> </li> <li> <p> <i>Cause:</i> You are not the owner of the - * specified bucket, or you do not have the - * <code>s3:PutInventoryConfiguration</code> bucket permission to set the - * configuration on the bucket. </p> </li> </ul> </li> </ul> <p class="title"> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing + * Access Permissions to Your Amazon S3 Resources</a> in the Amazon S3 User + * Guide.</p> <p class="title"> <b>Special Errors</b> </p> <ul> <li> <p + * class="title"> <b>HTTP 400 Bad Request Error</b> </p> <ul> <li> <p> <i>Code:</i> + * InvalidArgument</p> </li> <li> <p> <i>Cause:</i> Invalid Argument</p> </li> + * </ul> </li> <li> <p class="title"> <b>HTTP 400 Bad Request Error</b> </p> <ul> + * <li> <p> <i>Code:</i> TooManyConfigurations</p> </li> <li> <p> <i>Cause:</i> You + * are attempting to create a new configuration but have already reached the + * 1,000-configuration limit. </p> </li> </ul> </li> <li> <p class="title"> <b>HTTP + * 403 Forbidden Error</b> </p> <ul> <li> <p> <i>Code:</i> AccessDenied</p> </li> + * <li> <p> <i>Cause:</i> You are not the owner of the specified bucket, or you do + * not have the <code>s3:PutInventoryConfiguration</code> bucket permission to set + * the configuration on the bucket. </p> </li> </ul> </li> </ul> <p class="title"> * <b>Related Resources</b> </p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketInventoryConfiguration.html">GetBucketInventoryConfiguration</a> * </p> </li> <li> <p> <a @@ -7366,7 +7432,7 @@ namespace Aws virtual Model::PutBucketInventoryConfigurationOutcome PutBucketInventoryConfiguration(const Model::PutBucketInventoryConfigurationRequest& request) const; /** - * <p>This implementation of the <code>PUT</code> operation adds an inventory + * <p>This implementation of the <code>PUT</code> action adds an inventory * configuration (identified by the inventory ID) to the bucket. You can have up to * 1,000 inventory configurations per bucket. </p> <p>Amazon S3 inventory generates * inventories of the objects in the bucket on a daily or weekly basis, and the @@ -7380,32 +7446,31 @@ namespace Aws * include and whether to inventory all object versions or only current versions. * For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-inventory.html">Amazon - * S3 Inventory</a> in the Amazon Simple Storage Service Developer Guide.</p> - * <p>You must create a bucket policy on the <i>destination</i> bucket - * to grant permissions to Amazon S3 to write objects to the bucket in the defined - * location. For an example policy, see <a + * S3 Inventory</a> in the Amazon S3 User Guide.</p> <p>You must create + * a bucket policy on the <i>destination</i> bucket to grant permissions to Amazon + * S3 to write objects to the bucket in the defined location. For an example + * policy, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/example-bucket-policies.html#example-bucket-policies-use-case-9"> * Granting Permissions for Amazon S3 Inventory and Storage Class Analysis</a>.</p> * <p>To use this operation, you must have permissions to perform the * <code>s3:PutInventoryConfiguration</code> action. The bucket owner has this * permission by default and can grant this permission to others. For more * information about permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing - * Access Permissions to Your Amazon S3 Resources</a> in the Amazon Simple Storage - * Service Developer Guide.</p> <p class="title"> <b>Special Errors</b> </p> <ul> - * <li> <p class="title"> <b>HTTP 400 Bad Request Error</b> </p> <ul> <li> <p> - * <i>Code:</i> InvalidArgument</p> </li> <li> <p> <i>Cause:</i> Invalid - * Argument</p> </li> </ul> </li> <li> <p class="title"> <b>HTTP 400 Bad Request - * Error</b> </p> <ul> <li> <p> <i>Code:</i> TooManyConfigurations</p> </li> <li> - * <p> <i>Cause:</i> You are attempting to create a new configuration but have - * already reached the 1,000-configuration limit. </p> </li> </ul> </li> <li> <p - * class="title"> <b>HTTP 403 Forbidden Error</b> </p> <ul> <li> <p> <i>Code:</i> - * AccessDenied</p> </li> <li> <p> <i>Cause:</i> You are not the owner of the - * specified bucket, or you do not have the - * <code>s3:PutInventoryConfiguration</code> bucket permission to set the - * configuration on the bucket. </p> </li> </ul> </li> </ul> <p class="title"> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing + * Access Permissions to Your Amazon S3 Resources</a> in the Amazon S3 User + * Guide.</p> <p class="title"> <b>Special Errors</b> </p> <ul> <li> <p + * class="title"> <b>HTTP 400 Bad Request Error</b> </p> <ul> <li> <p> <i>Code:</i> + * InvalidArgument</p> </li> <li> <p> <i>Cause:</i> Invalid Argument</p> </li> + * </ul> </li> <li> <p class="title"> <b>HTTP 400 Bad Request Error</b> </p> <ul> + * <li> <p> <i>Code:</i> TooManyConfigurations</p> </li> <li> <p> <i>Cause:</i> You + * are attempting to create a new configuration but have already reached the + * 1,000-configuration limit. </p> </li> </ul> </li> <li> <p class="title"> <b>HTTP + * 403 Forbidden Error</b> </p> <ul> <li> <p> <i>Code:</i> AccessDenied</p> </li> + * <li> <p> <i>Cause:</i> You are not the owner of the specified bucket, or you do + * not have the <code>s3:PutInventoryConfiguration</code> bucket permission to set + * the configuration on the bucket. </p> </li> </ul> </li> </ul> <p class="title"> * <b>Related Resources</b> </p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketInventoryConfiguration.html">GetBucketInventoryConfiguration</a> * </p> </li> <li> <p> <a @@ -7421,7 +7486,7 @@ namespace Aws virtual Model::PutBucketInventoryConfigurationOutcomeCallable PutBucketInventoryConfigurationCallable(const Model::PutBucketInventoryConfigurationRequest& request) const; /** - * <p>This implementation of the <code>PUT</code> operation adds an inventory + * <p>This implementation of the <code>PUT</code> action adds an inventory * configuration (identified by the inventory ID) to the bucket. You can have up to * 1,000 inventory configurations per bucket. </p> <p>Amazon S3 inventory generates * inventories of the objects in the bucket on a daily or weekly basis, and the @@ -7435,32 +7500,31 @@ namespace Aws * include and whether to inventory all object versions or only current versions. * For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-inventory.html">Amazon - * S3 Inventory</a> in the Amazon Simple Storage Service Developer Guide.</p> - * <p>You must create a bucket policy on the <i>destination</i> bucket - * to grant permissions to Amazon S3 to write objects to the bucket in the defined - * location. For an example policy, see <a + * S3 Inventory</a> in the Amazon S3 User Guide.</p> <p>You must create + * a bucket policy on the <i>destination</i> bucket to grant permissions to Amazon + * S3 to write objects to the bucket in the defined location. For an example + * policy, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/example-bucket-policies.html#example-bucket-policies-use-case-9"> * Granting Permissions for Amazon S3 Inventory and Storage Class Analysis</a>.</p> * <p>To use this operation, you must have permissions to perform the * <code>s3:PutInventoryConfiguration</code> action. The bucket owner has this * permission by default and can grant this permission to others. For more * information about permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing - * Access Permissions to Your Amazon S3 Resources</a> in the Amazon Simple Storage - * Service Developer Guide.</p> <p class="title"> <b>Special Errors</b> </p> <ul> - * <li> <p class="title"> <b>HTTP 400 Bad Request Error</b> </p> <ul> <li> <p> - * <i>Code:</i> InvalidArgument</p> </li> <li> <p> <i>Cause:</i> Invalid - * Argument</p> </li> </ul> </li> <li> <p class="title"> <b>HTTP 400 Bad Request - * Error</b> </p> <ul> <li> <p> <i>Code:</i> TooManyConfigurations</p> </li> <li> - * <p> <i>Cause:</i> You are attempting to create a new configuration but have - * already reached the 1,000-configuration limit. </p> </li> </ul> </li> <li> <p - * class="title"> <b>HTTP 403 Forbidden Error</b> </p> <ul> <li> <p> <i>Code:</i> - * AccessDenied</p> </li> <li> <p> <i>Cause:</i> You are not the owner of the - * specified bucket, or you do not have the - * <code>s3:PutInventoryConfiguration</code> bucket permission to set the - * configuration on the bucket. </p> </li> </ul> </li> </ul> <p class="title"> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing + * Access Permissions to Your Amazon S3 Resources</a> in the Amazon S3 User + * Guide.</p> <p class="title"> <b>Special Errors</b> </p> <ul> <li> <p + * class="title"> <b>HTTP 400 Bad Request Error</b> </p> <ul> <li> <p> <i>Code:</i> + * InvalidArgument</p> </li> <li> <p> <i>Cause:</i> Invalid Argument</p> </li> + * </ul> </li> <li> <p class="title"> <b>HTTP 400 Bad Request Error</b> </p> <ul> + * <li> <p> <i>Code:</i> TooManyConfigurations</p> </li> <li> <p> <i>Cause:</i> You + * are attempting to create a new configuration but have already reached the + * 1,000-configuration limit. </p> </li> </ul> </li> <li> <p class="title"> <b>HTTP + * 403 Forbidden Error</b> </p> <ul> <li> <p> <i>Code:</i> AccessDenied</p> </li> + * <li> <p> <i>Cause:</i> You are not the owner of the specified bucket, or you do + * not have the <code>s3:PutInventoryConfiguration</code> bucket permission to set + * the configuration on the bucket. </p> </li> </ul> </li> </ul> <p class="title"> * <b>Related Resources</b> </p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketInventoryConfiguration.html">GetBucketInventoryConfiguration</a> * </p> </li> <li> <p> <a @@ -7478,7 +7542,7 @@ namespace Aws /** * <p>Creates a new lifecycle configuration for the bucket or replaces an existing * lifecycle configuration. For information about lifecycle configuration, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>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, @@ -7514,7 +7578,7 @@ namespace Aws * <p>s3:DeleteObject</p> </li> <li> <p>s3:DeleteObjectVersion</p> </li> <li> * <p>s3:PutLifecycleConfiguration</p> </li> </ul> <p>For more information about * permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>The following are * related to <code>PutBucketLifecycleConfiguration</code>:</p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/lifecycle-configuration-examples.html">Examples @@ -7531,7 +7595,7 @@ namespace Aws /** * <p>Creates a new lifecycle configuration for the bucket or replaces an existing * lifecycle configuration. For information about lifecycle configuration, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>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, @@ -7567,7 +7631,7 @@ namespace Aws * <p>s3:DeleteObject</p> </li> <li> <p>s3:DeleteObjectVersion</p> </li> <li> * <p>s3:PutLifecycleConfiguration</p> </li> </ul> <p>For more information about * permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>The following are * related to <code>PutBucketLifecycleConfiguration</code>:</p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/lifecycle-configuration-examples.html">Examples @@ -7586,7 +7650,7 @@ namespace Aws /** * <p>Creates a new lifecycle configuration for the bucket or replaces an existing * lifecycle configuration. For information about lifecycle configuration, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>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, @@ -7622,7 +7686,7 @@ namespace Aws * <p>s3:DeleteObject</p> </li> <li> <p>s3:DeleteObjectVersion</p> </li> <li> * <p>s3:PutLifecycleConfiguration</p> </li> </ul> <p>For more information about * permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>The following are * related to <code>PutBucketLifecycleConfiguration</code>:</p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/lifecycle-configuration-examples.html">Examples @@ -7789,9 +7853,9 @@ namespace Aws * must have permissions to perform the <code>s3:PutMetricsConfiguration</code> * action. The bucket owner has this permission by default. The bucket owner can * grant this permission to others. For more information about permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>For information about * CloudWatch request metrics for Amazon S3, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/cloudwatch-monitoring.html">Monitoring @@ -7821,9 +7885,9 @@ namespace Aws * must have permissions to perform the <code>s3:PutMetricsConfiguration</code> * action. The bucket owner has this permission by default. The bucket owner can * grant this permission to others. For more information about permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>For information about * CloudWatch request metrics for Amazon S3, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/cloudwatch-monitoring.html">Monitoring @@ -7855,9 +7919,9 @@ namespace Aws * must have permissions to perform the <code>s3:PutMetricsConfiguration</code> * action. The bucket owner has this permission by default. The bucket owner can * grant this permission to others. For more information about permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>For information about * CloudWatch request metrics for Amazon S3, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/cloudwatch-monitoring.html">Monitoring @@ -7892,13 +7956,13 @@ namespace Aws * configured. That is, the notification configuration will be an empty * <code>NotificationConfiguration</code>.</p> <p> * <code><NotificationConfiguration></code> </p> <p> - * <code></NotificationConfiguration></code> </p> <p>This operation replaces - * the existing notification configuration with the configuration you include in - * the request body.</p> <p>After Amazon S3 receives this request, it first - * verifies that any Amazon Simple Notification Service (Amazon SNS) or Amazon - * Simple Queue Service (Amazon SQS) destination exists, and that the bucket owner - * has permission to publish to it by sending a test notification. In the case of - * AWS Lambda destinations, Amazon S3 verifies that the Lambda function permissions + * <code></NotificationConfiguration></code> </p> <p>This action replaces the + * existing notification configuration with the configuration you include in the + * request body.</p> <p>After Amazon S3 receives this request, it first verifies + * that any Amazon Simple Notification Service (Amazon SNS) or Amazon Simple Queue + * Service (Amazon SQS) destination exists, and that the bucket owner has + * permission to publish to it by sending a test notification. In the case of AWS + * Lambda destinations, Amazon S3 verifies that the Lambda function permissions * grant Amazon S3 permission to invoke the function from the Amazon S3 bucket. For * more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html">Configuring @@ -7910,13 +7974,13 @@ namespace Aws * notification is an atomic operation. For example, suppose your notification * configuration includes SNS topic, SQS queue, and Lambda function configurations. * When you send a PUT request with this configuration, Amazon S3 sends test - * messages to your SNS topic. If the message fails, the entire PUT operation will + * messages to your SNS topic. If the message fails, the entire PUT action will * fail, and Amazon S3 will not add the configuration to your bucket.</p> * <p> <b>Responses</b> </p> <p>If the configuration in the request body includes * only one <code>TopicConfiguration</code> specifying only the * <code>s3:ReducedRedundancyLostObject</code> event type, the response will also * include the <code>x-amz-sns-test-message-id</code> header containing the message - * ID of the test notification sent to the topic.</p> <p>The following operation is + * ID of the test notification sent to the topic.</p> <p>The following action is * related to <code>PutBucketNotificationConfiguration</code>:</p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketNotificationConfiguration.html">GetBucketNotificationConfiguration</a> * </p> </li> </ul><p><h3>See Also:</h3> <a @@ -7937,13 +8001,13 @@ namespace Aws * configured. That is, the notification configuration will be an empty * <code>NotificationConfiguration</code>.</p> <p> * <code><NotificationConfiguration></code> </p> <p> - * <code></NotificationConfiguration></code> </p> <p>This operation replaces - * the existing notification configuration with the configuration you include in - * the request body.</p> <p>After Amazon S3 receives this request, it first - * verifies that any Amazon Simple Notification Service (Amazon SNS) or Amazon - * Simple Queue Service (Amazon SQS) destination exists, and that the bucket owner - * has permission to publish to it by sending a test notification. In the case of - * AWS Lambda destinations, Amazon S3 verifies that the Lambda function permissions + * <code></NotificationConfiguration></code> </p> <p>This action replaces the + * existing notification configuration with the configuration you include in the + * request body.</p> <p>After Amazon S3 receives this request, it first verifies + * that any Amazon Simple Notification Service (Amazon SNS) or Amazon Simple Queue + * Service (Amazon SQS) destination exists, and that the bucket owner has + * permission to publish to it by sending a test notification. In the case of AWS + * Lambda destinations, Amazon S3 verifies that the Lambda function permissions * grant Amazon S3 permission to invoke the function from the Amazon S3 bucket. For * more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html">Configuring @@ -7955,13 +8019,13 @@ namespace Aws * notification is an atomic operation. For example, suppose your notification * configuration includes SNS topic, SQS queue, and Lambda function configurations. * When you send a PUT request with this configuration, Amazon S3 sends test - * messages to your SNS topic. If the message fails, the entire PUT operation will + * messages to your SNS topic. If the message fails, the entire PUT action will * fail, and Amazon S3 will not add the configuration to your bucket.</p> * <p> <b>Responses</b> </p> <p>If the configuration in the request body includes * only one <code>TopicConfiguration</code> specifying only the * <code>s3:ReducedRedundancyLostObject</code> event type, the response will also * include the <code>x-amz-sns-test-message-id</code> header containing the message - * ID of the test notification sent to the topic.</p> <p>The following operation is + * ID of the test notification sent to the topic.</p> <p>The following action is * related to <code>PutBucketNotificationConfiguration</code>:</p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketNotificationConfiguration.html">GetBucketNotificationConfiguration</a> * </p> </li> </ul><p><h3>See Also:</h3> <a @@ -7984,13 +8048,13 @@ namespace Aws * configured. That is, the notification configuration will be an empty * <code>NotificationConfiguration</code>.</p> <p> * <code><NotificationConfiguration></code> </p> <p> - * <code></NotificationConfiguration></code> </p> <p>This operation replaces - * the existing notification configuration with the configuration you include in - * the request body.</p> <p>After Amazon S3 receives this request, it first - * verifies that any Amazon Simple Notification Service (Amazon SNS) or Amazon - * Simple Queue Service (Amazon SQS) destination exists, and that the bucket owner - * has permission to publish to it by sending a test notification. In the case of - * AWS Lambda destinations, Amazon S3 verifies that the Lambda function permissions + * <code></NotificationConfiguration></code> </p> <p>This action replaces the + * existing notification configuration with the configuration you include in the + * request body.</p> <p>After Amazon S3 receives this request, it first verifies + * that any Amazon Simple Notification Service (Amazon SNS) or Amazon Simple Queue + * Service (Amazon SQS) destination exists, and that the bucket owner has + * permission to publish to it by sending a test notification. In the case of AWS + * Lambda destinations, Amazon S3 verifies that the Lambda function permissions * grant Amazon S3 permission to invoke the function from the Amazon S3 bucket. For * more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html">Configuring @@ -8002,13 +8066,13 @@ namespace Aws * notification is an atomic operation. For example, suppose your notification * configuration includes SNS topic, SQS queue, and Lambda function configurations. * When you send a PUT request with this configuration, Amazon S3 sends test - * messages to your SNS topic. If the message fails, the entire PUT operation will + * messages to your SNS topic. If the message fails, the entire PUT action will * fail, and Amazon S3 will not add the configuration to your bucket.</p> * <p> <b>Responses</b> </p> <p>If the configuration in the request body includes * only one <code>TopicConfiguration</code> specifying only the * <code>s3:ReducedRedundancyLostObject</code> event type, the response will also * include the <code>x-amz-sns-test-message-id</code> header containing the message - * ID of the test notification sent to the topic.</p> <p>The following operation is + * ID of the test notification sent to the topic.</p> <p>The following action is * related to <code>PutBucketNotificationConfiguration</code>:</p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketNotificationConfiguration.html">GetBucketNotificationConfiguration</a> * </p> </li> </ul><p><h3>See Also:</h3> <a @@ -8161,7 +8225,7 @@ namespace Aws * information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/replication.html">Replication</a> * in the <i>Amazon S3 Developer Guide</i>. </p> <p>To perform this - * operation, the user or role performing the operation must have the <a + * operation, the user or role performing the action must have the <a * href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_passrole.html">iam:PassRole</a> * permission.</p> <p>Specify the replication configuration in the request * body. In the replication configuration, you provide the name of the destination @@ -8189,7 +8253,7 @@ namespace Aws * about permissions, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html">Specifying * Permissions in a Policy</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p> <p> <b>Handling * Replication of Encrypted Objects</b> </p> <p>By default, Amazon S3 doesn't * replicate objects that are stored at rest using server-side encryption with CMKs @@ -8218,7 +8282,7 @@ namespace Aws * information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/replication.html">Replication</a> * in the <i>Amazon S3 Developer Guide</i>. </p> <p>To perform this - * operation, the user or role performing the operation must have the <a + * operation, the user or role performing the action must have the <a * href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_passrole.html">iam:PassRole</a> * permission.</p> <p>Specify the replication configuration in the request * body. In the replication configuration, you provide the name of the destination @@ -8246,7 +8310,7 @@ namespace Aws * about permissions, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html">Specifying * Permissions in a Policy</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p> <p> <b>Handling * Replication of Encrypted Objects</b> </p> <p>By default, Amazon S3 doesn't * replicate objects that are stored at rest using server-side encryption with CMKs @@ -8277,7 +8341,7 @@ namespace Aws * information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/replication.html">Replication</a> * in the <i>Amazon S3 Developer Guide</i>. </p> <p>To perform this - * operation, the user or role performing the operation must have the <a + * operation, the user or role performing the action must have the <a * href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_passrole.html">iam:PassRole</a> * permission.</p> <p>Specify the replication configuration in the request * body. In the replication configuration, you provide the name of the destination @@ -8305,7 +8369,7 @@ namespace Aws * about permissions, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html">Specifying * Permissions in a Policy</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p> <p> <b>Handling * Replication of Encrypted Objects</b> </p> <p>By default, Amazon S3 doesn't * replicate objects that are stored at rest using server-side encryption with CMKs @@ -8404,9 +8468,9 @@ namespace Aws * <code>s3:PutBucketTagging</code> action. The bucket owner has this permission by * default and can grant this permission to others. For more information about * permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p> <p> * <code>PutBucketTagging</code> has the following special errors:</p> <ul> <li> * <p>Error code: <code>InvalidTagError</code> </p> <ul> <li> <p>Description: The @@ -8419,7 +8483,7 @@ namespace Aws * <code>MalformedXMLError</code> </p> <ul> <li> <p>Description: The XML provided * does not match the schema.</p> </li> </ul> </li> <li> <p>Error code: * <code>OperationAbortedError </code> </p> <ul> <li> <p>Description: A conflicting - * conditional operation is currently in progress against this resource. Please try + * conditional action is currently in progress against this resource. Please try * again.</p> </li> </ul> </li> <li> <p>Error code: <code>InternalError</code> </p> * <ul> <li> <p>Description: The service was unable to apply the provided tag to * the bucket.</p> </li> </ul> </li> </ul> <p>The following operations are related @@ -8451,9 +8515,9 @@ namespace Aws * <code>s3:PutBucketTagging</code> action. The bucket owner has this permission by * default and can grant this permission to others. For more information about * permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p> <p> * <code>PutBucketTagging</code> has the following special errors:</p> <ul> <li> * <p>Error code: <code>InvalidTagError</code> </p> <ul> <li> <p>Description: The @@ -8466,7 +8530,7 @@ namespace Aws * <code>MalformedXMLError</code> </p> <ul> <li> <p>Description: The XML provided * does not match the schema.</p> </li> </ul> </li> <li> <p>Error code: * <code>OperationAbortedError </code> </p> <ul> <li> <p>Description: A conflicting - * conditional operation is currently in progress against this resource. Please try + * conditional action is currently in progress against this resource. Please try * again.</p> </li> </ul> </li> <li> <p>Error code: <code>InternalError</code> </p> * <ul> <li> <p>Description: The service was unable to apply the provided tag to * the bucket.</p> </li> </ul> </li> </ul> <p>The following operations are related @@ -8500,9 +8564,9 @@ namespace Aws * <code>s3:PutBucketTagging</code> action. The bucket owner has this permission by * default and can grant this permission to others. For more information about * permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Access Permissions to Your Amazon S3 Resources</a>.</p> <p> * <code>PutBucketTagging</code> has the following special errors:</p> <ul> <li> * <p>Error code: <code>InvalidTagError</code> </p> <ul> <li> <p>Description: The @@ -8515,7 +8579,7 @@ namespace Aws * <code>MalformedXMLError</code> </p> <ul> <li> <p>Description: The XML provided * does not match the schema.</p> </li> </ul> </li> <li> <p>Error code: * <code>OperationAbortedError </code> </p> <ul> <li> <p>Description: A conflicting - * conditional operation is currently in progress against this resource. Please try + * conditional action is currently in progress against this resource. Please try * again.</p> </li> </ul> </li> <li> <p>Error code: <code>InternalError</code> </p> * <ul> <li> <p>Description: The service was unable to apply the provided tag to * the bucket.</p> </li> </ul> </li> </ul> <p>The following operations are related @@ -8647,7 +8711,7 @@ namespace Aws * as the file name of the index document and any redirect rules. For more * information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/WebsiteHosting.html">Hosting - * Websites on Amazon S3</a>.</p> <p>This PUT operation requires the + * Websites on Amazon S3</a>.</p> <p>This PUT action requires the * <code>S3:PutBucketWebsite</code> permission. By default, only the bucket owner * can configure the website attached to a bucket; however, bucket owners can allow * other users to set the website configuration by writing a bucket policy that @@ -8676,8 +8740,8 @@ namespace Aws * configuration. If you require more than 50 routing rules, you can use object * redirect. For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/how-to-page-redirect.html">Configuring - * an Object Redirect</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p><p><h3>See Also:</h3> <a + * an Object Redirect</a> in the <i>Amazon S3 User Guide</i>.</p><p><h3>See + * Also:</h3> <a * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketWebsite">AWS * API Reference</a></p> */ @@ -8690,7 +8754,7 @@ namespace Aws * as the file name of the index document and any redirect rules. For more * information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/WebsiteHosting.html">Hosting - * Websites on Amazon S3</a>.</p> <p>This PUT operation requires the + * Websites on Amazon S3</a>.</p> <p>This PUT action requires the * <code>S3:PutBucketWebsite</code> permission. By default, only the bucket owner * can configure the website attached to a bucket; however, bucket owners can allow * other users to set the website configuration by writing a bucket policy that @@ -8719,8 +8783,8 @@ namespace Aws * configuration. If you require more than 50 routing rules, you can use object * redirect. For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/how-to-page-redirect.html">Configuring - * an Object Redirect</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p><p><h3>See Also:</h3> <a + * an Object Redirect</a> in the <i>Amazon S3 User Guide</i>.</p><p><h3>See + * Also:</h3> <a * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketWebsite">AWS * API Reference</a></p> * @@ -8735,7 +8799,7 @@ namespace Aws * as the file name of the index document and any redirect rules. For more * information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/WebsiteHosting.html">Hosting - * Websites on Amazon S3</a>.</p> <p>This PUT operation requires the + * Websites on Amazon S3</a>.</p> <p>This PUT action requires the * <code>S3:PutBucketWebsite</code> permission. By default, only the bucket owner * can configure the website attached to a bucket; however, bucket owners can allow * other users to set the website configuration by writing a bucket policy that @@ -8764,8 +8828,8 @@ namespace Aws * configuration. If you require more than 50 routing rules, you can use object * redirect. For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/how-to-page-redirect.html">Configuring - * an Object Redirect</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p><p><h3>See Also:</h3> <a + * an Object Redirect</a> in the <i>Amazon S3 User Guide</i>.</p><p><h3>See + * Also:</h3> <a * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketWebsite">AWS * API Reference</a></p> * @@ -8790,25 +8854,24 @@ namespace Aws * with a retention period configured using Amazon S3 Object Lock. For more * information about Amazon S3 Object Lock, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock-overview.html">Amazon - * S3 Object Lock Overview</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>. </p> <p> <b>Server-side Encryption</b> </p> <p>You can - * optionally request server-side encryption. With server-side encryption, Amazon - * S3 encrypts your data as it writes it to disks in its data centers and decrypts - * the data when you access it. You have the option to provide your own encryption - * key or use AWS managed encryption keys (SSE-S3 or SSE-KMS). For more - * information, see <a + * S3 Object Lock Overview</a> in the <i>Amazon S3 User Guide</i>. </p> <p> + * <b>Server-side Encryption</b> </p> <p>You can optionally request server-side + * encryption. With server-side encryption, Amazon S3 encrypts your data as it + * writes it to disks in its data centers and decrypts the data when you access it. + * You have the option to provide your own encryption key or use AWS managed + * encryption keys (SSE-S3 or SSE-KMS). For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingServerSideEncryption.html">Using * Server-Side Encryption</a>.</p> <p>If you request server-side encryption using * AWS Key Management Service (SSE-KMS), you can enable an S3 Bucket Key at the * object-level. For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-key.html">Amazon S3 - * Bucket Keys</a> in the <i>Amazon Simple Storage Service Developer Guide</i>.</p> - * <p> <b>Access Control List (ACL)-Specific Request Headers</b> </p> <p>You can - * use headers to grant ACL- based permissions. By default, all objects are - * private. Only the owner has full access control. When adding a new object, you - * can grant permissions to individual AWS accounts or to predefined groups defined - * by Amazon S3. These permissions are then added to the ACL on the object. For - * more information, see <a + * Bucket Keys</a> in the <i>Amazon S3 User Guide</i>.</p> <p> <b>Access Control + * List (ACL)-Specific Request Headers</b> </p> <p>You can use headers to grant + * ACL- based permissions. By default, all objects are private. Only the owner has + * full access control. When adding a new object, you can grant permissions to + * individual AWS accounts or to predefined groups defined by Amazon S3. These + * permissions are then added to the ACL on the object. For more information, see + * <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html">Access * Control List (ACL) Overview</a> and <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-using-rest-api.html">Managing @@ -8857,25 +8920,24 @@ namespace Aws * with a retention period configured using Amazon S3 Object Lock. For more * information about Amazon S3 Object Lock, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock-overview.html">Amazon - * S3 Object Lock Overview</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>. </p> <p> <b>Server-side Encryption</b> </p> <p>You can - * optionally request server-side encryption. With server-side encryption, Amazon - * S3 encrypts your data as it writes it to disks in its data centers and decrypts - * the data when you access it. You have the option to provide your own encryption - * key or use AWS managed encryption keys (SSE-S3 or SSE-KMS). For more - * information, see <a + * S3 Object Lock Overview</a> in the <i>Amazon S3 User Guide</i>. </p> <p> + * <b>Server-side Encryption</b> </p> <p>You can optionally request server-side + * encryption. With server-side encryption, Amazon S3 encrypts your data as it + * writes it to disks in its data centers and decrypts the data when you access it. + * You have the option to provide your own encryption key or use AWS managed + * encryption keys (SSE-S3 or SSE-KMS). For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingServerSideEncryption.html">Using * Server-Side Encryption</a>.</p> <p>If you request server-side encryption using * AWS Key Management Service (SSE-KMS), you can enable an S3 Bucket Key at the * object-level. For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-key.html">Amazon S3 - * Bucket Keys</a> in the <i>Amazon Simple Storage Service Developer Guide</i>.</p> - * <p> <b>Access Control List (ACL)-Specific Request Headers</b> </p> <p>You can - * use headers to grant ACL- based permissions. By default, all objects are - * private. Only the owner has full access control. When adding a new object, you - * can grant permissions to individual AWS accounts or to predefined groups defined - * by Amazon S3. These permissions are then added to the ACL on the object. For - * more information, see <a + * Bucket Keys</a> in the <i>Amazon S3 User Guide</i>.</p> <p> <b>Access Control + * List (ACL)-Specific Request Headers</b> </p> <p>You can use headers to grant + * ACL- based permissions. By default, all objects are private. Only the owner has + * full access control. When adding a new object, you can grant permissions to + * individual AWS accounts or to predefined groups defined by Amazon S3. These + * permissions are then added to the ACL on the object. For more information, see + * <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html">Access * Control List (ACL) Overview</a> and <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-using-rest-api.html">Managing @@ -8926,25 +8988,24 @@ namespace Aws * with a retention period configured using Amazon S3 Object Lock. For more * information about Amazon S3 Object Lock, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock-overview.html">Amazon - * S3 Object Lock Overview</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>. </p> <p> <b>Server-side Encryption</b> </p> <p>You can - * optionally request server-side encryption. With server-side encryption, Amazon - * S3 encrypts your data as it writes it to disks in its data centers and decrypts - * the data when you access it. You have the option to provide your own encryption - * key or use AWS managed encryption keys (SSE-S3 or SSE-KMS). For more - * information, see <a + * S3 Object Lock Overview</a> in the <i>Amazon S3 User Guide</i>. </p> <p> + * <b>Server-side Encryption</b> </p> <p>You can optionally request server-side + * encryption. With server-side encryption, Amazon S3 encrypts your data as it + * writes it to disks in its data centers and decrypts the data when you access it. + * You have the option to provide your own encryption key or use AWS managed + * encryption keys (SSE-S3 or SSE-KMS). For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingServerSideEncryption.html">Using * Server-Side Encryption</a>.</p> <p>If you request server-side encryption using * AWS Key Management Service (SSE-KMS), you can enable an S3 Bucket Key at the * object-level. For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-key.html">Amazon S3 - * Bucket Keys</a> in the <i>Amazon Simple Storage Service Developer Guide</i>.</p> - * <p> <b>Access Control List (ACL)-Specific Request Headers</b> </p> <p>You can - * use headers to grant ACL- based permissions. By default, all objects are - * private. Only the owner has full access control. When adding a new object, you - * can grant permissions to individual AWS accounts or to predefined groups defined - * by Amazon S3. These permissions are then added to the ACL on the object. For - * more information, see <a + * Bucket Keys</a> in the <i>Amazon S3 User Guide</i>.</p> <p> <b>Access Control + * List (ACL)-Specific Request Headers</b> </p> <p>You can use headers to grant + * ACL- based permissions. By default, all objects are private. Only the owner has + * full access control. When adding a new object, you can grant permissions to + * individual AWS accounts or to predefined groups defined by Amazon S3. These + * permissions are then added to the ACL on the object. For more information, see + * <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html">Access * Control List (ACL) Overview</a> and <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-using-rest-api.html">Managing @@ -8984,12 +9045,12 @@ namespace Aws * <code>WRITE_ACP</code> permission to set the ACL of an object. For more * information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#permissions">What - * permissions can I grant?</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>This action is not supported by Amazon S3 on Outposts.</p> - * <p>Depending on your application needs, you can choose to set the ACL on an - * object using either the request body or the headers. For example, if you have an - * existing application that updates a bucket ACL using the request body, you can - * continue to use that approach. For more information, see <a + * permissions can I grant?</a> in the <i>Amazon S3 User Guide</i>.</p> <p>This + * action is not supported by Amazon S3 on Outposts.</p> <p>Depending on your + * application needs, you can choose to set the ACL on an object using either the + * request body or the headers. For example, if you have an existing application + * that updates a bucket ACL using the request body, you can continue to use that + * approach. For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html">Access * Control List (ACL) Overview</a> in the <i>Amazon S3 Developer Guide</i>.</p> <p> * <b>Access Permissions</b> </p> <p>You can set access permissions using one of @@ -9070,12 +9131,12 @@ namespace Aws * <code>WRITE_ACP</code> permission to set the ACL of an object. For more * information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#permissions">What - * permissions can I grant?</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>This action is not supported by Amazon S3 on Outposts.</p> - * <p>Depending on your application needs, you can choose to set the ACL on an - * object using either the request body or the headers. For example, if you have an - * existing application that updates a bucket ACL using the request body, you can - * continue to use that approach. For more information, see <a + * permissions can I grant?</a> in the <i>Amazon S3 User Guide</i>.</p> <p>This + * action is not supported by Amazon S3 on Outposts.</p> <p>Depending on your + * application needs, you can choose to set the ACL on an object using either the + * request body or the headers. For example, if you have an existing application + * that updates a bucket ACL using the request body, you can continue to use that + * approach. For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html">Access * Control List (ACL) Overview</a> in the <i>Amazon S3 Developer Guide</i>.</p> <p> * <b>Access Permissions</b> </p> <p>You can set access permissions using one of @@ -9158,12 +9219,12 @@ namespace Aws * <code>WRITE_ACP</code> permission to set the ACL of an object. For more * information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#permissions">What - * permissions can I grant?</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>This action is not supported by Amazon S3 on Outposts.</p> - * <p>Depending on your application needs, you can choose to set the ACL on an - * object using either the request body or the headers. For example, if you have an - * existing application that updates a bucket ACL using the request body, you can - * continue to use that approach. For more information, see <a + * permissions can I grant?</a> in the <i>Amazon S3 User Guide</i>.</p> <p>This + * action is not supported by Amazon S3 on Outposts.</p> <p>Depending on your + * application needs, you can choose to set the ACL on an object using either the + * request body or the headers. For example, if you have an existing application + * that updates a bucket ACL using the request body, you can continue to use that + * approach. For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html">Access * Control List (ACL) Overview</a> in the <i>Amazon S3 Developer Guide</i>.</p> <p> * <b>Access Permissions</b> </p> <p>You can set access permissions using one of @@ -9241,22 +9302,22 @@ namespace Aws virtual void PutObjectAclAsync(const Model::PutObjectAclRequest& request, const PutObjectAclResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; /** - * <p>Applies a Legal Hold configuration to the specified object.</p> <p>This - * action is not supported by Amazon S3 on Outposts.</p> <p class="title"> - * <b>Related Resources</b> </p> <ul> <li> <p> <a + * <p>Applies a Legal Hold configuration to the specified object. For more + * information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html">Locking - * Objects</a> </p> </li> </ul><p><h3>See Also:</h3> <a + * Objects</a>.</p> <p>This action is not supported by Amazon S3 on + * Outposts.</p><p><h3>See Also:</h3> <a * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutObjectLegalHold">AWS * API Reference</a></p> */ virtual Model::PutObjectLegalHoldOutcome PutObjectLegalHold(const Model::PutObjectLegalHoldRequest& request) const; /** - * <p>Applies a Legal Hold configuration to the specified object.</p> <p>This - * action is not supported by Amazon S3 on Outposts.</p> <p class="title"> - * <b>Related Resources</b> </p> <ul> <li> <p> <a + * <p>Applies a Legal Hold configuration to the specified object. For more + * information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html">Locking - * Objects</a> </p> </li> </ul><p><h3>See Also:</h3> <a + * Objects</a>.</p> <p>This action is not supported by Amazon S3 on + * Outposts.</p><p><h3>See Also:</h3> <a * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutObjectLegalHold">AWS * API Reference</a></p> * @@ -9265,11 +9326,11 @@ namespace Aws virtual Model::PutObjectLegalHoldOutcomeCallable PutObjectLegalHoldCallable(const Model::PutObjectLegalHoldRequest& request) const; /** - * <p>Applies a Legal Hold configuration to the specified object.</p> <p>This - * action is not supported by Amazon S3 on Outposts.</p> <p class="title"> - * <b>Related Resources</b> </p> <ul> <li> <p> <a + * <p>Applies a Legal Hold configuration to the specified object. For more + * information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html">Locking - * Objects</a> </p> </li> </ul><p><h3>See Also:</h3> <a + * Objects</a>.</p> <p>This action is not supported by Amazon S3 on + * Outposts.</p><p><h3>See Also:</h3> <a * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutObjectLegalHold">AWS * API Reference</a></p> * @@ -9280,12 +9341,15 @@ namespace Aws /** * <p>Places an Object Lock configuration on the specified bucket. The rule * specified in the Object Lock configuration will be applied by default to every - * new object placed in the specified bucket.</p> <p> - * <code>DefaultRetention</code> requires either Days or Years. You can't specify - * both at the same time.</p> <p class="title"> <b>Related Resources</b> - * </p> <ul> <li> <p> <a + * new object placed in the specified bucket. For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html">Locking - * Objects</a> </p> </li> </ul><p><h3>See Also:</h3> <a + * Objects</a>. </p> <ul> <li> <p>The <code>DefaultRetention</code> settings + * require both a mode and a period.</p> </li> <li> <p>The + * <code>DefaultRetention</code> period can be either <code>Days</code> or + * <code>Years</code> but you must select one. You cannot specify <code>Days</code> + * and <code>Years</code> at the same time.</p> </li> <li> <p>You can only enable + * Object Lock for new buckets. If you want to turn on Object Lock for an existing + * bucket, contact AWS Support.</p> </li> </ul> <p><h3>See Also:</h3> <a * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutObjectLockConfiguration">AWS * API Reference</a></p> */ @@ -9294,12 +9358,15 @@ namespace Aws /** * <p>Places an Object Lock configuration on the specified bucket. The rule * specified in the Object Lock configuration will be applied by default to every - * new object placed in the specified bucket.</p> <p> - * <code>DefaultRetention</code> requires either Days or Years. You can't specify - * both at the same time.</p> <p class="title"> <b>Related Resources</b> - * </p> <ul> <li> <p> <a + * new object placed in the specified bucket. For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html">Locking - * Objects</a> </p> </li> </ul><p><h3>See Also:</h3> <a + * Objects</a>. </p> <ul> <li> <p>The <code>DefaultRetention</code> settings + * require both a mode and a period.</p> </li> <li> <p>The + * <code>DefaultRetention</code> period can be either <code>Days</code> or + * <code>Years</code> but you must select one. You cannot specify <code>Days</code> + * and <code>Years</code> at the same time.</p> </li> <li> <p>You can only enable + * Object Lock for new buckets. If you want to turn on Object Lock for an existing + * bucket, contact AWS Support.</p> </li> </ul> <p><h3>See Also:</h3> <a * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutObjectLockConfiguration">AWS * API Reference</a></p> * @@ -9310,12 +9377,15 @@ namespace Aws /** * <p>Places an Object Lock configuration on the specified bucket. The rule * specified in the Object Lock configuration will be applied by default to every - * new object placed in the specified bucket.</p> <p> - * <code>DefaultRetention</code> requires either Days or Years. You can't specify - * both at the same time.</p> <p class="title"> <b>Related Resources</b> - * </p> <ul> <li> <p> <a + * new object placed in the specified bucket. For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html">Locking - * Objects</a> </p> </li> </ul><p><h3>See Also:</h3> <a + * Objects</a>. </p> <ul> <li> <p>The <code>DefaultRetention</code> settings + * require both a mode and a period.</p> </li> <li> <p>The + * <code>DefaultRetention</code> period can be either <code>Days</code> or + * <code>Years</code> but you must select one. You cannot specify <code>Days</code> + * and <code>Years</code> at the same time.</p> </li> <li> <p>You can only enable + * Object Lock for new buckets. If you want to turn on Object Lock for an existing + * bucket, contact AWS Support.</p> </li> </ul> <p><h3>See Also:</h3> <a * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutObjectLockConfiguration">AWS * API Reference</a></p> * @@ -9324,22 +9394,22 @@ namespace Aws virtual void PutObjectLockConfigurationAsync(const Model::PutObjectLockConfigurationRequest& request, const PutObjectLockConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; /** - * <p>Places an Object Retention configuration on an object.</p> <p>This action is - * not supported by Amazon S3 on Outposts.</p> <p class="title"> <b>Related - * Resources</b> </p> <ul> <li> <p> <a + * <p>Places an Object Retention configuration on an object. For more information, + * see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html">Locking - * Objects</a> </p> </li> </ul><p><h3>See Also:</h3> <a + * Objects</a>. </p> <p>This action is not supported by Amazon S3 on + * Outposts.</p><p><h3>See Also:</h3> <a * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutObjectRetention">AWS * API Reference</a></p> */ virtual Model::PutObjectRetentionOutcome PutObjectRetention(const Model::PutObjectRetentionRequest& request) const; /** - * <p>Places an Object Retention configuration on an object.</p> <p>This action is - * not supported by Amazon S3 on Outposts.</p> <p class="title"> <b>Related - * Resources</b> </p> <ul> <li> <p> <a + * <p>Places an Object Retention configuration on an object. For more information, + * see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html">Locking - * Objects</a> </p> </li> </ul><p><h3>See Also:</h3> <a + * Objects</a>. </p> <p>This action is not supported by Amazon S3 on + * Outposts.</p><p><h3>See Also:</h3> <a * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutObjectRetention">AWS * API Reference</a></p> * @@ -9348,11 +9418,11 @@ namespace Aws virtual Model::PutObjectRetentionOutcomeCallable PutObjectRetentionCallable(const Model::PutObjectRetentionRequest& request) const; /** - * <p>Places an Object Retention configuration on an object.</p> <p>This action is - * not supported by Amazon S3 on Outposts.</p> <p class="title"> <b>Related - * Resources</b> </p> <ul> <li> <p> <a + * <p>Places an Object Retention configuration on an object. For more information, + * see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html">Locking - * Objects</a> </p> </li> </ul><p><h3>See Also:</h3> <a + * Objects</a>. </p> <p>This action is not supported by Amazon S3 on + * Outposts.</p><p><h3>See Also:</h3> <a * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutObjectRetention">AWS * API Reference</a></p> * @@ -9385,12 +9455,14 @@ namespace Aws * MalformedXMLError </i> </p> </li> <li> <p> <i>Cause: The XML provided does not * match the schema.</i> </p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code: * OperationAbortedError </i> </p> </li> <li> <p> <i>Cause: A conflicting - * conditional operation is currently in progress against this resource. Please try + * conditional action is currently in progress against this resource. Please try * again.</i> </p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code: InternalError</i> * </p> </li> <li> <p> <i>Cause: The service was unable to apply the provided tag * to the object.</i> </p> </li> </ul> </li> </ul> <p class="title"> <b>Related * Resources</b> </p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectTagging.html">GetObjectTagging</a> + * </p> </li> <li> <p> <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObjectTagging.html">DeleteObjectTagging</a> * </p> </li> </ul><p><h3>See Also:</h3> <a * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutObjectTagging">AWS * API Reference</a></p> @@ -9422,12 +9494,14 @@ namespace Aws * MalformedXMLError </i> </p> </li> <li> <p> <i>Cause: The XML provided does not * match the schema.</i> </p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code: * OperationAbortedError </i> </p> </li> <li> <p> <i>Cause: A conflicting - * conditional operation is currently in progress against this resource. Please try + * conditional action is currently in progress against this resource. Please try * again.</i> </p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code: InternalError</i> * </p> </li> <li> <p> <i>Cause: The service was unable to apply the provided tag * to the object.</i> </p> </li> </ul> </li> </ul> <p class="title"> <b>Related * Resources</b> </p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectTagging.html">GetObjectTagging</a> + * </p> </li> <li> <p> <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObjectTagging.html">DeleteObjectTagging</a> * </p> </li> </ul><p><h3>See Also:</h3> <a * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutObjectTagging">AWS * API Reference</a></p> @@ -9461,12 +9535,14 @@ namespace Aws * MalformedXMLError </i> </p> </li> <li> <p> <i>Cause: The XML provided does not * match the schema.</i> </p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code: * OperationAbortedError </i> </p> </li> <li> <p> <i>Cause: A conflicting - * conditional operation is currently in progress against this resource. Please try + * conditional action is currently in progress against this resource. Please try * again.</i> </p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code: InternalError</i> * </p> </li> <li> <p> <i>Cause: The service was unable to apply the provided tag * to the object.</i> </p> </li> </ul> </li> </ul> <p class="title"> <b>Related * Resources</b> </p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectTagging.html">GetObjectTagging</a> + * </p> </li> <li> <p> <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObjectTagging.html">DeleteObjectTagging</a> * </p> </li> </ul><p><h3>See Also:</h3> <a * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutObjectTagging">AWS * API Reference</a></p> @@ -9579,39 +9655,36 @@ namespace Aws * <code>s3:RestoreObject</code> action. The bucket owner has this permission by * default and can grant this permission to others. For more information about * permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing - * Access Permissions to Your Amazon S3 Resources</a> in the <i>Amazon Simple - * Storage Service Developer Guide</i>.</p> <p> <b>Querying Archives with Select - * Requests</b> </p> <p>You use a select type of request to perform SQL queries on - * archived objects. The archived objects that are being queried by the select - * request must be formatted as uncompressed comma-separated values (CSV) files. - * You can run queries and custom analytics on your archived data without having to - * restore your data to a hotter Amazon S3 tier. For an overview about select - * requests, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing + * Access Permissions to Your Amazon S3 Resources</a> in the <i>Amazon S3 User + * Guide</i>.</p> <p> <b>Querying Archives with Select Requests</b> </p> <p>You use + * a select type of request to perform SQL queries on archived objects. The + * archived objects that are being queried by the select request must be formatted + * as uncompressed comma-separated values (CSV) files. You can run queries and + * custom analytics on your archived data without having to restore your data to a + * hotter Amazon S3 tier. For an overview about select requests, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/querying-glacier-archives.html">Querying - * Archived Objects</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When making a select request, do the following:</p> <ul> <li> - * <p>Define an output location for the select query's output. This must be an - * Amazon S3 bucket in the same AWS Region as the bucket that contains the archive - * object that is being queried. The AWS account that initiates the job must have - * permissions to write to the S3 bucket. You can specify the storage class and - * encryption for the output objects stored in the bucket. For more information - * about output, see <a + * Archived Objects</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When making a + * select request, do the following:</p> <ul> <li> <p>Define an output location for + * the select query's output. This must be an Amazon S3 bucket in the same AWS + * Region as the bucket that contains the archive object that is being queried. The + * AWS account that initiates the job must have permissions to write to the S3 + * bucket. You can specify the storage class and encryption for the output objects + * stored in the bucket. For more information about output, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/querying-glacier-archives.html">Querying - * Archived Objects</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>For more information about the <code>S3</code> structure in - * the request body, see the following:</p> <ul> <li> <p> <a + * Archived Objects</a> in the <i>Amazon S3 User Guide</i>.</p> <p>For more + * information about the <code>S3</code> structure in the request body, see the + * following:</p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html">PutObject</a> * </p> </li> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3_ACLs_UsingACLs.html">Managing - * Access with ACLs</a> in the <i>Amazon Simple Storage Service Developer Guide</i> - * </p> </li> <li> <p> <a + * Access with ACLs</a> in the <i>Amazon S3 User Guide</i> </p> </li> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html">Protecting - * Data Using Server-Side Encryption</a> in the <i>Amazon Simple Storage Service - * Developer Guide</i> </p> </li> </ul> </li> <li> <p>Define the SQL expression for - * the <code>SELECT</code> type of restoration for your query in the request body's + * Data Using Server-Side Encryption</a> in the <i>Amazon S3 User Guide</i> </p> + * </li> </ul> </li> <li> <p>Define the SQL expression for the <code>SELECT</code> + * type of restoration for your query in the request body's * <code>SelectParameters</code> structure. You can use expressions like the * following examples.</p> <ul> <li> <p>The following expression returns all * records from the specified object.</p> <p> <code>SELECT * FROM Object</code> @@ -9626,96 +9699,93 @@ namespace Aws * s.FirstName, s.SSN FROM S3Object s</code> </p> </li> </ul> </li> </ul> <p>For * more information about using SQL with S3 Glacier Select restore, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-glacier-select-sql-reference.html">SQL - * Reference for Amazon S3 Select and S3 Glacier Select</a> in the <i>Amazon Simple - * Storage Service Developer Guide</i>. </p> <p>When making a select request, you - * can also do the following:</p> <ul> <li> <p>To expedite your queries, specify - * the <code>Expedited</code> tier. For more information about tiers, see - * "Restoring Archives," later in this topic.</p> </li> <li> <p>Specify details - * about the data serialization format of both the input object that is being - * queried and the serialization of the CSV-encoded query results.</p> </li> </ul> - * <p>The following are additional important facts about the select feature:</p> - * <ul> <li> <p>The output results are new Amazon S3 objects. Unlike archive - * retrievals, they are stored until explicitly deleted-manually or through a - * lifecycle policy.</p> </li> <li> <p>You can issue more than one select request - * on the same Amazon S3 object. Amazon S3 doesn't deduplicate requests, so avoid - * issuing duplicate requests.</p> </li> <li> <p> Amazon S3 accepts a select - * request even if the object has already been restored. A select request doesn’t - * return error response <code>409</code>.</p> </li> </ul> <p> <b>Restoring - * objects</b> </p> <p>Objects that you archive to the S3 Glacier or S3 Glacier - * Deep Archive storage class, and S3 Intelligent-Tiering Archive or S3 - * Intelligent-Tiering Deep Archive tiers are not accessible in real time. For - * objects in Archive Access or Deep Archive Access tiers you must first initiate a - * restore request, and then wait until the object is moved into the Frequent - * Access tier. For objects in S3 Glacier or S3 Glacier Deep Archive storage - * classes you must first initiate a restore request, and then wait until a - * temporary copy of the object is available. To access an archived object, you - * must restore the object for the duration (number of days) that you specify.</p> - * <p>To restore a specific object version, you can provide a version ID. If you - * don't provide a version ID, Amazon S3 restores the current version.</p> <p>When - * restoring an archived object (or using a select request), you can specify one of - * the following data access tier options in the <code>Tier</code> element of the - * request body: </p> <ul> <li> <p> <b> <code>Expedited</code> </b> - Expedited - * retrievals allow you to quickly access your data stored in the S3 Glacier - * storage class or S3 Intelligent-Tiering Archive tier when occasional urgent - * requests for a subset of archives are required. For all but the largest archived - * objects (250 MB+), data accessed using Expedited retrievals is typically made - * available within 1–5 minutes. Provisioned capacity ensures that retrieval - * capacity for Expedited retrievals is available when you need it. Expedited - * retrievals and provisioned capacity are not available for objects stored in the - * S3 Glacier Deep Archive storage class or S3 Intelligent-Tiering Deep Archive - * tier.</p> </li> <li> <p> <b> <code>Standard</code> </b> - Standard retrievals - * allow you to access any of your archived objects within several hours. This is - * the default option for retrieval requests that do not specify the retrieval - * option. Standard retrievals typically finish within 3–5 hours for objects stored - * in the S3 Glacier storage class or S3 Intelligent-Tiering Archive tier. They - * typically finish within 12 hours for objects stored in the S3 Glacier Deep - * Archive storage class or S3 Intelligent-Tiering Deep Archive tier. Standard - * retrievals are free for objects stored in S3 Intelligent-Tiering.</p> </li> <li> - * <p> <b> <code>Bulk</code> </b> - Bulk retrievals are the lowest-cost retrieval - * option in S3 Glacier, enabling you to retrieve large amounts, even petabytes, of - * data inexpensively. Bulk retrievals typically finish within 5–12 hours for - * objects stored in the S3 Glacier storage class or S3 Intelligent-Tiering Archive - * tier. They typically finish within 48 hours for objects stored in the S3 Glacier - * Deep Archive storage class or S3 Intelligent-Tiering Deep Archive tier. Bulk - * retrievals are free for objects stored in S3 Intelligent-Tiering.</p> </li> - * </ul> <p>For more information about archive retrieval options and provisioned - * capacity for <code>Expedited</code> data access, see <a + * Reference for Amazon S3 Select and S3 Glacier Select</a> in the <i>Amazon S3 + * User Guide</i>. </p> <p>When making a select request, you can also do the + * following:</p> <ul> <li> <p>To expedite your queries, specify the + * <code>Expedited</code> tier. For more information about tiers, see "Restoring + * Archives," later in this topic.</p> </li> <li> <p>Specify details about the data + * serialization format of both the input object that is being queried and the + * serialization of the CSV-encoded query results.</p> </li> </ul> <p>The following + * are additional important facts about the select feature:</p> <ul> <li> <p>The + * output results are new Amazon S3 objects. Unlike archive retrievals, they are + * stored until explicitly deleted-manually or through a lifecycle policy.</p> + * </li> <li> <p>You can issue more than one select request on the same Amazon S3 + * object. Amazon S3 doesn't deduplicate requests, so avoid issuing duplicate + * requests.</p> </li> <li> <p> Amazon S3 accepts a select request even if the + * object has already been restored. A select request doesn’t return error response + * <code>409</code>.</p> </li> </ul> <p> <b>Restoring objects</b> </p> <p>Objects + * that you archive to the S3 Glacier or S3 Glacier Deep Archive storage class, and + * S3 Intelligent-Tiering Archive or S3 Intelligent-Tiering Deep Archive tiers are + * not accessible in real time. For objects in Archive Access or Deep Archive + * Access tiers you must first initiate a restore request, and then wait until the + * object is moved into the Frequent Access tier. For objects in S3 Glacier or S3 + * Glacier Deep Archive storage classes you must first initiate a restore request, + * and then wait until a temporary copy of the object is available. To access an + * archived object, you must restore the object for the duration (number of days) + * that you specify.</p> <p>To restore a specific object version, you can provide a + * version ID. If you don't provide a version ID, Amazon S3 restores the current + * version.</p> <p>When restoring an archived object (or using a select request), + * you can specify one of the following data access tier options in the + * <code>Tier</code> element of the request body: </p> <ul> <li> <p> <b> + * <code>Expedited</code> </b> - Expedited retrievals allow you to quickly access + * your data stored in the S3 Glacier storage class or S3 Intelligent-Tiering + * Archive tier when occasional urgent requests for a subset of archives are + * required. For all but the largest archived objects (250 MB+), data accessed + * using Expedited retrievals is typically made available within 1–5 minutes. + * Provisioned capacity ensures that retrieval capacity for Expedited retrievals is + * available when you need it. Expedited retrievals and provisioned capacity are + * not available for objects stored in the S3 Glacier Deep Archive storage class or + * S3 Intelligent-Tiering Deep Archive tier.</p> </li> <li> <p> <b> + * <code>Standard</code> </b> - Standard retrievals allow you to access any of your + * archived objects within several hours. This is the default option for retrieval + * requests that do not specify the retrieval option. Standard retrievals typically + * finish within 3–5 hours for objects stored in the S3 Glacier storage class or S3 + * Intelligent-Tiering Archive tier. They typically finish within 12 hours for + * objects stored in the S3 Glacier Deep Archive storage class or S3 + * Intelligent-Tiering Deep Archive tier. Standard retrievals are free for objects + * stored in S3 Intelligent-Tiering.</p> </li> <li> <p> <b> <code>Bulk</code> </b> + * - Bulk retrievals are the lowest-cost retrieval option in S3 Glacier, enabling + * you to retrieve large amounts, even petabytes, of data inexpensively. Bulk + * retrievals typically finish within 5–12 hours for objects stored in the S3 + * Glacier storage class or S3 Intelligent-Tiering Archive tier. They typically + * finish within 48 hours for objects stored in the S3 Glacier Deep Archive storage + * class or S3 Intelligent-Tiering Deep Archive tier. Bulk retrievals are free for + * objects stored in S3 Intelligent-Tiering.</p> </li> </ul> <p>For more + * information about archive retrieval options and provisioned capacity for + * <code>Expedited</code> data access, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/restoring-objects.html">Restoring - * Archived Objects</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>. </p> <p>You can use Amazon S3 restore speed upgrade to change the - * restore speed to a faster speed while it is in progress. For more information, - * see <a + * Archived Objects</a> in the <i>Amazon S3 User Guide</i>. </p> <p>You can use + * Amazon S3 restore speed upgrade to change the restore speed to a faster speed + * while it is in progress. For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/restoring-objects.html#restoring-objects-upgrade-tier.title.html"> - * Upgrading the speed of an in-progress restore</a> in the <i>Amazon Simple - * Storage Service Developer Guide</i>. </p> <p>To get the status of object - * restoration, you can send a <code>HEAD</code> request. Operations return the - * <code>x-amz-restore</code> header, which provides information about the - * restoration status, in the response. You can use Amazon S3 event notifications - * to notify you when a restore is initiated or completed. For more information, - * see <a + * Upgrading the speed of an in-progress restore</a> in the <i>Amazon S3 User + * Guide</i>. </p> <p>To get the status of object restoration, you can send a + * <code>HEAD</code> request. Operations return the <code>x-amz-restore</code> + * header, which provides information about the restoration status, in the + * response. You can use Amazon S3 event notifications to notify you when a restore + * is initiated or completed. For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html">Configuring - * Amazon S3 Event Notifications</a> in the <i>Amazon Simple Storage Service - * Developer Guide</i>.</p> <p>After restoring an archived object, you can update - * the restoration period by reissuing the request with a new period. Amazon S3 - * updates the restoration period relative to the current time and charges only for - * the request-there are no data transfer charges. You cannot update the - * restoration period when Amazon S3 is actively processing your current restore - * request for the object.</p> <p>If your bucket has a lifecycle configuration with - * a rule that includes an expiration action, the object expiration overrides the - * life span that you specify in a restore request. For example, if you restore an - * object copy for 10 days, but the object is scheduled to expire in 3 days, Amazon - * S3 deletes the object in 3 days. For more information about lifecycle - * configuration, see <a + * Amazon S3 Event Notifications</a> in the <i>Amazon S3 User Guide</i>.</p> + * <p>After restoring an archived object, you can update the restoration period by + * reissuing the request with a new period. Amazon S3 updates the restoration + * period relative to the current time and charges only for the request-there are + * no data transfer charges. You cannot update the restoration period when Amazon + * S3 is actively processing your current restore request for the object.</p> <p>If + * your bucket has a lifecycle configuration with a rule that includes an + * expiration action, the object expiration overrides the life span that you + * specify in a restore request. For example, if you restore an object copy for 10 + * days, but the object is scheduled to expire in 3 days, Amazon S3 deletes the + * object in 3 days. For more information about lifecycle configuration, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html">PutBucketLifecycleConfiguration</a> * and <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html">Object - * Lifecycle Management</a> in <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p> <b>Responses</b> </p> <p>A successful operation returns - * either the <code>200 OK</code> or <code>202 Accepted</code> status code. </p> - * <ul> <li> <p>If the object is not previously restored, then Amazon S3 returns - * <code>202 Accepted</code> in the response. </p> </li> <li> <p>If the object is - * previously restored, Amazon S3 returns <code>200 OK</code> in the response. </p> - * </li> </ul> <p class="title"> <b>Special Errors</b> </p> <ul> <li> <ul> <li> <p> + * Lifecycle Management</a> in <i>Amazon S3 User Guide</i>.</p> <p> + * <b>Responses</b> </p> <p>A successful action returns either the <code>200 + * OK</code> or <code>202 Accepted</code> status code. </p> <ul> <li> <p>If the + * object is not previously restored, then Amazon S3 returns <code>202 + * Accepted</code> in the response. </p> </li> <li> <p>If the object is previously + * restored, Amazon S3 returns <code>200 OK</code> in the response. </p> </li> + * </ul> <p class="title"> <b>Special Errors</b> </p> <ul> <li> <ul> <li> <p> * <i>Code: RestoreAlreadyInProgress</i> </p> </li> <li> <p> <i>Cause: Object * restore is already in progress. (This error does not apply to SELECT type * requests.)</i> </p> </li> <li> <p> <i>HTTP Status Code: 409 Conflict</i> </p> @@ -9732,9 +9802,9 @@ namespace Aws * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketNotificationConfiguration.html">GetBucketNotificationConfiguration</a> * </p> </li> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-glacier-select-sql-reference.html">SQL - * Reference for Amazon S3 Select and S3 Glacier Select </a> in the <i>Amazon - * Simple Storage Service Developer Guide</i> </p> </li> </ul><p><h3>See Also:</h3> - * <a href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/RestoreObject">AWS + * Reference for Amazon S3 Select and S3 Glacier Select </a> in the <i>Amazon S3 + * User Guide</i> </p> </li> </ul><p><h3>See Also:</h3> <a + * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/RestoreObject">AWS * API Reference</a></p> */ virtual Model::RestoreObjectOutcome RestoreObject(const Model::RestoreObjectRequest& request) const; @@ -9749,39 +9819,36 @@ namespace Aws * <code>s3:RestoreObject</code> action. The bucket owner has this permission by * default and can grant this permission to others. For more information about * permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing - * Access Permissions to Your Amazon S3 Resources</a> in the <i>Amazon Simple - * Storage Service Developer Guide</i>.</p> <p> <b>Querying Archives with Select - * Requests</b> </p> <p>You use a select type of request to perform SQL queries on - * archived objects. The archived objects that are being queried by the select - * request must be formatted as uncompressed comma-separated values (CSV) files. - * You can run queries and custom analytics on your archived data without having to - * restore your data to a hotter Amazon S3 tier. For an overview about select - * requests, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing + * Access Permissions to Your Amazon S3 Resources</a> in the <i>Amazon S3 User + * Guide</i>.</p> <p> <b>Querying Archives with Select Requests</b> </p> <p>You use + * a select type of request to perform SQL queries on archived objects. The + * archived objects that are being queried by the select request must be formatted + * as uncompressed comma-separated values (CSV) files. You can run queries and + * custom analytics on your archived data without having to restore your data to a + * hotter Amazon S3 tier. For an overview about select requests, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/querying-glacier-archives.html">Querying - * Archived Objects</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When making a select request, do the following:</p> <ul> <li> - * <p>Define an output location for the select query's output. This must be an - * Amazon S3 bucket in the same AWS Region as the bucket that contains the archive - * object that is being queried. The AWS account that initiates the job must have - * permissions to write to the S3 bucket. You can specify the storage class and - * encryption for the output objects stored in the bucket. For more information - * about output, see <a + * Archived Objects</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When making a + * select request, do the following:</p> <ul> <li> <p>Define an output location for + * the select query's output. This must be an Amazon S3 bucket in the same AWS + * Region as the bucket that contains the archive object that is being queried. The + * AWS account that initiates the job must have permissions to write to the S3 + * bucket. You can specify the storage class and encryption for the output objects + * stored in the bucket. For more information about output, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/querying-glacier-archives.html">Querying - * Archived Objects</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>For more information about the <code>S3</code> structure in - * the request body, see the following:</p> <ul> <li> <p> <a + * Archived Objects</a> in the <i>Amazon S3 User Guide</i>.</p> <p>For more + * information about the <code>S3</code> structure in the request body, see the + * following:</p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html">PutObject</a> * </p> </li> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3_ACLs_UsingACLs.html">Managing - * Access with ACLs</a> in the <i>Amazon Simple Storage Service Developer Guide</i> - * </p> </li> <li> <p> <a + * Access with ACLs</a> in the <i>Amazon S3 User Guide</i> </p> </li> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html">Protecting - * Data Using Server-Side Encryption</a> in the <i>Amazon Simple Storage Service - * Developer Guide</i> </p> </li> </ul> </li> <li> <p>Define the SQL expression for - * the <code>SELECT</code> type of restoration for your query in the request body's + * Data Using Server-Side Encryption</a> in the <i>Amazon S3 User Guide</i> </p> + * </li> </ul> </li> <li> <p>Define the SQL expression for the <code>SELECT</code> + * type of restoration for your query in the request body's * <code>SelectParameters</code> structure. You can use expressions like the * following examples.</p> <ul> <li> <p>The following expression returns all * records from the specified object.</p> <p> <code>SELECT * FROM Object</code> @@ -9796,96 +9863,93 @@ namespace Aws * s.FirstName, s.SSN FROM S3Object s</code> </p> </li> </ul> </li> </ul> <p>For * more information about using SQL with S3 Glacier Select restore, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-glacier-select-sql-reference.html">SQL - * Reference for Amazon S3 Select and S3 Glacier Select</a> in the <i>Amazon Simple - * Storage Service Developer Guide</i>. </p> <p>When making a select request, you - * can also do the following:</p> <ul> <li> <p>To expedite your queries, specify - * the <code>Expedited</code> tier. For more information about tiers, see - * "Restoring Archives," later in this topic.</p> </li> <li> <p>Specify details - * about the data serialization format of both the input object that is being - * queried and the serialization of the CSV-encoded query results.</p> </li> </ul> - * <p>The following are additional important facts about the select feature:</p> - * <ul> <li> <p>The output results are new Amazon S3 objects. Unlike archive - * retrievals, they are stored until explicitly deleted-manually or through a - * lifecycle policy.</p> </li> <li> <p>You can issue more than one select request - * on the same Amazon S3 object. Amazon S3 doesn't deduplicate requests, so avoid - * issuing duplicate requests.</p> </li> <li> <p> Amazon S3 accepts a select - * request even if the object has already been restored. A select request doesn’t - * return error response <code>409</code>.</p> </li> </ul> <p> <b>Restoring - * objects</b> </p> <p>Objects that you archive to the S3 Glacier or S3 Glacier - * Deep Archive storage class, and S3 Intelligent-Tiering Archive or S3 - * Intelligent-Tiering Deep Archive tiers are not accessible in real time. For - * objects in Archive Access or Deep Archive Access tiers you must first initiate a - * restore request, and then wait until the object is moved into the Frequent - * Access tier. For objects in S3 Glacier or S3 Glacier Deep Archive storage - * classes you must first initiate a restore request, and then wait until a - * temporary copy of the object is available. To access an archived object, you - * must restore the object for the duration (number of days) that you specify.</p> - * <p>To restore a specific object version, you can provide a version ID. If you - * don't provide a version ID, Amazon S3 restores the current version.</p> <p>When - * restoring an archived object (or using a select request), you can specify one of - * the following data access tier options in the <code>Tier</code> element of the - * request body: </p> <ul> <li> <p> <b> <code>Expedited</code> </b> - Expedited - * retrievals allow you to quickly access your data stored in the S3 Glacier - * storage class or S3 Intelligent-Tiering Archive tier when occasional urgent - * requests for a subset of archives are required. For all but the largest archived - * objects (250 MB+), data accessed using Expedited retrievals is typically made - * available within 1–5 minutes. Provisioned capacity ensures that retrieval - * capacity for Expedited retrievals is available when you need it. Expedited - * retrievals and provisioned capacity are not available for objects stored in the - * S3 Glacier Deep Archive storage class or S3 Intelligent-Tiering Deep Archive - * tier.</p> </li> <li> <p> <b> <code>Standard</code> </b> - Standard retrievals - * allow you to access any of your archived objects within several hours. This is - * the default option for retrieval requests that do not specify the retrieval - * option. Standard retrievals typically finish within 3–5 hours for objects stored - * in the S3 Glacier storage class or S3 Intelligent-Tiering Archive tier. They - * typically finish within 12 hours for objects stored in the S3 Glacier Deep - * Archive storage class or S3 Intelligent-Tiering Deep Archive tier. Standard - * retrievals are free for objects stored in S3 Intelligent-Tiering.</p> </li> <li> - * <p> <b> <code>Bulk</code> </b> - Bulk retrievals are the lowest-cost retrieval - * option in S3 Glacier, enabling you to retrieve large amounts, even petabytes, of - * data inexpensively. Bulk retrievals typically finish within 5–12 hours for - * objects stored in the S3 Glacier storage class or S3 Intelligent-Tiering Archive - * tier. They typically finish within 48 hours for objects stored in the S3 Glacier - * Deep Archive storage class or S3 Intelligent-Tiering Deep Archive tier. Bulk - * retrievals are free for objects stored in S3 Intelligent-Tiering.</p> </li> - * </ul> <p>For more information about archive retrieval options and provisioned - * capacity for <code>Expedited</code> data access, see <a + * Reference for Amazon S3 Select and S3 Glacier Select</a> in the <i>Amazon S3 + * User Guide</i>. </p> <p>When making a select request, you can also do the + * following:</p> <ul> <li> <p>To expedite your queries, specify the + * <code>Expedited</code> tier. For more information about tiers, see "Restoring + * Archives," later in this topic.</p> </li> <li> <p>Specify details about the data + * serialization format of both the input object that is being queried and the + * serialization of the CSV-encoded query results.</p> </li> </ul> <p>The following + * are additional important facts about the select feature:</p> <ul> <li> <p>The + * output results are new Amazon S3 objects. Unlike archive retrievals, they are + * stored until explicitly deleted-manually or through a lifecycle policy.</p> + * </li> <li> <p>You can issue more than one select request on the same Amazon S3 + * object. Amazon S3 doesn't deduplicate requests, so avoid issuing duplicate + * requests.</p> </li> <li> <p> Amazon S3 accepts a select request even if the + * object has already been restored. A select request doesn’t return error response + * <code>409</code>.</p> </li> </ul> <p> <b>Restoring objects</b> </p> <p>Objects + * that you archive to the S3 Glacier or S3 Glacier Deep Archive storage class, and + * S3 Intelligent-Tiering Archive or S3 Intelligent-Tiering Deep Archive tiers are + * not accessible in real time. For objects in Archive Access or Deep Archive + * Access tiers you must first initiate a restore request, and then wait until the + * object is moved into the Frequent Access tier. For objects in S3 Glacier or S3 + * Glacier Deep Archive storage classes you must first initiate a restore request, + * and then wait until a temporary copy of the object is available. To access an + * archived object, you must restore the object for the duration (number of days) + * that you specify.</p> <p>To restore a specific object version, you can provide a + * version ID. If you don't provide a version ID, Amazon S3 restores the current + * version.</p> <p>When restoring an archived object (or using a select request), + * you can specify one of the following data access tier options in the + * <code>Tier</code> element of the request body: </p> <ul> <li> <p> <b> + * <code>Expedited</code> </b> - Expedited retrievals allow you to quickly access + * your data stored in the S3 Glacier storage class or S3 Intelligent-Tiering + * Archive tier when occasional urgent requests for a subset of archives are + * required. For all but the largest archived objects (250 MB+), data accessed + * using Expedited retrievals is typically made available within 1–5 minutes. + * Provisioned capacity ensures that retrieval capacity for Expedited retrievals is + * available when you need it. Expedited retrievals and provisioned capacity are + * not available for objects stored in the S3 Glacier Deep Archive storage class or + * S3 Intelligent-Tiering Deep Archive tier.</p> </li> <li> <p> <b> + * <code>Standard</code> </b> - Standard retrievals allow you to access any of your + * archived objects within several hours. This is the default option for retrieval + * requests that do not specify the retrieval option. Standard retrievals typically + * finish within 3–5 hours for objects stored in the S3 Glacier storage class or S3 + * Intelligent-Tiering Archive tier. They typically finish within 12 hours for + * objects stored in the S3 Glacier Deep Archive storage class or S3 + * Intelligent-Tiering Deep Archive tier. Standard retrievals are free for objects + * stored in S3 Intelligent-Tiering.</p> </li> <li> <p> <b> <code>Bulk</code> </b> + * - Bulk retrievals are the lowest-cost retrieval option in S3 Glacier, enabling + * you to retrieve large amounts, even petabytes, of data inexpensively. Bulk + * retrievals typically finish within 5–12 hours for objects stored in the S3 + * Glacier storage class or S3 Intelligent-Tiering Archive tier. They typically + * finish within 48 hours for objects stored in the S3 Glacier Deep Archive storage + * class or S3 Intelligent-Tiering Deep Archive tier. Bulk retrievals are free for + * objects stored in S3 Intelligent-Tiering.</p> </li> </ul> <p>For more + * information about archive retrieval options and provisioned capacity for + * <code>Expedited</code> data access, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/restoring-objects.html">Restoring - * Archived Objects</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>. </p> <p>You can use Amazon S3 restore speed upgrade to change the - * restore speed to a faster speed while it is in progress. For more information, - * see <a + * Archived Objects</a> in the <i>Amazon S3 User Guide</i>. </p> <p>You can use + * Amazon S3 restore speed upgrade to change the restore speed to a faster speed + * while it is in progress. For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/restoring-objects.html#restoring-objects-upgrade-tier.title.html"> - * Upgrading the speed of an in-progress restore</a> in the <i>Amazon Simple - * Storage Service Developer Guide</i>. </p> <p>To get the status of object - * restoration, you can send a <code>HEAD</code> request. Operations return the - * <code>x-amz-restore</code> header, which provides information about the - * restoration status, in the response. You can use Amazon S3 event notifications - * to notify you when a restore is initiated or completed. For more information, - * see <a + * Upgrading the speed of an in-progress restore</a> in the <i>Amazon S3 User + * Guide</i>. </p> <p>To get the status of object restoration, you can send a + * <code>HEAD</code> request. Operations return the <code>x-amz-restore</code> + * header, which provides information about the restoration status, in the + * response. You can use Amazon S3 event notifications to notify you when a restore + * is initiated or completed. For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html">Configuring - * Amazon S3 Event Notifications</a> in the <i>Amazon Simple Storage Service - * Developer Guide</i>.</p> <p>After restoring an archived object, you can update - * the restoration period by reissuing the request with a new period. Amazon S3 - * updates the restoration period relative to the current time and charges only for - * the request-there are no data transfer charges. You cannot update the - * restoration period when Amazon S3 is actively processing your current restore - * request for the object.</p> <p>If your bucket has a lifecycle configuration with - * a rule that includes an expiration action, the object expiration overrides the - * life span that you specify in a restore request. For example, if you restore an - * object copy for 10 days, but the object is scheduled to expire in 3 days, Amazon - * S3 deletes the object in 3 days. For more information about lifecycle - * configuration, see <a + * Amazon S3 Event Notifications</a> in the <i>Amazon S3 User Guide</i>.</p> + * <p>After restoring an archived object, you can update the restoration period by + * reissuing the request with a new period. Amazon S3 updates the restoration + * period relative to the current time and charges only for the request-there are + * no data transfer charges. You cannot update the restoration period when Amazon + * S3 is actively processing your current restore request for the object.</p> <p>If + * your bucket has a lifecycle configuration with a rule that includes an + * expiration action, the object expiration overrides the life span that you + * specify in a restore request. For example, if you restore an object copy for 10 + * days, but the object is scheduled to expire in 3 days, Amazon S3 deletes the + * object in 3 days. For more information about lifecycle configuration, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html">PutBucketLifecycleConfiguration</a> * and <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html">Object - * Lifecycle Management</a> in <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p> <b>Responses</b> </p> <p>A successful operation returns - * either the <code>200 OK</code> or <code>202 Accepted</code> status code. </p> - * <ul> <li> <p>If the object is not previously restored, then Amazon S3 returns - * <code>202 Accepted</code> in the response. </p> </li> <li> <p>If the object is - * previously restored, Amazon S3 returns <code>200 OK</code> in the response. </p> - * </li> </ul> <p class="title"> <b>Special Errors</b> </p> <ul> <li> <ul> <li> <p> + * Lifecycle Management</a> in <i>Amazon S3 User Guide</i>.</p> <p> + * <b>Responses</b> </p> <p>A successful action returns either the <code>200 + * OK</code> or <code>202 Accepted</code> status code. </p> <ul> <li> <p>If the + * object is not previously restored, then Amazon S3 returns <code>202 + * Accepted</code> in the response. </p> </li> <li> <p>If the object is previously + * restored, Amazon S3 returns <code>200 OK</code> in the response. </p> </li> + * </ul> <p class="title"> <b>Special Errors</b> </p> <ul> <li> <ul> <li> <p> * <i>Code: RestoreAlreadyInProgress</i> </p> </li> <li> <p> <i>Cause: Object * restore is already in progress. (This error does not apply to SELECT type * requests.)</i> </p> </li> <li> <p> <i>HTTP Status Code: 409 Conflict</i> </p> @@ -9902,9 +9966,9 @@ namespace Aws * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketNotificationConfiguration.html">GetBucketNotificationConfiguration</a> * </p> </li> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-glacier-select-sql-reference.html">SQL - * Reference for Amazon S3 Select and S3 Glacier Select </a> in the <i>Amazon - * Simple Storage Service Developer Guide</i> </p> </li> </ul><p><h3>See Also:</h3> - * <a href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/RestoreObject">AWS + * Reference for Amazon S3 Select and S3 Glacier Select </a> in the <i>Amazon S3 + * User Guide</i> </p> </li> </ul><p><h3>See Also:</h3> <a + * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/RestoreObject">AWS * API Reference</a></p> * * returns a future to the operation so that it can be executed in parallel to other requests. @@ -9921,39 +9985,36 @@ namespace Aws * <code>s3:RestoreObject</code> action. The bucket owner has this permission by * default and can grant this permission to others. For more information about * permissions, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions * Related to Bucket Subresource Operations</a> and <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Managing - * Access Permissions to Your Amazon S3 Resources</a> in the <i>Amazon Simple - * Storage Service Developer Guide</i>.</p> <p> <b>Querying Archives with Select - * Requests</b> </p> <p>You use a select type of request to perform SQL queries on - * archived objects. The archived objects that are being queried by the select - * request must be formatted as uncompressed comma-separated values (CSV) files. - * You can run queries and custom analytics on your archived data without having to - * restore your data to a hotter Amazon S3 tier. For an overview about select - * requests, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing + * Access Permissions to Your Amazon S3 Resources</a> in the <i>Amazon S3 User + * Guide</i>.</p> <p> <b>Querying Archives with Select Requests</b> </p> <p>You use + * a select type of request to perform SQL queries on archived objects. The + * archived objects that are being queried by the select request must be formatted + * as uncompressed comma-separated values (CSV) files. You can run queries and + * custom analytics on your archived data without having to restore your data to a + * hotter Amazon S3 tier. For an overview about select requests, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/querying-glacier-archives.html">Querying - * Archived Objects</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When making a select request, do the following:</p> <ul> <li> - * <p>Define an output location for the select query's output. This must be an - * Amazon S3 bucket in the same AWS Region as the bucket that contains the archive - * object that is being queried. The AWS account that initiates the job must have - * permissions to write to the S3 bucket. You can specify the storage class and - * encryption for the output objects stored in the bucket. For more information - * about output, see <a + * Archived Objects</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When making a + * select request, do the following:</p> <ul> <li> <p>Define an output location for + * the select query's output. This must be an Amazon S3 bucket in the same AWS + * Region as the bucket that contains the archive object that is being queried. The + * AWS account that initiates the job must have permissions to write to the S3 + * bucket. You can specify the storage class and encryption for the output objects + * stored in the bucket. For more information about output, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/querying-glacier-archives.html">Querying - * Archived Objects</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>For more information about the <code>S3</code> structure in - * the request body, see the following:</p> <ul> <li> <p> <a + * Archived Objects</a> in the <i>Amazon S3 User Guide</i>.</p> <p>For more + * information about the <code>S3</code> structure in the request body, see the + * following:</p> <ul> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html">PutObject</a> * </p> </li> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3_ACLs_UsingACLs.html">Managing - * Access with ACLs</a> in the <i>Amazon Simple Storage Service Developer Guide</i> - * </p> </li> <li> <p> <a + * Access with ACLs</a> in the <i>Amazon S3 User Guide</i> </p> </li> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html">Protecting - * Data Using Server-Side Encryption</a> in the <i>Amazon Simple Storage Service - * Developer Guide</i> </p> </li> </ul> </li> <li> <p>Define the SQL expression for - * the <code>SELECT</code> type of restoration for your query in the request body's + * Data Using Server-Side Encryption</a> in the <i>Amazon S3 User Guide</i> </p> + * </li> </ul> </li> <li> <p>Define the SQL expression for the <code>SELECT</code> + * type of restoration for your query in the request body's * <code>SelectParameters</code> structure. You can use expressions like the * following examples.</p> <ul> <li> <p>The following expression returns all * records from the specified object.</p> <p> <code>SELECT * FROM Object</code> @@ -9968,96 +10029,93 @@ namespace Aws * s.FirstName, s.SSN FROM S3Object s</code> </p> </li> </ul> </li> </ul> <p>For * more information about using SQL with S3 Glacier Select restore, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-glacier-select-sql-reference.html">SQL - * Reference for Amazon S3 Select and S3 Glacier Select</a> in the <i>Amazon Simple - * Storage Service Developer Guide</i>. </p> <p>When making a select request, you - * can also do the following:</p> <ul> <li> <p>To expedite your queries, specify - * the <code>Expedited</code> tier. For more information about tiers, see - * "Restoring Archives," later in this topic.</p> </li> <li> <p>Specify details - * about the data serialization format of both the input object that is being - * queried and the serialization of the CSV-encoded query results.</p> </li> </ul> - * <p>The following are additional important facts about the select feature:</p> - * <ul> <li> <p>The output results are new Amazon S3 objects. Unlike archive - * retrievals, they are stored until explicitly deleted-manually or through a - * lifecycle policy.</p> </li> <li> <p>You can issue more than one select request - * on the same Amazon S3 object. Amazon S3 doesn't deduplicate requests, so avoid - * issuing duplicate requests.</p> </li> <li> <p> Amazon S3 accepts a select - * request even if the object has already been restored. A select request doesn’t - * return error response <code>409</code>.</p> </li> </ul> <p> <b>Restoring - * objects</b> </p> <p>Objects that you archive to the S3 Glacier or S3 Glacier - * Deep Archive storage class, and S3 Intelligent-Tiering Archive or S3 - * Intelligent-Tiering Deep Archive tiers are not accessible in real time. For - * objects in Archive Access or Deep Archive Access tiers you must first initiate a - * restore request, and then wait until the object is moved into the Frequent - * Access tier. For objects in S3 Glacier or S3 Glacier Deep Archive storage - * classes you must first initiate a restore request, and then wait until a - * temporary copy of the object is available. To access an archived object, you - * must restore the object for the duration (number of days) that you specify.</p> - * <p>To restore a specific object version, you can provide a version ID. If you - * don't provide a version ID, Amazon S3 restores the current version.</p> <p>When - * restoring an archived object (or using a select request), you can specify one of - * the following data access tier options in the <code>Tier</code> element of the - * request body: </p> <ul> <li> <p> <b> <code>Expedited</code> </b> - Expedited - * retrievals allow you to quickly access your data stored in the S3 Glacier - * storage class or S3 Intelligent-Tiering Archive tier when occasional urgent - * requests for a subset of archives are required. For all but the largest archived - * objects (250 MB+), data accessed using Expedited retrievals is typically made - * available within 1–5 minutes. Provisioned capacity ensures that retrieval - * capacity for Expedited retrievals is available when you need it. Expedited - * retrievals and provisioned capacity are not available for objects stored in the - * S3 Glacier Deep Archive storage class or S3 Intelligent-Tiering Deep Archive - * tier.</p> </li> <li> <p> <b> <code>Standard</code> </b> - Standard retrievals - * allow you to access any of your archived objects within several hours. This is - * the default option for retrieval requests that do not specify the retrieval - * option. Standard retrievals typically finish within 3–5 hours for objects stored - * in the S3 Glacier storage class or S3 Intelligent-Tiering Archive tier. They - * typically finish within 12 hours for objects stored in the S3 Glacier Deep - * Archive storage class or S3 Intelligent-Tiering Deep Archive tier. Standard - * retrievals are free for objects stored in S3 Intelligent-Tiering.</p> </li> <li> - * <p> <b> <code>Bulk</code> </b> - Bulk retrievals are the lowest-cost retrieval - * option in S3 Glacier, enabling you to retrieve large amounts, even petabytes, of - * data inexpensively. Bulk retrievals typically finish within 5–12 hours for - * objects stored in the S3 Glacier storage class or S3 Intelligent-Tiering Archive - * tier. They typically finish within 48 hours for objects stored in the S3 Glacier - * Deep Archive storage class or S3 Intelligent-Tiering Deep Archive tier. Bulk - * retrievals are free for objects stored in S3 Intelligent-Tiering.</p> </li> - * </ul> <p>For more information about archive retrieval options and provisioned - * capacity for <code>Expedited</code> data access, see <a + * Reference for Amazon S3 Select and S3 Glacier Select</a> in the <i>Amazon S3 + * User Guide</i>. </p> <p>When making a select request, you can also do the + * following:</p> <ul> <li> <p>To expedite your queries, specify the + * <code>Expedited</code> tier. For more information about tiers, see "Restoring + * Archives," later in this topic.</p> </li> <li> <p>Specify details about the data + * serialization format of both the input object that is being queried and the + * serialization of the CSV-encoded query results.</p> </li> </ul> <p>The following + * are additional important facts about the select feature:</p> <ul> <li> <p>The + * output results are new Amazon S3 objects. Unlike archive retrievals, they are + * stored until explicitly deleted-manually or through a lifecycle policy.</p> + * </li> <li> <p>You can issue more than one select request on the same Amazon S3 + * object. Amazon S3 doesn't deduplicate requests, so avoid issuing duplicate + * requests.</p> </li> <li> <p> Amazon S3 accepts a select request even if the + * object has already been restored. A select request doesn’t return error response + * <code>409</code>.</p> </li> </ul> <p> <b>Restoring objects</b> </p> <p>Objects + * that you archive to the S3 Glacier or S3 Glacier Deep Archive storage class, and + * S3 Intelligent-Tiering Archive or S3 Intelligent-Tiering Deep Archive tiers are + * not accessible in real time. For objects in Archive Access or Deep Archive + * Access tiers you must first initiate a restore request, and then wait until the + * object is moved into the Frequent Access tier. For objects in S3 Glacier or S3 + * Glacier Deep Archive storage classes you must first initiate a restore request, + * and then wait until a temporary copy of the object is available. To access an + * archived object, you must restore the object for the duration (number of days) + * that you specify.</p> <p>To restore a specific object version, you can provide a + * version ID. If you don't provide a version ID, Amazon S3 restores the current + * version.</p> <p>When restoring an archived object (or using a select request), + * you can specify one of the following data access tier options in the + * <code>Tier</code> element of the request body: </p> <ul> <li> <p> <b> + * <code>Expedited</code> </b> - Expedited retrievals allow you to quickly access + * your data stored in the S3 Glacier storage class or S3 Intelligent-Tiering + * Archive tier when occasional urgent requests for a subset of archives are + * required. For all but the largest archived objects (250 MB+), data accessed + * using Expedited retrievals is typically made available within 1–5 minutes. + * Provisioned capacity ensures that retrieval capacity for Expedited retrievals is + * available when you need it. Expedited retrievals and provisioned capacity are + * not available for objects stored in the S3 Glacier Deep Archive storage class or + * S3 Intelligent-Tiering Deep Archive tier.</p> </li> <li> <p> <b> + * <code>Standard</code> </b> - Standard retrievals allow you to access any of your + * archived objects within several hours. This is the default option for retrieval + * requests that do not specify the retrieval option. Standard retrievals typically + * finish within 3–5 hours for objects stored in the S3 Glacier storage class or S3 + * Intelligent-Tiering Archive tier. They typically finish within 12 hours for + * objects stored in the S3 Glacier Deep Archive storage class or S3 + * Intelligent-Tiering Deep Archive tier. Standard retrievals are free for objects + * stored in S3 Intelligent-Tiering.</p> </li> <li> <p> <b> <code>Bulk</code> </b> + * - Bulk retrievals are the lowest-cost retrieval option in S3 Glacier, enabling + * you to retrieve large amounts, even petabytes, of data inexpensively. Bulk + * retrievals typically finish within 5–12 hours for objects stored in the S3 + * Glacier storage class or S3 Intelligent-Tiering Archive tier. They typically + * finish within 48 hours for objects stored in the S3 Glacier Deep Archive storage + * class or S3 Intelligent-Tiering Deep Archive tier. Bulk retrievals are free for + * objects stored in S3 Intelligent-Tiering.</p> </li> </ul> <p>For more + * information about archive retrieval options and provisioned capacity for + * <code>Expedited</code> data access, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/restoring-objects.html">Restoring - * Archived Objects</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>. </p> <p>You can use Amazon S3 restore speed upgrade to change the - * restore speed to a faster speed while it is in progress. For more information, - * see <a + * Archived Objects</a> in the <i>Amazon S3 User Guide</i>. </p> <p>You can use + * Amazon S3 restore speed upgrade to change the restore speed to a faster speed + * while it is in progress. For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/restoring-objects.html#restoring-objects-upgrade-tier.title.html"> - * Upgrading the speed of an in-progress restore</a> in the <i>Amazon Simple - * Storage Service Developer Guide</i>. </p> <p>To get the status of object - * restoration, you can send a <code>HEAD</code> request. Operations return the - * <code>x-amz-restore</code> header, which provides information about the - * restoration status, in the response. You can use Amazon S3 event notifications - * to notify you when a restore is initiated or completed. For more information, - * see <a + * Upgrading the speed of an in-progress restore</a> in the <i>Amazon S3 User + * Guide</i>. </p> <p>To get the status of object restoration, you can send a + * <code>HEAD</code> request. Operations return the <code>x-amz-restore</code> + * header, which provides information about the restoration status, in the + * response. You can use Amazon S3 event notifications to notify you when a restore + * is initiated or completed. For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html">Configuring - * Amazon S3 Event Notifications</a> in the <i>Amazon Simple Storage Service - * Developer Guide</i>.</p> <p>After restoring an archived object, you can update - * the restoration period by reissuing the request with a new period. Amazon S3 - * updates the restoration period relative to the current time and charges only for - * the request-there are no data transfer charges. You cannot update the - * restoration period when Amazon S3 is actively processing your current restore - * request for the object.</p> <p>If your bucket has a lifecycle configuration with - * a rule that includes an expiration action, the object expiration overrides the - * life span that you specify in a restore request. For example, if you restore an - * object copy for 10 days, but the object is scheduled to expire in 3 days, Amazon - * S3 deletes the object in 3 days. For more information about lifecycle - * configuration, see <a + * Amazon S3 Event Notifications</a> in the <i>Amazon S3 User Guide</i>.</p> + * <p>After restoring an archived object, you can update the restoration period by + * reissuing the request with a new period. Amazon S3 updates the restoration + * period relative to the current time and charges only for the request-there are + * no data transfer charges. You cannot update the restoration period when Amazon + * S3 is actively processing your current restore request for the object.</p> <p>If + * your bucket has a lifecycle configuration with a rule that includes an + * expiration action, the object expiration overrides the life span that you + * specify in a restore request. For example, if you restore an object copy for 10 + * days, but the object is scheduled to expire in 3 days, Amazon S3 deletes the + * object in 3 days. For more information about lifecycle configuration, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html">PutBucketLifecycleConfiguration</a> * and <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html">Object - * Lifecycle Management</a> in <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p> <b>Responses</b> </p> <p>A successful operation returns - * either the <code>200 OK</code> or <code>202 Accepted</code> status code. </p> - * <ul> <li> <p>If the object is not previously restored, then Amazon S3 returns - * <code>202 Accepted</code> in the response. </p> </li> <li> <p>If the object is - * previously restored, Amazon S3 returns <code>200 OK</code> in the response. </p> - * </li> </ul> <p class="title"> <b>Special Errors</b> </p> <ul> <li> <ul> <li> <p> + * Lifecycle Management</a> in <i>Amazon S3 User Guide</i>.</p> <p> + * <b>Responses</b> </p> <p>A successful action returns either the <code>200 + * OK</code> or <code>202 Accepted</code> status code. </p> <ul> <li> <p>If the + * object is not previously restored, then Amazon S3 returns <code>202 + * Accepted</code> in the response. </p> </li> <li> <p>If the object is previously + * restored, Amazon S3 returns <code>200 OK</code> in the response. </p> </li> + * </ul> <p class="title"> <b>Special Errors</b> </p> <ul> <li> <ul> <li> <p> * <i>Code: RestoreAlreadyInProgress</i> </p> </li> <li> <p> <i>Cause: Object * restore is already in progress. (This error does not apply to SELECT type * requests.)</i> </p> </li> <li> <p> <i>HTTP Status Code: 409 Conflict</i> </p> @@ -10074,9 +10132,9 @@ namespace Aws * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketNotificationConfiguration.html">GetBucketNotificationConfiguration</a> * </p> </li> <li> <p> <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-glacier-select-sql-reference.html">SQL - * Reference for Amazon S3 Select and S3 Glacier Select </a> in the <i>Amazon - * Simple Storage Service Developer Guide</i> </p> </li> </ul><p><h3>See Also:</h3> - * <a href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/RestoreObject">AWS + * Reference for Amazon S3 Select and S3 Glacier Select </a> in the <i>Amazon S3 + * User Guide</i> </p> </li> </ul><p><h3>See Also:</h3> <a + * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/RestoreObject">AWS * API Reference</a></p> * * Queues the request into a thread executor and triggers associated callback when operation has finished. @@ -10084,7 +10142,7 @@ namespace Aws virtual void RestoreObjectAsync(const Model::RestoreObjectRequest& request, const RestoreObjectResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; /** - * <p>This operation filters the contents of an Amazon S3 object based on a simple + * <p>This action filters the contents of an Amazon S3 object based on a simple * structured query language (SQL) statement. In the request, along with the SQL * expression, you must also specify a data serialization format (JSON, CSV, or * Apache Parquet) of the object. Amazon S3 uses this format to parse object data @@ -10093,49 +10151,46 @@ namespace Aws * <p>This action is not supported by Amazon S3 on Outposts.</p> <p>For more * information about Amazon S3 Select, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/selecting-content-from-objects.html">Selecting - * Content from Objects</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>For more information about using SQL with Amazon S3 Select, - * see <a + * Content from Objects</a> in the <i>Amazon S3 User Guide</i>.</p> <p>For more + * information about using SQL with Amazon S3 Select, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-glacier-select-sql-reference.html"> - * SQL Reference for Amazon S3 Select and S3 Glacier Select</a> in the <i>Amazon - * Simple Storage Service Developer Guide</i>.</p> <p/> <p> <b>Permissions</b> </p> - * <p>You must have <code>s3:GetObject</code> permission for this operation. Amazon - * S3 Select does not support anonymous access. For more information about - * permissions, see <a + * SQL Reference for Amazon S3 Select and S3 Glacier Select</a> in the <i>Amazon S3 + * User Guide</i>.</p> <p/> <p> <b>Permissions</b> </p> <p>You must have + * <code>s3:GetObject</code> permission for this operation. Amazon S3 Select does + * not support anonymous access. For more information about permissions, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html">Specifying - * Permissions in a Policy</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p/> <p> <i>Object Data Formats</i> </p> <p>You can use Amazon S3 - * Select to query objects that have the following format properties:</p> <ul> <li> - * <p> <i>CSV, JSON, and Parquet</i> - Objects must be in CSV, JSON, or Parquet - * format.</p> </li> <li> <p> <i>UTF-8</i> - UTF-8 is the only encoding type Amazon - * S3 Select supports.</p> </li> <li> <p> <i>GZIP or BZIP2</i> - CSV and JSON files - * can be compressed using GZIP or BZIP2. GZIP and BZIP2 are the only compression - * formats that Amazon S3 Select supports for CSV and JSON files. Amazon S3 Select - * supports columnar compression for Parquet using GZIP or Snappy. Amazon S3 Select - * does not support whole-object compression for Parquet objects.</p> </li> <li> - * <p> <i>Server-side encryption</i> - Amazon S3 Select supports querying objects - * that are protected with server-side encryption.</p> <p>For objects that are - * encrypted with customer-provided encryption keys (SSE-C), you must use HTTPS, - * and you must use the headers that are documented in the <a + * Permissions in a Policy</a> in the <i>Amazon S3 User Guide</i>.</p> <p/> <p> + * <i>Object Data Formats</i> </p> <p>You can use Amazon S3 Select to query objects + * that have the following format properties:</p> <ul> <li> <p> <i>CSV, JSON, and + * Parquet</i> - Objects must be in CSV, JSON, or Parquet format.</p> </li> <li> + * <p> <i>UTF-8</i> - UTF-8 is the only encoding type Amazon S3 Select + * supports.</p> </li> <li> <p> <i>GZIP or BZIP2</i> - CSV and JSON files can be + * compressed using GZIP or BZIP2. GZIP and BZIP2 are the only compression formats + * that Amazon S3 Select supports for CSV and JSON files. Amazon S3 Select supports + * columnar compression for Parquet using GZIP or Snappy. Amazon S3 Select does not + * support whole-object compression for Parquet objects.</p> </li> <li> <p> + * <i>Server-side encryption</i> - Amazon S3 Select supports querying objects that + * are protected with server-side encryption.</p> <p>For objects that are encrypted + * with customer-provided encryption keys (SSE-C), you must use HTTPS, and you must + * use the headers that are documented in the <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html">GetObject</a>. * For more information about SSE-C, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Server-Side - * Encryption (Using Customer-Provided Encryption Keys)</a> in the <i>Amazon Simple - * Storage Service Developer Guide</i>.</p> <p>For objects that are encrypted with - * Amazon S3 managed encryption keys (SSE-S3) and customer master keys (CMKs) - * stored in AWS Key Management Service (SSE-KMS), server-side encryption is - * handled transparently, so you don't need to specify anything. For more - * information about server-side encryption, including SSE-S3 and SSE-KMS, see <a + * Encryption (Using Customer-Provided Encryption Keys)</a> in the <i>Amazon S3 + * User Guide</i>.</p> <p>For objects that are encrypted with Amazon S3 managed + * encryption keys (SSE-S3) and customer master keys (CMKs) stored in AWS Key + * Management Service (SSE-KMS), server-side encryption is handled transparently, + * so you don't need to specify anything. For more information about server-side + * encryption, including SSE-S3 and SSE-KMS, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html">Protecting - * Data Using Server-Side Encryption</a> in the <i>Amazon Simple Storage Service - * Developer Guide</i>.</p> </li> </ul> <p> <b>Working with the Response Body</b> - * </p> <p>Given the response size is unknown, Amazon S3 Select streams the - * response as a series of messages and includes a <code>Transfer-Encoding</code> - * header with <code>chunked</code> as its value in the response. For more - * information, see <a + * Data Using Server-Side Encryption</a> in the <i>Amazon S3 User Guide</i>.</p> + * </li> </ul> <p> <b>Working with the Response Body</b> </p> <p>Given the response + * size is unknown, Amazon S3 Select streams the response as a series of messages + * and includes a <code>Transfer-Encoding</code> header with <code>chunked</code> + * as its value in the response. For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/RESTSelectObjectAppendix.html">Appendix: * SelectObjectContent Response</a> .</p> <p/> <p> <b>GetObject Support</b> </p> - * <p>The <code>SelectObjectContent</code> operation does not support the following + * <p>The <code>SelectObjectContent</code> action does not support the following * <code>GetObject</code> functionality. For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html">GetObject</a>.</p> * <ul> <li> <p> <code>Range</code>: Although you can specify a scan range for an @@ -10147,9 +10202,9 @@ namespace Aws * DEEP_ARCHIVE, or <code>REDUCED_REDUNDANCY</code> storage classes. For more * information, about storage classes see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html#storage-class-intro">Storage - * Classes</a> in the <i>Amazon Simple Storage Service Developer Guide</i>.</p> - * </li> </ul> <p/> <p> <b>Special Errors</b> </p> <p>For a list of special errors - * for this operation, see <a + * Classes</a> in the <i>Amazon S3 User Guide</i>.</p> </li> </ul> <p/> <p> + * <b>Special Errors</b> </p> <p>For a list of special errors for this operation, + * see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#SelectObjectContentErrorCodeList">List * of SELECT Object Content Error Codes</a> </p> <p class="title"> <b>Related * Resources</b> </p> <ul> <li> <p> <a @@ -10165,7 +10220,7 @@ namespace Aws virtual Model::SelectObjectContentOutcome SelectObjectContent(Model::SelectObjectContentRequest& request) const; /** - * <p>This operation filters the contents of an Amazon S3 object based on a simple + * <p>This action filters the contents of an Amazon S3 object based on a simple * structured query language (SQL) statement. In the request, along with the SQL * expression, you must also specify a data serialization format (JSON, CSV, or * Apache Parquet) of the object. Amazon S3 uses this format to parse object data @@ -10174,49 +10229,46 @@ namespace Aws * <p>This action is not supported by Amazon S3 on Outposts.</p> <p>For more * information about Amazon S3 Select, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/selecting-content-from-objects.html">Selecting - * Content from Objects</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>For more information about using SQL with Amazon S3 Select, - * see <a + * Content from Objects</a> in the <i>Amazon S3 User Guide</i>.</p> <p>For more + * information about using SQL with Amazon S3 Select, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-glacier-select-sql-reference.html"> - * SQL Reference for Amazon S3 Select and S3 Glacier Select</a> in the <i>Amazon - * Simple Storage Service Developer Guide</i>.</p> <p/> <p> <b>Permissions</b> </p> - * <p>You must have <code>s3:GetObject</code> permission for this operation. Amazon - * S3 Select does not support anonymous access. For more information about - * permissions, see <a + * SQL Reference for Amazon S3 Select and S3 Glacier Select</a> in the <i>Amazon S3 + * User Guide</i>.</p> <p/> <p> <b>Permissions</b> </p> <p>You must have + * <code>s3:GetObject</code> permission for this operation. Amazon S3 Select does + * not support anonymous access. For more information about permissions, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html">Specifying - * Permissions in a Policy</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p/> <p> <i>Object Data Formats</i> </p> <p>You can use Amazon S3 - * Select to query objects that have the following format properties:</p> <ul> <li> - * <p> <i>CSV, JSON, and Parquet</i> - Objects must be in CSV, JSON, or Parquet - * format.</p> </li> <li> <p> <i>UTF-8</i> - UTF-8 is the only encoding type Amazon - * S3 Select supports.</p> </li> <li> <p> <i>GZIP or BZIP2</i> - CSV and JSON files - * can be compressed using GZIP or BZIP2. GZIP and BZIP2 are the only compression - * formats that Amazon S3 Select supports for CSV and JSON files. Amazon S3 Select - * supports columnar compression for Parquet using GZIP or Snappy. Amazon S3 Select - * does not support whole-object compression for Parquet objects.</p> </li> <li> - * <p> <i>Server-side encryption</i> - Amazon S3 Select supports querying objects - * that are protected with server-side encryption.</p> <p>For objects that are - * encrypted with customer-provided encryption keys (SSE-C), you must use HTTPS, - * and you must use the headers that are documented in the <a + * Permissions in a Policy</a> in the <i>Amazon S3 User Guide</i>.</p> <p/> <p> + * <i>Object Data Formats</i> </p> <p>You can use Amazon S3 Select to query objects + * that have the following format properties:</p> <ul> <li> <p> <i>CSV, JSON, and + * Parquet</i> - Objects must be in CSV, JSON, or Parquet format.</p> </li> <li> + * <p> <i>UTF-8</i> - UTF-8 is the only encoding type Amazon S3 Select + * supports.</p> </li> <li> <p> <i>GZIP or BZIP2</i> - CSV and JSON files can be + * compressed using GZIP or BZIP2. GZIP and BZIP2 are the only compression formats + * that Amazon S3 Select supports for CSV and JSON files. Amazon S3 Select supports + * columnar compression for Parquet using GZIP or Snappy. Amazon S3 Select does not + * support whole-object compression for Parquet objects.</p> </li> <li> <p> + * <i>Server-side encryption</i> - Amazon S3 Select supports querying objects that + * are protected with server-side encryption.</p> <p>For objects that are encrypted + * with customer-provided encryption keys (SSE-C), you must use HTTPS, and you must + * use the headers that are documented in the <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html">GetObject</a>. * For more information about SSE-C, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Server-Side - * Encryption (Using Customer-Provided Encryption Keys)</a> in the <i>Amazon Simple - * Storage Service Developer Guide</i>.</p> <p>For objects that are encrypted with - * Amazon S3 managed encryption keys (SSE-S3) and customer master keys (CMKs) - * stored in AWS Key Management Service (SSE-KMS), server-side encryption is - * handled transparently, so you don't need to specify anything. For more - * information about server-side encryption, including SSE-S3 and SSE-KMS, see <a + * Encryption (Using Customer-Provided Encryption Keys)</a> in the <i>Amazon S3 + * User Guide</i>.</p> <p>For objects that are encrypted with Amazon S3 managed + * encryption keys (SSE-S3) and customer master keys (CMKs) stored in AWS Key + * Management Service (SSE-KMS), server-side encryption is handled transparently, + * so you don't need to specify anything. For more information about server-side + * encryption, including SSE-S3 and SSE-KMS, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html">Protecting - * Data Using Server-Side Encryption</a> in the <i>Amazon Simple Storage Service - * Developer Guide</i>.</p> </li> </ul> <p> <b>Working with the Response Body</b> - * </p> <p>Given the response size is unknown, Amazon S3 Select streams the - * response as a series of messages and includes a <code>Transfer-Encoding</code> - * header with <code>chunked</code> as its value in the response. For more - * information, see <a + * Data Using Server-Side Encryption</a> in the <i>Amazon S3 User Guide</i>.</p> + * </li> </ul> <p> <b>Working with the Response Body</b> </p> <p>Given the response + * size is unknown, Amazon S3 Select streams the response as a series of messages + * and includes a <code>Transfer-Encoding</code> header with <code>chunked</code> + * as its value in the response. For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/RESTSelectObjectAppendix.html">Appendix: * SelectObjectContent Response</a> .</p> <p/> <p> <b>GetObject Support</b> </p> - * <p>The <code>SelectObjectContent</code> operation does not support the following + * <p>The <code>SelectObjectContent</code> action does not support the following * <code>GetObject</code> functionality. For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html">GetObject</a>.</p> * <ul> <li> <p> <code>Range</code>: Although you can specify a scan range for an @@ -10228,9 +10280,9 @@ namespace Aws * DEEP_ARCHIVE, or <code>REDUCED_REDUNDANCY</code> storage classes. For more * information, about storage classes see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html#storage-class-intro">Storage - * Classes</a> in the <i>Amazon Simple Storage Service Developer Guide</i>.</p> - * </li> </ul> <p/> <p> <b>Special Errors</b> </p> <p>For a list of special errors - * for this operation, see <a + * Classes</a> in the <i>Amazon S3 User Guide</i>.</p> </li> </ul> <p/> <p> + * <b>Special Errors</b> </p> <p>For a list of special errors for this operation, + * see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#SelectObjectContentErrorCodeList">List * of SELECT Object Content Error Codes</a> </p> <p class="title"> <b>Related * Resources</b> </p> <ul> <li> <p> <a @@ -10248,7 +10300,7 @@ namespace Aws virtual Model::SelectObjectContentOutcomeCallable SelectObjectContentCallable(Model::SelectObjectContentRequest& request) const; /** - * <p>This operation filters the contents of an Amazon S3 object based on a simple + * <p>This action filters the contents of an Amazon S3 object based on a simple * structured query language (SQL) statement. In the request, along with the SQL * expression, you must also specify a data serialization format (JSON, CSV, or * Apache Parquet) of the object. Amazon S3 uses this format to parse object data @@ -10257,49 +10309,46 @@ namespace Aws * <p>This action is not supported by Amazon S3 on Outposts.</p> <p>For more * information about Amazon S3 Select, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/selecting-content-from-objects.html">Selecting - * Content from Objects</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>For more information about using SQL with Amazon S3 Select, - * see <a + * Content from Objects</a> in the <i>Amazon S3 User Guide</i>.</p> <p>For more + * information about using SQL with Amazon S3 Select, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-glacier-select-sql-reference.html"> - * SQL Reference for Amazon S3 Select and S3 Glacier Select</a> in the <i>Amazon - * Simple Storage Service Developer Guide</i>.</p> <p/> <p> <b>Permissions</b> </p> - * <p>You must have <code>s3:GetObject</code> permission for this operation. Amazon - * S3 Select does not support anonymous access. For more information about - * permissions, see <a + * SQL Reference for Amazon S3 Select and S3 Glacier Select</a> in the <i>Amazon S3 + * User Guide</i>.</p> <p/> <p> <b>Permissions</b> </p> <p>You must have + * <code>s3:GetObject</code> permission for this operation. Amazon S3 Select does + * not support anonymous access. For more information about permissions, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html">Specifying - * Permissions in a Policy</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p/> <p> <i>Object Data Formats</i> </p> <p>You can use Amazon S3 - * Select to query objects that have the following format properties:</p> <ul> <li> - * <p> <i>CSV, JSON, and Parquet</i> - Objects must be in CSV, JSON, or Parquet - * format.</p> </li> <li> <p> <i>UTF-8</i> - UTF-8 is the only encoding type Amazon - * S3 Select supports.</p> </li> <li> <p> <i>GZIP or BZIP2</i> - CSV and JSON files - * can be compressed using GZIP or BZIP2. GZIP and BZIP2 are the only compression - * formats that Amazon S3 Select supports for CSV and JSON files. Amazon S3 Select - * supports columnar compression for Parquet using GZIP or Snappy. Amazon S3 Select - * does not support whole-object compression for Parquet objects.</p> </li> <li> - * <p> <i>Server-side encryption</i> - Amazon S3 Select supports querying objects - * that are protected with server-side encryption.</p> <p>For objects that are - * encrypted with customer-provided encryption keys (SSE-C), you must use HTTPS, - * and you must use the headers that are documented in the <a + * Permissions in a Policy</a> in the <i>Amazon S3 User Guide</i>.</p> <p/> <p> + * <i>Object Data Formats</i> </p> <p>You can use Amazon S3 Select to query objects + * that have the following format properties:</p> <ul> <li> <p> <i>CSV, JSON, and + * Parquet</i> - Objects must be in CSV, JSON, or Parquet format.</p> </li> <li> + * <p> <i>UTF-8</i> - UTF-8 is the only encoding type Amazon S3 Select + * supports.</p> </li> <li> <p> <i>GZIP or BZIP2</i> - CSV and JSON files can be + * compressed using GZIP or BZIP2. GZIP and BZIP2 are the only compression formats + * that Amazon S3 Select supports for CSV and JSON files. Amazon S3 Select supports + * columnar compression for Parquet using GZIP or Snappy. Amazon S3 Select does not + * support whole-object compression for Parquet objects.</p> </li> <li> <p> + * <i>Server-side encryption</i> - Amazon S3 Select supports querying objects that + * are protected with server-side encryption.</p> <p>For objects that are encrypted + * with customer-provided encryption keys (SSE-C), you must use HTTPS, and you must + * use the headers that are documented in the <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html">GetObject</a>. * For more information about SSE-C, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Server-Side - * Encryption (Using Customer-Provided Encryption Keys)</a> in the <i>Amazon Simple - * Storage Service Developer Guide</i>.</p> <p>For objects that are encrypted with - * Amazon S3 managed encryption keys (SSE-S3) and customer master keys (CMKs) - * stored in AWS Key Management Service (SSE-KMS), server-side encryption is - * handled transparently, so you don't need to specify anything. For more - * information about server-side encryption, including SSE-S3 and SSE-KMS, see <a + * Encryption (Using Customer-Provided Encryption Keys)</a> in the <i>Amazon S3 + * User Guide</i>.</p> <p>For objects that are encrypted with Amazon S3 managed + * encryption keys (SSE-S3) and customer master keys (CMKs) stored in AWS Key + * Management Service (SSE-KMS), server-side encryption is handled transparently, + * so you don't need to specify anything. For more information about server-side + * encryption, including SSE-S3 and SSE-KMS, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html">Protecting - * Data Using Server-Side Encryption</a> in the <i>Amazon Simple Storage Service - * Developer Guide</i>.</p> </li> </ul> <p> <b>Working with the Response Body</b> - * </p> <p>Given the response size is unknown, Amazon S3 Select streams the - * response as a series of messages and includes a <code>Transfer-Encoding</code> - * header with <code>chunked</code> as its value in the response. For more - * information, see <a + * Data Using Server-Side Encryption</a> in the <i>Amazon S3 User Guide</i>.</p> + * </li> </ul> <p> <b>Working with the Response Body</b> </p> <p>Given the response + * size is unknown, Amazon S3 Select streams the response as a series of messages + * and includes a <code>Transfer-Encoding</code> header with <code>chunked</code> + * as its value in the response. For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/RESTSelectObjectAppendix.html">Appendix: * SelectObjectContent Response</a> .</p> <p/> <p> <b>GetObject Support</b> </p> - * <p>The <code>SelectObjectContent</code> operation does not support the following + * <p>The <code>SelectObjectContent</code> action does not support the following * <code>GetObject</code> functionality. For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html">GetObject</a>.</p> * <ul> <li> <p> <code>Range</code>: Although you can specify a scan range for an @@ -10311,9 +10360,9 @@ namespace Aws * DEEP_ARCHIVE, or <code>REDUCED_REDUNDANCY</code> storage classes. For more * information, about storage classes see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html#storage-class-intro">Storage - * Classes</a> in the <i>Amazon Simple Storage Service Developer Guide</i>.</p> - * </li> </ul> <p/> <p> <b>Special Errors</b> </p> <p>For a list of special errors - * for this operation, see <a + * Classes</a> in the <i>Amazon S3 User Guide</i>.</p> </li> </ul> <p/> <p> + * <b>Special Errors</b> </p> <p>For a list of special errors for this operation, + * see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#SelectObjectContentErrorCodeList">List * of SELECT Object Content Error Codes</a> </p> <p class="title"> <b>Related * Resources</b> </p> <ul> <li> <p> <a @@ -10361,27 +10410,25 @@ namespace Aws * you for the parts storage.</p> <p>For more information on multipart uploads, go * to <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html">Multipart - * Upload Overview</a> in the <i>Amazon Simple Storage Service Developer Guide - * </i>.</p> <p>For information on the permissions required to use the multipart - * upload API, go to <a + * Upload Overview</a> in the <i>Amazon S3 User Guide </i>.</p> <p>For information + * on the permissions required to use the multipart upload API, go to <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html">Multipart - * Upload API and Permissions</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>You can optionally request server-side encryption where Amazon - * S3 encrypts your data as it writes it to disks in its data centers and decrypts - * it for you when you access it. You have the option of providing your own - * encryption key, or you can use the AWS managed encryption keys. If you choose to - * provide your own encryption key, the request headers you provide in the request - * must match the headers you used in the request to initiate the upload by using - * <a + * Upload and Permissions</a> in the <i>Amazon S3 User Guide</i>.</p> <p>You can + * optionally request server-side encryption where Amazon S3 encrypts your data as + * it writes it to disks in its data centers and decrypts it for you when you + * access it. You have the option of providing your own encryption key, or you can + * use the AWS managed encryption keys. If you choose to provide your own + * encryption key, the request headers you provide in the request must match the + * headers you used in the request to initiate the upload by using <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html">CreateMultipartUpload</a>. * For more information, go to <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingServerSideEncryption.html">Using - * Server-Side Encryption</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>Server-side encryption is supported by the S3 Multipart Upload - * actions. Unless you are using a customer-provided encryption key, you don't need - * to specify the encryption parameters in each UploadPart request. Instead, you - * only need to specify the server-side encryption parameters in the initial - * Initiate Multipart request. For more information, see <a + * Server-Side Encryption</a> in the <i>Amazon S3 User Guide</i>.</p> + * <p>Server-side encryption is supported by the S3 Multipart Upload actions. + * Unless you are using a customer-provided encryption key, you don't need to + * specify the encryption parameters in each UploadPart request. Instead, you only + * need to specify the server-side encryption parameters in the initial Initiate + * Multipart request. For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html">CreateMultipartUpload</a>.</p> * <p>If you requested server-side encryption using a customer-provided encryption * key in your initiate multipart upload request, you must provide identical @@ -10442,27 +10489,25 @@ namespace Aws * you for the parts storage.</p> <p>For more information on multipart uploads, go * to <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html">Multipart - * Upload Overview</a> in the <i>Amazon Simple Storage Service Developer Guide - * </i>.</p> <p>For information on the permissions required to use the multipart - * upload API, go to <a + * Upload Overview</a> in the <i>Amazon S3 User Guide </i>.</p> <p>For information + * on the permissions required to use the multipart upload API, go to <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html">Multipart - * Upload API and Permissions</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>You can optionally request server-side encryption where Amazon - * S3 encrypts your data as it writes it to disks in its data centers and decrypts - * it for you when you access it. You have the option of providing your own - * encryption key, or you can use the AWS managed encryption keys. If you choose to - * provide your own encryption key, the request headers you provide in the request - * must match the headers you used in the request to initiate the upload by using - * <a + * Upload and Permissions</a> in the <i>Amazon S3 User Guide</i>.</p> <p>You can + * optionally request server-side encryption where Amazon S3 encrypts your data as + * it writes it to disks in its data centers and decrypts it for you when you + * access it. You have the option of providing your own encryption key, or you can + * use the AWS managed encryption keys. If you choose to provide your own + * encryption key, the request headers you provide in the request must match the + * headers you used in the request to initiate the upload by using <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html">CreateMultipartUpload</a>. * For more information, go to <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingServerSideEncryption.html">Using - * Server-Side Encryption</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>Server-side encryption is supported by the S3 Multipart Upload - * actions. Unless you are using a customer-provided encryption key, you don't need - * to specify the encryption parameters in each UploadPart request. Instead, you - * only need to specify the server-side encryption parameters in the initial - * Initiate Multipart request. For more information, see <a + * Server-Side Encryption</a> in the <i>Amazon S3 User Guide</i>.</p> + * <p>Server-side encryption is supported by the S3 Multipart Upload actions. + * Unless you are using a customer-provided encryption key, you don't need to + * specify the encryption parameters in each UploadPart request. Instead, you only + * need to specify the server-side encryption parameters in the initial Initiate + * Multipart request. For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html">CreateMultipartUpload</a>.</p> * <p>If you requested server-side encryption using a customer-provided encryption * key in your initiate multipart upload request, you must provide identical @@ -10525,27 +10570,25 @@ namespace Aws * you for the parts storage.</p> <p>For more information on multipart uploads, go * to <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html">Multipart - * Upload Overview</a> in the <i>Amazon Simple Storage Service Developer Guide - * </i>.</p> <p>For information on the permissions required to use the multipart - * upload API, go to <a + * Upload Overview</a> in the <i>Amazon S3 User Guide </i>.</p> <p>For information + * on the permissions required to use the multipart upload API, go to <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html">Multipart - * Upload API and Permissions</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>You can optionally request server-side encryption where Amazon - * S3 encrypts your data as it writes it to disks in its data centers and decrypts - * it for you when you access it. You have the option of providing your own - * encryption key, or you can use the AWS managed encryption keys. If you choose to - * provide your own encryption key, the request headers you provide in the request - * must match the headers you used in the request to initiate the upload by using - * <a + * Upload and Permissions</a> in the <i>Amazon S3 User Guide</i>.</p> <p>You can + * optionally request server-side encryption where Amazon S3 encrypts your data as + * it writes it to disks in its data centers and decrypts it for you when you + * access it. You have the option of providing your own encryption key, or you can + * use the AWS managed encryption keys. If you choose to provide your own + * encryption key, the request headers you provide in the request must match the + * headers you used in the request to initiate the upload by using <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html">CreateMultipartUpload</a>. * For more information, go to <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingServerSideEncryption.html">Using - * Server-Side Encryption</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>Server-side encryption is supported by the S3 Multipart Upload - * actions. Unless you are using a customer-provided encryption key, you don't need - * to specify the encryption parameters in each UploadPart request. Instead, you - * only need to specify the server-side encryption parameters in the initial - * Initiate Multipart request. For more information, see <a + * Server-Side Encryption</a> in the <i>Amazon S3 User Guide</i>.</p> + * <p>Server-side encryption is supported by the S3 Multipart Upload actions. + * Unless you are using a customer-provided encryption key, you don't need to + * specify the encryption parameters in each UploadPart request. Instead, you only + * need to specify the server-side encryption parameters in the initial Initiate + * Multipart request. For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html">CreateMultipartUpload</a>.</p> * <p>If you requested server-side encryption using a customer-provided encryption * key in your initiate multipart upload request, you must provide identical @@ -10585,27 +10628,27 @@ namespace Aws * minimum allowable part size for a multipart upload is 5 MB. For more information * about multipart upload limits, go to <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/qfacts.html">Quick - * Facts</a> in the <i>Amazon Simple Storage Service Developer Guide</i>. </p> - * <p>Instead of using an existing object as part data, you might use the <a + * Facts</a> in the <i>Amazon S3 User Guide</i>. </p> <p>Instead of using an + * existing object as part data, you might use the <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html">UploadPart</a> - * operation and provide data in your request.</p> <p>You must initiate a + * action and provide data in your request.</p> <p>You must initiate a * multipart upload before you can upload any part. In response to your initiate * request. Amazon S3 returns a unique identifier, the upload ID, that you must * include in your upload part request.</p> <p>For more information about using the * <code>UploadPartCopy</code> operation, see the following:</p> <ul> <li> <p>For * conceptual information about multipart uploads, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/uploadobjusingmpu.html">Uploading - * Objects Using Multipart Upload</a> in the <i>Amazon Simple Storage Service - * Developer Guide</i>.</p> </li> <li> <p>For information about permissions - * required to use the multipart upload API, see <a + * Objects Using Multipart Upload</a> in the <i>Amazon S3 User Guide</i>.</p> </li> + * <li> <p>For information about permissions required to use the multipart upload + * API, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html">Multipart - * Upload API and Permissions</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> </li> <li> <p>For information about copying objects using a - * single atomic operation vs. the multipart upload, see <a + * Upload and Permissions</a> in the <i>Amazon S3 User Guide</i>.</p> </li> <li> + * <p>For information about copying objects using a single atomic action vs. the + * multipart upload, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectOperations.html">Operations - * on Objects</a> in the <i>Amazon Simple Storage Service Developer Guide</i>.</p> - * </li> <li> <p>For information about using server-side encryption with - * customer-provided encryption keys with the UploadPartCopy operation, see <a + * on Objects</a> in the <i>Amazon S3 User Guide</i>.</p> </li> <li> <p>For + * information about using server-side encryption with customer-provided encryption + * keys with the UploadPartCopy operation, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html">CopyObject</a> * and <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html">UploadPart</a>.</p> @@ -10673,27 +10716,27 @@ namespace Aws * minimum allowable part size for a multipart upload is 5 MB. For more information * about multipart upload limits, go to <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/qfacts.html">Quick - * Facts</a> in the <i>Amazon Simple Storage Service Developer Guide</i>. </p> - * <p>Instead of using an existing object as part data, you might use the <a + * Facts</a> in the <i>Amazon S3 User Guide</i>. </p> <p>Instead of using an + * existing object as part data, you might use the <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html">UploadPart</a> - * operation and provide data in your request.</p> <p>You must initiate a + * action and provide data in your request.</p> <p>You must initiate a * multipart upload before you can upload any part. In response to your initiate * request. Amazon S3 returns a unique identifier, the upload ID, that you must * include in your upload part request.</p> <p>For more information about using the * <code>UploadPartCopy</code> operation, see the following:</p> <ul> <li> <p>For * conceptual information about multipart uploads, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/uploadobjusingmpu.html">Uploading - * Objects Using Multipart Upload</a> in the <i>Amazon Simple Storage Service - * Developer Guide</i>.</p> </li> <li> <p>For information about permissions - * required to use the multipart upload API, see <a + * Objects Using Multipart Upload</a> in the <i>Amazon S3 User Guide</i>.</p> </li> + * <li> <p>For information about permissions required to use the multipart upload + * API, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html">Multipart - * Upload API and Permissions</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> </li> <li> <p>For information about copying objects using a - * single atomic operation vs. the multipart upload, see <a + * Upload and Permissions</a> in the <i>Amazon S3 User Guide</i>.</p> </li> <li> + * <p>For information about copying objects using a single atomic action vs. the + * multipart upload, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectOperations.html">Operations - * on Objects</a> in the <i>Amazon Simple Storage Service Developer Guide</i>.</p> - * </li> <li> <p>For information about using server-side encryption with - * customer-provided encryption keys with the UploadPartCopy operation, see <a + * on Objects</a> in the <i>Amazon S3 User Guide</i>.</p> </li> <li> <p>For + * information about using server-side encryption with customer-provided encryption + * keys with the UploadPartCopy operation, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html">CopyObject</a> * and <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html">UploadPart</a>.</p> @@ -10763,27 +10806,27 @@ namespace Aws * minimum allowable part size for a multipart upload is 5 MB. For more information * about multipart upload limits, go to <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/qfacts.html">Quick - * Facts</a> in the <i>Amazon Simple Storage Service Developer Guide</i>. </p> - * <p>Instead of using an existing object as part data, you might use the <a + * Facts</a> in the <i>Amazon S3 User Guide</i>. </p> <p>Instead of using an + * existing object as part data, you might use the <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html">UploadPart</a> - * operation and provide data in your request.</p> <p>You must initiate a + * action and provide data in your request.</p> <p>You must initiate a * multipart upload before you can upload any part. In response to your initiate * request. Amazon S3 returns a unique identifier, the upload ID, that you must * include in your upload part request.</p> <p>For more information about using the * <code>UploadPartCopy</code> operation, see the following:</p> <ul> <li> <p>For * conceptual information about multipart uploads, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/uploadobjusingmpu.html">Uploading - * Objects Using Multipart Upload</a> in the <i>Amazon Simple Storage Service - * Developer Guide</i>.</p> </li> <li> <p>For information about permissions - * required to use the multipart upload API, see <a + * Objects Using Multipart Upload</a> in the <i>Amazon S3 User Guide</i>.</p> </li> + * <li> <p>For information about permissions required to use the multipart upload + * API, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html">Multipart - * Upload API and Permissions</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> </li> <li> <p>For information about copying objects using a - * single atomic operation vs. the multipart upload, see <a + * Upload and Permissions</a> in the <i>Amazon S3 User Guide</i>.</p> </li> <li> + * <p>For information about copying objects using a single atomic action vs. the + * multipart upload, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectOperations.html">Operations - * on Objects</a> in the <i>Amazon Simple Storage Service Developer Guide</i>.</p> - * </li> <li> <p>For information about using server-side encryption with - * customer-provided encryption keys with the UploadPartCopy operation, see <a + * on Objects</a> in the <i>Amazon S3 User Guide</i>.</p> </li> <li> <p>For + * information about using server-side encryption with customer-provided encryption + * keys with the UploadPartCopy operation, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html">CopyObject</a> * and <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html">UploadPart</a>.</p> @@ -10845,6 +10888,139 @@ namespace Aws */ virtual void UploadPartCopyAsync(const Model::UploadPartCopyRequest& request, const UploadPartCopyResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; + /** + * <p>Passes transformed objects to a <code>GetObject</code> operation when using + * Object Lambda Access Points. For information about Object Lambda Access Points, + * see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/transforming-objects.html">Transforming + * objects with Object Lambda Access Points</a> in the <i>Amazon S3 User + * Guide</i>.</p> <p>This operation supports metadata that can be returned by <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html">GetObject</a>, + * in addition to <code>RequestRoute</code>, <code>RequestToken</code>, + * <code>StatusCode</code>, <code>ErrorCode</code>, and <code>ErrorMessage</code>. + * The <code>GetObject</code> response metadata is supported so that the + * <code>WriteGetObjectResponse</code> caller, typically an AWS Lambda function, + * can provide the same metadata when it internally invokes <code>GetObject</code>. + * When <code>WriteGetObjectResponse</code> is called by a customer-owned Lambda + * function, the metadata returned to the end user <code>GetObject</code> call + * might differ from what Amazon S3 would normally return.</p> <p>AWS provides some + * prebuilt Lambda functions that you can use with S3 Object Lambda to detect and + * redact personally identifiable information (PII) and decompress S3 objects. + * These Lambda functions are available in the AWS Serverless Application + * Repository, and can be selected through the AWS Management Console when you + * create your Object Lambda Access Point.</p> <p>Example 1: PII Access Control - + * This Lambda function uses Amazon Comprehend, a natural language processing (NLP) + * service using machine learning to find insights and relationships in text. It + * automatically detects personally identifiable information (PII) such as names, + * addresses, dates, credit card numbers, and social security numbers from + * documents in your Amazon S3 bucket. </p> <p>Example 2: PII Redaction - This + * Lambda function uses Amazon Comprehend, a natural language processing (NLP) + * service using machine learning to find insights and relationships in text. It + * automatically redacts personally identifiable information (PII) such as names, + * addresses, dates, credit card numbers, and social security numbers from + * documents in your Amazon S3 bucket. </p> <p>Example 3: Decompression - The + * Lambda function S3ObjectLambdaDecompression, is equipped to decompress objects + * stored in S3 in one of six compressed file formats including bzip2, gzip, + * snappy, zlib, zstandard and ZIP. </p> <p>For information on how to view and use + * these functions, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/olap-examples.html">Using + * AWS built Lambda functions</a> in the <i>Amazon S3 User Guide</i>.</p><p><h3>See + * Also:</h3> <a + * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/WriteGetObjectResponse">AWS + * API Reference</a></p> + */ + virtual Model::WriteGetObjectResponseOutcome WriteGetObjectResponse(const Model::WriteGetObjectResponseRequest& request) const; + + /** + * <p>Passes transformed objects to a <code>GetObject</code> operation when using + * Object Lambda Access Points. For information about Object Lambda Access Points, + * see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/transforming-objects.html">Transforming + * objects with Object Lambda Access Points</a> in the <i>Amazon S3 User + * Guide</i>.</p> <p>This operation supports metadata that can be returned by <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html">GetObject</a>, + * in addition to <code>RequestRoute</code>, <code>RequestToken</code>, + * <code>StatusCode</code>, <code>ErrorCode</code>, and <code>ErrorMessage</code>. + * The <code>GetObject</code> response metadata is supported so that the + * <code>WriteGetObjectResponse</code> caller, typically an AWS Lambda function, + * can provide the same metadata when it internally invokes <code>GetObject</code>. + * When <code>WriteGetObjectResponse</code> is called by a customer-owned Lambda + * function, the metadata returned to the end user <code>GetObject</code> call + * might differ from what Amazon S3 would normally return.</p> <p>AWS provides some + * prebuilt Lambda functions that you can use with S3 Object Lambda to detect and + * redact personally identifiable information (PII) and decompress S3 objects. + * These Lambda functions are available in the AWS Serverless Application + * Repository, and can be selected through the AWS Management Console when you + * create your Object Lambda Access Point.</p> <p>Example 1: PII Access Control - + * This Lambda function uses Amazon Comprehend, a natural language processing (NLP) + * service using machine learning to find insights and relationships in text. It + * automatically detects personally identifiable information (PII) such as names, + * addresses, dates, credit card numbers, and social security numbers from + * documents in your Amazon S3 bucket. </p> <p>Example 2: PII Redaction - This + * Lambda function uses Amazon Comprehend, a natural language processing (NLP) + * service using machine learning to find insights and relationships in text. It + * automatically redacts personally identifiable information (PII) such as names, + * addresses, dates, credit card numbers, and social security numbers from + * documents in your Amazon S3 bucket. </p> <p>Example 3: Decompression - The + * Lambda function S3ObjectLambdaDecompression, is equipped to decompress objects + * stored in S3 in one of six compressed file formats including bzip2, gzip, + * snappy, zlib, zstandard and ZIP. </p> <p>For information on how to view and use + * these functions, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/olap-examples.html">Using + * AWS built Lambda functions</a> in the <i>Amazon S3 User Guide</i>.</p><p><h3>See + * Also:</h3> <a + * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/WriteGetObjectResponse">AWS + * API Reference</a></p> + * + * returns a future to the operation so that it can be executed in parallel to other requests. + */ + virtual Model::WriteGetObjectResponseOutcomeCallable WriteGetObjectResponseCallable(const Model::WriteGetObjectResponseRequest& request) const; + + /** + * <p>Passes transformed objects to a <code>GetObject</code> operation when using + * Object Lambda Access Points. For information about Object Lambda Access Points, + * see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/transforming-objects.html">Transforming + * objects with Object Lambda Access Points</a> in the <i>Amazon S3 User + * Guide</i>.</p> <p>This operation supports metadata that can be returned by <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html">GetObject</a>, + * in addition to <code>RequestRoute</code>, <code>RequestToken</code>, + * <code>StatusCode</code>, <code>ErrorCode</code>, and <code>ErrorMessage</code>. + * The <code>GetObject</code> response metadata is supported so that the + * <code>WriteGetObjectResponse</code> caller, typically an AWS Lambda function, + * can provide the same metadata when it internally invokes <code>GetObject</code>. + * When <code>WriteGetObjectResponse</code> is called by a customer-owned Lambda + * function, the metadata returned to the end user <code>GetObject</code> call + * might differ from what Amazon S3 would normally return.</p> <p>AWS provides some + * prebuilt Lambda functions that you can use with S3 Object Lambda to detect and + * redact personally identifiable information (PII) and decompress S3 objects. + * These Lambda functions are available in the AWS Serverless Application + * Repository, and can be selected through the AWS Management Console when you + * create your Object Lambda Access Point.</p> <p>Example 1: PII Access Control - + * This Lambda function uses Amazon Comprehend, a natural language processing (NLP) + * service using machine learning to find insights and relationships in text. It + * automatically detects personally identifiable information (PII) such as names, + * addresses, dates, credit card numbers, and social security numbers from + * documents in your Amazon S3 bucket. </p> <p>Example 2: PII Redaction - This + * Lambda function uses Amazon Comprehend, a natural language processing (NLP) + * service using machine learning to find insights and relationships in text. It + * automatically redacts personally identifiable information (PII) such as names, + * addresses, dates, credit card numbers, and social security numbers from + * documents in your Amazon S3 bucket. </p> <p>Example 3: Decompression - The + * Lambda function S3ObjectLambdaDecompression, is equipped to decompress objects + * stored in S3 in one of six compressed file formats including bzip2, gzip, + * snappy, zlib, zstandard and ZIP. </p> <p>For information on how to view and use + * these functions, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/olap-examples.html">Using + * AWS built Lambda functions</a> in the <i>Amazon S3 User Guide</i>.</p><p><h3>See + * Also:</h3> <a + * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/WriteGetObjectResponse">AWS + * API Reference</a></p> + * + * Queues the request into a thread executor and triggers associated callback when operation has finished. + */ + virtual void WriteGetObjectResponseAsync(const Model::WriteGetObjectResponseRequest& request, const WriteGetObjectResponseResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; + Aws::String GeneratePresignedUrl(const Aws::String& bucket, const Aws::String& key, Aws::Http::HttpMethod method, long long expirationInSeconds = MAX_EXPIRATION_SECONDS); @@ -10905,6 +11081,7 @@ namespace Aws void LoadS3SpecificConfig(const Aws::String& profile); ComputeEndpointOutcome ComputeEndpointString(const Aws::String& bucket) const; ComputeEndpointOutcome ComputeEndpointString() const; + ComputeEndpointOutcome ComputeEndpointStringWithServiceName(const Aws::String& serviceNameOverride = "") const; void AbortMultipartUploadAsyncHelper(const Model::AbortMultipartUploadRequest& request, const AbortMultipartUploadResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; void CompleteMultipartUploadAsyncHelper(const Model::CompleteMultipartUploadRequest& request, const CompleteMultipartUploadResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; @@ -10997,9 +11174,11 @@ namespace Aws void SelectObjectContentAsyncHelper(Model::SelectObjectContentRequest& request, const SelectObjectContentResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; void UploadPartAsyncHelper(const Model::UploadPartRequest& request, const UploadPartResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; void UploadPartCopyAsyncHelper(const Model::UploadPartCopyRequest& request, const UploadPartCopyResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; + void WriteGetObjectResponseAsyncHelper(const Model::WriteGetObjectResponseRequest& request, const WriteGetObjectResponseResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; Aws::String m_baseUri; Aws::String m_scheme; + bool m_enableHostPrefixInjection; Aws::String m_configScheme; std::shared_ptr<Utils::Threading::Executor> m_executor; bool m_useVirtualAddressing; diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/S3Endpoint.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/S3Endpoint.h index 9c41507218..64c2fc2c44 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/S3Endpoint.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/S3Endpoint.h @@ -22,22 +22,34 @@ namespace S3Endpoint * @param useDualStack Using dual-stack endpoint if true * @param USEast1UseRegionalEndpoint Using global endpoint for us-east-1 if the value is LEGACY, or using regional endpoint if it's REGIONAL */ - AWS_S3_API Aws::String ForRegion(const Aws::String& regionName, bool useDualStack = false, bool USEast1UseRegionalEndpoint = false); + AWS_S3_API Aws::String ForRegion(const Aws::String& regionName, bool useDualStack = false, bool USEast1UseRegionalEndpoint = false, const Aws::String& serviceName = ""); /** * Compute endpoint based on Access Point ARN. * @param arn The S3 Access Point ARN * @param regionNameOverride Override region name in ARN if it's not empty * @param useDualStack Using dual-stack endpoint if true + * @param endpointOverride Override endpoint if it's not empty */ - AWS_S3_API Aws::String ForAccessPointArn(const S3ARN& arn, const Aws::String& regionNameOverride = "", bool useDualStack = false); + AWS_S3_API Aws::String ForAccessPointArn(const S3ARN& arn, const Aws::String& regionNameOverride = "", bool useDualStack = false, const Aws::String& endpointOverride = ""); /** * Compute endpoint based on Outposts ARN. * @param arn The S3 Outposts ARN * @param regionNameOverride Override region name in ARN if it's not empty + * @param useDualStack Using dual-stack endpoint if true + * @param endpointOverride Override endpoint if it's not empty + */ + AWS_S3_API Aws::String ForOutpostsArn(const S3ARN& arn, const Aws::String& regionNameOverride = "", bool useDualStack = false, const Aws::String& endpointOverride = ""); + + /** + * Compute endpoint based on Object Lambda Access Point ARN. + * @param arn The S3 Object Lambda Access Point ARN + * @param regionNameOverride Override region name in ARN if it's not empty + * @param useDualStack Using dual-stack endpoint if true + * @param endpointOverride Override endpoint if it's not empty */ - AWS_S3_API Aws::String ForOutpostsArn(const S3ARN& arn, const Aws::String& regionNameOverride = ""); + AWS_S3_API Aws::String ForObjectLambdaAccessPointArn(const S3ARN& arn, const Aws::String& regionNameOverride = "", bool useDualStack = false, const Aws::String& endpointOverride = ""); } // namespace S3Endpoint } // namespace S3 } // namespace Aws diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AbortIncompleteMultipartUpload.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AbortIncompleteMultipartUpload.h index 25112f80a4..fb84bdcf68 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AbortIncompleteMultipartUpload.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AbortIncompleteMultipartUpload.h @@ -26,8 +26,7 @@ namespace Model * For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html#mpu-abort-incomplete-mpu-lifecycle-config"> * Aborting Incomplete Multipart Uploads Using a Bucket Lifecycle Policy</a> in the - * <i>Amazon Simple Storage Service Developer Guide</i>.</p><p><h3>See Also:</h3> - * <a + * <i>Amazon S3 User Guide</i>.</p><p><h3>See Also:</h3> <a * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/AbortIncompleteMultipartUpload">AWS * API Reference</a></p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AbortMultipartUploadRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AbortMultipartUploadRequest.h index 6fe4cb61f1..92e6d27ca6 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AbortMultipartUploadRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AbortMultipartUploadRequest.h @@ -44,185 +44,169 @@ namespace Model /** * <p>The bucket name to which the upload was taking place. </p> <p>When using this - * API with an access point, you must direct requests to the access point hostname. - * The access point hostname takes the form + * action with an access point, you must direct requests to the access point + * hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline const Aws::String& GetBucket() const{ return m_bucket; } /** * <p>The bucket name to which the upload was taking place. </p> <p>When using this - * API with an access point, you must direct requests to the access point hostname. - * The access point hostname takes the form + * action with an access point, you must direct requests to the access point + * hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; } /** * <p>The bucket name to which the upload was taking place. </p> <p>When using this - * API with an access point, you must direct requests to the access point hostname. - * The access point hostname takes the form + * action with an access point, you must direct requests to the access point + * hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; } /** * <p>The bucket name to which the upload was taking place. </p> <p>When using this - * API with an access point, you must direct requests to the access point hostname. - * The access point hostname takes the form + * action with an access point, you must direct requests to the access point + * hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); } /** * <p>The bucket name to which the upload was taking place. </p> <p>When using this - * API with an access point, you must direct requests to the access point hostname. - * The access point hostname takes the form + * action with an access point, you must direct requests to the access point + * hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); } /** * <p>The bucket name to which the upload was taking place. </p> <p>When using this - * API with an access point, you must direct requests to the access point hostname. - * The access point hostname takes the form + * action with an access point, you must direct requests to the access point + * hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline AbortMultipartUploadRequest& WithBucket(const Aws::String& value) { SetBucket(value); return *this;} /** * <p>The bucket name to which the upload was taking place. </p> <p>When using this - * API with an access point, you must direct requests to the access point hostname. - * The access point hostname takes the form + * action with an access point, you must direct requests to the access point + * hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline AbortMultipartUploadRequest& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;} /** * <p>The bucket name to which the upload was taking place. </p> <p>When using this - * API with an access point, you must direct requests to the access point hostname. - * The access point hostname takes the form + * action with an access point, you must direct requests to the access point + * hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline AbortMultipartUploadRequest& WithBucket(const char* value) { SetBucket(value); return *this;} @@ -329,56 +313,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline AbortMultipartUploadRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline AbortMultipartUploadRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AccelerateConfiguration.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AccelerateConfiguration.h index 924d3f602f..111ac83475 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AccelerateConfiguration.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AccelerateConfiguration.h @@ -26,8 +26,8 @@ namespace Model * <p>Configures the transfer acceleration state for an Amazon S3 bucket. For more * information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/transfer-acceleration.html">Amazon - * S3 Transfer Acceleration</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p><p><h3>See Also:</h3> <a + * S3 Transfer Acceleration</a> in the <i>Amazon S3 User Guide</i>.</p><p><h3>See + * Also:</h3> <a * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/AccelerateConfiguration">AWS * API Reference</a></p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/BucketLifecycleConfiguration.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/BucketLifecycleConfiguration.h index 5c16eef448..ee35f3fd9a 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/BucketLifecycleConfiguration.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/BucketLifecycleConfiguration.h @@ -27,8 +27,8 @@ namespace Model * <p>Specifies the lifecycle configuration for objects in an Amazon S3 bucket. For * more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html">Object - * Lifecycle Management</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p><p><h3>See Also:</h3> <a + * Lifecycle Management</a> in the <i>Amazon S3 User Guide</i>.</p><p><h3>See + * Also:</h3> <a * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/BucketLifecycleConfiguration">AWS * API Reference</a></p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CORSConfiguration.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CORSConfiguration.h index 86a8e41c0d..5280876ab3 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CORSConfiguration.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CORSConfiguration.h @@ -27,8 +27,8 @@ namespace Model * <p>Describes the cross-origin access configuration for objects in an Amazon S3 * bucket. For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/cors.html">Enabling - * Cross-Origin Resource Sharing</a> in the <i>Amazon Simple Storage Service - * Developer Guide</i>.</p><p><h3>See Also:</h3> <a + * Cross-Origin Resource Sharing</a> in the <i>Amazon S3 User + * Guide</i>.</p><p><h3>See Also:</h3> <a * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/CORSConfiguration">AWS * API Reference</a></p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CORSRule.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CORSRule.h index 7c725e2611..fd1808aa0a 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CORSRule.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CORSRule.h @@ -5,8 +5,8 @@ #pragma once #include <aws/s3/S3_EXPORTS.h> -#include <aws/core/utils/memory/stl/AWSVector.h> #include <aws/core/utils/memory/stl/AWSString.h> +#include <aws/core/utils/memory/stl/AWSVector.h> #include <utility> namespace Aws @@ -40,6 +40,55 @@ namespace Model /** + * <p>Unique identifier for the rule. The value cannot be longer than 255 + * characters.</p> + */ + inline const Aws::String& GetID() const{ return m_iD; } + + /** + * <p>Unique identifier for the rule. The value cannot be longer than 255 + * characters.</p> + */ + inline bool IDHasBeenSet() const { return m_iDHasBeenSet; } + + /** + * <p>Unique identifier for the rule. The value cannot be longer than 255 + * characters.</p> + */ + inline void SetID(const Aws::String& value) { m_iDHasBeenSet = true; m_iD = value; } + + /** + * <p>Unique identifier for the rule. The value cannot be longer than 255 + * characters.</p> + */ + inline void SetID(Aws::String&& value) { m_iDHasBeenSet = true; m_iD = std::move(value); } + + /** + * <p>Unique identifier for the rule. The value cannot be longer than 255 + * characters.</p> + */ + inline void SetID(const char* value) { m_iDHasBeenSet = true; m_iD.assign(value); } + + /** + * <p>Unique identifier for the rule. The value cannot be longer than 255 + * characters.</p> + */ + inline CORSRule& WithID(const Aws::String& value) { SetID(value); return *this;} + + /** + * <p>Unique identifier for the rule. The value cannot be longer than 255 + * characters.</p> + */ + inline CORSRule& WithID(Aws::String&& value) { SetID(std::move(value)); return *this;} + + /** + * <p>Unique identifier for the rule. The value cannot be longer than 255 + * characters.</p> + */ + inline CORSRule& WithID(const char* value) { SetID(value); return *this;} + + + /** * <p>Headers that are specified in the <code>Access-Control-Request-Headers</code> * header. These headers are allowed in a preflight OPTIONS request. In response to * any preflight OPTIONS request, Amazon S3 returns any requested headers that are @@ -321,6 +370,9 @@ namespace Model private: + Aws::String m_iD; + bool m_iDHasBeenSet; + Aws::Vector<Aws::String> m_allowedHeaders; bool m_allowedHeadersHasBeenSet; diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CompleteMultipartUploadRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CompleteMultipartUploadRequest.h index 0040297979..98e2ec2730 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CompleteMultipartUploadRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CompleteMultipartUploadRequest.h @@ -217,56 +217,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline CompleteMultipartUploadRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline CompleteMultipartUploadRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CompleteMultipartUploadResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CompleteMultipartUploadResult.h index ed995d2ea6..d5cf10ac2b 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CompleteMultipartUploadResult.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CompleteMultipartUploadResult.h @@ -72,162 +72,148 @@ namespace Model /** * <p>The name of the bucket that contains the newly created object.</p> <p>When - * using this API with an access point, you must direct requests to the access + * using this action with an access point, you must direct requests to the access * point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline const Aws::String& GetBucket() const{ return m_bucket; } /** * <p>The name of the bucket that contains the newly created object.</p> <p>When - * using this API with an access point, you must direct requests to the access + * using this action with an access point, you must direct requests to the access * point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(const Aws::String& value) { m_bucket = value; } /** * <p>The name of the bucket that contains the newly created object.</p> <p>When - * using this API with an access point, you must direct requests to the access + * using this action with an access point, you must direct requests to the access * point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(Aws::String&& value) { m_bucket = std::move(value); } /** * <p>The name of the bucket that contains the newly created object.</p> <p>When - * using this API with an access point, you must direct requests to the access + * using this action with an access point, you must direct requests to the access * point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(const char* value) { m_bucket.assign(value); } /** * <p>The name of the bucket that contains the newly created object.</p> <p>When - * using this API with an access point, you must direct requests to the access + * using this action with an access point, you must direct requests to the access * point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline CompleteMultipartUploadResult& WithBucket(const Aws::String& value) { SetBucket(value); return *this;} /** * <p>The name of the bucket that contains the newly created object.</p> <p>When - * using this API with an access point, you must direct requests to the access + * using this action with an access point, you must direct requests to the access * point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline CompleteMultipartUploadResult& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;} /** * <p>The name of the bucket that contains the newly created object.</p> <p>When - * using this API with an access point, you must direct requests to the access + * using this action with an access point, you must direct requests to the access * point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline CompleteMultipartUploadResult& WithBucket(const char* value) { SetBucket(value); return *this;} diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Condition.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Condition.h index 2bfaeccf84..3dd8f8afe6 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Condition.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Condition.h @@ -122,7 +122,11 @@ namespace Model * all objects in the <code>docs/</code> folder. Required when the parent element * <code>Condition</code> is specified and sibling * <code>HttpErrorCodeReturnedEquals</code> is not specified. If both conditions - * are specified, both must be true for the redirect to be applied.</p> + * are specified, both must be true for the redirect to be applied.</p> + * <p>Replacement must be made for object keys containing special characters (such + * as carriage returns) when using XML requests. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline const Aws::String& GetKeyPrefixEquals() const{ return m_keyPrefixEquals; } @@ -134,7 +138,11 @@ namespace Model * all objects in the <code>docs/</code> folder. Required when the parent element * <code>Condition</code> is specified and sibling * <code>HttpErrorCodeReturnedEquals</code> is not specified. If both conditions - * are specified, both must be true for the redirect to be applied.</p> + * are specified, both must be true for the redirect to be applied.</p> + * <p>Replacement must be made for object keys containing special characters (such + * as carriage returns) when using XML requests. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline bool KeyPrefixEqualsHasBeenSet() const { return m_keyPrefixEqualsHasBeenSet; } @@ -146,7 +154,11 @@ namespace Model * all objects in the <code>docs/</code> folder. Required when the parent element * <code>Condition</code> is specified and sibling * <code>HttpErrorCodeReturnedEquals</code> is not specified. If both conditions - * are specified, both must be true for the redirect to be applied.</p> + * are specified, both must be true for the redirect to be applied.</p> + * <p>Replacement must be made for object keys containing special characters (such + * as carriage returns) when using XML requests. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline void SetKeyPrefixEquals(const Aws::String& value) { m_keyPrefixEqualsHasBeenSet = true; m_keyPrefixEquals = value; } @@ -158,7 +170,11 @@ namespace Model * all objects in the <code>docs/</code> folder. Required when the parent element * <code>Condition</code> is specified and sibling * <code>HttpErrorCodeReturnedEquals</code> is not specified. If both conditions - * are specified, both must be true for the redirect to be applied.</p> + * are specified, both must be true for the redirect to be applied.</p> + * <p>Replacement must be made for object keys containing special characters (such + * as carriage returns) when using XML requests. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline void SetKeyPrefixEquals(Aws::String&& value) { m_keyPrefixEqualsHasBeenSet = true; m_keyPrefixEquals = std::move(value); } @@ -170,7 +186,11 @@ namespace Model * all objects in the <code>docs/</code> folder. Required when the parent element * <code>Condition</code> is specified and sibling * <code>HttpErrorCodeReturnedEquals</code> is not specified. If both conditions - * are specified, both must be true for the redirect to be applied.</p> + * are specified, both must be true for the redirect to be applied.</p> + * <p>Replacement must be made for object keys containing special characters (such + * as carriage returns) when using XML requests. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline void SetKeyPrefixEquals(const char* value) { m_keyPrefixEqualsHasBeenSet = true; m_keyPrefixEquals.assign(value); } @@ -182,7 +202,11 @@ namespace Model * all objects in the <code>docs/</code> folder. Required when the parent element * <code>Condition</code> is specified and sibling * <code>HttpErrorCodeReturnedEquals</code> is not specified. If both conditions - * are specified, both must be true for the redirect to be applied.</p> + * are specified, both must be true for the redirect to be applied.</p> + * <p>Replacement must be made for object keys containing special characters (such + * as carriage returns) when using XML requests. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline Condition& WithKeyPrefixEquals(const Aws::String& value) { SetKeyPrefixEquals(value); return *this;} @@ -194,7 +218,11 @@ namespace Model * all objects in the <code>docs/</code> folder. Required when the parent element * <code>Condition</code> is specified and sibling * <code>HttpErrorCodeReturnedEquals</code> is not specified. If both conditions - * are specified, both must be true for the redirect to be applied.</p> + * are specified, both must be true for the redirect to be applied.</p> + * <p>Replacement must be made for object keys containing special characters (such + * as carriage returns) when using XML requests. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline Condition& WithKeyPrefixEquals(Aws::String&& value) { SetKeyPrefixEquals(std::move(value)); return *this;} @@ -206,7 +234,11 @@ namespace Model * all objects in the <code>docs/</code> folder. Required when the parent element * <code>Condition</code> is specified and sibling * <code>HttpErrorCodeReturnedEquals</code> is not specified. If both conditions - * are specified, both must be true for the redirect to be applied.</p> + * are specified, both must be true for the redirect to be applied.</p> + * <p>Replacement must be made for object keys containing special characters (such + * as carriage returns) when using XML requests. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline Condition& WithKeyPrefixEquals(const char* value) { SetKeyPrefixEquals(value); return *this;} diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CopyObjectRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CopyObjectRequest.h index d704b0708b..ccb52d1e7c 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CopyObjectRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CopyObjectRequest.h @@ -88,186 +88,170 @@ namespace Model /** - * <p>The name of the destination bucket.</p> <p>When using this API with an access - * point, you must direct requests to the access point hostname. The access point - * hostname takes the form + * <p>The name of the destination bucket.</p> <p>When using this action with an + * access point, you must direct requests to the access point hostname. The access + * point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline const Aws::String& GetBucket() const{ return m_bucket; } /** - * <p>The name of the destination bucket.</p> <p>When using this API with an access - * point, you must direct requests to the access point hostname. The access point - * hostname takes the form + * <p>The name of the destination bucket.</p> <p>When using this action with an + * access point, you must direct requests to the access point hostname. The access + * point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; } /** - * <p>The name of the destination bucket.</p> <p>When using this API with an access - * point, you must direct requests to the access point hostname. The access point - * hostname takes the form + * <p>The name of the destination bucket.</p> <p>When using this action with an + * access point, you must direct requests to the access point hostname. The access + * point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; } /** - * <p>The name of the destination bucket.</p> <p>When using this API with an access - * point, you must direct requests to the access point hostname. The access point - * hostname takes the form + * <p>The name of the destination bucket.</p> <p>When using this action with an + * access point, you must direct requests to the access point hostname. The access + * point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); } /** - * <p>The name of the destination bucket.</p> <p>When using this API with an access - * point, you must direct requests to the access point hostname. The access point - * hostname takes the form + * <p>The name of the destination bucket.</p> <p>When using this action with an + * access point, you must direct requests to the access point hostname. The access + * point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); } /** - * <p>The name of the destination bucket.</p> <p>When using this API with an access - * point, you must direct requests to the access point hostname. The access point - * hostname takes the form + * <p>The name of the destination bucket.</p> <p>When using this action with an + * access point, you must direct requests to the access point hostname. The access + * point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline CopyObjectRequest& WithBucket(const Aws::String& value) { SetBucket(value); return *this;} /** - * <p>The name of the destination bucket.</p> <p>When using this API with an access - * point, you must direct requests to the access point hostname. The access point - * hostname takes the form + * <p>The name of the destination bucket.</p> <p>When using this action with an + * access point, you must direct requests to the access point hostname. The access + * point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline CopyObjectRequest& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;} /** - * <p>The name of the destination bucket.</p> <p>When using this API with an access - * point, you must direct requests to the access point hostname. The access point - * hostname takes the form + * <p>The name of the destination bucket.</p> <p>When using this action with an + * access point, you must direct requests to the access point hostname. The access + * point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline CopyObjectRequest& WithBucket(const char* value) { SetBucket(value); return *this;} @@ -497,7 +481,7 @@ namespace Model * <p>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 <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/access-points.html">access + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-points.html">access * point</a>:</p> <ul> <li> <p>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 @@ -533,7 +517,7 @@ namespace Model * <p>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 <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/access-points.html">access + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-points.html">access * point</a>:</p> <ul> <li> <p>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 @@ -569,7 +553,7 @@ namespace Model * <p>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 <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/access-points.html">access + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-points.html">access * point</a>:</p> <ul> <li> <p>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 @@ -605,7 +589,7 @@ namespace Model * <p>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 <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/access-points.html">access + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-points.html">access * point</a>:</p> <ul> <li> <p>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 @@ -641,7 +625,7 @@ namespace Model * <p>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 <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/access-points.html">access + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-points.html">access * point</a>:</p> <ul> <li> <p>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 @@ -677,7 +661,7 @@ namespace Model * <p>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 <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/access-points.html">access + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-points.html">access * point</a>:</p> <ul> <li> <p>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 @@ -713,7 +697,7 @@ namespace Model * <p>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 <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/access-points.html">access + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-points.html">access * point</a>:</p> <ul> <li> <p>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 @@ -749,7 +733,7 @@ namespace Model * <p>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 <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/access-points.html">access + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-points.html">access * point</a>:</p> <ul> <li> <p>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 @@ -1832,8 +1816,8 @@ namespace Model * <p>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 * <code>true</code> causes Amazon S3 to use an S3 Bucket Key for object encryption - * with SSE-KMS. </p> <p>Specifying this header with a COPY operation doesn’t - * affect bucket-level settings for S3 Bucket Key.</p> + * with SSE-KMS. </p> <p>Specifying this header with a COPY action doesn’t affect + * bucket-level settings for S3 Bucket Key.</p> */ inline bool GetBucketKeyEnabled() const{ return m_bucketKeyEnabled; } @@ -1841,8 +1825,8 @@ namespace Model * <p>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 * <code>true</code> causes Amazon S3 to use an S3 Bucket Key for object encryption - * with SSE-KMS. </p> <p>Specifying this header with a COPY operation doesn’t - * affect bucket-level settings for S3 Bucket Key.</p> + * with SSE-KMS. </p> <p>Specifying this header with a COPY action doesn’t affect + * bucket-level settings for S3 Bucket Key.</p> */ inline bool BucketKeyEnabledHasBeenSet() const { return m_bucketKeyEnabledHasBeenSet; } @@ -1850,8 +1834,8 @@ namespace Model * <p>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 * <code>true</code> causes Amazon S3 to use an S3 Bucket Key for object encryption - * with SSE-KMS. </p> <p>Specifying this header with a COPY operation doesn’t - * affect bucket-level settings for S3 Bucket Key.</p> + * with SSE-KMS. </p> <p>Specifying this header with a COPY action doesn’t affect + * bucket-level settings for S3 Bucket Key.</p> */ inline void SetBucketKeyEnabled(bool value) { m_bucketKeyEnabledHasBeenSet = true; m_bucketKeyEnabled = value; } @@ -1859,8 +1843,8 @@ namespace Model * <p>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 * <code>true</code> causes Amazon S3 to use an S3 Bucket Key for object encryption - * with SSE-KMS. </p> <p>Specifying this header with a COPY operation doesn’t - * affect bucket-level settings for S3 Bucket Key.</p> + * with SSE-KMS. </p> <p>Specifying this header with a COPY action doesn’t affect + * bucket-level settings for S3 Bucket Key.</p> */ inline CopyObjectRequest& WithBucketKeyEnabled(bool value) { SetBucketKeyEnabled(value); return *this;} @@ -2204,56 +2188,56 @@ namespace Model /** - * <p>The account id of the expected destination bucket owner. If the destination + * <p>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 * <code>403 (Access Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected destination bucket owner. If the destination + * <p>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 * <code>403 (Access Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected destination bucket owner. If the destination + * <p>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 * <code>403 (Access Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected destination bucket owner. If the destination + * <p>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 * <code>403 (Access Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected destination bucket owner. If the destination + * <p>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 * <code>403 (Access Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected destination bucket owner. If the destination + * <p>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 * <code>403 (Access Denied)</code> error.</p> */ inline CopyObjectRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected destination bucket owner. If the destination + * <p>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 * <code>403 (Access Denied)</code> error.</p> */ inline CopyObjectRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected destination bucket owner. If the destination + * <p>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 * <code>403 (Access Denied)</code> error.</p> */ @@ -2261,56 +2245,56 @@ namespace Model /** - * <p>The account id of the expected source bucket owner. If the source bucket is + * <p>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 <code>403 * (Access Denied)</code> error.</p> */ inline const Aws::String& GetExpectedSourceBucketOwner() const{ return m_expectedSourceBucketOwner; } /** - * <p>The account id of the expected source bucket owner. If the source bucket is + * <p>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 <code>403 * (Access Denied)</code> error.</p> */ inline bool ExpectedSourceBucketOwnerHasBeenSet() const { return m_expectedSourceBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected source bucket owner. If the source bucket is + * <p>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 <code>403 * (Access Denied)</code> error.</p> */ inline void SetExpectedSourceBucketOwner(const Aws::String& value) { m_expectedSourceBucketOwnerHasBeenSet = true; m_expectedSourceBucketOwner = value; } /** - * <p>The account id of the expected source bucket owner. If the source bucket is + * <p>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 <code>403 * (Access Denied)</code> error.</p> */ inline void SetExpectedSourceBucketOwner(Aws::String&& value) { m_expectedSourceBucketOwnerHasBeenSet = true; m_expectedSourceBucketOwner = std::move(value); } /** - * <p>The account id of the expected source bucket owner. If the source bucket is + * <p>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 <code>403 * (Access Denied)</code> error.</p> */ inline void SetExpectedSourceBucketOwner(const char* value) { m_expectedSourceBucketOwnerHasBeenSet = true; m_expectedSourceBucketOwner.assign(value); } /** - * <p>The account id of the expected source bucket owner. If the source bucket is + * <p>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 <code>403 * (Access Denied)</code> error.</p> */ inline CopyObjectRequest& WithExpectedSourceBucketOwner(const Aws::String& value) { SetExpectedSourceBucketOwner(value); return *this;} /** - * <p>The account id of the expected source bucket owner. If the source bucket is + * <p>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 <code>403 * (Access Denied)</code> error.</p> */ inline CopyObjectRequest& WithExpectedSourceBucketOwner(Aws::String&& value) { SetExpectedSourceBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected source bucket owner. If the source bucket is + * <p>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 <code>403 * (Access Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CopyObjectResultDetails.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CopyObjectResultDetails.h index 9c9c0f47dd..69187574c3 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CopyObjectResultDetails.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CopyObjectResultDetails.h @@ -41,87 +41,87 @@ namespace Model /** * <p>Returns the ETag of the new object. The ETag reflects only changes to the * contents of an object, not its metadata. The source and destination ETag is - * identical for a successfully copied object.</p> + * identical for a successfully copied non-multipart object.</p> */ inline const Aws::String& GetETag() const{ return m_eTag; } /** * <p>Returns the ETag of the new object. The ETag reflects only changes to the * contents of an object, not its metadata. The source and destination ETag is - * identical for a successfully copied object.</p> + * identical for a successfully copied non-multipart object.</p> */ inline bool ETagHasBeenSet() const { return m_eTagHasBeenSet; } /** * <p>Returns the ETag of the new object. The ETag reflects only changes to the * contents of an object, not its metadata. The source and destination ETag is - * identical for a successfully copied object.</p> + * identical for a successfully copied non-multipart object.</p> */ inline void SetETag(const Aws::String& value) { m_eTagHasBeenSet = true; m_eTag = value; } /** * <p>Returns the ETag of the new object. The ETag reflects only changes to the * contents of an object, not its metadata. The source and destination ETag is - * identical for a successfully copied object.</p> + * identical for a successfully copied non-multipart object.</p> */ inline void SetETag(Aws::String&& value) { m_eTagHasBeenSet = true; m_eTag = std::move(value); } /** * <p>Returns the ETag of the new object. The ETag reflects only changes to the * contents of an object, not its metadata. The source and destination ETag is - * identical for a successfully copied object.</p> + * identical for a successfully copied non-multipart object.</p> */ inline void SetETag(const char* value) { m_eTagHasBeenSet = true; m_eTag.assign(value); } /** * <p>Returns the ETag of the new object. The ETag reflects only changes to the * contents of an object, not its metadata. The source and destination ETag is - * identical for a successfully copied object.</p> + * identical for a successfully copied non-multipart object.</p> */ inline CopyObjectResultDetails& WithETag(const Aws::String& value) { SetETag(value); return *this;} /** * <p>Returns the ETag of the new object. The ETag reflects only changes to the * contents of an object, not its metadata. The source and destination ETag is - * identical for a successfully copied object.</p> + * identical for a successfully copied non-multipart object.</p> */ inline CopyObjectResultDetails& WithETag(Aws::String&& value) { SetETag(std::move(value)); return *this;} /** * <p>Returns the ETag of the new object. The ETag reflects only changes to the * contents of an object, not its metadata. The source and destination ETag is - * identical for a successfully copied object.</p> + * identical for a successfully copied non-multipart object.</p> */ inline CopyObjectResultDetails& WithETag(const char* value) { SetETag(value); return *this;} /** - * <p>Returns the date that the object was last modified.</p> + * <p>Creation date of the object.</p> */ inline const Aws::Utils::DateTime& GetLastModified() const{ return m_lastModified; } /** - * <p>Returns the date that the object was last modified.</p> + * <p>Creation date of the object.</p> */ inline bool LastModifiedHasBeenSet() const { return m_lastModifiedHasBeenSet; } /** - * <p>Returns the date that the object was last modified.</p> + * <p>Creation date of the object.</p> */ inline void SetLastModified(const Aws::Utils::DateTime& value) { m_lastModifiedHasBeenSet = true; m_lastModified = value; } /** - * <p>Returns the date that the object was last modified.</p> + * <p>Creation date of the object.</p> */ inline void SetLastModified(Aws::Utils::DateTime&& value) { m_lastModifiedHasBeenSet = true; m_lastModified = std::move(value); } /** - * <p>Returns the date that the object was last modified.</p> + * <p>Creation date of the object.</p> */ inline CopyObjectResultDetails& WithLastModified(const Aws::Utils::DateTime& value) { SetLastModified(value); return *this;} /** - * <p>Returns the date that the object was last modified.</p> + * <p>Creation date of the object.</p> */ inline CopyObjectResultDetails& WithLastModified(Aws::Utils::DateTime&& value) { SetLastModified(std::move(value)); return *this;} diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CreateMultipartUploadRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CreateMultipartUploadRequest.h index 0a5608dff5..aafe4dc650 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CreateMultipartUploadRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CreateMultipartUploadRequest.h @@ -87,185 +87,169 @@ namespace Model /** * <p>The name of the bucket to which to initiate the upload</p> <p>When using this - * API with an access point, you must direct requests to the access point hostname. - * The access point hostname takes the form + * action with an access point, you must direct requests to the access point + * hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline const Aws::String& GetBucket() const{ return m_bucket; } /** * <p>The name of the bucket to which to initiate the upload</p> <p>When using this - * API with an access point, you must direct requests to the access point hostname. - * The access point hostname takes the form + * action with an access point, you must direct requests to the access point + * hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; } /** * <p>The name of the bucket to which to initiate the upload</p> <p>When using this - * API with an access point, you must direct requests to the access point hostname. - * The access point hostname takes the form + * action with an access point, you must direct requests to the access point + * hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; } /** * <p>The name of the bucket to which to initiate the upload</p> <p>When using this - * API with an access point, you must direct requests to the access point hostname. - * The access point hostname takes the form + * action with an access point, you must direct requests to the access point + * hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); } /** * <p>The name of the bucket to which to initiate the upload</p> <p>When using this - * API with an access point, you must direct requests to the access point hostname. - * The access point hostname takes the form + * action with an access point, you must direct requests to the access point + * hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); } /** * <p>The name of the bucket to which to initiate the upload</p> <p>When using this - * API with an access point, you must direct requests to the access point hostname. - * The access point hostname takes the form + * action with an access point, you must direct requests to the access point + * hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline CreateMultipartUploadRequest& WithBucket(const Aws::String& value) { SetBucket(value); return *this;} /** * <p>The name of the bucket to which to initiate the upload</p> <p>When using this - * API with an access point, you must direct requests to the access point hostname. - * The access point hostname takes the form + * action with an access point, you must direct requests to the access point + * hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline CreateMultipartUploadRequest& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;} /** * <p>The name of the bucket to which to initiate the upload</p> <p>When using this - * API with an access point, you must direct requests to the access point hostname. - * The access point hostname takes the form + * action with an access point, you must direct requests to the access point + * hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline CreateMultipartUploadRequest& WithBucket(const char* value) { SetBucket(value); return *this;} @@ -1170,7 +1154,7 @@ namespace Model * object encryption. All GET and PUT requests for an object protected by AWS KMS * will fail if not made via SSL or using SigV4. For information about configuring * using any of the officially supported AWS SDKs and AWS CLI, see <a - * href="https://docs.aws.amazon.com/http:/docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version">Specifying + * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version">Specifying * the Signature Version in Request Authentication</a> in the <i>Amazon S3 * Developer Guide</i>.</p> */ @@ -1181,7 +1165,7 @@ namespace Model * object encryption. All GET and PUT requests for an object protected by AWS KMS * will fail if not made via SSL or using SigV4. For information about configuring * using any of the officially supported AWS SDKs and AWS CLI, see <a - * href="https://docs.aws.amazon.com/http:/docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version">Specifying + * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version">Specifying * the Signature Version in Request Authentication</a> in the <i>Amazon S3 * Developer Guide</i>.</p> */ @@ -1192,7 +1176,7 @@ namespace Model * object encryption. All GET and PUT requests for an object protected by AWS KMS * will fail if not made via SSL or using SigV4. For information about configuring * using any of the officially supported AWS SDKs and AWS CLI, see <a - * href="https://docs.aws.amazon.com/http:/docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version">Specifying + * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version">Specifying * the Signature Version in Request Authentication</a> in the <i>Amazon S3 * Developer Guide</i>.</p> */ @@ -1203,7 +1187,7 @@ namespace Model * object encryption. All GET and PUT requests for an object protected by AWS KMS * will fail if not made via SSL or using SigV4. For information about configuring * using any of the officially supported AWS SDKs and AWS CLI, see <a - * href="https://docs.aws.amazon.com/http:/docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version">Specifying + * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version">Specifying * the Signature Version in Request Authentication</a> in the <i>Amazon S3 * Developer Guide</i>.</p> */ @@ -1214,7 +1198,7 @@ namespace Model * object encryption. All GET and PUT requests for an object protected by AWS KMS * will fail if not made via SSL or using SigV4. For information about configuring * using any of the officially supported AWS SDKs and AWS CLI, see <a - * href="https://docs.aws.amazon.com/http:/docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version">Specifying + * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version">Specifying * the Signature Version in Request Authentication</a> in the <i>Amazon S3 * Developer Guide</i>.</p> */ @@ -1225,7 +1209,7 @@ namespace Model * object encryption. All GET and PUT requests for an object protected by AWS KMS * will fail if not made via SSL or using SigV4. For information about configuring * using any of the officially supported AWS SDKs and AWS CLI, see <a - * href="https://docs.aws.amazon.com/http:/docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version">Specifying + * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version">Specifying * the Signature Version in Request Authentication</a> in the <i>Amazon S3 * Developer Guide</i>.</p> */ @@ -1236,7 +1220,7 @@ namespace Model * object encryption. All GET and PUT requests for an object protected by AWS KMS * will fail if not made via SSL or using SigV4. For information about configuring * using any of the officially supported AWS SDKs and AWS CLI, see <a - * href="https://docs.aws.amazon.com/http:/docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version">Specifying + * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version">Specifying * the Signature Version in Request Authentication</a> in the <i>Amazon S3 * Developer Guide</i>.</p> */ @@ -1247,7 +1231,7 @@ namespace Model * object encryption. All GET and PUT requests for an object protected by AWS KMS * will fail if not made via SSL or using SigV4. For information about configuring * using any of the officially supported AWS SDKs and AWS CLI, see <a - * href="https://docs.aws.amazon.com/http:/docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version">Specifying + * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version">Specifying * the Signature Version in Request Authentication</a> in the <i>Amazon S3 * Developer Guide</i>.</p> */ @@ -1315,8 +1299,8 @@ namespace Model * <p>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 * <code>true</code> causes Amazon S3 to use an S3 Bucket Key for object encryption - * with SSE-KMS.</p> <p>Specifying this header with an object operation doesn’t - * affect bucket-level settings for S3 Bucket Key.</p> + * with SSE-KMS.</p> <p>Specifying this header with an object action doesn’t affect + * bucket-level settings for S3 Bucket Key.</p> */ inline bool GetBucketKeyEnabled() const{ return m_bucketKeyEnabled; } @@ -1324,8 +1308,8 @@ namespace Model * <p>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 * <code>true</code> causes Amazon S3 to use an S3 Bucket Key for object encryption - * with SSE-KMS.</p> <p>Specifying this header with an object operation doesn’t - * affect bucket-level settings for S3 Bucket Key.</p> + * with SSE-KMS.</p> <p>Specifying this header with an object action doesn’t affect + * bucket-level settings for S3 Bucket Key.</p> */ inline bool BucketKeyEnabledHasBeenSet() const { return m_bucketKeyEnabledHasBeenSet; } @@ -1333,8 +1317,8 @@ namespace Model * <p>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 * <code>true</code> causes Amazon S3 to use an S3 Bucket Key for object encryption - * with SSE-KMS.</p> <p>Specifying this header with an object operation doesn’t - * affect bucket-level settings for S3 Bucket Key.</p> + * with SSE-KMS.</p> <p>Specifying this header with an object action doesn’t affect + * bucket-level settings for S3 Bucket Key.</p> */ inline void SetBucketKeyEnabled(bool value) { m_bucketKeyEnabledHasBeenSet = true; m_bucketKeyEnabled = value; } @@ -1342,8 +1326,8 @@ namespace Model * <p>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 * <code>true</code> causes Amazon S3 to use an S3 Bucket Key for object encryption - * with SSE-KMS.</p> <p>Specifying this header with an object operation doesn’t - * affect bucket-level settings for S3 Bucket Key.</p> + * with SSE-KMS.</p> <p>Specifying this header with an object action doesn’t affect + * bucket-level settings for S3 Bucket Key.</p> */ inline CreateMultipartUploadRequest& WithBucketKeyEnabled(bool value) { SetBucketKeyEnabled(value); return *this;} @@ -1516,56 +1500,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline CreateMultipartUploadRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline CreateMultipartUploadRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CreateMultipartUploadResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CreateMultipartUploadResult.h index f4692da0e8..49f002f3b7 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CreateMultipartUploadResult.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CreateMultipartUploadResult.h @@ -158,162 +158,148 @@ namespace Model /** * <p>The name of the bucket to which the multipart upload was initiated. </p> - * <p>When using this API with an access point, you must direct requests to the + * <p>When using this action with an access point, you must direct requests to the * access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline const Aws::String& GetBucket() const{ return m_bucket; } /** * <p>The name of the bucket to which the multipart upload was initiated. </p> - * <p>When using this API with an access point, you must direct requests to the + * <p>When using this action with an access point, you must direct requests to the * access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(const Aws::String& value) { m_bucket = value; } /** * <p>The name of the bucket to which the multipart upload was initiated. </p> - * <p>When using this API with an access point, you must direct requests to the + * <p>When using this action with an access point, you must direct requests to the * access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(Aws::String&& value) { m_bucket = std::move(value); } /** * <p>The name of the bucket to which the multipart upload was initiated. </p> - * <p>When using this API with an access point, you must direct requests to the + * <p>When using this action with an access point, you must direct requests to the * access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(const char* value) { m_bucket.assign(value); } /** * <p>The name of the bucket to which the multipart upload was initiated. </p> - * <p>When using this API with an access point, you must direct requests to the + * <p>When using this action with an access point, you must direct requests to the * access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline CreateMultipartUploadResult& WithBucket(const Aws::String& value) { SetBucket(value); return *this;} /** * <p>The name of the bucket to which the multipart upload was initiated. </p> - * <p>When using this API with an access point, you must direct requests to the + * <p>When using this action with an access point, you must direct requests to the * access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline CreateMultipartUploadResult& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;} /** * <p>The name of the bucket to which the multipart upload was initiated. </p> - * <p>When using this API with an access point, you must direct requests to the + * <p>When using this action with an access point, you must direct requests to the * access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline CreateMultipartUploadResult& WithBucket(const char* value) { SetBucket(value); return *this;} diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DefaultRetention.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DefaultRetention.h index a8e3c5db65..582f90c903 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DefaultRetention.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DefaultRetention.h @@ -24,8 +24,12 @@ namespace Model /** * <p>The container element for specifying the default Object Lock retention - * settings for new objects placed in the specified bucket.</p><p><h3>See - * Also:</h3> <a + * settings for new objects placed in the specified bucket.</p> <ul> <li> + * <p>The <code>DefaultRetention</code> settings require both a mode and a + * period.</p> </li> <li> <p>The <code>DefaultRetention</code> period can be either + * <code>Days</code> or <code>Years</code> but you must select one. You cannot + * specify <code>Days</code> and <code>Years</code> at the same time.</p> </li> + * </ul> <p><h3>See Also:</h3> <a * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DefaultRetention">AWS * API Reference</a></p> */ @@ -41,87 +45,93 @@ namespace Model /** * <p>The default Object Lock retention mode you want to apply to new objects - * placed in the specified bucket.</p> + * placed in the specified bucket. Must be used with either <code>Days</code> or + * <code>Years</code>.</p> */ inline const ObjectLockRetentionMode& GetMode() const{ return m_mode; } /** * <p>The default Object Lock retention mode you want to apply to new objects - * placed in the specified bucket.</p> + * placed in the specified bucket. Must be used with either <code>Days</code> or + * <code>Years</code>.</p> */ inline bool ModeHasBeenSet() const { return m_modeHasBeenSet; } /** * <p>The default Object Lock retention mode you want to apply to new objects - * placed in the specified bucket.</p> + * placed in the specified bucket. Must be used with either <code>Days</code> or + * <code>Years</code>.</p> */ inline void SetMode(const ObjectLockRetentionMode& value) { m_modeHasBeenSet = true; m_mode = value; } /** * <p>The default Object Lock retention mode you want to apply to new objects - * placed in the specified bucket.</p> + * placed in the specified bucket. Must be used with either <code>Days</code> or + * <code>Years</code>.</p> */ inline void SetMode(ObjectLockRetentionMode&& value) { m_modeHasBeenSet = true; m_mode = std::move(value); } /** * <p>The default Object Lock retention mode you want to apply to new objects - * placed in the specified bucket.</p> + * placed in the specified bucket. Must be used with either <code>Days</code> or + * <code>Years</code>.</p> */ inline DefaultRetention& WithMode(const ObjectLockRetentionMode& value) { SetMode(value); return *this;} /** * <p>The default Object Lock retention mode you want to apply to new objects - * placed in the specified bucket.</p> + * placed in the specified bucket. Must be used with either <code>Days</code> or + * <code>Years</code>.</p> */ inline DefaultRetention& WithMode(ObjectLockRetentionMode&& value) { SetMode(std::move(value)); return *this;} /** - * <p>The number of days that you want to specify for the default retention - * period.</p> + * <p>The number of days that you want to specify for the default retention period. + * Must be used with <code>Mode</code>.</p> */ inline int GetDays() const{ return m_days; } /** - * <p>The number of days that you want to specify for the default retention - * period.</p> + * <p>The number of days that you want to specify for the default retention period. + * Must be used with <code>Mode</code>.</p> */ inline bool DaysHasBeenSet() const { return m_daysHasBeenSet; } /** - * <p>The number of days that you want to specify for the default retention - * period.</p> + * <p>The number of days that you want to specify for the default retention period. + * Must be used with <code>Mode</code>.</p> */ inline void SetDays(int value) { m_daysHasBeenSet = true; m_days = value; } /** - * <p>The number of days that you want to specify for the default retention - * period.</p> + * <p>The number of days that you want to specify for the default retention period. + * Must be used with <code>Mode</code>.</p> */ inline DefaultRetention& WithDays(int value) { SetDays(value); return *this;} /** * <p>The number of years that you want to specify for the default retention - * period.</p> + * period. Must be used with <code>Mode</code>.</p> */ inline int GetYears() const{ return m_years; } /** * <p>The number of years that you want to specify for the default retention - * period.</p> + * period. Must be used with <code>Mode</code>.</p> */ inline bool YearsHasBeenSet() const { return m_yearsHasBeenSet; } /** * <p>The number of years that you want to specify for the default retention - * period.</p> + * period. Must be used with <code>Mode</code>.</p> */ inline void SetYears(int value) { m_yearsHasBeenSet = true; m_years = value; } /** * <p>The number of years that you want to specify for the default retention - * period.</p> + * period. Must be used with <code>Mode</code>.</p> */ inline DefaultRetention& WithYears(int value) { SetYears(value); return *this;} diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketAnalyticsConfigurationRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketAnalyticsConfigurationRequest.h index c1c6240f43..cfefbb8802 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketAnalyticsConfigurationRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketAnalyticsConfigurationRequest.h @@ -124,56 +124,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline DeleteBucketAnalyticsConfigurationRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline DeleteBucketAnalyticsConfigurationRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketCorsRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketCorsRequest.h index 6fecd43b08..e1199271c0 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketCorsRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketCorsRequest.h @@ -91,56 +91,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline DeleteBucketCorsRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline DeleteBucketCorsRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketEncryptionRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketEncryptionRequest.h index 38740e4b41..2ca332dccb 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketEncryptionRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketEncryptionRequest.h @@ -91,56 +91,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline DeleteBucketEncryptionRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline DeleteBucketEncryptionRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketInventoryConfigurationRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketInventoryConfigurationRequest.h index 09d13f4a8b..3cc56c6504 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketInventoryConfigurationRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketInventoryConfigurationRequest.h @@ -124,56 +124,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline DeleteBucketInventoryConfigurationRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline DeleteBucketInventoryConfigurationRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketLifecycleRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketLifecycleRequest.h index 758f523153..c69d339d6b 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketLifecycleRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketLifecycleRequest.h @@ -83,56 +83,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline DeleteBucketLifecycleRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline DeleteBucketLifecycleRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketMetricsConfigurationRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketMetricsConfigurationRequest.h index 18bbf7cdb6..ce8a0b333f 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketMetricsConfigurationRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketMetricsConfigurationRequest.h @@ -124,56 +124,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline DeleteBucketMetricsConfigurationRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline DeleteBucketMetricsConfigurationRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketOwnershipControlsRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketOwnershipControlsRequest.h index 69f529f94b..aab2947698 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketOwnershipControlsRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketOwnershipControlsRequest.h @@ -91,56 +91,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline DeleteBucketOwnershipControlsRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline DeleteBucketOwnershipControlsRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketPolicyRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketPolicyRequest.h index 3b2dfe5976..cde2a99893 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketPolicyRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketPolicyRequest.h @@ -83,56 +83,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline DeleteBucketPolicyRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline DeleteBucketPolicyRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketReplicationRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketReplicationRequest.h index 311a97bdea..37c1fbe834 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketReplicationRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketReplicationRequest.h @@ -83,56 +83,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline DeleteBucketReplicationRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline DeleteBucketReplicationRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketRequest.h index 08950393ce..e7daf51d74 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketRequest.h @@ -83,56 +83,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline DeleteBucketRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline DeleteBucketRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketTaggingRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketTaggingRequest.h index 7640c5bac2..54355c04fc 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketTaggingRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketTaggingRequest.h @@ -83,56 +83,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline DeleteBucketTaggingRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline DeleteBucketTaggingRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketWebsiteRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketWebsiteRequest.h index 36e31f1865..c7ab0d9e40 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketWebsiteRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketWebsiteRequest.h @@ -83,56 +83,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline DeleteBucketWebsiteRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline DeleteBucketWebsiteRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteObjectRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteObjectRequest.h index fbed182fb6..c340d287a8 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteObjectRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteObjectRequest.h @@ -44,185 +44,169 @@ namespace Model /** * <p>The bucket name of the bucket containing the object. </p> <p>When using this - * API with an access point, you must direct requests to the access point hostname. - * The access point hostname takes the form + * action with an access point, you must direct requests to the access point + * hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline const Aws::String& GetBucket() const{ return m_bucket; } /** * <p>The bucket name of the bucket containing the object. </p> <p>When using this - * API with an access point, you must direct requests to the access point hostname. - * The access point hostname takes the form + * action with an access point, you must direct requests to the access point + * hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; } /** * <p>The bucket name of the bucket containing the object. </p> <p>When using this - * API with an access point, you must direct requests to the access point hostname. - * The access point hostname takes the form + * action with an access point, you must direct requests to the access point + * hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; } /** * <p>The bucket name of the bucket containing the object. </p> <p>When using this - * API with an access point, you must direct requests to the access point hostname. - * The access point hostname takes the form + * action with an access point, you must direct requests to the access point + * hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); } /** * <p>The bucket name of the bucket containing the object. </p> <p>When using this - * API with an access point, you must direct requests to the access point hostname. - * The access point hostname takes the form + * action with an access point, you must direct requests to the access point + * hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); } /** * <p>The bucket name of the bucket containing the object. </p> <p>When using this - * API with an access point, you must direct requests to the access point hostname. - * The access point hostname takes the form + * action with an access point, you must direct requests to the access point + * hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline DeleteObjectRequest& WithBucket(const Aws::String& value) { SetBucket(value); return *this;} /** * <p>The bucket name of the bucket containing the object. </p> <p>When using this - * API with an access point, you must direct requests to the access point hostname. - * The access point hostname takes the form + * action with an access point, you must direct requests to the access point + * hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline DeleteObjectRequest& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;} /** * <p>The bucket name of the bucket containing the object. </p> <p>When using this - * API with an access point, you must direct requests to the access point hostname. - * The access point hostname takes the form + * action with an access point, you must direct requests to the access point + * hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline DeleteObjectRequest& WithBucket(const char* value) { SetBucket(value); return *this;} @@ -419,56 +403,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline DeleteObjectRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline DeleteObjectRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteObjectTaggingRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteObjectTaggingRequest.h index 5122ee920f..ad6286e1af 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteObjectTaggingRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteObjectTaggingRequest.h @@ -43,226 +43,218 @@ namespace Model /** * <p>The bucket name containing the objects from which to remove the tags. </p> - * <p>When using this API with an access point, you must direct requests to the + * <p>When using this action with an access point, you must direct requests to the * access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline const Aws::String& GetBucket() const{ return m_bucket; } /** * <p>The bucket name containing the objects from which to remove the tags. </p> - * <p>When using this API with an access point, you must direct requests to the + * <p>When using this action with an access point, you must direct requests to the * access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; } /** * <p>The bucket name containing the objects from which to remove the tags. </p> - * <p>When using this API with an access point, you must direct requests to the + * <p>When using this action with an access point, you must direct requests to the * access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; } /** * <p>The bucket name containing the objects from which to remove the tags. </p> - * <p>When using this API with an access point, you must direct requests to the + * <p>When using this action with an access point, you must direct requests to the * access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); } /** * <p>The bucket name containing the objects from which to remove the tags. </p> - * <p>When using this API with an access point, you must direct requests to the + * <p>When using this action with an access point, you must direct requests to the * access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); } /** * <p>The bucket name containing the objects from which to remove the tags. </p> - * <p>When using this API with an access point, you must direct requests to the + * <p>When using this action with an access point, you must direct requests to the * access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline DeleteObjectTaggingRequest& WithBucket(const Aws::String& value) { SetBucket(value); return *this;} /** * <p>The bucket name containing the objects from which to remove the tags. </p> - * <p>When using this API with an access point, you must direct requests to the + * <p>When using this action with an access point, you must direct requests to the * access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline DeleteObjectTaggingRequest& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;} /** * <p>The bucket name containing the objects from which to remove the tags. </p> - * <p>When using this API with an access point, you must direct requests to the + * <p>When using this action with an access point, you must direct requests to the * access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline DeleteObjectTaggingRequest& WithBucket(const char* value) { SetBucket(value); return *this;} /** - * <p>Name of the object key.</p> + * <p>The key that identifies the object in the bucket from which to remove all + * tags.</p> */ inline const Aws::String& GetKey() const{ return m_key; } /** - * <p>Name of the object key.</p> + * <p>The key that identifies the object in the bucket from which to remove all + * tags.</p> */ inline bool KeyHasBeenSet() const { return m_keyHasBeenSet; } /** - * <p>Name of the object key.</p> + * <p>The key that identifies the object in the bucket from which to remove all + * tags.</p> */ inline void SetKey(const Aws::String& value) { m_keyHasBeenSet = true; m_key = value; } /** - * <p>Name of the object key.</p> + * <p>The key that identifies the object in the bucket from which to remove all + * tags.</p> */ inline void SetKey(Aws::String&& value) { m_keyHasBeenSet = true; m_key = std::move(value); } /** - * <p>Name of the object key.</p> + * <p>The key that identifies the object in the bucket from which to remove all + * tags.</p> */ inline void SetKey(const char* value) { m_keyHasBeenSet = true; m_key.assign(value); } /** - * <p>Name of the object key.</p> + * <p>The key that identifies the object in the bucket from which to remove all + * tags.</p> */ inline DeleteObjectTaggingRequest& WithKey(const Aws::String& value) { SetKey(value); return *this;} /** - * <p>Name of the object key.</p> + * <p>The key that identifies the object in the bucket from which to remove all + * tags.</p> */ inline DeleteObjectTaggingRequest& WithKey(Aws::String&& value) { SetKey(std::move(value)); return *this;} /** - * <p>Name of the object key.</p> + * <p>The key that identifies the object in the bucket from which to remove all + * tags.</p> */ inline DeleteObjectTaggingRequest& WithKey(const char* value) { SetKey(value); return *this;} @@ -309,56 +301,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline DeleteObjectTaggingRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline DeleteObjectTaggingRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteObjectsRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteObjectsRequest.h index fa8b812827..fcbe9218b6 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteObjectsRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteObjectsRequest.h @@ -46,186 +46,170 @@ namespace Model /** - * <p>The bucket name containing the objects to delete. </p> <p>When using this API - * with an access point, you must direct requests to the access point hostname. The - * access point hostname takes the form + * <p>The bucket name containing the objects to delete. </p> <p>When using this + * action with an access point, you must direct requests to the access point + * hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline const Aws::String& GetBucket() const{ return m_bucket; } /** - * <p>The bucket name containing the objects to delete. </p> <p>When using this API - * with an access point, you must direct requests to the access point hostname. The - * access point hostname takes the form + * <p>The bucket name containing the objects to delete. </p> <p>When using this + * action with an access point, you must direct requests to the access point + * hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; } /** - * <p>The bucket name containing the objects to delete. </p> <p>When using this API - * with an access point, you must direct requests to the access point hostname. The - * access point hostname takes the form + * <p>The bucket name containing the objects to delete. </p> <p>When using this + * action with an access point, you must direct requests to the access point + * hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; } /** - * <p>The bucket name containing the objects to delete. </p> <p>When using this API - * with an access point, you must direct requests to the access point hostname. The - * access point hostname takes the form + * <p>The bucket name containing the objects to delete. </p> <p>When using this + * action with an access point, you must direct requests to the access point + * hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); } /** - * <p>The bucket name containing the objects to delete. </p> <p>When using this API - * with an access point, you must direct requests to the access point hostname. The - * access point hostname takes the form + * <p>The bucket name containing the objects to delete. </p> <p>When using this + * action with an access point, you must direct requests to the access point + * hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); } /** - * <p>The bucket name containing the objects to delete. </p> <p>When using this API - * with an access point, you must direct requests to the access point hostname. The - * access point hostname takes the form + * <p>The bucket name containing the objects to delete. </p> <p>When using this + * action with an access point, you must direct requests to the access point + * hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline DeleteObjectsRequest& WithBucket(const Aws::String& value) { SetBucket(value); return *this;} /** - * <p>The bucket name containing the objects to delete. </p> <p>When using this API - * with an access point, you must direct requests to the access point hostname. The - * access point hostname takes the form + * <p>The bucket name containing the objects to delete. </p> <p>When using this + * action with an access point, you must direct requests to the access point + * hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline DeleteObjectsRequest& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;} /** - * <p>The bucket name containing the objects to delete. </p> <p>When using this API - * with an access point, you must direct requests to the access point hostname. The - * access point hostname takes the form + * <p>The bucket name containing the objects to delete. </p> <p>When using this + * action with an access point, you must direct requests to the access point + * hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline DeleteObjectsRequest& WithBucket(const char* value) { SetBucket(value); return *this;} @@ -375,56 +359,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline DeleteObjectsRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline DeleteObjectsRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteObjectsResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteObjectsResult.h index 83c8863f5e..5533d2b3e5 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteObjectsResult.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteObjectsResult.h @@ -95,44 +95,44 @@ namespace Model /** - * <p>Container for a failed delete operation that describes the object that Amazon - * S3 attempted to delete and the error it encountered.</p> + * <p>Container for a failed delete action that describes the object that Amazon S3 + * attempted to delete and the error it encountered.</p> */ inline const Aws::Vector<Error>& GetErrors() const{ return m_errors; } /** - * <p>Container for a failed delete operation that describes the object that Amazon - * S3 attempted to delete and the error it encountered.</p> + * <p>Container for a failed delete action that describes the object that Amazon S3 + * attempted to delete and the error it encountered.</p> */ inline void SetErrors(const Aws::Vector<Error>& value) { m_errors = value; } /** - * <p>Container for a failed delete operation that describes the object that Amazon - * S3 attempted to delete and the error it encountered.</p> + * <p>Container for a failed delete action that describes the object that Amazon S3 + * attempted to delete and the error it encountered.</p> */ inline void SetErrors(Aws::Vector<Error>&& value) { m_errors = std::move(value); } /** - * <p>Container for a failed delete operation that describes the object that Amazon - * S3 attempted to delete and the error it encountered.</p> + * <p>Container for a failed delete action that describes the object that Amazon S3 + * attempted to delete and the error it encountered.</p> */ inline DeleteObjectsResult& WithErrors(const Aws::Vector<Error>& value) { SetErrors(value); return *this;} /** - * <p>Container for a failed delete operation that describes the object that Amazon - * S3 attempted to delete and the error it encountered.</p> + * <p>Container for a failed delete action that describes the object that Amazon S3 + * attempted to delete and the error it encountered.</p> */ inline DeleteObjectsResult& WithErrors(Aws::Vector<Error>&& value) { SetErrors(std::move(value)); return *this;} /** - * <p>Container for a failed delete operation that describes the object that Amazon - * S3 attempted to delete and the error it encountered.</p> + * <p>Container for a failed delete action that describes the object that Amazon S3 + * attempted to delete and the error it encountered.</p> */ inline DeleteObjectsResult& AddErrors(const Error& value) { m_errors.push_back(value); return *this; } /** - * <p>Container for a failed delete operation that describes the object that Amazon - * S3 attempted to delete and the error it encountered.</p> + * <p>Container for a failed delete action that describes the object that Amazon S3 + * attempted to delete and the error it encountered.</p> */ inline DeleteObjectsResult& AddErrors(Error&& value) { m_errors.push_back(std::move(value)); return *this; } diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeletePublicAccessBlockRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeletePublicAccessBlockRequest.h index fd8650c5a1..d53ad97548 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeletePublicAccessBlockRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeletePublicAccessBlockRequest.h @@ -91,56 +91,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline DeletePublicAccessBlockRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline DeletePublicAccessBlockRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Error.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Error.h index d5fe4d2088..a6ca21b0e4 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Error.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Error.h @@ -127,7 +127,7 @@ namespace Model * Access Denied</p> </li> <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p> * </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> * <ul> <li> <p> <i>Code:</i> AccountProblem</p> </li> <li> <p> <i>Description:</i> - * There is a problem with your AWS account that prevents the operation from + * There is a problem with your AWS account that prevents the action from * completing successfully. Contact AWS Support for further assistance.</p> </li> * <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p> </li> <li> <p> <i>SOAP Fault * Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i> @@ -233,7 +233,7 @@ namespace Model * to Select a Region for Your Buckets</a>. </p> </li> <li> <p> <i>HTTP Status * Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> * Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i> - * InvalidObjectState</p> </li> <li> <p> <i>Description:</i> The operation is not + * InvalidObjectState</p> </li> <li> <p> <i>Description:</i> The action is not * valid for the current state of the object.</p> </li> <li> <p> <i>HTTP Status * Code:</i> 403 Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> * Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidPart</p> @@ -402,7 +402,7 @@ namespace Model * https://aws.amazon.com/s3</p> </li> <li> <p> <i>HTTP Status Code:</i> 403 * Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> OperationAborted</p> </li> <li> <p> - * <i>Description:</i> A conflicting conditional operation is currently in progress + * <i>Description:</i> A conflicting conditional action is currently in progress * against this resource. Try again.</p> </li> <li> <p> <i>HTTP Status Code:</i> * 409 Conflict</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> PermanentRedirect</p> </li> <li> <p> @@ -487,7 +487,7 @@ namespace Model * Access Denied</p> </li> <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p> * </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> * <ul> <li> <p> <i>Code:</i> AccountProblem</p> </li> <li> <p> <i>Description:</i> - * There is a problem with your AWS account that prevents the operation from + * There is a problem with your AWS account that prevents the action from * completing successfully. Contact AWS Support for further assistance.</p> </li> * <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p> </li> <li> <p> <i>SOAP Fault * Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i> @@ -593,7 +593,7 @@ namespace Model * to Select a Region for Your Buckets</a>. </p> </li> <li> <p> <i>HTTP Status * Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> * Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i> - * InvalidObjectState</p> </li> <li> <p> <i>Description:</i> The operation is not + * InvalidObjectState</p> </li> <li> <p> <i>Description:</i> The action is not * valid for the current state of the object.</p> </li> <li> <p> <i>HTTP Status * Code:</i> 403 Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> * Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidPart</p> @@ -762,7 +762,7 @@ namespace Model * https://aws.amazon.com/s3</p> </li> <li> <p> <i>HTTP Status Code:</i> 403 * Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> OperationAborted</p> </li> <li> <p> - * <i>Description:</i> A conflicting conditional operation is currently in progress + * <i>Description:</i> A conflicting conditional action is currently in progress * against this resource. Try again.</p> </li> <li> <p> <i>HTTP Status Code:</i> * 409 Conflict</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> PermanentRedirect</p> </li> <li> <p> @@ -847,7 +847,7 @@ namespace Model * Access Denied</p> </li> <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p> * </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> * <ul> <li> <p> <i>Code:</i> AccountProblem</p> </li> <li> <p> <i>Description:</i> - * There is a problem with your AWS account that prevents the operation from + * There is a problem with your AWS account that prevents the action from * completing successfully. Contact AWS Support for further assistance.</p> </li> * <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p> </li> <li> <p> <i>SOAP Fault * Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i> @@ -953,7 +953,7 @@ namespace Model * to Select a Region for Your Buckets</a>. </p> </li> <li> <p> <i>HTTP Status * Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> * Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i> - * InvalidObjectState</p> </li> <li> <p> <i>Description:</i> The operation is not + * InvalidObjectState</p> </li> <li> <p> <i>Description:</i> The action is not * valid for the current state of the object.</p> </li> <li> <p> <i>HTTP Status * Code:</i> 403 Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> * Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidPart</p> @@ -1122,7 +1122,7 @@ namespace Model * https://aws.amazon.com/s3</p> </li> <li> <p> <i>HTTP Status Code:</i> 403 * Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> OperationAborted</p> </li> <li> <p> - * <i>Description:</i> A conflicting conditional operation is currently in progress + * <i>Description:</i> A conflicting conditional action is currently in progress * against this resource. Try again.</p> </li> <li> <p> <i>HTTP Status Code:</i> * 409 Conflict</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> PermanentRedirect</p> </li> <li> <p> @@ -1207,7 +1207,7 @@ namespace Model * Access Denied</p> </li> <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p> * </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> * <ul> <li> <p> <i>Code:</i> AccountProblem</p> </li> <li> <p> <i>Description:</i> - * There is a problem with your AWS account that prevents the operation from + * There is a problem with your AWS account that prevents the action from * completing successfully. Contact AWS Support for further assistance.</p> </li> * <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p> </li> <li> <p> <i>SOAP Fault * Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i> @@ -1313,7 +1313,7 @@ namespace Model * to Select a Region for Your Buckets</a>. </p> </li> <li> <p> <i>HTTP Status * Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> * Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i> - * InvalidObjectState</p> </li> <li> <p> <i>Description:</i> The operation is not + * InvalidObjectState</p> </li> <li> <p> <i>Description:</i> The action is not * valid for the current state of the object.</p> </li> <li> <p> <i>HTTP Status * Code:</i> 403 Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> * Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidPart</p> @@ -1482,7 +1482,7 @@ namespace Model * https://aws.amazon.com/s3</p> </li> <li> <p> <i>HTTP Status Code:</i> 403 * Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> OperationAborted</p> </li> <li> <p> - * <i>Description:</i> A conflicting conditional operation is currently in progress + * <i>Description:</i> A conflicting conditional action is currently in progress * against this resource. Try again.</p> </li> <li> <p> <i>HTTP Status Code:</i> * 409 Conflict</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> PermanentRedirect</p> </li> <li> <p> @@ -1567,7 +1567,7 @@ namespace Model * Access Denied</p> </li> <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p> * </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> * <ul> <li> <p> <i>Code:</i> AccountProblem</p> </li> <li> <p> <i>Description:</i> - * There is a problem with your AWS account that prevents the operation from + * There is a problem with your AWS account that prevents the action from * completing successfully. Contact AWS Support for further assistance.</p> </li> * <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p> </li> <li> <p> <i>SOAP Fault * Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i> @@ -1673,7 +1673,7 @@ namespace Model * to Select a Region for Your Buckets</a>. </p> </li> <li> <p> <i>HTTP Status * Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> * Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i> - * InvalidObjectState</p> </li> <li> <p> <i>Description:</i> The operation is not + * InvalidObjectState</p> </li> <li> <p> <i>Description:</i> The action is not * valid for the current state of the object.</p> </li> <li> <p> <i>HTTP Status * Code:</i> 403 Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> * Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidPart</p> @@ -1842,7 +1842,7 @@ namespace Model * https://aws.amazon.com/s3</p> </li> <li> <p> <i>HTTP Status Code:</i> 403 * Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> OperationAborted</p> </li> <li> <p> - * <i>Description:</i> A conflicting conditional operation is currently in progress + * <i>Description:</i> A conflicting conditional action is currently in progress * against this resource. Try again.</p> </li> <li> <p> <i>HTTP Status Code:</i> * 409 Conflict</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> PermanentRedirect</p> </li> <li> <p> @@ -1927,7 +1927,7 @@ namespace Model * Access Denied</p> </li> <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p> * </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> * <ul> <li> <p> <i>Code:</i> AccountProblem</p> </li> <li> <p> <i>Description:</i> - * There is a problem with your AWS account that prevents the operation from + * There is a problem with your AWS account that prevents the action from * completing successfully. Contact AWS Support for further assistance.</p> </li> * <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p> </li> <li> <p> <i>SOAP Fault * Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i> @@ -2033,7 +2033,7 @@ namespace Model * to Select a Region for Your Buckets</a>. </p> </li> <li> <p> <i>HTTP Status * Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> * Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i> - * InvalidObjectState</p> </li> <li> <p> <i>Description:</i> The operation is not + * InvalidObjectState</p> </li> <li> <p> <i>Description:</i> The action is not * valid for the current state of the object.</p> </li> <li> <p> <i>HTTP Status * Code:</i> 403 Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> * Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidPart</p> @@ -2202,7 +2202,7 @@ namespace Model * https://aws.amazon.com/s3</p> </li> <li> <p> <i>HTTP Status Code:</i> 403 * Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> OperationAborted</p> </li> <li> <p> - * <i>Description:</i> A conflicting conditional operation is currently in progress + * <i>Description:</i> A conflicting conditional action is currently in progress * against this resource. Try again.</p> </li> <li> <p> <i>HTTP Status Code:</i> * 409 Conflict</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> PermanentRedirect</p> </li> <li> <p> @@ -2287,7 +2287,7 @@ namespace Model * Access Denied</p> </li> <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p> * </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> * <ul> <li> <p> <i>Code:</i> AccountProblem</p> </li> <li> <p> <i>Description:</i> - * There is a problem with your AWS account that prevents the operation from + * There is a problem with your AWS account that prevents the action from * completing successfully. Contact AWS Support for further assistance.</p> </li> * <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p> </li> <li> <p> <i>SOAP Fault * Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i> @@ -2393,7 +2393,7 @@ namespace Model * to Select a Region for Your Buckets</a>. </p> </li> <li> <p> <i>HTTP Status * Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> * Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i> - * InvalidObjectState</p> </li> <li> <p> <i>Description:</i> The operation is not + * InvalidObjectState</p> </li> <li> <p> <i>Description:</i> The action is not * valid for the current state of the object.</p> </li> <li> <p> <i>HTTP Status * Code:</i> 403 Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> * Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidPart</p> @@ -2562,7 +2562,7 @@ namespace Model * https://aws.amazon.com/s3</p> </li> <li> <p> <i>HTTP Status Code:</i> 403 * Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> OperationAborted</p> </li> <li> <p> - * <i>Description:</i> A conflicting conditional operation is currently in progress + * <i>Description:</i> A conflicting conditional action is currently in progress * against this resource. Try again.</p> </li> <li> <p> <i>HTTP Status Code:</i> * 409 Conflict</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> PermanentRedirect</p> </li> <li> <p> @@ -2647,7 +2647,7 @@ namespace Model * Access Denied</p> </li> <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p> * </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> * <ul> <li> <p> <i>Code:</i> AccountProblem</p> </li> <li> <p> <i>Description:</i> - * There is a problem with your AWS account that prevents the operation from + * There is a problem with your AWS account that prevents the action from * completing successfully. Contact AWS Support for further assistance.</p> </li> * <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p> </li> <li> <p> <i>SOAP Fault * Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i> @@ -2753,7 +2753,7 @@ namespace Model * to Select a Region for Your Buckets</a>. </p> </li> <li> <p> <i>HTTP Status * Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> * Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i> - * InvalidObjectState</p> </li> <li> <p> <i>Description:</i> The operation is not + * InvalidObjectState</p> </li> <li> <p> <i>Description:</i> The action is not * valid for the current state of the object.</p> </li> <li> <p> <i>HTTP Status * Code:</i> 403 Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> * Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidPart</p> @@ -2922,7 +2922,7 @@ namespace Model * https://aws.amazon.com/s3</p> </li> <li> <p> <i>HTTP Status Code:</i> 403 * Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> OperationAborted</p> </li> <li> <p> - * <i>Description:</i> A conflicting conditional operation is currently in progress + * <i>Description:</i> A conflicting conditional action is currently in progress * against this resource. Try again.</p> </li> <li> <p> <i>HTTP Status Code:</i> * 409 Conflict</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> PermanentRedirect</p> </li> <li> <p> diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ErrorDocument.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ErrorDocument.h index 610d32187a..114e8b8865 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ErrorDocument.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ErrorDocument.h @@ -38,42 +38,74 @@ namespace Model /** - * <p>The object key name to use when a 4XX class error occurs.</p> + * <p>The object key name to use when a 4XX class error occurs.</p> + * <p>Replacement must be made for object keys containing special characters (such + * as carriage returns) when using XML requests. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline const Aws::String& GetKey() const{ return m_key; } /** - * <p>The object key name to use when a 4XX class error occurs.</p> + * <p>The object key name to use when a 4XX class error occurs.</p> + * <p>Replacement must be made for object keys containing special characters (such + * as carriage returns) when using XML requests. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline bool KeyHasBeenSet() const { return m_keyHasBeenSet; } /** - * <p>The object key name to use when a 4XX class error occurs.</p> + * <p>The object key name to use when a 4XX class error occurs.</p> + * <p>Replacement must be made for object keys containing special characters (such + * as carriage returns) when using XML requests. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline void SetKey(const Aws::String& value) { m_keyHasBeenSet = true; m_key = value; } /** - * <p>The object key name to use when a 4XX class error occurs.</p> + * <p>The object key name to use when a 4XX class error occurs.</p> + * <p>Replacement must be made for object keys containing special characters (such + * as carriage returns) when using XML requests. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline void SetKey(Aws::String&& value) { m_keyHasBeenSet = true; m_key = std::move(value); } /** - * <p>The object key name to use when a 4XX class error occurs.</p> + * <p>The object key name to use when a 4XX class error occurs.</p> + * <p>Replacement must be made for object keys containing special characters (such + * as carriage returns) when using XML requests. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline void SetKey(const char* value) { m_keyHasBeenSet = true; m_key.assign(value); } /** - * <p>The object key name to use when a 4XX class error occurs.</p> + * <p>The object key name to use when a 4XX class error occurs.</p> + * <p>Replacement must be made for object keys containing special characters (such + * as carriage returns) when using XML requests. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline ErrorDocument& WithKey(const Aws::String& value) { SetKey(value); return *this;} /** - * <p>The object key name to use when a 4XX class error occurs.</p> + * <p>The object key name to use when a 4XX class error occurs.</p> + * <p>Replacement must be made for object keys containing special characters (such + * as carriage returns) when using XML requests. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline ErrorDocument& WithKey(Aws::String&& value) { SetKey(std::move(value)); return *this;} /** - * <p>The object key name to use when a 4XX class error occurs.</p> + * <p>The object key name to use when a 4XX class error occurs.</p> + * <p>Replacement must be made for object keys containing special characters (such + * as carriage returns) when using XML requests. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline ErrorDocument& WithKey(const char* value) { SetKey(value); return *this;} diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ExistingObjectReplication.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ExistingObjectReplication.h index bb9bebd959..9484083682 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ExistingObjectReplication.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ExistingObjectReplication.h @@ -24,8 +24,8 @@ namespace Model /** * <p>Optional configuration to replicate existing source bucket objects. For more - * information, see <a href=" - * https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-what-is-isnot-replicated.html#existing-object-replication">Replicating + * information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-what-is-isnot-replicated.html#existing-object-replication">Replicating * Existing Objects</a> in the <i>Amazon S3 Developer Guide</i>. </p><p><h3>See * Also:</h3> <a * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ExistingObjectReplication">AWS diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/FilterRule.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/FilterRule.h index e63b80e32c..efbbb66359 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/FilterRule.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/FilterRule.h @@ -44,8 +44,7 @@ namespace Model * the filtering rule applies. The maximum length is 1,024 characters. Overlapping * prefixes and suffixes are not supported. For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html">Configuring - * Event Notifications</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * Event Notifications</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline const FilterRuleName& GetName() const{ return m_name; } @@ -54,8 +53,7 @@ namespace Model * the filtering rule applies. The maximum length is 1,024 characters. Overlapping * prefixes and suffixes are not supported. For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html">Configuring - * Event Notifications</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * Event Notifications</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } @@ -64,8 +62,7 @@ namespace Model * the filtering rule applies. The maximum length is 1,024 characters. Overlapping * prefixes and suffixes are not supported. For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html">Configuring - * Event Notifications</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * Event Notifications</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetName(const FilterRuleName& value) { m_nameHasBeenSet = true; m_name = value; } @@ -74,8 +71,7 @@ namespace Model * the filtering rule applies. The maximum length is 1,024 characters. Overlapping * prefixes and suffixes are not supported. For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html">Configuring - * Event Notifications</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * Event Notifications</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetName(FilterRuleName&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } @@ -84,8 +80,7 @@ namespace Model * the filtering rule applies. The maximum length is 1,024 characters. Overlapping * prefixes and suffixes are not supported. For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html">Configuring - * Event Notifications</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * Event Notifications</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline FilterRule& WithName(const FilterRuleName& value) { SetName(value); return *this;} @@ -94,8 +89,7 @@ namespace Model * the filtering rule applies. The maximum length is 1,024 characters. Overlapping * prefixes and suffixes are not supported. For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html">Configuring - * Event Notifications</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * Event Notifications</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline FilterRule& WithName(FilterRuleName&& value) { SetName(std::move(value)); return *this;} diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketAccelerateConfigurationRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketAccelerateConfigurationRequest.h index 1c1fb18949..24523b85d8 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketAccelerateConfigurationRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketAccelerateConfigurationRequest.h @@ -91,56 +91,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline GetBucketAccelerateConfigurationRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline GetBucketAccelerateConfigurationRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketAclRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketAclRequest.h index 90071fcc07..c4c03d2d4f 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketAclRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketAclRequest.h @@ -83,56 +83,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline GetBucketAclRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline GetBucketAclRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketAnalyticsConfigurationRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketAnalyticsConfigurationRequest.h index 63e6d8c722..559bb22660 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketAnalyticsConfigurationRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketAnalyticsConfigurationRequest.h @@ -132,56 +132,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline GetBucketAnalyticsConfigurationRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline GetBucketAnalyticsConfigurationRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketCorsRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketCorsRequest.h index fabc83b57d..3e9b8cd66f 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketCorsRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketCorsRequest.h @@ -83,56 +83,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline GetBucketCorsRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline GetBucketCorsRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketEncryptionRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketEncryptionRequest.h index 9d7f2f17a1..1bb5bfd2eb 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketEncryptionRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketEncryptionRequest.h @@ -91,56 +91,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline GetBucketEncryptionRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline GetBucketEncryptionRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketInventoryConfigurationRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketInventoryConfigurationRequest.h index 3eb1bb6755..6bbac67627 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketInventoryConfigurationRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketInventoryConfigurationRequest.h @@ -132,56 +132,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline GetBucketInventoryConfigurationRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline GetBucketInventoryConfigurationRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketLifecycleConfigurationRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketLifecycleConfigurationRequest.h index 8797dbd7d0..b26b05c742 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketLifecycleConfigurationRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketLifecycleConfigurationRequest.h @@ -83,56 +83,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline GetBucketLifecycleConfigurationRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline GetBucketLifecycleConfigurationRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketLocationRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketLocationRequest.h index 777f5521f8..fa4aed4020 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketLocationRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketLocationRequest.h @@ -83,56 +83,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline GetBucketLocationRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline GetBucketLocationRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketLoggingRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketLoggingRequest.h index f0decdec54..833a4534b1 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketLoggingRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketLoggingRequest.h @@ -83,56 +83,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline GetBucketLoggingRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline GetBucketLoggingRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketMetricsConfigurationRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketMetricsConfigurationRequest.h index d52e987778..dd345e42d2 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketMetricsConfigurationRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketMetricsConfigurationRequest.h @@ -124,56 +124,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline GetBucketMetricsConfigurationRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline GetBucketMetricsConfigurationRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketNotificationConfigurationRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketNotificationConfigurationRequest.h index 20a671471a..2a191d8f4c 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketNotificationConfigurationRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketNotificationConfigurationRequest.h @@ -83,56 +83,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline GetBucketNotificationConfigurationRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline GetBucketNotificationConfigurationRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketOwnershipControlsRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketOwnershipControlsRequest.h index ce8a7de017..37f8628125 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketOwnershipControlsRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketOwnershipControlsRequest.h @@ -91,56 +91,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline GetBucketOwnershipControlsRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline GetBucketOwnershipControlsRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketPolicyRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketPolicyRequest.h index a4fa4600ed..2f3c3e4b67 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketPolicyRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketPolicyRequest.h @@ -83,56 +83,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline GetBucketPolicyRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline GetBucketPolicyRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketPolicyStatusRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketPolicyStatusRequest.h index 941ce2ee44..2afaaf0f9b 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketPolicyStatusRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketPolicyStatusRequest.h @@ -91,56 +91,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline GetBucketPolicyStatusRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline GetBucketPolicyStatusRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketReplicationRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketReplicationRequest.h index 8ee31eefef..71aa9f131b 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketReplicationRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketReplicationRequest.h @@ -83,56 +83,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline GetBucketReplicationRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline GetBucketReplicationRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketRequestPaymentRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketRequestPaymentRequest.h index 6421700b81..4471b13374 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketRequestPaymentRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketRequestPaymentRequest.h @@ -83,56 +83,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline GetBucketRequestPaymentRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline GetBucketRequestPaymentRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketTaggingRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketTaggingRequest.h index 7b17610bb2..e660344c3f 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketTaggingRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketTaggingRequest.h @@ -83,56 +83,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline GetBucketTaggingRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline GetBucketTaggingRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketVersioningRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketVersioningRequest.h index 5edd374cbe..787c5ff90a 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketVersioningRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketVersioningRequest.h @@ -83,56 +83,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline GetBucketVersioningRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline GetBucketVersioningRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketWebsiteRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketWebsiteRequest.h index 198b4d3b9d..6422d3c876 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketWebsiteRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketWebsiteRequest.h @@ -83,56 +83,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline GetBucketWebsiteRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline GetBucketWebsiteRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectAclRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectAclRequest.h index 219922f755..412a4ac4fc 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectAclRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectAclRequest.h @@ -44,113 +44,113 @@ namespace Model /** * <p>The bucket name that contains the object for which to get the ACL - * information. </p> <p>When using this API with an access point, you must direct - * requests to the access point hostname. The access point hostname takes the form + * information. </p> <p>When using this action with an access point, you must + * direct requests to the access point hostname. The access point hostname takes + * the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline const Aws::String& GetBucket() const{ return m_bucket; } /** * <p>The bucket name that contains the object for which to get the ACL - * information. </p> <p>When using this API with an access point, you must direct - * requests to the access point hostname. The access point hostname takes the form + * information. </p> <p>When using this action with an access point, you must + * direct requests to the access point hostname. The access point hostname takes + * the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; } /** * <p>The bucket name that contains the object for which to get the ACL - * information. </p> <p>When using this API with an access point, you must direct - * requests to the access point hostname. The access point hostname takes the form + * information. </p> <p>When using this action with an access point, you must + * direct requests to the access point hostname. The access point hostname takes + * the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; } /** * <p>The bucket name that contains the object for which to get the ACL - * information. </p> <p>When using this API with an access point, you must direct - * requests to the access point hostname. The access point hostname takes the form + * information. </p> <p>When using this action with an access point, you must + * direct requests to the access point hostname. The access point hostname takes + * the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); } /** * <p>The bucket name that contains the object for which to get the ACL - * information. </p> <p>When using this API with an access point, you must direct - * requests to the access point hostname. The access point hostname takes the form + * information. </p> <p>When using this action with an access point, you must + * direct requests to the access point hostname. The access point hostname takes + * the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); } /** * <p>The bucket name that contains the object for which to get the ACL - * information. </p> <p>When using this API with an access point, you must direct - * requests to the access point hostname. The access point hostname takes the form + * information. </p> <p>When using this action with an access point, you must + * direct requests to the access point hostname. The access point hostname takes + * the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline GetObjectAclRequest& WithBucket(const Aws::String& value) { SetBucket(value); return *this;} /** * <p>The bucket name that contains the object for which to get the ACL - * information. </p> <p>When using this API with an access point, you must direct - * requests to the access point hostname. The access point hostname takes the form + * information. </p> <p>When using this action with an access point, you must + * direct requests to the access point hostname. The access point hostname takes + * the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline GetObjectAclRequest& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;} /** * <p>The bucket name that contains the object for which to get the ACL - * information. </p> <p>When using this API with an access point, you must direct - * requests to the access point hostname. The access point hostname takes the form + * information. </p> <p>When using this action with an access point, you must + * direct requests to the access point hostname. The access point hostname takes + * the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline GetObjectAclRequest& WithBucket(const char* value) { SetBucket(value); return *this;} @@ -257,56 +257,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline GetObjectAclRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline GetObjectAclRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectLegalHoldRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectLegalHoldRequest.h index e6e2801de8..e9c4940777 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectLegalHoldRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectLegalHoldRequest.h @@ -44,113 +44,105 @@ namespace Model /** * <p>The bucket name containing the object whose Legal Hold status you want to - * retrieve. </p> <p>When using this API with an access point, you must direct + * retrieve. </p> <p>When using this action with an access point, you must direct * requests to the access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline const Aws::String& GetBucket() const{ return m_bucket; } /** * <p>The bucket name containing the object whose Legal Hold status you want to - * retrieve. </p> <p>When using this API with an access point, you must direct + * retrieve. </p> <p>When using this action with an access point, you must direct * requests to the access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; } /** * <p>The bucket name containing the object whose Legal Hold status you want to - * retrieve. </p> <p>When using this API with an access point, you must direct + * retrieve. </p> <p>When using this action with an access point, you must direct * requests to the access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; } /** * <p>The bucket name containing the object whose Legal Hold status you want to - * retrieve. </p> <p>When using this API with an access point, you must direct + * retrieve. </p> <p>When using this action with an access point, you must direct * requests to the access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); } /** * <p>The bucket name containing the object whose Legal Hold status you want to - * retrieve. </p> <p>When using this API with an access point, you must direct + * retrieve. </p> <p>When using this action with an access point, you must direct * requests to the access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); } /** * <p>The bucket name containing the object whose Legal Hold status you want to - * retrieve. </p> <p>When using this API with an access point, you must direct + * retrieve. </p> <p>When using this action with an access point, you must direct * requests to the access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline GetObjectLegalHoldRequest& WithBucket(const Aws::String& value) { SetBucket(value); return *this;} /** * <p>The bucket name containing the object whose Legal Hold status you want to - * retrieve. </p> <p>When using this API with an access point, you must direct + * retrieve. </p> <p>When using this action with an access point, you must direct * requests to the access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline GetObjectLegalHoldRequest& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;} /** * <p>The bucket name containing the object whose Legal Hold status you want to - * retrieve. </p> <p>When using this API with an access point, you must direct + * retrieve. </p> <p>When using this action with an access point, you must direct * requests to the access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline GetObjectLegalHoldRequest& WithBucket(const char* value) { SetBucket(value); return *this;} @@ -265,56 +257,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline GetObjectLegalHoldRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline GetObjectLegalHoldRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectLockConfigurationRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectLockConfigurationRequest.h index a99710c72a..d7ac269545 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectLockConfigurationRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectLockConfigurationRequest.h @@ -43,168 +43,160 @@ namespace Model /** * <p>The bucket whose Object Lock configuration you want to retrieve.</p> <p>When - * using this API with an access point, you must direct requests to the access + * using this action with an access point, you must direct requests to the access * point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline const Aws::String& GetBucket() const{ return m_bucket; } /** * <p>The bucket whose Object Lock configuration you want to retrieve.</p> <p>When - * using this API with an access point, you must direct requests to the access + * using this action with an access point, you must direct requests to the access * point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; } /** * <p>The bucket whose Object Lock configuration you want to retrieve.</p> <p>When - * using this API with an access point, you must direct requests to the access + * using this action with an access point, you must direct requests to the access * point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; } /** * <p>The bucket whose Object Lock configuration you want to retrieve.</p> <p>When - * using this API with an access point, you must direct requests to the access + * using this action with an access point, you must direct requests to the access * point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); } /** * <p>The bucket whose Object Lock configuration you want to retrieve.</p> <p>When - * using this API with an access point, you must direct requests to the access + * using this action with an access point, you must direct requests to the access * point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); } /** * <p>The bucket whose Object Lock configuration you want to retrieve.</p> <p>When - * using this API with an access point, you must direct requests to the access + * using this action with an access point, you must direct requests to the access * point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline GetObjectLockConfigurationRequest& WithBucket(const Aws::String& value) { SetBucket(value); return *this;} /** * <p>The bucket whose Object Lock configuration you want to retrieve.</p> <p>When - * using this API with an access point, you must direct requests to the access + * using this action with an access point, you must direct requests to the access * point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline GetObjectLockConfigurationRequest& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;} /** * <p>The bucket whose Object Lock configuration you want to retrieve.</p> <p>When - * using this API with an access point, you must direct requests to the access + * using this action with an access point, you must direct requests to the access * point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline GetObjectLockConfigurationRequest& WithBucket(const char* value) { SetBucket(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline GetObjectLockConfigurationRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline GetObjectLockConfigurationRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectRequest.h index c26051713d..82ef5b73f7 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectRequest.h @@ -44,186 +44,170 @@ namespace Model /** - * <p>The bucket name containing the object. </p> <p>When using this API with an + * <p>The bucket name containing the object. </p> <p>When using this action with an * access point, you must direct requests to the access point hostname. The access * point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline const Aws::String& GetBucket() const{ return m_bucket; } /** - * <p>The bucket name containing the object. </p> <p>When using this API with an + * <p>The bucket name containing the object. </p> <p>When using this action with an * access point, you must direct requests to the access point hostname. The access * point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; } /** - * <p>The bucket name containing the object. </p> <p>When using this API with an + * <p>The bucket name containing the object. </p> <p>When using this action with an * access point, you must direct requests to the access point hostname. The access * point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; } /** - * <p>The bucket name containing the object. </p> <p>When using this API with an + * <p>The bucket name containing the object. </p> <p>When using this action with an * access point, you must direct requests to the access point hostname. The access * point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); } /** - * <p>The bucket name containing the object. </p> <p>When using this API with an + * <p>The bucket name containing the object. </p> <p>When using this action with an * access point, you must direct requests to the access point hostname. The access * point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); } /** - * <p>The bucket name containing the object. </p> <p>When using this API with an + * <p>The bucket name containing the object. </p> <p>When using this action with an * access point, you must direct requests to the access point hostname. The access * point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline GetObjectRequest& WithBucket(const Aws::String& value) { SetBucket(value); return *this;} /** - * <p>The bucket name containing the object. </p> <p>When using this API with an + * <p>The bucket name containing the object. </p> <p>When using this action with an * access point, you must direct requests to the access point hostname. The access * point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline GetObjectRequest& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;} /** - * <p>The bucket name containing the object. </p> <p>When using this API with an + * <p>The bucket name containing the object. </p> <p>When using this action with an * access point, you must direct requests to the access point hostname. The access * point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline GetObjectRequest& WithBucket(const char* value) { SetBucket(value); return *this;} @@ -792,122 +776,122 @@ namespace Model /** - * <p>Specifies the algorithm to use to when encrypting the object (for example, + * <p>Specifies the algorithm to use to when decrypting the object (for example, * AES256).</p> */ inline const Aws::String& GetSSECustomerAlgorithm() const{ return m_sSECustomerAlgorithm; } /** - * <p>Specifies the algorithm to use to when encrypting the object (for example, + * <p>Specifies the algorithm to use to when decrypting the object (for example, * AES256).</p> */ inline bool SSECustomerAlgorithmHasBeenSet() const { return m_sSECustomerAlgorithmHasBeenSet; } /** - * <p>Specifies the algorithm to use to when encrypting the object (for example, + * <p>Specifies the algorithm to use to when decrypting the object (for example, * AES256).</p> */ inline void SetSSECustomerAlgorithm(const Aws::String& value) { m_sSECustomerAlgorithmHasBeenSet = true; m_sSECustomerAlgorithm = value; } /** - * <p>Specifies the algorithm to use to when encrypting the object (for example, + * <p>Specifies the algorithm to use to when decrypting the object (for example, * AES256).</p> */ inline void SetSSECustomerAlgorithm(Aws::String&& value) { m_sSECustomerAlgorithmHasBeenSet = true; m_sSECustomerAlgorithm = std::move(value); } /** - * <p>Specifies the algorithm to use to when encrypting the object (for example, + * <p>Specifies the algorithm to use to when decrypting the object (for example, * AES256).</p> */ inline void SetSSECustomerAlgorithm(const char* value) { m_sSECustomerAlgorithmHasBeenSet = true; m_sSECustomerAlgorithm.assign(value); } /** - * <p>Specifies the algorithm to use to when encrypting the object (for example, + * <p>Specifies the algorithm to use to when decrypting the object (for example, * AES256).</p> */ inline GetObjectRequest& WithSSECustomerAlgorithm(const Aws::String& value) { SetSSECustomerAlgorithm(value); return *this;} /** - * <p>Specifies the algorithm to use to when encrypting the object (for example, + * <p>Specifies the algorithm to use to when decrypting the object (for example, * AES256).</p> */ inline GetObjectRequest& WithSSECustomerAlgorithm(Aws::String&& value) { SetSSECustomerAlgorithm(std::move(value)); return *this;} /** - * <p>Specifies the algorithm to use to when encrypting the object (for example, + * <p>Specifies the algorithm to use to when decrypting the object (for example, * AES256).</p> */ inline GetObjectRequest& WithSSECustomerAlgorithm(const char* value) { SetSSECustomerAlgorithm(value); return *this;} /** - * <p>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 + * <p>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 * <code>x-amz-server-side-encryption-customer-algorithm</code> header.</p> */ inline const Aws::String& GetSSECustomerKey() const{ return m_sSECustomerKey; } /** - * <p>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 + * <p>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 * <code>x-amz-server-side-encryption-customer-algorithm</code> header.</p> */ inline bool SSECustomerKeyHasBeenSet() const { return m_sSECustomerKeyHasBeenSet; } /** - * <p>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 + * <p>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 * <code>x-amz-server-side-encryption-customer-algorithm</code> header.</p> */ inline void SetSSECustomerKey(const Aws::String& value) { m_sSECustomerKeyHasBeenSet = true; m_sSECustomerKey = value; } /** - * <p>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 + * <p>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 * <code>x-amz-server-side-encryption-customer-algorithm</code> header.</p> */ inline void SetSSECustomerKey(Aws::String&& value) { m_sSECustomerKeyHasBeenSet = true; m_sSECustomerKey = std::move(value); } /** - * <p>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 + * <p>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 * <code>x-amz-server-side-encryption-customer-algorithm</code> header.</p> */ inline void SetSSECustomerKey(const char* value) { m_sSECustomerKeyHasBeenSet = true; m_sSECustomerKey.assign(value); } /** - * <p>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 + * <p>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 * <code>x-amz-server-side-encryption-customer-algorithm</code> header.</p> */ inline GetObjectRequest& WithSSECustomerKey(const Aws::String& value) { SetSSECustomerKey(value); return *this;} /** - * <p>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 + * <p>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 * <code>x-amz-server-side-encryption-customer-algorithm</code> header.</p> */ inline GetObjectRequest& WithSSECustomerKey(Aws::String&& value) { SetSSECustomerKey(std::move(value)); return *this;} /** - * <p>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 + * <p>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 * <code>x-amz-server-side-encryption-customer-algorithm</code> header.</p> */ inline GetObjectRequest& WithSSECustomerKey(const char* value) { SetSSECustomerKey(value); return *this;} @@ -1019,56 +1003,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline GetObjectRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline GetObjectRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectResult.h index e9eb7bf9ed..cac0384d29 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectResult.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectResult.h @@ -169,70 +169,70 @@ namespace Model /** - * <p>Provides information about object restoration operation and expiration time - * of the restored object copy.</p> + * <p>Provides information about object restoration action and expiration time of + * the restored object copy.</p> */ inline const Aws::String& GetRestore() const{ return m_restore; } /** - * <p>Provides information about object restoration operation and expiration time - * of the restored object copy.</p> + * <p>Provides information about object restoration action and expiration time of + * the restored object copy.</p> */ inline void SetRestore(const Aws::String& value) { m_restore = value; } /** - * <p>Provides information about object restoration operation and expiration time - * of the restored object copy.</p> + * <p>Provides information about object restoration action and expiration time of + * the restored object copy.</p> */ inline void SetRestore(Aws::String&& value) { m_restore = std::move(value); } /** - * <p>Provides information about object restoration operation and expiration time - * of the restored object copy.</p> + * <p>Provides information about object restoration action and expiration time of + * the restored object copy.</p> */ inline void SetRestore(const char* value) { m_restore.assign(value); } /** - * <p>Provides information about object restoration operation and expiration time - * of the restored object copy.</p> + * <p>Provides information about object restoration action and expiration time of + * the restored object copy.</p> */ inline GetObjectResult& WithRestore(const Aws::String& value) { SetRestore(value); return *this;} /** - * <p>Provides information about object restoration operation and expiration time - * of the restored object copy.</p> + * <p>Provides information about object restoration action and expiration time of + * the restored object copy.</p> */ inline GetObjectResult& WithRestore(Aws::String&& value) { SetRestore(std::move(value)); return *this;} /** - * <p>Provides information about object restoration operation and expiration time - * of the restored object copy.</p> + * <p>Provides information about object restoration action and expiration time of + * the restored object copy.</p> */ inline GetObjectResult& WithRestore(const char* value) { SetRestore(value); return *this;} /** - * <p>Last modified date of the object</p> + * <p>Creation date of the object.</p> */ inline const Aws::Utils::DateTime& GetLastModified() const{ return m_lastModified; } /** - * <p>Last modified date of the object</p> + * <p>Creation date of the object.</p> */ inline void SetLastModified(const Aws::Utils::DateTime& value) { m_lastModified = value; } /** - * <p>Last modified date of the object</p> + * <p>Creation date of the object.</p> */ inline void SetLastModified(Aws::Utils::DateTime&& value) { m_lastModified = std::move(value); } /** - * <p>Last modified date of the object</p> + * <p>Creation date of the object.</p> */ inline GetObjectResult& WithLastModified(const Aws::Utils::DateTime& value) { SetLastModified(value); return *this;} /** - * <p>Last modified date of the object</p> + * <p>Creation date of the object.</p> */ inline GetObjectResult& WithLastModified(Aws::Utils::DateTime&& value) { SetLastModified(std::move(value)); return *this;} diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectRetentionRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectRetentionRequest.h index 02153e8252..15f8adc388 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectRetentionRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectRetentionRequest.h @@ -44,113 +44,105 @@ namespace Model /** * <p>The bucket name containing the object whose retention settings you want to - * retrieve. </p> <p>When using this API with an access point, you must direct + * retrieve. </p> <p>When using this action with an access point, you must direct * requests to the access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline const Aws::String& GetBucket() const{ return m_bucket; } /** * <p>The bucket name containing the object whose retention settings you want to - * retrieve. </p> <p>When using this API with an access point, you must direct + * retrieve. </p> <p>When using this action with an access point, you must direct * requests to the access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; } /** * <p>The bucket name containing the object whose retention settings you want to - * retrieve. </p> <p>When using this API with an access point, you must direct + * retrieve. </p> <p>When using this action with an access point, you must direct * requests to the access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; } /** * <p>The bucket name containing the object whose retention settings you want to - * retrieve. </p> <p>When using this API with an access point, you must direct + * retrieve. </p> <p>When using this action with an access point, you must direct * requests to the access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); } /** * <p>The bucket name containing the object whose retention settings you want to - * retrieve. </p> <p>When using this API with an access point, you must direct + * retrieve. </p> <p>When using this action with an access point, you must direct * requests to the access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); } /** * <p>The bucket name containing the object whose retention settings you want to - * retrieve. </p> <p>When using this API with an access point, you must direct + * retrieve. </p> <p>When using this action with an access point, you must direct * requests to the access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline GetObjectRetentionRequest& WithBucket(const Aws::String& value) { SetBucket(value); return *this;} /** * <p>The bucket name containing the object whose retention settings you want to - * retrieve. </p> <p>When using this API with an access point, you must direct + * retrieve. </p> <p>When using this action with an access point, you must direct * requests to the access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline GetObjectRetentionRequest& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;} /** * <p>The bucket name containing the object whose retention settings you want to - * retrieve. </p> <p>When using this API with an access point, you must direct + * retrieve. </p> <p>When using this action with an access point, you must direct * requests to the access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline GetObjectRetentionRequest& WithBucket(const char* value) { SetBucket(value); return *this;} @@ -273,56 +265,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline GetObjectRetentionRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline GetObjectRetentionRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectTaggingRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectTaggingRequest.h index 5fca33c33a..b29119c226 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectTaggingRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectTaggingRequest.h @@ -7,6 +7,7 @@ #include <aws/s3/S3_EXPORTS.h> #include <aws/s3/S3Request.h> #include <aws/core/utils/memory/stl/AWSString.h> +#include <aws/s3/model/RequestPayer.h> #include <aws/core/utils/memory/stl/AWSMap.h> #include <utility> @@ -43,185 +44,177 @@ namespace Model /** * <p>The bucket name containing the object for which to get the tagging - * information. </p> <p>When using this API with an access point, you must direct - * requests to the access point hostname. The access point hostname takes the form + * information. </p> <p>When using this action with an access point, you must + * direct requests to the access point hostname. The access point hostname takes + * the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline const Aws::String& GetBucket() const{ return m_bucket; } /** * <p>The bucket name containing the object for which to get the tagging - * information. </p> <p>When using this API with an access point, you must direct - * requests to the access point hostname. The access point hostname takes the form + * information. </p> <p>When using this action with an access point, you must + * direct requests to the access point hostname. The access point hostname takes + * the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; } /** * <p>The bucket name containing the object for which to get the tagging - * information. </p> <p>When using this API with an access point, you must direct - * requests to the access point hostname. The access point hostname takes the form + * information. </p> <p>When using this action with an access point, you must + * direct requests to the access point hostname. The access point hostname takes + * the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; } /** * <p>The bucket name containing the object for which to get the tagging - * information. </p> <p>When using this API with an access point, you must direct - * requests to the access point hostname. The access point hostname takes the form + * information. </p> <p>When using this action with an access point, you must + * direct requests to the access point hostname. The access point hostname takes + * the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); } /** * <p>The bucket name containing the object for which to get the tagging - * information. </p> <p>When using this API with an access point, you must direct - * requests to the access point hostname. The access point hostname takes the form + * information. </p> <p>When using this action with an access point, you must + * direct requests to the access point hostname. The access point hostname takes + * the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); } /** * <p>The bucket name containing the object for which to get the tagging - * information. </p> <p>When using this API with an access point, you must direct - * requests to the access point hostname. The access point hostname takes the form + * information. </p> <p>When using this action with an access point, you must + * direct requests to the access point hostname. The access point hostname takes + * the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline GetObjectTaggingRequest& WithBucket(const Aws::String& value) { SetBucket(value); return *this;} /** * <p>The bucket name containing the object for which to get the tagging - * information. </p> <p>When using this API with an access point, you must direct - * requests to the access point hostname. The access point hostname takes the form + * information. </p> <p>When using this action with an access point, you must + * direct requests to the access point hostname. The access point hostname takes + * the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline GetObjectTaggingRequest& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;} /** * <p>The bucket name containing the object for which to get the tagging - * information. </p> <p>When using this API with an access point, you must direct - * requests to the access point hostname. The access point hostname takes the form + * information. </p> <p>When using this action with an access point, you must + * direct requests to the access point hostname. The access point hostname takes + * the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline GetObjectTaggingRequest& WithBucket(const char* value) { SetBucket(value); return *this;} @@ -309,56 +302,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline GetObjectTaggingRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline GetObjectTaggingRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ @@ -366,6 +359,25 @@ namespace Model + inline const RequestPayer& GetRequestPayer() const{ return m_requestPayer; } + + + inline bool RequestPayerHasBeenSet() const { return m_requestPayerHasBeenSet; } + + + inline void SetRequestPayer(const RequestPayer& value) { m_requestPayerHasBeenSet = true; m_requestPayer = value; } + + + inline void SetRequestPayer(RequestPayer&& value) { m_requestPayerHasBeenSet = true; m_requestPayer = std::move(value); } + + + inline GetObjectTaggingRequest& WithRequestPayer(const RequestPayer& value) { SetRequestPayer(value); return *this;} + + + inline GetObjectTaggingRequest& WithRequestPayer(RequestPayer&& value) { SetRequestPayer(std::move(value)); return *this;} + + + inline const Aws::Map<Aws::String, Aws::String>& GetCustomizedAccessLogTag() const{ return m_customizedAccessLogTag; } @@ -418,6 +430,9 @@ namespace Model Aws::String m_expectedBucketOwner; bool m_expectedBucketOwnerHasBeenSet; + RequestPayer m_requestPayer; + bool m_requestPayerHasBeenSet; + Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag; bool m_customizedAccessLogTagHasBeenSet; }; diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectTorrentRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectTorrentRequest.h index 732e8f7c03..08f359e8da 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectTorrentRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectTorrentRequest.h @@ -152,56 +152,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline GetObjectTorrentRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline GetObjectTorrentRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetPublicAccessBlockRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetPublicAccessBlockRequest.h index 76c706ec54..1648400d7a 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetPublicAccessBlockRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetPublicAccessBlockRequest.h @@ -91,56 +91,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline GetPublicAccessBlockRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline GetPublicAccessBlockRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/HeadBucketRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/HeadBucketRequest.h index dbef92bdf9..40078434f3 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/HeadBucketRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/HeadBucketRequest.h @@ -42,241 +42,225 @@ namespace Model /** - * <p>The bucket name.</p> <p>When using this API with an access point, you must + * <p>The bucket name.</p> <p>When using this action with an access point, you must * direct requests to the access point hostname. The access point hostname takes * the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline const Aws::String& GetBucket() const{ return m_bucket; } /** - * <p>The bucket name.</p> <p>When using this API with an access point, you must + * <p>The bucket name.</p> <p>When using this action with an access point, you must * direct requests to the access point hostname. The access point hostname takes * the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; } /** - * <p>The bucket name.</p> <p>When using this API with an access point, you must + * <p>The bucket name.</p> <p>When using this action with an access point, you must * direct requests to the access point hostname. The access point hostname takes * the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; } /** - * <p>The bucket name.</p> <p>When using this API with an access point, you must + * <p>The bucket name.</p> <p>When using this action with an access point, you must * direct requests to the access point hostname. The access point hostname takes * the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); } /** - * <p>The bucket name.</p> <p>When using this API with an access point, you must + * <p>The bucket name.</p> <p>When using this action with an access point, you must * direct requests to the access point hostname. The access point hostname takes * the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); } /** - * <p>The bucket name.</p> <p>When using this API with an access point, you must + * <p>The bucket name.</p> <p>When using this action with an access point, you must * direct requests to the access point hostname. The access point hostname takes * the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline HeadBucketRequest& WithBucket(const Aws::String& value) { SetBucket(value); return *this;} /** - * <p>The bucket name.</p> <p>When using this API with an access point, you must + * <p>The bucket name.</p> <p>When using this action with an access point, you must * direct requests to the access point hostname. The access point hostname takes * the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline HeadBucketRequest& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;} /** - * <p>The bucket name.</p> <p>When using this API with an access point, you must + * <p>The bucket name.</p> <p>When using this action with an access point, you must * direct requests to the access point hostname. The access point hostname takes * the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline HeadBucketRequest& WithBucket(const char* value) { SetBucket(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline HeadBucketRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline HeadBucketRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/HeadObjectRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/HeadObjectRequest.h index d7de0c5ab2..88865df794 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/HeadObjectRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/HeadObjectRequest.h @@ -44,186 +44,170 @@ namespace Model /** - * <p>The name of the bucket containing the object.</p> <p>When using this API with - * an access point, you must direct requests to the access point hostname. The + * <p>The name of the bucket containing the object.</p> <p>When using this action + * with an access point, you must direct requests to the access point hostname. The * access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline const Aws::String& GetBucket() const{ return m_bucket; } /** - * <p>The name of the bucket containing the object.</p> <p>When using this API with - * an access point, you must direct requests to the access point hostname. The + * <p>The name of the bucket containing the object.</p> <p>When using this action + * with an access point, you must direct requests to the access point hostname. The * access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; } /** - * <p>The name of the bucket containing the object.</p> <p>When using this API with - * an access point, you must direct requests to the access point hostname. The + * <p>The name of the bucket containing the object.</p> <p>When using this action + * with an access point, you must direct requests to the access point hostname. The * access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; } /** - * <p>The name of the bucket containing the object.</p> <p>When using this API with - * an access point, you must direct requests to the access point hostname. The + * <p>The name of the bucket containing the object.</p> <p>When using this action + * with an access point, you must direct requests to the access point hostname. The * access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); } /** - * <p>The name of the bucket containing the object.</p> <p>When using this API with - * an access point, you must direct requests to the access point hostname. The + * <p>The name of the bucket containing the object.</p> <p>When using this action + * with an access point, you must direct requests to the access point hostname. The * access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); } /** - * <p>The name of the bucket containing the object.</p> <p>When using this API with - * an access point, you must direct requests to the access point hostname. The + * <p>The name of the bucket containing the object.</p> <p>When using this action + * with an access point, you must direct requests to the access point hostname. The * access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline HeadObjectRequest& WithBucket(const Aws::String& value) { SetBucket(value); return *this;} /** - * <p>The name of the bucket containing the object.</p> <p>When using this API with - * an access point, you must direct requests to the access point hostname. The + * <p>The name of the bucket containing the object.</p> <p>When using this action + * with an access point, you must direct requests to the access point hostname. The * access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline HeadObjectRequest& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;} /** - * <p>The name of the bucket containing the object.</p> <p>When using this API with - * an access point, you must direct requests to the access point hostname. The + * <p>The name of the bucket containing the object.</p> <p>When using this action + * with an access point, you must direct requests to the access point hostname. The * access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline HeadObjectRequest& WithBucket(const char* value) { SetBucket(value); return *this;} @@ -787,56 +771,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline HeadObjectRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline HeadObjectRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/HeadObjectResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/HeadObjectResult.h index 7004c0a825..e12fddb225 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/HeadObjectResult.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/HeadObjectResult.h @@ -161,7 +161,7 @@ namespace Model * or an archive copy is already restored.</p> <p> If an archive copy is already * restored, the header value indicates when Amazon S3 is scheduled to delete the * object copy. For example:</p> <p> <code>x-amz-restore: ongoing-request="false", - * expiry-date="Fri, 23 Dec 2012 00:00:00 GMT"</code> </p> <p>If the object + * expiry-date="Fri, 21 Dec 2012 00:00:00 GMT"</code> </p> <p>If the object * restoration is in progress, the header returns the value * <code>ongoing-request="true"</code>.</p> <p>For more information about archiving * objects, see <a @@ -178,7 +178,7 @@ namespace Model * or an archive copy is already restored.</p> <p> If an archive copy is already * restored, the header value indicates when Amazon S3 is scheduled to delete the * object copy. For example:</p> <p> <code>x-amz-restore: ongoing-request="false", - * expiry-date="Fri, 23 Dec 2012 00:00:00 GMT"</code> </p> <p>If the object + * expiry-date="Fri, 21 Dec 2012 00:00:00 GMT"</code> </p> <p>If the object * restoration is in progress, the header returns the value * <code>ongoing-request="true"</code>.</p> <p>For more information about archiving * objects, see <a @@ -195,7 +195,7 @@ namespace Model * or an archive copy is already restored.</p> <p> If an archive copy is already * restored, the header value indicates when Amazon S3 is scheduled to delete the * object copy. For example:</p> <p> <code>x-amz-restore: ongoing-request="false", - * expiry-date="Fri, 23 Dec 2012 00:00:00 GMT"</code> </p> <p>If the object + * expiry-date="Fri, 21 Dec 2012 00:00:00 GMT"</code> </p> <p>If the object * restoration is in progress, the header returns the value * <code>ongoing-request="true"</code>.</p> <p>For more information about archiving * objects, see <a @@ -212,7 +212,7 @@ namespace Model * or an archive copy is already restored.</p> <p> If an archive copy is already * restored, the header value indicates when Amazon S3 is scheduled to delete the * object copy. For example:</p> <p> <code>x-amz-restore: ongoing-request="false", - * expiry-date="Fri, 23 Dec 2012 00:00:00 GMT"</code> </p> <p>If the object + * expiry-date="Fri, 21 Dec 2012 00:00:00 GMT"</code> </p> <p>If the object * restoration is in progress, the header returns the value * <code>ongoing-request="true"</code>.</p> <p>For more information about archiving * objects, see <a @@ -229,7 +229,7 @@ namespace Model * or an archive copy is already restored.</p> <p> If an archive copy is already * restored, the header value indicates when Amazon S3 is scheduled to delete the * object copy. For example:</p> <p> <code>x-amz-restore: ongoing-request="false", - * expiry-date="Fri, 23 Dec 2012 00:00:00 GMT"</code> </p> <p>If the object + * expiry-date="Fri, 21 Dec 2012 00:00:00 GMT"</code> </p> <p>If the object * restoration is in progress, the header returns the value * <code>ongoing-request="true"</code>.</p> <p>For more information about archiving * objects, see <a @@ -246,7 +246,7 @@ namespace Model * or an archive copy is already restored.</p> <p> If an archive copy is already * restored, the header value indicates when Amazon S3 is scheduled to delete the * object copy. For example:</p> <p> <code>x-amz-restore: ongoing-request="false", - * expiry-date="Fri, 23 Dec 2012 00:00:00 GMT"</code> </p> <p>If the object + * expiry-date="Fri, 21 Dec 2012 00:00:00 GMT"</code> </p> <p>If the object * restoration is in progress, the header returns the value * <code>ongoing-request="true"</code>.</p> <p>For more information about archiving * objects, see <a @@ -263,7 +263,7 @@ namespace Model * or an archive copy is already restored.</p> <p> If an archive copy is already * restored, the header value indicates when Amazon S3 is scheduled to delete the * object copy. For example:</p> <p> <code>x-amz-restore: ongoing-request="false", - * expiry-date="Fri, 23 Dec 2012 00:00:00 GMT"</code> </p> <p>If the object + * expiry-date="Fri, 21 Dec 2012 00:00:00 GMT"</code> </p> <p>If the object * restoration is in progress, the header returns the value * <code>ongoing-request="true"</code>.</p> <p>For more information about archiving * objects, see <a @@ -300,27 +300,27 @@ namespace Model /** - * <p>Last modified date of the object</p> + * <p>Creation date of the object.</p> */ inline const Aws::Utils::DateTime& GetLastModified() const{ return m_lastModified; } /** - * <p>Last modified date of the object</p> + * <p>Creation date of the object.</p> */ inline void SetLastModified(const Aws::Utils::DateTime& value) { m_lastModified = value; } /** - * <p>Last modified date of the object</p> + * <p>Creation date of the object.</p> */ inline void SetLastModified(Aws::Utils::DateTime&& value) { m_lastModified = std::move(value); } /** - * <p>Last modified date of the object</p> + * <p>Creation date of the object.</p> */ inline HeadObjectResult& WithLastModified(const Aws::Utils::DateTime& value) { SetLastModified(value); return *this;} /** - * <p>Last modified date of the object</p> + * <p>Creation date of the object.</p> */ inline HeadObjectResult& WithLastModified(Aws::Utils::DateTime&& value) { SetLastModified(std::move(value)); return *this;} diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/IndexDocument.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/IndexDocument.h index 1bd88410c6..8f303f7252 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/IndexDocument.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/IndexDocument.h @@ -42,7 +42,11 @@ namespace Model * endpoint (for example,if the suffix is index.html and you make a request to * samplebucket/images/ the data that is returned will be for the object with the * key name images/index.html) The suffix must not be empty and must not include a - * slash character.</p> + * slash character.</p> <p>Replacement must be made for object keys + * containing special characters (such as carriage returns) when using XML + * requests. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline const Aws::String& GetSuffix() const{ return m_suffix; } @@ -51,7 +55,11 @@ namespace Model * endpoint (for example,if the suffix is index.html and you make a request to * samplebucket/images/ the data that is returned will be for the object with the * key name images/index.html) The suffix must not be empty and must not include a - * slash character.</p> + * slash character.</p> <p>Replacement must be made for object keys + * containing special characters (such as carriage returns) when using XML + * requests. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline bool SuffixHasBeenSet() const { return m_suffixHasBeenSet; } @@ -60,7 +68,11 @@ namespace Model * endpoint (for example,if the suffix is index.html and you make a request to * samplebucket/images/ the data that is returned will be for the object with the * key name images/index.html) The suffix must not be empty and must not include a - * slash character.</p> + * slash character.</p> <p>Replacement must be made for object keys + * containing special characters (such as carriage returns) when using XML + * requests. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline void SetSuffix(const Aws::String& value) { m_suffixHasBeenSet = true; m_suffix = value; } @@ -69,7 +81,11 @@ namespace Model * endpoint (for example,if the suffix is index.html and you make a request to * samplebucket/images/ the data that is returned will be for the object with the * key name images/index.html) The suffix must not be empty and must not include a - * slash character.</p> + * slash character.</p> <p>Replacement must be made for object keys + * containing special characters (such as carriage returns) when using XML + * requests. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline void SetSuffix(Aws::String&& value) { m_suffixHasBeenSet = true; m_suffix = std::move(value); } @@ -78,7 +94,11 @@ namespace Model * endpoint (for example,if the suffix is index.html and you make a request to * samplebucket/images/ the data that is returned will be for the object with the * key name images/index.html) The suffix must not be empty and must not include a - * slash character.</p> + * slash character.</p> <p>Replacement must be made for object keys + * containing special characters (such as carriage returns) when using XML + * requests. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline void SetSuffix(const char* value) { m_suffixHasBeenSet = true; m_suffix.assign(value); } @@ -87,7 +107,11 @@ namespace Model * endpoint (for example,if the suffix is index.html and you make a request to * samplebucket/images/ the data that is returned will be for the object with the * key name images/index.html) The suffix must not be empty and must not include a - * slash character.</p> + * slash character.</p> <p>Replacement must be made for object keys + * containing special characters (such as carriage returns) when using XML + * requests. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline IndexDocument& WithSuffix(const Aws::String& value) { SetSuffix(value); return *this;} @@ -96,7 +120,11 @@ namespace Model * endpoint (for example,if the suffix is index.html and you make a request to * samplebucket/images/ the data that is returned will be for the object with the * key name images/index.html) The suffix must not be empty and must not include a - * slash character.</p> + * slash character.</p> <p>Replacement must be made for object keys + * containing special characters (such as carriage returns) when using XML + * requests. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline IndexDocument& WithSuffix(Aws::String&& value) { SetSuffix(std::move(value)); return *this;} @@ -105,7 +133,11 @@ namespace Model * endpoint (for example,if the suffix is index.html and you make a request to * samplebucket/images/ the data that is returned will be for the object with the * key name images/index.html) The suffix must not be empty and must not include a - * slash character.</p> + * slash character.</p> <p>Replacement must be made for object keys + * containing special characters (such as carriage returns) when using XML + * requests. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline IndexDocument& WithSuffix(const char* value) { SetSuffix(value); return *this;} diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/IntelligentTieringFilter.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/IntelligentTieringFilter.h index 971f9569cc..9eb538ea13 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/IntelligentTieringFilter.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/IntelligentTieringFilter.h @@ -42,49 +42,81 @@ namespace Model /** * <p>An object key name prefix that identifies the subset of objects to which the - * rule applies.</p> + * rule applies.</p> <p>Replacement must be made for object keys + * containing special characters (such as carriage returns) when using XML + * requests. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline const Aws::String& GetPrefix() const{ return m_prefix; } /** * <p>An object key name prefix that identifies the subset of objects to which the - * rule applies.</p> + * rule applies.</p> <p>Replacement must be made for object keys + * containing special characters (such as carriage returns) when using XML + * requests. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline bool PrefixHasBeenSet() const { return m_prefixHasBeenSet; } /** * <p>An object key name prefix that identifies the subset of objects to which the - * rule applies.</p> + * rule applies.</p> <p>Replacement must be made for object keys + * containing special characters (such as carriage returns) when using XML + * requests. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline void SetPrefix(const Aws::String& value) { m_prefixHasBeenSet = true; m_prefix = value; } /** * <p>An object key name prefix that identifies the subset of objects to which the - * rule applies.</p> + * rule applies.</p> <p>Replacement must be made for object keys + * containing special characters (such as carriage returns) when using XML + * requests. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline void SetPrefix(Aws::String&& value) { m_prefixHasBeenSet = true; m_prefix = std::move(value); } /** * <p>An object key name prefix that identifies the subset of objects to which the - * rule applies.</p> + * rule applies.</p> <p>Replacement must be made for object keys + * containing special characters (such as carriage returns) when using XML + * requests. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline void SetPrefix(const char* value) { m_prefixHasBeenSet = true; m_prefix.assign(value); } /** * <p>An object key name prefix that identifies the subset of objects to which the - * rule applies.</p> + * rule applies.</p> <p>Replacement must be made for object keys + * containing special characters (such as carriage returns) when using XML + * requests. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline IntelligentTieringFilter& WithPrefix(const Aws::String& value) { SetPrefix(value); return *this;} /** * <p>An object key name prefix that identifies the subset of objects to which the - * rule applies.</p> + * rule applies.</p> <p>Replacement must be made for object keys + * containing special characters (such as carriage returns) when using XML + * requests. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline IntelligentTieringFilter& WithPrefix(Aws::String&& value) { SetPrefix(std::move(value)); return *this;} /** * <p>An object key name prefix that identifies the subset of objects to which the - * rule applies.</p> + * rule applies.</p> <p>Replacement must be made for object keys + * containing special characters (such as carriage returns) when using XML + * requests. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline IntelligentTieringFilter& WithPrefix(const char* value) { SetPrefix(value); return *this;} diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/LambdaFunctionConfiguration.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/LambdaFunctionConfiguration.h index df9aaa6bdf..3e0041301e 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/LambdaFunctionConfiguration.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/LambdaFunctionConfiguration.h @@ -119,7 +119,7 @@ namespace Model * <p>The Amazon S3 bucket event for which to invoke the AWS Lambda function. For * more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html">Supported - * Event Types</a> in the <i>Amazon Simple Storage Service Developer Guide</i>.</p> + * Event Types</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline const Aws::Vector<Event>& GetEvents() const{ return m_events; } @@ -127,7 +127,7 @@ namespace Model * <p>The Amazon S3 bucket event for which to invoke the AWS Lambda function. For * more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html">Supported - * Event Types</a> in the <i>Amazon Simple Storage Service Developer Guide</i>.</p> + * Event Types</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline bool EventsHasBeenSet() const { return m_eventsHasBeenSet; } @@ -135,7 +135,7 @@ namespace Model * <p>The Amazon S3 bucket event for which to invoke the AWS Lambda function. For * more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html">Supported - * Event Types</a> in the <i>Amazon Simple Storage Service Developer Guide</i>.</p> + * Event Types</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetEvents(const Aws::Vector<Event>& value) { m_eventsHasBeenSet = true; m_events = value; } @@ -143,7 +143,7 @@ namespace Model * <p>The Amazon S3 bucket event for which to invoke the AWS Lambda function. For * more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html">Supported - * Event Types</a> in the <i>Amazon Simple Storage Service Developer Guide</i>.</p> + * Event Types</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetEvents(Aws::Vector<Event>&& value) { m_eventsHasBeenSet = true; m_events = std::move(value); } @@ -151,7 +151,7 @@ namespace Model * <p>The Amazon S3 bucket event for which to invoke the AWS Lambda function. For * more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html">Supported - * Event Types</a> in the <i>Amazon Simple Storage Service Developer Guide</i>.</p> + * Event Types</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline LambdaFunctionConfiguration& WithEvents(const Aws::Vector<Event>& value) { SetEvents(value); return *this;} @@ -159,7 +159,7 @@ namespace Model * <p>The Amazon S3 bucket event for which to invoke the AWS Lambda function. For * more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html">Supported - * Event Types</a> in the <i>Amazon Simple Storage Service Developer Guide</i>.</p> + * Event Types</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline LambdaFunctionConfiguration& WithEvents(Aws::Vector<Event>&& value) { SetEvents(std::move(value)); return *this;} @@ -167,7 +167,7 @@ namespace Model * <p>The Amazon S3 bucket event for which to invoke the AWS Lambda function. For * more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html">Supported - * Event Types</a> in the <i>Amazon Simple Storage Service Developer Guide</i>.</p> + * Event Types</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline LambdaFunctionConfiguration& AddEvents(const Event& value) { m_eventsHasBeenSet = true; m_events.push_back(value); return *this; } @@ -175,7 +175,7 @@ namespace Model * <p>The Amazon S3 bucket event for which to invoke the AWS Lambda function. For * more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html">Supported - * Event Types</a> in the <i>Amazon Simple Storage Service Developer Guide</i>.</p> + * Event Types</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline LambdaFunctionConfiguration& AddEvents(Event&& value) { m_eventsHasBeenSet = true; m_events.push_back(std::move(value)); return *this; } diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/LifecycleRule.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/LifecycleRule.h index 573af31c60..b26475ff83 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/LifecycleRule.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/LifecycleRule.h @@ -132,22 +132,58 @@ namespace Model inline LifecycleRule& WithID(const char* value) { SetID(value); return *this;} - + /** + * <p>The <code>Filter</code> is used to identify objects that a Lifecycle Rule + * applies to. A <code>Filter</code> must have exactly one of <code>Prefix</code>, + * <code>Tag</code>, or <code>And</code> specified. <code>Filter</code> is required + * if the <code>LifecycleRule</code> does not containt a <code>Prefix</code> + * element.</p> + */ inline const LifecycleRuleFilter& GetFilter() const{ return m_filter; } - + /** + * <p>The <code>Filter</code> is used to identify objects that a Lifecycle Rule + * applies to. A <code>Filter</code> must have exactly one of <code>Prefix</code>, + * <code>Tag</code>, or <code>And</code> specified. <code>Filter</code> is required + * if the <code>LifecycleRule</code> does not containt a <code>Prefix</code> + * element.</p> + */ inline bool FilterHasBeenSet() const { return m_filterHasBeenSet; } - + /** + * <p>The <code>Filter</code> is used to identify objects that a Lifecycle Rule + * applies to. A <code>Filter</code> must have exactly one of <code>Prefix</code>, + * <code>Tag</code>, or <code>And</code> specified. <code>Filter</code> is required + * if the <code>LifecycleRule</code> does not containt a <code>Prefix</code> + * element.</p> + */ inline void SetFilter(const LifecycleRuleFilter& value) { m_filterHasBeenSet = true; m_filter = value; } - + /** + * <p>The <code>Filter</code> is used to identify objects that a Lifecycle Rule + * applies to. A <code>Filter</code> must have exactly one of <code>Prefix</code>, + * <code>Tag</code>, or <code>And</code> specified. <code>Filter</code> is required + * if the <code>LifecycleRule</code> does not containt a <code>Prefix</code> + * element.</p> + */ inline void SetFilter(LifecycleRuleFilter&& value) { m_filterHasBeenSet = true; m_filter = std::move(value); } - + /** + * <p>The <code>Filter</code> is used to identify objects that a Lifecycle Rule + * applies to. A <code>Filter</code> must have exactly one of <code>Prefix</code>, + * <code>Tag</code>, or <code>And</code> specified. <code>Filter</code> is required + * if the <code>LifecycleRule</code> does not containt a <code>Prefix</code> + * element.</p> + */ inline LifecycleRule& WithFilter(const LifecycleRuleFilter& value) { SetFilter(value); return *this;} - + /** + * <p>The <code>Filter</code> is used to identify objects that a Lifecycle Rule + * applies to. A <code>Filter</code> must have exactly one of <code>Prefix</code>, + * <code>Tag</code>, or <code>And</code> specified. <code>Filter</code> is required + * if the <code>LifecycleRule</code> does not containt a <code>Prefix</code> + * element.</p> + */ inline LifecycleRule& WithFilter(LifecycleRuleFilter&& value) { SetFilter(std::move(value)); return *this;} diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/LifecycleRuleFilter.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/LifecycleRuleFilter.h index 1903c7af67..74e57e178a 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/LifecycleRuleFilter.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/LifecycleRuleFilter.h @@ -43,41 +43,81 @@ namespace Model /** * <p>Prefix identifying one or more objects to which the rule applies.</p> + * <p>Replacement must be made for object keys containing special + * characters (such as carriage returns) when using XML requests. For more + * information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline const Aws::String& GetPrefix() const{ return m_prefix; } /** * <p>Prefix identifying one or more objects to which the rule applies.</p> + * <p>Replacement must be made for object keys containing special + * characters (such as carriage returns) when using XML requests. For more + * information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline bool PrefixHasBeenSet() const { return m_prefixHasBeenSet; } /** * <p>Prefix identifying one or more objects to which the rule applies.</p> + * <p>Replacement must be made for object keys containing special + * characters (such as carriage returns) when using XML requests. For more + * information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline void SetPrefix(const Aws::String& value) { m_prefixHasBeenSet = true; m_prefix = value; } /** * <p>Prefix identifying one or more objects to which the rule applies.</p> + * <p>Replacement must be made for object keys containing special + * characters (such as carriage returns) when using XML requests. For more + * information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline void SetPrefix(Aws::String&& value) { m_prefixHasBeenSet = true; m_prefix = std::move(value); } /** * <p>Prefix identifying one or more objects to which the rule applies.</p> + * <p>Replacement must be made for object keys containing special + * characters (such as carriage returns) when using XML requests. For more + * information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline void SetPrefix(const char* value) { m_prefixHasBeenSet = true; m_prefix.assign(value); } /** * <p>Prefix identifying one or more objects to which the rule applies.</p> + * <p>Replacement must be made for object keys containing special + * characters (such as carriage returns) when using XML requests. For more + * information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline LifecycleRuleFilter& WithPrefix(const Aws::String& value) { SetPrefix(value); return *this;} /** * <p>Prefix identifying one or more objects to which the rule applies.</p> + * <p>Replacement must be made for object keys containing special + * characters (such as carriage returns) when using XML requests. For more + * information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline LifecycleRuleFilter& WithPrefix(Aws::String&& value) { SetPrefix(std::move(value)); return *this;} /** * <p>Prefix identifying one or more objects to which the rule applies.</p> + * <p>Replacement must be made for object keys containing special + * characters (such as carriage returns) when using XML requests. For more + * information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline LifecycleRuleFilter& WithPrefix(const char* value) { SetPrefix(value); return *this;} diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListBucketAnalyticsConfigurationsRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListBucketAnalyticsConfigurationsRequest.h index c4e27125e7..8985a2ad10 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListBucketAnalyticsConfigurationsRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListBucketAnalyticsConfigurationsRequest.h @@ -132,56 +132,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline ListBucketAnalyticsConfigurationsRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline ListBucketAnalyticsConfigurationsRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListBucketInventoryConfigurationsRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListBucketInventoryConfigurationsRequest.h index d1b424439d..b6c8743dea 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListBucketInventoryConfigurationsRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListBucketInventoryConfigurationsRequest.h @@ -156,56 +156,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline ListBucketInventoryConfigurationsRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline ListBucketInventoryConfigurationsRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListBucketMetricsConfigurationsRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListBucketMetricsConfigurationsRequest.h index ce84ae1a59..03ac696974 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListBucketMetricsConfigurationsRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListBucketMetricsConfigurationsRequest.h @@ -148,56 +148,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline ListBucketMetricsConfigurationsRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline ListBucketMetricsConfigurationsRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListMultipartUploadsRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListMultipartUploadsRequest.h index e40941b26a..97e0e566ad 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListMultipartUploadsRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListMultipartUploadsRequest.h @@ -44,185 +44,169 @@ namespace Model /** * <p>The name of the bucket to which the multipart upload was initiated. </p> - * <p>When using this API with an access point, you must direct requests to the + * <p>When using this action with an access point, you must direct requests to the * access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline const Aws::String& GetBucket() const{ return m_bucket; } /** * <p>The name of the bucket to which the multipart upload was initiated. </p> - * <p>When using this API with an access point, you must direct requests to the + * <p>When using this action with an access point, you must direct requests to the * access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; } /** * <p>The name of the bucket to which the multipart upload was initiated. </p> - * <p>When using this API with an access point, you must direct requests to the + * <p>When using this action with an access point, you must direct requests to the * access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; } /** * <p>The name of the bucket to which the multipart upload was initiated. </p> - * <p>When using this API with an access point, you must direct requests to the + * <p>When using this action with an access point, you must direct requests to the * access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); } /** * <p>The name of the bucket to which the multipart upload was initiated. </p> - * <p>When using this API with an access point, you must direct requests to the + * <p>When using this action with an access point, you must direct requests to the * access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); } /** * <p>The name of the bucket to which the multipart upload was initiated. </p> - * <p>When using this API with an access point, you must direct requests to the + * <p>When using this action with an access point, you must direct requests to the * access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline ListMultipartUploadsRequest& WithBucket(const Aws::String& value) { SetBucket(value); return *this;} /** * <p>The name of the bucket to which the multipart upload was initiated. </p> - * <p>When using this API with an access point, you must direct requests to the + * <p>When using this action with an access point, you must direct requests to the * access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline ListMultipartUploadsRequest& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;} /** * <p>The name of the bucket to which the multipart upload was initiated. </p> - * <p>When using this API with an access point, you must direct requests to the + * <p>When using this action with an access point, you must direct requests to the * access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline ListMultipartUploadsRequest& WithBucket(const char* value) { SetBucket(value); return *this;} @@ -600,56 +584,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline ListMultipartUploadsRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline ListMultipartUploadsRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListObjectVersionsRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListObjectVersionsRequest.h index 652fe1c89c..9bad797dca 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListObjectVersionsRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListObjectVersionsRequest.h @@ -217,40 +217,40 @@ namespace Model /** - * <p>Sets the maximum number of keys returned in the response. By default the API - * 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 + * <p>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 * <isTruncated>true</isTruncated>. To return the additional keys, see * key-marker and version-id-marker.</p> */ inline int GetMaxKeys() const{ return m_maxKeys; } /** - * <p>Sets the maximum number of keys returned in the response. By default the API - * 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 + * <p>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 * <isTruncated>true</isTruncated>. To return the additional keys, see * key-marker and version-id-marker.</p> */ inline bool MaxKeysHasBeenSet() const { return m_maxKeysHasBeenSet; } /** - * <p>Sets the maximum number of keys returned in the response. By default the API - * 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 + * <p>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 * <isTruncated>true</isTruncated>. To return the additional keys, see * key-marker and version-id-marker.</p> */ inline void SetMaxKeys(int value) { m_maxKeysHasBeenSet = true; m_maxKeys = value; } /** - * <p>Sets the maximum number of keys returned in the response. By default the API - * 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 + * <p>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 * <isTruncated>true</isTruncated>. To return the additional keys, see * key-marker and version-id-marker.</p> */ @@ -372,56 +372,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline ListObjectVersionsRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline ListObjectVersionsRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListObjectsRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListObjectsRequest.h index 08a2bdccd3..0c3c88b0a6 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListObjectsRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListObjectsRequest.h @@ -44,186 +44,170 @@ namespace Model /** - * <p>The name of the bucket containing the objects.</p> <p>When using this API + * <p>The name of the bucket containing the objects.</p> <p>When using this action * with an access point, you must direct requests to the access point hostname. The * access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline const Aws::String& GetBucket() const{ return m_bucket; } /** - * <p>The name of the bucket containing the objects.</p> <p>When using this API + * <p>The name of the bucket containing the objects.</p> <p>When using this action * with an access point, you must direct requests to the access point hostname. The * access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; } /** - * <p>The name of the bucket containing the objects.</p> <p>When using this API + * <p>The name of the bucket containing the objects.</p> <p>When using this action * with an access point, you must direct requests to the access point hostname. The * access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; } /** - * <p>The name of the bucket containing the objects.</p> <p>When using this API + * <p>The name of the bucket containing the objects.</p> <p>When using this action * with an access point, you must direct requests to the access point hostname. The * access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); } /** - * <p>The name of the bucket containing the objects.</p> <p>When using this API + * <p>The name of the bucket containing the objects.</p> <p>When using this action * with an access point, you must direct requests to the access point hostname. The * access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); } /** - * <p>The name of the bucket containing the objects.</p> <p>When using this API + * <p>The name of the bucket containing the objects.</p> <p>When using this action * with an access point, you must direct requests to the access point hostname. The * access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline ListObjectsRequest& WithBucket(const Aws::String& value) { SetBucket(value); return *this;} /** - * <p>The name of the bucket containing the objects.</p> <p>When using this API + * <p>The name of the bucket containing the objects.</p> <p>When using this action * with an access point, you must direct requests to the access point hostname. The * access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline ListObjectsRequest& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;} /** - * <p>The name of the bucket containing the objects.</p> <p>When using this API + * <p>The name of the bucket containing the objects.</p> <p>When using this action * with an access point, you must direct requests to the access point hostname. The * access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline ListObjectsRequest& WithBucket(const char* value) { SetBucket(value); return *this;} @@ -330,30 +314,30 @@ namespace Model /** - * <p>Sets the maximum number of keys returned in the response. By default the API - * returns up to 1,000 key names. The response might contain fewer keys but will - * never contain more. </p> + * <p>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. </p> */ inline int GetMaxKeys() const{ return m_maxKeys; } /** - * <p>Sets the maximum number of keys returned in the response. By default the API - * returns up to 1,000 key names. The response might contain fewer keys but will - * never contain more. </p> + * <p>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. </p> */ inline bool MaxKeysHasBeenSet() const { return m_maxKeysHasBeenSet; } /** - * <p>Sets the maximum number of keys returned in the response. By default the API - * returns up to 1,000 key names. The response might contain fewer keys but will - * never contain more. </p> + * <p>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. </p> */ inline void SetMaxKeys(int value) { m_maxKeysHasBeenSet = true; m_maxKeys = value; } /** - * <p>Sets the maximum number of keys returned in the response. By default the API - * returns up to 1,000 key names. The response might contain fewer keys but will - * never contain more. </p> + * <p>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. </p> */ inline ListObjectsRequest& WithMaxKeys(int value) { SetMaxKeys(value); return *this;} @@ -443,56 +427,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline ListObjectsRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline ListObjectsRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListObjectsResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListObjectsResult.h index 69f60d384b..cb3b03ca2e 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListObjectsResult.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListObjectsResult.h @@ -365,93 +365,93 @@ namespace Model /** - * <p>All of the keys rolled up in a common prefix count as a single return when - * calculating the number of returns. </p> <p>A response can contain CommonPrefixes - * only if you specify a delimiter.</p> <p>CommonPrefixes contains all (if there - * are any) keys between Prefix and the next occurrence of the string specified by - * the delimiter.</p> <p> CommonPrefixes lists keys that act like subdirectories in - * the directory specified by Prefix.</p> <p>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.</p> + * <p>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. </p> <p>A response can contain + * CommonPrefixes only if you specify a delimiter.</p> <p>CommonPrefixes contains + * all (if there are any) keys between Prefix and the next occurrence of the string + * specified by the delimiter.</p> <p> CommonPrefixes lists keys that act like + * subdirectories in the directory specified by Prefix.</p> <p>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.</p> */ inline const Aws::Vector<CommonPrefix>& GetCommonPrefixes() const{ return m_commonPrefixes; } /** - * <p>All of the keys rolled up in a common prefix count as a single return when - * calculating the number of returns. </p> <p>A response can contain CommonPrefixes - * only if you specify a delimiter.</p> <p>CommonPrefixes contains all (if there - * are any) keys between Prefix and the next occurrence of the string specified by - * the delimiter.</p> <p> CommonPrefixes lists keys that act like subdirectories in - * the directory specified by Prefix.</p> <p>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.</p> + * <p>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. </p> <p>A response can contain + * CommonPrefixes only if you specify a delimiter.</p> <p>CommonPrefixes contains + * all (if there are any) keys between Prefix and the next occurrence of the string + * specified by the delimiter.</p> <p> CommonPrefixes lists keys that act like + * subdirectories in the directory specified by Prefix.</p> <p>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.</p> */ inline void SetCommonPrefixes(const Aws::Vector<CommonPrefix>& value) { m_commonPrefixes = value; } /** - * <p>All of the keys rolled up in a common prefix count as a single return when - * calculating the number of returns. </p> <p>A response can contain CommonPrefixes - * only if you specify a delimiter.</p> <p>CommonPrefixes contains all (if there - * are any) keys between Prefix and the next occurrence of the string specified by - * the delimiter.</p> <p> CommonPrefixes lists keys that act like subdirectories in - * the directory specified by Prefix.</p> <p>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.</p> + * <p>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. </p> <p>A response can contain + * CommonPrefixes only if you specify a delimiter.</p> <p>CommonPrefixes contains + * all (if there are any) keys between Prefix and the next occurrence of the string + * specified by the delimiter.</p> <p> CommonPrefixes lists keys that act like + * subdirectories in the directory specified by Prefix.</p> <p>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.</p> */ inline void SetCommonPrefixes(Aws::Vector<CommonPrefix>&& value) { m_commonPrefixes = std::move(value); } /** - * <p>All of the keys rolled up in a common prefix count as a single return when - * calculating the number of returns. </p> <p>A response can contain CommonPrefixes - * only if you specify a delimiter.</p> <p>CommonPrefixes contains all (if there - * are any) keys between Prefix and the next occurrence of the string specified by - * the delimiter.</p> <p> CommonPrefixes lists keys that act like subdirectories in - * the directory specified by Prefix.</p> <p>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.</p> + * <p>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. </p> <p>A response can contain + * CommonPrefixes only if you specify a delimiter.</p> <p>CommonPrefixes contains + * all (if there are any) keys between Prefix and the next occurrence of the string + * specified by the delimiter.</p> <p> CommonPrefixes lists keys that act like + * subdirectories in the directory specified by Prefix.</p> <p>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.</p> */ inline ListObjectsResult& WithCommonPrefixes(const Aws::Vector<CommonPrefix>& value) { SetCommonPrefixes(value); return *this;} /** - * <p>All of the keys rolled up in a common prefix count as a single return when - * calculating the number of returns. </p> <p>A response can contain CommonPrefixes - * only if you specify a delimiter.</p> <p>CommonPrefixes contains all (if there - * are any) keys between Prefix and the next occurrence of the string specified by - * the delimiter.</p> <p> CommonPrefixes lists keys that act like subdirectories in - * the directory specified by Prefix.</p> <p>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.</p> + * <p>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. </p> <p>A response can contain + * CommonPrefixes only if you specify a delimiter.</p> <p>CommonPrefixes contains + * all (if there are any) keys between Prefix and the next occurrence of the string + * specified by the delimiter.</p> <p> CommonPrefixes lists keys that act like + * subdirectories in the directory specified by Prefix.</p> <p>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.</p> */ inline ListObjectsResult& WithCommonPrefixes(Aws::Vector<CommonPrefix>&& value) { SetCommonPrefixes(std::move(value)); return *this;} /** - * <p>All of the keys rolled up in a common prefix count as a single return when - * calculating the number of returns. </p> <p>A response can contain CommonPrefixes - * only if you specify a delimiter.</p> <p>CommonPrefixes contains all (if there - * are any) keys between Prefix and the next occurrence of the string specified by - * the delimiter.</p> <p> CommonPrefixes lists keys that act like subdirectories in - * the directory specified by Prefix.</p> <p>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.</p> + * <p>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. </p> <p>A response can contain + * CommonPrefixes only if you specify a delimiter.</p> <p>CommonPrefixes contains + * all (if there are any) keys between Prefix and the next occurrence of the string + * specified by the delimiter.</p> <p> CommonPrefixes lists keys that act like + * subdirectories in the directory specified by Prefix.</p> <p>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.</p> */ inline ListObjectsResult& AddCommonPrefixes(const CommonPrefix& value) { m_commonPrefixes.push_back(value); return *this; } /** - * <p>All of the keys rolled up in a common prefix count as a single return when - * calculating the number of returns. </p> <p>A response can contain CommonPrefixes - * only if you specify a delimiter.</p> <p>CommonPrefixes contains all (if there - * are any) keys between Prefix and the next occurrence of the string specified by - * the delimiter.</p> <p> CommonPrefixes lists keys that act like subdirectories in - * the directory specified by Prefix.</p> <p>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.</p> + * <p>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. </p> <p>A response can contain + * CommonPrefixes only if you specify a delimiter.</p> <p>CommonPrefixes contains + * all (if there are any) keys between Prefix and the next occurrence of the string + * specified by the delimiter.</p> <p> CommonPrefixes lists keys that act like + * subdirectories in the directory specified by Prefix.</p> <p>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.</p> */ inline ListObjectsResult& AddCommonPrefixes(CommonPrefix&& value) { m_commonPrefixes.push_back(std::move(value)); return *this; } diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListObjectsV2Request.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListObjectsV2Request.h index c5e875a674..7a8bd556b3 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListObjectsV2Request.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListObjectsV2Request.h @@ -44,186 +44,170 @@ namespace Model /** - * <p>Bucket name to list. </p> <p>When using this API with an access point, you + * <p>Bucket name to list. </p> <p>When using this action with an access point, you * must direct requests to the access point hostname. The access point hostname * takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline const Aws::String& GetBucket() const{ return m_bucket; } /** - * <p>Bucket name to list. </p> <p>When using this API with an access point, you + * <p>Bucket name to list. </p> <p>When using this action with an access point, you * must direct requests to the access point hostname. The access point hostname * takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; } /** - * <p>Bucket name to list. </p> <p>When using this API with an access point, you + * <p>Bucket name to list. </p> <p>When using this action with an access point, you * must direct requests to the access point hostname. The access point hostname * takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; } /** - * <p>Bucket name to list. </p> <p>When using this API with an access point, you + * <p>Bucket name to list. </p> <p>When using this action with an access point, you * must direct requests to the access point hostname. The access point hostname * takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); } /** - * <p>Bucket name to list. </p> <p>When using this API with an access point, you + * <p>Bucket name to list. </p> <p>When using this action with an access point, you * must direct requests to the access point hostname. The access point hostname * takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); } /** - * <p>Bucket name to list. </p> <p>When using this API with an access point, you + * <p>Bucket name to list. </p> <p>When using this action with an access point, you * must direct requests to the access point hostname. The access point hostname * takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline ListObjectsV2Request& WithBucket(const Aws::String& value) { SetBucket(value); return *this;} /** - * <p>Bucket name to list. </p> <p>When using this API with an access point, you + * <p>Bucket name to list. </p> <p>When using this action with an access point, you * must direct requests to the access point hostname. The access point hostname * takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline ListObjectsV2Request& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;} /** - * <p>Bucket name to list. </p> <p>When using this API with an access point, you + * <p>Bucket name to list. </p> <p>When using this action with an access point, you * must direct requests to the access point hostname. The access point hostname * takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline ListObjectsV2Request& WithBucket(const char* value) { SetBucket(value); return *this;} @@ -301,30 +285,30 @@ namespace Model /** - * <p>Sets the maximum number of keys returned in the response. By default the API - * returns up to 1,000 key names. The response might contain fewer keys but will - * never contain more.</p> + * <p>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.</p> */ inline int GetMaxKeys() const{ return m_maxKeys; } /** - * <p>Sets the maximum number of keys returned in the response. By default the API - * returns up to 1,000 key names. The response might contain fewer keys but will - * never contain more.</p> + * <p>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.</p> */ inline bool MaxKeysHasBeenSet() const { return m_maxKeysHasBeenSet; } /** - * <p>Sets the maximum number of keys returned in the response. By default the API - * returns up to 1,000 key names. The response might contain fewer keys but will - * never contain more.</p> + * <p>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.</p> */ inline void SetMaxKeys(int value) { m_maxKeysHasBeenSet = true; m_maxKeys = value; } /** - * <p>Sets the maximum number of keys returned in the response. By default the API - * returns up to 1,000 key names. The response might contain fewer keys but will - * never contain more.</p> + * <p>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.</p> */ inline ListObjectsV2Request& WithMaxKeys(int value) { SetMaxKeys(value); return *this;} @@ -557,56 +541,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline ListObjectsV2Request& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline ListObjectsV2Request& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListObjectsV2Result.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListObjectsV2Result.h index 44c2e059a4..14749c9259 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListObjectsV2Result.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListObjectsV2Result.h @@ -95,163 +95,149 @@ namespace Model /** - * <p>The bucket name.</p> <p>When using this API with an access point, you must + * <p>The bucket name.</p> <p>When using this action with an access point, you must * direct requests to the access point hostname. The access point hostname takes * the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline const Aws::String& GetName() const{ return m_name; } /** - * <p>The bucket name.</p> <p>When using this API with an access point, you must + * <p>The bucket name.</p> <p>When using this action with an access point, you must * direct requests to the access point hostname. The access point hostname takes * the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetName(const Aws::String& value) { m_name = value; } /** - * <p>The bucket name.</p> <p>When using this API with an access point, you must + * <p>The bucket name.</p> <p>When using this action with an access point, you must * direct requests to the access point hostname. The access point hostname takes * the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetName(Aws::String&& value) { m_name = std::move(value); } /** - * <p>The bucket name.</p> <p>When using this API with an access point, you must + * <p>The bucket name.</p> <p>When using this action with an access point, you must * direct requests to the access point hostname. The access point hostname takes * the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetName(const char* value) { m_name.assign(value); } /** - * <p>The bucket name.</p> <p>When using this API with an access point, you must + * <p>The bucket name.</p> <p>When using this action with an access point, you must * direct requests to the access point hostname. The access point hostname takes * the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline ListObjectsV2Result& WithName(const Aws::String& value) { SetName(value); return *this;} /** - * <p>The bucket name.</p> <p>When using this API with an access point, you must + * <p>The bucket name.</p> <p>When using this action with an access point, you must * direct requests to the access point hostname. The access point hostname takes * the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline ListObjectsV2Result& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} /** - * <p>The bucket name.</p> <p>When using this API with an access point, you must + * <p>The bucket name.</p> <p>When using this action with an access point, you must * direct requests to the access point hostname. The access point hostname takes * the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline ListObjectsV2Result& WithName(const char* value) { SetName(value); return *this;} @@ -357,31 +343,31 @@ namespace Model /** - * <p>Sets the maximum number of keys returned in the response. By default the API - * returns up to 1,000 key names. The response might contain fewer keys but will - * never contain more.</p> + * <p>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.</p> */ inline int GetMaxKeys() const{ return m_maxKeys; } /** - * <p>Sets the maximum number of keys returned in the response. By default the API - * returns up to 1,000 key names. The response might contain fewer keys but will - * never contain more.</p> + * <p>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.</p> */ inline void SetMaxKeys(int value) { m_maxKeys = value; } /** - * <p>Sets the maximum number of keys returned in the response. By default the API - * returns up to 1,000 key names. The response might contain fewer keys but will - * never contain more.</p> + * <p>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.</p> */ inline ListObjectsV2Result& WithMaxKeys(int value) { SetMaxKeys(value); return *this;} /** - * <p>All of the keys rolled up into a common prefix count as a single return when - * calculating the number of returns.</p> <p>A response can contain - * <code>CommonPrefixes</code> only if you specify a delimiter.</p> <p> + * <p>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.</p> <p>A response can + * contain <code>CommonPrefixes</code> only if you specify a delimiter.</p> <p> * <code>CommonPrefixes</code> contains all (if there are any) keys between * <code>Prefix</code> and the next occurrence of the string specified by a * delimiter.</p> <p> <code>CommonPrefixes</code> lists keys that act like @@ -394,9 +380,9 @@ namespace Model inline const Aws::Vector<CommonPrefix>& GetCommonPrefixes() const{ return m_commonPrefixes; } /** - * <p>All of the keys rolled up into a common prefix count as a single return when - * calculating the number of returns.</p> <p>A response can contain - * <code>CommonPrefixes</code> only if you specify a delimiter.</p> <p> + * <p>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.</p> <p>A response can + * contain <code>CommonPrefixes</code> only if you specify a delimiter.</p> <p> * <code>CommonPrefixes</code> contains all (if there are any) keys between * <code>Prefix</code> and the next occurrence of the string specified by a * delimiter.</p> <p> <code>CommonPrefixes</code> lists keys that act like @@ -409,9 +395,9 @@ namespace Model inline void SetCommonPrefixes(const Aws::Vector<CommonPrefix>& value) { m_commonPrefixes = value; } /** - * <p>All of the keys rolled up into a common prefix count as a single return when - * calculating the number of returns.</p> <p>A response can contain - * <code>CommonPrefixes</code> only if you specify a delimiter.</p> <p> + * <p>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.</p> <p>A response can + * contain <code>CommonPrefixes</code> only if you specify a delimiter.</p> <p> * <code>CommonPrefixes</code> contains all (if there are any) keys between * <code>Prefix</code> and the next occurrence of the string specified by a * delimiter.</p> <p> <code>CommonPrefixes</code> lists keys that act like @@ -424,9 +410,9 @@ namespace Model inline void SetCommonPrefixes(Aws::Vector<CommonPrefix>&& value) { m_commonPrefixes = std::move(value); } /** - * <p>All of the keys rolled up into a common prefix count as a single return when - * calculating the number of returns.</p> <p>A response can contain - * <code>CommonPrefixes</code> only if you specify a delimiter.</p> <p> + * <p>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.</p> <p>A response can + * contain <code>CommonPrefixes</code> only if you specify a delimiter.</p> <p> * <code>CommonPrefixes</code> contains all (if there are any) keys between * <code>Prefix</code> and the next occurrence of the string specified by a * delimiter.</p> <p> <code>CommonPrefixes</code> lists keys that act like @@ -439,9 +425,9 @@ namespace Model inline ListObjectsV2Result& WithCommonPrefixes(const Aws::Vector<CommonPrefix>& value) { SetCommonPrefixes(value); return *this;} /** - * <p>All of the keys rolled up into a common prefix count as a single return when - * calculating the number of returns.</p> <p>A response can contain - * <code>CommonPrefixes</code> only if you specify a delimiter.</p> <p> + * <p>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.</p> <p>A response can + * contain <code>CommonPrefixes</code> only if you specify a delimiter.</p> <p> * <code>CommonPrefixes</code> contains all (if there are any) keys between * <code>Prefix</code> and the next occurrence of the string specified by a * delimiter.</p> <p> <code>CommonPrefixes</code> lists keys that act like @@ -454,9 +440,9 @@ namespace Model inline ListObjectsV2Result& WithCommonPrefixes(Aws::Vector<CommonPrefix>&& value) { SetCommonPrefixes(std::move(value)); return *this;} /** - * <p>All of the keys rolled up into a common prefix count as a single return when - * calculating the number of returns.</p> <p>A response can contain - * <code>CommonPrefixes</code> only if you specify a delimiter.</p> <p> + * <p>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.</p> <p>A response can + * contain <code>CommonPrefixes</code> only if you specify a delimiter.</p> <p> * <code>CommonPrefixes</code> contains all (if there are any) keys between * <code>Prefix</code> and the next occurrence of the string specified by a * delimiter.</p> <p> <code>CommonPrefixes</code> lists keys that act like @@ -469,9 +455,9 @@ namespace Model inline ListObjectsV2Result& AddCommonPrefixes(const CommonPrefix& value) { m_commonPrefixes.push_back(value); return *this; } /** - * <p>All of the keys rolled up into a common prefix count as a single return when - * calculating the number of returns.</p> <p>A response can contain - * <code>CommonPrefixes</code> only if you specify a delimiter.</p> <p> + * <p>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.</p> <p>A response can + * contain <code>CommonPrefixes</code> only if you specify a delimiter.</p> <p> * <code>CommonPrefixes</code> contains all (if there are any) keys between * <code>Prefix</code> and the next occurrence of the string specified by a * delimiter.</p> <p> <code>CommonPrefixes</code> lists keys that act like @@ -532,21 +518,21 @@ namespace Model /** * <p>KeyCount is the number of keys returned with this request. KeyCount will - * always be less than equals to MaxKeys field. Say you ask for 50 keys, your + * always be less than or equals to MaxKeys field. Say you ask for 50 keys, your * result will include less than equals 50 keys </p> */ inline int GetKeyCount() const{ return m_keyCount; } /** * <p>KeyCount is the number of keys returned with this request. KeyCount will - * always be less than equals to MaxKeys field. Say you ask for 50 keys, your + * always be less than or equals to MaxKeys field. Say you ask for 50 keys, your * result will include less than equals 50 keys </p> */ inline void SetKeyCount(int value) { m_keyCount = value; } /** * <p>KeyCount is the number of keys returned with this request. KeyCount will - * always be less than equals to MaxKeys field. Say you ask for 50 keys, your + * always be less than or equals to MaxKeys field. Say you ask for 50 keys, your * result will include less than equals 50 keys </p> */ inline ListObjectsV2Result& WithKeyCount(int value) { SetKeyCount(value); return *this;} diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListPartsRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListPartsRequest.h index eca155dfe3..fef7905b7a 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListPartsRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListPartsRequest.h @@ -44,185 +44,169 @@ namespace Model /** * <p>The name of the bucket to which the parts are being uploaded. </p> <p>When - * using this API with an access point, you must direct requests to the access + * using this action with an access point, you must direct requests to the access * point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline const Aws::String& GetBucket() const{ return m_bucket; } /** * <p>The name of the bucket to which the parts are being uploaded. </p> <p>When - * using this API with an access point, you must direct requests to the access + * using this action with an access point, you must direct requests to the access * point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; } /** * <p>The name of the bucket to which the parts are being uploaded. </p> <p>When - * using this API with an access point, you must direct requests to the access + * using this action with an access point, you must direct requests to the access * point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; } /** * <p>The name of the bucket to which the parts are being uploaded. </p> <p>When - * using this API with an access point, you must direct requests to the access + * using this action with an access point, you must direct requests to the access * point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); } /** * <p>The name of the bucket to which the parts are being uploaded. </p> <p>When - * using this API with an access point, you must direct requests to the access + * using this action with an access point, you must direct requests to the access * point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); } /** * <p>The name of the bucket to which the parts are being uploaded. </p> <p>When - * using this API with an access point, you must direct requests to the access + * using this action with an access point, you must direct requests to the access * point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline ListPartsRequest& WithBucket(const Aws::String& value) { SetBucket(value); return *this;} /** * <p>The name of the bucket to which the parts are being uploaded. </p> <p>When - * using this API with an access point, you must direct requests to the access + * using this action with an access point, you must direct requests to the access * point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline ListPartsRequest& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;} /** * <p>The name of the bucket to which the parts are being uploaded. </p> <p>When - * using this API with an access point, you must direct requests to the access + * using this action with an access point, you must direct requests to the access * point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline ListPartsRequest& WithBucket(const char* value) { SetBucket(value); return *this;} @@ -375,56 +359,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline ListPartsRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline ListPartsRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/NoncurrentVersionTransition.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/NoncurrentVersionTransition.h index 03c21414a5..f6ea66e084 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/NoncurrentVersionTransition.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/NoncurrentVersionTransition.h @@ -51,7 +51,7 @@ namespace Model * calculations, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/intro-lifecycle-rules.html#non-current-days-calculations">How * Amazon S3 Calculates How Long an Object Has Been Noncurrent</a> in the <i>Amazon - * Simple Storage Service Developer Guide</i>.</p> + * S3 User Guide</i>.</p> */ inline int GetNoncurrentDays() const{ return m_noncurrentDays; } @@ -61,7 +61,7 @@ namespace Model * calculations, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/intro-lifecycle-rules.html#non-current-days-calculations">How * Amazon S3 Calculates How Long an Object Has Been Noncurrent</a> in the <i>Amazon - * Simple Storage Service Developer Guide</i>.</p> + * S3 User Guide</i>.</p> */ inline bool NoncurrentDaysHasBeenSet() const { return m_noncurrentDaysHasBeenSet; } @@ -71,7 +71,7 @@ namespace Model * calculations, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/intro-lifecycle-rules.html#non-current-days-calculations">How * Amazon S3 Calculates How Long an Object Has Been Noncurrent</a> in the <i>Amazon - * Simple Storage Service Developer Guide</i>.</p> + * S3 User Guide</i>.</p> */ inline void SetNoncurrentDays(int value) { m_noncurrentDaysHasBeenSet = true; m_noncurrentDays = value; } @@ -81,7 +81,7 @@ namespace Model * calculations, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/intro-lifecycle-rules.html#non-current-days-calculations">How * Amazon S3 Calculates How Long an Object Has Been Noncurrent</a> in the <i>Amazon - * Simple Storage Service Developer Guide</i>.</p> + * S3 User Guide</i>.</p> */ inline NoncurrentVersionTransition& WithNoncurrentDays(int value) { SetNoncurrentDays(value); return *this;} diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/NotificationConfigurationFilter.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/NotificationConfigurationFilter.h index 36e3ba429f..496d5d756f 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/NotificationConfigurationFilter.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/NotificationConfigurationFilter.h @@ -26,8 +26,8 @@ namespace Model * <p>Specifies object key name filtering rules. For information about key name * filtering, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html">Configuring - * Event Notifications</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p><p><h3>See Also:</h3> <a + * Event Notifications</a> in the <i>Amazon S3 User Guide</i>.</p><p><h3>See + * Also:</h3> <a * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/NotificationConfigurationFilter">AWS * API Reference</a></p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Object.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Object.h index a041642ca7..2deeed80c9 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Object.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Object.h @@ -91,32 +91,32 @@ namespace Model /** - * <p>The date the Object was Last Modified</p> + * <p>Creation date of the object.</p> */ inline const Aws::Utils::DateTime& GetLastModified() const{ return m_lastModified; } /** - * <p>The date the Object was Last Modified</p> + * <p>Creation date of the object.</p> */ inline bool LastModifiedHasBeenSet() const { return m_lastModifiedHasBeenSet; } /** - * <p>The date the Object was Last Modified</p> + * <p>Creation date of the object.</p> */ inline void SetLastModified(const Aws::Utils::DateTime& value) { m_lastModifiedHasBeenSet = true; m_lastModified = value; } /** - * <p>The date the Object was Last Modified</p> + * <p>Creation date of the object.</p> */ inline void SetLastModified(Aws::Utils::DateTime&& value) { m_lastModifiedHasBeenSet = true; m_lastModified = std::move(value); } /** - * <p>The date the Object was Last Modified</p> + * <p>Creation date of the object.</p> */ inline Object& WithLastModified(const Aws::Utils::DateTime& value) { SetLastModified(value); return *this;} /** - * <p>The date the Object was Last Modified</p> + * <p>Creation date of the object.</p> */ inline Object& WithLastModified(Aws::Utils::DateTime&& value) { SetLastModified(std::move(value)); return *this;} diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectIdentifier.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectIdentifier.h index ef7bdd50a8..82e3c611da 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectIdentifier.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectIdentifier.h @@ -39,42 +39,74 @@ namespace Model /** - * <p>Key name of the object to delete.</p> + * <p>Key name of the object.</p> <p>Replacement must be made for + * object keys containing special characters (such as carriage returns) when using + * XML requests. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline const Aws::String& GetKey() const{ return m_key; } /** - * <p>Key name of the object to delete.</p> + * <p>Key name of the object.</p> <p>Replacement must be made for + * object keys containing special characters (such as carriage returns) when using + * XML requests. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline bool KeyHasBeenSet() const { return m_keyHasBeenSet; } /** - * <p>Key name of the object to delete.</p> + * <p>Key name of the object.</p> <p>Replacement must be made for + * object keys containing special characters (such as carriage returns) when using + * XML requests. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline void SetKey(const Aws::String& value) { m_keyHasBeenSet = true; m_key = value; } /** - * <p>Key name of the object to delete.</p> + * <p>Key name of the object.</p> <p>Replacement must be made for + * object keys containing special characters (such as carriage returns) when using + * XML requests. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline void SetKey(Aws::String&& value) { m_keyHasBeenSet = true; m_key = std::move(value); } /** - * <p>Key name of the object to delete.</p> + * <p>Key name of the object.</p> <p>Replacement must be made for + * object keys containing special characters (such as carriage returns) when using + * XML requests. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline void SetKey(const char* value) { m_keyHasBeenSet = true; m_key.assign(value); } /** - * <p>Key name of the object to delete.</p> + * <p>Key name of the object.</p> <p>Replacement must be made for + * object keys containing special characters (such as carriage returns) when using + * XML requests. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline ObjectIdentifier& WithKey(const Aws::String& value) { SetKey(value); return *this;} /** - * <p>Key name of the object to delete.</p> + * <p>Key name of the object.</p> <p>Replacement must be made for + * object keys containing special characters (such as carriage returns) when using + * XML requests. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline ObjectIdentifier& WithKey(Aws::String&& value) { SetKey(std::move(value)); return *this;} /** - * <p>Key name of the object to delete.</p> + * <p>Key name of the object.</p> <p>Replacement must be made for + * object keys containing special characters (such as carriage returns) when using + * XML requests. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline ObjectIdentifier& WithKey(const char* value) { SetKey(value); return *this;} diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectLockConfiguration.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectLockConfiguration.h index 4d83cc9565..441e475856 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectLockConfiguration.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectLockConfiguration.h @@ -40,63 +40,99 @@ namespace Model /** - * <p>Indicates whether this bucket has an Object Lock configuration enabled.</p> + * <p>Indicates whether this bucket has an Object Lock configuration enabled. + * Enable <code>ObjectLockEnabled</code> when you apply + * <code>ObjectLockConfiguration</code> to a bucket. </p> */ inline const ObjectLockEnabled& GetObjectLockEnabled() const{ return m_objectLockEnabled; } /** - * <p>Indicates whether this bucket has an Object Lock configuration enabled.</p> + * <p>Indicates whether this bucket has an Object Lock configuration enabled. + * Enable <code>ObjectLockEnabled</code> when you apply + * <code>ObjectLockConfiguration</code> to a bucket. </p> */ inline bool ObjectLockEnabledHasBeenSet() const { return m_objectLockEnabledHasBeenSet; } /** - * <p>Indicates whether this bucket has an Object Lock configuration enabled.</p> + * <p>Indicates whether this bucket has an Object Lock configuration enabled. + * Enable <code>ObjectLockEnabled</code> when you apply + * <code>ObjectLockConfiguration</code> to a bucket. </p> */ inline void SetObjectLockEnabled(const ObjectLockEnabled& value) { m_objectLockEnabledHasBeenSet = true; m_objectLockEnabled = value; } /** - * <p>Indicates whether this bucket has an Object Lock configuration enabled.</p> + * <p>Indicates whether this bucket has an Object Lock configuration enabled. + * Enable <code>ObjectLockEnabled</code> when you apply + * <code>ObjectLockConfiguration</code> to a bucket. </p> */ inline void SetObjectLockEnabled(ObjectLockEnabled&& value) { m_objectLockEnabledHasBeenSet = true; m_objectLockEnabled = std::move(value); } /** - * <p>Indicates whether this bucket has an Object Lock configuration enabled.</p> + * <p>Indicates whether this bucket has an Object Lock configuration enabled. + * Enable <code>ObjectLockEnabled</code> when you apply + * <code>ObjectLockConfiguration</code> to a bucket. </p> */ inline ObjectLockConfiguration& WithObjectLockEnabled(const ObjectLockEnabled& value) { SetObjectLockEnabled(value); return *this;} /** - * <p>Indicates whether this bucket has an Object Lock configuration enabled.</p> + * <p>Indicates whether this bucket has an Object Lock configuration enabled. + * Enable <code>ObjectLockEnabled</code> when you apply + * <code>ObjectLockConfiguration</code> to a bucket. </p> */ inline ObjectLockConfiguration& WithObjectLockEnabled(ObjectLockEnabled&& value) { SetObjectLockEnabled(std::move(value)); return *this;} /** - * <p>The Object Lock rule in place for the specified object.</p> + * <p>Specifies the Object Lock rule for the specified object. Enable the this rule + * when you apply <code>ObjectLockConfiguration</code> to a bucket. Bucket settings + * require both a mode and a period. The period can be either <code>Days</code> or + * <code>Years</code> but you must select one. You cannot specify <code>Days</code> + * and <code>Years</code> at the same time.</p> */ inline const ObjectLockRule& GetRule() const{ return m_rule; } /** - * <p>The Object Lock rule in place for the specified object.</p> + * <p>Specifies the Object Lock rule for the specified object. Enable the this rule + * when you apply <code>ObjectLockConfiguration</code> to a bucket. Bucket settings + * require both a mode and a period. The period can be either <code>Days</code> or + * <code>Years</code> but you must select one. You cannot specify <code>Days</code> + * and <code>Years</code> at the same time.</p> */ inline bool RuleHasBeenSet() const { return m_ruleHasBeenSet; } /** - * <p>The Object Lock rule in place for the specified object.</p> + * <p>Specifies the Object Lock rule for the specified object. Enable the this rule + * when you apply <code>ObjectLockConfiguration</code> to a bucket. Bucket settings + * require both a mode and a period. The period can be either <code>Days</code> or + * <code>Years</code> but you must select one. You cannot specify <code>Days</code> + * and <code>Years</code> at the same time.</p> */ inline void SetRule(const ObjectLockRule& value) { m_ruleHasBeenSet = true; m_rule = value; } /** - * <p>The Object Lock rule in place for the specified object.</p> + * <p>Specifies the Object Lock rule for the specified object. Enable the this rule + * when you apply <code>ObjectLockConfiguration</code> to a bucket. Bucket settings + * require both a mode and a period. The period can be either <code>Days</code> or + * <code>Years</code> but you must select one. You cannot specify <code>Days</code> + * and <code>Years</code> at the same time.</p> */ inline void SetRule(ObjectLockRule&& value) { m_ruleHasBeenSet = true; m_rule = std::move(value); } /** - * <p>The Object Lock rule in place for the specified object.</p> + * <p>Specifies the Object Lock rule for the specified object. Enable the this rule + * when you apply <code>ObjectLockConfiguration</code> to a bucket. Bucket settings + * require both a mode and a period. The period can be either <code>Days</code> or + * <code>Years</code> but you must select one. You cannot specify <code>Days</code> + * and <code>Years</code> at the same time.</p> */ inline ObjectLockConfiguration& WithRule(const ObjectLockRule& value) { SetRule(value); return *this;} /** - * <p>The Object Lock rule in place for the specified object.</p> + * <p>Specifies the Object Lock rule for the specified object. Enable the this rule + * when you apply <code>ObjectLockConfiguration</code> to a bucket. Bucket settings + * require both a mode and a period. The period can be either <code>Days</code> or + * <code>Years</code> but you must select one. You cannot specify <code>Days</code> + * and <code>Years</code> at the same time.</p> */ inline ObjectLockConfiguration& WithRule(ObjectLockRule&& value) { SetRule(std::move(value)); return *this;} diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectLockRule.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectLockRule.h index 17523929d6..e373cc3dba 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectLockRule.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectLockRule.h @@ -38,38 +38,56 @@ namespace Model /** - * <p>The default retention period that you want to apply to new objects placed in - * the specified bucket.</p> + * <p>The default Object Lock retention mode and period that you want to apply to + * new objects placed in the specified bucket. Bucket settings require both a mode + * and a period. The period can be either <code>Days</code> or <code>Years</code> + * but you must select one. You cannot specify <code>Days</code> and + * <code>Years</code> at the same time.</p> */ inline const DefaultRetention& GetDefaultRetention() const{ return m_defaultRetention; } /** - * <p>The default retention period that you want to apply to new objects placed in - * the specified bucket.</p> + * <p>The default Object Lock retention mode and period that you want to apply to + * new objects placed in the specified bucket. Bucket settings require both a mode + * and a period. The period can be either <code>Days</code> or <code>Years</code> + * but you must select one. You cannot specify <code>Days</code> and + * <code>Years</code> at the same time.</p> */ inline bool DefaultRetentionHasBeenSet() const { return m_defaultRetentionHasBeenSet; } /** - * <p>The default retention period that you want to apply to new objects placed in - * the specified bucket.</p> + * <p>The default Object Lock retention mode and period that you want to apply to + * new objects placed in the specified bucket. Bucket settings require both a mode + * and a period. The period can be either <code>Days</code> or <code>Years</code> + * but you must select one. You cannot specify <code>Days</code> and + * <code>Years</code> at the same time.</p> */ inline void SetDefaultRetention(const DefaultRetention& value) { m_defaultRetentionHasBeenSet = true; m_defaultRetention = value; } /** - * <p>The default retention period that you want to apply to new objects placed in - * the specified bucket.</p> + * <p>The default Object Lock retention mode and period that you want to apply to + * new objects placed in the specified bucket. Bucket settings require both a mode + * and a period. The period can be either <code>Days</code> or <code>Years</code> + * but you must select one. You cannot specify <code>Days</code> and + * <code>Years</code> at the same time.</p> */ inline void SetDefaultRetention(DefaultRetention&& value) { m_defaultRetentionHasBeenSet = true; m_defaultRetention = std::move(value); } /** - * <p>The default retention period that you want to apply to new objects placed in - * the specified bucket.</p> + * <p>The default Object Lock retention mode and period that you want to apply to + * new objects placed in the specified bucket. Bucket settings require both a mode + * and a period. The period can be either <code>Days</code> or <code>Years</code> + * but you must select one. You cannot specify <code>Days</code> and + * <code>Years</code> at the same time.</p> */ inline ObjectLockRule& WithDefaultRetention(const DefaultRetention& value) { SetDefaultRetention(value); return *this;} /** - * <p>The default retention period that you want to apply to new objects placed in - * the specified bucket.</p> + * <p>The default Object Lock retention mode and period that you want to apply to + * new objects placed in the specified bucket. Bucket settings require both a mode + * and a period. The period can be either <code>Days</code> or <code>Years</code> + * but you must select one. You cannot specify <code>Days</code> and + * <code>Years</code> at the same time.</p> */ inline ObjectLockRule& WithDefaultRetention(DefaultRetention&& value) { SetDefaultRetention(std::move(value)); return *this;} diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PublicAccessBlockConfiguration.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PublicAccessBlockConfiguration.h index b1eefb24cd..b78baafaf4 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PublicAccessBlockConfiguration.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PublicAccessBlockConfiguration.h @@ -25,8 +25,8 @@ namespace Model * bucket. You can enable the configuration options in any combination. For more * information about when Amazon S3 considers a bucket or object public, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html#access-control-block-public-access-policy-status">The - * Meaning of "Public"</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>. </p><p><h3>See Also:</h3> <a + * Meaning of "Public"</a> in the <i>Amazon S3 User Guide</i>. </p><p><h3>See + * Also:</h3> <a * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PublicAccessBlockConfiguration">AWS * API Reference</a></p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketAccelerateConfigurationRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketAccelerateConfigurationRequest.h index a595afdbcc..f2c3b36790 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketAccelerateConfigurationRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketAccelerateConfigurationRequest.h @@ -115,56 +115,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline PutBucketAccelerateConfigurationRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline PutBucketAccelerateConfigurationRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketAclRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketAclRequest.h index 43d1f63287..86c5cc7d51 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketAclRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketAclRequest.h @@ -449,56 +449,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline PutBucketAclRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline PutBucketAclRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketAnalyticsConfigurationRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketAnalyticsConfigurationRequest.h index a3dfe078c4..72baf8a3ad 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketAnalyticsConfigurationRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketAnalyticsConfigurationRequest.h @@ -156,56 +156,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline PutBucketAnalyticsConfigurationRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline PutBucketAnalyticsConfigurationRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketCorsRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketCorsRequest.h index 5273651e51..fd468b39c0 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketCorsRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketCorsRequest.h @@ -89,8 +89,7 @@ namespace Model * <p>Describes the cross-origin access configuration for objects in an Amazon S3 * bucket. For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/cors.html">Enabling - * Cross-Origin Resource Sharing</a> in the <i>Amazon Simple Storage Service - * Developer Guide</i>.</p> + * Cross-Origin Resource Sharing</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline const CORSConfiguration& GetCORSConfiguration() const{ return m_cORSConfiguration; } @@ -98,8 +97,7 @@ namespace Model * <p>Describes the cross-origin access configuration for objects in an Amazon S3 * bucket. For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/cors.html">Enabling - * Cross-Origin Resource Sharing</a> in the <i>Amazon Simple Storage Service - * Developer Guide</i>.</p> + * Cross-Origin Resource Sharing</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline bool CORSConfigurationHasBeenSet() const { return m_cORSConfigurationHasBeenSet; } @@ -107,8 +105,7 @@ namespace Model * <p>Describes the cross-origin access configuration for objects in an Amazon S3 * bucket. For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/cors.html">Enabling - * Cross-Origin Resource Sharing</a> in the <i>Amazon Simple Storage Service - * Developer Guide</i>.</p> + * Cross-Origin Resource Sharing</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetCORSConfiguration(const CORSConfiguration& value) { m_cORSConfigurationHasBeenSet = true; m_cORSConfiguration = value; } @@ -116,8 +113,7 @@ namespace Model * <p>Describes the cross-origin access configuration for objects in an Amazon S3 * bucket. For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/cors.html">Enabling - * Cross-Origin Resource Sharing</a> in the <i>Amazon Simple Storage Service - * Developer Guide</i>.</p> + * Cross-Origin Resource Sharing</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetCORSConfiguration(CORSConfiguration&& value) { m_cORSConfigurationHasBeenSet = true; m_cORSConfiguration = std::move(value); } @@ -125,8 +121,7 @@ namespace Model * <p>Describes the cross-origin access configuration for objects in an Amazon S3 * bucket. For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/cors.html">Enabling - * Cross-Origin Resource Sharing</a> in the <i>Amazon Simple Storage Service - * Developer Guide</i>.</p> + * Cross-Origin Resource Sharing</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline PutBucketCorsRequest& WithCORSConfiguration(const CORSConfiguration& value) { SetCORSConfiguration(value); return *this;} @@ -134,8 +129,7 @@ namespace Model * <p>Describes the cross-origin access configuration for objects in an Amazon S3 * bucket. For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/cors.html">Enabling - * Cross-Origin Resource Sharing</a> in the <i>Amazon Simple Storage Service - * Developer Guide</i>.</p> + * Cross-Origin Resource Sharing</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline PutBucketCorsRequest& WithCORSConfiguration(CORSConfiguration&& value) { SetCORSConfiguration(std::move(value)); return *this;} @@ -222,56 +216,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline PutBucketCorsRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline PutBucketCorsRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketEncryptionRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketEncryptionRequest.h index 4df4aa8648..312c50e251 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketEncryptionRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketEncryptionRequest.h @@ -50,8 +50,7 @@ namespace Model * (SSE-KMS). For information about the Amazon S3 default encryption feature, see * <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html">Amazon - * S3 Default Bucket Encryption</a> in the <i>Amazon Simple Storage Service - * Developer Guide</i>.</p> + * S3 Default Bucket Encryption</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline const Aws::String& GetBucket() const{ return m_bucket; } @@ -61,8 +60,7 @@ namespace Model * (SSE-KMS). For information about the Amazon S3 default encryption feature, see * <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html">Amazon - * S3 Default Bucket Encryption</a> in the <i>Amazon Simple Storage Service - * Developer Guide</i>.</p> + * S3 Default Bucket Encryption</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; } @@ -72,8 +70,7 @@ namespace Model * (SSE-KMS). For information about the Amazon S3 default encryption feature, see * <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html">Amazon - * S3 Default Bucket Encryption</a> in the <i>Amazon Simple Storage Service - * Developer Guide</i>.</p> + * S3 Default Bucket Encryption</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; } @@ -83,8 +80,7 @@ namespace Model * (SSE-KMS). For information about the Amazon S3 default encryption feature, see * <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html">Amazon - * S3 Default Bucket Encryption</a> in the <i>Amazon Simple Storage Service - * Developer Guide</i>.</p> + * S3 Default Bucket Encryption</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); } @@ -94,8 +90,7 @@ namespace Model * (SSE-KMS). For information about the Amazon S3 default encryption feature, see * <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html">Amazon - * S3 Default Bucket Encryption</a> in the <i>Amazon Simple Storage Service - * Developer Guide</i>.</p> + * S3 Default Bucket Encryption</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); } @@ -105,8 +100,7 @@ namespace Model * (SSE-KMS). For information about the Amazon S3 default encryption feature, see * <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html">Amazon - * S3 Default Bucket Encryption</a> in the <i>Amazon Simple Storage Service - * Developer Guide</i>.</p> + * S3 Default Bucket Encryption</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline PutBucketEncryptionRequest& WithBucket(const Aws::String& value) { SetBucket(value); return *this;} @@ -116,8 +110,7 @@ namespace Model * (SSE-KMS). For information about the Amazon S3 default encryption feature, see * <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html">Amazon - * S3 Default Bucket Encryption</a> in the <i>Amazon Simple Storage Service - * Developer Guide</i>.</p> + * S3 Default Bucket Encryption</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline PutBucketEncryptionRequest& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;} @@ -127,8 +120,7 @@ namespace Model * (SSE-KMS). For information about the Amazon S3 default encryption feature, see * <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html">Amazon - * S3 Default Bucket Encryption</a> in the <i>Amazon Simple Storage Service - * Developer Guide</i>.</p> + * S3 Default Bucket Encryption</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline PutBucketEncryptionRequest& WithBucket(const char* value) { SetBucket(value); return *this;} @@ -210,56 +202,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline PutBucketEncryptionRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline PutBucketEncryptionRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketInventoryConfigurationRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketInventoryConfigurationRequest.h index bbddeea373..88997a4a66 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketInventoryConfigurationRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketInventoryConfigurationRequest.h @@ -156,56 +156,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline PutBucketInventoryConfigurationRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline PutBucketInventoryConfigurationRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketLifecycleConfigurationRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketLifecycleConfigurationRequest.h index d47ef16067..177b0434b4 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketLifecycleConfigurationRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketLifecycleConfigurationRequest.h @@ -117,56 +117,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline PutBucketLifecycleConfigurationRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline PutBucketLifecycleConfigurationRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketLoggingRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketLoggingRequest.h index 925daf94f9..befa6e8f1a 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketLoggingRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketLoggingRequest.h @@ -174,56 +174,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline PutBucketLoggingRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline PutBucketLoggingRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketMetricsConfigurationRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketMetricsConfigurationRequest.h index c61e5e8b0c..94791d58d5 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketMetricsConfigurationRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketMetricsConfigurationRequest.h @@ -156,56 +156,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline PutBucketMetricsConfigurationRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline PutBucketMetricsConfigurationRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketNotificationConfigurationRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketNotificationConfigurationRequest.h index 364fe22be8..016bba49c9 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketNotificationConfigurationRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketNotificationConfigurationRequest.h @@ -103,56 +103,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline PutBucketNotificationConfigurationRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline PutBucketNotificationConfigurationRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketOwnershipControlsRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketOwnershipControlsRequest.h index 7bf3cda70e..76f46d672a 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketOwnershipControlsRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketOwnershipControlsRequest.h @@ -151,56 +151,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline PutBucketOwnershipControlsRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline PutBucketOwnershipControlsRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketPolicyRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketPolicyRequest.h index 8d916cd218..8cf3d4129a 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketPolicyRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketPolicyRequest.h @@ -165,56 +165,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline PutBucketPolicyRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline PutBucketPolicyRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketReplicationRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketReplicationRequest.h index db4696e01d..1c8d3e16d8 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketReplicationRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketReplicationRequest.h @@ -227,56 +227,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline PutBucketReplicationRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline PutBucketReplicationRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketRequestPaymentRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketRequestPaymentRequest.h index f5840d203d..cf61658395 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketRequestPaymentRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketRequestPaymentRequest.h @@ -86,9 +86,9 @@ namespace Model /** - * <p>>The base64-encoded 128-bit MD5 digest of the data. You must use this - * header as a message integrity check to verify that the request body was not - * corrupted in transit. For more information, see <a + * <p>The base64-encoded 128-bit MD5 digest of the data. You must use this header + * as a message integrity check to verify that the request body was not corrupted + * in transit. For more information, see <a * href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864</a>.</p> <p>For requests * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is * calculated automatically.</p> @@ -96,9 +96,9 @@ namespace Model inline const Aws::String& GetContentMD5() const{ return m_contentMD5; } /** - * <p>>The base64-encoded 128-bit MD5 digest of the data. You must use this - * header as a message integrity check to verify that the request body was not - * corrupted in transit. For more information, see <a + * <p>The base64-encoded 128-bit MD5 digest of the data. You must use this header + * as a message integrity check to verify that the request body was not corrupted + * in transit. For more information, see <a * href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864</a>.</p> <p>For requests * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is * calculated automatically.</p> @@ -106,9 +106,9 @@ namespace Model inline bool ContentMD5HasBeenSet() const { return m_contentMD5HasBeenSet; } /** - * <p>>The base64-encoded 128-bit MD5 digest of the data. You must use this - * header as a message integrity check to verify that the request body was not - * corrupted in transit. For more information, see <a + * <p>The base64-encoded 128-bit MD5 digest of the data. You must use this header + * as a message integrity check to verify that the request body was not corrupted + * in transit. For more information, see <a * href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864</a>.</p> <p>For requests * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is * calculated automatically.</p> @@ -116,9 +116,9 @@ namespace Model inline void SetContentMD5(const Aws::String& value) { m_contentMD5HasBeenSet = true; m_contentMD5 = value; } /** - * <p>>The base64-encoded 128-bit MD5 digest of the data. You must use this - * header as a message integrity check to verify that the request body was not - * corrupted in transit. For more information, see <a + * <p>The base64-encoded 128-bit MD5 digest of the data. You must use this header + * as a message integrity check to verify that the request body was not corrupted + * in transit. For more information, see <a * href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864</a>.</p> <p>For requests * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is * calculated automatically.</p> @@ -126,9 +126,9 @@ namespace Model inline void SetContentMD5(Aws::String&& value) { m_contentMD5HasBeenSet = true; m_contentMD5 = std::move(value); } /** - * <p>>The base64-encoded 128-bit MD5 digest of the data. You must use this - * header as a message integrity check to verify that the request body was not - * corrupted in transit. For more information, see <a + * <p>The base64-encoded 128-bit MD5 digest of the data. You must use this header + * as a message integrity check to verify that the request body was not corrupted + * in transit. For more information, see <a * href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864</a>.</p> <p>For requests * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is * calculated automatically.</p> @@ -136,9 +136,9 @@ namespace Model inline void SetContentMD5(const char* value) { m_contentMD5HasBeenSet = true; m_contentMD5.assign(value); } /** - * <p>>The base64-encoded 128-bit MD5 digest of the data. You must use this - * header as a message integrity check to verify that the request body was not - * corrupted in transit. For more information, see <a + * <p>The base64-encoded 128-bit MD5 digest of the data. You must use this header + * as a message integrity check to verify that the request body was not corrupted + * in transit. For more information, see <a * href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864</a>.</p> <p>For requests * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is * calculated automatically.</p> @@ -146,9 +146,9 @@ namespace Model inline PutBucketRequestPaymentRequest& WithContentMD5(const Aws::String& value) { SetContentMD5(value); return *this;} /** - * <p>>The base64-encoded 128-bit MD5 digest of the data. You must use this - * header as a message integrity check to verify that the request body was not - * corrupted in transit. For more information, see <a + * <p>The base64-encoded 128-bit MD5 digest of the data. You must use this header + * as a message integrity check to verify that the request body was not corrupted + * in transit. For more information, see <a * href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864</a>.</p> <p>For requests * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is * calculated automatically.</p> @@ -156,9 +156,9 @@ namespace Model inline PutBucketRequestPaymentRequest& WithContentMD5(Aws::String&& value) { SetContentMD5(std::move(value)); return *this;} /** - * <p>>The base64-encoded 128-bit MD5 digest of the data. You must use this - * header as a message integrity check to verify that the request body was not - * corrupted in transit. For more information, see <a + * <p>The base64-encoded 128-bit MD5 digest of the data. You must use this header + * as a message integrity check to verify that the request body was not corrupted + * in transit. For more information, see <a * href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864</a>.</p> <p>For requests * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is * calculated automatically.</p> @@ -198,56 +198,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline PutBucketRequestPaymentRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline PutBucketRequestPaymentRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketTaggingRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketTaggingRequest.h index 1454f4239f..9fab196905 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketTaggingRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketTaggingRequest.h @@ -198,56 +198,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline PutBucketTaggingRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline PutBucketTaggingRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketVersioningRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketVersioningRequest.h index 9e306b05b2..c9adb345bc 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketVersioningRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketVersioningRequest.h @@ -247,56 +247,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline PutBucketVersioningRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline PutBucketVersioningRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketWebsiteRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketWebsiteRequest.h index 695dae41c8..f95f12c950 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketWebsiteRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketWebsiteRequest.h @@ -198,56 +198,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline PutBucketWebsiteRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline PutBucketWebsiteRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectAclRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectAclRequest.h index e2ec137af3..8ee776e41a 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectAclRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectAclRequest.h @@ -128,113 +128,105 @@ namespace Model /** * <p>The bucket name that contains the object to which you want to attach the ACL. - * </p> <p>When using this API with an access point, you must direct requests to + * </p> <p>When using this action with an access point, you must direct requests to * the access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline const Aws::String& GetBucket() const{ return m_bucket; } /** * <p>The bucket name that contains the object to which you want to attach the ACL. - * </p> <p>When using this API with an access point, you must direct requests to + * </p> <p>When using this action with an access point, you must direct requests to * the access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; } /** * <p>The bucket name that contains the object to which you want to attach the ACL. - * </p> <p>When using this API with an access point, you must direct requests to + * </p> <p>When using this action with an access point, you must direct requests to * the access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; } /** * <p>The bucket name that contains the object to which you want to attach the ACL. - * </p> <p>When using this API with an access point, you must direct requests to + * </p> <p>When using this action with an access point, you must direct requests to * the access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); } /** * <p>The bucket name that contains the object to which you want to attach the ACL. - * </p> <p>When using this API with an access point, you must direct requests to + * </p> <p>When using this action with an access point, you must direct requests to * the access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); } /** * <p>The bucket name that contains the object to which you want to attach the ACL. - * </p> <p>When using this API with an access point, you must direct requests to + * </p> <p>When using this action with an access point, you must direct requests to * the access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline PutObjectAclRequest& WithBucket(const Aws::String& value) { SetBucket(value); return *this;} /** * <p>The bucket name that contains the object to which you want to attach the ACL. - * </p> <p>When using this API with an access point, you must direct requests to + * </p> <p>When using this action with an access point, you must direct requests to * the access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline PutObjectAclRequest& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;} /** * <p>The bucket name that contains the object to which you want to attach the ACL. - * </p> <p>When using this API with an access point, you must direct requests to + * </p> <p>When using this action with an access point, you must direct requests to * the access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline PutObjectAclRequest& WithBucket(const char* value) { SetBucket(value); return *this;} @@ -558,186 +550,170 @@ namespace Model /** - * <p>Key for which the PUT operation was initiated.</p> <p>When using this API + * <p>Key for which the PUT action was initiated.</p> <p>When using this action * with an access point, you must direct requests to the access point hostname. The * access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline const Aws::String& GetKey() const{ return m_key; } /** - * <p>Key for which the PUT operation was initiated.</p> <p>When using this API + * <p>Key for which the PUT action was initiated.</p> <p>When using this action * with an access point, you must direct requests to the access point hostname. The * access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline bool KeyHasBeenSet() const { return m_keyHasBeenSet; } /** - * <p>Key for which the PUT operation was initiated.</p> <p>When using this API + * <p>Key for which the PUT action was initiated.</p> <p>When using this action * with an access point, you must direct requests to the access point hostname. The * access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetKey(const Aws::String& value) { m_keyHasBeenSet = true; m_key = value; } /** - * <p>Key for which the PUT operation was initiated.</p> <p>When using this API + * <p>Key for which the PUT action was initiated.</p> <p>When using this action * with an access point, you must direct requests to the access point hostname. The * access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetKey(Aws::String&& value) { m_keyHasBeenSet = true; m_key = std::move(value); } /** - * <p>Key for which the PUT operation was initiated.</p> <p>When using this API + * <p>Key for which the PUT action was initiated.</p> <p>When using this action * with an access point, you must direct requests to the access point hostname. The * access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetKey(const char* value) { m_keyHasBeenSet = true; m_key.assign(value); } /** - * <p>Key for which the PUT operation was initiated.</p> <p>When using this API + * <p>Key for which the PUT action was initiated.</p> <p>When using this action * with an access point, you must direct requests to the access point hostname. The * access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline PutObjectAclRequest& WithKey(const Aws::String& value) { SetKey(value); return *this;} /** - * <p>Key for which the PUT operation was initiated.</p> <p>When using this API + * <p>Key for which the PUT action was initiated.</p> <p>When using this action * with an access point, you must direct requests to the access point hostname. The * access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline PutObjectAclRequest& WithKey(Aws::String&& value) { SetKey(std::move(value)); return *this;} /** - * <p>Key for which the PUT operation was initiated.</p> <p>When using this API + * <p>Key for which the PUT action was initiated.</p> <p>When using this action * with an access point, you must direct requests to the access point hostname. The * access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline PutObjectAclRequest& WithKey(const char* value) { SetKey(value); return *this;} @@ -803,56 +779,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline PutObjectAclRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline PutObjectAclRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectLegalHoldRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectLegalHoldRequest.h index 4bf13e588f..ad7edb3d02 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectLegalHoldRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectLegalHoldRequest.h @@ -47,113 +47,105 @@ namespace Model /** * <p>The bucket name containing the object that you want to place a Legal Hold on. - * </p> <p>When using this API with an access point, you must direct requests to + * </p> <p>When using this action with an access point, you must direct requests to * the access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline const Aws::String& GetBucket() const{ return m_bucket; } /** * <p>The bucket name containing the object that you want to place a Legal Hold on. - * </p> <p>When using this API with an access point, you must direct requests to + * </p> <p>When using this action with an access point, you must direct requests to * the access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; } /** * <p>The bucket name containing the object that you want to place a Legal Hold on. - * </p> <p>When using this API with an access point, you must direct requests to + * </p> <p>When using this action with an access point, you must direct requests to * the access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; } /** * <p>The bucket name containing the object that you want to place a Legal Hold on. - * </p> <p>When using this API with an access point, you must direct requests to + * </p> <p>When using this action with an access point, you must direct requests to * the access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); } /** * <p>The bucket name containing the object that you want to place a Legal Hold on. - * </p> <p>When using this API with an access point, you must direct requests to + * </p> <p>When using this action with an access point, you must direct requests to * the access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); } /** * <p>The bucket name containing the object that you want to place a Legal Hold on. - * </p> <p>When using this API with an access point, you must direct requests to + * </p> <p>When using this action with an access point, you must direct requests to * the access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline PutObjectLegalHoldRequest& WithBucket(const Aws::String& value) { SetBucket(value); return *this;} /** * <p>The bucket name containing the object that you want to place a Legal Hold on. - * </p> <p>When using this API with an access point, you must direct requests to + * </p> <p>When using this action with an access point, you must direct requests to * the access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline PutObjectLegalHoldRequest& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;} /** * <p>The bucket name containing the object that you want to place a Legal Hold on. - * </p> <p>When using this API with an access point, you must direct requests to + * </p> <p>When using this action with an access point, you must direct requests to * the access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline PutObjectLegalHoldRequest& WithBucket(const char* value) { SetBucket(value); return *this;} @@ -354,56 +346,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline PutObjectLegalHoldRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline PutObjectLegalHoldRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectLockConfigurationRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectLockConfigurationRequest.h index 249fa153b1..4ffc75c531 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectLockConfigurationRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectLockConfigurationRequest.h @@ -241,56 +241,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline PutObjectLockConfigurationRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline PutObjectLockConfigurationRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectRequest.h index 27a829ce55..b2c872004c 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectRequest.h @@ -91,186 +91,170 @@ namespace Model /** - * <p>The bucket name to which the PUT operation was initiated. </p> <p>When using - * this API with an access point, you must direct requests to the access point + * <p>The bucket name to which the PUT action was initiated. </p> <p>When using + * this action with an access point, you must direct requests to the access point * hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline const Aws::String& GetBucket() const{ return m_bucket; } /** - * <p>The bucket name to which the PUT operation was initiated. </p> <p>When using - * this API with an access point, you must direct requests to the access point + * <p>The bucket name to which the PUT action was initiated. </p> <p>When using + * this action with an access point, you must direct requests to the access point * hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; } /** - * <p>The bucket name to which the PUT operation was initiated. </p> <p>When using - * this API with an access point, you must direct requests to the access point + * <p>The bucket name to which the PUT action was initiated. </p> <p>When using + * this action with an access point, you must direct requests to the access point * hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; } /** - * <p>The bucket name to which the PUT operation was initiated. </p> <p>When using - * this API with an access point, you must direct requests to the access point + * <p>The bucket name to which the PUT action was initiated. </p> <p>When using + * this action with an access point, you must direct requests to the access point * hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); } /** - * <p>The bucket name to which the PUT operation was initiated. </p> <p>When using - * this API with an access point, you must direct requests to the access point + * <p>The bucket name to which the PUT action was initiated. </p> <p>When using + * this action with an access point, you must direct requests to the access point * hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); } /** - * <p>The bucket name to which the PUT operation was initiated. </p> <p>When using - * this API with an access point, you must direct requests to the access point + * <p>The bucket name to which the PUT action was initiated. </p> <p>When using + * this action with an access point, you must direct requests to the access point * hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline PutObjectRequest& WithBucket(const Aws::String& value) { SetBucket(value); return *this;} /** - * <p>The bucket name to which the PUT operation was initiated. </p> <p>When using - * this API with an access point, you must direct requests to the access point + * <p>The bucket name to which the PUT action was initiated. </p> <p>When using + * this action with an access point, you must direct requests to the access point * hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline PutObjectRequest& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;} /** - * <p>The bucket name to which the PUT operation was initiated. </p> <p>When using - * this API with an access point, you must direct requests to the access point + * <p>The bucket name to which the PUT action was initiated. </p> <p>When using + * this action with an access point, you must direct requests to the access point * hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline PutObjectRequest& WithBucket(const char* value) { SetBucket(value); return *this;} @@ -853,42 +837,42 @@ namespace Model /** - * <p>Object key for which the PUT operation was initiated.</p> + * <p>Object key for which the PUT action was initiated.</p> */ inline const Aws::String& GetKey() const{ return m_key; } /** - * <p>Object key for which the PUT operation was initiated.</p> + * <p>Object key for which the PUT action was initiated.</p> */ inline bool KeyHasBeenSet() const { return m_keyHasBeenSet; } /** - * <p>Object key for which the PUT operation was initiated.</p> + * <p>Object key for which the PUT action was initiated.</p> */ inline void SetKey(const Aws::String& value) { m_keyHasBeenSet = true; m_key = value; } /** - * <p>Object key for which the PUT operation was initiated.</p> + * <p>Object key for which the PUT action was initiated.</p> */ inline void SetKey(Aws::String&& value) { m_keyHasBeenSet = true; m_key = std::move(value); } /** - * <p>Object key for which the PUT operation was initiated.</p> + * <p>Object key for which the PUT action was initiated.</p> */ inline void SetKey(const char* value) { m_keyHasBeenSet = true; m_key.assign(value); } /** - * <p>Object key for which the PUT operation was initiated.</p> + * <p>Object key for which the PUT action was initiated.</p> */ inline PutObjectRequest& WithKey(const Aws::String& value) { SetKey(value); return *this;} /** - * <p>Object key for which the PUT operation was initiated.</p> + * <p>Object key for which the PUT action was initiated.</p> */ inline PutObjectRequest& WithKey(Aws::String&& value) { SetKey(std::move(value)); return *this;} /** - * <p>Object key for which the PUT operation was initiated.</p> + * <p>Object key for which the PUT action was initiated.</p> */ inline PutObjectRequest& WithKey(const char* value) { SetKey(value); return *this;} @@ -1577,7 +1561,7 @@ namespace Model * <p>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 * <code>true</code> causes Amazon S3 to use an S3 Bucket Key for object encryption - * with SSE-KMS.</p> <p>Specifying this header with a PUT operation doesn’t affect + * with SSE-KMS.</p> <p>Specifying this header with a PUT action doesn’t affect * bucket-level settings for S3 Bucket Key.</p> */ inline bool GetBucketKeyEnabled() const{ return m_bucketKeyEnabled; } @@ -1586,7 +1570,7 @@ namespace Model * <p>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 * <code>true</code> causes Amazon S3 to use an S3 Bucket Key for object encryption - * with SSE-KMS.</p> <p>Specifying this header with a PUT operation doesn’t affect + * with SSE-KMS.</p> <p>Specifying this header with a PUT action doesn’t affect * bucket-level settings for S3 Bucket Key.</p> */ inline bool BucketKeyEnabledHasBeenSet() const { return m_bucketKeyEnabledHasBeenSet; } @@ -1595,7 +1579,7 @@ namespace Model * <p>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 * <code>true</code> causes Amazon S3 to use an S3 Bucket Key for object encryption - * with SSE-KMS.</p> <p>Specifying this header with a PUT operation doesn’t affect + * with SSE-KMS.</p> <p>Specifying this header with a PUT action doesn’t affect * bucket-level settings for S3 Bucket Key.</p> */ inline void SetBucketKeyEnabled(bool value) { m_bucketKeyEnabledHasBeenSet = true; m_bucketKeyEnabled = value; } @@ -1604,7 +1588,7 @@ namespace Model * <p>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 * <code>true</code> causes Amazon S3 to use an S3 Bucket Key for object encryption - * with SSE-KMS.</p> <p>Specifying this header with a PUT operation doesn’t affect + * with SSE-KMS.</p> <p>Specifying this header with a PUT action doesn’t affect * bucket-level settings for S3 Bucket Key.</p> */ inline PutObjectRequest& WithBucketKeyEnabled(bool value) { SetBucketKeyEnabled(value); return *this;} @@ -1790,56 +1774,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline PutObjectRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline PutObjectRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectRetentionRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectRetentionRequest.h index 6efb8470e0..e11e2568a1 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectRetentionRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectRetentionRequest.h @@ -47,121 +47,113 @@ namespace Model /** * <p>The bucket name that contains the object you want to apply this Object - * Retention configuration to. </p> <p>When using this API with an access point, + * Retention configuration to. </p> <p>When using this action with an access point, * you must direct requests to the access point hostname. The access point hostname * takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline const Aws::String& GetBucket() const{ return m_bucket; } /** * <p>The bucket name that contains the object you want to apply this Object - * Retention configuration to. </p> <p>When using this API with an access point, + * Retention configuration to. </p> <p>When using this action with an access point, * you must direct requests to the access point hostname. The access point hostname * takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; } /** * <p>The bucket name that contains the object you want to apply this Object - * Retention configuration to. </p> <p>When using this API with an access point, + * Retention configuration to. </p> <p>When using this action with an access point, * you must direct requests to the access point hostname. The access point hostname * takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; } /** * <p>The bucket name that contains the object you want to apply this Object - * Retention configuration to. </p> <p>When using this API with an access point, + * Retention configuration to. </p> <p>When using this action with an access point, * you must direct requests to the access point hostname. The access point hostname * takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); } /** * <p>The bucket name that contains the object you want to apply this Object - * Retention configuration to. </p> <p>When using this API with an access point, + * Retention configuration to. </p> <p>When using this action with an access point, * you must direct requests to the access point hostname. The access point hostname * takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); } /** * <p>The bucket name that contains the object you want to apply this Object - * Retention configuration to. </p> <p>When using this API with an access point, + * Retention configuration to. </p> <p>When using this action with an access point, * you must direct requests to the access point hostname. The access point hostname * takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline PutObjectRetentionRequest& WithBucket(const Aws::String& value) { SetBucket(value); return *this;} /** * <p>The bucket name that contains the object you want to apply this Object - * Retention configuration to. </p> <p>When using this API with an access point, + * Retention configuration to. </p> <p>When using this action with an access point, * you must direct requests to the access point hostname. The access point hostname * takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline PutObjectRetentionRequest& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;} /** * <p>The bucket name that contains the object you want to apply this Object - * Retention configuration to. </p> <p>When using this API with an access point, + * Retention configuration to. </p> <p>When using this action with an access point, * you must direct requests to the access point hostname. The access point hostname * takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline PutObjectRetentionRequest& WithBucket(const char* value) { SetBucket(value); return *this;} @@ -315,26 +307,22 @@ namespace Model /** - * <p>Indicates whether this operation should bypass Governance-mode - * restrictions.</p> + * <p>Indicates whether this action should bypass Governance-mode restrictions.</p> */ inline bool GetBypassGovernanceRetention() const{ return m_bypassGovernanceRetention; } /** - * <p>Indicates whether this operation should bypass Governance-mode - * restrictions.</p> + * <p>Indicates whether this action should bypass Governance-mode restrictions.</p> */ inline bool BypassGovernanceRetentionHasBeenSet() const { return m_bypassGovernanceRetentionHasBeenSet; } /** - * <p>Indicates whether this operation should bypass Governance-mode - * restrictions.</p> + * <p>Indicates whether this action should bypass Governance-mode restrictions.</p> */ inline void SetBypassGovernanceRetention(bool value) { m_bypassGovernanceRetentionHasBeenSet = true; m_bypassGovernanceRetention = value; } /** - * <p>Indicates whether this operation should bypass Governance-mode - * restrictions.</p> + * <p>Indicates whether this action should bypass Governance-mode restrictions.</p> */ inline PutObjectRetentionRequest& WithBypassGovernanceRetention(bool value) { SetBypassGovernanceRetention(value); return *this;} @@ -397,56 +385,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline PutObjectRetentionRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline PutObjectRetentionRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectTaggingRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectTaggingRequest.h index 272b113058..9bd467ebf1 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectTaggingRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectTaggingRequest.h @@ -8,6 +8,7 @@ #include <aws/s3/S3Request.h> #include <aws/core/utils/memory/stl/AWSString.h> #include <aws/s3/model/Tagging.h> +#include <aws/s3/model/RequestPayer.h> #include <aws/core/utils/memory/stl/AWSMap.h> #include <utility> @@ -45,186 +46,170 @@ namespace Model /** - * <p>The bucket name containing the object. </p> <p>When using this API with an + * <p>The bucket name containing the object. </p> <p>When using this action with an * access point, you must direct requests to the access point hostname. The access * point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline const Aws::String& GetBucket() const{ return m_bucket; } /** - * <p>The bucket name containing the object. </p> <p>When using this API with an + * <p>The bucket name containing the object. </p> <p>When using this action with an * access point, you must direct requests to the access point hostname. The access * point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; } /** - * <p>The bucket name containing the object. </p> <p>When using this API with an + * <p>The bucket name containing the object. </p> <p>When using this action with an * access point, you must direct requests to the access point hostname. The access * point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; } /** - * <p>The bucket name containing the object. </p> <p>When using this API with an + * <p>The bucket name containing the object. </p> <p>When using this action with an * access point, you must direct requests to the access point hostname. The access * point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); } /** - * <p>The bucket name containing the object. </p> <p>When using this API with an + * <p>The bucket name containing the object. </p> <p>When using this action with an * access point, you must direct requests to the access point hostname. The access * point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); } /** - * <p>The bucket name containing the object. </p> <p>When using this API with an + * <p>The bucket name containing the object. </p> <p>When using this action with an * access point, you must direct requests to the access point hostname. The access * point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline PutObjectTaggingRequest& WithBucket(const Aws::String& value) { SetBucket(value); return *this;} /** - * <p>The bucket name containing the object. </p> <p>When using this API with an + * <p>The bucket name containing the object. </p> <p>When using this action with an * access point, you must direct requests to the access point hostname. The access * point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline PutObjectTaggingRequest& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;} /** - * <p>The bucket name containing the object. </p> <p>When using this API with an + * <p>The bucket name containing the object. </p> <p>When using this action with an * access point, you must direct requests to the access point hostname. The access * point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline PutObjectTaggingRequest& WithBucket(const char* value) { SetBucket(value); return *this;} @@ -400,56 +385,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline PutObjectTaggingRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline PutObjectTaggingRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ @@ -457,6 +442,25 @@ namespace Model + inline const RequestPayer& GetRequestPayer() const{ return m_requestPayer; } + + + inline bool RequestPayerHasBeenSet() const { return m_requestPayerHasBeenSet; } + + + inline void SetRequestPayer(const RequestPayer& value) { m_requestPayerHasBeenSet = true; m_requestPayer = value; } + + + inline void SetRequestPayer(RequestPayer&& value) { m_requestPayerHasBeenSet = true; m_requestPayer = std::move(value); } + + + inline PutObjectTaggingRequest& WithRequestPayer(const RequestPayer& value) { SetRequestPayer(value); return *this;} + + + inline PutObjectTaggingRequest& WithRequestPayer(RequestPayer&& value) { SetRequestPayer(std::move(value)); return *this;} + + + inline const Aws::Map<Aws::String, Aws::String>& GetCustomizedAccessLogTag() const{ return m_customizedAccessLogTag; } @@ -515,6 +519,9 @@ namespace Model Aws::String m_expectedBucketOwner; bool m_expectedBucketOwnerHasBeenSet; + RequestPayer m_requestPayer; + bool m_requestPayerHasBeenSet; + Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag; bool m_customizedAccessLogTagHasBeenSet; }; diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutPublicAccessBlockRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutPublicAccessBlockRequest.h index ab558c00d6..fd369ccfac 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutPublicAccessBlockRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutPublicAccessBlockRequest.h @@ -156,8 +156,7 @@ namespace Model * combination. For more information about when Amazon S3 considers a bucket or * object public, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html#access-control-block-public-access-policy-status">The - * Meaning of "Public"</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * Meaning of "Public"</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline const PublicAccessBlockConfiguration& GetPublicAccessBlockConfiguration() const{ return m_publicAccessBlockConfiguration; } @@ -167,8 +166,7 @@ namespace Model * combination. For more information about when Amazon S3 considers a bucket or * object public, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html#access-control-block-public-access-policy-status">The - * Meaning of "Public"</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * Meaning of "Public"</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline bool PublicAccessBlockConfigurationHasBeenSet() const { return m_publicAccessBlockConfigurationHasBeenSet; } @@ -178,8 +176,7 @@ namespace Model * combination. For more information about when Amazon S3 considers a bucket or * object public, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html#access-control-block-public-access-policy-status">The - * Meaning of "Public"</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * Meaning of "Public"</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetPublicAccessBlockConfiguration(const PublicAccessBlockConfiguration& value) { m_publicAccessBlockConfigurationHasBeenSet = true; m_publicAccessBlockConfiguration = value; } @@ -189,8 +186,7 @@ namespace Model * combination. For more information about when Amazon S3 considers a bucket or * object public, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html#access-control-block-public-access-policy-status">The - * Meaning of "Public"</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * Meaning of "Public"</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetPublicAccessBlockConfiguration(PublicAccessBlockConfiguration&& value) { m_publicAccessBlockConfigurationHasBeenSet = true; m_publicAccessBlockConfiguration = std::move(value); } @@ -200,8 +196,7 @@ namespace Model * combination. For more information about when Amazon S3 considers a bucket or * object public, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html#access-control-block-public-access-policy-status">The - * Meaning of "Public"</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * Meaning of "Public"</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline PutPublicAccessBlockRequest& WithPublicAccessBlockConfiguration(const PublicAccessBlockConfiguration& value) { SetPublicAccessBlockConfiguration(value); return *this;} @@ -211,63 +206,62 @@ namespace Model * combination. For more information about when Amazon S3 considers a bucket or * object public, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html#access-control-block-public-access-policy-status">The - * Meaning of "Public"</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * Meaning of "Public"</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline PutPublicAccessBlockRequest& WithPublicAccessBlockConfiguration(PublicAccessBlockConfiguration&& value) { SetPublicAccessBlockConfiguration(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline PutPublicAccessBlockRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline PutPublicAccessBlockRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/QueueConfigurationDeprecated.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/QueueConfigurationDeprecated.h index 9f99c6a416..05c80b2db1 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/QueueConfigurationDeprecated.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/QueueConfigurationDeprecated.h @@ -69,42 +69,42 @@ namespace Model /** - * <p>A collection of bucket events for which to send notifications</p> + * <p>A collection of bucket events for which to send notifications.</p> */ inline const Aws::Vector<Event>& GetEvents() const{ return m_events; } /** - * <p>A collection of bucket events for which to send notifications</p> + * <p>A collection of bucket events for which to send notifications.</p> */ inline bool EventsHasBeenSet() const { return m_eventsHasBeenSet; } /** - * <p>A collection of bucket events for which to send notifications</p> + * <p>A collection of bucket events for which to send notifications.</p> */ inline void SetEvents(const Aws::Vector<Event>& value) { m_eventsHasBeenSet = true; m_events = value; } /** - * <p>A collection of bucket events for which to send notifications</p> + * <p>A collection of bucket events for which to send notifications.</p> */ inline void SetEvents(Aws::Vector<Event>&& value) { m_eventsHasBeenSet = true; m_events = std::move(value); } /** - * <p>A collection of bucket events for which to send notifications</p> + * <p>A collection of bucket events for which to send notifications.</p> */ inline QueueConfigurationDeprecated& WithEvents(const Aws::Vector<Event>& value) { SetEvents(value); return *this;} /** - * <p>A collection of bucket events for which to send notifications</p> + * <p>A collection of bucket events for which to send notifications.</p> */ inline QueueConfigurationDeprecated& WithEvents(Aws::Vector<Event>&& value) { SetEvents(std::move(value)); return *this;} /** - * <p>A collection of bucket events for which to send notifications</p> + * <p>A collection of bucket events for which to send notifications.</p> */ inline QueueConfigurationDeprecated& AddEvents(const Event& value) { m_eventsHasBeenSet = true; m_events.push_back(value); return *this; } /** - * <p>A collection of bucket events for which to send notifications</p> + * <p>A collection of bucket events for which to send notifications.</p> */ inline QueueConfigurationDeprecated& AddEvents(Event&& value) { m_eventsHasBeenSet = true; m_events.push_back(std::move(value)); return *this; } diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Redirect.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Redirect.h index bda92937fe..3a21bec482 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Redirect.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Redirect.h @@ -173,7 +173,11 @@ namespace Model * block with <code>KeyPrefixEquals</code> set to <code>docs/</code> and in the * Redirect set <code>ReplaceKeyPrefixWith</code> to <code>/documents</code>. Not * required if one of the siblings is present. Can be present only if - * <code>ReplaceKeyWith</code> is not provided.</p> + * <code>ReplaceKeyWith</code> is not provided.</p> <p>Replacement must + * be made for object keys containing special characters (such as carriage returns) + * when using XML requests. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline const Aws::String& GetReplaceKeyPrefixWith() const{ return m_replaceKeyPrefixWith; } @@ -184,7 +188,11 @@ namespace Model * block with <code>KeyPrefixEquals</code> set to <code>docs/</code> and in the * Redirect set <code>ReplaceKeyPrefixWith</code> to <code>/documents</code>. Not * required if one of the siblings is present. Can be present only if - * <code>ReplaceKeyWith</code> is not provided.</p> + * <code>ReplaceKeyWith</code> is not provided.</p> <p>Replacement must + * be made for object keys containing special characters (such as carriage returns) + * when using XML requests. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline bool ReplaceKeyPrefixWithHasBeenSet() const { return m_replaceKeyPrefixWithHasBeenSet; } @@ -195,7 +203,11 @@ namespace Model * block with <code>KeyPrefixEquals</code> set to <code>docs/</code> and in the * Redirect set <code>ReplaceKeyPrefixWith</code> to <code>/documents</code>. Not * required if one of the siblings is present. Can be present only if - * <code>ReplaceKeyWith</code> is not provided.</p> + * <code>ReplaceKeyWith</code> is not provided.</p> <p>Replacement must + * be made for object keys containing special characters (such as carriage returns) + * when using XML requests. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline void SetReplaceKeyPrefixWith(const Aws::String& value) { m_replaceKeyPrefixWithHasBeenSet = true; m_replaceKeyPrefixWith = value; } @@ -206,7 +218,11 @@ namespace Model * block with <code>KeyPrefixEquals</code> set to <code>docs/</code> and in the * Redirect set <code>ReplaceKeyPrefixWith</code> to <code>/documents</code>. Not * required if one of the siblings is present. Can be present only if - * <code>ReplaceKeyWith</code> is not provided.</p> + * <code>ReplaceKeyWith</code> is not provided.</p> <p>Replacement must + * be made for object keys containing special characters (such as carriage returns) + * when using XML requests. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline void SetReplaceKeyPrefixWith(Aws::String&& value) { m_replaceKeyPrefixWithHasBeenSet = true; m_replaceKeyPrefixWith = std::move(value); } @@ -217,7 +233,11 @@ namespace Model * block with <code>KeyPrefixEquals</code> set to <code>docs/</code> and in the * Redirect set <code>ReplaceKeyPrefixWith</code> to <code>/documents</code>. Not * required if one of the siblings is present. Can be present only if - * <code>ReplaceKeyWith</code> is not provided.</p> + * <code>ReplaceKeyWith</code> is not provided.</p> <p>Replacement must + * be made for object keys containing special characters (such as carriage returns) + * when using XML requests. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline void SetReplaceKeyPrefixWith(const char* value) { m_replaceKeyPrefixWithHasBeenSet = true; m_replaceKeyPrefixWith.assign(value); } @@ -228,7 +248,11 @@ namespace Model * block with <code>KeyPrefixEquals</code> set to <code>docs/</code> and in the * Redirect set <code>ReplaceKeyPrefixWith</code> to <code>/documents</code>. Not * required if one of the siblings is present. Can be present only if - * <code>ReplaceKeyWith</code> is not provided.</p> + * <code>ReplaceKeyWith</code> is not provided.</p> <p>Replacement must + * be made for object keys containing special characters (such as carriage returns) + * when using XML requests. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline Redirect& WithReplaceKeyPrefixWith(const Aws::String& value) { SetReplaceKeyPrefixWith(value); return *this;} @@ -239,7 +263,11 @@ namespace Model * block with <code>KeyPrefixEquals</code> set to <code>docs/</code> and in the * Redirect set <code>ReplaceKeyPrefixWith</code> to <code>/documents</code>. Not * required if one of the siblings is present. Can be present only if - * <code>ReplaceKeyWith</code> is not provided.</p> + * <code>ReplaceKeyWith</code> is not provided.</p> <p>Replacement must + * be made for object keys containing special characters (such as carriage returns) + * when using XML requests. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline Redirect& WithReplaceKeyPrefixWith(Aws::String&& value) { SetReplaceKeyPrefixWith(std::move(value)); return *this;} @@ -250,7 +278,11 @@ namespace Model * block with <code>KeyPrefixEquals</code> set to <code>docs/</code> and in the * Redirect set <code>ReplaceKeyPrefixWith</code> to <code>/documents</code>. Not * required if one of the siblings is present. Can be present only if - * <code>ReplaceKeyWith</code> is not provided.</p> + * <code>ReplaceKeyWith</code> is not provided.</p> <p>Replacement must + * be made for object keys containing special characters (such as carriage returns) + * when using XML requests. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline Redirect& WithReplaceKeyPrefixWith(const char* value) { SetReplaceKeyPrefixWith(value); return *this;} @@ -259,7 +291,11 @@ namespace Model * <p>The specific object key to use in the redirect request. For example, redirect * request to <code>error.html</code>. Not required if one of the siblings is * present. Can be present only if <code>ReplaceKeyPrefixWith</code> is not - * provided.</p> + * provided.</p> <p>Replacement must be made for object keys containing + * special characters (such as carriage returns) when using XML requests. For more + * information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline const Aws::String& GetReplaceKeyWith() const{ return m_replaceKeyWith; } @@ -267,7 +303,11 @@ namespace Model * <p>The specific object key to use in the redirect request. For example, redirect * request to <code>error.html</code>. Not required if one of the siblings is * present. Can be present only if <code>ReplaceKeyPrefixWith</code> is not - * provided.</p> + * provided.</p> <p>Replacement must be made for object keys containing + * special characters (such as carriage returns) when using XML requests. For more + * information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline bool ReplaceKeyWithHasBeenSet() const { return m_replaceKeyWithHasBeenSet; } @@ -275,7 +315,11 @@ namespace Model * <p>The specific object key to use in the redirect request. For example, redirect * request to <code>error.html</code>. Not required if one of the siblings is * present. Can be present only if <code>ReplaceKeyPrefixWith</code> is not - * provided.</p> + * provided.</p> <p>Replacement must be made for object keys containing + * special characters (such as carriage returns) when using XML requests. For more + * information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline void SetReplaceKeyWith(const Aws::String& value) { m_replaceKeyWithHasBeenSet = true; m_replaceKeyWith = value; } @@ -283,7 +327,11 @@ namespace Model * <p>The specific object key to use in the redirect request. For example, redirect * request to <code>error.html</code>. Not required if one of the siblings is * present. Can be present only if <code>ReplaceKeyPrefixWith</code> is not - * provided.</p> + * provided.</p> <p>Replacement must be made for object keys containing + * special characters (such as carriage returns) when using XML requests. For more + * information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline void SetReplaceKeyWith(Aws::String&& value) { m_replaceKeyWithHasBeenSet = true; m_replaceKeyWith = std::move(value); } @@ -291,7 +339,11 @@ namespace Model * <p>The specific object key to use in the redirect request. For example, redirect * request to <code>error.html</code>. Not required if one of the siblings is * present. Can be present only if <code>ReplaceKeyPrefixWith</code> is not - * provided.</p> + * provided.</p> <p>Replacement must be made for object keys containing + * special characters (such as carriage returns) when using XML requests. For more + * information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline void SetReplaceKeyWith(const char* value) { m_replaceKeyWithHasBeenSet = true; m_replaceKeyWith.assign(value); } @@ -299,7 +351,11 @@ namespace Model * <p>The specific object key to use in the redirect request. For example, redirect * request to <code>error.html</code>. Not required if one of the siblings is * present. Can be present only if <code>ReplaceKeyPrefixWith</code> is not - * provided.</p> + * provided.</p> <p>Replacement must be made for object keys containing + * special characters (such as carriage returns) when using XML requests. For more + * information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline Redirect& WithReplaceKeyWith(const Aws::String& value) { SetReplaceKeyWith(value); return *this;} @@ -307,7 +363,11 @@ namespace Model * <p>The specific object key to use in the redirect request. For example, redirect * request to <code>error.html</code>. Not required if one of the siblings is * present. Can be present only if <code>ReplaceKeyPrefixWith</code> is not - * provided.</p> + * provided.</p> <p>Replacement must be made for object keys containing + * special characters (such as carriage returns) when using XML requests. For more + * information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline Redirect& WithReplaceKeyWith(Aws::String&& value) { SetReplaceKeyWith(std::move(value)); return *this;} @@ -315,7 +375,11 @@ namespace Model * <p>The specific object key to use in the redirect request. For example, redirect * request to <code>error.html</code>. Not required if one of the siblings is * present. Can be present only if <code>ReplaceKeyPrefixWith</code> is not - * provided.</p> + * provided.</p> <p>Replacement must be made for object keys containing + * special characters (such as carriage returns) when using XML requests. For more + * information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline Redirect& WithReplaceKeyWith(const char* value) { SetReplaceKeyWith(value); return *this;} diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ReplicationConfiguration.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ReplicationConfiguration.h index 2ffc3e3f51..e138c79cba 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ReplicationConfiguration.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ReplicationConfiguration.h @@ -45,8 +45,7 @@ namespace Model * (IAM) role that Amazon S3 assumes when replicating objects. For more * information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-how-setup.html">How - * to Set Up Replication</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * to Set Up Replication</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline const Aws::String& GetRole() const{ return m_role; } @@ -55,8 +54,7 @@ namespace Model * (IAM) role that Amazon S3 assumes when replicating objects. For more * information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-how-setup.html">How - * to Set Up Replication</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * to Set Up Replication</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline bool RoleHasBeenSet() const { return m_roleHasBeenSet; } @@ -65,8 +63,7 @@ namespace Model * (IAM) role that Amazon S3 assumes when replicating objects. For more * information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-how-setup.html">How - * to Set Up Replication</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * to Set Up Replication</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetRole(const Aws::String& value) { m_roleHasBeenSet = true; m_role = value; } @@ -75,8 +72,7 @@ namespace Model * (IAM) role that Amazon S3 assumes when replicating objects. For more * information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-how-setup.html">How - * to Set Up Replication</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * to Set Up Replication</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetRole(Aws::String&& value) { m_roleHasBeenSet = true; m_role = std::move(value); } @@ -85,8 +81,7 @@ namespace Model * (IAM) role that Amazon S3 assumes when replicating objects. For more * information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-how-setup.html">How - * to Set Up Replication</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * to Set Up Replication</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetRole(const char* value) { m_roleHasBeenSet = true; m_role.assign(value); } @@ -95,8 +90,7 @@ namespace Model * (IAM) role that Amazon S3 assumes when replicating objects. For more * information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-how-setup.html">How - * to Set Up Replication</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * to Set Up Replication</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline ReplicationConfiguration& WithRole(const Aws::String& value) { SetRole(value); return *this;} @@ -105,8 +99,7 @@ namespace Model * (IAM) role that Amazon S3 assumes when replicating objects. For more * information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-how-setup.html">How - * to Set Up Replication</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * to Set Up Replication</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline ReplicationConfiguration& WithRole(Aws::String&& value) { SetRole(std::move(value)); return *this;} @@ -115,8 +108,7 @@ namespace Model * (IAM) role that Amazon S3 assumes when replicating objects. For more * information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-how-setup.html">How - * to Set Up Replication</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * to Set Up Replication</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline ReplicationConfiguration& WithRole(const char* value) { SetRole(value); return *this;} diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ReplicationRule.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ReplicationRule.h index ae8671f874..2003426a67 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ReplicationRule.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ReplicationRule.h @@ -93,7 +93,7 @@ namespace Model * rule with the highest priority. The higher the number, the higher the priority. * </p> <p>For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/replication.html">Replication</a> - * in the <i>Amazon Simple Storage Service Developer Guide</i>.</p> + * in the <i>Amazon S3 User Guide</i>.</p> */ inline int GetPriority() const{ return m_priority; } @@ -105,7 +105,7 @@ namespace Model * rule with the highest priority. The higher the number, the higher the priority. * </p> <p>For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/replication.html">Replication</a> - * in the <i>Amazon Simple Storage Service Developer Guide</i>.</p> + * in the <i>Amazon S3 User Guide</i>.</p> */ inline bool PriorityHasBeenSet() const { return m_priorityHasBeenSet; } @@ -117,7 +117,7 @@ namespace Model * rule with the highest priority. The higher the number, the higher the priority. * </p> <p>For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/replication.html">Replication</a> - * in the <i>Amazon Simple Storage Service Developer Guide</i>.</p> + * in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetPriority(int value) { m_priorityHasBeenSet = true; m_priority = value; } @@ -129,7 +129,7 @@ namespace Model * rule with the highest priority. The higher the number, the higher the priority. * </p> <p>For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/replication.html">Replication</a> - * in the <i>Amazon Simple Storage Service Developer Guide</i>.</p> + * in the <i>Amazon S3 User Guide</i>.</p> */ inline ReplicationRule& WithPriority(int value) { SetPriority(value); return *this;} diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ReplicationRuleAndOperator.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ReplicationRuleAndOperator.h index 900e873869..bf78d3af98 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ReplicationRuleAndOperator.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ReplicationRuleAndOperator.h @@ -30,8 +30,8 @@ namespace Model * more than one filter. </p> <p>For example:</p> <ul> <li> <p>If you specify both * a <code>Prefix</code> and a <code>Tag</code> filter, wrap these filters in an * <code>And</code> tag. </p> </li> <li> <p>If you specify a filter based on - * multiple tags, wrap the <code>Tag</code> elements in an <code>And</code> tag</p> - * </li> </ul><p><h3>See Also:</h3> <a + * multiple tags, wrap the <code>Tag</code> elements in an <code>And</code> + * tag.</p> </li> </ul><p><h3>See Also:</h3> <a * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ReplicationRuleAndOperator">AWS * API Reference</a></p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ReplicationRuleFilter.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ReplicationRuleFilter.h index f8d7e698c0..630c385d9e 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ReplicationRuleFilter.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ReplicationRuleFilter.h @@ -44,49 +44,81 @@ namespace Model /** * <p>An object key name prefix that identifies the subset of objects to which the - * rule applies.</p> + * rule applies.</p> <p>Replacement must be made for object keys + * containing special characters (such as carriage returns) when using XML + * requests. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline const Aws::String& GetPrefix() const{ return m_prefix; } /** * <p>An object key name prefix that identifies the subset of objects to which the - * rule applies.</p> + * rule applies.</p> <p>Replacement must be made for object keys + * containing special characters (such as carriage returns) when using XML + * requests. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline bool PrefixHasBeenSet() const { return m_prefixHasBeenSet; } /** * <p>An object key name prefix that identifies the subset of objects to which the - * rule applies.</p> + * rule applies.</p> <p>Replacement must be made for object keys + * containing special characters (such as carriage returns) when using XML + * requests. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline void SetPrefix(const Aws::String& value) { m_prefixHasBeenSet = true; m_prefix = value; } /** * <p>An object key name prefix that identifies the subset of objects to which the - * rule applies.</p> + * rule applies.</p> <p>Replacement must be made for object keys + * containing special characters (such as carriage returns) when using XML + * requests. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline void SetPrefix(Aws::String&& value) { m_prefixHasBeenSet = true; m_prefix = std::move(value); } /** * <p>An object key name prefix that identifies the subset of objects to which the - * rule applies.</p> + * rule applies.</p> <p>Replacement must be made for object keys + * containing special characters (such as carriage returns) when using XML + * requests. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline void SetPrefix(const char* value) { m_prefixHasBeenSet = true; m_prefix.assign(value); } /** * <p>An object key name prefix that identifies the subset of objects to which the - * rule applies.</p> + * rule applies.</p> <p>Replacement must be made for object keys + * containing special characters (such as carriage returns) when using XML + * requests. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline ReplicationRuleFilter& WithPrefix(const Aws::String& value) { SetPrefix(value); return *this;} /** * <p>An object key name prefix that identifies the subset of objects to which the - * rule applies.</p> + * rule applies.</p> <p>Replacement must be made for object keys + * containing special characters (such as carriage returns) when using XML + * requests. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline ReplicationRuleFilter& WithPrefix(Aws::String&& value) { SetPrefix(std::move(value)); return *this;} /** * <p>An object key name prefix that identifies the subset of objects to which the - * rule applies.</p> + * rule applies.</p> <p>Replacement must be made for object keys + * containing special characters (such as carriage returns) when using XML + * requests. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline ReplicationRuleFilter& WithPrefix(const char* value) { SetPrefix(value); return *this;} diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/RestoreObjectRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/RestoreObjectRequest.h index 157b6db7c3..f588c84270 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/RestoreObjectRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/RestoreObjectRequest.h @@ -44,227 +44,211 @@ namespace Model /** - * <p>The bucket name containing the object to restore. </p> <p>When using this API - * with an access point, you must direct requests to the access point hostname. The - * access point hostname takes the form + * <p>The bucket name containing the object to restore. </p> <p>When using this + * action with an access point, you must direct requests to the access point + * hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline const Aws::String& GetBucket() const{ return m_bucket; } /** - * <p>The bucket name containing the object to restore. </p> <p>When using this API - * with an access point, you must direct requests to the access point hostname. The - * access point hostname takes the form + * <p>The bucket name containing the object to restore. </p> <p>When using this + * action with an access point, you must direct requests to the access point + * hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; } /** - * <p>The bucket name containing the object to restore. </p> <p>When using this API - * with an access point, you must direct requests to the access point hostname. The - * access point hostname takes the form + * <p>The bucket name containing the object to restore. </p> <p>When using this + * action with an access point, you must direct requests to the access point + * hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; } /** - * <p>The bucket name containing the object to restore. </p> <p>When using this API - * with an access point, you must direct requests to the access point hostname. The - * access point hostname takes the form + * <p>The bucket name containing the object to restore. </p> <p>When using this + * action with an access point, you must direct requests to the access point + * hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); } /** - * <p>The bucket name containing the object to restore. </p> <p>When using this API - * with an access point, you must direct requests to the access point hostname. The - * access point hostname takes the form + * <p>The bucket name containing the object to restore. </p> <p>When using this + * action with an access point, you must direct requests to the access point + * hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); } /** - * <p>The bucket name containing the object to restore. </p> <p>When using this API - * with an access point, you must direct requests to the access point hostname. The - * access point hostname takes the form + * <p>The bucket name containing the object to restore. </p> <p>When using this + * action with an access point, you must direct requests to the access point + * hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline RestoreObjectRequest& WithBucket(const Aws::String& value) { SetBucket(value); return *this;} /** - * <p>The bucket name containing the object to restore. </p> <p>When using this API - * with an access point, you must direct requests to the access point hostname. The - * access point hostname takes the form + * <p>The bucket name containing the object to restore. </p> <p>When using this + * action with an access point, you must direct requests to the access point + * hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline RestoreObjectRequest& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;} /** - * <p>The bucket name containing the object to restore. </p> <p>When using this API - * with an access point, you must direct requests to the access point hostname. The - * access point hostname takes the form + * <p>The bucket name containing the object to restore. </p> <p>When using this + * action with an access point, you must direct requests to the access point + * hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline RestoreObjectRequest& WithBucket(const char* value) { SetBucket(value); return *this;} /** - * <p>Object key for which the operation was initiated.</p> + * <p>Object key for which the action was initiated.</p> */ inline const Aws::String& GetKey() const{ return m_key; } /** - * <p>Object key for which the operation was initiated.</p> + * <p>Object key for which the action was initiated.</p> */ inline bool KeyHasBeenSet() const { return m_keyHasBeenSet; } /** - * <p>Object key for which the operation was initiated.</p> + * <p>Object key for which the action was initiated.</p> */ inline void SetKey(const Aws::String& value) { m_keyHasBeenSet = true; m_key = value; } /** - * <p>Object key for which the operation was initiated.</p> + * <p>Object key for which the action was initiated.</p> */ inline void SetKey(Aws::String&& value) { m_keyHasBeenSet = true; m_key = std::move(value); } /** - * <p>Object key for which the operation was initiated.</p> + * <p>Object key for which the action was initiated.</p> */ inline void SetKey(const char* value) { m_keyHasBeenSet = true; m_key.assign(value); } /** - * <p>Object key for which the operation was initiated.</p> + * <p>Object key for which the action was initiated.</p> */ inline RestoreObjectRequest& WithKey(const Aws::String& value) { SetKey(value); return *this;} /** - * <p>Object key for which the operation was initiated.</p> + * <p>Object key for which the action was initiated.</p> */ inline RestoreObjectRequest& WithKey(Aws::String&& value) { SetKey(std::move(value)); return *this;} /** - * <p>Object key for which the operation was initiated.</p> + * <p>Object key for which the action was initiated.</p> */ inline RestoreObjectRequest& WithKey(const char* value) { SetKey(value); return *this;} @@ -349,56 +333,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline RestoreObjectRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline RestoreObjectRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/RoutingRule.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/RoutingRule.h index ff37fa473e..e87bdb7958 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/RoutingRule.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/RoutingRule.h @@ -27,8 +27,8 @@ namespace Model * <p>Specifies the redirect behavior and when a redirect is applied. For more * information about routing rules, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/how-to-page-redirect.html#advanced-conditional-redirects">Configuring - * advanced conditional redirects</a> in the <i>Amazon Simple Storage Service - * Developer Guide</i>.</p><p><h3>See Also:</h3> <a + * advanced conditional redirects</a> in the <i>Amazon S3 User + * Guide</i>.</p><p><h3>See Also:</h3> <a * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/RoutingRule">AWS API * Reference</a></p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Rule.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Rule.h index 649d14ceb3..7613ef3226 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Rule.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Rule.h @@ -35,7 +35,7 @@ namespace Model * Bucket Lifecycle Configuration</a> in the <i>Amazon Simple Storage Service API * Reference</i>. For examples, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html#API_PutBucketLifecycleConfiguration_Examples">Put - * Bucket Lifecycle Configuration Examples</a> </p><p><h3>See Also:</h3> <a + * Bucket Lifecycle Configuration Examples</a>.</p><p><h3>See Also:</h3> <a * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/Rule">AWS API * Reference</a></p> */ @@ -131,49 +131,81 @@ namespace Model /** * <p>Object key prefix that identifies one or more objects to which this rule - * applies.</p> + * applies.</p> <p>Replacement must be made for object keys containing + * special characters (such as carriage returns) when using XML requests. For more + * information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline const Aws::String& GetPrefix() const{ return m_prefix; } /** * <p>Object key prefix that identifies one or more objects to which this rule - * applies.</p> + * applies.</p> <p>Replacement must be made for object keys containing + * special characters (such as carriage returns) when using XML requests. For more + * information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline bool PrefixHasBeenSet() const { return m_prefixHasBeenSet; } /** * <p>Object key prefix that identifies one or more objects to which this rule - * applies.</p> + * applies.</p> <p>Replacement must be made for object keys containing + * special characters (such as carriage returns) when using XML requests. For more + * information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline void SetPrefix(const Aws::String& value) { m_prefixHasBeenSet = true; m_prefix = value; } /** * <p>Object key prefix that identifies one or more objects to which this rule - * applies.</p> + * applies.</p> <p>Replacement must be made for object keys containing + * special characters (such as carriage returns) when using XML requests. For more + * information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline void SetPrefix(Aws::String&& value) { m_prefixHasBeenSet = true; m_prefix = std::move(value); } /** * <p>Object key prefix that identifies one or more objects to which this rule - * applies.</p> + * applies.</p> <p>Replacement must be made for object keys containing + * special characters (such as carriage returns) when using XML requests. For more + * information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline void SetPrefix(const char* value) { m_prefixHasBeenSet = true; m_prefix.assign(value); } /** * <p>Object key prefix that identifies one or more objects to which this rule - * applies.</p> + * applies.</p> <p>Replacement must be made for object keys containing + * special characters (such as carriage returns) when using XML requests. For more + * information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline Rule& WithPrefix(const Aws::String& value) { SetPrefix(value); return *this;} /** * <p>Object key prefix that identifies one or more objects to which this rule - * applies.</p> + * applies.</p> <p>Replacement must be made for object keys containing + * special characters (such as carriage returns) when using XML requests. For more + * information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline Rule& WithPrefix(Aws::String&& value) { SetPrefix(std::move(value)); return *this;} /** * <p>Object key prefix that identifies one or more objects to which this rule - * applies.</p> + * applies.</p> <p>Replacement must be made for object keys containing + * special characters (such as carriage returns) when using XML requests. For more + * information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> + * XML related object key constraints</a>.</p> */ inline Rule& WithPrefix(const char* value) { SetPrefix(value); return *this;} @@ -219,8 +251,7 @@ namespace Model * <p>Specifies when an object transitions to a specified storage class. For more * information about Amazon S3 lifecycle configuration rules, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/lifecycle-transition-general-considerations.html">Transitioning - * Objects Using Amazon S3 Lifecycle</a> in the <i>Amazon Simple Storage Service - * Developer Guide</i>.</p> + * Objects Using Amazon S3 Lifecycle</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline const Transition& GetTransition() const{ return m_transition; } @@ -228,8 +259,7 @@ namespace Model * <p>Specifies when an object transitions to a specified storage class. For more * information about Amazon S3 lifecycle configuration rules, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/lifecycle-transition-general-considerations.html">Transitioning - * Objects Using Amazon S3 Lifecycle</a> in the <i>Amazon Simple Storage Service - * Developer Guide</i>.</p> + * Objects Using Amazon S3 Lifecycle</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline bool TransitionHasBeenSet() const { return m_transitionHasBeenSet; } @@ -237,8 +267,7 @@ namespace Model * <p>Specifies when an object transitions to a specified storage class. For more * information about Amazon S3 lifecycle configuration rules, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/lifecycle-transition-general-considerations.html">Transitioning - * Objects Using Amazon S3 Lifecycle</a> in the <i>Amazon Simple Storage Service - * Developer Guide</i>.</p> + * Objects Using Amazon S3 Lifecycle</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetTransition(const Transition& value) { m_transitionHasBeenSet = true; m_transition = value; } @@ -246,8 +275,7 @@ namespace Model * <p>Specifies when an object transitions to a specified storage class. For more * information about Amazon S3 lifecycle configuration rules, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/lifecycle-transition-general-considerations.html">Transitioning - * Objects Using Amazon S3 Lifecycle</a> in the <i>Amazon Simple Storage Service - * Developer Guide</i>.</p> + * Objects Using Amazon S3 Lifecycle</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetTransition(Transition&& value) { m_transitionHasBeenSet = true; m_transition = std::move(value); } @@ -255,8 +283,7 @@ namespace Model * <p>Specifies when an object transitions to a specified storage class. For more * information about Amazon S3 lifecycle configuration rules, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/lifecycle-transition-general-considerations.html">Transitioning - * Objects Using Amazon S3 Lifecycle</a> in the <i>Amazon Simple Storage Service - * Developer Guide</i>.</p> + * Objects Using Amazon S3 Lifecycle</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline Rule& WithTransition(const Transition& value) { SetTransition(value); return *this;} @@ -264,8 +291,7 @@ namespace Model * <p>Specifies when an object transitions to a specified storage class. For more * information about Amazon S3 lifecycle configuration rules, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/lifecycle-transition-general-considerations.html">Transitioning - * Objects Using Amazon S3 Lifecycle</a> in the <i>Amazon Simple Storage Service - * Developer Guide</i>.</p> + * Objects Using Amazon S3 Lifecycle</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline Rule& WithTransition(Transition&& value) { SetTransition(std::move(value)); return *this;} diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/SelectObjectContentHandler.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/SelectObjectContentHandler.h index 3b04be1d0d..508785ba3b 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/SelectObjectContentHandler.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/SelectObjectContentHandler.h @@ -41,7 +41,7 @@ namespace Model public: SelectObjectContentHandler(); - SelectObjectContentHandler& operator=(const SelectObjectContentHandler& handler) = default; + SelectObjectContentHandler& operator=(const SelectObjectContentHandler&) = default; virtual void OnEvent() override; diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/SelectObjectContentRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/SelectObjectContentRequest.h index c10e515adf..73dc58023f 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/SelectObjectContentRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/SelectObjectContentRequest.h @@ -600,56 +600,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline SelectObjectContentRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline SelectObjectContentRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ServerSideEncryptionRule.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ServerSideEncryptionRule.h index 75505b8a52..0ef3c70cf4 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ServerSideEncryptionRule.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ServerSideEncryptionRule.h @@ -88,7 +88,7 @@ namespace Model * <code>true</code> causes Amazon S3 to use an S3 Bucket Key. By default, S3 * Bucket Key is not enabled.</p> <p>For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-key.html">Amazon S3 - * Bucket Keys</a> in the <i>Amazon Simple Storage Service Developer Guide</i>.</p> + * Bucket Keys</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline bool GetBucketKeyEnabled() const{ return m_bucketKeyEnabled; } @@ -99,7 +99,7 @@ namespace Model * <code>true</code> causes Amazon S3 to use an S3 Bucket Key. By default, S3 * Bucket Key is not enabled.</p> <p>For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-key.html">Amazon S3 - * Bucket Keys</a> in the <i>Amazon Simple Storage Service Developer Guide</i>.</p> + * Bucket Keys</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline bool BucketKeyEnabledHasBeenSet() const { return m_bucketKeyEnabledHasBeenSet; } @@ -110,7 +110,7 @@ namespace Model * <code>true</code> causes Amazon S3 to use an S3 Bucket Key. By default, S3 * Bucket Key is not enabled.</p> <p>For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-key.html">Amazon S3 - * Bucket Keys</a> in the <i>Amazon Simple Storage Service Developer Guide</i>.</p> + * Bucket Keys</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucketKeyEnabled(bool value) { m_bucketKeyEnabledHasBeenSet = true; m_bucketKeyEnabled = value; } @@ -121,7 +121,7 @@ namespace Model * <code>true</code> causes Amazon S3 to use an S3 Bucket Key. By default, S3 * Bucket Key is not enabled.</p> <p>For more information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-key.html">Amazon S3 - * Bucket Keys</a> in the <i>Amazon Simple Storage Service Developer Guide</i>.</p> + * Bucket Keys</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline ServerSideEncryptionRule& WithBucketKeyEnabled(bool value) { SetBucketKeyEnabled(value); return *this;} diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/TopicConfiguration.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/TopicConfiguration.h index 7a4f9d9536..f57be251bb 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/TopicConfiguration.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/TopicConfiguration.h @@ -120,7 +120,7 @@ namespace Model * <p>The Amazon S3 bucket event about which to send notifications. For more * information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html">Supported - * Event Types</a> in the <i>Amazon Simple Storage Service Developer Guide</i>.</p> + * Event Types</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline const Aws::Vector<Event>& GetEvents() const{ return m_events; } @@ -128,7 +128,7 @@ namespace Model * <p>The Amazon S3 bucket event about which to send notifications. For more * information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html">Supported - * Event Types</a> in the <i>Amazon Simple Storage Service Developer Guide</i>.</p> + * Event Types</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline bool EventsHasBeenSet() const { return m_eventsHasBeenSet; } @@ -136,7 +136,7 @@ namespace Model * <p>The Amazon S3 bucket event about which to send notifications. For more * information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html">Supported - * Event Types</a> in the <i>Amazon Simple Storage Service Developer Guide</i>.</p> + * Event Types</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetEvents(const Aws::Vector<Event>& value) { m_eventsHasBeenSet = true; m_events = value; } @@ -144,7 +144,7 @@ namespace Model * <p>The Amazon S3 bucket event about which to send notifications. For more * information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html">Supported - * Event Types</a> in the <i>Amazon Simple Storage Service Developer Guide</i>.</p> + * Event Types</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetEvents(Aws::Vector<Event>&& value) { m_eventsHasBeenSet = true; m_events = std::move(value); } @@ -152,7 +152,7 @@ namespace Model * <p>The Amazon S3 bucket event about which to send notifications. For more * information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html">Supported - * Event Types</a> in the <i>Amazon Simple Storage Service Developer Guide</i>.</p> + * Event Types</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline TopicConfiguration& WithEvents(const Aws::Vector<Event>& value) { SetEvents(value); return *this;} @@ -160,7 +160,7 @@ namespace Model * <p>The Amazon S3 bucket event about which to send notifications. For more * information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html">Supported - * Event Types</a> in the <i>Amazon Simple Storage Service Developer Guide</i>.</p> + * Event Types</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline TopicConfiguration& WithEvents(Aws::Vector<Event>&& value) { SetEvents(std::move(value)); return *this;} @@ -168,7 +168,7 @@ namespace Model * <p>The Amazon S3 bucket event about which to send notifications. For more * information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html">Supported - * Event Types</a> in the <i>Amazon Simple Storage Service Developer Guide</i>.</p> + * Event Types</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline TopicConfiguration& AddEvents(const Event& value) { m_eventsHasBeenSet = true; m_events.push_back(value); return *this; } @@ -176,7 +176,7 @@ namespace Model * <p>The Amazon S3 bucket event about which to send notifications. For more * information, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html">Supported - * Event Types</a> in the <i>Amazon Simple Storage Service Developer Guide</i>.</p> + * Event Types</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline TopicConfiguration& AddEvents(Event&& value) { m_eventsHasBeenSet = true; m_events.push_back(std::move(value)); return *this; } diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Transition.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Transition.h index 153b1e6e15..bc7a534e8b 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Transition.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Transition.h @@ -27,8 +27,8 @@ namespace Model * <p>Specifies when an object transitions to a specified storage class. For more * information about Amazon S3 lifecycle configuration rules, see <a * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/lifecycle-transition-general-considerations.html">Transitioning - * Objects Using Amazon S3 Lifecycle</a> in the <i>Amazon Simple Storage Service - * Developer Guide</i>.</p><p><h3>See Also:</h3> <a + * Objects Using Amazon S3 Lifecycle</a> in the <i>Amazon S3 User + * Guide</i>.</p><p><h3>See Also:</h3> <a * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/Transition">AWS API * Reference</a></p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/UploadPartCopyRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/UploadPartCopyRequest.h index def68dbeaa..015c869675 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/UploadPartCopyRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/UploadPartCopyRequest.h @@ -44,186 +44,170 @@ namespace Model /** - * <p>The bucket name.</p> <p>When using this API with an access point, you must + * <p>The bucket name.</p> <p>When using this action with an access point, you must * direct requests to the access point hostname. The access point hostname takes * the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline const Aws::String& GetBucket() const{ return m_bucket; } /** - * <p>The bucket name.</p> <p>When using this API with an access point, you must + * <p>The bucket name.</p> <p>When using this action with an access point, you must * direct requests to the access point hostname. The access point hostname takes * the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; } /** - * <p>The bucket name.</p> <p>When using this API with an access point, you must + * <p>The bucket name.</p> <p>When using this action with an access point, you must * direct requests to the access point hostname. The access point hostname takes * the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; } /** - * <p>The bucket name.</p> <p>When using this API with an access point, you must + * <p>The bucket name.</p> <p>When using this action with an access point, you must * direct requests to the access point hostname. The access point hostname takes * the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); } /** - * <p>The bucket name.</p> <p>When using this API with an access point, you must + * <p>The bucket name.</p> <p>When using this action with an access point, you must * direct requests to the access point hostname. The access point hostname takes * the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); } /** - * <p>The bucket name.</p> <p>When using this API with an access point, you must + * <p>The bucket name.</p> <p>When using this action with an access point, you must * direct requests to the access point hostname. The access point hostname takes * the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline UploadPartCopyRequest& WithBucket(const Aws::String& value) { SetBucket(value); return *this;} /** - * <p>The bucket name.</p> <p>When using this API with an access point, you must + * <p>The bucket name.</p> <p>When using this action with an access point, you must * direct requests to the access point hostname. The access point hostname takes * the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline UploadPartCopyRequest& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;} /** - * <p>The bucket name.</p> <p>When using this API with an access point, you must + * <p>The bucket name.</p> <p>When using this action with an access point, you must * direct requests to the access point hostname. The access point hostname takes * the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline UploadPartCopyRequest& WithBucket(const char* value) { SetBucket(value); return *this;} @@ -232,7 +216,7 @@ namespace Model * <p>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 <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/access-points.html">access + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-points.html">access * point</a>:</p> <ul> <li> <p>For objects not accessed through an access point, * specify the name of the source bucket and key of the source object, separated by * a slash (/). For example, to copy the object <code>reports/january.pdf</code> @@ -268,7 +252,7 @@ namespace Model * <p>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 <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/access-points.html">access + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-points.html">access * point</a>:</p> <ul> <li> <p>For objects not accessed through an access point, * specify the name of the source bucket and key of the source object, separated by * a slash (/). For example, to copy the object <code>reports/january.pdf</code> @@ -304,7 +288,7 @@ namespace Model * <p>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 <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/access-points.html">access + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-points.html">access * point</a>:</p> <ul> <li> <p>For objects not accessed through an access point, * specify the name of the source bucket and key of the source object, separated by * a slash (/). For example, to copy the object <code>reports/january.pdf</code> @@ -340,7 +324,7 @@ namespace Model * <p>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 <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/access-points.html">access + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-points.html">access * point</a>:</p> <ul> <li> <p>For objects not accessed through an access point, * specify the name of the source bucket and key of the source object, separated by * a slash (/). For example, to copy the object <code>reports/january.pdf</code> @@ -376,7 +360,7 @@ namespace Model * <p>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 <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/access-points.html">access + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-points.html">access * point</a>:</p> <ul> <li> <p>For objects not accessed through an access point, * specify the name of the source bucket and key of the source object, separated by * a slash (/). For example, to copy the object <code>reports/january.pdf</code> @@ -412,7 +396,7 @@ namespace Model * <p>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 <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/access-points.html">access + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-points.html">access * point</a>:</p> <ul> <li> <p>For objects not accessed through an access point, * specify the name of the source bucket and key of the source object, separated by * a slash (/). For example, to copy the object <code>reports/january.pdf</code> @@ -448,7 +432,7 @@ namespace Model * <p>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 <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/access-points.html">access + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-points.html">access * point</a>:</p> <ul> <li> <p>For objects not accessed through an access point, * specify the name of the source bucket and key of the source object, separated by * a slash (/). For example, to copy the object <code>reports/january.pdf</code> @@ -484,7 +468,7 @@ namespace Model * <p>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 <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/access-points.html">access + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-points.html">access * point</a>:</p> <ul> <li> <p>For objects not accessed through an access point, * specify the name of the source bucket and key of the source object, separated by * a slash (/). For example, to copy the object <code>reports/january.pdf</code> @@ -1227,56 +1211,56 @@ namespace Model /** - * <p>The account id of the expected destination bucket owner. If the destination + * <p>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 * <code>403 (Access Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected destination bucket owner. If the destination + * <p>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 * <code>403 (Access Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected destination bucket owner. If the destination + * <p>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 * <code>403 (Access Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected destination bucket owner. If the destination + * <p>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 * <code>403 (Access Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected destination bucket owner. If the destination + * <p>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 * <code>403 (Access Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected destination bucket owner. If the destination + * <p>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 * <code>403 (Access Denied)</code> error.</p> */ inline UploadPartCopyRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected destination bucket owner. If the destination + * <p>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 * <code>403 (Access Denied)</code> error.</p> */ inline UploadPartCopyRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected destination bucket owner. If the destination + * <p>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 * <code>403 (Access Denied)</code> error.</p> */ @@ -1284,56 +1268,56 @@ namespace Model /** - * <p>The account id of the expected source bucket owner. If the source bucket is + * <p>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 <code>403 * (Access Denied)</code> error.</p> */ inline const Aws::String& GetExpectedSourceBucketOwner() const{ return m_expectedSourceBucketOwner; } /** - * <p>The account id of the expected source bucket owner. If the source bucket is + * <p>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 <code>403 * (Access Denied)</code> error.</p> */ inline bool ExpectedSourceBucketOwnerHasBeenSet() const { return m_expectedSourceBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected source bucket owner. If the source bucket is + * <p>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 <code>403 * (Access Denied)</code> error.</p> */ inline void SetExpectedSourceBucketOwner(const Aws::String& value) { m_expectedSourceBucketOwnerHasBeenSet = true; m_expectedSourceBucketOwner = value; } /** - * <p>The account id of the expected source bucket owner. If the source bucket is + * <p>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 <code>403 * (Access Denied)</code> error.</p> */ inline void SetExpectedSourceBucketOwner(Aws::String&& value) { m_expectedSourceBucketOwnerHasBeenSet = true; m_expectedSourceBucketOwner = std::move(value); } /** - * <p>The account id of the expected source bucket owner. If the source bucket is + * <p>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 <code>403 * (Access Denied)</code> error.</p> */ inline void SetExpectedSourceBucketOwner(const char* value) { m_expectedSourceBucketOwnerHasBeenSet = true; m_expectedSourceBucketOwner.assign(value); } /** - * <p>The account id of the expected source bucket owner. If the source bucket is + * <p>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 <code>403 * (Access Denied)</code> error.</p> */ inline UploadPartCopyRequest& WithExpectedSourceBucketOwner(const Aws::String& value) { SetExpectedSourceBucketOwner(value); return *this;} /** - * <p>The account id of the expected source bucket owner. If the source bucket is + * <p>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 <code>403 * (Access Denied)</code> error.</p> */ inline UploadPartCopyRequest& WithExpectedSourceBucketOwner(Aws::String&& value) { SetExpectedSourceBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected source bucket owner. If the source bucket is + * <p>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 <code>403 * (Access Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/UploadPartRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/UploadPartRequest.h index ecdba22f40..49060c0d65 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/UploadPartRequest.h +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/UploadPartRequest.h @@ -43,185 +43,169 @@ namespace Model /** * <p>The name of the bucket to which the multipart upload was initiated.</p> - * <p>When using this API with an access point, you must direct requests to the + * <p>When using this action with an access point, you must direct requests to the * access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline const Aws::String& GetBucket() const{ return m_bucket; } /** * <p>The name of the bucket to which the multipart upload was initiated.</p> - * <p>When using this API with an access point, you must direct requests to the + * <p>When using this action with an access point, you must direct requests to the * access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; } /** * <p>The name of the bucket to which the multipart upload was initiated.</p> - * <p>When using this API with an access point, you must direct requests to the + * <p>When using this action with an access point, you must direct requests to the * access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; } /** * <p>The name of the bucket to which the multipart upload was initiated.</p> - * <p>When using this API with an access point, you must direct requests to the + * <p>When using this action with an access point, you must direct requests to the * access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); } /** * <p>The name of the bucket to which the multipart upload was initiated.</p> - * <p>When using this API with an access point, you must direct requests to the + * <p>When using this action with an access point, you must direct requests to the * access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); } /** * <p>The name of the bucket to which the multipart upload was initiated.</p> - * <p>When using this API with an access point, you must direct requests to the + * <p>When using this action with an access point, you must direct requests to the * access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline UploadPartRequest& WithBucket(const Aws::String& value) { SetBucket(value); return *this;} /** * <p>The name of the bucket to which the multipart upload was initiated.</p> - * <p>When using this API with an access point, you must direct requests to the + * <p>When using this action with an access point, you must direct requests to the * access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline UploadPartRequest& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;} /** * <p>The name of the bucket to which the multipart upload was initiated.</p> - * <p>When using this API with an access point, you must direct requests to the + * <p>When using this action with an access point, you must direct requests to the * access point hostname. The access point hostname takes the form * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. - * When using this operation with an access point through the AWS SDKs, you provide + * When using this action with an access point through the AWS SDKs, you provide * the access point ARN in place of the bucket name. For more information about * access point ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html">Using - * Access Points</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> <p>When using this API with Amazon S3 on Outposts, you must - * direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname - * takes the form + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using + * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>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 * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com. - * When using this operation using S3 on Outposts through the AWS SDKs, you provide + * When using this action using S3 on Outposts through the AWS SDKs, you provide * the Outposts bucket ARN in place of the bucket name. For more information about * S3 on Outposts ARNs, see <a - * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html">Using - * S3 on Outposts</a> in the <i>Amazon Simple Storage Service Developer - * Guide</i>.</p> + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using + * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p> */ inline UploadPartRequest& WithBucket(const char* value) { SetBucket(value); return *this;} @@ -630,56 +614,56 @@ namespace Model /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); } /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline UploadPartRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ inline UploadPartRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;} /** - * <p>The account id of the expected bucket owner. If the bucket is owned by a + * <p>The account ID of the expected bucket owner. If the bucket is owned by a * different account, the request will fail with an HTTP <code>403 (Access * Denied)</code> error.</p> */ diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/WriteGetObjectResponseRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/WriteGetObjectResponseRequest.h new file mode 100644 index 0000000000..59f0a57d80 --- /dev/null +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/WriteGetObjectResponseRequest.h @@ -0,0 +1,1661 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include <aws/s3/S3_EXPORTS.h> +#include <aws/s3/S3Request.h> +#include <aws/core/utils/memory/stl/AWSString.h> +#include <aws/core/utils/Array.h> +#include <aws/core/utils/DateTime.h> +#include <aws/core/utils/memory/stl/AWSMap.h> +#include <aws/s3/model/ObjectLockMode.h> +#include <aws/s3/model/ObjectLockLegalHoldStatus.h> +#include <aws/s3/model/ReplicationStatus.h> +#include <aws/s3/model/RequestCharged.h> +#include <aws/s3/model/ServerSideEncryption.h> +#include <aws/s3/model/StorageClass.h> +#include <utility> + +namespace Aws +{ +namespace Http +{ + class URI; +} //namespace Http +namespace S3 +{ +namespace Model +{ + + /** + */ + class AWS_S3_API WriteGetObjectResponseRequest : public StreamingS3Request + { + public: + WriteGetObjectResponseRequest(); + + // Service request name is the Operation name which will send this request out, + // each operation should has unique request name, so that we can get operation's name from this request. + // Note: this is not true for response, multiple operations may have the same response name, + // so we can not get operation's name from response. + inline virtual const char* GetServiceRequestName() const override { return "WriteGetObjectResponse"; } + + void AddQueryStringParameters(Aws::Http::URI& uri) const override; + + Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; + + bool SignBody() const override { return false; } + + bool IsChunked() const override { return true; } + + + /** + * <p>Route prefix to the HTTP URL generated.</p> + */ + inline const Aws::String& GetRequestRoute() const{ return m_requestRoute; } + + /** + * <p>Route prefix to the HTTP URL generated.</p> + */ + inline bool RequestRouteHasBeenSet() const { return m_requestRouteHasBeenSet; } + + /** + * <p>Route prefix to the HTTP URL generated.</p> + */ + inline void SetRequestRoute(const Aws::String& value) { m_requestRouteHasBeenSet = true; m_requestRoute = value; } + + /** + * <p>Route prefix to the HTTP URL generated.</p> + */ + inline void SetRequestRoute(Aws::String&& value) { m_requestRouteHasBeenSet = true; m_requestRoute = std::move(value); } + + /** + * <p>Route prefix to the HTTP URL generated.</p> + */ + inline void SetRequestRoute(const char* value) { m_requestRouteHasBeenSet = true; m_requestRoute.assign(value); } + + /** + * <p>Route prefix to the HTTP URL generated.</p> + */ + inline WriteGetObjectResponseRequest& WithRequestRoute(const Aws::String& value) { SetRequestRoute(value); return *this;} + + /** + * <p>Route prefix to the HTTP URL generated.</p> + */ + inline WriteGetObjectResponseRequest& WithRequestRoute(Aws::String&& value) { SetRequestRoute(std::move(value)); return *this;} + + /** + * <p>Route prefix to the HTTP URL generated.</p> + */ + inline WriteGetObjectResponseRequest& WithRequestRoute(const char* value) { SetRequestRoute(value); return *this;} + + + /** + * <p>A single use encrypted token that maps <code>WriteGetObjectResponse</code> to + * the end user <code>GetObject</code> request.</p> + */ + inline const Aws::String& GetRequestToken() const{ return m_requestToken; } + + /** + * <p>A single use encrypted token that maps <code>WriteGetObjectResponse</code> to + * the end user <code>GetObject</code> request.</p> + */ + inline bool RequestTokenHasBeenSet() const { return m_requestTokenHasBeenSet; } + + /** + * <p>A single use encrypted token that maps <code>WriteGetObjectResponse</code> to + * the end user <code>GetObject</code> request.</p> + */ + inline void SetRequestToken(const Aws::String& value) { m_requestTokenHasBeenSet = true; m_requestToken = value; } + + /** + * <p>A single use encrypted token that maps <code>WriteGetObjectResponse</code> to + * the end user <code>GetObject</code> request.</p> + */ + inline void SetRequestToken(Aws::String&& value) { m_requestTokenHasBeenSet = true; m_requestToken = std::move(value); } + + /** + * <p>A single use encrypted token that maps <code>WriteGetObjectResponse</code> to + * the end user <code>GetObject</code> request.</p> + */ + inline void SetRequestToken(const char* value) { m_requestTokenHasBeenSet = true; m_requestToken.assign(value); } + + /** + * <p>A single use encrypted token that maps <code>WriteGetObjectResponse</code> to + * the end user <code>GetObject</code> request.</p> + */ + inline WriteGetObjectResponseRequest& WithRequestToken(const Aws::String& value) { SetRequestToken(value); return *this;} + + /** + * <p>A single use encrypted token that maps <code>WriteGetObjectResponse</code> to + * the end user <code>GetObject</code> request.</p> + */ + inline WriteGetObjectResponseRequest& WithRequestToken(Aws::String&& value) { SetRequestToken(std::move(value)); return *this;} + + /** + * <p>A single use encrypted token that maps <code>WriteGetObjectResponse</code> to + * the end user <code>GetObject</code> request.</p> + */ + inline WriteGetObjectResponseRequest& WithRequestToken(const char* value) { SetRequestToken(value); return *this;} + + + /** + * <p>The integer status code for an HTTP response of a corresponding + * <code>GetObject</code> request.</p> <p class="title"> <b>Status Codes</b> </p> + * <ul> <li> <p> <i>200 - OK</i> </p> </li> <li> <p> <i>206 - Partial Content</i> + * </p> </li> <li> <p> <i>304 - Not Modified</i> </p> </li> <li> <p> <i>400 - Bad + * Request</i> </p> </li> <li> <p> <i>401 - Unauthorized</i> </p> </li> <li> <p> + * <i>403 - Forbidden</i> </p> </li> <li> <p> <i>404 - Not Found</i> </p> </li> + * <li> <p> <i>405 - Method Not Allowed</i> </p> </li> <li> <p> <i>409 - + * Conflict</i> </p> </li> <li> <p> <i>411 - Length Required</i> </p> </li> <li> + * <p> <i>412 - Precondition Failed</i> </p> </li> <li> <p> <i>416 - Range Not + * Satisfiable</i> </p> </li> <li> <p> <i>500 - Internal Server Error</i> </p> + * </li> <li> <p> <i>503 - Service Unavailable</i> </p> </li> </ul> + */ + inline int GetStatusCode() const{ return m_statusCode; } + + /** + * <p>The integer status code for an HTTP response of a corresponding + * <code>GetObject</code> request.</p> <p class="title"> <b>Status Codes</b> </p> + * <ul> <li> <p> <i>200 - OK</i> </p> </li> <li> <p> <i>206 - Partial Content</i> + * </p> </li> <li> <p> <i>304 - Not Modified</i> </p> </li> <li> <p> <i>400 - Bad + * Request</i> </p> </li> <li> <p> <i>401 - Unauthorized</i> </p> </li> <li> <p> + * <i>403 - Forbidden</i> </p> </li> <li> <p> <i>404 - Not Found</i> </p> </li> + * <li> <p> <i>405 - Method Not Allowed</i> </p> </li> <li> <p> <i>409 - + * Conflict</i> </p> </li> <li> <p> <i>411 - Length Required</i> </p> </li> <li> + * <p> <i>412 - Precondition Failed</i> </p> </li> <li> <p> <i>416 - Range Not + * Satisfiable</i> </p> </li> <li> <p> <i>500 - Internal Server Error</i> </p> + * </li> <li> <p> <i>503 - Service Unavailable</i> </p> </li> </ul> + */ + inline bool StatusCodeHasBeenSet() const { return m_statusCodeHasBeenSet; } + + /** + * <p>The integer status code for an HTTP response of a corresponding + * <code>GetObject</code> request.</p> <p class="title"> <b>Status Codes</b> </p> + * <ul> <li> <p> <i>200 - OK</i> </p> </li> <li> <p> <i>206 - Partial Content</i> + * </p> </li> <li> <p> <i>304 - Not Modified</i> </p> </li> <li> <p> <i>400 - Bad + * Request</i> </p> </li> <li> <p> <i>401 - Unauthorized</i> </p> </li> <li> <p> + * <i>403 - Forbidden</i> </p> </li> <li> <p> <i>404 - Not Found</i> </p> </li> + * <li> <p> <i>405 - Method Not Allowed</i> </p> </li> <li> <p> <i>409 - + * Conflict</i> </p> </li> <li> <p> <i>411 - Length Required</i> </p> </li> <li> + * <p> <i>412 - Precondition Failed</i> </p> </li> <li> <p> <i>416 - Range Not + * Satisfiable</i> </p> </li> <li> <p> <i>500 - Internal Server Error</i> </p> + * </li> <li> <p> <i>503 - Service Unavailable</i> </p> </li> </ul> + */ + inline void SetStatusCode(int value) { m_statusCodeHasBeenSet = true; m_statusCode = value; } + + /** + * <p>The integer status code for an HTTP response of a corresponding + * <code>GetObject</code> request.</p> <p class="title"> <b>Status Codes</b> </p> + * <ul> <li> <p> <i>200 - OK</i> </p> </li> <li> <p> <i>206 - Partial Content</i> + * </p> </li> <li> <p> <i>304 - Not Modified</i> </p> </li> <li> <p> <i>400 - Bad + * Request</i> </p> </li> <li> <p> <i>401 - Unauthorized</i> </p> </li> <li> <p> + * <i>403 - Forbidden</i> </p> </li> <li> <p> <i>404 - Not Found</i> </p> </li> + * <li> <p> <i>405 - Method Not Allowed</i> </p> </li> <li> <p> <i>409 - + * Conflict</i> </p> </li> <li> <p> <i>411 - Length Required</i> </p> </li> <li> + * <p> <i>412 - Precondition Failed</i> </p> </li> <li> <p> <i>416 - Range Not + * Satisfiable</i> </p> </li> <li> <p> <i>500 - Internal Server Error</i> </p> + * </li> <li> <p> <i>503 - Service Unavailable</i> </p> </li> </ul> + */ + inline WriteGetObjectResponseRequest& WithStatusCode(int value) { SetStatusCode(value); return *this;} + + + /** + * <p>A string that uniquely identifies an error condition. Returned in the + * <Code> tag of the error XML response for a corresponding + * <code>GetObject</code> call. Cannot be used with a successful + * <code>StatusCode</code> header or when the transformed object is provided in the + * body. All error codes from S3 are sentence-cased. Regex value is + * "^[A-Z][a-zA-Z]+$".</p> + */ + inline const Aws::String& GetErrorCode() const{ return m_errorCode; } + + /** + * <p>A string that uniquely identifies an error condition. Returned in the + * <Code> tag of the error XML response for a corresponding + * <code>GetObject</code> call. Cannot be used with a successful + * <code>StatusCode</code> header or when the transformed object is provided in the + * body. All error codes from S3 are sentence-cased. Regex value is + * "^[A-Z][a-zA-Z]+$".</p> + */ + inline bool ErrorCodeHasBeenSet() const { return m_errorCodeHasBeenSet; } + + /** + * <p>A string that uniquely identifies an error condition. Returned in the + * <Code> tag of the error XML response for a corresponding + * <code>GetObject</code> call. Cannot be used with a successful + * <code>StatusCode</code> header or when the transformed object is provided in the + * body. All error codes from S3 are sentence-cased. Regex value is + * "^[A-Z][a-zA-Z]+$".</p> + */ + inline void SetErrorCode(const Aws::String& value) { m_errorCodeHasBeenSet = true; m_errorCode = value; } + + /** + * <p>A string that uniquely identifies an error condition. Returned in the + * <Code> tag of the error XML response for a corresponding + * <code>GetObject</code> call. Cannot be used with a successful + * <code>StatusCode</code> header or when the transformed object is provided in the + * body. All error codes from S3 are sentence-cased. Regex value is + * "^[A-Z][a-zA-Z]+$".</p> + */ + inline void SetErrorCode(Aws::String&& value) { m_errorCodeHasBeenSet = true; m_errorCode = std::move(value); } + + /** + * <p>A string that uniquely identifies an error condition. Returned in the + * <Code> tag of the error XML response for a corresponding + * <code>GetObject</code> call. Cannot be used with a successful + * <code>StatusCode</code> header or when the transformed object is provided in the + * body. All error codes from S3 are sentence-cased. Regex value is + * "^[A-Z][a-zA-Z]+$".</p> + */ + inline void SetErrorCode(const char* value) { m_errorCodeHasBeenSet = true; m_errorCode.assign(value); } + + /** + * <p>A string that uniquely identifies an error condition. Returned in the + * <Code> tag of the error XML response for a corresponding + * <code>GetObject</code> call. Cannot be used with a successful + * <code>StatusCode</code> header or when the transformed object is provided in the + * body. All error codes from S3 are sentence-cased. Regex value is + * "^[A-Z][a-zA-Z]+$".</p> + */ + inline WriteGetObjectResponseRequest& WithErrorCode(const Aws::String& value) { SetErrorCode(value); return *this;} + + /** + * <p>A string that uniquely identifies an error condition. Returned in the + * <Code> tag of the error XML response for a corresponding + * <code>GetObject</code> call. Cannot be used with a successful + * <code>StatusCode</code> header or when the transformed object is provided in the + * body. All error codes from S3 are sentence-cased. Regex value is + * "^[A-Z][a-zA-Z]+$".</p> + */ + inline WriteGetObjectResponseRequest& WithErrorCode(Aws::String&& value) { SetErrorCode(std::move(value)); return *this;} + + /** + * <p>A string that uniquely identifies an error condition. Returned in the + * <Code> tag of the error XML response for a corresponding + * <code>GetObject</code> call. Cannot be used with a successful + * <code>StatusCode</code> header or when the transformed object is provided in the + * body. All error codes from S3 are sentence-cased. Regex value is + * "^[A-Z][a-zA-Z]+$".</p> + */ + inline WriteGetObjectResponseRequest& WithErrorCode(const char* value) { SetErrorCode(value); return *this;} + + + /** + * <p>Contains a generic description of the error condition. Returned in the + * <Message> tag of the error XML response for a corresponding + * <code>GetObject</code> call. Cannot be used with a successful + * <code>StatusCode</code> header or when the transformed object is provided in + * body.</p> + */ + inline const Aws::String& GetErrorMessage() const{ return m_errorMessage; } + + /** + * <p>Contains a generic description of the error condition. Returned in the + * <Message> tag of the error XML response for a corresponding + * <code>GetObject</code> call. Cannot be used with a successful + * <code>StatusCode</code> header or when the transformed object is provided in + * body.</p> + */ + inline bool ErrorMessageHasBeenSet() const { return m_errorMessageHasBeenSet; } + + /** + * <p>Contains a generic description of the error condition. Returned in the + * <Message> tag of the error XML response for a corresponding + * <code>GetObject</code> call. Cannot be used with a successful + * <code>StatusCode</code> header or when the transformed object is provided in + * body.</p> + */ + inline void SetErrorMessage(const Aws::String& value) { m_errorMessageHasBeenSet = true; m_errorMessage = value; } + + /** + * <p>Contains a generic description of the error condition. Returned in the + * <Message> tag of the error XML response for a corresponding + * <code>GetObject</code> call. Cannot be used with a successful + * <code>StatusCode</code> header or when the transformed object is provided in + * body.</p> + */ + inline void SetErrorMessage(Aws::String&& value) { m_errorMessageHasBeenSet = true; m_errorMessage = std::move(value); } + + /** + * <p>Contains a generic description of the error condition. Returned in the + * <Message> tag of the error XML response for a corresponding + * <code>GetObject</code> call. Cannot be used with a successful + * <code>StatusCode</code> header or when the transformed object is provided in + * body.</p> + */ + inline void SetErrorMessage(const char* value) { m_errorMessageHasBeenSet = true; m_errorMessage.assign(value); } + + /** + * <p>Contains a generic description of the error condition. Returned in the + * <Message> tag of the error XML response for a corresponding + * <code>GetObject</code> call. Cannot be used with a successful + * <code>StatusCode</code> header or when the transformed object is provided in + * body.</p> + */ + inline WriteGetObjectResponseRequest& WithErrorMessage(const Aws::String& value) { SetErrorMessage(value); return *this;} + + /** + * <p>Contains a generic description of the error condition. Returned in the + * <Message> tag of the error XML response for a corresponding + * <code>GetObject</code> call. Cannot be used with a successful + * <code>StatusCode</code> header or when the transformed object is provided in + * body.</p> + */ + inline WriteGetObjectResponseRequest& WithErrorMessage(Aws::String&& value) { SetErrorMessage(std::move(value)); return *this;} + + /** + * <p>Contains a generic description of the error condition. Returned in the + * <Message> tag of the error XML response for a corresponding + * <code>GetObject</code> call. Cannot be used with a successful + * <code>StatusCode</code> header or when the transformed object is provided in + * body.</p> + */ + inline WriteGetObjectResponseRequest& WithErrorMessage(const char* value) { SetErrorMessage(value); return *this;} + + + /** + * <p>Indicates that a range of bytes was specified.</p> + */ + inline const Aws::String& GetAcceptRanges() const{ return m_acceptRanges; } + + /** + * <p>Indicates that a range of bytes was specified.</p> + */ + inline bool AcceptRangesHasBeenSet() const { return m_acceptRangesHasBeenSet; } + + /** + * <p>Indicates that a range of bytes was specified.</p> + */ + inline void SetAcceptRanges(const Aws::String& value) { m_acceptRangesHasBeenSet = true; m_acceptRanges = value; } + + /** + * <p>Indicates that a range of bytes was specified.</p> + */ + inline void SetAcceptRanges(Aws::String&& value) { m_acceptRangesHasBeenSet = true; m_acceptRanges = std::move(value); } + + /** + * <p>Indicates that a range of bytes was specified.</p> + */ + inline void SetAcceptRanges(const char* value) { m_acceptRangesHasBeenSet = true; m_acceptRanges.assign(value); } + + /** + * <p>Indicates that a range of bytes was specified.</p> + */ + inline WriteGetObjectResponseRequest& WithAcceptRanges(const Aws::String& value) { SetAcceptRanges(value); return *this;} + + /** + * <p>Indicates that a range of bytes was specified.</p> + */ + inline WriteGetObjectResponseRequest& WithAcceptRanges(Aws::String&& value) { SetAcceptRanges(std::move(value)); return *this;} + + /** + * <p>Indicates that a range of bytes was specified.</p> + */ + inline WriteGetObjectResponseRequest& WithAcceptRanges(const char* value) { SetAcceptRanges(value); return *this;} + + + /** + * <p>Specifies caching behavior along the request/reply chain.</p> + */ + inline const Aws::String& GetCacheControl() const{ return m_cacheControl; } + + /** + * <p>Specifies caching behavior along the request/reply chain.</p> + */ + inline bool CacheControlHasBeenSet() const { return m_cacheControlHasBeenSet; } + + /** + * <p>Specifies caching behavior along the request/reply chain.</p> + */ + inline void SetCacheControl(const Aws::String& value) { m_cacheControlHasBeenSet = true; m_cacheControl = value; } + + /** + * <p>Specifies caching behavior along the request/reply chain.</p> + */ + inline void SetCacheControl(Aws::String&& value) { m_cacheControlHasBeenSet = true; m_cacheControl = std::move(value); } + + /** + * <p>Specifies caching behavior along the request/reply chain.</p> + */ + inline void SetCacheControl(const char* value) { m_cacheControlHasBeenSet = true; m_cacheControl.assign(value); } + + /** + * <p>Specifies caching behavior along the request/reply chain.</p> + */ + inline WriteGetObjectResponseRequest& WithCacheControl(const Aws::String& value) { SetCacheControl(value); return *this;} + + /** + * <p>Specifies caching behavior along the request/reply chain.</p> + */ + inline WriteGetObjectResponseRequest& WithCacheControl(Aws::String&& value) { SetCacheControl(std::move(value)); return *this;} + + /** + * <p>Specifies caching behavior along the request/reply chain.</p> + */ + inline WriteGetObjectResponseRequest& WithCacheControl(const char* value) { SetCacheControl(value); return *this;} + + + /** + * <p>Specifies presentational information for the object.</p> + */ + inline const Aws::String& GetContentDisposition() const{ return m_contentDisposition; } + + /** + * <p>Specifies presentational information for the object.</p> + */ + inline bool ContentDispositionHasBeenSet() const { return m_contentDispositionHasBeenSet; } + + /** + * <p>Specifies presentational information for the object.</p> + */ + inline void SetContentDisposition(const Aws::String& value) { m_contentDispositionHasBeenSet = true; m_contentDisposition = value; } + + /** + * <p>Specifies presentational information for the object.</p> + */ + inline void SetContentDisposition(Aws::String&& value) { m_contentDispositionHasBeenSet = true; m_contentDisposition = std::move(value); } + + /** + * <p>Specifies presentational information for the object.</p> + */ + inline void SetContentDisposition(const char* value) { m_contentDispositionHasBeenSet = true; m_contentDisposition.assign(value); } + + /** + * <p>Specifies presentational information for the object.</p> + */ + inline WriteGetObjectResponseRequest& WithContentDisposition(const Aws::String& value) { SetContentDisposition(value); return *this;} + + /** + * <p>Specifies presentational information for the object.</p> + */ + inline WriteGetObjectResponseRequest& WithContentDisposition(Aws::String&& value) { SetContentDisposition(std::move(value)); return *this;} + + /** + * <p>Specifies presentational information for the object.</p> + */ + inline WriteGetObjectResponseRequest& WithContentDisposition(const char* value) { SetContentDisposition(value); return *this;} + + + /** + * <p>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.</p> + */ + inline const Aws::String& GetContentEncoding() const{ return m_contentEncoding; } + + /** + * <p>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.</p> + */ + inline bool ContentEncodingHasBeenSet() const { return m_contentEncodingHasBeenSet; } + + /** + * <p>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.</p> + */ + inline void SetContentEncoding(const Aws::String& value) { m_contentEncodingHasBeenSet = true; m_contentEncoding = value; } + + /** + * <p>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.</p> + */ + inline void SetContentEncoding(Aws::String&& value) { m_contentEncodingHasBeenSet = true; m_contentEncoding = std::move(value); } + + /** + * <p>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.</p> + */ + inline void SetContentEncoding(const char* value) { m_contentEncodingHasBeenSet = true; m_contentEncoding.assign(value); } + + /** + * <p>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.</p> + */ + inline WriteGetObjectResponseRequest& WithContentEncoding(const Aws::String& value) { SetContentEncoding(value); return *this;} + + /** + * <p>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.</p> + */ + inline WriteGetObjectResponseRequest& WithContentEncoding(Aws::String&& value) { SetContentEncoding(std::move(value)); return *this;} + + /** + * <p>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.</p> + */ + inline WriteGetObjectResponseRequest& WithContentEncoding(const char* value) { SetContentEncoding(value); return *this;} + + + /** + * <p>The language the content is in.</p> + */ + inline const Aws::String& GetContentLanguage() const{ return m_contentLanguage; } + + /** + * <p>The language the content is in.</p> + */ + inline bool ContentLanguageHasBeenSet() const { return m_contentLanguageHasBeenSet; } + + /** + * <p>The language the content is in.</p> + */ + inline void SetContentLanguage(const Aws::String& value) { m_contentLanguageHasBeenSet = true; m_contentLanguage = value; } + + /** + * <p>The language the content is in.</p> + */ + inline void SetContentLanguage(Aws::String&& value) { m_contentLanguageHasBeenSet = true; m_contentLanguage = std::move(value); } + + /** + * <p>The language the content is in.</p> + */ + inline void SetContentLanguage(const char* value) { m_contentLanguageHasBeenSet = true; m_contentLanguage.assign(value); } + + /** + * <p>The language the content is in.</p> + */ + inline WriteGetObjectResponseRequest& WithContentLanguage(const Aws::String& value) { SetContentLanguage(value); return *this;} + + /** + * <p>The language the content is in.</p> + */ + inline WriteGetObjectResponseRequest& WithContentLanguage(Aws::String&& value) { SetContentLanguage(std::move(value)); return *this;} + + /** + * <p>The language the content is in.</p> + */ + inline WriteGetObjectResponseRequest& WithContentLanguage(const char* value) { SetContentLanguage(value); return *this;} + + + /** + * <p>The size of the content body in bytes.</p> + */ + inline long long GetContentLength() const{ return m_contentLength; } + + /** + * <p>The size of the content body in bytes.</p> + */ + inline bool ContentLengthHasBeenSet() const { return m_contentLengthHasBeenSet; } + + /** + * <p>The size of the content body in bytes.</p> + */ + inline void SetContentLength(long long value) { m_contentLengthHasBeenSet = true; m_contentLength = value; } + + /** + * <p>The size of the content body in bytes.</p> + */ + inline WriteGetObjectResponseRequest& WithContentLength(long long value) { SetContentLength(value); return *this;} + + + /** + * <p>The portion of the object returned in the response.</p> + */ + inline const Aws::String& GetContentRange() const{ return m_contentRange; } + + /** + * <p>The portion of the object returned in the response.</p> + */ + inline bool ContentRangeHasBeenSet() const { return m_contentRangeHasBeenSet; } + + /** + * <p>The portion of the object returned in the response.</p> + */ + inline void SetContentRange(const Aws::String& value) { m_contentRangeHasBeenSet = true; m_contentRange = value; } + + /** + * <p>The portion of the object returned in the response.</p> + */ + inline void SetContentRange(Aws::String&& value) { m_contentRangeHasBeenSet = true; m_contentRange = std::move(value); } + + /** + * <p>The portion of the object returned in the response.</p> + */ + inline void SetContentRange(const char* value) { m_contentRangeHasBeenSet = true; m_contentRange.assign(value); } + + /** + * <p>The portion of the object returned in the response.</p> + */ + inline WriteGetObjectResponseRequest& WithContentRange(const Aws::String& value) { SetContentRange(value); return *this;} + + /** + * <p>The portion of the object returned in the response.</p> + */ + inline WriteGetObjectResponseRequest& WithContentRange(Aws::String&& value) { SetContentRange(std::move(value)); return *this;} + + /** + * <p>The portion of the object returned in the response.</p> + */ + inline WriteGetObjectResponseRequest& WithContentRange(const char* value) { SetContentRange(value); return *this;} + + + /** + * <p>Specifies whether an object stored in Amazon S3 is (<code>true</code>) or is + * not (<code>false</code>) a delete marker. </p> + */ + inline bool GetDeleteMarker() const{ return m_deleteMarker; } + + /** + * <p>Specifies whether an object stored in Amazon S3 is (<code>true</code>) or is + * not (<code>false</code>) a delete marker. </p> + */ + inline bool DeleteMarkerHasBeenSet() const { return m_deleteMarkerHasBeenSet; } + + /** + * <p>Specifies whether an object stored in Amazon S3 is (<code>true</code>) or is + * not (<code>false</code>) a delete marker. </p> + */ + inline void SetDeleteMarker(bool value) { m_deleteMarkerHasBeenSet = true; m_deleteMarker = value; } + + /** + * <p>Specifies whether an object stored in Amazon S3 is (<code>true</code>) or is + * not (<code>false</code>) a delete marker. </p> + */ + inline WriteGetObjectResponseRequest& WithDeleteMarker(bool value) { SetDeleteMarker(value); return *this;} + + + /** + * <p>An opaque identifier assigned by a web server to a specific version of a + * resource found at a URL. </p> + */ + inline const Aws::String& GetETag() const{ return m_eTag; } + + /** + * <p>An opaque identifier assigned by a web server to a specific version of a + * resource found at a URL. </p> + */ + inline bool ETagHasBeenSet() const { return m_eTagHasBeenSet; } + + /** + * <p>An opaque identifier assigned by a web server to a specific version of a + * resource found at a URL. </p> + */ + inline void SetETag(const Aws::String& value) { m_eTagHasBeenSet = true; m_eTag = value; } + + /** + * <p>An opaque identifier assigned by a web server to a specific version of a + * resource found at a URL. </p> + */ + inline void SetETag(Aws::String&& value) { m_eTagHasBeenSet = true; m_eTag = std::move(value); } + + /** + * <p>An opaque identifier assigned by a web server to a specific version of a + * resource found at a URL. </p> + */ + inline void SetETag(const char* value) { m_eTagHasBeenSet = true; m_eTag.assign(value); } + + /** + * <p>An opaque identifier assigned by a web server to a specific version of a + * resource found at a URL. </p> + */ + inline WriteGetObjectResponseRequest& WithETag(const Aws::String& value) { SetETag(value); return *this;} + + /** + * <p>An opaque identifier assigned by a web server to a specific version of a + * resource found at a URL. </p> + */ + inline WriteGetObjectResponseRequest& WithETag(Aws::String&& value) { SetETag(std::move(value)); return *this;} + + /** + * <p>An opaque identifier assigned by a web server to a specific version of a + * resource found at a URL. </p> + */ + inline WriteGetObjectResponseRequest& WithETag(const char* value) { SetETag(value); return *this;} + + + /** + * <p>The date and time at which the object is no longer cacheable.</p> + */ + inline const Aws::Utils::DateTime& GetExpires() const{ return m_expires; } + + /** + * <p>The date and time at which the object is no longer cacheable.</p> + */ + inline bool ExpiresHasBeenSet() const { return m_expiresHasBeenSet; } + + /** + * <p>The date and time at which the object is no longer cacheable.</p> + */ + inline void SetExpires(const Aws::Utils::DateTime& value) { m_expiresHasBeenSet = true; m_expires = value; } + + /** + * <p>The date and time at which the object is no longer cacheable.</p> + */ + inline void SetExpires(Aws::Utils::DateTime&& value) { m_expiresHasBeenSet = true; m_expires = std::move(value); } + + /** + * <p>The date and time at which the object is no longer cacheable.</p> + */ + inline WriteGetObjectResponseRequest& WithExpires(const Aws::Utils::DateTime& value) { SetExpires(value); return *this;} + + /** + * <p>The date and time at which the object is no longer cacheable.</p> + */ + inline WriteGetObjectResponseRequest& WithExpires(Aws::Utils::DateTime&& value) { SetExpires(std::move(value)); return *this;} + + + /** + * <p>If object stored in Amazon S3 expiration is configured (see PUT Bucket + * lifecycle) it includes expiry-date and rule-id key-value pairs providing object + * expiration information. The value of the rule-id is URL encoded. </p> + */ + inline const Aws::String& GetExpiration() const{ return m_expiration; } + + /** + * <p>If object stored in Amazon S3 expiration is configured (see PUT Bucket + * lifecycle) it includes expiry-date and rule-id key-value pairs providing object + * expiration information. The value of the rule-id is URL encoded. </p> + */ + inline bool ExpirationHasBeenSet() const { return m_expirationHasBeenSet; } + + /** + * <p>If object stored in Amazon S3 expiration is configured (see PUT Bucket + * lifecycle) it includes expiry-date and rule-id key-value pairs providing object + * expiration information. The value of the rule-id is URL encoded. </p> + */ + inline void SetExpiration(const Aws::String& value) { m_expirationHasBeenSet = true; m_expiration = value; } + + /** + * <p>If object stored in Amazon S3 expiration is configured (see PUT Bucket + * lifecycle) it includes expiry-date and rule-id key-value pairs providing object + * expiration information. The value of the rule-id is URL encoded. </p> + */ + inline void SetExpiration(Aws::String&& value) { m_expirationHasBeenSet = true; m_expiration = std::move(value); } + + /** + * <p>If object stored in Amazon S3 expiration is configured (see PUT Bucket + * lifecycle) it includes expiry-date and rule-id key-value pairs providing object + * expiration information. The value of the rule-id is URL encoded. </p> + */ + inline void SetExpiration(const char* value) { m_expirationHasBeenSet = true; m_expiration.assign(value); } + + /** + * <p>If object stored in Amazon S3 expiration is configured (see PUT Bucket + * lifecycle) it includes expiry-date and rule-id key-value pairs providing object + * expiration information. The value of the rule-id is URL encoded. </p> + */ + inline WriteGetObjectResponseRequest& WithExpiration(const Aws::String& value) { SetExpiration(value); return *this;} + + /** + * <p>If object stored in Amazon S3 expiration is configured (see PUT Bucket + * lifecycle) it includes expiry-date and rule-id key-value pairs providing object + * expiration information. The value of the rule-id is URL encoded. </p> + */ + inline WriteGetObjectResponseRequest& WithExpiration(Aws::String&& value) { SetExpiration(std::move(value)); return *this;} + + /** + * <p>If object stored in Amazon S3 expiration is configured (see PUT Bucket + * lifecycle) it includes expiry-date and rule-id key-value pairs providing object + * expiration information. The value of the rule-id is URL encoded. </p> + */ + inline WriteGetObjectResponseRequest& WithExpiration(const char* value) { SetExpiration(value); return *this;} + + + /** + * <p>The date and time that the object was last modified.</p> + */ + inline const Aws::Utils::DateTime& GetLastModified() const{ return m_lastModified; } + + /** + * <p>The date and time that the object was last modified.</p> + */ + inline bool LastModifiedHasBeenSet() const { return m_lastModifiedHasBeenSet; } + + /** + * <p>The date and time that the object was last modified.</p> + */ + inline void SetLastModified(const Aws::Utils::DateTime& value) { m_lastModifiedHasBeenSet = true; m_lastModified = value; } + + /** + * <p>The date and time that the object was last modified.</p> + */ + inline void SetLastModified(Aws::Utils::DateTime&& value) { m_lastModifiedHasBeenSet = true; m_lastModified = std::move(value); } + + /** + * <p>The date and time that the object was last modified.</p> + */ + inline WriteGetObjectResponseRequest& WithLastModified(const Aws::Utils::DateTime& value) { SetLastModified(value); return *this;} + + /** + * <p>The date and time that the object was last modified.</p> + */ + inline WriteGetObjectResponseRequest& WithLastModified(Aws::Utils::DateTime&& value) { SetLastModified(std::move(value)); return *this;} + + + /** + * <p>Set to the number of metadata entries not returned in <code>x-amz-meta</code> + * 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.</p> + */ + inline int GetMissingMeta() const{ return m_missingMeta; } + + /** + * <p>Set to the number of metadata entries not returned in <code>x-amz-meta</code> + * 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.</p> + */ + inline bool MissingMetaHasBeenSet() const { return m_missingMetaHasBeenSet; } + + /** + * <p>Set to the number of metadata entries not returned in <code>x-amz-meta</code> + * 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.</p> + */ + inline void SetMissingMeta(int value) { m_missingMetaHasBeenSet = true; m_missingMeta = value; } + + /** + * <p>Set to the number of metadata entries not returned in <code>x-amz-meta</code> + * 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.</p> + */ + inline WriteGetObjectResponseRequest& WithMissingMeta(int value) { SetMissingMeta(value); return *this;} + + + /** + * <p>A map of metadata to store with the object in S3.</p> + */ + inline const Aws::Map<Aws::String, Aws::String>& GetMetadata() const{ return m_metadata; } + + /** + * <p>A map of metadata to store with the object in S3.</p> + */ + inline bool MetadataHasBeenSet() const { return m_metadataHasBeenSet; } + + /** + * <p>A map of metadata to store with the object in S3.</p> + */ + inline void SetMetadata(const Aws::Map<Aws::String, Aws::String>& value) { m_metadataHasBeenSet = true; m_metadata = value; } + + /** + * <p>A map of metadata to store with the object in S3.</p> + */ + inline void SetMetadata(Aws::Map<Aws::String, Aws::String>&& value) { m_metadataHasBeenSet = true; m_metadata = std::move(value); } + + /** + * <p>A map of metadata to store with the object in S3.</p> + */ + inline WriteGetObjectResponseRequest& WithMetadata(const Aws::Map<Aws::String, Aws::String>& value) { SetMetadata(value); return *this;} + + /** + * <p>A map of metadata to store with the object in S3.</p> + */ + inline WriteGetObjectResponseRequest& WithMetadata(Aws::Map<Aws::String, Aws::String>&& value) { SetMetadata(std::move(value)); return *this;} + + /** + * <p>A map of metadata to store with the object in S3.</p> + */ + inline WriteGetObjectResponseRequest& AddMetadata(const Aws::String& key, const Aws::String& value) { m_metadataHasBeenSet = true; m_metadata.emplace(key, value); return *this; } + + /** + * <p>A map of metadata to store with the object in S3.</p> + */ + inline WriteGetObjectResponseRequest& AddMetadata(Aws::String&& key, const Aws::String& value) { m_metadataHasBeenSet = true; m_metadata.emplace(std::move(key), value); return *this; } + + /** + * <p>A map of metadata to store with the object in S3.</p> + */ + inline WriteGetObjectResponseRequest& AddMetadata(const Aws::String& key, Aws::String&& value) { m_metadataHasBeenSet = true; m_metadata.emplace(key, std::move(value)); return *this; } + + /** + * <p>A map of metadata to store with the object in S3.</p> + */ + inline WriteGetObjectResponseRequest& AddMetadata(Aws::String&& key, Aws::String&& value) { m_metadataHasBeenSet = true; m_metadata.emplace(std::move(key), std::move(value)); return *this; } + + /** + * <p>A map of metadata to store with the object in S3.</p> + */ + inline WriteGetObjectResponseRequest& AddMetadata(const char* key, Aws::String&& value) { m_metadataHasBeenSet = true; m_metadata.emplace(key, std::move(value)); return *this; } + + /** + * <p>A map of metadata to store with the object in S3.</p> + */ + inline WriteGetObjectResponseRequest& AddMetadata(Aws::String&& key, const char* value) { m_metadataHasBeenSet = true; m_metadata.emplace(std::move(key), value); return *this; } + + /** + * <p>A map of metadata to store with the object in S3.</p> + */ + inline WriteGetObjectResponseRequest& AddMetadata(const char* key, const char* value) { m_metadataHasBeenSet = true; m_metadata.emplace(key, value); return *this; } + + + /** + * <p>Indicates whether an object stored in Amazon S3 has Object Lock enabled. For + * more information about S3 Object Lock, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-lock.html">Object + * Lock</a>.</p> + */ + inline const ObjectLockMode& GetObjectLockMode() const{ return m_objectLockMode; } + + /** + * <p>Indicates whether an object stored in Amazon S3 has Object Lock enabled. For + * more information about S3 Object Lock, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-lock.html">Object + * Lock</a>.</p> + */ + inline bool ObjectLockModeHasBeenSet() const { return m_objectLockModeHasBeenSet; } + + /** + * <p>Indicates whether an object stored in Amazon S3 has Object Lock enabled. For + * more information about S3 Object Lock, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-lock.html">Object + * Lock</a>.</p> + */ + inline void SetObjectLockMode(const ObjectLockMode& value) { m_objectLockModeHasBeenSet = true; m_objectLockMode = value; } + + /** + * <p>Indicates whether an object stored in Amazon S3 has Object Lock enabled. For + * more information about S3 Object Lock, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-lock.html">Object + * Lock</a>.</p> + */ + inline void SetObjectLockMode(ObjectLockMode&& value) { m_objectLockModeHasBeenSet = true; m_objectLockMode = std::move(value); } + + /** + * <p>Indicates whether an object stored in Amazon S3 has Object Lock enabled. For + * more information about S3 Object Lock, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-lock.html">Object + * Lock</a>.</p> + */ + inline WriteGetObjectResponseRequest& WithObjectLockMode(const ObjectLockMode& value) { SetObjectLockMode(value); return *this;} + + /** + * <p>Indicates whether an object stored in Amazon S3 has Object Lock enabled. For + * more information about S3 Object Lock, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-lock.html">Object + * Lock</a>.</p> + */ + inline WriteGetObjectResponseRequest& WithObjectLockMode(ObjectLockMode&& value) { SetObjectLockMode(std::move(value)); return *this;} + + + /** + * <p>Indicates whether an object stored in Amazon S3 has an active legal hold.</p> + */ + inline const ObjectLockLegalHoldStatus& GetObjectLockLegalHoldStatus() const{ return m_objectLockLegalHoldStatus; } + + /** + * <p>Indicates whether an object stored in Amazon S3 has an active legal hold.</p> + */ + inline bool ObjectLockLegalHoldStatusHasBeenSet() const { return m_objectLockLegalHoldStatusHasBeenSet; } + + /** + * <p>Indicates whether an object stored in Amazon S3 has an active legal hold.</p> + */ + inline void SetObjectLockLegalHoldStatus(const ObjectLockLegalHoldStatus& value) { m_objectLockLegalHoldStatusHasBeenSet = true; m_objectLockLegalHoldStatus = value; } + + /** + * <p>Indicates whether an object stored in Amazon S3 has an active legal hold.</p> + */ + inline void SetObjectLockLegalHoldStatus(ObjectLockLegalHoldStatus&& value) { m_objectLockLegalHoldStatusHasBeenSet = true; m_objectLockLegalHoldStatus = std::move(value); } + + /** + * <p>Indicates whether an object stored in Amazon S3 has an active legal hold.</p> + */ + inline WriteGetObjectResponseRequest& WithObjectLockLegalHoldStatus(const ObjectLockLegalHoldStatus& value) { SetObjectLockLegalHoldStatus(value); return *this;} + + /** + * <p>Indicates whether an object stored in Amazon S3 has an active legal hold.</p> + */ + inline WriteGetObjectResponseRequest& WithObjectLockLegalHoldStatus(ObjectLockLegalHoldStatus&& value) { SetObjectLockLegalHoldStatus(std::move(value)); return *this;} + + + /** + * <p>The date and time when Object Lock is configured to expire.</p> + */ + inline const Aws::Utils::DateTime& GetObjectLockRetainUntilDate() const{ return m_objectLockRetainUntilDate; } + + /** + * <p>The date and time when Object Lock is configured to expire.</p> + */ + inline bool ObjectLockRetainUntilDateHasBeenSet() const { return m_objectLockRetainUntilDateHasBeenSet; } + + /** + * <p>The date and time when Object Lock is configured to expire.</p> + */ + inline void SetObjectLockRetainUntilDate(const Aws::Utils::DateTime& value) { m_objectLockRetainUntilDateHasBeenSet = true; m_objectLockRetainUntilDate = value; } + + /** + * <p>The date and time when Object Lock is configured to expire.</p> + */ + inline void SetObjectLockRetainUntilDate(Aws::Utils::DateTime&& value) { m_objectLockRetainUntilDateHasBeenSet = true; m_objectLockRetainUntilDate = std::move(value); } + + /** + * <p>The date and time when Object Lock is configured to expire.</p> + */ + inline WriteGetObjectResponseRequest& WithObjectLockRetainUntilDate(const Aws::Utils::DateTime& value) { SetObjectLockRetainUntilDate(value); return *this;} + + /** + * <p>The date and time when Object Lock is configured to expire.</p> + */ + inline WriteGetObjectResponseRequest& WithObjectLockRetainUntilDate(Aws::Utils::DateTime&& value) { SetObjectLockRetainUntilDate(std::move(value)); return *this;} + + + /** + * <p>The count of parts this object has.</p> + */ + inline int GetPartsCount() const{ return m_partsCount; } + + /** + * <p>The count of parts this object has.</p> + */ + inline bool PartsCountHasBeenSet() const { return m_partsCountHasBeenSet; } + + /** + * <p>The count of parts this object has.</p> + */ + inline void SetPartsCount(int value) { m_partsCountHasBeenSet = true; m_partsCount = value; } + + /** + * <p>The count of parts this object has.</p> + */ + inline WriteGetObjectResponseRequest& WithPartsCount(int value) { SetPartsCount(value); return *this;} + + + /** + * <p>Indicates if request involves bucket that is either a source or destination + * in a Replication rule. For more information about S3 Replication, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/replication.html">Replication</a>.</p> + */ + inline const ReplicationStatus& GetReplicationStatus() const{ return m_replicationStatus; } + + /** + * <p>Indicates if request involves bucket that is either a source or destination + * in a Replication rule. For more information about S3 Replication, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/replication.html">Replication</a>.</p> + */ + inline bool ReplicationStatusHasBeenSet() const { return m_replicationStatusHasBeenSet; } + + /** + * <p>Indicates if request involves bucket that is either a source or destination + * in a Replication rule. For more information about S3 Replication, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/replication.html">Replication</a>.</p> + */ + inline void SetReplicationStatus(const ReplicationStatus& value) { m_replicationStatusHasBeenSet = true; m_replicationStatus = value; } + + /** + * <p>Indicates if request involves bucket that is either a source or destination + * in a Replication rule. For more information about S3 Replication, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/replication.html">Replication</a>.</p> + */ + inline void SetReplicationStatus(ReplicationStatus&& value) { m_replicationStatusHasBeenSet = true; m_replicationStatus = std::move(value); } + + /** + * <p>Indicates if request involves bucket that is either a source or destination + * in a Replication rule. For more information about S3 Replication, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/replication.html">Replication</a>.</p> + */ + inline WriteGetObjectResponseRequest& WithReplicationStatus(const ReplicationStatus& value) { SetReplicationStatus(value); return *this;} + + /** + * <p>Indicates if request involves bucket that is either a source or destination + * in a Replication rule. For more information about S3 Replication, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/replication.html">Replication</a>.</p> + */ + inline WriteGetObjectResponseRequest& WithReplicationStatus(ReplicationStatus&& value) { SetReplicationStatus(std::move(value)); return *this;} + + + + inline const RequestCharged& GetRequestCharged() const{ return m_requestCharged; } + + + inline bool RequestChargedHasBeenSet() const { return m_requestChargedHasBeenSet; } + + + inline void SetRequestCharged(const RequestCharged& value) { m_requestChargedHasBeenSet = true; m_requestCharged = value; } + + + inline void SetRequestCharged(RequestCharged&& value) { m_requestChargedHasBeenSet = true; m_requestCharged = std::move(value); } + + + inline WriteGetObjectResponseRequest& WithRequestCharged(const RequestCharged& value) { SetRequestCharged(value); return *this;} + + + inline WriteGetObjectResponseRequest& WithRequestCharged(RequestCharged&& value) { SetRequestCharged(std::move(value)); return *this;} + + + /** + * <p>Provides information about object restoration operation and expiration time + * of the restored object copy.</p> + */ + inline const Aws::String& GetRestore() const{ return m_restore; } + + /** + * <p>Provides information about object restoration operation and expiration time + * of the restored object copy.</p> + */ + inline bool RestoreHasBeenSet() const { return m_restoreHasBeenSet; } + + /** + * <p>Provides information about object restoration operation and expiration time + * of the restored object copy.</p> + */ + inline void SetRestore(const Aws::String& value) { m_restoreHasBeenSet = true; m_restore = value; } + + /** + * <p>Provides information about object restoration operation and expiration time + * of the restored object copy.</p> + */ + inline void SetRestore(Aws::String&& value) { m_restoreHasBeenSet = true; m_restore = std::move(value); } + + /** + * <p>Provides information about object restoration operation and expiration time + * of the restored object copy.</p> + */ + inline void SetRestore(const char* value) { m_restoreHasBeenSet = true; m_restore.assign(value); } + + /** + * <p>Provides information about object restoration operation and expiration time + * of the restored object copy.</p> + */ + inline WriteGetObjectResponseRequest& WithRestore(const Aws::String& value) { SetRestore(value); return *this;} + + /** + * <p>Provides information about object restoration operation and expiration time + * of the restored object copy.</p> + */ + inline WriteGetObjectResponseRequest& WithRestore(Aws::String&& value) { SetRestore(std::move(value)); return *this;} + + /** + * <p>Provides information about object restoration operation and expiration time + * of the restored object copy.</p> + */ + inline WriteGetObjectResponseRequest& WithRestore(const char* value) { SetRestore(value); return *this;} + + + /** + * <p> The server-side encryption algorithm used when storing requested object in + * Amazon S3 (for example, AES256, aws:kms).</p> + */ + inline const ServerSideEncryption& GetServerSideEncryption() const{ return m_serverSideEncryption; } + + /** + * <p> The server-side encryption algorithm used when storing requested object in + * Amazon S3 (for example, AES256, aws:kms).</p> + */ + inline bool ServerSideEncryptionHasBeenSet() const { return m_serverSideEncryptionHasBeenSet; } + + /** + * <p> The server-side encryption algorithm used when storing requested object in + * Amazon S3 (for example, AES256, aws:kms).</p> + */ + inline void SetServerSideEncryption(const ServerSideEncryption& value) { m_serverSideEncryptionHasBeenSet = true; m_serverSideEncryption = value; } + + /** + * <p> The server-side encryption algorithm used when storing requested object in + * Amazon S3 (for example, AES256, aws:kms).</p> + */ + inline void SetServerSideEncryption(ServerSideEncryption&& value) { m_serverSideEncryptionHasBeenSet = true; m_serverSideEncryption = std::move(value); } + + /** + * <p> The server-side encryption algorithm used when storing requested object in + * Amazon S3 (for example, AES256, aws:kms).</p> + */ + inline WriteGetObjectResponseRequest& WithServerSideEncryption(const ServerSideEncryption& value) { SetServerSideEncryption(value); return *this;} + + /** + * <p> The server-side encryption algorithm used when storing requested object in + * Amazon S3 (for example, AES256, aws:kms).</p> + */ + inline WriteGetObjectResponseRequest& WithServerSideEncryption(ServerSideEncryption&& value) { SetServerSideEncryption(std::move(value)); return *this;} + + + /** + * <p>Encryption algorithm used if server-side encryption with a customer-provided + * encryption key was specified for object stored in Amazon S3.</p> + */ + inline const Aws::String& GetSSECustomerAlgorithm() const{ return m_sSECustomerAlgorithm; } + + /** + * <p>Encryption algorithm used if server-side encryption with a customer-provided + * encryption key was specified for object stored in Amazon S3.</p> + */ + inline bool SSECustomerAlgorithmHasBeenSet() const { return m_sSECustomerAlgorithmHasBeenSet; } + + /** + * <p>Encryption algorithm used if server-side encryption with a customer-provided + * encryption key was specified for object stored in Amazon S3.</p> + */ + inline void SetSSECustomerAlgorithm(const Aws::String& value) { m_sSECustomerAlgorithmHasBeenSet = true; m_sSECustomerAlgorithm = value; } + + /** + * <p>Encryption algorithm used if server-side encryption with a customer-provided + * encryption key was specified for object stored in Amazon S3.</p> + */ + inline void SetSSECustomerAlgorithm(Aws::String&& value) { m_sSECustomerAlgorithmHasBeenSet = true; m_sSECustomerAlgorithm = std::move(value); } + + /** + * <p>Encryption algorithm used if server-side encryption with a customer-provided + * encryption key was specified for object stored in Amazon S3.</p> + */ + inline void SetSSECustomerAlgorithm(const char* value) { m_sSECustomerAlgorithmHasBeenSet = true; m_sSECustomerAlgorithm.assign(value); } + + /** + * <p>Encryption algorithm used if server-side encryption with a customer-provided + * encryption key was specified for object stored in Amazon S3.</p> + */ + inline WriteGetObjectResponseRequest& WithSSECustomerAlgorithm(const Aws::String& value) { SetSSECustomerAlgorithm(value); return *this;} + + /** + * <p>Encryption algorithm used if server-side encryption with a customer-provided + * encryption key was specified for object stored in Amazon S3.</p> + */ + inline WriteGetObjectResponseRequest& WithSSECustomerAlgorithm(Aws::String&& value) { SetSSECustomerAlgorithm(std::move(value)); return *this;} + + /** + * <p>Encryption algorithm used if server-side encryption with a customer-provided + * encryption key was specified for object stored in Amazon S3.</p> + */ + inline WriteGetObjectResponseRequest& WithSSECustomerAlgorithm(const char* value) { SetSSECustomerAlgorithm(value); return *this;} + + + /** + * <p> If present, specifies the ID of the AWS Key Management Service (AWS KMS) + * symmetric customer managed customer master key (CMK) that was used for stored in + * Amazon S3 object. </p> + */ + inline const Aws::String& GetSSEKMSKeyId() const{ return m_sSEKMSKeyId; } + + /** + * <p> If present, specifies the ID of the AWS Key Management Service (AWS KMS) + * symmetric customer managed customer master key (CMK) that was used for stored in + * Amazon S3 object. </p> + */ + inline bool SSEKMSKeyIdHasBeenSet() const { return m_sSEKMSKeyIdHasBeenSet; } + + /** + * <p> If present, specifies the ID of the AWS Key Management Service (AWS KMS) + * symmetric customer managed customer master key (CMK) that was used for stored in + * Amazon S3 object. </p> + */ + inline void SetSSEKMSKeyId(const Aws::String& value) { m_sSEKMSKeyIdHasBeenSet = true; m_sSEKMSKeyId = value; } + + /** + * <p> If present, specifies the ID of the AWS Key Management Service (AWS KMS) + * symmetric customer managed customer master key (CMK) that was used for stored in + * Amazon S3 object. </p> + */ + inline void SetSSEKMSKeyId(Aws::String&& value) { m_sSEKMSKeyIdHasBeenSet = true; m_sSEKMSKeyId = std::move(value); } + + /** + * <p> If present, specifies the ID of the AWS Key Management Service (AWS KMS) + * symmetric customer managed customer master key (CMK) that was used for stored in + * Amazon S3 object. </p> + */ + inline void SetSSEKMSKeyId(const char* value) { m_sSEKMSKeyIdHasBeenSet = true; m_sSEKMSKeyId.assign(value); } + + /** + * <p> If present, specifies the ID of the AWS Key Management Service (AWS KMS) + * symmetric customer managed customer master key (CMK) that was used for stored in + * Amazon S3 object. </p> + */ + inline WriteGetObjectResponseRequest& WithSSEKMSKeyId(const Aws::String& value) { SetSSEKMSKeyId(value); return *this;} + + /** + * <p> If present, specifies the ID of the AWS Key Management Service (AWS KMS) + * symmetric customer managed customer master key (CMK) that was used for stored in + * Amazon S3 object. </p> + */ + inline WriteGetObjectResponseRequest& WithSSEKMSKeyId(Aws::String&& value) { SetSSEKMSKeyId(std::move(value)); return *this;} + + /** + * <p> If present, specifies the ID of the AWS Key Management Service (AWS KMS) + * symmetric customer managed customer master key (CMK) that was used for stored in + * Amazon S3 object. </p> + */ + inline WriteGetObjectResponseRequest& WithSSEKMSKeyId(const char* value) { SetSSEKMSKeyId(value); return *this;} + + + /** + * <p> 128-bit MD5 digest of customer-provided encryption key used in Amazon S3 to + * encrypt data stored in S3. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/ServerSideEncryptionCustomerKeys.html">Protecting + * data using server-side encryption with customer-provided encryption keys + * (SSE-C)</a>.</p> + */ + inline const Aws::String& GetSSECustomerKeyMD5() const{ return m_sSECustomerKeyMD5; } + + /** + * <p> 128-bit MD5 digest of customer-provided encryption key used in Amazon S3 to + * encrypt data stored in S3. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/ServerSideEncryptionCustomerKeys.html">Protecting + * data using server-side encryption with customer-provided encryption keys + * (SSE-C)</a>.</p> + */ + inline bool SSECustomerKeyMD5HasBeenSet() const { return m_sSECustomerKeyMD5HasBeenSet; } + + /** + * <p> 128-bit MD5 digest of customer-provided encryption key used in Amazon S3 to + * encrypt data stored in S3. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/ServerSideEncryptionCustomerKeys.html">Protecting + * data using server-side encryption with customer-provided encryption keys + * (SSE-C)</a>.</p> + */ + inline void SetSSECustomerKeyMD5(const Aws::String& value) { m_sSECustomerKeyMD5HasBeenSet = true; m_sSECustomerKeyMD5 = value; } + + /** + * <p> 128-bit MD5 digest of customer-provided encryption key used in Amazon S3 to + * encrypt data stored in S3. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/ServerSideEncryptionCustomerKeys.html">Protecting + * data using server-side encryption with customer-provided encryption keys + * (SSE-C)</a>.</p> + */ + inline void SetSSECustomerKeyMD5(Aws::String&& value) { m_sSECustomerKeyMD5HasBeenSet = true; m_sSECustomerKeyMD5 = std::move(value); } + + /** + * <p> 128-bit MD5 digest of customer-provided encryption key used in Amazon S3 to + * encrypt data stored in S3. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/ServerSideEncryptionCustomerKeys.html">Protecting + * data using server-side encryption with customer-provided encryption keys + * (SSE-C)</a>.</p> + */ + inline void SetSSECustomerKeyMD5(const char* value) { m_sSECustomerKeyMD5HasBeenSet = true; m_sSECustomerKeyMD5.assign(value); } + + /** + * <p> 128-bit MD5 digest of customer-provided encryption key used in Amazon S3 to + * encrypt data stored in S3. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/ServerSideEncryptionCustomerKeys.html">Protecting + * data using server-side encryption with customer-provided encryption keys + * (SSE-C)</a>.</p> + */ + inline WriteGetObjectResponseRequest& WithSSECustomerKeyMD5(const Aws::String& value) { SetSSECustomerKeyMD5(value); return *this;} + + /** + * <p> 128-bit MD5 digest of customer-provided encryption key used in Amazon S3 to + * encrypt data stored in S3. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/ServerSideEncryptionCustomerKeys.html">Protecting + * data using server-side encryption with customer-provided encryption keys + * (SSE-C)</a>.</p> + */ + inline WriteGetObjectResponseRequest& WithSSECustomerKeyMD5(Aws::String&& value) { SetSSECustomerKeyMD5(std::move(value)); return *this;} + + /** + * <p> 128-bit MD5 digest of customer-provided encryption key used in Amazon S3 to + * encrypt data stored in S3. For more information, see <a + * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/ServerSideEncryptionCustomerKeys.html">Protecting + * data using server-side encryption with customer-provided encryption keys + * (SSE-C)</a>.</p> + */ + inline WriteGetObjectResponseRequest& WithSSECustomerKeyMD5(const char* value) { SetSSECustomerKeyMD5(value); return *this;} + + + /** + * <p> The class of storage used to store object in Amazon S3.</p> + */ + inline const StorageClass& GetStorageClass() const{ return m_storageClass; } + + /** + * <p> The class of storage used to store object in Amazon S3.</p> + */ + inline bool StorageClassHasBeenSet() const { return m_storageClassHasBeenSet; } + + /** + * <p> The class of storage used to store object in Amazon S3.</p> + */ + inline void SetStorageClass(const StorageClass& value) { m_storageClassHasBeenSet = true; m_storageClass = value; } + + /** + * <p> The class of storage used to store object in Amazon S3.</p> + */ + inline void SetStorageClass(StorageClass&& value) { m_storageClassHasBeenSet = true; m_storageClass = std::move(value); } + + /** + * <p> The class of storage used to store object in Amazon S3.</p> + */ + inline WriteGetObjectResponseRequest& WithStorageClass(const StorageClass& value) { SetStorageClass(value); return *this;} + + /** + * <p> The class of storage used to store object in Amazon S3.</p> + */ + inline WriteGetObjectResponseRequest& WithStorageClass(StorageClass&& value) { SetStorageClass(std::move(value)); return *this;} + + + /** + * <p>The number of tags, if any, on the object.</p> + */ + inline int GetTagCount() const{ return m_tagCount; } + + /** + * <p>The number of tags, if any, on the object.</p> + */ + inline bool TagCountHasBeenSet() const { return m_tagCountHasBeenSet; } + + /** + * <p>The number of tags, if any, on the object.</p> + */ + inline void SetTagCount(int value) { m_tagCountHasBeenSet = true; m_tagCount = value; } + + /** + * <p>The number of tags, if any, on the object.</p> + */ + inline WriteGetObjectResponseRequest& WithTagCount(int value) { SetTagCount(value); return *this;} + + + /** + * <p>An ID used to reference a specific version of the object.</p> + */ + inline const Aws::String& GetVersionId() const{ return m_versionId; } + + /** + * <p>An ID used to reference a specific version of the object.</p> + */ + inline bool VersionIdHasBeenSet() const { return m_versionIdHasBeenSet; } + + /** + * <p>An ID used to reference a specific version of the object.</p> + */ + inline void SetVersionId(const Aws::String& value) { m_versionIdHasBeenSet = true; m_versionId = value; } + + /** + * <p>An ID used to reference a specific version of the object.</p> + */ + inline void SetVersionId(Aws::String&& value) { m_versionIdHasBeenSet = true; m_versionId = std::move(value); } + + /** + * <p>An ID used to reference a specific version of the object.</p> + */ + inline void SetVersionId(const char* value) { m_versionIdHasBeenSet = true; m_versionId.assign(value); } + + /** + * <p>An ID used to reference a specific version of the object.</p> + */ + inline WriteGetObjectResponseRequest& WithVersionId(const Aws::String& value) { SetVersionId(value); return *this;} + + /** + * <p>An ID used to reference a specific version of the object.</p> + */ + inline WriteGetObjectResponseRequest& WithVersionId(Aws::String&& value) { SetVersionId(std::move(value)); return *this;} + + /** + * <p>An ID used to reference a specific version of the object.</p> + */ + inline WriteGetObjectResponseRequest& WithVersionId(const char* value) { SetVersionId(value); return *this;} + + + /** + * <p> Indicates whether the object stored in Amazon S3 uses an S3 bucket key for + * server-side encryption with AWS KMS (SSE-KMS).</p> + */ + inline bool GetBucketKeyEnabled() const{ return m_bucketKeyEnabled; } + + /** + * <p> Indicates whether the object stored in Amazon S3 uses an S3 bucket key for + * server-side encryption with AWS KMS (SSE-KMS).</p> + */ + inline bool BucketKeyEnabledHasBeenSet() const { return m_bucketKeyEnabledHasBeenSet; } + + /** + * <p> Indicates whether the object stored in Amazon S3 uses an S3 bucket key for + * server-side encryption with AWS KMS (SSE-KMS).</p> + */ + inline void SetBucketKeyEnabled(bool value) { m_bucketKeyEnabledHasBeenSet = true; m_bucketKeyEnabled = value; } + + /** + * <p> Indicates whether the object stored in Amazon S3 uses an S3 bucket key for + * server-side encryption with AWS KMS (SSE-KMS).</p> + */ + inline WriteGetObjectResponseRequest& WithBucketKeyEnabled(bool value) { SetBucketKeyEnabled(value); return *this;} + + + + inline const Aws::Map<Aws::String, Aws::String>& GetCustomizedAccessLogTag() const{ return m_customizedAccessLogTag; } + + + inline bool CustomizedAccessLogTagHasBeenSet() const { return m_customizedAccessLogTagHasBeenSet; } + + + inline void SetCustomizedAccessLogTag(const Aws::Map<Aws::String, Aws::String>& value) { m_customizedAccessLogTagHasBeenSet = true; m_customizedAccessLogTag = value; } + + + inline void SetCustomizedAccessLogTag(Aws::Map<Aws::String, Aws::String>&& value) { m_customizedAccessLogTagHasBeenSet = true; m_customizedAccessLogTag = std::move(value); } + + + inline WriteGetObjectResponseRequest& WithCustomizedAccessLogTag(const Aws::Map<Aws::String, Aws::String>& value) { SetCustomizedAccessLogTag(value); return *this;} + + + inline WriteGetObjectResponseRequest& WithCustomizedAccessLogTag(Aws::Map<Aws::String, Aws::String>&& value) { SetCustomizedAccessLogTag(std::move(value)); return *this;} + + + inline WriteGetObjectResponseRequest& AddCustomizedAccessLogTag(const Aws::String& key, const Aws::String& value) { m_customizedAccessLogTagHasBeenSet = true; m_customizedAccessLogTag.emplace(key, value); return *this; } + + + inline WriteGetObjectResponseRequest& AddCustomizedAccessLogTag(Aws::String&& key, const Aws::String& value) { m_customizedAccessLogTagHasBeenSet = true; m_customizedAccessLogTag.emplace(std::move(key), value); return *this; } + + + inline WriteGetObjectResponseRequest& AddCustomizedAccessLogTag(const Aws::String& key, Aws::String&& value) { m_customizedAccessLogTagHasBeenSet = true; m_customizedAccessLogTag.emplace(key, std::move(value)); return *this; } + + + inline WriteGetObjectResponseRequest& AddCustomizedAccessLogTag(Aws::String&& key, Aws::String&& value) { m_customizedAccessLogTagHasBeenSet = true; m_customizedAccessLogTag.emplace(std::move(key), std::move(value)); return *this; } + + + inline WriteGetObjectResponseRequest& AddCustomizedAccessLogTag(const char* key, Aws::String&& value) { m_customizedAccessLogTagHasBeenSet = true; m_customizedAccessLogTag.emplace(key, std::move(value)); return *this; } + + + inline WriteGetObjectResponseRequest& AddCustomizedAccessLogTag(Aws::String&& key, const char* value) { m_customizedAccessLogTagHasBeenSet = true; m_customizedAccessLogTag.emplace(std::move(key), value); return *this; } + + + inline WriteGetObjectResponseRequest& AddCustomizedAccessLogTag(const char* key, const char* value) { m_customizedAccessLogTagHasBeenSet = true; m_customizedAccessLogTag.emplace(key, value); return *this; } + + private: + + Aws::String m_requestRoute; + bool m_requestRouteHasBeenSet; + + Aws::String m_requestToken; + bool m_requestTokenHasBeenSet; + + + int m_statusCode; + bool m_statusCodeHasBeenSet; + + Aws::String m_errorCode; + bool m_errorCodeHasBeenSet; + + Aws::String m_errorMessage; + bool m_errorMessageHasBeenSet; + + Aws::String m_acceptRanges; + bool m_acceptRangesHasBeenSet; + + Aws::String m_cacheControl; + bool m_cacheControlHasBeenSet; + + Aws::String m_contentDisposition; + bool m_contentDispositionHasBeenSet; + + Aws::String m_contentEncoding; + bool m_contentEncodingHasBeenSet; + + Aws::String m_contentLanguage; + bool m_contentLanguageHasBeenSet; + + long long m_contentLength; + bool m_contentLengthHasBeenSet; + + Aws::String m_contentRange; + bool m_contentRangeHasBeenSet; + + bool m_deleteMarker; + bool m_deleteMarkerHasBeenSet; + + Aws::String m_eTag; + bool m_eTagHasBeenSet; + + Aws::Utils::DateTime m_expires; + bool m_expiresHasBeenSet; + + Aws::String m_expiration; + bool m_expirationHasBeenSet; + + Aws::Utils::DateTime m_lastModified; + bool m_lastModifiedHasBeenSet; + + int m_missingMeta; + bool m_missingMetaHasBeenSet; + + Aws::Map<Aws::String, Aws::String> m_metadata; + bool m_metadataHasBeenSet; + + ObjectLockMode m_objectLockMode; + bool m_objectLockModeHasBeenSet; + + ObjectLockLegalHoldStatus m_objectLockLegalHoldStatus; + bool m_objectLockLegalHoldStatusHasBeenSet; + + Aws::Utils::DateTime m_objectLockRetainUntilDate; + bool m_objectLockRetainUntilDateHasBeenSet; + + int m_partsCount; + bool m_partsCountHasBeenSet; + + ReplicationStatus m_replicationStatus; + bool m_replicationStatusHasBeenSet; + + RequestCharged m_requestCharged; + bool m_requestChargedHasBeenSet; + + Aws::String m_restore; + bool m_restoreHasBeenSet; + + ServerSideEncryption m_serverSideEncryption; + bool m_serverSideEncryptionHasBeenSet; + + Aws::String m_sSECustomerAlgorithm; + bool m_sSECustomerAlgorithmHasBeenSet; + + Aws::String m_sSEKMSKeyId; + bool m_sSEKMSKeyIdHasBeenSet; + + Aws::String m_sSECustomerKeyMD5; + bool m_sSECustomerKeyMD5HasBeenSet; + + StorageClass m_storageClass; + bool m_storageClassHasBeenSet; + + int m_tagCount; + bool m_tagCountHasBeenSet; + + Aws::String m_versionId; + bool m_versionIdHasBeenSet; + + bool m_bucketKeyEnabled; + bool m_bucketKeyEnabledHasBeenSet; + + Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag; + bool m_customizedAccessLogTagHasBeenSet; + }; + +} // namespace Model +} // namespace S3 +} // namespace Aws diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3ARN.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3ARN.cpp index c774bcd380..72bbbc8c7e 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3ARN.cpp +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3ARN.cpp @@ -61,10 +61,10 @@ namespace Aws ss << "Invalid partition in ARN: " << this->GetPartition() << ". Valid options: aws, aws-cn, and etc."; } // Validation on service. - else if (this->GetService() != "s3" && this->GetService() != "s3-outposts") + else if (this->GetService() != ARNService::S3 && this->GetService() != ARNService::S3_OUTPOSTS && this->GetService() != ARNService::S3_OBJECT_LAMBDA) { ss.str(""); - ss << "Invalid service in ARN: " << this->GetService() << ". Valid options: s3, s3-outposts"; + ss << "Invalid service in ARN: " << this->GetService() << ". Valid options: " << ARNService::S3 << ", " << ARNService::S3_OUTPOSTS << ", " << ARNService::S3_OBJECT_LAMBDA << "."; errorMessage = ss.str(); } // Validation on region. @@ -86,7 +86,7 @@ namespace Aws ss << "Invalid account ID in ARN: " << this->GetAccountId() << ". Account ID should be a RFC 3986 Host label."; errorMessage = ss.str(); } - // Validation on Access Point ARN: + // Validation on Access Point ARN and Object Lambda Access Point ARN: else if (this->GetResourceType() == ARNResourceType::ACCESSPOINT) { if (!Utils::IsValidDnsLabel(this->GetResourceId())) @@ -144,11 +144,11 @@ namespace Aws success = true; } } - // Neither Access Point ARN nor Outposts ARN. + // ARN with unknown resource type. else { ss.str(""); - ss << "Invalid resource type in ARN: " << this->GetResourceType() << ". Valid options: " << ARNResourceType::ACCESSPOINT << ", " << ARNResourceType::OUTPOST; + ss << "Invalid resource type in ARN: " << this->GetResourceType() << ". Valid options: " << ARNResourceType::ACCESSPOINT << ", " << ARNResourceType::OUTPOST << "."; errorMessage = ss.str(); } diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3Client.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3Client.cpp index ca21d88bb2..7f9eb2b4c6 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3Client.cpp +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3Client.cpp @@ -112,6 +112,7 @@ #include <aws/s3/model/SelectObjectContentRequest.h> #include <aws/s3/model/UploadPartRequest.h> #include <aws/s3/model/UploadPartCopyRequest.h> +#include <aws/s3/model/WriteGetObjectResponseRequest.h> using namespace Aws; using namespace Aws::Auth; @@ -178,6 +179,7 @@ void S3Client::init(const ClientConfiguration& config) m_useCustomEndpoint = true; OverrideEndpoint(config.endpointOverride); } + m_enableHostPrefixInjection = config.enableHostPrefixInjection; } void S3Client::OverrideEndpoint(const Aws::String& endpoint) @@ -3829,6 +3831,62 @@ void S3Client::UploadPartCopyAsyncHelper(const UploadPartCopyRequest& request, c handler(this, request, UploadPartCopy(request), context); } +WriteGetObjectResponseOutcome S3Client::WriteGetObjectResponse(const WriteGetObjectResponseRequest& request) const +{ + if (!request.RequestRouteHasBeenSet()) + { + AWS_LOGSTREAM_ERROR("WriteGetObjectResponse", "Required field: RequestRoute, is not set"); + return WriteGetObjectResponseOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [RequestRoute]", false)); + } + if (!request.RequestTokenHasBeenSet()) + { + AWS_LOGSTREAM_ERROR("WriteGetObjectResponse", "Required field: RequestToken, is not set"); + return WriteGetObjectResponseOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [RequestToken]", false)); + } + ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointStringWithServiceName("s3-object-lambda"); + if (!computeEndpointOutcome.IsSuccess()) + { + return WriteGetObjectResponseOutcome(computeEndpointOutcome.GetError()); + } + Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint; + if (m_enableHostPrefixInjection) + { + if (request.GetRequestRoute().empty()) + { + AWS_LOGSTREAM_ERROR("WriteGetObjectResponse", "HostPrefix required field: RequestRoute, is empty"); + return WriteGetObjectResponseOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::INVALID_PARAMETER_VALUE, "INVALID_PARAMETER", "Host prefix field is empty", false)); + } + uri.SetAuthority("" + request.GetRequestRoute() + "." + uri.GetAuthority()); + if (!Aws::Utils::IsValidHost(uri.GetAuthority())) + { + AWS_LOGSTREAM_ERROR("WriteGetObjectResponse", "Invalid DNS host: " << uri.GetAuthority()); + return WriteGetObjectResponseOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::INVALID_PARAMETER_VALUE, "INVALID_PARAMETER", "Host is invalid", false)); + } + } + Aws::StringStream ss; + ss << "/WriteGetObjectResponse"; + uri.SetPath(uri.GetPath() + ss.str()); + return WriteGetObjectResponseOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/)); +} + +WriteGetObjectResponseOutcomeCallable S3Client::WriteGetObjectResponseCallable(const WriteGetObjectResponseRequest& request) const +{ + auto task = Aws::MakeShared< std::packaged_task< WriteGetObjectResponseOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->WriteGetObjectResponse(request); } ); + auto packagedFunction = [task]() { (*task)(); }; + m_executor->Submit(packagedFunction); + return task->get_future(); +} + +void S3Client::WriteGetObjectResponseAsync(const WriteGetObjectResponseRequest& request, const WriteGetObjectResponseResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const +{ + m_executor->Submit( [this, request, handler, context](){ this->WriteGetObjectResponseAsyncHelper( request, handler, context ); } ); +} + +void S3Client::WriteGetObjectResponseAsyncHelper(const WriteGetObjectResponseRequest& request, const WriteGetObjectResponseResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const +{ + handler(this, request, WriteGetObjectResponse(request), context); +} + #include<aws/core/platform/Environment.h> @@ -4013,6 +4071,12 @@ Aws::String S3Client::GeneratePresignedUrlWithSSEC(const Aws::String& bucket, co ComputeEndpointOutcome S3Client::ComputeEndpointString(const Aws::String& bucketOrArn) const { + if (m_useDualStack && m_useCustomEndpoint) + { + return ComputeEndpointOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::VALIDATION, "VALIDATION", + "Dual-stack endpoint is incompatible with a custom endpoint override.", false)); + } + Aws::StringStream ss; ss << m_scheme << "://"; Aws::String bucket = bucketOrArn; @@ -4021,12 +4085,6 @@ ComputeEndpointOutcome S3Client::ComputeEndpointString(const Aws::String& bucket if (arn) { - if (m_useCustomEndpoint) - { - return ComputeEndpointOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::VALIDATION, "VALIDATION", - "Custom endpoint is not compatible with Access Point ARN or Outposts ARN in Bucket field.", false)); - } - if (!m_useVirtualAddressing) { return ComputeEndpointOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::VALIDATION, "VALIDATION", @@ -4039,9 +4097,19 @@ ComputeEndpointOutcome S3Client::ComputeEndpointString(const Aws::String& bucket return ComputeEndpointOutcome(s3ArnOutcome.GetError()); } signerRegion = m_useArnRegion ? arn.GetRegion() : signerRegion; - if (arn.GetResourceType() == ARNResourceType::ACCESSPOINT) + if (arn.GetService() == ARNService::S3_OBJECT_LAMBDA) { - ss << S3Endpoint::ForAccessPointArn(arn, m_useArnRegion ? "" : m_region, m_useDualStack); + if (m_useDualStack) + { + return ComputeEndpointOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::VALIDATION, "VALIDATION", + "S3 Object Lambda Access Point ARNs do not support dualstack right now.", false)); + } + ss << S3Endpoint::ForObjectLambdaAccessPointArn(arn, m_useArnRegion ? "" : m_region, m_useDualStack, m_useCustomEndpoint ? m_baseUri : ""); + return ComputeEndpointOutcome(ComputeEndpointResult(ss.str(), signerRegion, ARNService::S3_OBJECT_LAMBDA)); + } + else if (arn.GetResourceType() == ARNResourceType::ACCESSPOINT) + { + ss << S3Endpoint::ForAccessPointArn(arn, m_useArnRegion ? "" : m_region, m_useDualStack, m_useCustomEndpoint ? m_baseUri : ""); return ComputeEndpointOutcome(ComputeEndpointResult(ss.str(), signerRegion, SERVICE_NAME)); } else if (arn.GetResourceType() == ARNResourceType::OUTPOST) @@ -4051,7 +4119,7 @@ ComputeEndpointOutcome S3Client::ComputeEndpointString(const Aws::String& bucket return ComputeEndpointOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::VALIDATION, "VALIDATION", "Outposts Access Points do not support dualstack right now.", false)); } - ss << S3Endpoint::ForOutpostsArn(arn, m_useArnRegion ? "" : m_region); + ss << S3Endpoint::ForOutpostsArn(arn, m_useArnRegion ? "" : m_region, m_useDualStack, m_useCustomEndpoint ? m_baseUri : ""); return ComputeEndpointOutcome(ComputeEndpointResult(ss.str(), signerRegion, "s3-outposts")); } } @@ -4074,11 +4142,51 @@ ComputeEndpointOutcome S3Client::ComputeEndpointString(const Aws::String& bucket ComputeEndpointOutcome S3Client::ComputeEndpointString() const { + if (m_useDualStack && m_useCustomEndpoint) + { + return ComputeEndpointOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::VALIDATION, "VALIDATION", + "Dual-stack endpoint is incompatible with a custom endpoint override.", false)); + } Aws::StringStream ss; ss << m_scheme << "://" << m_baseUri; return ComputeEndpointOutcome(ComputeEndpointResult(ss.str(), Aws::Region::ComputeSignerRegion(m_region), SERVICE_NAME)); } +ComputeEndpointOutcome S3Client::ComputeEndpointStringWithServiceName(const Aws::String& serviceNameOverride) const +{ + if (serviceNameOverride.empty()) + { + return ComputeEndpointString(); + } + + if (m_useDualStack && m_useCustomEndpoint) + { + return ComputeEndpointOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::VALIDATION, "VALIDATION", + "Dual-stack endpoint is incompatible with a custom endpoint override.", false)); + } + + Aws::StringStream ss; + ss << m_scheme << "://"; + if (m_useCustomEndpoint) + { + ss << m_baseUri; + return ComputeEndpointOutcome(ComputeEndpointResult(ss.str(), Aws::Region::ComputeSignerRegion(m_region), serviceNameOverride)); + } + else + { + if (m_useDualStack) + { + return ComputeEndpointOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::VALIDATION, "VALIDATION", + "S3 Object Lambda endpoints do not support dualstack right now.", false)); + } + else + { + ss << S3Endpoint::ForRegion(m_region, m_useDualStack, true, serviceNameOverride); + return ComputeEndpointOutcome(ComputeEndpointResult(ss.str(), Aws::Region::ComputeSignerRegion(m_region), serviceNameOverride)); + } + } +} + bool S3Client::MultipartUploadSupported() const { return true; diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3Endpoint.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3Endpoint.cpp index c81556085f..d684a11a44 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3Endpoint.cpp +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3Endpoint.cpp @@ -24,15 +24,23 @@ namespace S3Endpoint static const int FIPS_US_GOV_WEST_1_HASH = Aws::Utils::HashingUtils::HashString("fips-us-gov-west-1"); static const int US_GOV_WEST_1_HASH = Aws::Utils::HashingUtils::HashString("us-gov-west-1"); static const int US_GOV_EAST_1_HASH = Aws::Utils::HashingUtils::HashString("us-gov-east-1"); + static const int S3_EXTERNAL_1_HASH = Aws::Utils::HashingUtils::HashString("s3-external-1"); static const int US_EAST_1_HASH = Aws::Utils::HashingUtils::HashString("us-east-1"); static const int AWS_GLOBAL_HASH = Aws::Utils::HashingUtils::HashString("aws-global"); - Aws::String ForAccessPointArn(const S3ARN& arn, const Aws::String& regionNameOverride, bool useDualStack) + Aws::String ForAccessPointArn(const S3ARN& arn, const Aws::String& regionNameOverride, bool useDualStack, const Aws::String& endpointOverride) { + Aws::StringStream ss; + + if (!endpointOverride.empty()) + { + ss << arn.GetResourceId() << "-" << arn.GetAccountId() << "." << endpointOverride; + return ss.str(); + } + const Aws::String& region = regionNameOverride.empty() ? arn.GetRegion() : regionNameOverride; auto hash = Aws::Utils::HashingUtils::HashString(region.c_str()); - Aws::StringStream ss; ss << arn.GetResourceId() << "-" << arn.GetAccountId() << ".s3-accesspoint."; if (useDualStack) { @@ -48,14 +56,59 @@ namespace S3Endpoint return ss.str(); } - Aws::String ForOutpostsArn(const S3ARN& arn, const Aws::String& regionNameOverride) + Aws::String ForOutpostsArn(const S3ARN& arn, const Aws::String& regionNameOverride, bool useDualStack, const Aws::String& endpointOverride) { + AWS_UNREFERENCED_PARAM(useDualStack); + assert(!useDualStack); + Aws::StringStream ss; + + if (!endpointOverride.empty()) + { + ss << arn.GetSubResourceId() << "-" << arn.GetAccountId() << "." << arn.GetResourceId() << "." << endpointOverride; + return ss.str(); + } + const Aws::String& region = regionNameOverride.empty() ? arn.GetRegion() : regionNameOverride; auto hash = Aws::Utils::HashingUtils::HashString(region.c_str()); + ss << arn.GetSubResourceId() << "-" << arn.GetAccountId() << "." << arn.GetResourceId() << "." << ARNService::S3_OUTPOSTS << "." << region << "." << "amazonaws.com"; + + if (hash == CN_NORTH_1_HASH || hash == CN_NORTHWEST_1_HASH) + { + ss << ".cn"; + } + + return ss.str(); + } + + Aws::String ForObjectLambdaAccessPointArn(const S3ARN& arn, const Aws::String& regionNameOverride, bool useDualStack, const Aws::String& endpointOverride) + { + AWS_UNREFERENCED_PARAM(useDualStack); + assert(!useDualStack); Aws::StringStream ss; - ss << arn.GetSubResourceId() << "-" << arn.GetAccountId() << "." << arn.GetResourceId() << ".s3-outposts." << region << "." << "amazonaws.com"; + if (!endpointOverride.empty()) + { + ss << arn.GetResourceId() << "-" << arn.GetAccountId() << "." << endpointOverride; + return ss.str(); + } + + Aws::String region = regionNameOverride.empty() ? arn.GetRegion() : regionNameOverride; + Aws::String fipsSuffix = ""; + if (region.size() >= 5 && region.compare(0, 5, "fips-") == 0) + { + region = region.substr(5); + fipsSuffix = "-fips"; + } + else if (region.size() >= 5 && region.compare(region.size() - 5, 5, "-fips") == 0) + { + region = region.substr(0, region.size() - 5); + fipsSuffix = "-fips"; + } + + ss << arn.GetResourceId() << "-" << arn.GetAccountId() << "." << ARNService::S3_OBJECT_LAMBDA << fipsSuffix << "." << region << "." << "amazonaws.com"; + + auto hash = Aws::Utils::HashingUtils::HashString(region.c_str()); if (hash == CN_NORTH_1_HASH || hash == CN_NORTHWEST_1_HASH) { ss << ".cn"; @@ -64,10 +117,41 @@ namespace S3Endpoint return ss.str(); } - Aws::String ForRegion(const Aws::String& regionName, bool useDualStack, bool USEast1UseRegionalEndpoint) + Aws::String ForRegion(const Aws::String& regionName, bool useDualStack, bool USEast1UseRegionalEndpoint, const Aws::String& serviceName) { auto hash = Aws::Utils::HashingUtils::HashString(regionName.c_str()); + if (!serviceName.empty()) + { + assert(!useDualStack); + + Aws::StringStream ss; + ss << serviceName; + + if (regionName.size() >= 5 && regionName.compare(0, 5, "fips-") == 0) + { + ss << "-fips." << regionName.substr(5); + } + else if (regionName.size() >= 5 && regionName.compare(regionName.size() - 5, 5, "-fips") == 0) + { + ss << "-fips." << regionName.substr(0, regionName.size() - 5); + } + else if (hash == AWS_GLOBAL_HASH || hash == S3_EXTERNAL_1_HASH) + { + ss << "." << Aws::Region::US_EAST_1; + } + else + { + ss << "." << regionName; + } + ss << ".amazonaws.com"; + if (hash == CN_NORTH_1_HASH || hash == CN_NORTHWEST_1_HASH) + { + ss << ".cn"; + } + return ss.str(); + } + if(!useDualStack) { if(hash == FIPS_US_GOV_WEST_1_HASH) @@ -86,6 +170,10 @@ namespace S3Endpoint { return "s3.amazonaws.com"; } + if (hash == S3_EXTERNAL_1_HASH) + { + return "s3-external-1.amazonaws.com"; + } if(hash == US_EAST_1_HASH) { if (USEast1UseRegionalEndpoint) diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CORSRule.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CORSRule.cpp index dd1b40db2f..7a622df798 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CORSRule.cpp +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CORSRule.cpp @@ -21,6 +21,7 @@ namespace Model { CORSRule::CORSRule() : + m_iDHasBeenSet(false), m_allowedHeadersHasBeenSet(false), m_allowedMethodsHasBeenSet(false), m_allowedOriginsHasBeenSet(false), @@ -31,6 +32,7 @@ CORSRule::CORSRule() : } CORSRule::CORSRule(const XmlNode& xmlNode) : + m_iDHasBeenSet(false), m_allowedHeadersHasBeenSet(false), m_allowedMethodsHasBeenSet(false), m_allowedOriginsHasBeenSet(false), @@ -47,6 +49,12 @@ CORSRule& CORSRule::operator =(const XmlNode& xmlNode) if(!resultNode.IsNull()) { + XmlNode iDNode = resultNode.FirstChild("ID"); + if(!iDNode.IsNull()) + { + m_iD = Aws::Utils::Xml::DecodeEscapedXmlText(iDNode.GetText()); + m_iDHasBeenSet = true; + } XmlNode allowedHeadersNode = resultNode.FirstChild("AllowedHeader"); if(!allowedHeadersNode.IsNull()) { @@ -109,6 +117,12 @@ CORSRule& CORSRule::operator =(const XmlNode& xmlNode) void CORSRule::AddToNode(XmlNode& parentNode) const { Aws::StringStream ss; + if(m_iDHasBeenSet) + { + XmlNode iDNode = parentNode.CreateChildElement("ID"); + iDNode.SetText(m_iD); + } + if(m_allowedHeadersHasBeenSet) { for(const auto& item : m_allowedHeaders) diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CopyObjectRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CopyObjectRequest.cpp index bd9f656890..94493cfdcf 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CopyObjectRequest.cpp +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CopyObjectRequest.cpp @@ -279,8 +279,8 @@ Aws::Http::HeaderValueCollection CopyObjectRequest::GetRequestSpecificHeaders() if(m_bucketKeyEnabledHasBeenSet) { - ss << m_bucketKeyEnabled; - headers.emplace("x-amz-server-side-encryption-bucket-key-enabled", ss.str()); + ss << std::boolalpha << m_bucketKeyEnabled; + headers.emplace("x-amz-server-side-encryption-bucket-key-enabled", ss.str()); ss.str(""); } @@ -324,7 +324,7 @@ Aws::Http::HeaderValueCollection CopyObjectRequest::GetRequestSpecificHeaders() if(m_objectLockRetainUntilDateHasBeenSet) { - headers.emplace("x-amz-object-lock-retain-until-date", m_objectLockRetainUntilDate.ToGmtString(DateFormat::RFC822)); + headers.emplace("x-amz-object-lock-retain-until-date", m_objectLockRetainUntilDate.ToGmtString(DateFormat::ISO_8601)); } if(m_objectLockLegalHoldStatusHasBeenSet) diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CreateBucketRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CreateBucketRequest.cpp index 0cd50dbf6d..0bc3641a33 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CreateBucketRequest.cpp +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CreateBucketRequest.cpp @@ -116,8 +116,8 @@ Aws::Http::HeaderValueCollection CreateBucketRequest::GetRequestSpecificHeaders( if(m_objectLockEnabledForBucketHasBeenSet) { - ss << m_objectLockEnabledForBucket; - headers.emplace("x-amz-bucket-object-lock-enabled", ss.str()); + ss << std::boolalpha << m_objectLockEnabledForBucket; + headers.emplace("x-amz-bucket-object-lock-enabled", ss.str()); ss.str(""); } diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CreateMultipartUploadRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CreateMultipartUploadRequest.cpp index 2347045761..73a88bf2dc 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CreateMultipartUploadRequest.cpp +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CreateMultipartUploadRequest.cpp @@ -225,8 +225,8 @@ Aws::Http::HeaderValueCollection CreateMultipartUploadRequest::GetRequestSpecifi if(m_bucketKeyEnabledHasBeenSet) { - ss << m_bucketKeyEnabled; - headers.emplace("x-amz-server-side-encryption-bucket-key-enabled", ss.str()); + ss << std::boolalpha << m_bucketKeyEnabled; + headers.emplace("x-amz-server-side-encryption-bucket-key-enabled", ss.str()); ss.str(""); } @@ -249,7 +249,7 @@ Aws::Http::HeaderValueCollection CreateMultipartUploadRequest::GetRequestSpecifi if(m_objectLockRetainUntilDateHasBeenSet) { - headers.emplace("x-amz-object-lock-retain-until-date", m_objectLockRetainUntilDate.ToGmtString(DateFormat::RFC822)); + headers.emplace("x-amz-object-lock-retain-until-date", m_objectLockRetainUntilDate.ToGmtString(DateFormat::ISO_8601)); } if(m_objectLockLegalHoldStatusHasBeenSet) diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteObjectRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteObjectRequest.cpp index 08da25d567..6bd83e7cbe 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteObjectRequest.cpp +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteObjectRequest.cpp @@ -82,8 +82,8 @@ Aws::Http::HeaderValueCollection DeleteObjectRequest::GetRequestSpecificHeaders( if(m_bypassGovernanceRetentionHasBeenSet) { - ss << m_bypassGovernanceRetention; - headers.emplace("x-amz-bypass-governance-retention", ss.str()); + ss << std::boolalpha << m_bypassGovernanceRetention; + headers.emplace("x-amz-bypass-governance-retention", ss.str()); ss.str(""); } diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteObjectsRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteObjectsRequest.cpp index 42118cc4b5..3f7759ca0a 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteObjectsRequest.cpp +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteObjectsRequest.cpp @@ -85,8 +85,8 @@ Aws::Http::HeaderValueCollection DeleteObjectsRequest::GetRequestSpecificHeaders if(m_bypassGovernanceRetentionHasBeenSet) { - ss << m_bypassGovernanceRetention; - headers.emplace("x-amz-bypass-governance-retention", ss.str()); + ss << std::boolalpha << m_bypassGovernanceRetention; + headers.emplace("x-amz-bypass-governance-retention", ss.str()); ss.str(""); } diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectResult.cpp index 8c20face8e..f0959a570a 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectResult.cpp +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectResult.cpp @@ -319,7 +319,7 @@ GetObjectResult& GetObjectResult::operator =(Aws::AmazonWebServiceResult<Respons const auto& objectLockRetainUntilDateIter = headers.find("x-amz-object-lock-retain-until-date"); if(objectLockRetainUntilDateIter != headers.end()) { - m_objectLockRetainUntilDate = DateTime(objectLockRetainUntilDateIter->second, DateFormat::RFC822); + m_objectLockRetainUntilDate = DateTime(objectLockRetainUntilDateIter->second, DateFormat::ISO_8601); } const auto& objectLockLegalHoldStatusIter = headers.find("x-amz-object-lock-legal-hold"); diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectTaggingRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectTaggingRequest.cpp index 447a1c4041..fb9a5d55e4 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectTaggingRequest.cpp +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectTaggingRequest.cpp @@ -21,6 +21,8 @@ GetObjectTaggingRequest::GetObjectTaggingRequest() : m_keyHasBeenSet(false), m_versionIdHasBeenSet(false), m_expectedBucketOwnerHasBeenSet(false), + m_requestPayer(RequestPayer::NOT_SET), + m_requestPayerHasBeenSet(false), m_customizedAccessLogTagHasBeenSet(false) { } @@ -70,5 +72,10 @@ Aws::Http::HeaderValueCollection GetObjectTaggingRequest::GetRequestSpecificHead ss.str(""); } + if(m_requestPayerHasBeenSet) + { + headers.emplace("x-amz-request-payer", RequestPayerMapper::GetNameForRequestPayer(m_requestPayer)); + } + return headers; } diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/HeadObjectResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/HeadObjectResult.cpp index ce0305dcaf..f498d56aab 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/HeadObjectResult.cpp +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/HeadObjectResult.cpp @@ -235,7 +235,7 @@ HeadObjectResult& HeadObjectResult::operator =(const Aws::AmazonWebServiceResult const auto& objectLockRetainUntilDateIter = headers.find("x-amz-object-lock-retain-until-date"); if(objectLockRetainUntilDateIter != headers.end()) { - m_objectLockRetainUntilDate = DateTime(objectLockRetainUntilDateIter->second, DateFormat::RFC822); + m_objectLockRetainUntilDate = DateTime(objectLockRetainUntilDateIter->second, DateFormat::ISO_8601); } const auto& objectLockLegalHoldStatusIter = headers.find("x-amz-object-lock-legal-hold"); diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketPolicyRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketPolicyRequest.cpp index ce52fa7cd8..d7fc444c2d 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketPolicyRequest.cpp +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketPolicyRequest.cpp @@ -62,8 +62,8 @@ Aws::Http::HeaderValueCollection PutBucketPolicyRequest::GetRequestSpecificHeade if(m_confirmRemoveSelfBucketAccessHasBeenSet) { - ss << m_confirmRemoveSelfBucketAccess; - headers.emplace("x-amz-confirm-remove-self-bucket-access", ss.str()); + ss << std::boolalpha << m_confirmRemoveSelfBucketAccess; + headers.emplace("x-amz-confirm-remove-self-bucket-access", ss.str()); ss.str(""); } diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectRequest.cpp index 1a3f34b3e8..18cdc3866f 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectRequest.cpp +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectRequest.cpp @@ -231,8 +231,8 @@ Aws::Http::HeaderValueCollection PutObjectRequest::GetRequestSpecificHeaders() c if(m_bucketKeyEnabledHasBeenSet) { - ss << m_bucketKeyEnabled; - headers.emplace("x-amz-server-side-encryption-bucket-key-enabled", ss.str()); + ss << std::boolalpha << m_bucketKeyEnabled; + headers.emplace("x-amz-server-side-encryption-bucket-key-enabled", ss.str()); ss.str(""); } @@ -255,7 +255,7 @@ Aws::Http::HeaderValueCollection PutObjectRequest::GetRequestSpecificHeaders() c if(m_objectLockRetainUntilDateHasBeenSet) { - headers.emplace("x-amz-object-lock-retain-until-date", m_objectLockRetainUntilDate.ToGmtString(DateFormat::RFC822)); + headers.emplace("x-amz-object-lock-retain-until-date", m_objectLockRetainUntilDate.ToGmtString(DateFormat::ISO_8601)); } if(m_objectLockLegalHoldStatusHasBeenSet) diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectRetentionRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectRetentionRequest.cpp index 1c0101a0c4..779ac68bd3 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectRetentionRequest.cpp +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectRetentionRequest.cpp @@ -87,8 +87,8 @@ Aws::Http::HeaderValueCollection PutObjectRetentionRequest::GetRequestSpecificHe if(m_bypassGovernanceRetentionHasBeenSet) { - ss << m_bypassGovernanceRetention; - headers.emplace("x-amz-bypass-governance-retention", ss.str()); + ss << std::boolalpha << m_bypassGovernanceRetention; + headers.emplace("x-amz-bypass-governance-retention", ss.str()); ss.str(""); } diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectTaggingRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectTaggingRequest.cpp index d93c0108ea..612eb0eb8e 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectTaggingRequest.cpp +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectTaggingRequest.cpp @@ -23,6 +23,8 @@ PutObjectTaggingRequest::PutObjectTaggingRequest() : m_contentMD5HasBeenSet(false), m_taggingHasBeenSet(false), m_expectedBucketOwnerHasBeenSet(false), + m_requestPayer(RequestPayer::NOT_SET), + m_requestPayerHasBeenSet(false), m_customizedAccessLogTagHasBeenSet(false) { } @@ -90,5 +92,10 @@ Aws::Http::HeaderValueCollection PutObjectTaggingRequest::GetRequestSpecificHead ss.str(""); } + if(m_requestPayerHasBeenSet) + { + headers.emplace("x-amz-request-payer", RequestPayerMapper::GetNameForRequestPayer(m_requestPayer)); + } + return headers; } diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/WriteGetObjectResponseRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/WriteGetObjectResponseRequest.cpp new file mode 100644 index 0000000000..49893d5823 --- /dev/null +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/WriteGetObjectResponseRequest.cpp @@ -0,0 +1,324 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include <aws/s3/model/WriteGetObjectResponseRequest.h> +#include <aws/core/AmazonWebServiceResult.h> +#include <aws/core/http/URI.h> +#include <aws/core/utils/memory/stl/AWSStringStream.h> +#include <aws/core/utils/HashingUtils.h> + +#include <utility> + +using namespace Aws::S3::Model; +using namespace Aws::Utils::Stream; +using namespace Aws::Utils; +using namespace Aws::Http; +using namespace Aws; + +WriteGetObjectResponseRequest::WriteGetObjectResponseRequest() : + m_requestRouteHasBeenSet(false), + m_requestTokenHasBeenSet(false), + m_statusCode(0), + m_statusCodeHasBeenSet(false), + m_errorCodeHasBeenSet(false), + m_errorMessageHasBeenSet(false), + m_acceptRangesHasBeenSet(false), + m_cacheControlHasBeenSet(false), + m_contentDispositionHasBeenSet(false), + m_contentEncodingHasBeenSet(false), + m_contentLanguageHasBeenSet(false), + m_contentLength(0), + m_contentLengthHasBeenSet(false), + m_contentRangeHasBeenSet(false), + m_deleteMarker(false), + m_deleteMarkerHasBeenSet(false), + m_eTagHasBeenSet(false), + m_expiresHasBeenSet(false), + m_expirationHasBeenSet(false), + m_lastModifiedHasBeenSet(false), + m_missingMeta(0), + m_missingMetaHasBeenSet(false), + m_metadataHasBeenSet(false), + m_objectLockMode(ObjectLockMode::NOT_SET), + m_objectLockModeHasBeenSet(false), + m_objectLockLegalHoldStatus(ObjectLockLegalHoldStatus::NOT_SET), + m_objectLockLegalHoldStatusHasBeenSet(false), + m_objectLockRetainUntilDateHasBeenSet(false), + m_partsCount(0), + m_partsCountHasBeenSet(false), + m_replicationStatus(ReplicationStatus::NOT_SET), + m_replicationStatusHasBeenSet(false), + m_requestCharged(RequestCharged::NOT_SET), + m_requestChargedHasBeenSet(false), + m_restoreHasBeenSet(false), + m_serverSideEncryption(ServerSideEncryption::NOT_SET), + m_serverSideEncryptionHasBeenSet(false), + m_sSECustomerAlgorithmHasBeenSet(false), + m_sSEKMSKeyIdHasBeenSet(false), + m_sSECustomerKeyMD5HasBeenSet(false), + m_storageClass(StorageClass::NOT_SET), + m_storageClassHasBeenSet(false), + m_tagCount(0), + m_tagCountHasBeenSet(false), + m_versionIdHasBeenSet(false), + m_bucketKeyEnabled(false), + m_bucketKeyEnabledHasBeenSet(false), + m_customizedAccessLogTagHasBeenSet(false) +{ +} + + +void WriteGetObjectResponseRequest::AddQueryStringParameters(URI& uri) const +{ + Aws::StringStream ss; + if(!m_customizedAccessLogTag.empty()) + { + // only accept customized LogTag which starts with "x-" + Aws::Map<Aws::String, Aws::String> collectedLogTags; + for(const auto& entry: m_customizedAccessLogTag) + { + if (!entry.first.empty() && !entry.second.empty() && entry.first.substr(0, 2) == "x-") + { + collectedLogTags.emplace(entry.first, entry.second); + } + } + + if (!collectedLogTags.empty()) + { + uri.AddQueryStringParameter(collectedLogTags); + } + } +} + +Aws::Http::HeaderValueCollection WriteGetObjectResponseRequest::GetRequestSpecificHeaders() const +{ + Aws::Http::HeaderValueCollection headers; + Aws::StringStream ss; + if(m_requestRouteHasBeenSet) + { + ss << m_requestRoute; + headers.emplace("x-amz-request-route", ss.str()); + ss.str(""); + } + + if(m_requestTokenHasBeenSet) + { + ss << m_requestToken; + headers.emplace("x-amz-request-token", ss.str()); + ss.str(""); + } + + if(m_statusCodeHasBeenSet) + { + ss << m_statusCode; + headers.emplace("x-amz-fwd-status", ss.str()); + ss.str(""); + } + + if(m_errorCodeHasBeenSet) + { + ss << m_errorCode; + headers.emplace("x-amz-fwd-error-code", ss.str()); + ss.str(""); + } + + if(m_errorMessageHasBeenSet) + { + ss << m_errorMessage; + headers.emplace("x-amz-fwd-error-message", ss.str()); + ss.str(""); + } + + if(m_acceptRangesHasBeenSet) + { + ss << m_acceptRanges; + headers.emplace("x-amz-fwd-header-accept-ranges", ss.str()); + ss.str(""); + } + + if(m_cacheControlHasBeenSet) + { + ss << m_cacheControl; + headers.emplace("x-amz-fwd-header-cache-control", ss.str()); + ss.str(""); + } + + if(m_contentDispositionHasBeenSet) + { + ss << m_contentDisposition; + headers.emplace("x-amz-fwd-header-content-disposition", ss.str()); + ss.str(""); + } + + if(m_contentEncodingHasBeenSet) + { + ss << m_contentEncoding; + headers.emplace("x-amz-fwd-header-content-encoding", ss.str()); + ss.str(""); + } + + if(m_contentLanguageHasBeenSet) + { + ss << m_contentLanguage; + headers.emplace("x-amz-fwd-header-content-language", ss.str()); + ss.str(""); + } + + if(m_contentLengthHasBeenSet) + { + ss << m_contentLength; + headers.emplace("content-length", ss.str()); + ss.str(""); + } + + if(m_contentRangeHasBeenSet) + { + ss << m_contentRange; + headers.emplace("x-amz-fwd-header-content-range", ss.str()); + ss.str(""); + } + + if(m_deleteMarkerHasBeenSet) + { + ss << std::boolalpha << m_deleteMarker; + headers.emplace("x-amz-fwd-header-x-amz-delete-marker", ss.str()); + ss.str(""); + } + + if(m_eTagHasBeenSet) + { + ss << m_eTag; + headers.emplace("x-amz-fwd-header-etag", ss.str()); + ss.str(""); + } + + if(m_expiresHasBeenSet) + { + headers.emplace("x-amz-fwd-header-expires", m_expires.ToGmtString(DateFormat::RFC822)); + } + + if(m_expirationHasBeenSet) + { + ss << m_expiration; + headers.emplace("x-amz-fwd-header-x-amz-expiration", ss.str()); + ss.str(""); + } + + if(m_lastModifiedHasBeenSet) + { + headers.emplace("x-amz-fwd-header-last-modified", m_lastModified.ToGmtString(DateFormat::RFC822)); + } + + if(m_missingMetaHasBeenSet) + { + ss << m_missingMeta; + headers.emplace("x-amz-fwd-header-x-amz-missing-meta", ss.str()); + ss.str(""); + } + + if(m_metadataHasBeenSet) + { + for(const auto& item : m_metadata) + { + ss << "x-amz-meta-" << item.first; + headers.emplace(ss.str(), item.second); + ss.str(""); + } + } + + if(m_objectLockModeHasBeenSet) + { + headers.emplace("x-amz-fwd-header-x-amz-object-lock-mode", ObjectLockModeMapper::GetNameForObjectLockMode(m_objectLockMode)); + } + + if(m_objectLockLegalHoldStatusHasBeenSet) + { + headers.emplace("x-amz-fwd-header-x-amz-object-lock-legal-hold", ObjectLockLegalHoldStatusMapper::GetNameForObjectLockLegalHoldStatus(m_objectLockLegalHoldStatus)); + } + + if(m_objectLockRetainUntilDateHasBeenSet) + { + headers.emplace("x-amz-fwd-header-x-amz-object-lock-retain-until-date", m_objectLockRetainUntilDate.ToGmtString(DateFormat::ISO_8601)); + } + + if(m_partsCountHasBeenSet) + { + ss << m_partsCount; + headers.emplace("x-amz-fwd-header-x-amz-mp-parts-count", ss.str()); + ss.str(""); + } + + if(m_replicationStatusHasBeenSet) + { + headers.emplace("x-amz-fwd-header-x-amz-replication-status", ReplicationStatusMapper::GetNameForReplicationStatus(m_replicationStatus)); + } + + if(m_requestChargedHasBeenSet) + { + headers.emplace("x-amz-fwd-header-x-amz-request-charged", RequestChargedMapper::GetNameForRequestCharged(m_requestCharged)); + } + + if(m_restoreHasBeenSet) + { + ss << m_restore; + headers.emplace("x-amz-fwd-header-x-amz-restore", ss.str()); + ss.str(""); + } + + if(m_serverSideEncryptionHasBeenSet) + { + headers.emplace("x-amz-fwd-header-x-amz-server-side-encryption", ServerSideEncryptionMapper::GetNameForServerSideEncryption(m_serverSideEncryption)); + } + + if(m_sSECustomerAlgorithmHasBeenSet) + { + ss << m_sSECustomerAlgorithm; + headers.emplace("x-amz-fwd-header-x-amz-server-side-encryption-customer-algorithm", ss.str()); + ss.str(""); + } + + if(m_sSEKMSKeyIdHasBeenSet) + { + ss << m_sSEKMSKeyId; + headers.emplace("x-amz-fwd-header-x-amz-server-side-encryption-aws-kms-key-id", ss.str()); + ss.str(""); + } + + if(m_sSECustomerKeyMD5HasBeenSet) + { + ss << m_sSECustomerKeyMD5; + headers.emplace("x-amz-fwd-header-x-amz-server-side-encryption-customer-key-md5", ss.str()); + ss.str(""); + } + + if(m_storageClassHasBeenSet) + { + headers.emplace("x-amz-fwd-header-x-amz-storage-class", StorageClassMapper::GetNameForStorageClass(m_storageClass)); + } + + if(m_tagCountHasBeenSet) + { + ss << m_tagCount; + headers.emplace("x-amz-fwd-header-x-amz-tagging-count", ss.str()); + ss.str(""); + } + + if(m_versionIdHasBeenSet) + { + ss << m_versionId; + headers.emplace("x-amz-fwd-header-x-amz-version-id", ss.str()); + ss.str(""); + } + + if(m_bucketKeyEnabledHasBeenSet) + { + ss << std::boolalpha << m_bucketKeyEnabled; + headers.emplace("x-amz-fwd-header-x-amz-server-side-encryption-bucket-key-enabled", ss.str()); + ss.str(""); + } + + return headers; + +} diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/ya.make b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/ya.make index 954f698440..7cd505c3fe 100644 --- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/ya.make +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/ya.make @@ -35,7 +35,7 @@ CFLAGS( -DAWS_IO_USE_IMPORT_EXPORT -DAWS_SDK_VERSION_MAJOR=1 -DAWS_SDK_VERSION_MINOR=8 - -DAWS_SDK_VERSION_PATCH=113 + -DAWS_SDK_VERSION_PATCH=186 -DAWS_USE_EPOLL -DENABLE_CURL_CLIENT -DENABLE_OPENSSL_ENCRYPTION @@ -392,6 +392,7 @@ SRCS( source/model/UploadPartResult.cpp source/model/VersioningConfiguration.cpp source/model/WebsiteConfiguration.cpp + source/model/WriteGetObjectResponseRequest.cpp ) END() diff --git a/contrib/libs/aws-sdk-cpp/ya.make b/contrib/libs/aws-sdk-cpp/ya.make index 504fe8ad68..05dd6f488b 100644 --- a/contrib/libs/aws-sdk-cpp/ya.make +++ b/contrib/libs/aws-sdk-cpp/ya.make @@ -2,9 +2,9 @@ OWNER(orivej shindo g:cpp-contrib) -VERSION(1.8.113) +VERSION(1.8.186) -ORIGINAL_SOURCE(https://github.com/awslabs/aws-sdk-cpp/archive/1.8.113.tar.gz) +ORIGINAL_SOURCE(https://github.com/aws/aws-sdk-cpp/archive/1.8.186.tar.gz) RECURSE( aws-cpp-sdk-core diff --git a/contrib/libs/expat/.yandex_meta/devtools.copyrights.report b/contrib/libs/expat/.yandex_meta/devtools.copyrights.report index fe869ba35c..fb74cc644c 100644 --- a/contrib/libs/expat/.yandex_meta/devtools.copyrights.report +++ b/contrib/libs/expat/.yandex_meta/devtools.copyrights.report @@ -60,8 +60,6 @@ BELONGS ya.make Files with this license: lib/internal.h [28:34] lib/xmlrole.c [9:19] - lib/xmltok.c [9:24] - lib/xmltok_impl.c [9:19] KEEP COPYRIGHT_SERVICE_LABEL 12db9abedf3e0b98a87d6f4ec1377a19 BELONGS ya.make @@ -174,6 +172,18 @@ BELONGS ya.make Files with this license: lib/xmlparse.c [9:37] +KEEP COPYRIGHT_SERVICE_LABEL 4010f67351b9e656cc500aa367c0c393 +BELONGS ya.make + Note: matched license text is too long. Read it in the source files. + Scancode info: + Original SPDX id: COPYRIGHT_SERVICE_LABEL + Score : 100.00 + Match type : COPYRIGHT + Files with this license: + lib/xmlparse.c [9:37] + lib/xmlrole.c [9:19] + lib/xmltok.c [9:24] + KEEP COPYRIGHT_SERVICE_LABEL 52b42ccd5b2debda3846c7aad55185e7 BELONGS ya.make Note: matched license text is too long. Read it in the source files. @@ -351,18 +361,6 @@ BELONGS ya.make lib/xmltok.c [9:24] lib/xmltok_impl.c [9:19] -KEEP COPYRIGHT_SERVICE_LABEL 9b3bf60db417b96ccbf65e39aa3d4e63 -BELONGS ya.make - Note: matched license text is too long. Read it in the source files. - Scancode info: - Original SPDX id: COPYRIGHT_SERVICE_LABEL - Score : 100.00 - Match type : COPYRIGHT - Files with this license: - lib/xmlparse.c [9:37] - lib/xmlrole.c [9:19] - lib/xmltok.c [9:24] - KEEP COPYRIGHT_SERVICE_LABEL 9fdb85dcaaf74d518b27233b48fffa52 BELONGS ya.make Note: matched license text is too long. Read it in the source files. @@ -448,6 +446,8 @@ BELONGS ya.make Files with this license: expat.h [9:18] lib/xmlparse.c [9:37] + lib/xmltok.c [9:24] + lib/xmltok_impl.c [9:19] KEEP COPYRIGHT_SERVICE_LABEL acbc3573ff7fdf431f94f6aea99de1e0 BELONGS ya.make diff --git a/contrib/libs/expat/.yandex_meta/licenses.list.txt b/contrib/libs/expat/.yandex_meta/licenses.list.txt index 9bb32b586e..1d32174e8e 100644 --- a/contrib/libs/expat/.yandex_meta/licenses.list.txt +++ b/contrib/libs/expat/.yandex_meta/licenses.list.txt @@ -34,7 +34,7 @@ Copyright (c) 2000-2006 Fred L. Drake, Jr. <fdrake@users.sourceforge.net> Copyright (c) 2001-2002 Greg Stein <gstein@users.sourceforge.net> Copyright (c) 2002-2016 Karl Waclawek <karl@waclawek.net> - Copyright (c) 2005-2009 Steven Solie <ssolie@users.sourceforge.net> + Copyright (c) 2005-2009 Steven Solie <steven@solie.ca> Copyright (c) 2016 Eric Rahm <erahm@mozilla.com> Copyright (c) 2016-2022 Sebastian Pipping <sebastian@pipping.org> Copyright (c) 2016 Gaurav <g.gupta@samsung.com> @@ -66,8 +66,8 @@ Copyright (c) 2001-2003 Fred L. Drake, Jr. <fdrake@users.sourceforge.net> Copyright (c) 2002 Greg Stein <gstein@users.sourceforge.net> Copyright (c) 2002-2016 Karl Waclawek <karl@waclawek.net> - Copyright (c) 2005-2009 Steven Solie <ssolie@users.sourceforge.net> - Copyright (c) 2016-2021 Sebastian Pipping <sebastian@pipping.org> + Copyright (c) 2005-2009 Steven Solie <steven@solie.ca> + Copyright (c) 2016-2022 Sebastian Pipping <sebastian@pipping.org> Copyright (c) 2016 Pascal Cuoq <cuoq@trust-in-soft.com> Copyright (c) 2016 Don Lewis <truckman@apache.org> Copyright (c) 2017 Rhodri James <rhodri@wildebeest.org.uk> @@ -94,7 +94,7 @@ Copyright (c) 2000 Clark Cooper <coopercc@users.sourceforge.net> Copyright (c) 2002 Fred L. Drake, Jr. <fdrake@users.sourceforge.net> Copyright (c) 2002-2016 Karl Waclawek <karl@waclawek.net> - Copyright (c) 2016-2021 Sebastian Pipping <sebastian@pipping.org> + Copyright (c) 2016-2022 Sebastian Pipping <sebastian@pipping.org> Copyright (c) 2017 Rhodri James <rhodri@wildebeest.org.uk> Copyright (c) 2018 Benjamin Peterson <benjamin@python.org> Copyright (c) 2018 Anton Maklakov <antmak.pub@gmail.com> diff --git a/contrib/libs/expat/Changes b/contrib/libs/expat/Changes index 9c1b5c7bc2..40127e1b76 100644 --- a/contrib/libs/expat/Changes +++ b/contrib/libs/expat/Changes @@ -2,6 +2,69 @@ NOTE: We are looking for help with a few things: https://github.com/libexpat/libexpat/labels/help%20wanted If you can help, please get in touch. Thanks! +Release 2.4.6 Sun February 20 2022 + Bug fixes: + #566 Fix a regression introduced by the fix for CVE-2022-25313 + in release 2.4.5 that affects applications that (1) + call function XML_SetElementDeclHandler and (2) are + parsing XML that contains nested element declarations + (e.g. "<!ELEMENT junk ((bar|foo|xyz+), zebra*)>"). + + Other changes: + #567 #568 Version info bumped from 9:5:8 to 9:6:8; + see https://verbump.de/ for what these numbers do + + Special thanks to: + Matt Sergeant + Samanta Navarro + Sergei Trofimovich + and + NixOS + Perl XML::Parser + +Release 2.4.5 Fri February 18 2022 + Security fixes: + #562 CVE-2022-25235 -- Passing malformed 2- and 3-byte UTF-8 + sequences (e.g. from start tag names) to the XML + processing application on top of Expat can cause + arbitrary damage (e.g. code execution) depending + on how invalid UTF-8 is handled inside the XML + processor; validation was not their job but Expat's. + Exploits with code execution are known to exist. + #561 CVE-2022-25236 -- Passing (one or more) namespace separator + characters in "xmlns[:prefix]" attribute values + made Expat send malformed tag names to the XML + processor on top of Expat which can cause + arbitrary damage (e.g. code execution) depending + on such unexpectable cases are handled inside the XML + processor; validation was not their job but Expat's. + Exploits with code execution are known to exist. + #558 CVE-2022-25313 -- Fix stack exhaustion in doctype parsing + that could be triggered by e.g. a 2 megabytes + file with a large number of opening braces. + Expected impact is denial of service or potentially + arbitrary code execution. + #560 CVE-2022-25314 -- Fix integer overflow in function copyString; + only affects the encoding name parameter at parser creation + time which is often hardcoded (rather than user input), + takes a value in the gigabytes to trigger, and a 64-bit + machine. Expected impact is denial of service. + #559 CVE-2022-25315 -- Fix integer overflow in function storeRawNames; + needs input in the gigabytes and a 64-bit machine. + Expected impact is denial of service or potentially + arbitrary code execution. + + Other changes: + #557 #564 Version info bumped from 9:4:8 to 9:5:8; + see https://verbump.de/ for what these numbers do + + Special thanks to: + Ivan Fratric + Samanta Navarro + and + Google Project Zero + JetBrains + Release 2.4.4 Sun January 30 2022 Security fixes: #550 CVE-2022-23852 -- Fix signed integer overflow diff --git a/contrib/libs/expat/README.md b/contrib/libs/expat/README.md index 00e6cca22d..959c4a6e94 100644 --- a/contrib/libs/expat/README.md +++ b/contrib/libs/expat/README.md @@ -5,7 +5,7 @@ [![Downloads GitHub](https://img.shields.io/github/downloads/libexpat/libexpat/total?label=Downloads%20GitHub)](https://github.com/libexpat/libexpat/releases) -# Expat, Release 2.4.4 +# Expat, Release 2.4.6 This is Expat, a C library for parsing XML, started by [James Clark](https://en.wikipedia.org/wiki/James_Clark_%28programmer%29) in 1997. diff --git a/contrib/libs/expat/expat.h b/contrib/libs/expat/expat.h index 4c5704fd93..46a0e1bcd2 100644 --- a/contrib/libs/expat/expat.h +++ b/contrib/libs/expat/expat.h @@ -1041,7 +1041,7 @@ XML_SetBillionLaughsAttackProtectionActivationThreshold( */ #define XML_MAJOR_VERSION 2 #define XML_MINOR_VERSION 4 -#define XML_MICRO_VERSION 4 +#define XML_MICRO_VERSION 6 #ifdef __cplusplus } diff --git a/contrib/libs/expat/expat_config.h b/contrib/libs/expat/expat_config.h index 8f890fed02..2a77c19a11 100644 --- a/contrib/libs/expat/expat_config.h +++ b/contrib/libs/expat/expat_config.h @@ -77,7 +77,7 @@ #define PACKAGE_NAME "expat" /* Define to the full name and version of this package. */ -#define PACKAGE_STRING "expat 2.4.4" +#define PACKAGE_STRING "expat 2.4.6" /* Define to the one symbol short name of this package. */ #define PACKAGE_TARNAME "expat" @@ -86,7 +86,7 @@ #define PACKAGE_URL "" /* Define to the version of this package. */ -#define PACKAGE_VERSION "2.4.4" +#define PACKAGE_VERSION "2.4.6" /* Define to 1 if all of the C90 standard headers exist (not just the ones required in a freestanding environment). This macro is provided for @@ -94,7 +94,7 @@ #define STDC_HEADERS 1 /* Version number of package */ -#define VERSION "2.4.4" +#define VERSION "2.4.6" /* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most significant byte first (like Motorola and SPARC, unlike Intel). */ diff --git a/contrib/libs/expat/lib/xmlparse.c b/contrib/libs/expat/lib/xmlparse.c index db0efbab0f..4e50618708 100644 --- a/contrib/libs/expat/lib/xmlparse.c +++ b/contrib/libs/expat/lib/xmlparse.c @@ -1,4 +1,4 @@ -/* 2e2c8ce5f11a473d65ec313ab20ceee6afefb355f5405afc06e7204e2e41c8c0 (2.4.4+) +/* a30d2613dcfdef81475a9d1a349134d2d42722172fdaa7d5bb12ed2aa74b9596 (2.4.6+) __ __ _ ___\ \/ /_ __ __ _| |_ / _ \\ /| '_ \ / _` | __| @@ -11,7 +11,7 @@ Copyright (c) 2000-2006 Fred L. Drake, Jr. <fdrake@users.sourceforge.net> Copyright (c) 2001-2002 Greg Stein <gstein@users.sourceforge.net> Copyright (c) 2002-2016 Karl Waclawek <karl@waclawek.net> - Copyright (c) 2005-2009 Steven Solie <ssolie@users.sourceforge.net> + Copyright (c) 2005-2009 Steven Solie <steven@solie.ca> Copyright (c) 2016 Eric Rahm <erahm@mozilla.com> Copyright (c) 2016-2022 Sebastian Pipping <sebastian@pipping.org> Copyright (c) 2016 Gaurav <g.gupta@samsung.com> @@ -718,8 +718,7 @@ XML_ParserCreate(const XML_Char *encodingName) { XML_Parser XMLCALL XML_ParserCreateNS(const XML_Char *encodingName, XML_Char nsSep) { - XML_Char tmp[2]; - *tmp = nsSep; + XML_Char tmp[2] = {nsSep, 0}; return XML_ParserCreate_MM(encodingName, NULL, tmp); } @@ -1344,8 +1343,7 @@ XML_ExternalEntityParserCreate(XML_Parser oldParser, const XML_Char *context, would be otherwise. */ if (parser->m_ns) { - XML_Char tmp[2]; - *tmp = parser->m_namespaceSeparator; + XML_Char tmp[2] = {parser->m_namespaceSeparator, 0}; parser = parserCreate(encodingName, &parser->m_mem, tmp, newDtd); } else { parser = parserCreate(encodingName, &parser->m_mem, NULL, newDtd); @@ -2563,6 +2561,7 @@ storeRawNames(XML_Parser parser) { while (tag) { int bufSize; int nameLen = sizeof(XML_Char) * (tag->name.strLen + 1); + size_t rawNameLen; char *rawNameBuf = tag->buf + nameLen; /* Stop if already stored. Since m_tagStack is a stack, we can stop at the first entry that has already been copied; everything @@ -2574,7 +2573,11 @@ storeRawNames(XML_Parser parser) { /* For re-use purposes we need to ensure that the size of tag->buf is a multiple of sizeof(XML_Char). */ - bufSize = nameLen + ROUND_UP(tag->rawNameLength, sizeof(XML_Char)); + rawNameLen = ROUND_UP(tag->rawNameLength, sizeof(XML_Char)); + /* Detect and prevent integer overflow. */ + if (rawNameLen > (size_t)INT_MAX - nameLen) + return XML_FALSE; + bufSize = nameLen + (int)rawNameLen; if (bufSize > tag->bufEnd - tag->buf) { char *temp = (char *)REALLOC(parser, tag->buf, bufSize); if (temp == NULL) @@ -3756,6 +3759,17 @@ addBinding(XML_Parser parser, PREFIX *prefix, const ATTRIBUTE_ID *attId, if (! mustBeXML && isXMLNS && (len > xmlnsLen || uri[len] != xmlnsNamespace[len])) isXMLNS = XML_FALSE; + + // NOTE: While Expat does not validate namespace URIs against RFC 3986, + // we have to at least make sure that the XML processor on top of + // Expat (that is splitting tag names by namespace separator into + // 2- or 3-tuples (uri-local or uri-local-prefix)) cannot be confused + // by an attacker putting additional namespace separator characters + // into namespace declarations. That would be ambiguous and not to + // be expected. + if (parser->m_ns && (uri[len] == parser->m_namespaceSeparator)) { + return XML_ERROR_SYNTAX; + } } isXML = isXML && len == xmlLen; isXMLNS = isXMLNS && len == xmlnsLen; @@ -7317,44 +7331,15 @@ nextScaffoldPart(XML_Parser parser) { return next; } -static void -build_node(XML_Parser parser, int src_node, XML_Content *dest, - XML_Content **contpos, XML_Char **strpos) { - DTD *const dtd = parser->m_dtd; /* save one level of indirection */ - dest->type = dtd->scaffold[src_node].type; - dest->quant = dtd->scaffold[src_node].quant; - if (dest->type == XML_CTYPE_NAME) { - const XML_Char *src; - dest->name = *strpos; - src = dtd->scaffold[src_node].name; - for (;;) { - *(*strpos)++ = *src; - if (! *src) - break; - src++; - } - dest->numchildren = 0; - dest->children = NULL; - } else { - unsigned int i; - int cn; - dest->numchildren = dtd->scaffold[src_node].childcnt; - dest->children = *contpos; - *contpos += dest->numchildren; - for (i = 0, cn = dtd->scaffold[src_node].firstchild; i < dest->numchildren; - i++, cn = dtd->scaffold[cn].nextsib) { - build_node(parser, cn, &(dest->children[i]), contpos, strpos); - } - dest->name = NULL; - } -} - static XML_Content * build_model(XML_Parser parser) { + /* Function build_model transforms the existing parser->m_dtd->scaffold + * array of CONTENT_SCAFFOLD tree nodes into a new array of + * XML_Content tree nodes followed by a gapless list of zero-terminated + * strings. */ DTD *const dtd = parser->m_dtd; /* save one level of indirection */ XML_Content *ret; - XML_Content *cpos; - XML_Char *str; + XML_Char *str; /* the current string writing location */ /* Detect and prevent integer overflow. * The preprocessor guard addresses the "always false" warning @@ -7380,10 +7365,96 @@ build_model(XML_Parser parser) { if (! ret) return NULL; - str = (XML_Char *)(&ret[dtd->scaffCount]); - cpos = &ret[1]; + /* What follows is an iterative implementation (of what was previously done + * recursively in a dedicated function called "build_node". The old recursive + * build_node could be forced into stack exhaustion from input as small as a + * few megabyte, and so that was a security issue. Hence, a function call + * stack is avoided now by resolving recursion.) + * + * The iterative approach works as follows: + * + * - We have two writing pointers, both walking up the result array; one does + * the work, the other creates "jobs" for its colleague to do, and leads + * the way: + * + * - The faster one, pointer jobDest, always leads and writes "what job + * to do" by the other, once they reach that place in the + * array: leader "jobDest" stores the source node array index (relative + * to array dtd->scaffold) in field "numchildren". + * + * - The slower one, pointer dest, looks at the value stored in the + * "numchildren" field (which actually holds a source node array index + * at that time) and puts the real data from dtd->scaffold in. + * + * - Before the loop starts, jobDest writes source array index 0 + * (where the root node is located) so that dest will have something to do + * when it starts operation. + * + * - Whenever nodes with children are encountered, jobDest appends + * them as new jobs, in order. As a result, tree node siblings are + * adjacent in the resulting array, for example: + * + * [0] root, has two children + * [1] first child of 0, has three children + * [3] first child of 1, does not have children + * [4] second child of 1, does not have children + * [5] third child of 1, does not have children + * [2] second child of 0, does not have children + * + * Or (the same data) presented in flat array view: + * + * [0] root, has two children + * + * [1] first child of 0, has three children + * [2] second child of 0, does not have children + * + * [3] first child of 1, does not have children + * [4] second child of 1, does not have children + * [5] third child of 1, does not have children + * + * - The algorithm repeats until all target array indices have been processed. + */ + XML_Content *dest = ret; /* tree node writing location, moves upwards */ + XML_Content *const destLimit = &ret[dtd->scaffCount]; + XML_Content *jobDest = ret; /* next free writing location in target array */ + str = (XML_Char *)&ret[dtd->scaffCount]; + + /* Add the starting job, the root node (index 0) of the source tree */ + (jobDest++)->numchildren = 0; + + for (; dest < destLimit; dest++) { + /* Retrieve source tree array index from job storage */ + const int src_node = (int)dest->numchildren; + + /* Convert item */ + dest->type = dtd->scaffold[src_node].type; + dest->quant = dtd->scaffold[src_node].quant; + if (dest->type == XML_CTYPE_NAME) { + const XML_Char *src; + dest->name = str; + src = dtd->scaffold[src_node].name; + for (;;) { + *str++ = *src; + if (! *src) + break; + src++; + } + dest->numchildren = 0; + dest->children = NULL; + } else { + unsigned int i; + int cn; + dest->name = NULL; + dest->numchildren = dtd->scaffold[src_node].childcnt; + dest->children = jobDest; + + /* Append scaffold indices of children to array */ + for (i = 0, cn = dtd->scaffold[src_node].firstchild; + i < dest->numchildren; i++, cn = dtd->scaffold[cn].nextsib) + (jobDest++)->numchildren = (unsigned int)cn; + } + } - build_node(parser, 0, ret, &cpos, &str); return ret; } @@ -7412,7 +7483,7 @@ getElementType(XML_Parser parser, const ENCODING *enc, const char *ptr, static XML_Char * copyString(const XML_Char *s, const XML_Memory_Handling_Suite *memsuite) { - int charsRequired = 0; + size_t charsRequired = 0; XML_Char *result; /* First determine how long the string is */ diff --git a/contrib/libs/expat/lib/xmlrole.c b/contrib/libs/expat/lib/xmlrole.c index 77746ee42d..3f0f5c150c 100644 --- a/contrib/libs/expat/lib/xmlrole.c +++ b/contrib/libs/expat/lib/xmlrole.c @@ -11,7 +11,7 @@ Copyright (c) 2002 Greg Stein <gstein@users.sourceforge.net> Copyright (c) 2002-2006 Karl Waclawek <karl@waclawek.net> Copyright (c) 2002-2003 Fred L. Drake, Jr. <fdrake@users.sourceforge.net> - Copyright (c) 2005-2009 Steven Solie <ssolie@users.sourceforge.net> + Copyright (c) 2005-2009 Steven Solie <steven@solie.ca> Copyright (c) 2016-2021 Sebastian Pipping <sebastian@pipping.org> Copyright (c) 2017 Rhodri James <rhodri@wildebeest.org.uk> Copyright (c) 2019 David Loffredo <loffredo@steptools.com> diff --git a/contrib/libs/expat/lib/xmltok.c b/contrib/libs/expat/lib/xmltok.c index 502ca1adc3..c659983b40 100644 --- a/contrib/libs/expat/lib/xmltok.c +++ b/contrib/libs/expat/lib/xmltok.c @@ -11,8 +11,8 @@ Copyright (c) 2001-2003 Fred L. Drake, Jr. <fdrake@users.sourceforge.net> Copyright (c) 2002 Greg Stein <gstein@users.sourceforge.net> Copyright (c) 2002-2016 Karl Waclawek <karl@waclawek.net> - Copyright (c) 2005-2009 Steven Solie <ssolie@users.sourceforge.net> - Copyright (c) 2016-2021 Sebastian Pipping <sebastian@pipping.org> + Copyright (c) 2005-2009 Steven Solie <steven@solie.ca> + Copyright (c) 2016-2022 Sebastian Pipping <sebastian@pipping.org> Copyright (c) 2016 Pascal Cuoq <cuoq@trust-in-soft.com> Copyright (c) 2016 Don Lewis <truckman@apache.org> Copyright (c) 2017 Rhodri James <rhodri@wildebeest.org.uk> @@ -98,11 +98,6 @@ + ((((byte)[1]) & 3) << 1) + ((((byte)[2]) >> 5) & 1)] \ & (1u << (((byte)[2]) & 0x1F))) -#define UTF8_GET_NAMING(pages, p, n) \ - ((n) == 2 \ - ? UTF8_GET_NAMING2(pages, (const unsigned char *)(p)) \ - : ((n) == 3 ? UTF8_GET_NAMING3(pages, (const unsigned char *)(p)) : 0)) - /* Detection of invalid UTF-8 sequences is based on Table 3.1B of Unicode 3.2: http://www.unicode.org/unicode/reports/tr28/ with the additional restriction of not allowing the Unicode diff --git a/contrib/libs/expat/lib/xmltok_impl.c b/contrib/libs/expat/lib/xmltok_impl.c index 0430591b42..4072b06497 100644 --- a/contrib/libs/expat/lib/xmltok_impl.c +++ b/contrib/libs/expat/lib/xmltok_impl.c @@ -10,7 +10,7 @@ Copyright (c) 2000 Clark Cooper <coopercc@users.sourceforge.net> Copyright (c) 2002 Fred L. Drake, Jr. <fdrake@users.sourceforge.net> Copyright (c) 2002-2016 Karl Waclawek <karl@waclawek.net> - Copyright (c) 2016-2021 Sebastian Pipping <sebastian@pipping.org> + Copyright (c) 2016-2022 Sebastian Pipping <sebastian@pipping.org> Copyright (c) 2017 Rhodri James <rhodri@wildebeest.org.uk> Copyright (c) 2018 Benjamin Peterson <benjamin@python.org> Copyright (c) 2018 Anton Maklakov <antmak.pub@gmail.com> @@ -69,7 +69,7 @@ case BT_LEAD##n: \ if (end - ptr < n) \ return XML_TOK_PARTIAL_CHAR; \ - if (! IS_NAME_CHAR(enc, ptr, n)) { \ + if (IS_INVALID_CHAR(enc, ptr, n) || ! IS_NAME_CHAR(enc, ptr, n)) { \ *nextTokPtr = ptr; \ return XML_TOK_INVALID; \ } \ @@ -98,7 +98,7 @@ case BT_LEAD##n: \ if (end - ptr < n) \ return XML_TOK_PARTIAL_CHAR; \ - if (! IS_NMSTRT_CHAR(enc, ptr, n)) { \ + if (IS_INVALID_CHAR(enc, ptr, n) || ! IS_NMSTRT_CHAR(enc, ptr, n)) { \ *nextTokPtr = ptr; \ return XML_TOK_INVALID; \ } \ @@ -1142,6 +1142,10 @@ PREFIX(prologTok)(const ENCODING *enc, const char *ptr, const char *end, case BT_LEAD##n: \ if (end - ptr < n) \ return XML_TOK_PARTIAL_CHAR; \ + if (IS_INVALID_CHAR(enc, ptr, n)) { \ + *nextTokPtr = ptr; \ + return XML_TOK_INVALID; \ + } \ if (IS_NMSTRT_CHAR(enc, ptr, n)) { \ ptr += n; \ tok = XML_TOK_NAME; \ @@ -1270,7 +1274,7 @@ PREFIX(attributeValueTok)(const ENCODING *enc, const char *ptr, const char *end, switch (BYTE_TYPE(enc, ptr)) { # define LEAD_CASE(n) \ case BT_LEAD##n: \ - ptr += n; \ + ptr += n; /* NOTE: The encoding has already been validated. */ \ break; LEAD_CASE(2) LEAD_CASE(3) @@ -1339,7 +1343,7 @@ PREFIX(entityValueTok)(const ENCODING *enc, const char *ptr, const char *end, switch (BYTE_TYPE(enc, ptr)) { # define LEAD_CASE(n) \ case BT_LEAD##n: \ - ptr += n; \ + ptr += n; /* NOTE: The encoding has already been validated. */ \ break; LEAD_CASE(2) LEAD_CASE(3) @@ -1518,7 +1522,7 @@ PREFIX(getAtts)(const ENCODING *enc, const char *ptr, int attsMax, state = inName; \ } # define LEAD_CASE(n) \ - case BT_LEAD##n: \ + case BT_LEAD##n: /* NOTE: The encoding has already been validated. */ \ START_NAME ptr += (n - MINBPC(enc)); \ break; LEAD_CASE(2) @@ -1730,7 +1734,7 @@ PREFIX(nameLength)(const ENCODING *enc, const char *ptr) { switch (BYTE_TYPE(enc, ptr)) { # define LEAD_CASE(n) \ case BT_LEAD##n: \ - ptr += n; \ + ptr += n; /* NOTE: The encoding has already been validated. */ \ break; LEAD_CASE(2) LEAD_CASE(3) @@ -1775,7 +1779,7 @@ PREFIX(updatePosition)(const ENCODING *enc, const char *ptr, const char *end, switch (BYTE_TYPE(enc, ptr)) { # define LEAD_CASE(n) \ case BT_LEAD##n: \ - ptr += n; \ + ptr += n; /* NOTE: The encoding has already been validated. */ \ pos->columnNumber++; \ break; LEAD_CASE(2) diff --git a/contrib/libs/expat/ya.make b/contrib/libs/expat/ya.make index 8128621e60..413631a5de 100644 --- a/contrib/libs/expat/ya.make +++ b/contrib/libs/expat/ya.make @@ -7,9 +7,9 @@ OWNER( g:cpp-contrib ) -VERSION(2.4.4) +VERSION(2.4.6) -ORIGINAL_SOURCE(https://github.com/libexpat/libexpat/releases/download/R_2_4_4/expat-2.4.4.tar.xz) +ORIGINAL_SOURCE(https://github.com/libexpat/libexpat/releases/download/R_2_4_6/expat-2.4.6.tar.xz) LICENSE( CC0-1.0 AND diff --git a/contrib/python/jmespath/.yandex_meta/yamaker.yaml b/contrib/python/jmespath/.yandex_meta/yamaker.yaml new file mode 100644 index 0000000000..2444984920 --- /dev/null +++ b/contrib/python/jmespath/.yandex_meta/yamaker.yaml @@ -0,0 +1,2 @@ +keep: +- tests/.+ diff --git a/contrib/python/jmespath/ya.make b/contrib/python/jmespath/ya.make index 1ffbd236bc..c29ceee917 100644 --- a/contrib/python/jmespath/ya.make +++ b/contrib/python/jmespath/ya.make @@ -1,3 +1,5 @@ +# Generated by devtools/yamaker (pypi). + PY23_LIBRARY() OWNER(g:python-contrib) diff --git a/contrib/python/xmltodict/README.md b/contrib/python/xmltodict/README.md index 59177da90b..ba3397e556 100644 --- a/contrib/python/xmltodict/README.md +++ b/contrib/python/xmltodict/README.md @@ -48,10 +48,10 @@ By default, `xmltodict` does no XML namespace processing (it just treats namespa ... </root> ... """ >>> xmltodict.parse(xml, process_namespaces=True) == { -... 'http://defaultns.com/:root': { -... 'http://defaultns.com/:x': '1', -... 'http://a.com/:y': '2', -... 'http://b.com/:z': '3', +... 'http://defaultns.com/|root': { +... 'http://defaultns.com/|x': '1', +... 'http://a.com/|y': '2', +... 'http://b.com/|z': '3', ... } ... } True @@ -67,8 +67,8 @@ It also lets you collapse certain namespaces to shorthand prefixes, or skip them >>> xmltodict.parse(xml, process_namespaces=True, namespaces=namespaces) == { ... 'root': { ... 'x': '1', -... 'ns_a:y': '2', -... 'http://b.com/:z': '3', +... 'ns_a|y': '2', +... 'http://b.com/|z': '3', ... }, ... } True diff --git a/contrib/python/xmltodict/patches/01-pr-290.patch b/contrib/python/xmltodict/patches/01-pr-290.patch new file mode 100644 index 0000000000..de530c96ed --- /dev/null +++ b/contrib/python/xmltodict/patches/01-pr-290.patch @@ -0,0 +1,162 @@ +From b9f4e5f91e1821dbffe3db27c1dd6b6e76f4cbec Mon Sep 17 00:00:00 2001 +From: Sebastian Pipping <sebastian@pipping.org> +Date: Sun, 27 Feb 2022 02:07:55 +0100 +Subject: [PATCH] Switch namespace separator from colon to pipe + +--- + README.md | 12 ++++++------ + tests/test_dicttoxml.py | 10 +++++----- + tests/test_xmltodict.py | 16 ++++++++-------- + xmltodict.py | 10 +++++----- + 4 files changed, 24 insertions(+), 24 deletions(-) + +diff --git a/README.md b/README.md +index ab63401..9309837 100644 +--- contrib/python/xmltodict/README.md ++++ contrib/python/xmltodict/README.md +@@ -48,10 +48,10 @@ By default, `xmltodict` does no XML namespace processing (it just treats namespa + ... </root> + ... """ + >>> xmltodict.parse(xml, process_namespaces=True) == { +-... 'http://defaultns.com/:root': { +-... 'http://defaultns.com/:x': '1', +-... 'http://a.com/:y': '2', +-... 'http://b.com/:z': '3', ++... 'http://defaultns.com/|root': { ++... 'http://defaultns.com/|x': '1', ++... 'http://a.com/|y': '2', ++... 'http://b.com/|z': '3', + ... } + ... } + True +@@ -67,8 +67,8 @@ It also lets you collapse certain namespaces to shorthand prefixes, or skip them + >>> xmltodict.parse(xml, process_namespaces=True, namespaces=namespaces) == { + ... 'root': { + ... 'x': '1', +-... 'ns_a:y': '2', +-... 'http://b.com/:z': '3', ++... 'ns_a|y': '2', ++... 'http://b.com/|z': '3', + ... }, + ... } + True +diff --git a/tests/test_dicttoxml.py b/tests/test_dicttoxml.py +index 7fc2171..dd74989 100644 +--- contrib/python/xmltodict/tests/test_dicttoxml.py ++++ contrib/python/xmltodict/tests/test_dicttoxml.py +@@ -178,18 +178,18 @@ def test_short_empty_elements(self): + + def test_namespace_support(self): + obj = OrderedDict(( +- ('http://defaultns.com/:root', OrderedDict(( ++ ('http://defaultns.com/|root', OrderedDict(( + ('@xmlns', OrderedDict(( + ('', 'http://defaultns.com/'), + ('a', 'http://a.com/'), + ('b', 'http://b.com/'), + ))), +- ('http://defaultns.com/:x', OrderedDict(( +- ('@http://a.com/:attr', 'val'), ++ ('http://defaultns.com/|x', OrderedDict(( ++ ('@http://a.com/|attr', 'val'), + ('#text', '1'), + ))), +- ('http://a.com/:y', '2'), +- ('http://b.com/:z', '3'), ++ ('http://a.com/|y', '2'), ++ ('http://b.com/|z', '3'), + ))), + )) + ns = { +diff --git a/tests/test_xmltodict.py b/tests/test_xmltodict.py +index 0455d96..762768a 100644 +--- contrib/python/xmltodict/tests/test_xmltodict.py ++++ contrib/python/xmltodict/tests/test_xmltodict.py +@@ -190,18 +190,18 @@ def test_namespace_support(self): + </root> + """ + d = { +- 'http://defaultns.com/:root': { +- 'http://defaultns.com/:x': { ++ 'http://defaultns.com/|root': { ++ 'http://defaultns.com/|x': { + '@xmlns': { + '': 'http://defaultns.com/', + 'a': 'http://a.com/', + 'b': 'http://b.com/', + }, +- '@http://a.com/:attr': 'val', ++ '@http://a.com/|attr': 'val', + '#text': '1', + }, +- 'http://a.com/:y': '2', +- 'http://b.com/:z': '3', ++ 'http://a.com/|y': '2', ++ 'http://b.com/|z': '3', + } + } + res = parse(xml, process_namespaces=True) +@@ -229,11 +229,11 @@ def test_namespace_collapse(self): + 'a': 'http://a.com/', + 'b': 'http://b.com/', + }, +- '@ns_a:attr': 'val', ++ '@ns_a|attr': 'val', + '#text': '1', + }, +- 'ns_a:y': '2', +- 'http://b.com/:z': '3', ++ 'ns_a|y': '2', ++ 'http://b.com/|z': '3', + }, + } + res = parse(xml, process_namespaces=True, namespaces=namespaces) +diff --git a/xmltodict.py b/xmltodict.py +index a070961..b7577e1 100755 +--- contrib/python/xmltodict/xmltodict.py ++++ contrib/python/xmltodict/xmltodict.py +@@ -48,7 +48,7 @@ def __init__(self, + postprocessor=None, + dict_constructor=OrderedDict, + strip_whitespace=True, +- namespace_separator=':', ++ namespace_separator='|', + namespaces=None, + force_list=None, + comment_key='#comment'): +@@ -196,7 +196,7 @@ def _should_force_list(self, key, value): + + + def parse(xml_input, encoding=None, expat=expat, process_namespaces=False, +- namespace_separator=':', disable_entities=True, **kwargs): ++ namespace_separator='|', disable_entities=True, **kwargs): + """Parse the given XML input and convert it into a dictionary. + + `xml_input` can either be a `string`, a file-like object, or a generator of strings. +@@ -375,7 +375,7 @@ def parse(xml_input, encoding=None, expat=expat, process_namespaces=False, + return handler.item + + +-def _process_namespace(name, namespaces, ns_sep=':', attr_prefix='@'): ++def _process_namespace(name, namespaces, ns_sep='|', attr_prefix='@'): + if not namespaces: + return name + try: +@@ -386,7 +386,7 @@ def _process_namespace(name, namespaces, ns_sep=':', attr_prefix='@'): + ns_res = namespaces.get(ns.strip(attr_prefix)) + name = '{}{}{}{}'.format( + attr_prefix if ns.startswith(attr_prefix) else '', +- ns_res, ns_sep, name) if ns_res else name ++ ns_res, ':', name) if ns_res else name + return name + + +@@ -398,7 +398,7 @@ def _emit(key, value, content_handler, + pretty=False, + newl='\n', + indent='\t', +- namespace_separator=':', ++ namespace_separator='|', + namespaces=None, + full_document=True, + expand_iter=None): diff --git a/contrib/python/xmltodict/tests/test_dicttoxml.py b/contrib/python/xmltodict/tests/test_dicttoxml.py index 84fa5da871..ebe8a5b731 100644 --- a/contrib/python/xmltodict/tests/test_dicttoxml.py +++ b/contrib/python/xmltodict/tests/test_dicttoxml.py @@ -170,18 +170,18 @@ class DictToXMLTestCase(unittest.TestCase): def test_namespace_support(self): obj = OrderedDict(( - ('http://defaultns.com/:root', OrderedDict(( + ('http://defaultns.com/|root', OrderedDict(( ('@xmlns', OrderedDict(( ('', 'http://defaultns.com/'), ('a', 'http://a.com/'), ('b', 'http://b.com/'), ))), - ('http://defaultns.com/:x', OrderedDict(( - ('@http://a.com/:attr', 'val'), + ('http://defaultns.com/|x', OrderedDict(( + ('@http://a.com/|attr', 'val'), ('#text', '1'), ))), - ('http://a.com/:y', '2'), - ('http://b.com/:z', '3'), + ('http://a.com/|y', '2'), + ('http://b.com/|z', '3'), ))), )) ns = { diff --git a/contrib/python/xmltodict/tests/test_xmltodict.py b/contrib/python/xmltodict/tests/test_xmltodict.py index d778816817..1d01bb8e26 100644 --- a/contrib/python/xmltodict/tests/test_xmltodict.py +++ b/contrib/python/xmltodict/tests/test_xmltodict.py @@ -178,18 +178,18 @@ class XMLToDictTestCase(unittest.TestCase): </root> """ d = { - 'http://defaultns.com/:root': { - 'http://defaultns.com/:x': { + 'http://defaultns.com/|root': { + 'http://defaultns.com/|x': { '@xmlns': { '': 'http://defaultns.com/', 'a': 'http://a.com/', 'b': 'http://b.com/', }, - '@http://a.com/:attr': 'val', + '@http://a.com/|attr': 'val', '#text': '1', }, - 'http://a.com/:y': '2', - 'http://b.com/:z': '3', + 'http://a.com/|y': '2', + 'http://b.com/|z': '3', } } res = parse(xml, process_namespaces=True) @@ -217,11 +217,11 @@ class XMLToDictTestCase(unittest.TestCase): 'a': 'http://a.com/', 'b': 'http://b.com/', }, - '@ns_a:attr': 'val', + '@ns_a|attr': 'val', '#text': '1', }, - 'ns_a:y': '2', - 'http://b.com/:z': '3', + 'ns_a|y': '2', + 'http://b.com/|z': '3', }, } res = parse(xml, process_namespaces=True, namespaces=namespaces) diff --git a/contrib/python/xmltodict/xmltodict.py b/contrib/python/xmltodict/xmltodict.py index d6dbcd7a70..5027283c3e 100644 --- a/contrib/python/xmltodict/xmltodict.py +++ b/contrib/python/xmltodict/xmltodict.py @@ -47,7 +47,7 @@ class _DictSAXHandler(object): postprocessor=None, dict_constructor=OrderedDict, strip_whitespace=True, - namespace_separator=':', + namespace_separator='|', namespaces=None, force_list=None): self.path = [] @@ -185,7 +185,7 @@ class _DictSAXHandler(object): def parse(xml_input, encoding=None, expat=expat, process_namespaces=False, - namespace_separator=':', disable_entities=True, **kwargs): + namespace_separator='|', disable_entities=True, **kwargs): """Parse the given XML input and convert it into a dictionary. `xml_input` can either be a `string` or a file-like object. @@ -328,7 +328,7 @@ def parse(xml_input, encoding=None, expat=expat, process_namespaces=False, return handler.item -def _process_namespace(name, namespaces, ns_sep=':', attr_prefix='@'): +def _process_namespace(name, namespaces, ns_sep='|', attr_prefix='@'): if not namespaces: return name try: @@ -339,7 +339,7 @@ def _process_namespace(name, namespaces, ns_sep=':', attr_prefix='@'): ns_res = namespaces.get(ns.strip(attr_prefix)) name = '{}{}{}{}'.format( attr_prefix if ns.startswith(attr_prefix) else '', - ns_res, ns_sep, name) if ns_res else name + ns_res, ':', name) if ns_res else name return name @@ -351,7 +351,7 @@ def _emit(key, value, content_handler, pretty=False, newl='\n', indent='\t', - namespace_separator=':', + namespace_separator='|', namespaces=None, full_document=True): key = _process_namespace(key, namespaces, namespace_separator, attr_prefix) diff --git a/contrib/restricted/aws/s2n/.yandex_meta/devtools.copyrights.report b/contrib/restricted/aws/s2n/.yandex_meta/devtools.copyrights.report index 4e2f77d918..c6657ea2b7 100644 --- a/contrib/restricted/aws/s2n/.yandex_meta/devtools.copyrights.report +++ b/contrib/restricted/aws/s2n/.yandex_meta/devtools.copyrights.report @@ -187,6 +187,8 @@ BELONGS ya.make tls/extensions/s2n_extension_type_lists.h [2:2] tls/extensions/s2n_key_share.c [2:2] tls/extensions/s2n_key_share.h [2:2] + tls/extensions/s2n_psk_key_exchange_modes.c [2:2] + tls/extensions/s2n_psk_key_exchange_modes.h [2:2] tls/extensions/s2n_quic_transport_params.c [2:2] tls/extensions/s2n_quic_transport_params.h [2:2] tls/extensions/s2n_server_alpn.c [2:2] @@ -197,6 +199,8 @@ BELONGS ya.make tls/extensions/s2n_server_key_share.h [2:2] tls/extensions/s2n_server_max_fragment_length.c [2:2] tls/extensions/s2n_server_max_fragment_length.h [2:2] + tls/extensions/s2n_server_psk.c [2:2] + tls/extensions/s2n_server_psk.h [2:2] tls/extensions/s2n_server_renegotiation_info.c [2:2] tls/extensions/s2n_server_renegotiation_info.h [2:2] tls/extensions/s2n_server_sct_list.c [2:2] diff --git a/contrib/restricted/aws/s2n/.yandex_meta/devtools.licenses.report b/contrib/restricted/aws/s2n/.yandex_meta/devtools.licenses.report index 2411f3a704..42c940cc02 100644 --- a/contrib/restricted/aws/s2n/.yandex_meta/devtools.licenses.report +++ b/contrib/restricted/aws/s2n/.yandex_meta/devtools.licenses.report @@ -363,6 +363,8 @@ BELONGS ya.make tls/extensions/s2n_extension_type_lists.h [4:13] tls/extensions/s2n_key_share.c [4:13] tls/extensions/s2n_key_share.h [4:13] + tls/extensions/s2n_psk_key_exchange_modes.c [4:13] + tls/extensions/s2n_psk_key_exchange_modes.h [4:13] tls/extensions/s2n_quic_transport_params.c [4:13] tls/extensions/s2n_quic_transport_params.h [4:13] tls/extensions/s2n_server_alpn.c [4:13] @@ -373,6 +375,8 @@ BELONGS ya.make tls/extensions/s2n_server_key_share.h [4:13] tls/extensions/s2n_server_max_fragment_length.c [4:13] tls/extensions/s2n_server_max_fragment_length.h [4:13] + tls/extensions/s2n_server_psk.c [4:13] + tls/extensions/s2n_server_psk.h [4:13] tls/extensions/s2n_server_renegotiation_info.c [4:13] tls/extensions/s2n_server_renegotiation_info.h [4:13] tls/extensions/s2n_server_sct_list.c [4:13] diff --git a/contrib/restricted/aws/s2n/CMakeLists.txt b/contrib/restricted/aws/s2n/CMakeLists.txt index 2c5722b2de..cf54c00743 100644 --- a/contrib/restricted/aws/s2n/CMakeLists.txt +++ b/contrib/restricted/aws/s2n/CMakeLists.txt @@ -132,11 +132,13 @@ target_sources(restricted-aws-s2n PRIVATE ${CMAKE_SOURCE_DIR}/contrib/restricted/aws/s2n/tls/extensions/s2n_extension_type.c ${CMAKE_SOURCE_DIR}/contrib/restricted/aws/s2n/tls/extensions/s2n_extension_type_lists.c ${CMAKE_SOURCE_DIR}/contrib/restricted/aws/s2n/tls/extensions/s2n_key_share.c + ${CMAKE_SOURCE_DIR}/contrib/restricted/aws/s2n/tls/extensions/s2n_psk_key_exchange_modes.c ${CMAKE_SOURCE_DIR}/contrib/restricted/aws/s2n/tls/extensions/s2n_quic_transport_params.c ${CMAKE_SOURCE_DIR}/contrib/restricted/aws/s2n/tls/extensions/s2n_server_alpn.c ${CMAKE_SOURCE_DIR}/contrib/restricted/aws/s2n/tls/extensions/s2n_server_certificate_status.c ${CMAKE_SOURCE_DIR}/contrib/restricted/aws/s2n/tls/extensions/s2n_server_key_share.c ${CMAKE_SOURCE_DIR}/contrib/restricted/aws/s2n/tls/extensions/s2n_server_max_fragment_length.c + ${CMAKE_SOURCE_DIR}/contrib/restricted/aws/s2n/tls/extensions/s2n_server_psk.c ${CMAKE_SOURCE_DIR}/contrib/restricted/aws/s2n/tls/extensions/s2n_server_renegotiation_info.c ${CMAKE_SOURCE_DIR}/contrib/restricted/aws/s2n/tls/extensions/s2n_server_sct_list.c ${CMAKE_SOURCE_DIR}/contrib/restricted/aws/s2n/tls/extensions/s2n_server_server_name.c diff --git a/contrib/restricted/aws/s2n/api/s2n.h b/contrib/restricted/aws/s2n/api/s2n.h index 55a3ccf4bc..0dfa21bf26 100644 --- a/contrib/restricted/aws/s2n/api/s2n.h +++ b/contrib/restricted/aws/s2n/api/s2n.h @@ -51,6 +51,15 @@ extern "C" { S2N_API extern __thread int s2n_errno; +/** + * Returns the address of the thread-local `s2n_errno` variable + * + * This function can be used instead of trying to resolve `s2n_errno` directly + * in runtimes where thread-local variables may not be easily accessible. + */ +S2N_API +extern int *s2n_errno_location(); + typedef enum { S2N_ERR_T_OK=0, S2N_ERR_T_IO, diff --git a/contrib/restricted/aws/s2n/crypto/s2n_ecdsa.c b/contrib/restricted/aws/s2n/crypto/s2n_ecdsa.c index d1d37d1bee..240f0f87b1 100644 --- a/contrib/restricted/aws/s2n/crypto/s2n_ecdsa.c +++ b/contrib/restricted/aws/s2n/crypto/s2n_ecdsa.c @@ -22,6 +22,7 @@ #include "utils/s2n_blob.h" #include "utils/s2n_mem.h" #include "utils/s2n_random.h" +#include "utils/s2n_result.h" #include "utils/s2n_safety.h" #include "crypto/s2n_ecdsa.h" @@ -30,12 +31,19 @@ #include "crypto/s2n_openssl.h" #include "crypto/s2n_pkey.h" -int s2n_ecdsa_der_signature_size(const struct s2n_pkey *pkey) +S2N_RESULT s2n_ecdsa_der_signature_size(const struct s2n_pkey *pkey, uint32_t *size_out) { + ENSURE_REF(pkey); + ENSURE_REF(size_out); + const struct s2n_ecdsa_key *ecdsa_key = &pkey->key.ecdsa_key; - notnull_check(ecdsa_key->ec_key); + ENSURE_REF(ecdsa_key->ec_key); + + const int size = ECDSA_size(ecdsa_key->ec_key); + GUARD_AS_RESULT(size); + *size_out = size; - return ECDSA_size(ecdsa_key->ec_key); + return S2N_RESULT_OK; } static int s2n_ecdsa_sign(const struct s2n_pkey *priv, s2n_signature_algorithm sig_alg, @@ -102,7 +110,9 @@ static int s2n_ecdsa_keys_match(const struct s2n_pkey *pub, const struct s2n_pke GUARD(s2n_hash_update(&state_in, input, sizeof(input))); GUARD(s2n_hash_update(&state_out, input, sizeof(input))); - GUARD(s2n_alloc(&signature, s2n_ecdsa_der_signature_size(priv))); + uint32_t size = 0; + GUARD_AS_POSIX(s2n_ecdsa_der_signature_size(priv, &size)); + GUARD(s2n_alloc(&signature, size)); GUARD(s2n_ecdsa_sign(priv, S2N_SIGNATURE_ECDSA, &state_in, &signature)); GUARD(s2n_ecdsa_verify(pub, S2N_SIGNATURE_ECDSA, &state_out, &signature)); diff --git a/contrib/restricted/aws/s2n/crypto/s2n_fips.h b/contrib/restricted/aws/s2n/crypto/s2n_fips.h index 23c3ea4bd0..e0644f4080 100644 --- a/contrib/restricted/aws/s2n/crypto/s2n_fips.h +++ b/contrib/restricted/aws/s2n/crypto/s2n_fips.h @@ -13,6 +13,10 @@ * permissions and limitations under the License. */ +#include <stdbool.h> + +#include "api/s2n.h" + #pragma once extern int s2n_fips_init(void); diff --git a/contrib/restricted/aws/s2n/crypto/s2n_hash.c b/contrib/restricted/aws/s2n/crypto/s2n_hash.c index 0a3ad28130..27a9358438 100644 --- a/contrib/restricted/aws/s2n/crypto/s2n_hash.c +++ b/contrib/restricted/aws/s2n/crypto/s2n_hash.c @@ -22,27 +22,9 @@ #include "utils/s2n_safety.h" -int s2n_hash_hmac_alg(s2n_hash_algorithm hash_alg, s2n_hmac_algorithm *out) -{ - ENSURE_POSIX(S2N_MEM_IS_READABLE(out, sizeof(*out)), S2N_ERR_PRECONDITION_VIOLATION); - switch(hash_alg) { - case S2N_HASH_NONE: *out = S2N_HMAC_NONE; break; - case S2N_HASH_MD5: *out = S2N_HMAC_MD5; break; - case S2N_HASH_SHA1: *out = S2N_HMAC_SHA1; break; - case S2N_HASH_SHA224: *out = S2N_HMAC_SHA224; break; - case S2N_HASH_SHA256: *out = S2N_HMAC_SHA256; break; - case S2N_HASH_SHA384: *out = S2N_HMAC_SHA384; break; - case S2N_HASH_SHA512: *out = S2N_HMAC_SHA512; break; - case S2N_HASH_MD5_SHA1: /* Fall through ... */ - default: - S2N_ERROR(S2N_ERR_HASH_INVALID_ALGORITHM); - } - return S2N_SUCCESS; -} - int s2n_hash_digest_size(s2n_hash_algorithm alg, uint8_t *out) { - notnull_check(out); + ENSURE_POSIX(S2N_MEM_IS_WRITABLE(out, sizeof(*out)), S2N_ERR_PRECONDITION_VIOLATION); switch (alg) { case S2N_HASH_NONE: *out = 0; break; case S2N_HASH_MD5: *out = MD5_DIGEST_LENGTH; break; @@ -63,7 +45,7 @@ int s2n_hash_digest_size(s2n_hash_algorithm alg, uint8_t *out) * If this ever becomes untrue, this would require fixing*/ int s2n_hash_block_size(s2n_hash_algorithm alg, uint64_t *block_size) { - ENSURE_POSIX(S2N_MEM_IS_READABLE(block_size, sizeof(*block_size)), S2N_ERR_PRECONDITION_VIOLATION); + ENSURE_POSIX(S2N_MEM_IS_WRITABLE(block_size, sizeof(*block_size)), S2N_ERR_PRECONDITION_VIOLATION); switch(alg) { case S2N_HASH_NONE: *block_size = 64; break; case S2N_HASH_MD5: *block_size = 64; break; @@ -523,7 +505,6 @@ int s2n_hash_new(struct s2n_hash_state *state) S2N_RESULT s2n_hash_state_validate(struct s2n_hash_state *state) { ENSURE_REF(state); - ENSURE_REF(state->hash_impl); return S2N_RESULT_OK; } @@ -623,7 +604,7 @@ int s2n_hash_free(struct s2n_hash_state *state) int s2n_hash_get_currently_in_hash_total(struct s2n_hash_state *state, uint64_t *out) { PRECONDITION_POSIX(s2n_hash_state_validate(state)); - ENSURE_POSIX(S2N_MEM_IS_READABLE(out, sizeof(*out)), S2N_ERR_PRECONDITION_VIOLATION); + ENSURE_POSIX(S2N_MEM_IS_WRITABLE(out, sizeof(*out)), S2N_ERR_PRECONDITION_VIOLATION); ENSURE_POSIX(state->is_ready_for_input, S2N_ERR_HASH_NOT_READY); *out = state->currently_in_hash; @@ -635,7 +616,7 @@ int s2n_hash_get_currently_in_hash_total(struct s2n_hash_state *state, uint64_t int s2n_hash_const_time_get_currently_in_hash_block(struct s2n_hash_state *state, uint64_t *out) { PRECONDITION_POSIX(s2n_hash_state_validate(state)); - ENSURE_POSIX(S2N_MEM_IS_READABLE(out, sizeof(*out)), S2N_ERR_PRECONDITION_VIOLATION); + ENSURE_POSIX(S2N_MEM_IS_WRITABLE(out, sizeof(*out)), S2N_ERR_PRECONDITION_VIOLATION); ENSURE_POSIX(state->is_ready_for_input, S2N_ERR_HASH_NOT_READY); uint64_t hash_block_size; GUARD(s2n_hash_block_size(state->alg, &hash_block_size)); diff --git a/contrib/restricted/aws/s2n/crypto/s2n_hmac.c b/contrib/restricted/aws/s2n/crypto/s2n_hmac.c index 8f5acf045a..2689545abb 100644 --- a/contrib/restricted/aws/s2n/crypto/s2n_hmac.c +++ b/contrib/restricted/aws/s2n/crypto/s2n_hmac.c @@ -28,9 +28,27 @@ #include <stdint.h> +int s2n_hash_hmac_alg(s2n_hash_algorithm hash_alg, s2n_hmac_algorithm *out) +{ + ENSURE_POSIX(S2N_MEM_IS_WRITABLE(out, sizeof(*out)), S2N_ERR_PRECONDITION_VIOLATION); + switch(hash_alg) { + case S2N_HASH_NONE: *out = S2N_HMAC_NONE; break; + case S2N_HASH_MD5: *out = S2N_HMAC_MD5; break; + case S2N_HASH_SHA1: *out = S2N_HMAC_SHA1; break; + case S2N_HASH_SHA224: *out = S2N_HMAC_SHA224; break; + case S2N_HASH_SHA256: *out = S2N_HMAC_SHA256; break; + case S2N_HASH_SHA384: *out = S2N_HMAC_SHA384; break; + case S2N_HASH_SHA512: *out = S2N_HMAC_SHA512; break; + case S2N_HASH_MD5_SHA1: /* Fall through ... */ + default: + S2N_ERROR(S2N_ERR_HASH_INVALID_ALGORITHM); + } + return S2N_SUCCESS; +} int s2n_hmac_hash_alg(s2n_hmac_algorithm hmac_alg, s2n_hash_algorithm *out) { + ENSURE_POSIX(S2N_MEM_IS_WRITABLE(out, sizeof(*out)), S2N_ERR_PRECONDITION_VIOLATION); switch(hmac_alg) { case S2N_HMAC_NONE: *out = S2N_HASH_NONE; break; case S2N_HMAC_MD5: *out = S2N_HASH_MD5; break; @@ -44,7 +62,7 @@ int s2n_hmac_hash_alg(s2n_hmac_algorithm hmac_alg, s2n_hash_algorithm *out) default: S2N_ERROR(S2N_ERR_HMAC_INVALID_ALGORITHM); } - return 0; + return S2N_SUCCESS; } int s2n_hmac_digest_size(s2n_hmac_algorithm hmac_alg, uint8_t *out) @@ -52,33 +70,27 @@ int s2n_hmac_digest_size(s2n_hmac_algorithm hmac_alg, uint8_t *out) s2n_hash_algorithm hash_alg; GUARD(s2n_hmac_hash_alg(hmac_alg, &hash_alg)); GUARD(s2n_hash_digest_size(hash_alg, out)); - return 0; + return S2N_SUCCESS; } /* Return 1 if hmac algorithm is available, 0 otherwise. */ -int s2n_hmac_is_available(s2n_hmac_algorithm hmac_alg) +bool s2n_hmac_is_available(s2n_hmac_algorithm hmac_alg) { - int is_available = 0; switch(hmac_alg) { case S2N_HMAC_MD5: case S2N_HMAC_SSLv3_MD5: case S2N_HMAC_SSLv3_SHA1: /* Set is_available to 0 if in FIPS mode, as MD5/SSLv3 algs are not available in FIPS mode. */ - is_available = !s2n_is_in_fips_mode(); - break; - case S2N_HMAC_NONE: + return !s2n_is_in_fips_mode(); + case S2N_HMAC_NONE: case S2N_HMAC_SHA1: case S2N_HMAC_SHA224: case S2N_HMAC_SHA256: case S2N_HMAC_SHA384: case S2N_HMAC_SHA512: - is_available = 1; - break; - default: - S2N_ERROR(S2N_ERR_HMAC_INVALID_ALGORITHM); + return true; } - - return is_available; + return false; } static int s2n_sslv3_mac_init(struct s2n_hmac_state *state, s2n_hmac_algorithm alg, const void *key, uint32_t klen) @@ -97,13 +109,13 @@ static int s2n_sslv3_mac_init(struct s2n_hmac_state *state, s2n_hmac_algorithm a GUARD(s2n_hash_update(&state->outer_just_key, key, klen)); GUARD(s2n_hash_update(&state->outer_just_key, state->xor_pad, state->xor_pad_size)); - return 0; + return S2N_SUCCESS; } static int s2n_tls_hmac_init(struct s2n_hmac_state *state, s2n_hmac_algorithm alg, const void *key, uint32_t klen) { memset(&state->xor_pad, 0, sizeof(state->xor_pad)); - + if (klen > state->xor_pad_size) { GUARD(s2n_hash_update(&state->outer, key, klen)); GUARD(s2n_hash_digest(&state->outer, state->digest_pad, state->digest_size)); @@ -124,11 +136,12 @@ static int s2n_tls_hmac_init(struct s2n_hmac_state *state, s2n_hmac_algorithm al } GUARD(s2n_hash_update(&state->outer_just_key, state->xor_pad, state->xor_pad_size)); - return 0; + return S2N_SUCCESS; } int s2n_hmac_xor_pad_size(s2n_hmac_algorithm hmac_alg, uint16_t *xor_pad_size) { + ENSURE_POSIX(S2N_MEM_IS_WRITABLE(xor_pad_size, sizeof(*xor_pad_size)), S2N_ERR_PRECONDITION_VIOLATION); switch(hmac_alg) { case S2N_HMAC_NONE: *xor_pad_size = 64; break; case S2N_HMAC_MD5: *xor_pad_size = 64; break; @@ -142,11 +155,12 @@ int s2n_hmac_xor_pad_size(s2n_hmac_algorithm hmac_alg, uint16_t *xor_pad_size) default: S2N_ERROR(S2N_ERR_HMAC_INVALID_ALGORITHM); } - return 0; + return S2N_SUCCESS; } int s2n_hmac_hash_block_size(s2n_hmac_algorithm hmac_alg, uint16_t *block_size) { + ENSURE_POSIX(S2N_MEM_IS_WRITABLE(block_size, sizeof(*block_size)), S2N_ERR_PRECONDITION_VIOLATION); switch(hmac_alg) { case S2N_HMAC_NONE: *block_size = 64; break; case S2N_HMAC_MD5: *block_size = 64; break; @@ -160,21 +174,33 @@ int s2n_hmac_hash_block_size(s2n_hmac_algorithm hmac_alg, uint16_t *block_size) default: S2N_ERROR(S2N_ERR_HMAC_INVALID_ALGORITHM); } - return 0; + return S2N_SUCCESS; } int s2n_hmac_new(struct s2n_hmac_state *state) { + ENSURE_POSIX_REF(state); GUARD(s2n_hash_new(&state->inner)); GUARD(s2n_hash_new(&state->inner_just_key)); GUARD(s2n_hash_new(&state->outer)); GUARD(s2n_hash_new(&state->outer_just_key)); + POSTCONDITION_POSIX(s2n_hmac_state_validate(state)); + return S2N_SUCCESS; +} - return 0; +S2N_RESULT s2n_hmac_state_validate(struct s2n_hmac_state *state) +{ + ENSURE_REF(state); + GUARD_RESULT(s2n_hash_state_validate(&state->inner)); + GUARD_RESULT(s2n_hash_state_validate(&state->inner_just_key)); + GUARD_RESULT(s2n_hash_state_validate(&state->outer)); + GUARD_RESULT(s2n_hash_state_validate(&state->outer_just_key)); + return S2N_RESULT_OK; } int s2n_hmac_init(struct s2n_hmac_state *state, s2n_hmac_algorithm alg, const void *key, uint32_t klen) { + notnull_check(state); if (!s2n_hmac_is_available(alg)) { /* Prevent hmacs from being used if they are not available. */ S2N_ERROR(S2N_ERR_HMAC_INVALID_ALGORITHM); @@ -212,20 +238,22 @@ int s2n_hmac_init(struct s2n_hmac_state *state, s2n_hmac_algorithm alg, const vo memset(&state->xor_pad, 0, sizeof(state->xor_pad)); GUARD(s2n_hmac_reset(state)); - return 0; + return S2N_SUCCESS; } int s2n_hmac_update(struct s2n_hmac_state *state, const void *in, uint32_t size) { + PRECONDITION_POSIX(s2n_hmac_state_validate(state)); + ENSURE_POSIX(state->hash_block_size != 0, S2N_ERR_PRECONDITION_VIOLATION); /* Keep track of how much of the current hash block is full * * Why the 4294949760 constant in this code? 4294949760 is the highest 32-bit * value that is congruent to 0 modulo all of our HMAC block sizes, that is also * at least 16k smaller than 2^32. It therefore has no effect on the mathematical * result, and no valid record size can cause it to overflow. - * + * * The value was found with the following python code; - * + * * x = (2 ** 32) - (2 ** 14) * while True: * if x % 40 | x % 48 | x % 64 | x % 128 == 0: @@ -238,7 +266,10 @@ int s2n_hmac_update(struct s2n_hmac_state *state, const void *in, uint32_t size) * input. On some platforms, including Intel, the operation can take a * smaller number of cycles if the input is "small". */ - state->currently_in_hash_block += (4294949760 + size) % state->hash_block_size; + const uint32_t HIGHEST_32_BIT = 4294949760; + ENSURE_POSIX(size <= (UINT32_MAX - HIGHEST_32_BIT), S2N_ERR_INTEGER_OVERFLOW); + uint32_t value = (HIGHEST_32_BIT + size) % state->hash_block_size; + GUARD(s2n_add_overflow(state->currently_in_hash_block, value, &state->currently_in_hash_block)); state->currently_in_hash_block %= state->hash_block_size; return s2n_hash_update(&state->inner, in, size); @@ -246,6 +277,7 @@ int s2n_hmac_update(struct s2n_hmac_state *state, const void *in, uint32_t size) int s2n_hmac_digest(struct s2n_hmac_state *state, void *out, uint32_t size) { + PRECONDITION_POSIX(s2n_hmac_state_validate(state)); GUARD(s2n_hash_digest(&state->inner, state->digest_pad, state->digest_size)); GUARD(s2n_hash_copy(&state->outer, &state->outer_just_key)); GUARD(s2n_hash_update(&state->outer, state->digest_pad, state->digest_size)); @@ -267,8 +299,8 @@ int s2n_hmac_digest_two_compression_rounds(struct s2n_hmac_state *state, void *o * 17 bytes if the block size is 128. */ const uint8_t space_left = (state->hash_block_size == 128) ? 17 : 9; - if (state->currently_in_hash_block > (state->hash_block_size - space_left)) { - return 0; + if ((int64_t)state->currently_in_hash_block > (state->hash_block_size - space_left)) { + return S2N_SUCCESS; } /* Can't reuse a hash after it has been finalized, so reset and push another block in */ @@ -280,32 +312,40 @@ int s2n_hmac_digest_two_compression_rounds(struct s2n_hmac_state *state, void *o int s2n_hmac_free(struct s2n_hmac_state *state) { - GUARD(s2n_hash_free(&state->inner)); - GUARD(s2n_hash_free(&state->inner_just_key)); - GUARD(s2n_hash_free(&state->outer)); - GUARD(s2n_hash_free(&state->outer_just_key)); + if (state) { + GUARD(s2n_hash_free(&state->inner)); + GUARD(s2n_hash_free(&state->inner_just_key)); + GUARD(s2n_hash_free(&state->outer)); + GUARD(s2n_hash_free(&state->outer_just_key)); + } - return 0; + return S2N_SUCCESS; } int s2n_hmac_reset(struct s2n_hmac_state *state) { + PRECONDITION_POSIX(s2n_hmac_state_validate(state)); + ENSURE_POSIX(state->hash_block_size != 0, S2N_ERR_PRECONDITION_VIOLATION); GUARD(s2n_hash_copy(&state->inner, &state->inner_just_key)); - + uint64_t bytes_in_hash; GUARD(s2n_hash_get_currently_in_hash_total(&state->inner, &bytes_in_hash)); + bytes_in_hash %= state->hash_block_size; + ENSURE_POSIX(bytes_in_hash <= UINT32_MAX, S2N_ERR_INTEGER_OVERFLOW); /* The length of the key is not private, so don't need to do tricky math here */ - state->currently_in_hash_block = bytes_in_hash % state->hash_block_size; - return 0; + state->currently_in_hash_block = bytes_in_hash; + return S2N_SUCCESS; } int s2n_hmac_digest_verify(const void *a, const void *b, uint32_t len) { - return 0 - !s2n_constant_time_equals(a, b, len); + return S2N_SUCCESS - !s2n_constant_time_equals(a, b, len); } int s2n_hmac_copy(struct s2n_hmac_state *to, struct s2n_hmac_state *from) { + PRECONDITION_POSIX(s2n_hmac_state_validate(to)); + PRECONDITION_POSIX(s2n_hmac_state_validate(from)); /* memcpy cannot be used on s2n_hmac_state as the underlying s2n_hash implementation's * copy must be used. This is enforced when the s2n_hash implementation is s2n_evp_hash. */ @@ -323,28 +363,34 @@ int s2n_hmac_copy(struct s2n_hmac_state *to, struct s2n_hmac_state *from) memcpy_check(to->xor_pad, from->xor_pad, sizeof(to->xor_pad)); memcpy_check(to->digest_pad, from->digest_pad, sizeof(to->digest_pad)); - - return 0; + POSTCONDITION_POSIX(s2n_hmac_state_validate(to)); + POSTCONDITION_POSIX(s2n_hmac_state_validate(from)); + return S2N_SUCCESS; } -/* Preserve the handlers for hmac state pointers to avoid re-allocation +/* Preserve the handlers for hmac state pointers to avoid re-allocation * Only valid if the HMAC is in EVP mode */ int s2n_hmac_save_evp_hash_state(struct s2n_hmac_evp_backup* backup, struct s2n_hmac_state* hmac) { + ENSURE_POSIX_REF(backup); + PRECONDITION_POSIX(s2n_hmac_state_validate(hmac)); backup->inner = hmac->inner.digest.high_level; backup->inner_just_key = hmac->inner_just_key.digest.high_level; backup->outer = hmac->outer.digest.high_level; backup->outer_just_key = hmac->outer_just_key.digest.high_level; - return 0; + return S2N_SUCCESS; } int s2n_hmac_restore_evp_hash_state(struct s2n_hmac_evp_backup* backup, struct s2n_hmac_state* hmac) { + ENSURE_POSIX_REF(backup); + PRECONDITION_POSIX(s2n_hmac_state_validate(hmac)); hmac->inner.digest.high_level = backup->inner; hmac->inner_just_key.digest.high_level = backup->inner_just_key; hmac->outer.digest.high_level = backup->outer; hmac->outer_just_key.digest.high_level = backup->outer_just_key; - return 0; + POSTCONDITION_POSIX(s2n_hmac_state_validate(hmac)); + return S2N_SUCCESS; } diff --git a/contrib/restricted/aws/s2n/crypto/s2n_hmac.h b/contrib/restricted/aws/s2n/crypto/s2n_hmac.h index b54966f8c3..34f8314b2d 100644 --- a/contrib/restricted/aws/s2n/crypto/s2n_hmac.h +++ b/contrib/restricted/aws/s2n/crypto/s2n_hmac.h @@ -60,11 +60,12 @@ struct s2n_hmac_evp_backup { }; extern int s2n_hmac_digest_size(s2n_hmac_algorithm alg, uint8_t *out); -extern int s2n_hmac_is_available(s2n_hmac_algorithm alg); +extern bool s2n_hmac_is_available(s2n_hmac_algorithm alg); extern int s2n_hmac_hash_alg(s2n_hmac_algorithm hmac_alg, s2n_hash_algorithm *out); extern int s2n_hash_hmac_alg(s2n_hash_algorithm hash_alg, s2n_hmac_algorithm *out); extern int s2n_hmac_new(struct s2n_hmac_state *state); +S2N_RESULT s2n_hmac_state_validate(struct s2n_hmac_state *state); extern int s2n_hmac_init(struct s2n_hmac_state *state, s2n_hmac_algorithm alg, const void *key, uint32_t klen); extern int s2n_hmac_update(struct s2n_hmac_state *state, const void *in, uint32_t size); extern int s2n_hmac_digest(struct s2n_hmac_state *state, void *out, uint32_t size); @@ -75,5 +76,3 @@ extern int s2n_hmac_reset(struct s2n_hmac_state *state); extern int s2n_hmac_copy(struct s2n_hmac_state *to, struct s2n_hmac_state *from); extern int s2n_hmac_save_evp_hash_state(struct s2n_hmac_evp_backup* backup, struct s2n_hmac_state* hmac); extern int s2n_hmac_restore_evp_hash_state(struct s2n_hmac_evp_backup* backup, struct s2n_hmac_state* hmac); - - diff --git a/contrib/restricted/aws/s2n/crypto/s2n_pkey.c b/contrib/restricted/aws/s2n/crypto/s2n_pkey.c index 9123e88080..69c0c25178 100644 --- a/contrib/restricted/aws/s2n/crypto/s2n_pkey.c +++ b/contrib/restricted/aws/s2n/crypto/s2n_pkey.c @@ -21,8 +21,11 @@ #include "crypto/s2n_rsa_pss.h" #include "crypto/s2n_pkey.h" +#include "utils/s2n_result.h" #include "utils/s2n_safety.h" +#define S2N_MAX_ALLOWED_CERT_TRAILING_BYTES 3 + int s2n_pkey_zero_init(struct s2n_pkey *pkey) { pkey->pkey = NULL; @@ -61,11 +64,15 @@ int s2n_pkey_check_key_exists(const struct s2n_pkey *pkey) return pkey->check_key(pkey); } -int s2n_pkey_size(const struct s2n_pkey *pkey) +S2N_RESULT s2n_pkey_size(const struct s2n_pkey *pkey, uint32_t *size_out) { - notnull_check(pkey->size); + ENSURE_REF(pkey); + ENSURE_REF(pkey->size); + ENSURE_REF(size_out); + + GUARD_RESULT(pkey->size(pkey, size_out)); - return pkey->size(pkey); + return S2N_RESULT_OK; } int s2n_pkey_sign(const struct s2n_pkey *pkey, s2n_signature_algorithm sig_alg, @@ -185,10 +192,10 @@ int s2n_asn1der_to_public_key_and_type(struct s2n_pkey *pub_key, s2n_pkey_type * /* If cert parsing is successful, d2i_X509 increments *cert_to_parse to the byte following the parsed data */ uint32_t parsed_len = cert_to_parse - asn1der->data; - /* Some TLS clients in the wild send one extra trailing byte after the Certificate. + /* Some TLS clients in the wild send extra trailing bytes after the Certificate. * Allow this in s2n for backwards compatibility with existing clients. */ uint32_t trailing_bytes = asn1der->size - parsed_len; - ENSURE_POSIX(trailing_bytes <= 1, S2N_ERR_DECODE_CERTIFICATE); + ENSURE_POSIX(trailing_bytes <= S2N_MAX_ALLOWED_CERT_TRAILING_BYTES, S2N_ERR_DECODE_CERTIFICATE); DEFER_CLEANUP(EVP_PKEY *evp_public_key = X509_get_pubkey(cert), EVP_PKEY_free_pointer); S2N_ERROR_IF(evp_public_key == NULL, S2N_ERR_DECODE_CERTIFICATE); diff --git a/contrib/restricted/aws/s2n/crypto/s2n_pkey.h b/contrib/restricted/aws/s2n/crypto/s2n_pkey.h index 1da8f785c6..0edc9f662e 100644 --- a/contrib/restricted/aws/s2n/crypto/s2n_pkey.h +++ b/contrib/restricted/aws/s2n/crypto/s2n_pkey.h @@ -23,6 +23,7 @@ #include "crypto/s2n_rsa.h" #include "utils/s2n_blob.h" +#include "utils/s2n_result.h" /* Public/Private Key Type */ typedef enum { @@ -43,7 +44,7 @@ struct s2n_pkey { } key; EVP_PKEY *pkey; - int (*size)(const struct s2n_pkey *key); + S2N_RESULT (*size)(const struct s2n_pkey *key, uint32_t *size_out); int (*sign)(const struct s2n_pkey *priv_key, s2n_signature_algorithm sig_alg, struct s2n_hash_state *digest, struct s2n_blob *signature); int (*verify)(const struct s2n_pkey *pub_key, s2n_signature_algorithm sig_alg, @@ -59,7 +60,7 @@ int s2n_pkey_zero_init(struct s2n_pkey *pkey); int s2n_pkey_setup_for_type(struct s2n_pkey *pkey, s2n_pkey_type pkey_type); int s2n_pkey_check_key_exists(const struct s2n_pkey *pkey); -int s2n_pkey_size(const struct s2n_pkey *pkey); +S2N_RESULT s2n_pkey_size(const struct s2n_pkey *pkey, uint32_t *size_out); int s2n_pkey_sign(const struct s2n_pkey *pkey, s2n_signature_algorithm sig_alg, struct s2n_hash_state *digest, struct s2n_blob *signature); int s2n_pkey_verify(const struct s2n_pkey *pkey, s2n_signature_algorithm sig_alg, diff --git a/contrib/restricted/aws/s2n/crypto/s2n_rsa.c b/contrib/restricted/aws/s2n/crypto/s2n_rsa.c index 38eba11e0b..cfce3054bf 100644 --- a/contrib/restricted/aws/s2n/crypto/s2n_rsa.c +++ b/contrib/restricted/aws/s2n/crypto/s2n_rsa.c @@ -13,51 +13,57 @@ * permissions and limitations under the License. */ +#include "crypto/s2n_rsa.h" + #include <openssl/evp.h> #include <openssl/rsa.h> #include <stdint.h> -#include "error/s2n_errno.h" - -#include "stuffer/s2n_stuffer.h" - -#include "crypto/s2n_hash.h" #include "crypto/s2n_drbg.h" -#include "crypto/s2n_rsa.h" -#include "crypto/s2n_rsa_signing.h" +#include "crypto/s2n_hash.h" #include "crypto/s2n_pkey.h" - -#include "utils/s2n_safety.h" -#include "utils/s2n_random.h" +#include "crypto/s2n_rsa_signing.h" +#include "error/s2n_errno.h" +#include "stuffer/s2n_stuffer.h" #include "utils/s2n_blob.h" +#include "utils/s2n_random.h" +#include "utils/s2n_result.h" +#include "utils/s2n_safety.h" -static int s2n_rsa_modulus_check(RSA *rsa) +static S2N_RESULT s2n_rsa_modulus_check(RSA *rsa) { - /* RSA was made opaque starting in Openssl 1.1.0 */ - #if S2N_OPENSSL_VERSION_AT_LEAST(1,1,0) && !defined(LIBRESSL_VERSION_NUMBER) - const BIGNUM *n = NULL; - /* RSA still owns the memory for n */ - RSA_get0_key(rsa, &n, NULL, NULL); - notnull_check(n); - #else - notnull_check(rsa->n); - #endif - return 0; +/* RSA was made opaque starting in Openssl 1.1.0 */ +#if S2N_OPENSSL_VERSION_AT_LEAST(1, 1, 0) && !defined(LIBRESSL_VERSION_NUMBER) + const BIGNUM *n = NULL; + /* RSA still owns the memory for n */ + RSA_get0_key(rsa, &n, NULL, NULL); + ENSURE_REF(n); +#else + ENSURE_REF(rsa->n); +#endif + return S2N_RESULT_OK; } -static int s2n_rsa_encrypted_size(const struct s2n_pkey *key) +static S2N_RESULT s2n_rsa_encrypted_size(const struct s2n_pkey *key, uint32_t *size_out) { + ENSURE_REF(key); + ENSURE_REF(size_out); + const struct s2n_rsa_key *rsa_key = &key->key.rsa_key; - notnull_check(rsa_key->rsa); - GUARD(s2n_rsa_modulus_check(rsa_key->rsa)); + ENSURE_REF(rsa_key->rsa); + GUARD_RESULT(s2n_rsa_modulus_check(rsa_key->rsa)); - return RSA_size(rsa_key->rsa); + const int size = RSA_size(rsa_key->rsa); + GUARD_AS_RESULT(size); + *size_out = size; + + return S2N_RESULT_OK; } -static int s2n_rsa_sign(const struct s2n_pkey *priv, s2n_signature_algorithm sig_alg, - struct s2n_hash_state *digest, struct s2n_blob *signature) +static int s2n_rsa_sign(const struct s2n_pkey *priv, s2n_signature_algorithm sig_alg, struct s2n_hash_state *digest, + struct s2n_blob *signature) { - switch(sig_alg) { + switch (sig_alg) { case S2N_SIGNATURE_RSA: return s2n_rsa_pkcs1v15_sign(priv, digest, signature); case S2N_SIGNATURE_RSA_PSS_RSAE: @@ -69,10 +75,10 @@ static int s2n_rsa_sign(const struct s2n_pkey *priv, s2n_signature_algorithm sig return S2N_SUCCESS; } -static int s2n_rsa_verify(const struct s2n_pkey *pub, s2n_signature_algorithm sig_alg, - struct s2n_hash_state *digest, struct s2n_blob *signature) +static int s2n_rsa_verify(const struct s2n_pkey *pub, s2n_signature_algorithm sig_alg, struct s2n_hash_state *digest, + struct s2n_blob *signature) { - switch(sig_alg) { + switch (sig_alg) { case S2N_SIGNATURE_RSA: return s2n_rsa_pkcs1v15_verify(pub, digest, signature); case S2N_SIGNATURE_RSA_PSS_RSAE: @@ -86,10 +92,13 @@ static int s2n_rsa_verify(const struct s2n_pkey *pub, s2n_signature_algorithm si static int s2n_rsa_encrypt(const struct s2n_pkey *pub, struct s2n_blob *in, struct s2n_blob *out) { - S2N_ERROR_IF(out->size < s2n_rsa_encrypted_size(pub), S2N_ERR_NOMEM); + uint32_t size = 0; + GUARD_AS_POSIX(s2n_rsa_encrypted_size(pub, &size)); + S2N_ERROR_IF(out->size < size, S2N_ERR_NOMEM); const s2n_rsa_public_key *key = &pub->key.rsa_key; - int r = RSA_public_encrypt(in->size, (unsigned char *)in->data, (unsigned char *)out->data, key->rsa, RSA_PKCS1_PADDING); + int r = RSA_public_encrypt(in->size, ( unsigned char * )in->data, ( unsigned char * )out->data, key->rsa, + RSA_PKCS1_PADDING); S2N_ERROR_IF(r != out->size, S2N_ERR_SIZE_MISMATCH); return 0; @@ -97,17 +106,18 @@ static int s2n_rsa_encrypt(const struct s2n_pkey *pub, struct s2n_blob *in, stru static int s2n_rsa_decrypt(const struct s2n_pkey *priv, struct s2n_blob *in, struct s2n_blob *out) { - unsigned char intermediate[4096]; - const int expected_size = s2n_rsa_encrypted_size(priv); + unsigned char intermediate[ 4096 ]; + uint32_t expected_size = 0; + + GUARD_AS_POSIX(s2n_rsa_encrypted_size(priv, &expected_size)); - GUARD(expected_size); S2N_ERROR_IF(expected_size > sizeof(intermediate), S2N_ERR_NOMEM); S2N_ERROR_IF(out->size > sizeof(intermediate), S2N_ERR_NOMEM); GUARD_AS_POSIX(s2n_get_public_random_data(out)); const s2n_rsa_private_key *key = &priv->key.rsa_key; - int r = RSA_private_decrypt(in->size, (unsigned char *)in->data, intermediate, key->rsa, RSA_NO_PADDING); + int r = RSA_private_decrypt(in->size, ( unsigned char * )in->data, intermediate, key->rsa, RSA_NO_PADDING); S2N_ERROR_IF(r != expected_size, S2N_ERR_SIZE_MISMATCH); s2n_constant_time_pkcs1_unpad_or_dont(out->data, intermediate, r, out->size); @@ -117,14 +127,14 @@ static int s2n_rsa_decrypt(const struct s2n_pkey *priv, struct s2n_blob *in, str static int s2n_rsa_keys_match(const struct s2n_pkey *pub, const struct s2n_pkey *priv) { - uint8_t plain_inpad[36] = {1}, plain_outpad[36] = {0}, encpad[8192]; + uint8_t plain_inpad[ 36 ] = { 1 }, plain_outpad[ 36 ] = { 0 }, encpad[ 8192 ]; struct s2n_blob plain_in = { 0 }, plain_out = { 0 }, enc = { 0 }; plain_in.data = plain_inpad; plain_in.size = sizeof(plain_inpad); enc.data = encpad; - enc.size = s2n_rsa_encrypted_size(pub); + GUARD_AS_POSIX(s2n_rsa_encrypted_size(pub, &enc.size)); lte_check(enc.size, sizeof(encpad)); GUARD(s2n_rsa_encrypt(pub, &plain_in, &enc)); @@ -140,9 +150,7 @@ static int s2n_rsa_keys_match(const struct s2n_pkey *pub, const struct s2n_pkey static int s2n_rsa_key_free(struct s2n_pkey *pkey) { struct s2n_rsa_key *rsa_key = &pkey->key.rsa_key; - if (rsa_key->rsa == NULL) { - return 0; - } + if (rsa_key->rsa == NULL) { return 0; } RSA_free(rsa_key->rsa); rsa_key->rsa = NULL; @@ -177,13 +185,13 @@ int s2n_evp_pkey_to_rsa_private_key(s2n_rsa_private_key *rsa_key, EVP_PKEY *evp_ int s2n_rsa_pkey_init(struct s2n_pkey *pkey) { - pkey->size = &s2n_rsa_encrypted_size; - pkey->sign = &s2n_rsa_sign; - pkey->verify = &s2n_rsa_verify; - pkey->encrypt = &s2n_rsa_encrypt; - pkey->decrypt = &s2n_rsa_decrypt; - pkey->match = &s2n_rsa_keys_match; - pkey->free = &s2n_rsa_key_free; + pkey->size = &s2n_rsa_encrypted_size; + pkey->sign = &s2n_rsa_sign; + pkey->verify = &s2n_rsa_verify; + pkey->encrypt = &s2n_rsa_encrypt; + pkey->decrypt = &s2n_rsa_decrypt; + pkey->match = &s2n_rsa_keys_match; + pkey->free = &s2n_rsa_key_free; pkey->check_key = &s2n_rsa_check_key_exists; return 0; } diff --git a/contrib/restricted/aws/s2n/crypto/s2n_rsa_pss.c b/contrib/restricted/aws/s2n/crypto/s2n_rsa_pss.c index 1bb444b25c..98fbd6ad23 100644 --- a/contrib/restricted/aws/s2n/crypto/s2n_rsa_pss.c +++ b/contrib/restricted/aws/s2n/crypto/s2n_rsa_pss.c @@ -41,12 +41,17 @@ int s2n_is_rsa_pss_certs_supported() #if RSA_PSS_CERTS_SUPPORTED -static int s2n_rsa_pss_size(const struct s2n_pkey *key) +static S2N_RESULT s2n_rsa_pss_size(const struct s2n_pkey *key, uint32_t *size_out) { - notnull_check(key); + ENSURE_REF(key); + ENSURE_REF(size_out); /* For more info, see: https://www.openssl.org/docs/man1.1.0/man3/EVP_PKEY_size.html */ - return EVP_PKEY_size(key->pkey); + const int size = EVP_PKEY_size(key->pkey); + GUARD_AS_RESULT(size); + *size_out = size; + + return S2N_RESULT_OK; } static int s2n_rsa_is_private_key(RSA *rsa_key) diff --git a/contrib/restricted/aws/s2n/crypto/s2n_tls13_keys.c b/contrib/restricted/aws/s2n/crypto/s2n_tls13_keys.c index 978ce2431e..1b472937ad 100644 --- a/contrib/restricted/aws/s2n/crypto/s2n_tls13_keys.c +++ b/contrib/restricted/aws/s2n/crypto/s2n_tls13_keys.c @@ -41,7 +41,7 @@ * [x] client_application_traffic_secret_0 * [x] server_application_traffic_secret_0 * [ ] exporter_master_secret - * [ ] resumption_master_secret + * [x] resumption_master_secret * * The TLS 1.3 key generation can be divided into 3 phases * 1. early secrets @@ -74,6 +74,7 @@ S2N_BLOB_LABEL(s2n_tls13_label_server_application_traffic_secret, "s ap traffic" S2N_BLOB_LABEL(s2n_tls13_label_exporter_master_secret, "exp master") S2N_BLOB_LABEL(s2n_tls13_label_resumption_master_secret, "res master") +S2N_BLOB_LABEL(s2n_tls13_label_session_ticket_secret, "resumption") /* * Traffic secret labels @@ -172,14 +173,21 @@ int s2n_tls13_derive_binder_key(struct s2n_tls13_keys *keys, struct s2n_psk *psk /* * Derives early secrets */ -int s2n_tls13_derive_early_secrets(struct s2n_tls13_keys *keys) +int s2n_tls13_derive_early_secrets(struct s2n_tls13_keys *keys, struct s2n_psk *psk) { notnull_check(keys); - s2n_tls13_key_blob(psk_ikm, keys->size); /* in 1-RTT, PSK is 0-filled of key length */ - /* Early Secret */ - GUARD(s2n_hkdf_extract(&keys->hmac, keys->hmac_algorithm, &zero_length_blob, &psk_ikm, &keys->extract_secret)); + if (psk == NULL) { + /* in 1-RTT, PSK is 0-filled of key length */ + s2n_tls13_key_blob(psk_ikm, keys->size); + + GUARD(s2n_hkdf_extract(&keys->hmac, keys->hmac_algorithm, &zero_length_blob, &psk_ikm, &keys->extract_secret)); + } else { + /* Sanity check that an early secret exists */ + ne_check(psk->early_secret.size, 0); + keys->extract_secret = psk->early_secret; + } /* client_early_traffic_secret and early_exporter_master_secret can be derived here */ @@ -189,7 +197,7 @@ int s2n_tls13_derive_early_secrets(struct s2n_tls13_keys *keys) GUARD(s2n_hkdf_expand_label(&keys->hmac, keys->hmac_algorithm, &keys->extract_secret, &s2n_tls13_label_derived_secret, &message_digest, &keys->derive_secret)); - return 0; + return S2N_SUCCESS; } /* @@ -336,3 +344,42 @@ int s2n_tls13_update_application_traffic_secret(struct s2n_tls13_keys *keys, str return 0; } + +int s2n_tls13_derive_resumption_master_secret(struct s2n_tls13_keys *keys, struct s2n_hash_state *hashes, struct s2n_blob *secret_blob) +{ + notnull_check(keys); + notnull_check(hashes); + notnull_check(secret_blob); + + /* Sanity check that input hash is of expected type */ + ENSURE_POSIX(keys->hash_algorithm == hashes->alg, S2N_ERR_HASH_INVALID_ALGORITHM); + + s2n_tls13_key_blob(message_digest, keys->size); + + /* Copy the hashes into the message_digest */ + DEFER_CLEANUP(struct s2n_hash_state hkdf_hash_copy, s2n_hash_free); + GUARD(s2n_hash_new(&hkdf_hash_copy)); + GUARD(s2n_hash_copy(&hkdf_hash_copy, hashes)); + GUARD(s2n_hash_digest(&hkdf_hash_copy, message_digest.data, message_digest.size)); + + /* Derive master session resumption from master secret */ + GUARD(s2n_hkdf_expand_label(&keys->hmac, keys->hmac_algorithm, &keys->extract_secret, + &s2n_tls13_label_resumption_master_secret, &message_digest, secret_blob)); + + return S2N_SUCCESS; +} + +S2N_RESULT s2n_tls13_derive_session_ticket_secret(struct s2n_tls13_keys *keys, struct s2n_blob *resumption_secret, + struct s2n_blob *ticket_nonce, struct s2n_blob *secret_blob) +{ + ENSURE_REF(keys); + ENSURE_REF(resumption_secret); + ENSURE_REF(ticket_nonce); + ENSURE_REF(secret_blob); + + /* Derive session ticket secret from master session resumption secret */ + GUARD_AS_RESULT(s2n_hkdf_expand_label(&keys->hmac, keys->hmac_algorithm, resumption_secret, + &s2n_tls13_label_session_ticket_secret, ticket_nonce, secret_blob)); + + return S2N_RESULT_OK; +} diff --git a/contrib/restricted/aws/s2n/crypto/s2n_tls13_keys.h b/contrib/restricted/aws/s2n/crypto/s2n_tls13_keys.h index c572f6edfd..cf4e6185f4 100644 --- a/contrib/restricted/aws/s2n/crypto/s2n_tls13_keys.h +++ b/contrib/restricted/aws/s2n/crypto/s2n_tls13_keys.h @@ -74,7 +74,7 @@ extern const struct s2n_blob s2n_tls13_label_traffic_secret_iv; int s2n_tls13_keys_init(struct s2n_tls13_keys *handshake, s2n_hmac_algorithm alg); int s2n_tls13_keys_free(struct s2n_tls13_keys *keys); int s2n_tls13_derive_binder_key(struct s2n_tls13_keys *keys, struct s2n_psk *psk); -int s2n_tls13_derive_early_secrets(struct s2n_tls13_keys *handshake); +int s2n_tls13_derive_early_secrets(struct s2n_tls13_keys *handshake, struct s2n_psk *psk); int s2n_tls13_derive_handshake_secrets(struct s2n_tls13_keys *handshake, const struct s2n_blob *ecdhe, struct s2n_hash_state *client_server_hello_hash, @@ -87,3 +87,7 @@ int s2n_tls13_derive_traffic_keys(struct s2n_tls13_keys *handshake, struct s2n_b int s2n_tls13_derive_finished_key(struct s2n_tls13_keys *keys, struct s2n_blob *secret_key, struct s2n_blob *output_finish_key); int s2n_tls13_calculate_finished_mac(struct s2n_tls13_keys *keys, struct s2n_blob *finished_key, struct s2n_hash_state *hash_state, struct s2n_blob *finished_verify); int s2n_tls13_update_application_traffic_secret(struct s2n_tls13_keys *keys, struct s2n_blob *old_secret, struct s2n_blob *new_secret); + +int s2n_tls13_derive_resumption_master_secret(struct s2n_tls13_keys *keys, struct s2n_hash_state *hashes, struct s2n_blob *secret_blob); +S2N_RESULT s2n_tls13_derive_session_ticket_secret(struct s2n_tls13_keys *keys, struct s2n_blob *resumption_secret, + struct s2n_blob *ticket_nonce, struct s2n_blob *secret_blob); diff --git a/contrib/restricted/aws/s2n/error/s2n_errno.c b/contrib/restricted/aws/s2n/error/s2n_errno.c index 14c5450d96..1fcc1b6634 100644 --- a/contrib/restricted/aws/s2n/error/s2n_errno.c +++ b/contrib/restricted/aws/s2n/error/s2n_errno.c @@ -31,6 +31,14 @@ __thread int s2n_errno; __thread const char *s2n_debug_str; +/** + * Returns the address of the thread-local `s2n_errno` variable + */ +int *s2n_errno_location() +{ + return &s2n_errno; +} + static const char *no_such_language = "Language is not supported for error translation"; static const char *no_such_error = "Internal s2n error"; @@ -215,7 +223,6 @@ static const char *no_such_error = "Internal s2n error"; ERR_ENTRY(S2N_ERR_SESSION_TICKET_NOT_SUPPORTED, "Session ticket not supported for this connection") \ ERR_ENTRY(S2N_ERR_OCSP_NOT_SUPPORTED, "OCSP stapling was requested, but is not supported") \ ERR_ENTRY(S2N_ERR_INVALID_SIGNATURE_ALGORITHMS_PREFERENCES, "Invalid signature algorithms preferences version") \ - ERR_ENTRY(S2N_ERR_PQ_KEMS_DISALLOWED_IN_FIPS, "PQ KEMs are disallowed while in FIPS mode") \ ERR_ENTRY(S2N_RSA_PSS_NOT_SUPPORTED, "RSA-PSS signing not supported by underlying libcrypto implementation") \ ERR_ENTRY(S2N_ERR_MAX_INNER_PLAINTEXT_SIZE, "Inner plaintext size exceeds limit") \ ERR_ENTRY(S2N_ERR_INVALID_ECC_PREFERENCES, "Invalid ecc curves preferences version") \ @@ -235,9 +242,12 @@ static const char *no_such_error = "Internal s2n error"; ERR_ENTRY(S2N_ERR_ASYNC_APPLY_WHILE_INVOKING, "Async private key operation cannot consumed inside async pkey callback") \ ERR_ENTRY(S2N_ERR_ASYNC_ALREADY_APPLIED, "Async operation was already applied to connection, cannot apply it again") \ ERR_ENTRY(S2N_ERR_INVALID_HELLO_RETRY, "Invalid hello retry request") \ - ERR_ENTRY(S2N_ERR_INVALID_STATE, "Invalid state, this is the result of invalid use of an API. Check the API documentation for the function that raised this error for more info.") \ + ERR_ENTRY(S2N_ERR_INVALID_STATE, "Invalid state, this is the result of invalid use of an API. Check the API documentation for the function that raised this error for more info") \ ERR_ENTRY(S2N_ERR_UNSUPPORTED_WITH_QUIC, "Functionality not supported when running with QUIC support enabled") \ - ERR_ENTRY(S2N_ERR_PQ_CRYPTO, "An error occurred in a post-quantum crypto function.") \ + ERR_ENTRY(S2N_ERR_PQ_CRYPTO, "An error occurred in a post-quantum crypto function") \ + ERR_ENTRY(S2N_ERR_PQ_DISABLED, "Post-quantum crypto is disabled") \ + ERR_ENTRY(S2N_ERR_DUPLICATE_PSK_IDENTITIES, "The list of pre-shared keys provided contains duplicate psk identities") \ + ERR_ENTRY(S2N_ERR_REENTRANCY, "Original execution must complete before method can be called again") \ /* clang-format on */ diff --git a/contrib/restricted/aws/s2n/error/s2n_errno.h b/contrib/restricted/aws/s2n/error/s2n_errno.h index 9151feabd3..1c5afb8f2b 100644 --- a/contrib/restricted/aws/s2n/error/s2n_errno.h +++ b/contrib/restricted/aws/s2n/error/s2n_errno.h @@ -111,7 +111,6 @@ typedef enum { S2N_ERR_BAD_KEY_SHARE, S2N_ERR_CANCELLED, S2N_ERR_PROTOCOL_DOWNGRADE_DETECTED, - S2N_ERR_PQ_KEMS_DISALLOWED_IN_FIPS, S2N_ERR_MAX_INNER_PLAINTEXT_SIZE, S2N_ERR_RECORD_STUFFER_SIZE, S2N_ERR_FRAGMENT_LENGTH_TOO_LARGE, @@ -200,6 +199,7 @@ typedef enum { S2N_ERR_ASYNC_MORE_THAN_ONE, S2N_ERR_INVALID_STATE, S2N_ERR_PQ_CRYPTO, + S2N_ERR_PQ_DISABLED, S2N_ERR_T_INTERNAL_END, /* S2N_ERR_T_USAGE */ @@ -261,6 +261,8 @@ typedef enum { S2N_ERR_ASYNC_APPLY_WHILE_INVOKING, S2N_ERR_ASYNC_ALREADY_APPLIED, S2N_ERR_UNSUPPORTED_WITH_QUIC, + S2N_ERR_DUPLICATE_PSK_IDENTITIES, + S2N_ERR_REENTRANCY, S2N_ERR_T_USAGE_END, } s2n_error; diff --git a/contrib/restricted/aws/s2n/pq-crypto/bike_r1/bike_r1_kem.c b/contrib/restricted/aws/s2n/pq-crypto/bike_r1/bike_r1_kem.c index cb566d7435..21b0b6f5a3 100644 --- a/contrib/restricted/aws/s2n/pq-crypto/bike_r1/bike_r1_kem.c +++ b/contrib/restricted/aws/s2n/pq-crypto/bike_r1/bike_r1_kem.c @@ -13,6 +13,7 @@ #include "parallel_hash.h" #include "sampling.h" #include "tls/s2n_kem.h" +#include "pq-crypto/s2n_pq.h" _INLINE_ void split_e(OUT split_e_t *splitted_e, IN const e_t *e) @@ -155,6 +156,8 @@ get_ss(OUT ss_t *out, IN const e_t *e) int BIKE1_L1_R1_crypto_kem_keypair(OUT unsigned char *pk, OUT unsigned char *sk) { + ENSURE_POSIX(s2n_pq_is_enabled(), S2N_ERR_PQ_DISABLED); + // Convert to this implementation types pk_t *l_pk = (pk_t *)pk; @@ -211,6 +214,7 @@ BIKE1_L1_R1_crypto_kem_enc(OUT unsigned char * ct, IN const unsigned char *pk) { DMSG(" Enter crypto_kem_enc.\n"); + ENSURE_POSIX(s2n_pq_is_enabled(), S2N_ERR_PQ_DISABLED); // Convert to this implementation types const pk_t *l_pk = (const pk_t *)pk; @@ -265,6 +269,7 @@ BIKE1_L1_R1_crypto_kem_dec(OUT unsigned char * ss, IN const unsigned char *sk) { DMSG(" Enter crypto_kem_dec.\n"); + ENSURE_POSIX(s2n_pq_is_enabled(), S2N_ERR_PQ_DISABLED); // Convert to this implementation types const ct_t *l_ct = (const ct_t *)ct; diff --git a/contrib/restricted/aws/s2n/pq-crypto/bike_r2/bike_r2_kem.c b/contrib/restricted/aws/s2n/pq-crypto/bike_r2/bike_r2_kem.c index 3539827d14..8f29f3add9 100644 --- a/contrib/restricted/aws/s2n/pq-crypto/bike_r2/bike_r2_kem.c +++ b/contrib/restricted/aws/s2n/pq-crypto/bike_r2/bike_r2_kem.c @@ -11,6 +11,7 @@ #include "sampling.h" #include "sha.h" #include "tls/s2n_kem.h" +#include "pq-crypto/s2n_pq.h" _INLINE_ void split_e(OUT split_e_t *splitted_e, IN const e_t *e) @@ -211,6 +212,8 @@ get_ss(OUT ss_t *out, IN const r_t *in0, IN const r_t *in1, IN const ct_t *ct) int BIKE1_L1_R2_crypto_kem_keypair(OUT unsigned char *pk, OUT unsigned char *sk) { + ENSURE_POSIX(s2n_pq_is_enabled(), S2N_ERR_PQ_DISABLED); + notnull_check(sk); notnull_check(pk); @@ -283,6 +286,7 @@ BIKE1_L1_R2_crypto_kem_enc(OUT unsigned char * ct, IN const unsigned char *pk) { DMSG(" Enter crypto_kem_enc.\n"); + ENSURE_POSIX(s2n_pq_is_enabled(), S2N_ERR_PQ_DISABLED); // Convert to the types that are used by this implementation const pk_t *l_pk = (const pk_t *)pk; @@ -323,6 +327,7 @@ BIKE1_L1_R2_crypto_kem_dec(OUT unsigned char * ss, IN const unsigned char *sk) { DMSG(" Enter crypto_kem_dec.\n"); + ENSURE_POSIX(s2n_pq_is_enabled(), S2N_ERR_PQ_DISABLED); // Convert to the types used by this implementation const ct_t *l_ct = (const ct_t *)ct; diff --git a/contrib/restricted/aws/s2n/pq-crypto/kyber_90s_r2/kyber_90s_r2_kem.c b/contrib/restricted/aws/s2n/pq-crypto/kyber_90s_r2/kyber_90s_r2_kem.c index ff28dd0351..9de3c1daef 100644 --- a/contrib/restricted/aws/s2n/pq-crypto/kyber_90s_r2/kyber_90s_r2_kem.c +++ b/contrib/restricted/aws/s2n/pq-crypto/kyber_90s_r2/kyber_90s_r2_kem.c @@ -6,6 +6,7 @@ #include "../s2n_pq_random.h" #include "utils/s2n_safety.h" #include "tls/s2n_kem.h" +#include "pq-crypto/s2n_pq.h" #include <stdlib.h> @@ -21,6 +22,7 @@ * Returns 0 (success) **************************************************/ int kyber_512_90s_r2_crypto_kem_keypair(uint8_t *pk, uint8_t *sk) { + ENSURE_POSIX(s2n_pq_is_enabled(), S2N_ERR_PQ_DISABLED); size_t i; PQCLEAN_KYBER51290S_CLEAN_indcpa_keypair(pk, sk); for (i = 0; i < KYBER_INDCPA_PUBLICKEYBYTES; i++) { @@ -44,6 +46,7 @@ int kyber_512_90s_r2_crypto_kem_keypair(uint8_t *pk, uint8_t *sk) { * Returns 0 (success) **************************************************/ int kyber_512_90s_r2_crypto_kem_enc(uint8_t *ct, uint8_t *ss, const uint8_t *pk) { + ENSURE_POSIX(s2n_pq_is_enabled(), S2N_ERR_PQ_DISABLED); uint8_t kr[2 * KYBER_SYMBYTES]; /* Will contain key, coins */ uint8_t buf[2 * KYBER_SYMBYTES]; @@ -75,6 +78,7 @@ int kyber_512_90s_r2_crypto_kem_enc(uint8_t *ct, uint8_t *ss, const uint8_t *pk) * On failure, ss will contain a pseudo-random value. **************************************************/ int kyber_512_90s_r2_crypto_kem_dec(uint8_t *ss, const uint8_t *ct, const uint8_t *sk) { + ENSURE_POSIX(s2n_pq_is_enabled(), S2N_ERR_PQ_DISABLED); size_t i; uint8_t fail; uint8_t cmp[KYBER_CIPHERTEXTBYTES]; diff --git a/contrib/restricted/aws/s2n/pq-crypto/kyber_r2/kyber_r2_kem.c b/contrib/restricted/aws/s2n/pq-crypto/kyber_r2/kyber_r2_kem.c index d9b64d4336..9871084bb4 100644 --- a/contrib/restricted/aws/s2n/pq-crypto/kyber_r2/kyber_r2_kem.c +++ b/contrib/restricted/aws/s2n/pq-crypto/kyber_r2/kyber_r2_kem.c @@ -6,6 +6,7 @@ #include "../s2n_pq_random.h" #include "utils/s2n_safety.h" #include "tls/s2n_kem.h" +#include "pq-crypto/s2n_pq.h" #include <stdlib.h> @@ -21,6 +22,7 @@ * Returns 0 (success) **************************************************/ int kyber_512_r2_crypto_kem_keypair(uint8_t *pk, uint8_t *sk) { + ENSURE_POSIX(s2n_pq_is_enabled(), S2N_ERR_PQ_DISABLED); size_t i; PQCLEAN_KYBER512_CLEAN_indcpa_keypair(pk, sk); for (i = 0; i < KYBER_INDCPA_PUBLICKEYBYTES; i++) { @@ -44,6 +46,7 @@ int kyber_512_r2_crypto_kem_keypair(uint8_t *pk, uint8_t *sk) { * Returns 0 (success) **************************************************/ int kyber_512_r2_crypto_kem_enc(uint8_t *ct, uint8_t *ss, const uint8_t *pk) { + ENSURE_POSIX(s2n_pq_is_enabled(), S2N_ERR_PQ_DISABLED); uint8_t kr[2 * KYBER_SYMBYTES]; /* Will contain key, coins */ uint8_t buf[2 * KYBER_SYMBYTES]; @@ -75,6 +78,7 @@ int kyber_512_r2_crypto_kem_enc(uint8_t *ct, uint8_t *ss, const uint8_t *pk) { * On failure, ss will contain a pseudo-random value. **************************************************/ int kyber_512_r2_crypto_kem_dec(uint8_t *ss, const uint8_t *ct, const uint8_t *sk) { + ENSURE_POSIX(s2n_pq_is_enabled(), S2N_ERR_PQ_DISABLED); size_t i; uint8_t fail; uint8_t cmp[KYBER_CIPHERTEXTBYTES]; diff --git a/contrib/restricted/aws/s2n/pq-crypto/sike_r1/sike_r1_kem.c b/contrib/restricted/aws/s2n/pq-crypto/sike_r1/sike_r1_kem.c index 858676fe67..3122eb6539 100644 --- a/contrib/restricted/aws/s2n/pq-crypto/sike_r1/sike_r1_kem.c +++ b/contrib/restricted/aws/s2n/pq-crypto/sike_r1/sike_r1_kem.c @@ -10,11 +10,13 @@ #include "pq-crypto/s2n_pq_random.h" #include "utils/s2n_safety.h" #include "tls/s2n_kem.h" +#include "pq-crypto/s2n_pq.h" int SIKE_P503_r1_crypto_kem_keypair(unsigned char *pk, unsigned char *sk) { // SIKE's key generation // Outputs: secret key sk (SIKE_P503_R1_SECRET_KEY_BYTES = MSG_BYTES + SECRETKEY_B_BYTES + SIKE_P503_R1_PUBLIC_KEY_BYTES bytes) // public key pk (SIKE_P503_R1_PUBLIC_KEY_BYTES bytes) + ENSURE_POSIX(s2n_pq_is_enabled(), S2N_ERR_PQ_DISABLED); digit_t _sk[SECRETKEY_B_BYTES/sizeof(digit_t)]; @@ -38,6 +40,8 @@ int SIKE_P503_r1_crypto_kem_enc(unsigned char *ct, unsigned char *ss, const unsi // Input: public key pk (SIKE_P503_R1_PUBLIC_KEY_BYTES bytes) // Outputs: shared secret ss (SIKE_P503_R1_SHARED_SECRET_BYTES bytes) // ciphertext message ct (SIKE_P503_R1_CIPHERTEXT_BYTES = SIKE_P503_R1_PUBLIC_KEY_BYTES + MSG_BYTES bytes) + ENSURE_POSIX(s2n_pq_is_enabled(), S2N_ERR_PQ_DISABLED); + const uint16_t G = 0; const uint16_t H = 1; const uint16_t P = 2; @@ -78,6 +82,8 @@ int SIKE_P503_r1_crypto_kem_dec(unsigned char *ss, const unsigned char *ct, cons // Input: secret key sk (SIKE_P503_R1_SECRET_KEY_BYTES = MSG_BYTES + SECRETKEY_B_BYTES + SIKE_P503_R1_PUBLIC_KEY_BYTES bytes) // ciphertext message ct (SIKE_P503_R1_CIPHERTEXT_BYTES = SIKE_P503_R1_PUBLIC_KEY_BYTES + MSG_BYTES bytes) // Outputs: shared secret ss (SIKE_P503_R1_SHARED_SECRET_BYTES bytes) + ENSURE_POSIX(s2n_pq_is_enabled(), S2N_ERR_PQ_DISABLED); + const uint16_t G = 0; const uint16_t H = 1; const uint16_t P = 2; diff --git a/contrib/restricted/aws/s2n/pq-crypto/sike_r2/sike_r2_kem.c b/contrib/restricted/aws/s2n/pq-crypto/sike_r2/sike_r2_kem.c index 453e3b4690..7768ad3650 100644 --- a/contrib/restricted/aws/s2n/pq-crypto/sike_r2/sike_r2_kem.c +++ b/contrib/restricted/aws/s2n/pq-crypto/sike_r2/sike_r2_kem.c @@ -9,11 +9,13 @@ #include "fips202.h" #include "utils/s2n_safety.h" #include "tls/s2n_kem.h" +#include "pq-crypto/s2n_pq.h" int SIKE_P434_r2_crypto_kem_keypair(unsigned char *pk, unsigned char *sk) { // SIKE's key generation // Outputs: secret key sk (CRYPTO_SECRETKEYBYTES = MSG_BYTES + SECRETKEY_B_BYTES + CRYPTO_PUBLICKEYBYTES bytes) // public key pk (CRYPTO_PUBLICKEYBYTES bytes) + ENSURE_POSIX(s2n_pq_is_enabled(), S2N_ERR_PQ_DISABLED); digit_t _sk[(SECRETKEY_B_BYTES / sizeof(digit_t)) + 1]; @@ -37,6 +39,7 @@ int SIKE_P434_r2_crypto_kem_enc(unsigned char *ct, unsigned char *ss, const unsi // Input: public key pk (CRYPTO_PUBLICKEYBYTES bytes) // Outputs: shared secret ss (CRYPTO_BYTES bytes) // ciphertext message ct (CRYPTO_CIPHERTEXTBYTES = CRYPTO_PUBLICKEYBYTES + MSG_BYTES bytes) + ENSURE_POSIX(s2n_pq_is_enabled(), S2N_ERR_PQ_DISABLED); union { unsigned char b[SECRETKEY_A_BYTES]; @@ -75,6 +78,7 @@ int SIKE_P434_r2_crypto_kem_dec(unsigned char *ss, const unsigned char *ct, cons // Input: secret key sk (CRYPTO_SECRETKEYBYTES = MSG_BYTES + SECRETKEY_B_BYTES + CRYPTO_PUBLICKEYBYTES bytes) // ciphertext message ct (CRYPTO_CIPHERTEXTBYTES = CRYPTO_PUBLICKEYBYTES + MSG_BYTES bytes) // Outputs: shared secret ss (CRYPTO_BYTES bytes) + ENSURE_POSIX(s2n_pq_is_enabled(), S2N_ERR_PQ_DISABLED); union { unsigned char b[SECRETKEY_A_BYTES]; diff --git a/contrib/restricted/aws/s2n/stuffer/s2n_stuffer_network_order.c b/contrib/restricted/aws/s2n/stuffer/s2n_stuffer_network_order.c index f30c10e82f..eb75409b6a 100644 --- a/contrib/restricted/aws/s2n/stuffer/s2n_stuffer_network_order.c +++ b/contrib/restricted/aws/s2n/stuffer/s2n_stuffer_network_order.c @@ -28,7 +28,7 @@ int s2n_stuffer_write_network_order(struct s2n_stuffer *stuffer, const uint64_t uint8_t *data = stuffer->blob.data + stuffer->write_cursor - length; for (int i = 0; i < length; i++) { - S2N_INVARIENT(i <= length); + S2N_INVARIANT(i <= length); uint8_t shift = (length - i - 1) * CHAR_BIT; data[i] = (input >> (shift)) & UINT8_MAX; } diff --git a/contrib/restricted/aws/s2n/tls/extensions/s2n_client_key_share.c b/contrib/restricted/aws/s2n/tls/extensions/s2n_client_key_share.c index 97797cc054..178f2e9c1d 100644 --- a/contrib/restricted/aws/s2n/tls/extensions/s2n_client_key_share.c +++ b/contrib/restricted/aws/s2n/tls/extensions/s2n_client_key_share.c @@ -22,7 +22,7 @@ #include "stuffer/s2n_stuffer.h" #include "utils/s2n_safety.h" #include "tls/s2n_tls13.h" -#include "crypto/s2n_fips.h" +#include "pq-crypto/s2n_pq.h" #define S2N_IS_KEY_SHARE_LIST_EMPTY(preferred_key_shares) (preferred_key_shares & 1) #define S2N_IS_KEY_SHARE_REQUESTED(preferred_key_shares, i) ((preferred_key_shares >> (i + 1)) & 1) @@ -107,8 +107,8 @@ static int s2n_generate_pq_hybrid_key_share(struct s2n_stuffer *out, struct s2n_ notnull_check(out); notnull_check(kem_group_params); - /* This function should never be called when in FIPS mode */ - ENSURE_POSIX(s2n_is_in_fips_mode() == false, S2N_ERR_PQ_KEMS_DISALLOWED_IN_FIPS); + /* This function should never be called when PQ is disabled */ + ENSURE_POSIX(s2n_pq_is_enabled(), S2N_ERR_PQ_DISABLED); const struct s2n_kem_group *kem_group = kem_group_params->kem_group; notnull_check(kem_group); @@ -144,8 +144,8 @@ static int s2n_generate_default_pq_hybrid_key_share(struct s2n_connection *conn, notnull_check(conn); notnull_check(out); - /* Client should skip sending PQ groups/key shares if in FIPS mode */ - if (s2n_is_in_fips_mode()) { + /* Client should skip sending PQ groups/key shares if PQ is disabled */ + if (!s2n_pq_is_enabled()) { return S2N_SUCCESS; } @@ -227,9 +227,9 @@ static int s2n_send_hrr_pq_hybrid_keyshare(struct s2n_connection *conn, struct s notnull_check(conn); notnull_check(out); - /* If in FIPS mode, the client should not have sent any PQ IDs + /* If PQ is disabled, the client should not have sent any PQ IDs * in the supported_groups list of the initial ClientHello */ - ENSURE_POSIX(s2n_is_in_fips_mode() == false, S2N_ERR_PQ_KEMS_DISALLOWED_IN_FIPS); + ENSURE_POSIX(s2n_pq_is_enabled(), S2N_ERR_PQ_DISABLED); const struct s2n_kem_preferences *kem_pref = NULL; GUARD(s2n_connection_get_kem_preferences(conn, &kem_pref)); @@ -377,7 +377,10 @@ static int s2n_client_key_share_recv_pq_hybrid(struct s2n_connection *conn, stru GUARD(s2n_connection_get_kem_preferences(conn, &kem_pref)); notnull_check(kem_pref); - ENSURE_POSIX(s2n_is_in_fips_mode() == false, S2N_ERR_PQ_KEMS_DISALLOWED_IN_FIPS); + /* Ignore key share if PQ is not enabled */ + if (!s2n_pq_is_enabled()) { + return S2N_SUCCESS; + } const struct s2n_kem_group *kem_group = NULL; struct s2n_kem_group_params *client_kem_group_params = NULL; @@ -476,9 +479,7 @@ static int s2n_client_key_share_recv(struct s2n_connection *conn, struct s2n_stu /* Try to parse the share as ECC, then as PQ/hybrid; will ignore * shares for unrecognized groups. */ GUARD(s2n_client_key_share_recv_ecc(conn, &key_share, named_group, &match_found)); - if (!s2n_is_in_fips_mode()) { - GUARD(s2n_client_key_share_recv_pq_hybrid(conn, &key_share, named_group, &match_found)); - } + GUARD(s2n_client_key_share_recv_pq_hybrid(conn, &key_share, named_group, &match_found)); } /* If there were no matching key shares, then we received an empty key share extension diff --git a/contrib/restricted/aws/s2n/tls/extensions/s2n_client_pq_kem.c b/contrib/restricted/aws/s2n/tls/extensions/s2n_client_pq_kem.c index 450e293299..83c4c8f1d0 100644 --- a/contrib/restricted/aws/s2n/tls/extensions/s2n_client_pq_kem.c +++ b/contrib/restricted/aws/s2n/tls/extensions/s2n_client_pq_kem.c @@ -21,6 +21,7 @@ #include "tls/s2n_security_policies.h" #include "tls/s2n_tls.h" #include "tls/s2n_tls_parameters.h" +#include "pq-crypto/s2n_pq.h" #include "utils/s2n_safety.h" @@ -41,7 +42,8 @@ static bool s2n_client_pq_kem_should_send(struct s2n_connection *conn) { const struct s2n_security_policy *security_policy; return s2n_connection_get_security_policy(conn, &security_policy) == S2N_SUCCESS - && s2n_pq_kem_is_extension_required(security_policy); + && s2n_pq_kem_is_extension_required(security_policy) + && s2n_pq_is_enabled(); } static int s2n_client_pq_kem_send(struct s2n_connection *conn, struct s2n_stuffer *out) @@ -63,6 +65,11 @@ static int s2n_client_pq_kem_recv(struct s2n_connection *conn, struct s2n_stuffe uint16_t size_of_all; struct s2n_blob *proposed_kems = &conn->secure.client_pq_kem_extension; + /* Ignore extension if PQ is disabled */ + if (!s2n_pq_is_enabled()) { + return S2N_SUCCESS; + } + GUARD(s2n_stuffer_read_uint16(extension, &size_of_all)); if (size_of_all > s2n_stuffer_data_available(extension) || size_of_all % sizeof(kem_extension_size)) { /* Malformed length, ignore the extension */ diff --git a/contrib/restricted/aws/s2n/tls/extensions/s2n_client_psk.c b/contrib/restricted/aws/s2n/tls/extensions/s2n_client_psk.c index 6e058d4392..d457829022 100644 --- a/contrib/restricted/aws/s2n/tls/extensions/s2n_client_psk.c +++ b/contrib/restricted/aws/s2n/tls/extensions/s2n_client_psk.c @@ -18,14 +18,17 @@ #include "crypto/s2n_hash.h" #include "tls/s2n_tls.h" +#include "tls/s2n_psk.h" #include "tls/s2n_tls_parameters.h" +#include "tls/extensions/s2n_client_psk.h" +#include "utils/s2n_bitmap.h" #include "utils/s2n_safety.h" #define SIZE_OF_BINDER_SIZE sizeof(uint8_t) #define SIZE_OF_BINDER_LIST_SIZE sizeof(uint16_t) +#define MAX_NUM_OF_PSK_IDENTITIES 100 -static bool s2n_client_psk_should_send(struct s2n_connection *conn); static int s2n_client_psk_send(struct s2n_connection *conn, struct s2n_stuffer *out); static int s2n_client_psk_recv(struct s2n_connection *conn, struct s2n_stuffer *extension); @@ -38,10 +41,35 @@ const s2n_extension_type s2n_client_psk_extension = { .if_missing = s2n_extension_noop_if_missing, }; -static bool s2n_client_psk_should_send(struct s2n_connection *conn) +bool s2n_client_psk_should_send(struct s2n_connection *conn) { - return conn && s2n_connection_get_protocol_version(conn) >= S2N_TLS13 - && conn->psk_params.psk_list.len; + if (conn == NULL) { + return false; + } + + if (s2n_connection_get_protocol_version(conn) < S2N_TLS13) { + return false; + } + + /* If this is NOT the second ClientHello after a retry, then all PSKs are viable. + * Send the extension if any PSKs are configured. + */ + if (!s2n_is_hello_retry_handshake(conn)) { + return conn->psk_params.psk_list.len > 0; + } + + /* If this is the second ClientHello after a retry, then only PSKs that match the cipher suite + * are viable. Only send the extension if at least one configured PSK matches the cipher suite. + */ + for (size_t i = 0; i < conn->psk_params.psk_list.len; i++) { + struct s2n_psk *psk = NULL; + if (s2n_result_is_ok(s2n_array_get(&conn->psk_params.psk_list, i, (void**) &psk)) + && psk != NULL + && conn->secure.cipher_suite->prf_alg == psk->hmac_alg) { + return true; + } + } + return false; } static int s2n_client_psk_send(struct s2n_connection *conn, struct s2n_stuffer *out) @@ -61,6 +89,16 @@ static int s2n_client_psk_send(struct s2n_connection *conn, struct s2n_stuffer * GUARD_AS_POSIX(s2n_array_get(psk_list, i, (void**) &psk)); notnull_check(psk); + /** + *= https://tools.ietf.org/rfc/rfc8446#section-4.1.4 + *# In addition, in its updated ClientHello, the client SHOULD NOT offer + *# any pre-shared keys associated with a hash other than that of the + *# selected cipher suite. + */ + if (s2n_is_hello_retry_handshake(conn) && conn->secure.cipher_suite->prf_alg != psk->hmac_alg) { + continue; + } + /* Write the identity */ GUARD(s2n_stuffer_write_uint16(out, psk->identity.size)); GUARD(s2n_stuffer_write(out, &psk->identity)); @@ -68,7 +106,7 @@ static int s2n_client_psk_send(struct s2n_connection *conn, struct s2n_stuffer * /* Calculate binder size */ uint8_t hash_size = 0; - GUARD(s2n_hash_digest_size(psk->hash_alg, &hash_size)); + GUARD(s2n_hmac_digest_size(psk->hmac_alg, &hash_size)); binder_list_size += hash_size + SIZE_OF_BINDER_SIZE; } @@ -121,44 +159,104 @@ static S2N_RESULT s2n_match_psk_identity(struct s2n_array *known_psks, const str return S2N_RESULT_OK; } +static S2N_RESULT s2n_select_psk_identity(struct s2n_connection *conn, struct s2n_psk_identity *identities, size_t identities_length) +{ + ENSURE_REF(conn); + ENSURE_REF(identities); + + struct s2n_array *known_psks = &conn->psk_params.psk_list; + conn->psk_params.chosen_psk = NULL; + + for (size_t i = 0; i < identities_length; i++) { + struct s2n_blob wire_identity = { 0 }; + GUARD_AS_RESULT(s2n_blob_init(&wire_identity, identities[i].data, identities[i].length)); + + struct s2n_psk *local_match = NULL; + GUARD_RESULT(s2n_match_psk_identity(known_psks, &wire_identity, &local_match)); + + /* When a local match is found we do not end this loop early in an attempt + * to keep the server's known identities a secret and hide its ordering. + */ + if (local_match != NULL && conn->psk_params.chosen_psk == NULL) { + conn->psk_params.chosen_psk_wire_index = i; + conn->psk_params.chosen_psk = local_match; + } + } + + return S2N_RESULT_OK; +} + +static S2N_RESULT s2n_count_psk_identities(struct s2n_stuffer *input, uint16_t *identity_count) +{ + ENSURE_REF(input); + ENSURE_REF(identity_count); + + const size_t obfuscated_ticket_age_size = sizeof(uint32_t); + + *identity_count = 0; + while (s2n_stuffer_data_available(input) > 0) { + uint16_t identity_size = 0; + GUARD_AS_RESULT(s2n_stuffer_read_uint16(input, &identity_size)); + GUARD_AS_RESULT(s2n_stuffer_skip_read(input, identity_size)); + GUARD_AS_RESULT(s2n_stuffer_skip_read(input, obfuscated_ticket_age_size)); + (*identity_count)++; + } + GUARD_AS_RESULT(s2n_stuffer_reread(input)); + return S2N_RESULT_OK; +} + static S2N_RESULT s2n_client_psk_recv_identity_list(struct s2n_connection *conn, struct s2n_stuffer *wire_identities_in) { ENSURE_REF(conn); ENSURE_REF(wire_identities_in); - uint8_t wire_index = 0; + uint16_t identities_count = 0; + GUARD_RESULT(s2n_count_psk_identities(wire_identities_in, &identities_count)); + ENSURE_GT(identities_count, 0); + ENSURE_LTE(identities_count, MAX_NUM_OF_PSK_IDENTITIES); + + DEFER_CLEANUP(struct s2n_blob wire_identities_blob = { 0 }, s2n_free); + GUARD_AS_RESULT(s2n_alloc(&wire_identities_blob, identities_count * sizeof(struct s2n_psk_identity))); + struct s2n_psk_identity *wire_identities = (struct s2n_psk_identity*)(void*) wire_identities_blob.data; + + uint16_t wire_index = 0; while (s2n_stuffer_data_available(wire_identities_in) > 0) { uint16_t identity_size = 0; GUARD_AS_RESULT(s2n_stuffer_read_uint16(wire_identities_in, &identity_size)); + ENSURE_GT(identity_size, 0); - uint8_t *identity_data; - ENSURE_REF(identity_data = s2n_stuffer_raw_read(wire_identities_in, identity_size)); + uint8_t *identity_data = s2n_stuffer_raw_read(wire_identities_in, identity_size); + ENSURE_REF(identity_data); - struct s2n_blob identity = { 0 }; - GUARD_AS_RESULT(s2n_blob_init(&identity, identity_data, identity_size)); + wire_identities[wire_index].data = identity_data; + wire_identities[wire_index].length = identity_size; - /* TODO: Validate obfuscated_ticket_age when using session tickets: - * https://github.com/awslabs/s2n/issues/2417 - * - * "For identities established externally, an obfuscated_ticket_age of 0 SHOULD be - * used, and servers MUST ignore the value." + /** + *= https://tools.ietf.org/rfc/rfc8446#section-4.2.11 + *# For identities established externally, an obfuscated_ticket_age of 0 SHOULD be + *# used, and servers MUST ignore the value. */ uint32_t obfuscated_ticket_age = 0; GUARD_AS_RESULT(s2n_stuffer_read_uint32(wire_identities_in, &obfuscated_ticket_age)); - /* TODO: Implement the callback to choose a PSK: https://github.com/awslabs/s2n/issues/2397 - * - * When we don't have a callback configured to choose a PSK, we should fall back to accepting - * the first PSK identity that also exists in our list of supported PSKs. */ - GUARD_RESULT(s2n_match_psk_identity(&conn->psk_params.psk_list, &identity, &conn->psk_params.chosen_psk)); - - if (conn->psk_params.chosen_psk) { - conn->psk_params.chosen_psk_wire_index = wire_index; - return S2N_RESULT_OK; - } - wire_index++; } + + if (conn->config->psk_selection_cb) { + GUARD_AS_RESULT(conn->config->psk_selection_cb(conn, wire_identities, identities_count, + &conn->psk_params.chosen_psk_wire_index)); + struct s2n_blob chosen_wire_identity = { 0 }; + GUARD_AS_RESULT(s2n_blob_init(&chosen_wire_identity, + wire_identities[conn->psk_params.chosen_psk_wire_index].data, + wire_identities[conn->psk_params.chosen_psk_wire_index].length)); + GUARD_RESULT(s2n_match_psk_identity(&conn->psk_params.psk_list, &chosen_wire_identity, &conn->psk_params.chosen_psk)); + } else { + GUARD_RESULT(s2n_select_psk_identity(conn, wire_identities, identities_count)); + } + + ENSURE_LT(conn->psk_params.chosen_psk_wire_index, identities_count); + ENSURE_REF(conn->psk_params.chosen_psk); + return S2N_RESULT_OK; } @@ -168,7 +266,7 @@ static S2N_RESULT s2n_client_psk_recv_binder_list(struct s2n_connection *conn, s ENSURE_REF(conn); ENSURE_REF(wire_binders_in); - uint8_t wire_index = 0; + uint16_t wire_index = 0; while (s2n_stuffer_data_available(wire_binders_in) > 0) { uint8_t wire_binder_size = 0; GUARD_AS_RESULT(s2n_stuffer_read_uint8(wire_binders_in, &wire_binder_size)); @@ -246,26 +344,66 @@ int s2n_client_psk_recv(struct s2n_connection *conn, struct s2n_stuffer *extensi return S2N_SUCCESS; } + /** + *= https://tools.ietf.org/rfc/rfc8446#section-4.2.11 + *# The "pre_shared_key" extension MUST be the last extension in the + *# ClientHello (this facilitates implementation as described below). + *# Servers MUST check that it is the last extension and otherwise fail + *# the handshake with an "illegal_parameter" alert. + */ + s2n_extension_type_id psk_ext_id; + GUARD(s2n_extension_supported_iana_value_to_id(TLS_EXTENSION_PRE_SHARED_KEY, &psk_ext_id)); + ne_check(conn->client_hello.extensions.count, 0); + uint16_t last_wire_index = conn->client_hello.extensions.count - 1; + uint16_t extension_wire_index = conn->client_hello.extensions.parsed_extensions[psk_ext_id].wire_index; + ENSURE_POSIX(extension_wire_index == last_wire_index, S2N_ERR_UNSUPPORTED_EXTENSION); + + /** + *= https://tools.ietf.org/rfc/rfc8446#section-4.2.9 + *# If clients offer "pre_shared_key" without a "psk_key_exchange_modes" extension, + *# servers MUST abort the handshake. + * + * We can safely do this check here because s2n_client_psk is + * required to be the last extension sent in the list. + */ + s2n_extension_type_id psk_ke_mode_ext_id; + GUARD(s2n_extension_supported_iana_value_to_id(TLS_EXTENSION_PSK_KEY_EXCHANGE_MODES, &psk_ke_mode_ext_id)); + ENSURE_POSIX(S2N_CBIT_TEST(conn->extension_requests_received, psk_ke_mode_ext_id), S2N_ERR_MISSING_EXTENSION); + + if (conn->psk_params.psk_ke_mode == S2N_PSK_DHE_KE) { + s2n_extension_type_id key_share_ext_id; + GUARD(s2n_extension_supported_iana_value_to_id(TLS_EXTENSION_KEY_SHARE, &key_share_ext_id)); + /* A key_share extension must have been received in order to use a pre-shared key + * in (EC)DHE key exchange mode. + */ + ENSURE_POSIX(S2N_CBIT_TEST(conn->extension_requests_received, key_share_ext_id), S2N_ERR_MISSING_EXTENSION); + } else { + /* s2n currently only supports pre-shared keys in (EC)DHE key exchange mode. If we receive keys with any other + * exchange mode we fall back to a full handshake. + */ + return S2N_SUCCESS; + } + if (s2n_result_is_error(s2n_client_psk_recv_identities(conn, extension))) { - /* https://tools.ietf.org/html/rfc8446#section-4.2.11: - * "If no acceptable PSKs are found, the server SHOULD perform a non-PSK - * handshake if possible." + /** + *= https://tools.ietf.org/rfc/rfc8446#section-4.2.11 + *# If no acceptable PSKs are found, the server SHOULD perform a non-PSK + *# handshake if possible. */ conn->psk_params.chosen_psk = NULL; } if (conn->psk_params.chosen_psk) { - /* https://tools.ietf.org/html/rfc8446#section-4.2.11: - * "Prior to accepting PSK key establishment, the server MUST validate - * the corresponding binder value. If this value is not present or does - * not validate, the server MUST abort the handshake." + /** + *= https://tools.ietf.org/rfc/rfc8446#section-4.2.11 + *# Prior to accepting PSK key establishment, the server MUST validate + *# the corresponding binder value (see Section 4.2.11.2 below). If this + *# value is not present or does not validate, the server MUST abort the + *# handshake. */ GUARD_AS_POSIX(s2n_client_psk_recv_binders(conn, extension)); } - /* At this point, we have either chosen a PSK or fallen back to a full handshake. - * Wipe any PSKs not chosen. */ - GUARD_AS_POSIX(s2n_psk_parameters_free_unused_psks(&conn->psk_params)); - + /* At this point, we have either chosen a PSK or fallen back to a full handshake. */ return S2N_SUCCESS; } diff --git a/contrib/restricted/aws/s2n/tls/extensions/s2n_client_psk.h b/contrib/restricted/aws/s2n/tls/extensions/s2n_client_psk.h index a317ace2bc..1fdabff50d 100644 --- a/contrib/restricted/aws/s2n/tls/extensions/s2n_client_psk.h +++ b/contrib/restricted/aws/s2n/tls/extensions/s2n_client_psk.h @@ -20,3 +20,5 @@ #include "stuffer/s2n_stuffer.h" extern const s2n_extension_type s2n_client_psk_extension; + +bool s2n_client_psk_should_send(struct s2n_connection *conn); diff --git a/contrib/restricted/aws/s2n/tls/extensions/s2n_client_supported_groups.c b/contrib/restricted/aws/s2n/tls/extensions/s2n_client_supported_groups.c index 9c1bf71092..4cb2f9e3c5 100644 --- a/contrib/restricted/aws/s2n/tls/extensions/s2n_client_supported_groups.c +++ b/contrib/restricted/aws/s2n/tls/extensions/s2n_client_supported_groups.c @@ -24,7 +24,7 @@ #include "tls/s2n_security_policies.h" #include "utils/s2n_safety.h" -#include "crypto/s2n_fips.h" +#include "pq-crypto/s2n_pq.h" #include "tls/s2n_tls13.h" static int s2n_client_supported_groups_send(struct s2n_connection *conn, struct s2n_stuffer *out); @@ -63,7 +63,7 @@ static int s2n_client_supported_groups_send(struct s2n_connection *conn, struct GUARD(s2n_stuffer_reserve_uint16(out, &group_list_len)); /* Send KEM groups list first */ - if (s2n_connection_get_protocol_version(conn) >= S2N_TLS13 && !s2n_is_in_fips_mode()) { + if (s2n_connection_get_protocol_version(conn) >= S2N_TLS13 && s2n_pq_is_enabled()) { for (size_t i = 0; i < kem_pref->tls13_kem_group_count; i++) { GUARD(s2n_stuffer_write_uint16(out, kem_pref->tls13_kem_groups[i]->iana_id)); } @@ -97,8 +97,8 @@ static int s2n_client_supported_groups_recv_iana_id(struct s2n_connection *conn, } } - /* Return early if in FIPS mode, or if TLS 1.3 is disabled, so as to ignore PQ IDs */ - if (s2n_is_in_fips_mode() || s2n_connection_get_protocol_version(conn) < S2N_TLS13) { + /* Return early if PQ is disabled, or if TLS version is less than 1.3, so as to ignore PQ IDs */ + if (!s2n_pq_is_enabled() || s2n_connection_get_protocol_version(conn) < S2N_TLS13) { return S2N_SUCCESS; } @@ -135,7 +135,7 @@ static int s2n_choose_supported_group(struct s2n_connection *conn) { conn->secure.server_kem_group_params.kem_params.kem = NULL; conn->secure.server_ecc_evp_params.negotiated_curve = NULL; - /* Prefer to negotiate hybrid PQ over ECC. If in FIPS mode, we will never choose a + /* Prefer to negotiate hybrid PQ over ECC. If PQ is disabled, we will never choose a * PQ group because the mutually_supported_kem_groups array will not have been * populated with anything. */ for (size_t i = 0; i < kem_pref->tls13_kem_group_count; i++) { diff --git a/contrib/restricted/aws/s2n/tls/extensions/s2n_extension_list.c b/contrib/restricted/aws/s2n/tls/extensions/s2n_extension_list.c index 81c9e9bf5a..5188535bf4 100644 --- a/contrib/restricted/aws/s2n/tls/extensions/s2n_extension_list.c +++ b/contrib/restricted/aws/s2n/tls/extensions/s2n_extension_list.c @@ -120,9 +120,10 @@ int s2n_extension_list_process(s2n_extension_list_id list_type, struct s2n_conne return S2N_SUCCESS; } -static int s2n_extension_parse(struct s2n_stuffer *in, s2n_parsed_extension *parsed_extensions) +static int s2n_extension_parse(struct s2n_stuffer *in, s2n_parsed_extension *parsed_extensions, uint16_t *wire_index) { notnull_check(parsed_extensions); + notnull_check(wire_index); uint16_t extension_type; ENSURE_POSIX(s2n_stuffer_read_uint16(in, &extension_type) == S2N_SUCCESS, @@ -149,7 +150,9 @@ static int s2n_extension_parse(struct s2n_stuffer *in, s2n_parsed_extension *par /* Fill in parsed extension */ parsed_extension->extension_type = extension_type; + parsed_extension->wire_index = *wire_index; GUARD(s2n_blob_init(&parsed_extension->extension, extension_data, extension_size)); + (*wire_index)++; return S2N_SUCCESS; } @@ -176,9 +179,11 @@ int s2n_extension_list_parse(struct s2n_stuffer *in, s2n_parsed_extensions_list GUARD(s2n_stuffer_init(&extensions_stuffer, &parsed_extension_list->raw)); GUARD(s2n_stuffer_skip_write(&extensions_stuffer, total_extensions_size)); + uint16_t wire_index = 0; while (s2n_stuffer_data_available(&extensions_stuffer)) { - GUARD(s2n_extension_parse(&extensions_stuffer, parsed_extension_list->parsed_extensions)); + GUARD(s2n_extension_parse(&extensions_stuffer, parsed_extension_list->parsed_extensions, &wire_index)); } + parsed_extension_list->count = wire_index; return S2N_SUCCESS; } diff --git a/contrib/restricted/aws/s2n/tls/extensions/s2n_extension_list.h b/contrib/restricted/aws/s2n/tls/extensions/s2n_extension_list.h index 35582e5638..dcf7c9da9b 100644 --- a/contrib/restricted/aws/s2n/tls/extensions/s2n_extension_list.h +++ b/contrib/restricted/aws/s2n/tls/extensions/s2n_extension_list.h @@ -23,11 +23,13 @@ typedef struct { uint16_t extension_type; struct s2n_blob extension; + uint16_t wire_index; } s2n_parsed_extension; typedef struct { s2n_parsed_extension parsed_extensions[S2N_PARSED_EXTENSIONS_COUNT]; struct s2n_blob raw; /* Needed by some ClientHello APIs */ + uint16_t count; } s2n_parsed_extensions_list; typedef enum { diff --git a/contrib/restricted/aws/s2n/tls/extensions/s2n_extension_type.h b/contrib/restricted/aws/s2n/tls/extensions/s2n_extension_type.h index 674c8e63dd..3c95af639f 100644 --- a/contrib/restricted/aws/s2n/tls/extensions/s2n_extension_type.h +++ b/contrib/restricted/aws/s2n/tls/extensions/s2n_extension_type.h @@ -61,6 +61,7 @@ static const uint16_t s2n_supported_extensions[] = { TLS_EXTENSION_KEY_SHARE, TLS_EXTENSION_COOKIE, TLS_QUIC_TRANSPORT_PARAMETERS, + TLS_EXTENSION_PSK_KEY_EXCHANGE_MODES, TLS_EXTENSION_PRE_SHARED_KEY, }; diff --git a/contrib/restricted/aws/s2n/tls/extensions/s2n_extension_type_lists.c b/contrib/restricted/aws/s2n/tls/extensions/s2n_extension_type_lists.c index ed4c196f59..5395366a6c 100644 --- a/contrib/restricted/aws/s2n/tls/extensions/s2n_extension_type_lists.c +++ b/contrib/restricted/aws/s2n/tls/extensions/s2n_extension_type_lists.c @@ -31,6 +31,7 @@ #include "tls/extensions/s2n_client_supported_groups.h" #include "tls/extensions/s2n_client_pq_kem.h" #include "tls/extensions/s2n_client_psk.h" +#include "tls/extensions/s2n_psk_key_exchange_modes.h" #include "tls/extensions/s2n_client_renegotiation_info.h" #include "tls/extensions/s2n_ec_point_format.h" #include "tls/extensions/s2n_quic_transport_params.h" @@ -45,6 +46,7 @@ #include "tls/extensions/s2n_server_signature_algorithms.h" #include "tls/extensions/s2n_server_supported_versions.h" #include "tls/extensions/s2n_server_key_share.h" +#include "tls/extensions/s2n_server_psk.h" static const s2n_extension_type *const client_hello_extensions[] = { &s2n_client_supported_versions_extension, @@ -62,6 +64,7 @@ static const s2n_extension_type *const client_hello_extensions[] = { &s2n_client_renegotiation_info_extension, &s2n_client_cookie_extension, &s2n_quic_transport_parameters_extension, + &s2n_psk_key_exchange_modes_extension, &s2n_client_psk_extension /* MUST be last */ }; @@ -81,6 +84,7 @@ static const s2n_extension_type *const tls13_server_hello_extensions[] = { &s2n_server_supported_versions_extension, &s2n_server_key_share_extension, &s2n_server_cookie_extension, + &s2n_server_psk_extension, /* MUST appear after keyshare extension */ }; static const s2n_extension_type *const encrypted_extensions[] = { diff --git a/contrib/restricted/aws/s2n/tls/extensions/s2n_psk_key_exchange_modes.c b/contrib/restricted/aws/s2n/tls/extensions/s2n_psk_key_exchange_modes.c new file mode 100644 index 0000000000..67b1904b6b --- /dev/null +++ b/contrib/restricted/aws/s2n/tls/extensions/s2n_psk_key_exchange_modes.c @@ -0,0 +1,83 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"). + * You may not use this file except in compliance with the License. + * A copy of the License is located at + * + * http://aws.amazon.com/apache2.0 + * + * or in the "license" file accompanying this file. This file 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. + */ + +#include <sys/param.h> +#include <stdint.h> + +#include "tls/s2n_tls_parameters.h" +#include "tls/extensions/s2n_client_psk.h" +#include "utils/s2n_safety.h" + +#define PSK_KEY_EXCHANGE_MODE_SIZE sizeof(uint8_t) + +static bool s2n_psk_key_exchange_modes_should_send(struct s2n_connection *conn); +static int s2n_psk_key_exchange_modes_send(struct s2n_connection *conn, struct s2n_stuffer *out); +static int s2n_psk_key_exchange_modes_recv(struct s2n_connection *conn, struct s2n_stuffer *extension); + +const s2n_extension_type s2n_psk_key_exchange_modes_extension = { + .iana_value = TLS_EXTENSION_PSK_KEY_EXCHANGE_MODES, + .is_response = false, + .send = s2n_psk_key_exchange_modes_send, + .recv = s2n_psk_key_exchange_modes_recv, + .should_send = s2n_psk_key_exchange_modes_should_send, + .if_missing = s2n_extension_noop_if_missing, +}; + +static bool s2n_psk_key_exchange_modes_should_send(struct s2n_connection *conn) +{ + /* Only send a psk_key_exchange_modes extension if a psk extension is also being sent */ + return s2n_client_psk_should_send(conn); +} + +static int s2n_psk_key_exchange_modes_send(struct s2n_connection *conn, struct s2n_stuffer *out) +{ + notnull_check(conn); + + GUARD(s2n_stuffer_write_uint8(out, PSK_KEY_EXCHANGE_MODE_SIZE)); + + /* s2n currently only supports pre-shared keys with (EC)DHE key establishment */ + GUARD(s2n_stuffer_write_uint8(out, TLS_PSK_DHE_KE_MODE)); + + return S2N_SUCCESS; +} + +static int s2n_psk_key_exchange_modes_recv(struct s2n_connection *conn, struct s2n_stuffer *extension) +{ + notnull_check(conn); + + if (s2n_connection_get_protocol_version(conn) < S2N_TLS13) { + return S2N_SUCCESS; + } + + uint8_t psk_ke_mode_list_len; + GUARD(s2n_stuffer_read_uint8(extension, &psk_ke_mode_list_len)); + if (psk_ke_mode_list_len > s2n_stuffer_data_available(extension)) { + /* Malformed length, ignore the extension */ + return S2N_SUCCESS; + } + + for (size_t i = 0; i < psk_ke_mode_list_len; i++) { + uint8_t wire_psk_ke_mode; + GUARD(s2n_stuffer_read_uint8(extension, &wire_psk_ke_mode)); + + /* s2n currently only supports pre-shared keys with (EC)DHE key establishment */ + if (wire_psk_ke_mode == TLS_PSK_DHE_KE_MODE) { + conn->psk_params.psk_ke_mode = S2N_PSK_DHE_KE; + return S2N_SUCCESS; + } + } + + return S2N_SUCCESS; +} diff --git a/contrib/restricted/aws/s2n/tls/extensions/s2n_psk_key_exchange_modes.h b/contrib/restricted/aws/s2n/tls/extensions/s2n_psk_key_exchange_modes.h new file mode 100644 index 0000000000..3c64f64489 --- /dev/null +++ b/contrib/restricted/aws/s2n/tls/extensions/s2n_psk_key_exchange_modes.h @@ -0,0 +1,22 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"). + * You may not use this file except in compliance with the License. + * A copy of the License is located at + * + * http://aws.amazon.com/apache2.0 + * + * or in the "license" file accompanying this file. This file 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. + */ + +#pragma once + +#include "tls/extensions/s2n_extension_type.h" +#include "tls/s2n_connection.h" +#include "stuffer/s2n_stuffer.h" + +extern const s2n_extension_type s2n_psk_key_exchange_modes_extension; diff --git a/contrib/restricted/aws/s2n/tls/extensions/s2n_server_key_share.c b/contrib/restricted/aws/s2n/tls/extensions/s2n_server_key_share.c index af112de0f4..eb0ead255a 100644 --- a/contrib/restricted/aws/s2n/tls/extensions/s2n_server_key_share.c +++ b/contrib/restricted/aws/s2n/tls/extensions/s2n_server_key_share.c @@ -20,7 +20,7 @@ #include "utils/s2n_safety.h" -#include "crypto/s2n_fips.h" +#include "pq-crypto/s2n_pq.h" static int s2n_server_key_share_send(struct s2n_connection *conn, struct s2n_stuffer *out); static int s2n_server_key_share_recv(struct s2n_connection *conn, struct s2n_stuffer *extension); @@ -38,7 +38,7 @@ static int s2n_server_key_share_generate_pq_hybrid(struct s2n_connection *conn, notnull_check(out); notnull_check(conn); - ENSURE_POSIX(s2n_is_in_fips_mode() == false, S2N_ERR_PQ_KEMS_DISALLOWED_IN_FIPS); + ENSURE_POSIX(s2n_pq_is_enabled(), S2N_ERR_PQ_DISABLED); struct s2n_kem_group_params *server_kem_group_params = &conn->secure.server_kem_group_params; @@ -71,7 +71,7 @@ static int s2n_server_key_share_generate_pq_hybrid(struct s2n_connection *conn, int s2n_server_key_share_send_check_pq_hybrid(struct s2n_connection *conn) { notnull_check(conn); - ENSURE_POSIX(s2n_is_in_fips_mode() == false, S2N_ERR_PQ_KEMS_DISALLOWED_IN_FIPS); + ENSURE_POSIX(s2n_pq_is_enabled(), S2N_ERR_PQ_DISABLED); notnull_check(conn->secure.server_kem_group_params.kem_group); notnull_check(conn->secure.server_kem_group_params.kem_params.kem); @@ -167,9 +167,9 @@ static int s2n_server_key_share_recv_pq_hybrid(struct s2n_connection *conn, uint notnull_check(conn); notnull_check(extension); - /* If in FIPS mode, the client should not have sent any PQ IDs + /* If PQ is disabled, the client should not have sent any PQ IDs * in the supported_groups list of the initial ClientHello */ - ENSURE_POSIX(s2n_is_in_fips_mode() == false, S2N_ERR_PQ_KEMS_DISALLOWED_IN_FIPS); + ENSURE_POSIX(s2n_pq_is_enabled(), S2N_ERR_PQ_DISABLED); const struct s2n_kem_preferences *kem_pref = NULL; GUARD(s2n_connection_get_kem_preferences(conn, &kem_pref)); diff --git a/contrib/restricted/aws/s2n/tls/extensions/s2n_server_psk.c b/contrib/restricted/aws/s2n/tls/extensions/s2n_server_psk.c new file mode 100644 index 0000000000..cb930b17a4 --- /dev/null +++ b/contrib/restricted/aws/s2n/tls/extensions/s2n_server_psk.c @@ -0,0 +1,92 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"). + * You may not use this file except in compliance with the License. + * A copy of the License is located at + * + * http://aws.amazon.com/apache2.0 + * + * or in the "license" file accompanying this file. This file 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. + */ + +#include <sys/param.h> +#include <stdint.h> + +#include "tls/s2n_tls.h" +#include "tls/extensions/s2n_server_psk.h" + +#include "utils/s2n_safety.h" +#include "utils/s2n_bitmap.h" + +static bool s2n_server_psk_should_send(struct s2n_connection *conn); +static int s2n_server_psk_send(struct s2n_connection *conn, struct s2n_stuffer *out); +static int s2n_server_psk_recv(struct s2n_connection *conn, struct s2n_stuffer *extension); + +const s2n_extension_type s2n_server_psk_extension = { + .iana_value = TLS_EXTENSION_PRE_SHARED_KEY, + .is_response = true, + .send = s2n_server_psk_send, + .recv = s2n_server_psk_recv, + .should_send = s2n_server_psk_should_send, + .if_missing = s2n_extension_noop_if_missing, +}; + +static bool s2n_server_psk_should_send(struct s2n_connection *conn) +{ + /* Only send a server pre_shared_key extension if a chosen PSK is set on the connection */ + return conn && s2n_connection_get_protocol_version(conn) >= S2N_TLS13 + && conn->psk_params.chosen_psk; +} + +static int s2n_server_psk_send(struct s2n_connection *conn, struct s2n_stuffer *out) +{ + notnull_check(conn); + + /* Send the index of the chosen PSK that is stored on the connection. */ + GUARD(s2n_stuffer_write_uint16(out, conn->psk_params.chosen_psk_wire_index)); + + return S2N_SUCCESS; +} + +static int s2n_server_psk_recv(struct s2n_connection *conn, struct s2n_stuffer *extension) +{ + notnull_check(conn); + + if (s2n_connection_get_protocol_version(conn) < S2N_TLS13) { + return S2N_SUCCESS; + } + + /* Currently in s2n, only (EC)DHE key exchange mode is supported. + * Any other mode selected by the server is invalid because it was not offered by the client. + * A key_share extension MUST have been received in order to use a pre-shared key in (EC)DHE key exchange mode. + */ + s2n_extension_type_id key_share_ext_id; + GUARD(s2n_extension_supported_iana_value_to_id(TLS_EXTENSION_KEY_SHARE, &key_share_ext_id)); + ENSURE_POSIX(S2N_CBIT_TEST(conn->extension_requests_received, key_share_ext_id), S2N_ERR_MISSING_EXTENSION); + + /* From RFC section: https://tools.ietf.org/html/rfc8446#section-4.2.8.1 + * Any future values that are allocated must ensure that the transmitted protocol messages + * unambiguously identify which mode was selected by the server; at present, this is + * indicated by the presence of the "key_share" in the ServerHello. + */ + conn->psk_params.psk_ke_mode = S2N_PSK_DHE_KE; + + uint16_t chosen_psk_wire_index = 0; + GUARD(s2n_stuffer_read_uint16(extension, &chosen_psk_wire_index)); + + /* From RFC section: https://tools.ietf.org/html/rfc8446#section-4.2.11 + * Clients MUST verify that the server's selected_identity is within the + * range supplied by the client. + */ + ENSURE_POSIX(chosen_psk_wire_index < conn->psk_params.psk_list.len, S2N_ERR_INVALID_ARGUMENT); + conn->psk_params.chosen_psk_wire_index = chosen_psk_wire_index; + + GUARD_AS_POSIX(s2n_array_get(&conn->psk_params.psk_list, conn->psk_params.chosen_psk_wire_index, + (void **)&conn->psk_params.chosen_psk)); + + return S2N_SUCCESS; +} diff --git a/contrib/restricted/aws/s2n/tls/extensions/s2n_server_psk.h b/contrib/restricted/aws/s2n/tls/extensions/s2n_server_psk.h new file mode 100644 index 0000000000..d6956e9dbf --- /dev/null +++ b/contrib/restricted/aws/s2n/tls/extensions/s2n_server_psk.h @@ -0,0 +1,20 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"). + * You may not use this file except in compliance with the License. + * A copy of the License is located at + * + * http://aws.amazon.com/apache2.0 + * + * or in the "license" file accompanying this file. This file 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. + */ + +#pragma once + +#include "tls/extensions/s2n_extension_type.h" + +extern const s2n_extension_type s2n_server_psk_extension; diff --git a/contrib/restricted/aws/s2n/tls/s2n_async_pkey.c b/contrib/restricted/aws/s2n/tls/s2n_async_pkey.c index 15c539da6b..d1960eac69 100644 --- a/contrib/restricted/aws/s2n/tls/s2n_async_pkey.c +++ b/contrib/restricted/aws/s2n/tls/s2n_async_pkey.c @@ -262,7 +262,8 @@ S2N_RESULT s2n_async_pkey_sign_sync(struct s2n_connection *conn, s2n_signature_a const struct s2n_pkey *pkey = conn->handshake_params.our_chain_and_key->private_key; DEFER_CLEANUP(struct s2n_blob signed_content = { 0 }, s2n_free); - uint32_t maximum_signature_length = s2n_pkey_size(pkey); + uint32_t maximum_signature_length = 0; + GUARD_RESULT(s2n_pkey_size(pkey, &maximum_signature_length)); GUARD_AS_RESULT(s2n_alloc(&signed_content, maximum_signature_length)); GUARD_AS_RESULT(s2n_pkey_sign(pkey, sig_alg, digest, &signed_content)); @@ -378,7 +379,8 @@ S2N_RESULT s2n_async_pkey_sign_perform(struct s2n_async_pkey_op *op, s2n_cert_pr struct s2n_async_pkey_sign_data *sign = &op->op.sign; - uint32_t maximum_signature_length = s2n_pkey_size(pkey); + uint32_t maximum_signature_length = 0; + GUARD_RESULT(s2n_pkey_size(pkey, &maximum_signature_length)); GUARD_AS_RESULT(s2n_alloc(&sign->signature, maximum_signature_length)); GUARD_AS_RESULT(s2n_pkey_sign(pkey, sign->sig_alg, &sign->digest, &sign->signature)); diff --git a/contrib/restricted/aws/s2n/tls/s2n_auth_selection.c b/contrib/restricted/aws/s2n/tls/s2n_auth_selection.c index 2d5070e32e..33404c811b 100644 --- a/contrib/restricted/aws/s2n/tls/s2n_auth_selection.c +++ b/contrib/restricted/aws/s2n/tls/s2n_auth_selection.c @@ -130,11 +130,15 @@ static int s2n_certs_exist_for_sig_scheme(struct s2n_connection *conn, const str static int s2n_certs_exist_for_auth_method(struct s2n_connection *conn, s2n_authentication_method auth_method) { + if (auth_method == S2N_AUTHENTICATION_METHOD_SENTINEL) { + return S2N_SUCCESS; + } + s2n_authentication_method auth_method_for_cert_type; for (int i = 0; i < S2N_CERT_TYPE_COUNT; i++) { GUARD(s2n_get_auth_method_for_cert_type(i, &auth_method_for_cert_type)); - if (auth_method != S2N_AUTHENTICATION_METHOD_SENTINEL && auth_method != auth_method_for_cert_type) { + if (auth_method != auth_method_for_cert_type) { continue; } @@ -145,11 +149,10 @@ static int s2n_certs_exist_for_auth_method(struct s2n_connection *conn, s2n_auth S2N_ERROR(S2N_ERR_CERT_TYPE_UNSUPPORTED); } -/* A cipher suite is valid if: - * - At least one compatible cert is configured +/* TLS1.3 ciphers are always valid, as they don't include an auth method. * - * TLS1.3 ciphers are valid if ANY certs are configured, as authentication - * method is not tied to cipher suites in TLS1.3. + * A pre-TLS1.3 cipher suite is valid if: + * - At least one compatible cert is configured * * This method is called by the server when choosing a cipher suite. */ diff --git a/contrib/restricted/aws/s2n/tls/s2n_cipher_preferences.c b/contrib/restricted/aws/s2n/tls/s2n_cipher_preferences.c index 4343b88f00..67893009b1 100644 --- a/contrib/restricted/aws/s2n/tls/s2n_cipher_preferences.c +++ b/contrib/restricted/aws/s2n/tls/s2n_cipher_preferences.c @@ -989,6 +989,21 @@ const struct s2n_cipher_preferences cipher_preferences_cloudfront_tls_1_2_2019 = .suites = cipher_suites_cloudfront_tls_1_2_2019, }; +struct s2n_cipher_suite *cipher_suites_cloudfront_tls_1_2_2021[] = { + S2N_TLS13_CLOUDFRONT_CIPHER_SUITES_20200716, + &s2n_ecdhe_ecdsa_with_aes_128_gcm_sha256, + &s2n_ecdhe_rsa_with_aes_128_gcm_sha256, + &s2n_ecdhe_ecdsa_with_aes_256_gcm_sha384, + &s2n_ecdhe_rsa_with_aes_256_gcm_sha384, + &s2n_ecdhe_ecdsa_with_chacha20_poly1305_sha256, + &s2n_ecdhe_rsa_with_chacha20_poly1305_sha256 +}; + +const struct s2n_cipher_preferences cipher_preferences_cloudfront_tls_1_2_2021 = { + .count = s2n_array_len(cipher_suites_cloudfront_tls_1_2_2021), + .suites = cipher_suites_cloudfront_tls_1_2_2021, +}; + struct s2n_cipher_suite *cipher_suites_kms_tls_1_0_2018_10[] = { &s2n_ecdhe_rsa_with_aes_256_gcm_sha384, &s2n_ecdhe_rsa_with_aes_128_gcm_sha256, @@ -1007,8 +1022,6 @@ const struct s2n_cipher_preferences cipher_preferences_kms_tls_1_0_2018_10 = { .suites = cipher_suites_kms_tls_1_0_2018_10, }; -#if !defined(S2N_NO_PQ) - struct s2n_cipher_suite *cipher_suites_kms_pq_tls_1_0_2019_06[] = { &s2n_ecdhe_bike_rsa_with_aes_256_gcm_sha384, &s2n_ecdhe_sike_rsa_with_aes_256_gcm_sha384, @@ -1108,8 +1121,6 @@ const struct s2n_cipher_preferences cipher_preferences_pq_tls_1_0_2020_12 = { .suites = cipher_suites_pq_tls_1_0_2020_12, }; -#endif - struct s2n_cipher_suite *cipher_suites_kms_fips_tls_1_2_2018_10[] = { &s2n_ecdhe_rsa_with_aes_256_gcm_sha384, &s2n_ecdhe_rsa_with_aes_128_gcm_sha256, diff --git a/contrib/restricted/aws/s2n/tls/s2n_cipher_preferences.h b/contrib/restricted/aws/s2n/tls/s2n_cipher_preferences.h index b70fa55922..8dabb707ff 100644 --- a/contrib/restricted/aws/s2n/tls/s2n_cipher_preferences.h +++ b/contrib/restricted/aws/s2n/tls/s2n_cipher_preferences.h @@ -76,6 +76,7 @@ extern const struct s2n_cipher_preferences cipher_preferences_cloudfront_tls_1_0 extern const struct s2n_cipher_preferences cipher_preferences_cloudfront_tls_1_1_2016; extern const struct s2n_cipher_preferences cipher_preferences_cloudfront_tls_1_2_2018; extern const struct s2n_cipher_preferences cipher_preferences_cloudfront_tls_1_2_2019; +extern const struct s2n_cipher_preferences cipher_preferences_cloudfront_tls_1_2_2021; /* CloudFront viewer facing legacy TLS 1.2 policies */ extern const struct s2n_cipher_preferences cipher_preferences_cloudfront_ssl_v_3_legacy; @@ -87,8 +88,6 @@ extern const struct s2n_cipher_preferences cipher_preferences_cloudfront_tls_1_2 extern const struct s2n_cipher_preferences cipher_preferences_kms_tls_1_0_2018_10; -#if !defined(S2N_NO_PQ) - extern const struct s2n_cipher_preferences cipher_preferences_kms_pq_tls_1_0_2019_06; extern const struct s2n_cipher_preferences cipher_preferences_kms_pq_tls_1_0_2020_02; extern const struct s2n_cipher_preferences cipher_preferences_kms_pq_tls_1_0_2020_07; @@ -96,8 +95,6 @@ extern const struct s2n_cipher_preferences cipher_preferences_pq_sike_test_tls_1 extern const struct s2n_cipher_preferences cipher_preferences_pq_sike_test_tls_1_0_2020_02; extern const struct s2n_cipher_preferences cipher_preferences_pq_tls_1_0_2020_12; -#endif - extern const struct s2n_cipher_preferences cipher_preferences_kms_fips_tls_1_2_2018_10; extern const struct s2n_cipher_preferences cipher_preferences_null; diff --git a/contrib/restricted/aws/s2n/tls/s2n_cipher_suites.c b/contrib/restricted/aws/s2n/tls/s2n_cipher_suites.c index f3597ee3c2..ea478e27b8 100644 --- a/contrib/restricted/aws/s2n/tls/s2n_cipher_suites.c +++ b/contrib/restricted/aws/s2n/tls/s2n_cipher_suites.c @@ -29,6 +29,7 @@ #include "tls/s2n_tls13.h" #include "utils/s2n_safety.h" #include "tls/s2n_psk.h" +#include "pq-crypto/s2n_pq.h" /************************* * S2n Record Algorithms * @@ -809,11 +810,9 @@ static struct s2n_cipher_suite *s2n_all_cipher_suites[] = { &s2n_ecdhe_rsa_with_chacha20_poly1305_sha256, /* 0xCC,0xA8 */ &s2n_ecdhe_ecdsa_with_chacha20_poly1305_sha256, /* 0xCC,0xA9 */ &s2n_dhe_rsa_with_chacha20_poly1305_sha256, /* 0xCC,0xAA */ -#if !defined(S2N_NO_PQ) &s2n_ecdhe_bike_rsa_with_aes_256_gcm_sha384, /* 0xFF,0x04 */ &s2n_ecdhe_sike_rsa_with_aes_256_gcm_sha384, /* 0xFF,0x08 */ &s2n_ecdhe_kyber_rsa_with_aes_256_gcm_sha384, /* 0xFF,0x0C */ -#endif }; /* All supported ciphers. Exposed for integration testing. */ @@ -859,11 +858,9 @@ static struct s2n_cipher_suite *s2n_all_tls12_cipher_suites[] = { &s2n_ecdhe_rsa_with_chacha20_poly1305_sha256, /* 0xCC,0xA8 */ &s2n_ecdhe_ecdsa_with_chacha20_poly1305_sha256, /* 0xCC,0xA9 */ &s2n_dhe_rsa_with_chacha20_poly1305_sha256, /* 0xCC,0xAA */ -#if !defined(S2N_NO_PQ) &s2n_ecdhe_bike_rsa_with_aes_256_gcm_sha384, /* 0xFF,0x04 */ &s2n_ecdhe_sike_rsa_with_aes_256_gcm_sha384, /* 0xFF,0x08 */ &s2n_ecdhe_kyber_rsa_with_aes_256_gcm_sha384, /* 0xFF,0x0C */ -#endif }; const struct s2n_cipher_preferences cipher_preferences_test_all_tls12 = { @@ -1019,6 +1016,12 @@ int s2n_cipher_suites_init(void) } } + /* Mark PQ cipher suites as unavailable if PQ is disabled */ + if (s2n_kex_includes(cur_suite->key_exchange_alg, &s2n_kem) && !s2n_pq_is_enabled()) { + cur_suite->available = 0; + cur_suite->record_alg = NULL; + } + /* Initialize SSLv3 cipher suite if SSLv3 utilizes a different record algorithm */ if (cur_suite->sslv3_record_alg && cur_suite->sslv3_record_alg->cipher->is_available()) { struct s2n_blob cur_suite_mem = { .data = (uint8_t *) cur_suite, .size = sizeof(struct s2n_cipher_suite) }; @@ -1103,6 +1106,15 @@ int s2n_set_cipher_as_client(struct s2n_connection *conn, uint8_t wire[S2N_TLS_C cipher_suite = s2n_cipher_suite_from_wire(wire); ENSURE_POSIX(cipher_suite != NULL, S2N_ERR_CIPHER_NOT_SUPPORTED); + /* From RFC section: https://tools.ietf.org/html/rfc8446#section-4.2.11: + * Client MUST verify that the server selected a cipher suite indicating a Hash + * associated with the chosen PSK if it exists. + * */ + if (conn->psk_params.chosen_psk) { + ENSURE_POSIX(cipher_suite->prf_alg == conn->psk_params.chosen_psk->hmac_alg, + S2N_ERR_CIPHER_NOT_SUPPORTED); + } + /* Verify cipher suite sent in server hello is the same as sent in hello retry */ if (s2n_is_hello_retry_handshake(conn) && !s2n_is_hello_retry_message(conn)) { ENSURE_POSIX(conn->secure.cipher_suite->iana_value == cipher_suite->iana_value, S2N_ERR_CIPHER_NOT_SUPPORTED); @@ -1210,24 +1222,25 @@ static int s2n_set_cipher_as_server(struct s2n_connection *conn, uint8_t *wire, /* TLS 1.3 does not include key exchange in cipher suites */ if (match->minimum_required_tls_version < S2N_TLS13) { /* If the kex is not supported continue to the next candidate */ - if (!s2n_kex_supported(match, conn)) { + bool kex_supported = false; + GUARD_AS_POSIX(s2n_kex_supported(match, conn, &kex_supported)); + if (!kex_supported) { continue; } /* If the kex is not configured correctly continue to the next candidate */ - if (s2n_configure_kex(match, conn)) { + if (s2n_result_is_error(s2n_configure_kex(match, conn))) { continue; } } - /* For TLS1.3 when PSKs are present, the server must consider the hash algorithm associated with the chosen PSK - * when choosing a cipher suite. Server MUST reject any cipher suite without a matching hash algorithm and - * continue to the next candidate. - * */ - if (conn->actual_protocol_version >= S2N_TLS13 && conn->psk_params.chosen_psk != NULL) { - s2n_hmac_algorithm chosen_psk_hmac_alg = { 0 }; - GUARD(s2n_hash_hmac_alg(conn->psk_params.chosen_psk->hash_alg, &chosen_psk_hmac_alg)); - if (match->prf_alg != chosen_psk_hmac_alg) { + /** + *= https://tools.ietf.org/rfc/rfc8446#section-4.2.11 + *# The server MUST ensure that it selects a compatible PSK + *# (if any) and cipher suite. + **/ + if (conn->psk_params.chosen_psk != NULL) { + if (match->prf_alg != conn->psk_params.chosen_psk->hmac_alg) { continue; } } diff --git a/contrib/restricted/aws/s2n/tls/s2n_cipher_suites.h b/contrib/restricted/aws/s2n/tls/s2n_cipher_suites.h index 009f13471b..2bee39ec4c 100644 --- a/contrib/restricted/aws/s2n/tls/s2n_cipher_suites.h +++ b/contrib/restricted/aws/s2n/tls/s2n_cipher_suites.h @@ -31,14 +31,9 @@ #define S2N_KEY_EXCHANGE_ECC 0x04 /* Elliptic curve cryptography */ #define S2N_MAX_POSSIBLE_RECORD_ALGS 2 -#if !defined(S2N_NO_PQ) -#define S2N_PQ_CIPHER_SUITE_COUNT 3 -#else -#define S2N_PQ_CIPHER_SUITE_COUNT 0 -#endif /* Kept up-to-date by s2n_cipher_suite_match_test */ -#define S2N_CIPHER_SUITE_COUNT (36 + S2N_PQ_CIPHER_SUITE_COUNT) +#define S2N_CIPHER_SUITE_COUNT 39 /* Record algorithm flags that can be OR'ed */ diff --git a/contrib/restricted/aws/s2n/tls/s2n_client_cert_verify.c b/contrib/restricted/aws/s2n/tls/s2n_client_cert_verify.c index a218c13c18..b11150c48c 100644 --- a/contrib/restricted/aws/s2n/tls/s2n_client_cert_verify.c +++ b/contrib/restricted/aws/s2n/tls/s2n_client_cert_verify.c @@ -76,7 +76,8 @@ int s2n_client_cert_verify_send(struct s2n_connection *conn) struct s2n_cert_chain_and_key *cert_chain_and_key = conn->handshake_params.our_chain_and_key; DEFER_CLEANUP(struct s2n_blob signature = {0}, s2n_free); - uint32_t max_signature_size = s2n_pkey_size(cert_chain_and_key->private_key); + uint32_t max_signature_size = 0; + GUARD_AS_POSIX(s2n_pkey_size(cert_chain_and_key->private_key, &max_signature_size)); GUARD(s2n_alloc(&signature, max_signature_size)); GUARD(s2n_pkey_sign(cert_chain_and_key->private_key, chosen_sig_scheme.sig_alg, &conn->handshake.ccv_hash_copy, &signature)); diff --git a/contrib/restricted/aws/s2n/tls/s2n_client_hello.c b/contrib/restricted/aws/s2n/tls/s2n_client_hello.c index 15bf12c525..b03cda1491 100644 --- a/contrib/restricted/aws/s2n/tls/s2n_client_hello.c +++ b/contrib/restricted/aws/s2n/tls/s2n_client_hello.c @@ -285,6 +285,12 @@ int s2n_process_client_hello(struct s2n_connection *conn) /* Now choose the ciphers we have certs for. */ GUARD(s2n_set_cipher_as_tls_server(conn, client_hello->cipher_suites.data, client_hello->cipher_suites.size / 2)); + /* If we're using a PSK, we don't need to choose a signature algorithm or certificate, + * because no additional auth is required. */ + if (conn->psk_params.chosen_psk != NULL) { + return S2N_SUCCESS; + } + /* And set the signature and hash algorithm used for key exchange signatures */ GUARD(s2n_choose_sig_scheme_from_peer_preference_list(conn, &conn->handshake_params.client_sig_hash_algs, @@ -293,7 +299,7 @@ int s2n_process_client_hello(struct s2n_connection *conn) /* And finally, set the certs specified by the final auth + sig_alg combo. */ GUARD(s2n_select_certs_for_server_auth(conn, &conn->handshake_params.our_chain_and_key)); - return 0; + return S2N_SUCCESS; } int s2n_client_hello_recv(struct s2n_connection *conn) diff --git a/contrib/restricted/aws/s2n/tls/s2n_client_key_exchange.c b/contrib/restricted/aws/s2n/tls/s2n_client_key_exchange.c index 99510d8628..1428e177b2 100644 --- a/contrib/restricted/aws/s2n/tls/s2n_client_key_exchange.c +++ b/contrib/restricted/aws/s2n/tls/s2n_client_key_exchange.c @@ -37,7 +37,7 @@ #define get_client_hello_protocol_version(conn) (conn->client_hello_version == S2N_SSLv2 ? conn->client_protocol_version : conn->client_hello_version) -typedef int s2n_kex_client_key_method(const struct s2n_kex *kex, struct s2n_connection *conn, struct s2n_blob *shared_key); +typedef S2N_RESULT s2n_kex_client_key_method(const struct s2n_kex *kex, struct s2n_connection *conn, struct s2n_blob *shared_key); typedef void *s2n_stuffer_action(struct s2n_stuffer *stuffer, uint32_t data_len); static int s2n_rsa_client_key_recv_complete(struct s2n_connection *conn, bool rsa_failed, struct s2n_blob *shared_key); @@ -58,10 +58,10 @@ static int s2n_hybrid_client_action(struct s2n_connection *conn, struct s2n_blob const uint32_t start_cursor = *cursor; DEFER_CLEANUP(struct s2n_blob shared_key_0 = {0}, s2n_free); - GUARD(kex_method(hybrid_kex_0, conn, &shared_key_0)); + GUARD_AS_POSIX(kex_method(hybrid_kex_0, conn, &shared_key_0)); struct s2n_blob *shared_key_1 = &(conn->secure.kem_params.shared_secret); - GUARD(kex_method(hybrid_kex_1, conn, shared_key_1)); + GUARD_AS_POSIX(kex_method(hybrid_kex_1, conn, shared_key_1)); const uint32_t end_cursor = *cursor; gte_check(end_cursor, start_cursor); @@ -81,7 +81,7 @@ static int s2n_hybrid_client_action(struct s2n_connection *conn, struct s2n_blob static int s2n_calculate_keys(struct s2n_connection *conn, struct s2n_blob *shared_key) { /* Turn the pre-master secret into a master secret */ - GUARD(s2n_kex_tls_prf(conn->secure.cipher_suite->key_exchange_alg, conn, shared_key)); + GUARD_AS_POSIX(s2n_kex_tls_prf(conn->secure.cipher_suite->key_exchange_alg, conn, shared_key)); /* Erase the pre-master secret */ GUARD(s2n_blob_zero(shared_key)); if (shared_key->allocated) { @@ -216,7 +216,7 @@ int s2n_client_key_recv(struct s2n_connection *conn) const struct s2n_kex *key_exchange = conn->secure.cipher_suite->key_exchange_alg; struct s2n_blob shared_key = {0}; - GUARD(s2n_kex_client_key_recv(key_exchange, conn, &shared_key)); + GUARD_AS_POSIX(s2n_kex_client_key_recv(key_exchange, conn, &shared_key)); GUARD(s2n_calculate_keys(conn, &shared_key)); return 0; @@ -260,8 +260,9 @@ int s2n_rsa_client_key_send(struct s2n_connection *conn, struct s2n_blob *shared */ memcpy_check(conn->secure.rsa_premaster_secret, client_hello_protocol_version, S2N_TLS_PROTOCOL_VERSION_LEN); - int encrypted_size = s2n_pkey_size(&conn->secure.server_public_key); - S2N_ERROR_IF(encrypted_size < 0 || encrypted_size > 0xffff, S2N_ERR_SIZE_MISMATCH); + uint32_t encrypted_size = 0; + GUARD_AS_POSIX(s2n_pkey_size(&conn->secure.server_public_key, &encrypted_size)); + S2N_ERROR_IF(encrypted_size > 0xffff, S2N_ERR_SIZE_MISMATCH); if (conn->actual_protocol_version > S2N_SSLv3) { GUARD(s2n_stuffer_write_uint16(&conn->handshake.io, encrypted_size)); @@ -311,7 +312,7 @@ int s2n_client_key_send(struct s2n_connection *conn) const struct s2n_kex *key_exchange = conn->secure.cipher_suite->key_exchange_alg; struct s2n_blob shared_key = {0}; - GUARD(s2n_kex_client_key_send(key_exchange, conn, &shared_key)); + GUARD_AS_POSIX(s2n_kex_client_key_send(key_exchange, conn, &shared_key)); GUARD(s2n_calculate_keys(conn, &shared_key)); return 0; diff --git a/contrib/restricted/aws/s2n/tls/s2n_config.c b/contrib/restricted/aws/s2n/tls/s2n_config.c index 51a974f8c7..db3a8819bc 100644 --- a/contrib/restricted/aws/s2n/tls/s2n_config.c +++ b/contrib/restricted/aws/s2n/tls/s2n_config.c @@ -123,6 +123,7 @@ static int s2n_config_init(struct s2n_config *config) config->max_verify_cert_chain_depth_set = 0; config->cert_tiebreak_cb = NULL; config->async_pkey_cb = NULL; + config->psk_selection_cb = NULL; config->cert_req_dss_legacy_compat_enabled = 0; GUARD(s2n_config_setup_default(config)); @@ -858,3 +859,13 @@ int s2n_config_enable_cert_req_dss_legacy_compat(struct s2n_config *config) config->cert_req_dss_legacy_compat_enabled = 1; return S2N_SUCCESS; } + +int s2n_config_set_psk_selection_callback(struct s2n_connection *conn, s2n_psk_selection_callback cb) +{ + notnull_check(conn); + notnull_check(cb); + + conn->config->psk_selection_cb = cb; + + return S2N_SUCCESS; +} diff --git a/contrib/restricted/aws/s2n/tls/s2n_config.h b/contrib/restricted/aws/s2n/tls/s2n_config.h index be8baf1da1..c5edf02418 100644 --- a/contrib/restricted/aws/s2n/tls/s2n_config.h +++ b/contrib/restricted/aws/s2n/tls/s2n_config.h @@ -22,6 +22,7 @@ #include "tls/s2n_x509_validator.h" #include "utils/s2n_blob.h" #include "utils/s2n_set.h" +#include "tls/s2n_psk.h" #define S2N_MAX_TICKET_KEYS 48 #define S2N_MAX_TICKET_KEY_HASHES 500 /* 10KB */ @@ -101,6 +102,7 @@ struct s2n_config { uint16_t max_verify_cert_chain_depth; s2n_async_pkey_fn async_pkey_cb; + s2n_psk_selection_callback psk_selection_cb; }; int s2n_config_defaults_init(void); diff --git a/contrib/restricted/aws/s2n/tls/s2n_connection.c b/contrib/restricted/aws/s2n/tls/s2n_connection.c index ae23da2439..f2393fd2a1 100644 --- a/contrib/restricted/aws/s2n/tls/s2n_connection.c +++ b/contrib/restricted/aws/s2n/tls/s2n_connection.c @@ -452,7 +452,7 @@ int s2n_connection_free(struct s2n_connection *conn) { GUARD(s2n_connection_wipe_keys(conn)); GUARD(s2n_connection_free_keys(conn)); - GUARD(s2n_psk_parameters_free(&conn->psk_params)); + GUARD_AS_POSIX(s2n_psk_parameters_wipe(&conn->psk_params)); GUARD(s2n_prf_free(conn)); diff --git a/contrib/restricted/aws/s2n/tls/s2n_connection.h b/contrib/restricted/aws/s2n/tls/s2n_connection.h index 5ba5667fc2..9864111db1 100644 --- a/contrib/restricted/aws/s2n/tls/s2n_connection.h +++ b/contrib/restricted/aws/s2n/tls/s2n_connection.h @@ -307,6 +307,8 @@ struct s2n_connection { uint8_t ticket_ext_data[S2N_TICKET_SIZE_IN_BYTES]; struct s2n_stuffer client_ticket_to_decrypt; + uint8_t resumption_master_secret[S2N_TLS13_SECRET_MAX_LEN]; + /* application protocols overridden */ struct s2n_blob application_protocols_overridden; @@ -323,6 +325,12 @@ struct s2n_connection { * Setting and manipulating this value requires security_policy to be configured prior. * */ uint8_t preferred_key_shares; + + /* Flags to prevent users from calling methods recursively. + * This can be an easy mistake to make when implementing send/receive callbacks. + */ + bool send_in_use; + bool recv_in_use; }; int s2n_connection_is_managed_corked(const struct s2n_connection *s2n_connection); diff --git a/contrib/restricted/aws/s2n/tls/s2n_handshake_io.c b/contrib/restricted/aws/s2n/tls/s2n_handshake_io.c index ad53a33938..5b78ef79c6 100644 --- a/contrib/restricted/aws/s2n/tls/s2n_handshake_io.c +++ b/contrib/restricted/aws/s2n/tls/s2n_handshake_io.c @@ -357,8 +357,6 @@ static message_type_t handshakes[S2N_HANDSHAKES_COUNT][S2N_MAX_HANDSHAKE_LENGTH] /* * This selection of handshakes resembles the standard set, but with changes made to support tls1.3. * - * These are just the basic handshakes. At the moment hello retries, session resumption, and early data are not supported. - * * The CHANGE_CIPHER_SPEC messages are included only for middlebox compatibility. * See https://tools.ietf.org/html/rfc8446#appendix-D.4 */ @@ -373,6 +371,38 @@ static message_type_t tls13_handshakes[S2N_HANDSHAKES_COUNT][S2N_MAX_HANDSHAKE_L HELLO_RETRY_MSG }, + [NEGOTIATED] = { + CLIENT_HELLO, + SERVER_HELLO, ENCRYPTED_EXTENSIONS, SERVER_FINISHED, + CLIENT_FINISHED, + APPLICATION_DATA + }, + + [NEGOTIATED | MIDDLEBOX_COMPAT] = { + CLIENT_HELLO, + SERVER_HELLO, SERVER_CHANGE_CIPHER_SPEC, ENCRYPTED_EXTENSIONS, SERVER_FINISHED, + CLIENT_CHANGE_CIPHER_SPEC, CLIENT_FINISHED, + APPLICATION_DATA + }, + + [NEGOTIATED | HELLO_RETRY_REQUEST] = { + CLIENT_HELLO, + HELLO_RETRY_MSG, + CLIENT_HELLO, + SERVER_HELLO, ENCRYPTED_EXTENSIONS, SERVER_FINISHED, + CLIENT_FINISHED, + APPLICATION_DATA + }, + + [NEGOTIATED | HELLO_RETRY_REQUEST | MIDDLEBOX_COMPAT] = { + CLIENT_HELLO, + HELLO_RETRY_MSG, SERVER_CHANGE_CIPHER_SPEC, + CLIENT_CHANGE_CIPHER_SPEC, CLIENT_HELLO, + SERVER_HELLO, ENCRYPTED_EXTENSIONS, SERVER_FINISHED, + CLIENT_FINISHED, + APPLICATION_DATA + }, + [NEGOTIATED | FULL_HANDSHAKE] = { CLIENT_HELLO, SERVER_HELLO, ENCRYPTED_EXTENSIONS, SERVER_CERT, SERVER_CERT_VERIFY, SERVER_FINISHED, @@ -593,10 +623,10 @@ bool s2n_is_hello_retry_handshake(struct s2n_connection *conn) return conn->handshake.handshake_type & HELLO_RETRY_REQUEST; } -int s2n_conn_set_handshake_type(struct s2n_connection *conn) -{ +static S2N_RESULT s2n_conn_set_tls13_handshake_type(struct s2n_connection *conn) { + ENSURE_REF(conn); + if (conn->handshake.handshake_type & HELLO_RETRY_REQUEST) { - ENSURE_POSIX(conn->actual_protocol_version >= S2N_TLS13, S2N_ERR_INVALID_HELLO_RETRY); conn->handshake.handshake_type = HELLO_RETRY_REQUEST; } else { conn->handshake.handshake_type = INITIAL; @@ -605,26 +635,53 @@ int s2n_conn_set_handshake_type(struct s2n_connection *conn) /* A handshake type has been negotiated */ conn->handshake.handshake_type |= NEGOTIATED; + if (conn->psk_params.chosen_psk == NULL) { + conn->handshake.handshake_type |= FULL_HANDSHAKE; + } + s2n_cert_auth_type client_cert_auth_type; - GUARD(s2n_connection_get_client_auth_type(conn, &client_cert_auth_type)); + GUARD_AS_RESULT(s2n_connection_get_client_auth_type(conn, &client_cert_auth_type)); - if (conn->mode == S2N_CLIENT && client_cert_auth_type == S2N_CERT_AUTH_REQUIRED) { + if (conn->mode == S2N_CLIENT && client_cert_auth_type == S2N_CERT_AUTH_REQUIRED + && conn->handshake.handshake_type & FULL_HANDSHAKE) { /* If we're a client, and Client Auth is REQUIRED, then the Client must expect the CLIENT_CERT_REQ Message */ conn->handshake.handshake_type |= CLIENT_AUTH; - } else if (conn->mode == S2N_SERVER && client_cert_auth_type != S2N_CERT_AUTH_NONE) { + } else if (conn->mode == S2N_SERVER && client_cert_auth_type != S2N_CERT_AUTH_NONE + && conn->handshake.handshake_type & FULL_HANDSHAKE) { /* If we're a server, and Client Auth is REQUIRED or OPTIONAL, then the server must send the CLIENT_CERT_REQ Message*/ conn->handshake.handshake_type |= CLIENT_AUTH; } + /* Use middlebox compatibility mode for TLS1.3 by default. + * For now, only disable it when QUIC support is enabled. */ + if (!conn->config->quic_enabled) { + conn->handshake.handshake_type |= MIDDLEBOX_COMPAT; + } + + return S2N_RESULT_OK; +} + +int s2n_conn_set_handshake_type(struct s2n_connection *conn) +{ if (IS_TLS13_HANDSHAKE(conn)) { - /* Use middlebox compatibility mode for TLS1.3 by default. - * For now, only disable it when QUIC support is enabled. */ - if (!conn->config->quic_enabled) { - conn->handshake.handshake_type |= MIDDLEBOX_COMPAT; - } - conn->handshake.handshake_type |= FULL_HANDSHAKE; + GUARD_AS_POSIX(s2n_conn_set_tls13_handshake_type(conn)); + return S2N_SUCCESS; + } - return 0; + S2N_ERROR_IF(conn->handshake.handshake_type & HELLO_RETRY_REQUEST, S2N_ERR_INVALID_HELLO_RETRY); + + /* A handshake type has been negotiated */ + conn->handshake.handshake_type = NEGOTIATED; + + s2n_cert_auth_type client_cert_auth_type; + GUARD(s2n_connection_get_client_auth_type(conn, &client_cert_auth_type)); + + if (conn->mode == S2N_CLIENT && client_cert_auth_type == S2N_CERT_AUTH_REQUIRED) { + /* If we're a client, and Client Auth is REQUIRED, then the Client must expect the CLIENT_CERT_REQ Message */ + conn->handshake.handshake_type |= CLIENT_AUTH; + } else if (conn->mode == S2N_SERVER && client_cert_auth_type != S2N_CERT_AUTH_NONE) { + /* If we're a server, and Client Auth is REQUIRED or OPTIONAL, then the server must send the CLIENT_CERT_REQ Message*/ + conn->handshake.handshake_type |= CLIENT_AUTH; } if (conn->config->use_tickets) { @@ -667,7 +724,9 @@ skip_cache_lookup: /* If we get this far, it's a full handshake */ conn->handshake.handshake_type |= FULL_HANDSHAKE; - if (s2n_kex_is_ephemeral(conn->secure.cipher_suite->key_exchange_alg)) { + bool is_ephemeral = false; + GUARD_AS_POSIX(s2n_kex_is_ephemeral(conn->secure.cipher_suite->key_exchange_alg, &is_ephemeral)); + if (is_ephemeral) { conn->handshake.handshake_type |= TLS12_PERFECT_FORWARD_SECRECY; } @@ -1032,6 +1091,7 @@ static int s2n_handshake_read_io(struct s2n_connection *conn) if (conn->mode == S2N_CLIENT && client_cert_auth_type == S2N_CERT_AUTH_OPTIONAL && message_type == TLS_CERT_REQ) { + ENSURE_POSIX(conn->handshake.handshake_type & FULL_HANDSHAKE, S2N_ERR_HANDSHAKE_STATE); conn->handshake.handshake_type |= CLIENT_AUTH; } diff --git a/contrib/restricted/aws/s2n/tls/s2n_kem.c b/contrib/restricted/aws/s2n/tls/s2n_kem.c index 4ddbbc8683..aef1665918 100644 --- a/contrib/restricted/aws/s2n/tls/s2n_kem.c +++ b/contrib/restricted/aws/s2n/tls/s2n_kem.c @@ -480,7 +480,7 @@ int s2n_kem_recv_ciphertext(struct s2n_stuffer *in, struct s2n_kem_params *kem_p } #if defined(S2N_NO_PQ) -/* IF S2N_NO_PQ was defined at compile time, the PQ KEM code will have been entirely excluded +/* If S2N_NO_PQ was defined at compile time, the PQ KEM code will have been entirely excluded * from compilation. We define stubs of these functions here to error if they are called. */ /* sikep503r1 */ int SIKE_P503_r1_crypto_kem_keypair(OUT unsigned char *pk, OUT unsigned char *sk) { BAIL_POSIX(S2N_ERR_UNIMPLEMENTED); } diff --git a/contrib/restricted/aws/s2n/tls/s2n_kem_preferences.c b/contrib/restricted/aws/s2n/tls/s2n_kem_preferences.c index 4b9290c418..3e3fa71323 100644 --- a/contrib/restricted/aws/s2n/tls/s2n_kem_preferences.c +++ b/contrib/restricted/aws/s2n/tls/s2n_kem_preferences.c @@ -15,8 +15,6 @@ #include "tls/s2n_kem_preferences.h" -#if !defined(S2N_NO_PQ) - /* Extension list for round 1 PQ KEMs, in order of preference */ const struct s2n_kem *pq_kems_r1[2] = { &s2n_bike1_l1_r1, @@ -112,8 +110,6 @@ const struct s2n_kem_preferences kem_preferences_pq_tls_1_0_2020_12 = { .tls13_kem_groups = pq_kem_groups_r2, }; -#endif - const struct s2n_kem_preferences kem_preferences_null = { .kem_count = 0, .kems = NULL, diff --git a/contrib/restricted/aws/s2n/tls/s2n_kem_preferences.h b/contrib/restricted/aws/s2n/tls/s2n_kem_preferences.h index e6226bb8f3..cad4f39c8e 100644 --- a/contrib/restricted/aws/s2n/tls/s2n_kem_preferences.h +++ b/contrib/restricted/aws/s2n/tls/s2n_kem_preferences.h @@ -29,8 +29,6 @@ struct s2n_kem_preferences { const struct s2n_kem_group **tls13_kem_groups; }; -#if !defined(S2N_NO_PQ) - extern const struct s2n_kem *pq_kems_r1[2]; extern const struct s2n_kem *pq_kems_r2r1[4]; extern const struct s2n_kem *pq_kems_r2r1_2020_07[5]; @@ -45,9 +43,6 @@ extern const struct s2n_kem_preferences kem_preferences_kms_pq_tls_1_0_2020_07; extern const struct s2n_kem_preferences kem_preferences_pq_sike_test_tls_1_0_2019_11; extern const struct s2n_kem_preferences kem_preferences_pq_sike_test_tls_1_0_2020_02; extern const struct s2n_kem_preferences kem_preferences_pq_tls_1_0_2020_12; - -#endif - extern const struct s2n_kem_preferences kem_preferences_null; bool s2n_kem_preferences_includes_tls13_kem_group(const struct s2n_kem_preferences *kem_preferences, diff --git a/contrib/restricted/aws/s2n/tls/s2n_kex.c b/contrib/restricted/aws/s2n/tls/s2n_kex.c index d01a25faef..b9fb9800ad 100644 --- a/contrib/restricted/aws/s2n/tls/s2n_kex.c +++ b/contrib/restricted/aws/s2n/tls/s2n_kex.c @@ -14,7 +14,7 @@ */ #include "tls/s2n_kex.h" -#include "crypto/s2n_fips.h" +#include "pq-crypto/s2n_pq.h" #include "tls/s2n_cipher_preferences.h" #include "tls/s2n_cipher_suites.h" #include "tls/s2n_client_key_exchange.h" @@ -24,44 +24,65 @@ #include "tls/s2n_tls.h" #include "utils/s2n_safety.h" -static int s2n_check_rsa_key(const struct s2n_cipher_suite *cipher_suite, struct s2n_connection *conn) +static S2N_RESULT s2n_check_rsa_key(const struct s2n_cipher_suite *cipher_suite, struct s2n_connection *conn, bool *is_supported) { - return s2n_get_compatible_cert_chain_and_key(conn, S2N_PKEY_TYPE_RSA) != NULL; + ENSURE_REF(cipher_suite); + ENSURE_REF(conn); + ENSURE_REF(is_supported); + + *is_supported = s2n_get_compatible_cert_chain_and_key(conn, S2N_PKEY_TYPE_RSA) != NULL; + + return S2N_RESULT_OK; } -static int s2n_check_dhe(const struct s2n_cipher_suite *cipher_suite, struct s2n_connection *conn) +static S2N_RESULT s2n_check_dhe(const struct s2n_cipher_suite *cipher_suite, struct s2n_connection *conn, bool *is_supported) { - return conn->config->dhparams != NULL; + ENSURE_REF(cipher_suite); + ENSURE_REF(conn); + ENSURE_REF(conn->config); + ENSURE_REF(is_supported); + + *is_supported = conn->config->dhparams != NULL; + + return S2N_RESULT_OK; } -static int s2n_check_ecdhe(const struct s2n_cipher_suite *cipher_suite, struct s2n_connection *conn) +static S2N_RESULT s2n_check_ecdhe(const struct s2n_cipher_suite *cipher_suite, struct s2n_connection *conn, bool *is_supported) { - return conn->secure.server_ecc_evp_params.negotiated_curve != NULL; + ENSURE_REF(cipher_suite); + ENSURE_REF(conn); + ENSURE_REF(is_supported); + + *is_supported = conn->secure.server_ecc_evp_params.negotiated_curve != NULL; + + return S2N_RESULT_OK; } -static int s2n_check_kem(const struct s2n_cipher_suite *cipher_suite, struct s2n_connection *conn) +static S2N_RESULT s2n_check_kem(const struct s2n_cipher_suite *cipher_suite, struct s2n_connection *conn, bool *is_supported) { - notnull_check(conn); - /* There is no support for PQ KEMs while in FIPS mode */ - if (s2n_is_in_fips_mode()) { - return 0; - } + ENSURE_REF(cipher_suite); + ENSURE_REF(conn); + ENSURE_REF(is_supported); + + /* If any of the necessary conditions are not met, we will return early and indicate KEM is not supported. */ + *is_supported = false; const struct s2n_kem_preferences *kem_preferences = NULL; - GUARD(s2n_connection_get_kem_preferences(conn, &kem_preferences)); - notnull_check(kem_preferences); + GUARD_AS_RESULT(s2n_connection_get_kem_preferences(conn, &kem_preferences)); + ENSURE_REF(kem_preferences); - if (kem_preferences->kem_count == 0) { - return 0; + if (!s2n_pq_is_enabled() || kem_preferences->kem_count == 0) { + return S2N_RESULT_OK; } const struct s2n_iana_to_kem *supported_params = NULL; - /* If the cipher suite has no supported KEMs return false */ - if (s2n_cipher_suite_to_kem(cipher_suite->iana_value, &supported_params) != 0) { - return 0; + if (s2n_cipher_suite_to_kem(cipher_suite->iana_value, &supported_params) != S2N_SUCCESS) { + return S2N_RESULT_OK; } + + ENSURE_REF(supported_params); if (supported_params->kem_count == 0) { - return 0; + return S2N_RESULT_OK; } struct s2n_blob *client_kem_pref_list = &(conn->secure.client_pq_kem_extension); @@ -69,60 +90,71 @@ static int s2n_check_kem(const struct s2n_cipher_suite *cipher_suite, struct s2n if (client_kem_pref_list == NULL || client_kem_pref_list->data == NULL) { /* If the client did not send a PQ KEM extension, then the server can pick its preferred parameter */ if (s2n_choose_kem_without_peer_pref_list(cipher_suite->iana_value, kem_preferences->kems, - kem_preferences->kem_count, &chosen_kem) - != 0) { - return 0; + kem_preferences->kem_count, &chosen_kem) != S2N_SUCCESS) { + return S2N_RESULT_OK; } } else { /* If the client did send a PQ KEM extension, then the server must find a mutually supported parameter. */ if (s2n_choose_kem_with_peer_pref_list(cipher_suite->iana_value, client_kem_pref_list, kem_preferences->kems, - kem_preferences->kem_count, &chosen_kem) - != 0) { - return 0; + kem_preferences->kem_count, &chosen_kem) != S2N_SUCCESS) { + return S2N_RESULT_OK; } } - return chosen_kem != NULL; + *is_supported = chosen_kem != NULL; + return S2N_RESULT_OK; } -static int s2n_configure_kem(const struct s2n_cipher_suite *cipher_suite, struct s2n_connection *conn) +static S2N_RESULT s2n_configure_kem(const struct s2n_cipher_suite *cipher_suite, struct s2n_connection *conn) { - notnull_check(conn); - /* There is no support for PQ KEMs while in FIPS mode */ - S2N_ERROR_IF(s2n_is_in_fips_mode(), S2N_ERR_PQ_KEMS_DISALLOWED_IN_FIPS); + ENSURE_REF(cipher_suite); + ENSURE_REF(conn); + + ENSURE(s2n_pq_is_enabled(), S2N_ERR_PQ_DISABLED); const struct s2n_kem_preferences *kem_preferences = NULL; - GUARD(s2n_connection_get_kem_preferences(conn, &kem_preferences)); - notnull_check(kem_preferences); + GUARD_AS_RESULT(s2n_connection_get_kem_preferences(conn, &kem_preferences)); + ENSURE_REF(kem_preferences); struct s2n_blob *proposed_kems = &(conn->secure.client_pq_kem_extension); const struct s2n_kem *chosen_kem = NULL; if (proposed_kems == NULL || proposed_kems->data == NULL) { /* If the client did not send a PQ KEM extension, then the server can pick its preferred parameter */ - GUARD(s2n_choose_kem_without_peer_pref_list(cipher_suite->iana_value, kem_preferences->kems, - kem_preferences->kem_count, &chosen_kem)); + GUARD_AS_RESULT(s2n_choose_kem_without_peer_pref_list(cipher_suite->iana_value, kem_preferences->kems, + kem_preferences->kem_count, &chosen_kem)); } else { /* If the client did send a PQ KEM extension, then the server must find a mutually supported parameter. */ - GUARD(s2n_choose_kem_with_peer_pref_list(cipher_suite->iana_value, proposed_kems, kem_preferences->kems, - kem_preferences->kem_count, &chosen_kem)); + GUARD_AS_RESULT(s2n_choose_kem_with_peer_pref_list(cipher_suite->iana_value, proposed_kems, kem_preferences->kems, + kem_preferences->kem_count, &chosen_kem)); } conn->secure.kem_params.kem = chosen_kem; - return 0; + return S2N_RESULT_OK; } -static int s2n_no_op_configure(const struct s2n_cipher_suite *cipher_suite, struct s2n_connection *conn) +static S2N_RESULT s2n_no_op_configure(const struct s2n_cipher_suite *cipher_suite, struct s2n_connection *conn) { - return 0; + return S2N_RESULT_OK; } -static int s2n_check_hybrid_ecdhe_kem(const struct s2n_cipher_suite *cipher_suite, struct s2n_connection *conn) +static S2N_RESULT s2n_check_hybrid_ecdhe_kem(const struct s2n_cipher_suite *cipher_suite, struct s2n_connection *conn, bool *is_supported) { - return s2n_check_ecdhe(cipher_suite, conn) && s2n_check_kem(cipher_suite, conn); + ENSURE_REF(cipher_suite); + ENSURE_REF(conn); + ENSURE_REF(is_supported); + + bool ecdhe_supported = false; + bool kem_supported = false; + GUARD_RESULT(s2n_check_ecdhe(cipher_suite, conn, &ecdhe_supported)); + GUARD_RESULT(s2n_check_kem(cipher_suite, conn, &kem_supported)); + + *is_supported = ecdhe_supported && kem_supported; + + return S2N_RESULT_OK; } const struct s2n_kex s2n_kem = { - .is_ephemeral = 1, + .is_ephemeral = true, .connection_supported = &s2n_check_kem, .configure_connection = &s2n_configure_kem, .server_key_recv_read_data = &s2n_kem_server_key_recv_read_data, @@ -133,7 +165,7 @@ const struct s2n_kex s2n_kem = { }; const struct s2n_kex s2n_rsa = { - .is_ephemeral = 0, + .is_ephemeral = false, .connection_supported = &s2n_check_rsa_key, .configure_connection = &s2n_no_op_configure, .server_key_recv_read_data = NULL, @@ -145,7 +177,7 @@ const struct s2n_kex s2n_rsa = { }; const struct s2n_kex s2n_dhe = { - .is_ephemeral = 1, + .is_ephemeral = true, .connection_supported = &s2n_check_dhe, .configure_connection = &s2n_no_op_configure, .server_key_recv_read_data = &s2n_dhe_server_key_recv_read_data, @@ -157,7 +189,7 @@ const struct s2n_kex s2n_dhe = { }; const struct s2n_kex s2n_ecdhe = { - .is_ephemeral = 1, + .is_ephemeral = true, .connection_supported = &s2n_check_ecdhe, .configure_connection = &s2n_no_op_configure, .server_key_recv_read_data = &s2n_ecdhe_server_key_recv_read_data, @@ -169,7 +201,7 @@ const struct s2n_kex s2n_ecdhe = { }; const struct s2n_kex s2n_hybrid_ecdhe_kem = { - .is_ephemeral = 1, + .is_ephemeral = true, .hybrid = { &s2n_ecdhe, &s2n_kem }, .connection_supported = &s2n_check_hybrid_ecdhe_kem, .configure_connection = &s2n_configure_kem, @@ -181,66 +213,112 @@ const struct s2n_kex s2n_hybrid_ecdhe_kem = { .prf = &s2n_hybrid_prf_master_secret, }; -int s2n_kex_supported(const struct s2n_cipher_suite *cipher_suite, struct s2n_connection *conn) +S2N_RESULT s2n_kex_supported(const struct s2n_cipher_suite *cipher_suite, struct s2n_connection *conn, bool *is_supported) { - /* Don't return -1 from notnull_check because that might allow a improperly configured kex to be marked as "supported" */ - return cipher_suite->key_exchange_alg->connection_supported != NULL && cipher_suite->key_exchange_alg->connection_supported(cipher_suite, conn); + ENSURE_REF(cipher_suite); + ENSURE_REF(cipher_suite->key_exchange_alg); + ENSURE_REF(cipher_suite->key_exchange_alg->connection_supported); + ENSURE_REF(conn); + ENSURE_REF(is_supported); + + GUARD_RESULT(cipher_suite->key_exchange_alg->connection_supported(cipher_suite, conn, is_supported)); + + return S2N_RESULT_OK; } -int s2n_configure_kex(const struct s2n_cipher_suite *cipher_suite, struct s2n_connection *conn) +S2N_RESULT s2n_configure_kex(const struct s2n_cipher_suite *cipher_suite, struct s2n_connection *conn) { - notnull_check(cipher_suite); - notnull_check(cipher_suite->key_exchange_alg); - notnull_check(cipher_suite->key_exchange_alg->configure_connection); - return cipher_suite->key_exchange_alg->configure_connection(cipher_suite, conn); + ENSURE_REF(cipher_suite); + ENSURE_REF(cipher_suite->key_exchange_alg); + ENSURE_REF(cipher_suite->key_exchange_alg->configure_connection); + ENSURE_REF(conn); + + GUARD_RESULT(cipher_suite->key_exchange_alg->configure_connection(cipher_suite, conn)); + + return S2N_RESULT_OK; } -int s2n_kex_is_ephemeral(const struct s2n_kex *kex) +S2N_RESULT s2n_kex_is_ephemeral(const struct s2n_kex *kex, bool *is_ephemeral) { - notnull_check(kex); - return kex->is_ephemeral; + ENSURE_REF(kex); + ENSURE_REF(is_ephemeral); + + *is_ephemeral = kex->is_ephemeral; + + return S2N_RESULT_OK; } -int s2n_kex_server_key_recv_parse_data(const struct s2n_kex *kex, struct s2n_connection *conn, struct s2n_kex_raw_server_data *raw_server_data) +S2N_RESULT s2n_kex_server_key_recv_parse_data(const struct s2n_kex *kex, struct s2n_connection *conn, struct s2n_kex_raw_server_data *raw_server_data) { - notnull_check(kex); - notnull_check(kex->server_key_recv_parse_data); - return kex->server_key_recv_parse_data(conn, raw_server_data); + ENSURE_REF(kex); + ENSURE_REF(kex->server_key_recv_parse_data); + ENSURE_REF(conn); + ENSURE_REF(raw_server_data); + + GUARD_AS_RESULT(kex->server_key_recv_parse_data(conn, raw_server_data)); + + return S2N_RESULT_OK; } -int s2n_kex_server_key_recv_read_data(const struct s2n_kex *kex, struct s2n_connection *conn, struct s2n_blob *data_to_verify, struct s2n_kex_raw_server_data *raw_server_data) +S2N_RESULT s2n_kex_server_key_recv_read_data(const struct s2n_kex *kex, struct s2n_connection *conn, struct s2n_blob *data_to_verify, + struct s2n_kex_raw_server_data *raw_server_data) { - notnull_check(kex); - notnull_check(kex->server_key_recv_read_data); - return kex->server_key_recv_read_data(conn, data_to_verify, raw_server_data); + ENSURE_REF(kex); + ENSURE_REF(kex->server_key_recv_read_data); + ENSURE_REF(conn); + ENSURE_REF(data_to_verify); + + GUARD_AS_RESULT(kex->server_key_recv_read_data(conn, data_to_verify, raw_server_data)); + + return S2N_RESULT_OK; } -int s2n_kex_server_key_send(const struct s2n_kex *kex, struct s2n_connection *conn, struct s2n_blob *data_to_sign) +S2N_RESULT s2n_kex_server_key_send(const struct s2n_kex *kex, struct s2n_connection *conn, struct s2n_blob *data_to_sign) { - notnull_check(kex); - notnull_check(kex->server_key_send); - return kex->server_key_send(conn, data_to_sign); + ENSURE_REF(kex); + ENSURE_REF(kex->server_key_send); + ENSURE_REF(conn); + ENSURE_REF(data_to_sign); + + GUARD_AS_RESULT(kex->server_key_send(conn, data_to_sign)); + + return S2N_RESULT_OK; } -int s2n_kex_client_key_recv(const struct s2n_kex *kex, struct s2n_connection *conn, struct s2n_blob *shared_key) +S2N_RESULT s2n_kex_client_key_recv(const struct s2n_kex *kex, struct s2n_connection *conn, struct s2n_blob *shared_key) { - notnull_check(kex); - notnull_check(kex->client_key_recv); - return kex->client_key_recv(conn, shared_key); + ENSURE_REF(kex); + ENSURE_REF(kex->client_key_recv); + ENSURE_REF(conn); + ENSURE_REF(shared_key); + + GUARD_AS_RESULT(kex->client_key_recv(conn, shared_key)); + + return S2N_RESULT_OK; } -int s2n_kex_client_key_send(const struct s2n_kex *kex, struct s2n_connection *conn, struct s2n_blob *shared_key) +S2N_RESULT s2n_kex_client_key_send(const struct s2n_kex *kex, struct s2n_connection *conn, struct s2n_blob *shared_key) { - notnull_check(kex); - notnull_check(kex->client_key_send); - return kex->client_key_send(conn, shared_key); + ENSURE_REF(kex); + ENSURE_REF(kex->client_key_send); + ENSURE_REF(conn); + ENSURE_REF(shared_key); + + GUARD_AS_RESULT(kex->client_key_send(conn, shared_key)); + + return S2N_RESULT_OK; } -int s2n_kex_tls_prf(const struct s2n_kex *kex, struct s2n_connection *conn, struct s2n_blob *premaster_secret) +S2N_RESULT s2n_kex_tls_prf(const struct s2n_kex *kex, struct s2n_connection *conn, struct s2n_blob *premaster_secret) { - notnull_check(kex); - notnull_check(kex->prf); - return kex->prf(conn, premaster_secret); + ENSURE_REF(kex); + ENSURE_REF(kex->prf); + ENSURE_REF(conn); + ENSURE_REF(premaster_secret); + + GUARD_AS_RESULT(kex->prf(conn, premaster_secret)); + + return S2N_RESULT_OK; } bool s2n_kex_includes(const struct s2n_kex *kex, const struct s2n_kex *query) diff --git a/contrib/restricted/aws/s2n/tls/s2n_kex.h b/contrib/restricted/aws/s2n/tls/s2n_kex.h index 587cde5d63..e65392cce7 100644 --- a/contrib/restricted/aws/s2n/tls/s2n_kex.h +++ b/contrib/restricted/aws/s2n/tls/s2n_kex.h @@ -18,13 +18,14 @@ #include <stdint.h> #include "tls/s2n_connection.h" #include "tls/s2n_kex_data.h" +#include "utils/s2n_result.h" struct s2n_kex { - uint8_t is_ephemeral; + bool is_ephemeral; const struct s2n_kex *hybrid[2]; - int (*connection_supported)(const struct s2n_cipher_suite *cipher_suite, struct s2n_connection *conn); - int (*configure_connection)(const struct s2n_cipher_suite *cipher_suite, struct s2n_connection *conn); + S2N_RESULT (*connection_supported)(const struct s2n_cipher_suite *cipher_suite, struct s2n_connection *conn, bool *is_supported); + S2N_RESULT (*configure_connection)(const struct s2n_cipher_suite *cipher_suite, struct s2n_connection *conn); int (*server_key_recv_read_data)(struct s2n_connection *conn, struct s2n_blob *data_to_verify, struct s2n_kex_raw_server_data *kex_data); int (*server_key_recv_parse_data)(struct s2n_connection *conn, struct s2n_kex_raw_server_data *kex_data); int (*server_key_send)(struct s2n_connection *conn, struct s2n_blob *data_to_sign); @@ -39,17 +40,17 @@ extern const struct s2n_kex s2n_dhe; extern const struct s2n_kex s2n_ecdhe; extern const struct s2n_kex s2n_hybrid_ecdhe_kem; -extern int s2n_kex_supported(const struct s2n_cipher_suite *cipher_suite, struct s2n_connection *conn); -extern int s2n_configure_kex(const struct s2n_cipher_suite *cipher_suite, struct s2n_connection *conn); -extern int s2n_kex_is_ephemeral(const struct s2n_kex *kex); +extern S2N_RESULT s2n_kex_supported(const struct s2n_cipher_suite *cipher_suite, struct s2n_connection *conn, bool *is_supported); +extern S2N_RESULT s2n_configure_kex(const struct s2n_cipher_suite *cipher_suite, struct s2n_connection *conn); +extern S2N_RESULT s2n_kex_is_ephemeral(const struct s2n_kex *kex, bool *is_ephemeral); -extern int s2n_kex_server_key_recv_read_data(const struct s2n_kex *kex, struct s2n_connection *conn, struct s2n_blob *data_to_verify, +extern S2N_RESULT s2n_kex_server_key_recv_read_data(const struct s2n_kex *kex, struct s2n_connection *conn, struct s2n_blob *data_to_verify, struct s2n_kex_raw_server_data *raw_server_data); -extern int s2n_kex_server_key_recv_parse_data(const struct s2n_kex *kex, struct s2n_connection *conn, struct s2n_kex_raw_server_data *raw_server_data); -extern int s2n_kex_server_key_send(const struct s2n_kex *kex, struct s2n_connection *conn, struct s2n_blob *data_to_sign); -extern int s2n_kex_client_key_recv(const struct s2n_kex *kex, struct s2n_connection *conn, struct s2n_blob *shared_key); -extern int s2n_kex_client_key_send(const struct s2n_kex *kex, struct s2n_connection *conn, struct s2n_blob *shared_key); +extern S2N_RESULT s2n_kex_server_key_recv_parse_data(const struct s2n_kex *kex, struct s2n_connection *conn, struct s2n_kex_raw_server_data *raw_server_data); +extern S2N_RESULT s2n_kex_server_key_send(const struct s2n_kex *kex, struct s2n_connection *conn, struct s2n_blob *data_to_sign); +extern S2N_RESULT s2n_kex_client_key_recv(const struct s2n_kex *kex, struct s2n_connection *conn, struct s2n_blob *shared_key); +extern S2N_RESULT s2n_kex_client_key_send(const struct s2n_kex *kex, struct s2n_connection *conn, struct s2n_blob *shared_key); -extern int s2n_kex_tls_prf(const struct s2n_kex *kex, struct s2n_connection *conn, struct s2n_blob *premaster_secret); +extern S2N_RESULT s2n_kex_tls_prf(const struct s2n_kex *kex, struct s2n_connection *conn, struct s2n_blob *premaster_secret); extern bool s2n_kex_includes(const struct s2n_kex *kex, const struct s2n_kex *query); diff --git a/contrib/restricted/aws/s2n/tls/s2n_psk.c b/contrib/restricted/aws/s2n/tls/s2n_psk.c index 2d764a00ed..59d4d75158 100644 --- a/contrib/restricted/aws/s2n/tls/s2n_psk.c +++ b/contrib/restricted/aws/s2n/tls/s2n_psk.c @@ -16,7 +16,6 @@ #include "crypto/s2n_tls13_keys.h" #include "tls/s2n_handshake.h" -#include "tls/s2n_psk.h" #include "tls/s2n_tls13_handshake.h" #include "tls/s2n_tls.h" @@ -31,7 +30,7 @@ int s2n_psk_init(struct s2n_psk *psk, s2n_psk_type type) notnull_check(psk); memset_check(psk, 0, sizeof(struct s2n_psk)); - psk->hash_alg = S2N_HASH_SHA256; + psk->hmac_alg = S2N_HMAC_SHA256; psk->type = type; return S2N_SUCCESS; @@ -78,48 +77,25 @@ S2N_RESULT s2n_psk_parameters_init(struct s2n_psk_parameters *params) return S2N_RESULT_OK; } -S2N_RESULT s2n_psk_parameters_free_unused_psks(struct s2n_psk_parameters *params) +S2N_CLEANUP_RESULT s2n_psk_parameters_wipe(struct s2n_psk_parameters *params) { ENSURE_REF(params); + for (size_t i = 0; i < params->psk_list.len; i++) { struct s2n_psk *psk; GUARD_RESULT(s2n_array_get(¶ms->psk_list, i, (void**)&psk)); - - if(psk == params->chosen_psk) { - continue; - } GUARD_AS_RESULT(s2n_psk_free(psk)); } - return S2N_RESULT_OK; -} - -S2N_RESULT s2n_psk_parameters_wipe(struct s2n_psk_parameters *params) -{ - ENSURE_REF(params); - - /* Free all PSKs */ - GUARD_RESULT(s2n_psk_parameters_free_unused_psks(params)); - GUARD_AS_RESULT(s2n_psk_free(params->chosen_psk)); - - struct s2n_blob psk_list_mem = params->psk_list.mem; - s2n_result result = s2n_psk_parameters_init(params); - params->psk_list.mem = psk_list_mem; + GUARD_AS_RESULT(s2n_free(¶ms->psk_list.mem)); + GUARD_RESULT(s2n_psk_parameters_init(params)); - return result; -} - -int s2n_psk_parameters_free(struct s2n_psk_parameters *params) -{ - notnull_check(params); - GUARD_AS_POSIX(s2n_psk_parameters_wipe(params)); - GUARD(s2n_free(¶ms->psk_list.mem)); - return S2N_SUCCESS; + return S2N_RESULT_OK; } /* The binder hash is computed by hashing the concatenation of the current transcript * and a partial ClientHello that does not include the binders themselves. */ -int s2n_psk_calculate_binder_hash(struct s2n_connection *conn, s2n_hash_algorithm hash_alg, +int s2n_psk_calculate_binder_hash(struct s2n_connection *conn, s2n_hmac_algorithm hmac_alg, const struct s2n_blob *partial_client_hello, struct s2n_blob *output_binder_hash) { notnull_check(partial_client_hello); @@ -128,6 +104,9 @@ int s2n_psk_calculate_binder_hash(struct s2n_connection *conn, s2n_hash_algorith /* Retrieve the current transcript. * The current transcript will be empty unless this handshake included a HelloRetryRequest. */ struct s2n_hash_state current_hash_state = {0}; + + s2n_hash_algorithm hash_alg; + GUARD(s2n_hmac_hash_alg(hmac_alg, &hash_alg)); GUARD(s2n_handshake_get_hash_state(conn, hash_alg, ¤t_hash_state)); /* Copy the current transcript to avoid modifying the original. */ @@ -144,20 +123,6 @@ int s2n_psk_calculate_binder_hash(struct s2n_connection *conn, s2n_hash_algorith return S2N_SUCCESS; } -static int s2n_tls13_keys_init_with_psk(struct s2n_tls13_keys *keys, struct s2n_psk *psk) -{ - notnull_check(keys); - - keys->hash_algorithm = psk->hash_alg; - GUARD(s2n_hash_hmac_alg(keys->hash_algorithm, &keys->hmac_algorithm)); - GUARD(s2n_hash_digest_size(keys->hash_algorithm, &keys->size)); - GUARD(s2n_blob_init(&keys->extract_secret, keys->extract_secret_bytes, keys->size)); - GUARD(s2n_blob_init(&keys->derive_secret, keys->derive_secret_bytes, keys->size)); - GUARD(s2n_hmac_new(&keys->hmac)); - - return S2N_SUCCESS; -} - /* The binder is computed in the same way as the Finished message * (https://tools.ietf.org/html/rfc8446#section-4.4.4) but with the BaseKey being the binder_key * derived via the key schedule from the corresponding PSK which is being offered @@ -171,7 +136,7 @@ int s2n_psk_calculate_binder(struct s2n_psk *psk, const struct s2n_blob *binder_ notnull_check(output_binder); DEFER_CLEANUP(struct s2n_tls13_keys psk_keys, s2n_tls13_keys_free); - GUARD(s2n_tls13_keys_init_with_psk(&psk_keys, psk)); + GUARD(s2n_tls13_keys_init(&psk_keys, psk->hmac_alg)); eq_check(binder_hash->size, psk_keys.size); eq_check(output_binder->size, psk_keys.size); @@ -200,12 +165,12 @@ int s2n_psk_verify_binder(struct s2n_connection *conn, struct s2n_psk *psk, notnull_check(binder_to_verify); DEFER_CLEANUP(struct s2n_tls13_keys psk_keys, s2n_tls13_keys_free); - GUARD(s2n_tls13_keys_init_with_psk(&psk_keys, psk)); + GUARD(s2n_tls13_keys_init(&psk_keys, psk->hmac_alg)); eq_check(binder_to_verify->size, psk_keys.size); /* Calculate the binder hash from the transcript */ s2n_tls13_key_blob(binder_hash, psk_keys.size); - GUARD(s2n_psk_calculate_binder_hash(conn, psk->hash_alg, partial_client_hello, &binder_hash)); + GUARD(s2n_psk_calculate_binder_hash(conn, psk->hmac_alg, partial_client_hello, &binder_hash)); /* Calculate the expected binder from the binder hash */ s2n_tls13_key_blob(expected_binder, psk_keys.size); @@ -257,13 +222,25 @@ static S2N_RESULT s2n_psk_write_binder_list(struct s2n_connection *conn, const s GUARD_RESULT(s2n_array_get(psk_list, i, (void**) &psk)); ENSURE_REF(psk); + /** + *= https://tools.ietf.org/rfc/rfc8446#section-4.1.4 + *# In addition, in its updated ClientHello, the client SHOULD NOT offer + *# any pre-shared keys associated with a hash other than that of the + *# selected cipher suite. This allows the client to avoid having to + *# compute partial hash transcripts for multiple hashes in the second + *# ClientHello. + */ + if (s2n_is_hello_retry_handshake(conn) && conn->secure.cipher_suite->prf_alg != psk->hmac_alg) { + continue; + } + /* Retrieve or calculate the binder hash. */ - struct s2n_blob *binder_hash = &binder_hashes[psk->hash_alg]; + struct s2n_blob *binder_hash = &binder_hashes[psk->hmac_alg]; if (binder_hash->size == 0) { uint8_t hash_size = 0; - GUARD_AS_RESULT(s2n_hash_digest_size(psk->hash_alg, &hash_size)); - GUARD_AS_RESULT(s2n_blob_init(binder_hash, binder_hashes_data[psk->hash_alg], hash_size)); - GUARD_AS_RESULT(s2n_psk_calculate_binder_hash(conn, psk->hash_alg, partial_client_hello, binder_hash)); + GUARD_AS_RESULT(s2n_hmac_digest_size(psk->hmac_alg, &hash_size)); + GUARD_AS_RESULT(s2n_blob_init(binder_hash, binder_hashes_data[psk->hmac_alg], hash_size)); + GUARD_AS_RESULT(s2n_psk_calculate_binder_hash(conn, psk->hmac_alg, partial_client_hello, binder_hash)); } GUARD_RESULT(s2n_psk_write_binder(conn, psk, binder_hash, out)); @@ -300,3 +277,57 @@ S2N_RESULT s2n_finish_psk_extension(struct s2n_connection *conn) GUARD_RESULT(s2n_psk_write_binder_list(conn, &partial_client_hello, client_hello)); return S2N_RESULT_OK; } + +static S2N_RESULT s2n_psk_set_hmac(struct s2n_psk *psk, s2n_psk_hmac psk_hmac_alg) +{ + switch(psk_hmac_alg) { + case S2N_PSK_HMAC_SHA224: psk->hmac_alg = S2N_HMAC_SHA224; break; + case S2N_PSK_HMAC_SHA256: psk->hmac_alg = S2N_HMAC_SHA256; break; + case S2N_PSK_HMAC_SHA384: psk->hmac_alg = S2N_HMAC_SHA384; break; + default: + BAIL(S2N_ERR_HMAC_INVALID_ALGORITHM); + } + return S2N_RESULT_OK; +} + +int s2n_connection_set_external_psks(struct s2n_connection *conn, struct s2n_external_psk *psk_vec, size_t psk_vec_length) +{ + ENSURE_POSIX_REF(conn); + ENSURE_POSIX_REF(psk_vec); + + /* Remove all previously-set external psks */ + /* The loop iterates from len to 1 instead of from len-1 to 0 to avoid size_t underflowing */ + for (size_t i = conn->psk_params.psk_list.len; i > 0; i--) { + size_t i_index = i - 1; + struct s2n_psk *psk = NULL; + GUARD_AS_POSIX(s2n_array_get(&conn->psk_params.psk_list, i_index, (void**) &psk)); + ENSURE_POSIX_REF(psk); + if (psk->type == S2N_PSK_TYPE_EXTERNAL) { + GUARD(s2n_psk_free(psk)); + GUARD_AS_POSIX(s2n_array_remove(&conn->psk_params.psk_list, i_index)); + } + } + + for (size_t i = 0; i < psk_vec_length; i++) { + /* Check for duplicate identities */ + size_t array_len = conn->psk_params.psk_list.len; + for (size_t j = 0; j < array_len; j++) { + struct s2n_psk *psk = NULL; + GUARD_AS_POSIX(s2n_array_get(&conn->psk_params.psk_list, j, (void**) &psk)); + ENSURE_POSIX_REF(psk); + if (psk->identity.size == psk_vec[i].identity_length) { + ENSURE_POSIX(memcmp(psk->identity.data, psk_vec[i].identity, psk->identity.size) != 0, S2N_ERR_DUPLICATE_PSK_IDENTITIES); + } + } + + struct s2n_psk *new_psk = NULL; + GUARD_AS_POSIX(s2n_array_pushback(&conn->psk_params.psk_list, (void**) &new_psk)); + ENSURE_POSIX_REF(new_psk); + GUARD(s2n_psk_init(new_psk, S2N_PSK_TYPE_EXTERNAL)); + GUARD(s2n_psk_new_identity(new_psk, psk_vec[i].identity, psk_vec[i].identity_length)); + GUARD(s2n_psk_new_secret(new_psk, psk_vec[i].secret, psk_vec[i].secret_length)); + GUARD_AS_POSIX(s2n_psk_set_hmac(new_psk, psk_vec[i].hmac)); + } + + return S2N_SUCCESS; +} diff --git a/contrib/restricted/aws/s2n/tls/s2n_psk.h b/contrib/restricted/aws/s2n/tls/s2n_psk.h index a805eaddfa..6d7052c876 100644 --- a/contrib/restricted/aws/s2n/tls/s2n_psk.h +++ b/contrib/restricted/aws/s2n/tls/s2n_psk.h @@ -17,7 +17,7 @@ #include <s2n.h> -#include "crypto/s2n_hash.h" +#include "crypto/s2n_hmac.h" #include "utils/s2n_array.h" #include "utils/s2n_blob.h" #include "utils/s2n_result.h" @@ -27,37 +27,71 @@ typedef enum { S2N_PSK_TYPE_EXTERNAL, } s2n_psk_type; +typedef enum { + S2N_PSK_KE_UNKNOWN = 0, + S2N_PSK_KE, + S2N_PSK_DHE_KE, +} s2n_psk_key_exchange_mode; + +typedef enum { + S2N_PSK_HMAC_SHA224 = 0, + S2N_PSK_HMAC_SHA256, + S2N_PSK_HMAC_SHA384, +} s2n_psk_hmac; + +struct s2n_external_psk { + uint8_t *identity; + size_t identity_length; + uint8_t *secret; + size_t secret_length; + s2n_psk_hmac hmac; +}; + struct s2n_psk { s2n_psk_type type; struct s2n_blob identity; struct s2n_blob secret; - s2n_hash_algorithm hash_alg; + s2n_hmac_algorithm hmac_alg; uint32_t obfuscated_ticket_age; struct s2n_blob early_secret; }; +struct s2n_psk_identity { + uint8_t *data; + uint16_t length; +}; + struct s2n_psk_parameters { struct s2n_array psk_list; uint16_t binder_list_size; - uint8_t chosen_psk_wire_index; + uint16_t chosen_psk_wire_index; struct s2n_psk *chosen_psk; + s2n_psk_key_exchange_mode psk_ke_mode; }; +/* This function will be labeled S2N_API and become a publicly visible api once we release the psk API. */ +int s2n_connection_set_external_psks(struct s2n_connection *conn, struct s2n_external_psk *psk_vec, size_t psk_vec_length); + int s2n_psk_init(struct s2n_psk *psk, s2n_psk_type type); int s2n_psk_new_identity(struct s2n_psk *psk, const uint8_t *identity, size_t identity_size); int s2n_psk_new_secret(struct s2n_psk *psk, const uint8_t *secret, size_t secret_size); int s2n_psk_free(struct s2n_psk *psk); S2N_RESULT s2n_psk_parameters_init(struct s2n_psk_parameters *params); -S2N_RESULT s2n_psk_parameters_wipe(struct s2n_psk_parameters *params); -S2N_RESULT s2n_psk_parameters_free_unused_psks(struct s2n_psk_parameters *params); -int s2n_psk_parameters_free(struct s2n_psk_parameters *params); +S2N_CLEANUP_RESULT s2n_psk_parameters_wipe(struct s2n_psk_parameters *params); S2N_RESULT s2n_finish_psk_extension(struct s2n_connection *conn); -int s2n_psk_calculate_binder_hash(struct s2n_connection *conn, s2n_hash_algorithm hash_alg, +int s2n_psk_calculate_binder_hash(struct s2n_connection *conn, s2n_hmac_algorithm hmac_alg, const struct s2n_blob *partial_client_hello, struct s2n_blob *output_binder_hash); int s2n_psk_calculate_binder(struct s2n_psk *psk, const struct s2n_blob *binder_hash, struct s2n_blob *output_binder); int s2n_psk_verify_binder(struct s2n_connection *conn, struct s2n_psk *psk, const struct s2n_blob *partial_client_hello, struct s2n_blob *binder_to_verify); + +typedef int (*s2n_psk_selection_callback)(struct s2n_connection *conn, + struct s2n_psk_identity *identities, size_t identities_length, + uint16_t *chosen_wire_index); +/* This function will be labeled S2N_API and become a publicly visible api once we release the psk API. */ +int s2n_config_set_psk_selection_callback(struct s2n_connection *conn, s2n_psk_selection_callback cb); + diff --git a/contrib/restricted/aws/s2n/tls/s2n_record_read_aead.c b/contrib/restricted/aws/s2n/tls/s2n_record_read_aead.c index 2c2c8df1f1..87207d3723 100644 --- a/contrib/restricted/aws/s2n/tls/s2n_record_read_aead.c +++ b/contrib/restricted/aws/s2n/tls/s2n_record_read_aead.c @@ -71,7 +71,7 @@ int s2n_record_parse_aead( GUARD(s2n_stuffer_write_bytes(&iv_stuffer, four_zeroes, 4)); GUARD(s2n_stuffer_write_bytes(&iv_stuffer, sequence_number, S2N_TLS_SEQUENCE_NUM_LEN)); for (int i = 0; i < cipher_suite->record_alg->cipher->io.aead.fixed_iv_size; i++) { - S2N_INVARIENT(i <= cipher_suite->record_alg->cipher->io.aead.fixed_iv_size); + S2N_INVARIANT(i <= cipher_suite->record_alg->cipher->io.aead.fixed_iv_size); aad_iv[i] = aad_iv[i] ^ implicit_iv[i]; } } else { diff --git a/contrib/restricted/aws/s2n/tls/s2n_recv.c b/contrib/restricted/aws/s2n/tls/s2n_recv.c index 8d0d04d4f0..8aa34e6d06 100644 --- a/contrib/restricted/aws/s2n/tls/s2n_recv.c +++ b/contrib/restricted/aws/s2n/tls/s2n_recv.c @@ -117,7 +117,7 @@ int s2n_read_full_record(struct s2n_connection *conn, uint8_t * record_type, int return 0; } -ssize_t s2n_recv(struct s2n_connection * conn, void *buf, ssize_t size, s2n_blocked_status * blocked) +ssize_t s2n_recv_impl(struct s2n_connection * conn, void *buf, ssize_t size, s2n_blocked_status * blocked) { ssize_t bytes_read = 0; struct s2n_blob out = {.data = (uint8_t *) buf }; @@ -204,6 +204,15 @@ ssize_t s2n_recv(struct s2n_connection * conn, void *buf, ssize_t size, s2n_bloc return bytes_read; } +ssize_t s2n_recv(struct s2n_connection * conn, void *buf, ssize_t size, s2n_blocked_status * blocked) +{ + ENSURE_POSIX(!conn->recv_in_use, S2N_ERR_REENTRANCY); + conn->recv_in_use = true; + ssize_t result = s2n_recv_impl(conn, buf, size, blocked); + conn->recv_in_use = false; + return result; +} + uint32_t s2n_peek(struct s2n_connection *conn) { return s2n_stuffer_data_available(&conn->in); } diff --git a/contrib/restricted/aws/s2n/tls/s2n_security_policies.c b/contrib/restricted/aws/s2n/tls/s2n_security_policies.c index 2daa495369..388fb25b56 100644 --- a/contrib/restricted/aws/s2n/tls/s2n_security_policies.c +++ b/contrib/restricted/aws/s2n/tls/s2n_security_policies.c @@ -224,6 +224,14 @@ const struct s2n_security_policy security_policy_cloudfront_tls_1_2_2019 = { .ecc_preferences = &s2n_ecc_preferences_20200310, }; +const struct s2n_security_policy security_policy_cloudfront_tls_1_2_2021 = { + .minimum_protocol_version = S2N_TLS12, + .cipher_preferences = &cipher_preferences_cloudfront_tls_1_2_2021, + .kem_preferences = &kem_preferences_null, + .signature_preferences = &s2n_signature_preferences_20200207, + .ecc_preferences = &s2n_ecc_preferences_20200310, +}; + /* CloudFront viewer facing legacy TLS 1.2 policies */ const struct s2n_security_policy security_policy_cloudfront_ssl_v_3_legacy = { .minimum_protocol_version = S2N_SSLv3, @@ -281,8 +289,6 @@ const struct s2n_security_policy security_policy_kms_tls_1_0_2018_10 = { .ecc_preferences = &s2n_ecc_preferences_20140601, }; -#if !defined(S2N_NO_PQ) - const struct s2n_security_policy security_policy_kms_pq_tls_1_0_2019_06 = { .minimum_protocol_version = S2N_TLS10, .cipher_preferences = &cipher_preferences_kms_pq_tls_1_0_2019_06, @@ -331,7 +337,6 @@ const struct s2n_security_policy security_policy_pq_tls_1_0_2020_12 = { .ecc_preferences = &s2n_ecc_preferences_20200310, }; -#endif const struct s2n_security_policy security_policy_kms_fips_tls_1_2_2018_10 = { .minimum_protocol_version = S2N_TLS12, .cipher_preferences = &cipher_preferences_kms_fips_tls_1_2_2018_10, @@ -463,11 +468,7 @@ const struct s2n_security_policy security_policy_20201021 = { const struct s2n_security_policy security_policy_test_all = { .minimum_protocol_version = S2N_SSLv3, .cipher_preferences = &cipher_preferences_test_all, -#if !defined(S2N_NO_PQ) .kem_preferences = &kem_preferences_kms_pq_tls_1_0_2020_07, -#else - .kem_preferences = &kem_preferences_null, -#endif .signature_preferences = &s2n_signature_preferences_20201021, .ecc_preferences = &s2n_ecc_preferences_test_all, }; @@ -475,11 +476,7 @@ const struct s2n_security_policy security_policy_test_all = { const struct s2n_security_policy security_policy_test_all_tls12 = { .minimum_protocol_version = S2N_SSLv3, .cipher_preferences = &cipher_preferences_test_all_tls12, -#if !defined(S2N_NO_PQ) .kem_preferences = &kem_preferences_kms_pq_tls_1_0_2020_07, -#else - .kem_preferences = &kem_preferences_null, -#endif .signature_preferences = &s2n_signature_preferences_20201021, .ecc_preferences = &s2n_ecc_preferences_20201021, }; @@ -488,8 +485,8 @@ const struct s2n_security_policy security_policy_test_all_fips = { .minimum_protocol_version = S2N_TLS10, .cipher_preferences = &cipher_preferences_test_all_fips, .kem_preferences = &kem_preferences_null, - .signature_preferences = &s2n_signature_preferences_20140601, - .ecc_preferences = &s2n_ecc_preferences_20140601, + .signature_preferences = &s2n_signature_preferences_20201021, + .ecc_preferences = &s2n_ecc_preferences_20201021, }; const struct s2n_security_policy security_policy_test_all_ecdsa = { @@ -558,6 +555,7 @@ struct s2n_security_policy_selection security_policy_selection[] = { { .version="CloudFront-TLS-1-1-2016", .security_policy=&security_policy_cloudfront_tls_1_1_2016, .ecc_extension_required=0, .pq_kem_extension_required=0 }, { .version="CloudFront-TLS-1-2-2018", .security_policy=&security_policy_cloudfront_tls_1_2_2018, .ecc_extension_required=0, .pq_kem_extension_required=0 }, { .version="CloudFront-TLS-1-2-2019", .security_policy=&security_policy_cloudfront_tls_1_2_2019, .ecc_extension_required=0, .pq_kem_extension_required=0 }, + { .version="CloudFront-TLS-1-2-2021", .security_policy=&security_policy_cloudfront_tls_1_2_2021, .ecc_extension_required=0, .pq_kem_extension_required=0 }, /* CloudFront Legacy (TLS 1.2) policies */ { .version="CloudFront-SSL-v-3-Legacy", .security_policy=&security_policy_cloudfront_ssl_v_3_legacy, .ecc_extension_required=0, .pq_kem_extension_required=0 }, { .version="CloudFront-TLS-1-0-2014-Legacy", .security_policy=&security_policy_cloudfront_tls_1_0_2014_legacy, .ecc_extension_required=0, .pq_kem_extension_required=0 }, @@ -566,14 +564,12 @@ struct s2n_security_policy_selection security_policy_selection[] = { { .version="CloudFront-TLS-1-2-2018-Legacy", .security_policy=&security_policy_cloudfront_tls_1_2_2018_legacy, .ecc_extension_required=0, .pq_kem_extension_required=0 }, { .version="CloudFront-TLS-1-2-2019-Legacy", .security_policy=&security_policy_cloudfront_tls_1_2_2019_legacy, .ecc_extension_required=0, .pq_kem_extension_required=0 }, { .version="KMS-TLS-1-0-2018-10", .security_policy=&security_policy_kms_tls_1_0_2018_10, .ecc_extension_required=0, .pq_kem_extension_required=0 }, -#if !defined(S2N_NO_PQ) { .version="KMS-PQ-TLS-1-0-2019-06", .security_policy=&security_policy_kms_pq_tls_1_0_2019_06, .ecc_extension_required=0, .pq_kem_extension_required=0 }, { .version="KMS-PQ-TLS-1-0-2020-02", .security_policy=&security_policy_kms_pq_tls_1_0_2020_02, .ecc_extension_required=0, .pq_kem_extension_required=0 }, { .version="KMS-PQ-TLS-1-0-2020-07", .security_policy=&security_policy_kms_pq_tls_1_0_2020_07, .ecc_extension_required=0, .pq_kem_extension_required=0 }, { .version="PQ-SIKE-TEST-TLS-1-0-2019-11", .security_policy=&security_policy_pq_sike_test_tls_1_0_2019_11, .ecc_extension_required=0, .pq_kem_extension_required=0 }, { .version="PQ-SIKE-TEST-TLS-1-0-2020-02", .security_policy=&security_policy_pq_sike_test_tls_1_0_2020_02, .ecc_extension_required=0, .pq_kem_extension_required=0 }, { .version="PQ-TLS-1-0-2020-12", .security_policy=&security_policy_pq_tls_1_0_2020_12, .ecc_extension_required=0, .pq_kem_extension_required=0 }, -#endif { .version="KMS-FIPS-TLS-1-2-2018-10", .security_policy=&security_policy_kms_fips_tls_1_2_2018_10, .ecc_extension_required=0, .pq_kem_extension_required=0 }, { .version="20140601", .security_policy=&security_policy_20140601, .ecc_extension_required=0, .pq_kem_extension_required=0 }, { .version="20141001", .security_policy=&security_policy_20141001, .ecc_extension_required=0, .pq_kem_extension_required=0 }, diff --git a/contrib/restricted/aws/s2n/tls/s2n_security_policies.h b/contrib/restricted/aws/s2n/tls/s2n_security_policies.h index ab71889ad7..f724eb1934 100644 --- a/contrib/restricted/aws/s2n/tls/s2n_security_policies.h +++ b/contrib/restricted/aws/s2n/tls/s2n_security_policies.h @@ -79,14 +79,12 @@ extern const struct s2n_security_policy security_policy_elb_fs_1_2_2019_08; extern const struct s2n_security_policy security_policy_elb_fs_1_1_2019_08; extern const struct s2n_security_policy security_policy_elb_fs_1_2_res_2019_08; -#if !defined(S2N_NO_PQ) extern const struct s2n_security_policy security_policy_kms_pq_tls_1_0_2019_06; extern const struct s2n_security_policy security_policy_kms_pq_tls_1_0_2020_02; extern const struct s2n_security_policy security_policy_kms_pq_tls_1_0_2020_07; extern const struct s2n_security_policy security_policy_pq_sike_test_tls_1_0_2019_11; extern const struct s2n_security_policy security_policy_pq_sike_test_tls_1_0_2020_02; extern const struct s2n_security_policy security_policy_pq_tls_1_0_2020_12; -#endif extern const struct s2n_security_policy security_policy_cloudfront_upstream; extern const struct s2n_security_policy security_policy_cloudfront_upstream_tls10; @@ -97,6 +95,7 @@ extern const struct s2n_security_policy security_policy_cloudfront_tls_1_0_2016; extern const struct s2n_security_policy security_policy_cloudfront_tls_1_1_2016; extern const struct s2n_security_policy security_policy_cloudfront_tls_1_2_2018; extern const struct s2n_security_policy security_policy_cloudfront_tls_1_2_2019; +extern const struct s2n_security_policy security_policy_cloudfront_tls_1_2_2021; extern const struct s2n_security_policy security_policy_kms_tls_1_0_2018_10; extern const struct s2n_security_policy security_policy_kms_fips_tls_1_2_2018_10; diff --git a/contrib/restricted/aws/s2n/tls/s2n_send.c b/contrib/restricted/aws/s2n/tls/s2n_send.c index c9f9cf89d6..4f59054845 100644 --- a/contrib/restricted/aws/s2n/tls/s2n_send.c +++ b/contrib/restricted/aws/s2n/tls/s2n_send.c @@ -88,7 +88,7 @@ int s2n_flush(struct s2n_connection *conn, s2n_blocked_status * blocked) return 0; } -ssize_t s2n_sendv_with_offset(struct s2n_connection *conn, const struct iovec *bufs, ssize_t count, ssize_t offs, s2n_blocked_status *blocked) +ssize_t s2n_sendv_with_offset_impl(struct s2n_connection *conn, const struct iovec *bufs, ssize_t count, ssize_t offs, s2n_blocked_status *blocked) { ssize_t user_data_sent, total_size = 0; @@ -203,6 +203,15 @@ ssize_t s2n_sendv_with_offset(struct s2n_connection *conn, const struct iovec *b return total_size; } +ssize_t s2n_sendv_with_offset(struct s2n_connection *conn, const struct iovec *bufs, ssize_t count, ssize_t offs, s2n_blocked_status *blocked) +{ + ENSURE_POSIX(!conn->send_in_use, S2N_ERR_REENTRANCY); + conn->send_in_use = true; + ssize_t result = s2n_sendv_with_offset_impl(conn, bufs, count, offs, blocked); + conn->send_in_use = false; + return result; +} + ssize_t s2n_sendv(struct s2n_connection *conn, const struct iovec *bufs, ssize_t count, s2n_blocked_status *blocked) { return s2n_sendv_with_offset(conn, bufs, count, 0, blocked); diff --git a/contrib/restricted/aws/s2n/tls/s2n_server_hello_retry.c b/contrib/restricted/aws/s2n/tls/s2n_server_hello_retry.c index f35c5a0016..a6dda9edf8 100644 --- a/contrib/restricted/aws/s2n/tls/s2n_server_hello_retry.c +++ b/contrib/restricted/aws/s2n/tls/s2n_server_hello_retry.c @@ -22,7 +22,7 @@ #include "tls/s2n_tls13.h" #include "tls/s2n_tls13_handshake.h" #include "utils/s2n_safety.h" -#include "crypto/s2n_fips.h" +#include "pq-crypto/s2n_pq.h" /* From RFC5246 7.4.1.2. */ #define S2N_TLS_COMPRESSION_METHOD_NULL 0 @@ -107,9 +107,9 @@ int s2n_server_hello_retry_recv(struct s2n_connection *conn) } if (kem_group != NULL) { - /* If in FIPS mode, the client should not have sent any PQ IDs + /* If PQ is disabled, the client should not have sent any PQ IDs * in the supported_groups list of the initial ClientHello */ - ENSURE_POSIX(s2n_is_in_fips_mode() == false, S2N_ERR_PQ_KEMS_DISALLOWED_IN_FIPS); + ENSURE_POSIX(s2n_pq_is_enabled(), S2N_ERR_PQ_DISABLED); for (size_t i = 0; i < kem_pref->tls13_kem_group_count; i++) { if (kem_pref->tls13_kem_groups[i] == kem_group) { diff --git a/contrib/restricted/aws/s2n/tls/s2n_server_key_exchange.c b/contrib/restricted/aws/s2n/tls/s2n_server_key_exchange.c index 2169f7c5e2..9116868110 100644 --- a/contrib/restricted/aws/s2n/tls/s2n_server_key_exchange.c +++ b/contrib/restricted/aws/s2n/tls/s2n_server_key_exchange.c @@ -49,7 +49,7 @@ int s2n_server_key_recv(struct s2n_connection *conn) /* Read the KEX data */ struct s2n_kex_raw_server_data kex_data = {0}; - GUARD(s2n_kex_server_key_recv_read_data(key_exchange, conn, &data_to_verify, &kex_data)); + GUARD_AS_POSIX(s2n_kex_server_key_recv_read_data(key_exchange, conn, &data_to_verify, &kex_data)); /* Add common signature data */ struct s2n_signature_scheme active_sig_scheme; @@ -81,7 +81,7 @@ int s2n_server_key_recv(struct s2n_connection *conn) GUARD(s2n_pkey_free(&conn->secure.server_public_key)); /* Parse the KEX data into whatever form needed and save it to the connection object */ - GUARD(s2n_kex_server_key_recv_parse_data(key_exchange, conn, &kex_data)); + GUARD_AS_POSIX(s2n_kex_server_key_recv_parse_data(key_exchange, conn, &kex_data)); return 0; } @@ -209,10 +209,10 @@ int s2n_hybrid_server_key_recv_read_data(struct s2n_connection *conn, struct s2n notnull_check(total_data_to_verify->data); struct s2n_blob data_to_verify_0 = {0}; - GUARD(s2n_kex_server_key_recv_read_data(hybrid_kex_0, conn, &data_to_verify_0, raw_server_data)); + GUARD_AS_POSIX(s2n_kex_server_key_recv_read_data(hybrid_kex_0, conn, &data_to_verify_0, raw_server_data)); struct s2n_blob data_to_verify_1 = {0}; - GUARD(s2n_kex_server_key_recv_read_data(hybrid_kex_1, conn, &data_to_verify_1, raw_server_data)); + GUARD_AS_POSIX(s2n_kex_server_key_recv_read_data(hybrid_kex_1, conn, &data_to_verify_1, raw_server_data)); total_data_to_verify->size = data_to_verify_0.size + data_to_verify_1.size; return 0; @@ -226,8 +226,8 @@ int s2n_hybrid_server_key_recv_parse_data(struct s2n_connection *conn, struct s2 const struct s2n_kex *hybrid_kex_0 = kex->hybrid[0]; const struct s2n_kex *hybrid_kex_1 = kex->hybrid[1]; - GUARD(s2n_kex_server_key_recv_parse_data(hybrid_kex_0, conn, raw_server_data)); - GUARD(s2n_kex_server_key_recv_parse_data(hybrid_kex_1, conn, raw_server_data)); + GUARD_AS_POSIX(s2n_kex_server_key_recv_parse_data(hybrid_kex_0, conn, raw_server_data)); + GUARD_AS_POSIX(s2n_kex_server_key_recv_parse_data(hybrid_kex_1, conn, raw_server_data)); return 0; } @@ -241,7 +241,7 @@ int s2n_server_key_send(struct s2n_connection *conn) struct s2n_blob data_to_sign = {0}; /* Call the negotiated key exchange method to send it's data */ - GUARD(s2n_kex_server_key_send(key_exchange, conn, &data_to_sign)); + GUARD_AS_POSIX(s2n_kex_server_key_send(key_exchange, conn, &data_to_sign)); /* Add common signature data */ if (conn->actual_protocol_version == S2N_TLS12) { @@ -315,10 +315,10 @@ int s2n_hybrid_server_key_send(struct s2n_connection *conn, struct s2n_blob *tot notnull_check(total_data_to_sign->data); struct s2n_blob data_to_verify_0 = {0}; - GUARD(s2n_kex_server_key_send(hybrid_kex_0, conn, &data_to_verify_0)); + GUARD_AS_POSIX(s2n_kex_server_key_send(hybrid_kex_0, conn, &data_to_verify_0)); struct s2n_blob data_to_verify_1 = {0}; - GUARD(s2n_kex_server_key_send(hybrid_kex_1, conn, &data_to_verify_1)); + GUARD_AS_POSIX(s2n_kex_server_key_send(hybrid_kex_1, conn, &data_to_verify_1)); total_data_to_sign->size = data_to_verify_0.size + data_to_verify_1.size; return 0; diff --git a/contrib/restricted/aws/s2n/tls/s2n_tls13_handshake.c b/contrib/restricted/aws/s2n/tls/s2n_tls13_handshake.c index fe000814e7..4382c02382 100644 --- a/contrib/restricted/aws/s2n/tls/s2n_tls13_handshake.c +++ b/contrib/restricted/aws/s2n/tls/s2n_tls13_handshake.c @@ -189,7 +189,9 @@ int s2n_tls13_handle_handshake_secrets(struct s2n_connection *conn) GUARD(s2n_tls13_compute_shared_secret(conn, &shared_secret)); /* derive early secrets */ - GUARD(s2n_tls13_derive_early_secrets(&secrets)); + GUARD(s2n_tls13_derive_early_secrets(&secrets, conn->psk_params.chosen_psk)); + /* since early secrets have been computed, PSKs are no longer needed and can be cleaned up */ + GUARD_AS_POSIX(s2n_psk_parameters_wipe(&conn->psk_params)); /* produce handshake secrets */ s2n_stack_blob(client_hs_secret, secrets.size, S2N_TLS13_SECRET_MAX_LEN); @@ -315,6 +317,19 @@ static int s2n_tls13_handle_master_secret(struct s2n_connection *conn) return S2N_SUCCESS; } +static int s2n_tls13_handle_resumption_master_secret(struct s2n_connection *conn) +{ + s2n_tls13_connection_keys(keys, conn); + + struct s2n_hash_state hash_state = {0}; + GUARD(s2n_handshake_get_hash_state(conn, keys.hash_algorithm, &hash_state)); + + struct s2n_blob resumption_master_secret = {0}; + GUARD(s2n_blob_init(&resumption_master_secret, conn->resumption_master_secret, keys.size)); + GUARD(s2n_tls13_derive_resumption_master_secret(&keys, &hash_state, &resumption_master_secret)); + return S2N_SUCCESS; +} + int s2n_tls13_handle_secrets(struct s2n_connection *conn) { notnull_check(conn); @@ -341,6 +356,7 @@ int s2n_tls13_handle_secrets(struct s2n_connection *conn) GUARD(s2n_tls13_handle_application_secret(conn, S2N_SERVER)); } GUARD(s2n_tls13_handle_application_secret(conn, S2N_CLIENT)); + GUARD(s2n_tls13_handle_resumption_master_secret(conn)); break; default: break; diff --git a/contrib/restricted/aws/s2n/tls/s2n_tls_parameters.h b/contrib/restricted/aws/s2n/tls/s2n_tls_parameters.h index 1980a69138..7bce43d0b2 100644 --- a/contrib/restricted/aws/s2n/tls/s2n_tls_parameters.h +++ b/contrib/restricted/aws/s2n/tls/s2n_tls_parameters.h @@ -106,12 +106,22 @@ #define TLS_EXTENSION_RENEGOTIATION_INFO 65281 /* TLS 1.3 extensions from https://tools.ietf.org/html/rfc8446#section-4.2 */ -#define TLS_EXTENSION_SUPPORTED_VERSIONS 43 -#define TLS_EXTENSION_COOKIE 44 -#define TLS_EXTENSION_KEY_SHARE 51 - -/* QUIC-TLS extension from https://tools.ietf.org/html/draft-ietf-quic-tls-29#section-8.2 */ -#define TLS_QUIC_TRANSPORT_PARAMETERS 65535 +#define TLS_EXTENSION_SUPPORTED_VERSIONS 43 +#define TLS_EXTENSION_COOKIE 44 +#define TLS_EXTENSION_PSK_KEY_EXCHANGE_MODES 45 +#define TLS_EXTENSION_KEY_SHARE 51 + +/* TLS 1.3 pre-shared key exchange modes from https://tools.ietf.org/html/rfc8446#section-4.2.9 */ +#define TLS_PSK_KE_MODE 0 +#define TLS_PSK_DHE_KE_MODE 1 + +/** + *= https://tools.ietf.org/id/draft-ietf-quic-tls-32.txt#8.2 + *# enum { + *# quic_transport_parameters(0xffa5), (65535) + *# } ExtensionType; + */ +#define TLS_QUIC_TRANSPORT_PARAMETERS 0xffa5 /* TLS Signature Algorithms - RFC 5246 7.4.1.4.1 */ /* https://www.iana.org/assignments/tls-parameters/tls-parameters.xhtml#tls-parameters-16 */ diff --git a/contrib/restricted/aws/s2n/utils/s2n_annotations.h b/contrib/restricted/aws/s2n/utils/s2n_annotations.h index 4a004c92a1..0d6c01dd05 100644 --- a/contrib/restricted/aws/s2n/utils/s2n_annotations.h +++ b/contrib/restricted/aws/s2n/utils/s2n_annotations.h @@ -16,4 +16,4 @@ /* For compilation purposes, these annotations are no-ops */ #define S2N_PUBLIC_INPUT(__a) -#define S2N_INVARIENT(__a) +#define S2N_INVARIANT(__a) diff --git a/contrib/restricted/aws/s2n/utils/s2n_result.h b/contrib/restricted/aws/s2n/utils/s2n_result.h index 9a1b3ed13a..c135c55074 100644 --- a/contrib/restricted/aws/s2n/utils/s2n_result.h +++ b/contrib/restricted/aws/s2n/utils/s2n_result.h @@ -44,5 +44,10 @@ S2N_RESULT_MUST_USE bool s2n_result_is_error(s2n_result result); /* used in function declarations to signal function fallibility */ #define S2N_RESULT S2N_RESULT_MUST_USE s2n_result +/* The DEFER_CLEANUP macro discards the result of its cleanup function. + * We need a version of s2n_result which can be ignored. + */ +#define S2N_CLEANUP_RESULT s2n_result + /* converts the S2N_RESULT into posix error codes */ #define S2N_RESULT_TO_POSIX( x ) (s2n_result_is_ok(x) ? S2N_SUCCESS : S2N_FAILURE) diff --git a/contrib/restricted/aws/s2n/utils/s2n_safety.c b/contrib/restricted/aws/s2n/utils/s2n_safety.c index d786c4d852..13c741b3ec 100644 --- a/contrib/restricted/aws/s2n/utils/s2n_safety.c +++ b/contrib/restricted/aws/s2n/utils/s2n_safety.c @@ -60,6 +60,8 @@ bool s2n_constant_time_equals(const uint8_t * a, const uint8_t * b, const uint32 S2N_PUBLIC_INPUT(a); S2N_PUBLIC_INPUT(b); S2N_PUBLIC_INPUT(len); + ENSURE_POSIX((a == NULL) || S2N_MEM_IS_READABLE(a, len), S2N_ERR_SAFETY); + ENSURE_POSIX((b == NULL) || S2N_MEM_IS_READABLE(b, len), S2N_ERR_SAFETY); if (len != 0 && (a == NULL || b == NULL)) { return false; @@ -69,7 +71,7 @@ bool s2n_constant_time_equals(const uint8_t * a, const uint8_t * b, const uint32 for (int i = 0; i < len; i++) { /* Invariants must hold for each execution of the loop * and at loop exit, hence the <= */ - S2N_INVARIENT(i <= len); + S2N_INVARIANT(i <= len); xor |= a[i] ^ b[i]; } diff --git a/contrib/restricted/aws/s2n/ya.make b/contrib/restricted/aws/s2n/ya.make index f216afee82..f6de16d8f0 100644 --- a/contrib/restricted/aws/s2n/ya.make +++ b/contrib/restricted/aws/s2n/ya.make @@ -7,9 +7,9 @@ OWNER( g:cpp-contrib ) -VERSION(0.10.23) +VERSION(0.10.26) -ORIGINAL_SOURCE(https://github.com/aws/s2n-tls/archive/v0.10.23.tar.gz) +ORIGINAL_SOURCE(https://github.com/aws/s2n-tls/archive/v0.10.26.tar.gz) LICENSE( Apache-2.0 AND @@ -162,11 +162,13 @@ SRCS( tls/extensions/s2n_extension_type.c tls/extensions/s2n_extension_type_lists.c tls/extensions/s2n_key_share.c + tls/extensions/s2n_psk_key_exchange_modes.c tls/extensions/s2n_quic_transport_params.c tls/extensions/s2n_server_alpn.c tls/extensions/s2n_server_certificate_status.c tls/extensions/s2n_server_key_share.c tls/extensions/s2n_server_max_fragment_length.c + tls/extensions/s2n_server_psk.c tls/extensions/s2n_server_renegotiation_info.c tls/extensions/s2n_server_sct_list.c tls/extensions/s2n_server_server_name.c |