diff --git a/clients/client-s3/src/S3Client.ts b/clients/client-s3/src/S3Client.ts index 40cfea69a470..f3283b5a3217 100644 --- a/clients/client-s3/src/S3Client.ts +++ b/clients/client-s3/src/S3Client.ts @@ -1,5 +1,10 @@ // smithy-typescript generated code import { getAddExpectContinuePlugin } from "@aws-sdk/middleware-expect-continue"; +import { + FlexibleChecksumsInputConfig, + FlexibleChecksumsResolvedConfig, + resolveFlexibleChecksumsConfig, +} from "@aws-sdk/middleware-flexible-checksums"; import { getHostHeaderPlugin, HostHeaderInputConfig, @@ -729,6 +734,7 @@ export interface ClientDefaults extends Partial<__SmithyConfiguration<__HttpHand export type S3ClientConfigType = Partial<__SmithyConfiguration<__HttpHandlerOptions>> & ClientDefaults & UserAgentInputConfig & + FlexibleChecksumsInputConfig & RetryInputConfig & RegionInputConfig & HostHeaderInputConfig & @@ -751,6 +757,7 @@ export type S3ClientResolvedConfigType = __SmithyResolvedConfiguration<__HttpHan Required & RuntimeExtensionsConfig & UserAgentResolvedConfig & + FlexibleChecksumsResolvedConfig & RetryResolvedConfig & RegionResolvedConfig & HostHeaderResolvedConfig & @@ -785,16 +792,17 @@ export class S3Client extends __Client< const _config_0 = __getRuntimeConfig(configuration || {}); const _config_1 = resolveClientEndpointParameters(_config_0); const _config_2 = resolveUserAgentConfig(_config_1); - const _config_3 = resolveRetryConfig(_config_2); - const _config_4 = resolveRegionConfig(_config_3); - const _config_5 = resolveHostHeaderConfig(_config_4); - const _config_6 = resolveEndpointConfig(_config_5); - const _config_7 = resolveEventStreamSerdeConfig(_config_6); - const _config_8 = resolveHttpAuthSchemeConfig(_config_7); - const _config_9 = resolveS3Config(_config_8, { session: [() => this, CreateSessionCommand] }); - const _config_10 = resolveRuntimeExtensions(_config_9, configuration?.extensions || []); - super(_config_10); - this.config = _config_10; + const _config_3 = resolveFlexibleChecksumsConfig(_config_2); + const _config_4 = resolveRetryConfig(_config_3); + const _config_5 = resolveRegionConfig(_config_4); + const _config_6 = resolveHostHeaderConfig(_config_5); + const _config_7 = resolveEndpointConfig(_config_6); + const _config_8 = resolveEventStreamSerdeConfig(_config_7); + const _config_9 = resolveHttpAuthSchemeConfig(_config_8); + const _config_10 = resolveS3Config(_config_9, { session: [() => this, CreateSessionCommand] }); + const _config_11 = resolveRuntimeExtensions(_config_10, configuration?.extensions || []); + super(_config_11); + this.config = _config_11; this.middlewareStack.use(getUserAgentPlugin(this.config)); this.middlewareStack.use(getRetryPlugin(this.config)); this.middlewareStack.use(getContentLengthPlugin(this.config)); diff --git a/clients/client-s3/src/runtimeConfig.browser.ts b/clients/client-s3/src/runtimeConfig.browser.ts index 7651945d8c1d..b0399198fa04 100644 --- a/clients/client-s3/src/runtimeConfig.browser.ts +++ b/clients/client-s3/src/runtimeConfig.browser.ts @@ -4,6 +4,10 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha1 } from "@aws-crypto/sha1-browser"; import { Sha256 } from "@aws-crypto/sha256-browser"; +import { + DEFAULT_REQUEST_CHECKSUM_CALCULATION, + DEFAULT_RESPONSE_CHECKSUM_VALIDATION, +} from "@aws-sdk/middleware-flexible-checksums"; import { defaultUserAgent } from "@aws-sdk/util-user-agent-browser"; import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@smithy/config-resolver"; import { eventStreamSerdeProvider } from "@smithy/eventstream-serde-browser"; @@ -40,7 +44,9 @@ export const getRuntimeConfig = (config: S3ClientConfig) => { maxAttempts: config?.maxAttempts ?? DEFAULT_MAX_ATTEMPTS, md5: config?.md5 ?? Md5, region: config?.region ?? invalidProvider("Region is missing"), + requestChecksumCalculation: config?.requestChecksumCalculation ?? DEFAULT_REQUEST_CHECKSUM_CALCULATION, requestHandler: RequestHandler.create(config?.requestHandler ?? defaultConfigProvider), + responseChecksumValidation: config?.responseChecksumValidation ?? DEFAULT_RESPONSE_CHECKSUM_VALIDATION, retryMode: config?.retryMode ?? (async () => (await defaultConfigProvider()).retryMode || DEFAULT_RETRY_MODE), sha1: config?.sha1 ?? Sha1, sha256: config?.sha256 ?? Sha256, diff --git a/clients/client-s3/src/runtimeConfig.ts b/clients/client-s3/src/runtimeConfig.ts index 89e08626ab8f..a57fdb6773e0 100644 --- a/clients/client-s3/src/runtimeConfig.ts +++ b/clients/client-s3/src/runtimeConfig.ts @@ -5,6 +5,10 @@ import packageInfo from "../package.json"; // eslint-disable-line import { NODE_SIGV4A_CONFIG_OPTIONS, emitWarningIfUnsupportedVersion as awsCheckVersion } from "@aws-sdk/core"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { NODE_USE_ARN_REGION_CONFIG_OPTIONS } from "@aws-sdk/middleware-bucket-endpoint"; +import { + NODE_REQUEST_CHECKSUM_CALCULATION_CONFIG_OPTIONS, + NODE_RESPONSE_CHECKSUM_VALIDATION_CONFIG_OPTIONS, +} from "@aws-sdk/middleware-flexible-checksums"; import { NODE_DISABLE_S3_EXPRESS_SESSION_AUTH_OPTIONS } from "@aws-sdk/middleware-sdk-s3"; import { ChecksumConstructor as __ChecksumConstructor, HashConstructor as __HashConstructor } from "@aws-sdk/types"; import { defaultUserAgent } from "@aws-sdk/util-user-agent-node"; @@ -53,7 +57,11 @@ export const getRuntimeConfig = (config: S3ClientConfig) => { maxAttempts: config?.maxAttempts ?? loadNodeConfig(NODE_MAX_ATTEMPT_CONFIG_OPTIONS), md5: config?.md5 ?? Hash.bind(null, "md5"), region: config?.region ?? loadNodeConfig(NODE_REGION_CONFIG_OPTIONS, NODE_REGION_CONFIG_FILE_OPTIONS), + requestChecksumCalculation: + config?.requestChecksumCalculation ?? loadNodeConfig(NODE_REQUEST_CHECKSUM_CALCULATION_CONFIG_OPTIONS), requestHandler: RequestHandler.create(config?.requestHandler ?? defaultConfigProvider), + responseChecksumValidation: + config?.responseChecksumValidation ?? loadNodeConfig(NODE_RESPONSE_CHECKSUM_VALIDATION_CONFIG_OPTIONS), retryMode: config?.retryMode ?? loadNodeConfig({