/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace SecurityHub { namespace Model { /** *

Details about an Lambda function's configuration.

See Also:

* AWS * API Reference

*/ class AwsLambdaFunctionDetails { public: AWS_SECURITYHUB_API AwsLambdaFunctionDetails(); AWS_SECURITYHUB_API AwsLambdaFunctionDetails(Aws::Utils::Json::JsonView jsonValue); AWS_SECURITYHUB_API AwsLambdaFunctionDetails& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_SECURITYHUB_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

An AwsLambdaFunctionCode object.

*/ inline const AwsLambdaFunctionCode& GetCode() const{ return m_code; } /** *

An AwsLambdaFunctionCode object.

*/ inline bool CodeHasBeenSet() const { return m_codeHasBeenSet; } /** *

An AwsLambdaFunctionCode object.

*/ inline void SetCode(const AwsLambdaFunctionCode& value) { m_codeHasBeenSet = true; m_code = value; } /** *

An AwsLambdaFunctionCode object.

*/ inline void SetCode(AwsLambdaFunctionCode&& value) { m_codeHasBeenSet = true; m_code = std::move(value); } /** *

An AwsLambdaFunctionCode object.

*/ inline AwsLambdaFunctionDetails& WithCode(const AwsLambdaFunctionCode& value) { SetCode(value); return *this;} /** *

An AwsLambdaFunctionCode object.

*/ inline AwsLambdaFunctionDetails& WithCode(AwsLambdaFunctionCode&& value) { SetCode(std::move(value)); return *this;} /** *

The SHA256 hash of the function's deployment package.

*/ inline const Aws::String& GetCodeSha256() const{ return m_codeSha256; } /** *

The SHA256 hash of the function's deployment package.

*/ inline bool CodeSha256HasBeenSet() const { return m_codeSha256HasBeenSet; } /** *

The SHA256 hash of the function's deployment package.

*/ inline void SetCodeSha256(const Aws::String& value) { m_codeSha256HasBeenSet = true; m_codeSha256 = value; } /** *

The SHA256 hash of the function's deployment package.

*/ inline void SetCodeSha256(Aws::String&& value) { m_codeSha256HasBeenSet = true; m_codeSha256 = std::move(value); } /** *

The SHA256 hash of the function's deployment package.

*/ inline void SetCodeSha256(const char* value) { m_codeSha256HasBeenSet = true; m_codeSha256.assign(value); } /** *

The SHA256 hash of the function's deployment package.

*/ inline AwsLambdaFunctionDetails& WithCodeSha256(const Aws::String& value) { SetCodeSha256(value); return *this;} /** *

The SHA256 hash of the function's deployment package.

*/ inline AwsLambdaFunctionDetails& WithCodeSha256(Aws::String&& value) { SetCodeSha256(std::move(value)); return *this;} /** *

The SHA256 hash of the function's deployment package.

*/ inline AwsLambdaFunctionDetails& WithCodeSha256(const char* value) { SetCodeSha256(value); return *this;} /** *

The function's dead letter queue.

*/ inline const AwsLambdaFunctionDeadLetterConfig& GetDeadLetterConfig() const{ return m_deadLetterConfig; } /** *

The function's dead letter queue.

*/ inline bool DeadLetterConfigHasBeenSet() const { return m_deadLetterConfigHasBeenSet; } /** *

The function's dead letter queue.

*/ inline void SetDeadLetterConfig(const AwsLambdaFunctionDeadLetterConfig& value) { m_deadLetterConfigHasBeenSet = true; m_deadLetterConfig = value; } /** *

The function's dead letter queue.

*/ inline void SetDeadLetterConfig(AwsLambdaFunctionDeadLetterConfig&& value) { m_deadLetterConfigHasBeenSet = true; m_deadLetterConfig = std::move(value); } /** *

The function's dead letter queue.

*/ inline AwsLambdaFunctionDetails& WithDeadLetterConfig(const AwsLambdaFunctionDeadLetterConfig& value) { SetDeadLetterConfig(value); return *this;} /** *

The function's dead letter queue.

*/ inline AwsLambdaFunctionDetails& WithDeadLetterConfig(AwsLambdaFunctionDeadLetterConfig&& value) { SetDeadLetterConfig(std::move(value)); return *this;} /** *

The function's environment variables.

*/ inline const AwsLambdaFunctionEnvironment& GetEnvironment() const{ return m_environment; } /** *

The function's environment variables.

*/ inline bool EnvironmentHasBeenSet() const { return m_environmentHasBeenSet; } /** *

The function's environment variables.

*/ inline void SetEnvironment(const AwsLambdaFunctionEnvironment& value) { m_environmentHasBeenSet = true; m_environment = value; } /** *

The function's environment variables.

*/ inline void SetEnvironment(AwsLambdaFunctionEnvironment&& value) { m_environmentHasBeenSet = true; m_environment = std::move(value); } /** *

The function's environment variables.

*/ inline AwsLambdaFunctionDetails& WithEnvironment(const AwsLambdaFunctionEnvironment& value) { SetEnvironment(value); return *this;} /** *

The function's environment variables.

*/ inline AwsLambdaFunctionDetails& WithEnvironment(AwsLambdaFunctionEnvironment&& value) { SetEnvironment(std::move(value)); return *this;} /** *

The name of the function.

*/ inline const Aws::String& GetFunctionName() const{ return m_functionName; } /** *

The name of the function.

*/ inline bool FunctionNameHasBeenSet() const { return m_functionNameHasBeenSet; } /** *

The name of the function.

*/ inline void SetFunctionName(const Aws::String& value) { m_functionNameHasBeenSet = true; m_functionName = value; } /** *

The name of the function.

*/ inline void SetFunctionName(Aws::String&& value) { m_functionNameHasBeenSet = true; m_functionName = std::move(value); } /** *

The name of the function.

*/ inline void SetFunctionName(const char* value) { m_functionNameHasBeenSet = true; m_functionName.assign(value); } /** *

The name of the function.

*/ inline AwsLambdaFunctionDetails& WithFunctionName(const Aws::String& value) { SetFunctionName(value); return *this;} /** *

The name of the function.

*/ inline AwsLambdaFunctionDetails& WithFunctionName(Aws::String&& value) { SetFunctionName(std::move(value)); return *this;} /** *

The name of the function.

*/ inline AwsLambdaFunctionDetails& WithFunctionName(const char* value) { SetFunctionName(value); return *this;} /** *

The function that Lambda calls to begin executing your function.

*/ inline const Aws::String& GetHandler() const{ return m_handler; } /** *

The function that Lambda calls to begin executing your function.

*/ inline bool HandlerHasBeenSet() const { return m_handlerHasBeenSet; } /** *

The function that Lambda calls to begin executing your function.

*/ inline void SetHandler(const Aws::String& value) { m_handlerHasBeenSet = true; m_handler = value; } /** *

The function that Lambda calls to begin executing your function.

*/ inline void SetHandler(Aws::String&& value) { m_handlerHasBeenSet = true; m_handler = std::move(value); } /** *

The function that Lambda calls to begin executing your function.

*/ inline void SetHandler(const char* value) { m_handlerHasBeenSet = true; m_handler.assign(value); } /** *

The function that Lambda calls to begin executing your function.

*/ inline AwsLambdaFunctionDetails& WithHandler(const Aws::String& value) { SetHandler(value); return *this;} /** *

The function that Lambda calls to begin executing your function.

*/ inline AwsLambdaFunctionDetails& WithHandler(Aws::String&& value) { SetHandler(std::move(value)); return *this;} /** *

The function that Lambda calls to begin executing your function.

*/ inline AwsLambdaFunctionDetails& WithHandler(const char* value) { SetHandler(value); return *this;} /** *

The KMS key that is used to encrypt the function's environment variables. * This key is only returned if you've configured a customer managed customer * managed key.

*/ inline const Aws::String& GetKmsKeyArn() const{ return m_kmsKeyArn; } /** *

The KMS key that is used to encrypt the function's environment variables. * This key is only returned if you've configured a customer managed customer * managed key.

*/ inline bool KmsKeyArnHasBeenSet() const { return m_kmsKeyArnHasBeenSet; } /** *

The KMS key that is used to encrypt the function's environment variables. * This key is only returned if you've configured a customer managed customer * managed key.

*/ inline void SetKmsKeyArn(const Aws::String& value) { m_kmsKeyArnHasBeenSet = true; m_kmsKeyArn = value; } /** *

The KMS key that is used to encrypt the function's environment variables. * This key is only returned if you've configured a customer managed customer * managed key.

*/ inline void SetKmsKeyArn(Aws::String&& value) { m_kmsKeyArnHasBeenSet = true; m_kmsKeyArn = std::move(value); } /** *

The KMS key that is used to encrypt the function's environment variables. * This key is only returned if you've configured a customer managed customer * managed key.

*/ inline void SetKmsKeyArn(const char* value) { m_kmsKeyArnHasBeenSet = true; m_kmsKeyArn.assign(value); } /** *

The KMS key that is used to encrypt the function's environment variables. * This key is only returned if you've configured a customer managed customer * managed key.

*/ inline AwsLambdaFunctionDetails& WithKmsKeyArn(const Aws::String& value) { SetKmsKeyArn(value); return *this;} /** *

The KMS key that is used to encrypt the function's environment variables. * This key is only returned if you've configured a customer managed customer * managed key.

*/ inline AwsLambdaFunctionDetails& WithKmsKeyArn(Aws::String&& value) { SetKmsKeyArn(std::move(value)); return *this;} /** *

The KMS key that is used to encrypt the function's environment variables. * This key is only returned if you've configured a customer managed customer * managed key.

*/ inline AwsLambdaFunctionDetails& WithKmsKeyArn(const char* value) { SetKmsKeyArn(value); return *this;} /** *

Indicates when the function was last updated.

Uses the * date-time format specified in RFC 3339 section 5.6, * Internet Date/Time Format. The value cannot contain spaces, and date and * time should be separated by T. For example, * 2020-03-22T13:22:13.933Z.

*/ inline const Aws::String& GetLastModified() const{ return m_lastModified; } /** *

Indicates when the function was last updated.

Uses the * date-time format specified in RFC 3339 section 5.6, * Internet Date/Time Format. The value cannot contain spaces, and date and * time should be separated by T. For example, * 2020-03-22T13:22:13.933Z.

*/ inline bool LastModifiedHasBeenSet() const { return m_lastModifiedHasBeenSet; } /** *

Indicates when the function was last updated.

Uses the * date-time format specified in RFC 3339 section 5.6, * Internet Date/Time Format. The value cannot contain spaces, and date and * time should be separated by T. For example, * 2020-03-22T13:22:13.933Z.

*/ inline void SetLastModified(const Aws::String& value) { m_lastModifiedHasBeenSet = true; m_lastModified = value; } /** *

Indicates when the function was last updated.

Uses the * date-time format specified in RFC 3339 section 5.6, * Internet Date/Time Format. The value cannot contain spaces, and date and * time should be separated by T. For example, * 2020-03-22T13:22:13.933Z.

*/ inline void SetLastModified(Aws::String&& value) { m_lastModifiedHasBeenSet = true; m_lastModified = std::move(value); } /** *

Indicates when the function was last updated.

Uses the * date-time format specified in RFC 3339 section 5.6, * Internet Date/Time Format. The value cannot contain spaces, and date and * time should be separated by T. For example, * 2020-03-22T13:22:13.933Z.

*/ inline void SetLastModified(const char* value) { m_lastModifiedHasBeenSet = true; m_lastModified.assign(value); } /** *

Indicates when the function was last updated.

Uses the * date-time format specified in RFC 3339 section 5.6, * Internet Date/Time Format. The value cannot contain spaces, and date and * time should be separated by T. For example, * 2020-03-22T13:22:13.933Z.

*/ inline AwsLambdaFunctionDetails& WithLastModified(const Aws::String& value) { SetLastModified(value); return *this;} /** *

Indicates when the function was last updated.

Uses the * date-time format specified in RFC 3339 section 5.6, * Internet Date/Time Format. The value cannot contain spaces, and date and * time should be separated by T. For example, * 2020-03-22T13:22:13.933Z.

*/ inline AwsLambdaFunctionDetails& WithLastModified(Aws::String&& value) { SetLastModified(std::move(value)); return *this;} /** *

Indicates when the function was last updated.

Uses the * date-time format specified in RFC 3339 section 5.6, * Internet Date/Time Format. The value cannot contain spaces, and date and * time should be separated by T. For example, * 2020-03-22T13:22:13.933Z.

*/ inline AwsLambdaFunctionDetails& WithLastModified(const char* value) { SetLastModified(value); return *this;} /** *

The function's layers.

*/ inline const Aws::Vector& GetLayers() const{ return m_layers; } /** *

The function's layers.

*/ inline bool LayersHasBeenSet() const { return m_layersHasBeenSet; } /** *

The function's layers.

*/ inline void SetLayers(const Aws::Vector& value) { m_layersHasBeenSet = true; m_layers = value; } /** *

The function's layers.

*/ inline void SetLayers(Aws::Vector&& value) { m_layersHasBeenSet = true; m_layers = std::move(value); } /** *

The function's layers.

*/ inline AwsLambdaFunctionDetails& WithLayers(const Aws::Vector& value) { SetLayers(value); return *this;} /** *

The function's layers.

*/ inline AwsLambdaFunctionDetails& WithLayers(Aws::Vector&& value) { SetLayers(std::move(value)); return *this;} /** *

The function's layers.

*/ inline AwsLambdaFunctionDetails& AddLayers(const AwsLambdaFunctionLayer& value) { m_layersHasBeenSet = true; m_layers.push_back(value); return *this; } /** *

The function's layers.

*/ inline AwsLambdaFunctionDetails& AddLayers(AwsLambdaFunctionLayer&& value) { m_layersHasBeenSet = true; m_layers.push_back(std::move(value)); return *this; } /** *

For Lambda@Edge functions, the ARN of the master function.

*/ inline const Aws::String& GetMasterArn() const{ return m_masterArn; } /** *

For Lambda@Edge functions, the ARN of the master function.

*/ inline bool MasterArnHasBeenSet() const { return m_masterArnHasBeenSet; } /** *

For Lambda@Edge functions, the ARN of the master function.

*/ inline void SetMasterArn(const Aws::String& value) { m_masterArnHasBeenSet = true; m_masterArn = value; } /** *

For Lambda@Edge functions, the ARN of the master function.

*/ inline void SetMasterArn(Aws::String&& value) { m_masterArnHasBeenSet = true; m_masterArn = std::move(value); } /** *

For Lambda@Edge functions, the ARN of the master function.

*/ inline void SetMasterArn(const char* value) { m_masterArnHasBeenSet = true; m_masterArn.assign(value); } /** *

For Lambda@Edge functions, the ARN of the master function.

*/ inline AwsLambdaFunctionDetails& WithMasterArn(const Aws::String& value) { SetMasterArn(value); return *this;} /** *

For Lambda@Edge functions, the ARN of the master function.

*/ inline AwsLambdaFunctionDetails& WithMasterArn(Aws::String&& value) { SetMasterArn(std::move(value)); return *this;} /** *

For Lambda@Edge functions, the ARN of the master function.

*/ inline AwsLambdaFunctionDetails& WithMasterArn(const char* value) { SetMasterArn(value); return *this;} /** *

The memory that is allocated to the function.

*/ inline int GetMemorySize() const{ return m_memorySize; } /** *

The memory that is allocated to the function.

*/ inline bool MemorySizeHasBeenSet() const { return m_memorySizeHasBeenSet; } /** *

The memory that is allocated to the function.

*/ inline void SetMemorySize(int value) { m_memorySizeHasBeenSet = true; m_memorySize = value; } /** *

The memory that is allocated to the function.

*/ inline AwsLambdaFunctionDetails& WithMemorySize(int value) { SetMemorySize(value); return *this;} /** *

The latest updated revision of the function or alias.

*/ inline const Aws::String& GetRevisionId() const{ return m_revisionId; } /** *

The latest updated revision of the function or alias.

*/ inline bool RevisionIdHasBeenSet() const { return m_revisionIdHasBeenSet; } /** *

The latest updated revision of the function or alias.

*/ inline void SetRevisionId(const Aws::String& value) { m_revisionIdHasBeenSet = true; m_revisionId = value; } /** *

The latest updated revision of the function or alias.

*/ inline void SetRevisionId(Aws::String&& value) { m_revisionIdHasBeenSet = true; m_revisionId = std::move(value); } /** *

The latest updated revision of the function or alias.

*/ inline void SetRevisionId(const char* value) { m_revisionIdHasBeenSet = true; m_revisionId.assign(value); } /** *

The latest updated revision of the function or alias.

*/ inline AwsLambdaFunctionDetails& WithRevisionId(const Aws::String& value) { SetRevisionId(value); return *this;} /** *

The latest updated revision of the function or alias.

*/ inline AwsLambdaFunctionDetails& WithRevisionId(Aws::String&& value) { SetRevisionId(std::move(value)); return *this;} /** *

The latest updated revision of the function or alias.

*/ inline AwsLambdaFunctionDetails& WithRevisionId(const char* value) { SetRevisionId(value); return *this;} /** *

The function's execution role.

*/ inline const Aws::String& GetRole() const{ return m_role; } /** *

The function's execution role.

*/ inline bool RoleHasBeenSet() const { return m_roleHasBeenSet; } /** *

The function's execution role.

*/ inline void SetRole(const Aws::String& value) { m_roleHasBeenSet = true; m_role = value; } /** *

The function's execution role.

*/ inline void SetRole(Aws::String&& value) { m_roleHasBeenSet = true; m_role = std::move(value); } /** *

The function's execution role.

*/ inline void SetRole(const char* value) { m_roleHasBeenSet = true; m_role.assign(value); } /** *

The function's execution role.

*/ inline AwsLambdaFunctionDetails& WithRole(const Aws::String& value) { SetRole(value); return *this;} /** *

The function's execution role.

*/ inline AwsLambdaFunctionDetails& WithRole(Aws::String&& value) { SetRole(std::move(value)); return *this;} /** *

The function's execution role.

*/ inline AwsLambdaFunctionDetails& WithRole(const char* value) { SetRole(value); return *this;} /** *

The runtime environment for the Lambda function.

*/ inline const Aws::String& GetRuntime() const{ return m_runtime; } /** *

The runtime environment for the Lambda function.

*/ inline bool RuntimeHasBeenSet() const { return m_runtimeHasBeenSet; } /** *

The runtime environment for the Lambda function.

*/ inline void SetRuntime(const Aws::String& value) { m_runtimeHasBeenSet = true; m_runtime = value; } /** *

The runtime environment for the Lambda function.

*/ inline void SetRuntime(Aws::String&& value) { m_runtimeHasBeenSet = true; m_runtime = std::move(value); } /** *

The runtime environment for the Lambda function.

*/ inline void SetRuntime(const char* value) { m_runtimeHasBeenSet = true; m_runtime.assign(value); } /** *

The runtime environment for the Lambda function.

*/ inline AwsLambdaFunctionDetails& WithRuntime(const Aws::String& value) { SetRuntime(value); return *this;} /** *

The runtime environment for the Lambda function.

*/ inline AwsLambdaFunctionDetails& WithRuntime(Aws::String&& value) { SetRuntime(std::move(value)); return *this;} /** *

The runtime environment for the Lambda function.

*/ inline AwsLambdaFunctionDetails& WithRuntime(const char* value) { SetRuntime(value); return *this;} /** *

The amount of time that Lambda allows a function to run before stopping * it.

*/ inline int GetTimeout() const{ return m_timeout; } /** *

The amount of time that Lambda allows a function to run before stopping * it.

*/ inline bool TimeoutHasBeenSet() const { return m_timeoutHasBeenSet; } /** *

The amount of time that Lambda allows a function to run before stopping * it.

*/ inline void SetTimeout(int value) { m_timeoutHasBeenSet = true; m_timeout = value; } /** *

The amount of time that Lambda allows a function to run before stopping * it.

*/ inline AwsLambdaFunctionDetails& WithTimeout(int value) { SetTimeout(value); return *this;} /** *

The function's X-Ray tracing configuration.

*/ inline const AwsLambdaFunctionTracingConfig& GetTracingConfig() const{ return m_tracingConfig; } /** *

The function's X-Ray tracing configuration.

*/ inline bool TracingConfigHasBeenSet() const { return m_tracingConfigHasBeenSet; } /** *

The function's X-Ray tracing configuration.

*/ inline void SetTracingConfig(const AwsLambdaFunctionTracingConfig& value) { m_tracingConfigHasBeenSet = true; m_tracingConfig = value; } /** *

The function's X-Ray tracing configuration.

*/ inline void SetTracingConfig(AwsLambdaFunctionTracingConfig&& value) { m_tracingConfigHasBeenSet = true; m_tracingConfig = std::move(value); } /** *

The function's X-Ray tracing configuration.

*/ inline AwsLambdaFunctionDetails& WithTracingConfig(const AwsLambdaFunctionTracingConfig& value) { SetTracingConfig(value); return *this;} /** *

The function's X-Ray tracing configuration.

*/ inline AwsLambdaFunctionDetails& WithTracingConfig(AwsLambdaFunctionTracingConfig&& value) { SetTracingConfig(std::move(value)); return *this;} /** *

The function's networking configuration.

*/ inline const AwsLambdaFunctionVpcConfig& GetVpcConfig() const{ return m_vpcConfig; } /** *

The function's networking configuration.

*/ inline bool VpcConfigHasBeenSet() const { return m_vpcConfigHasBeenSet; } /** *

The function's networking configuration.

*/ inline void SetVpcConfig(const AwsLambdaFunctionVpcConfig& value) { m_vpcConfigHasBeenSet = true; m_vpcConfig = value; } /** *

The function's networking configuration.

*/ inline void SetVpcConfig(AwsLambdaFunctionVpcConfig&& value) { m_vpcConfigHasBeenSet = true; m_vpcConfig = std::move(value); } /** *

The function's networking configuration.

*/ inline AwsLambdaFunctionDetails& WithVpcConfig(const AwsLambdaFunctionVpcConfig& value) { SetVpcConfig(value); return *this;} /** *

The function's networking configuration.

*/ inline AwsLambdaFunctionDetails& WithVpcConfig(AwsLambdaFunctionVpcConfig&& value) { SetVpcConfig(std::move(value)); return *this;} /** *

The version of the Lambda function.

*/ inline const Aws::String& GetVersion() const{ return m_version; } /** *

The version of the Lambda function.

*/ inline bool VersionHasBeenSet() const { return m_versionHasBeenSet; } /** *

The version of the Lambda function.

*/ inline void SetVersion(const Aws::String& value) { m_versionHasBeenSet = true; m_version = value; } /** *

The version of the Lambda function.

*/ inline void SetVersion(Aws::String&& value) { m_versionHasBeenSet = true; m_version = std::move(value); } /** *

The version of the Lambda function.

*/ inline void SetVersion(const char* value) { m_versionHasBeenSet = true; m_version.assign(value); } /** *

The version of the Lambda function.

*/ inline AwsLambdaFunctionDetails& WithVersion(const Aws::String& value) { SetVersion(value); return *this;} /** *

The version of the Lambda function.

*/ inline AwsLambdaFunctionDetails& WithVersion(Aws::String&& value) { SetVersion(std::move(value)); return *this;} /** *

The version of the Lambda function.

*/ inline AwsLambdaFunctionDetails& WithVersion(const char* value) { SetVersion(value); return *this;} /** *

The instruction set architecture that the function uses. Valid values are * x86_64 or arm64.

*/ inline const Aws::Vector& GetArchitectures() const{ return m_architectures; } /** *

The instruction set architecture that the function uses. Valid values are * x86_64 or arm64.

*/ inline bool ArchitecturesHasBeenSet() const { return m_architecturesHasBeenSet; } /** *

The instruction set architecture that the function uses. Valid values are * x86_64 or arm64.

*/ inline void SetArchitectures(const Aws::Vector& value) { m_architecturesHasBeenSet = true; m_architectures = value; } /** *

The instruction set architecture that the function uses. Valid values are * x86_64 or arm64.

*/ inline void SetArchitectures(Aws::Vector&& value) { m_architecturesHasBeenSet = true; m_architectures = std::move(value); } /** *

The instruction set architecture that the function uses. Valid values are * x86_64 or arm64.

*/ inline AwsLambdaFunctionDetails& WithArchitectures(const Aws::Vector& value) { SetArchitectures(value); return *this;} /** *

The instruction set architecture that the function uses. Valid values are * x86_64 or arm64.

*/ inline AwsLambdaFunctionDetails& WithArchitectures(Aws::Vector&& value) { SetArchitectures(std::move(value)); return *this;} /** *

The instruction set architecture that the function uses. Valid values are * x86_64 or arm64.

*/ inline AwsLambdaFunctionDetails& AddArchitectures(const Aws::String& value) { m_architecturesHasBeenSet = true; m_architectures.push_back(value); return *this; } /** *

The instruction set architecture that the function uses. Valid values are * x86_64 or arm64.

*/ inline AwsLambdaFunctionDetails& AddArchitectures(Aws::String&& value) { m_architecturesHasBeenSet = true; m_architectures.push_back(std::move(value)); return *this; } /** *

The instruction set architecture that the function uses. Valid values are * x86_64 or arm64.

*/ inline AwsLambdaFunctionDetails& AddArchitectures(const char* value) { m_architecturesHasBeenSet = true; m_architectures.push_back(value); return *this; } /** *

The type of deployment package that's used to deploy the function code to * Lambda. Set to Image for a container image and Zip for * a .zip file archive.

*/ inline const Aws::String& GetPackageType() const{ return m_packageType; } /** *

The type of deployment package that's used to deploy the function code to * Lambda. Set to Image for a container image and Zip for * a .zip file archive.

*/ inline bool PackageTypeHasBeenSet() const { return m_packageTypeHasBeenSet; } /** *

The type of deployment package that's used to deploy the function code to * Lambda. Set to Image for a container image and Zip for * a .zip file archive.

*/ inline void SetPackageType(const Aws::String& value) { m_packageTypeHasBeenSet = true; m_packageType = value; } /** *

The type of deployment package that's used to deploy the function code to * Lambda. Set to Image for a container image and Zip for * a .zip file archive.

*/ inline void SetPackageType(Aws::String&& value) { m_packageTypeHasBeenSet = true; m_packageType = std::move(value); } /** *

The type of deployment package that's used to deploy the function code to * Lambda. Set to Image for a container image and Zip for * a .zip file archive.

*/ inline void SetPackageType(const char* value) { m_packageTypeHasBeenSet = true; m_packageType.assign(value); } /** *

The type of deployment package that's used to deploy the function code to * Lambda. Set to Image for a container image and Zip for * a .zip file archive.

*/ inline AwsLambdaFunctionDetails& WithPackageType(const Aws::String& value) { SetPackageType(value); return *this;} /** *

The type of deployment package that's used to deploy the function code to * Lambda. Set to Image for a container image and Zip for * a .zip file archive.

*/ inline AwsLambdaFunctionDetails& WithPackageType(Aws::String&& value) { SetPackageType(std::move(value)); return *this;} /** *

The type of deployment package that's used to deploy the function code to * Lambda. Set to Image for a container image and Zip for * a .zip file archive.

*/ inline AwsLambdaFunctionDetails& WithPackageType(const char* value) { SetPackageType(value); return *this;} private: AwsLambdaFunctionCode m_code; bool m_codeHasBeenSet = false; Aws::String m_codeSha256; bool m_codeSha256HasBeenSet = false; AwsLambdaFunctionDeadLetterConfig m_deadLetterConfig; bool m_deadLetterConfigHasBeenSet = false; AwsLambdaFunctionEnvironment m_environment; bool m_environmentHasBeenSet = false; Aws::String m_functionName; bool m_functionNameHasBeenSet = false; Aws::String m_handler; bool m_handlerHasBeenSet = false; Aws::String m_kmsKeyArn; bool m_kmsKeyArnHasBeenSet = false; Aws::String m_lastModified; bool m_lastModifiedHasBeenSet = false; Aws::Vector m_layers; bool m_layersHasBeenSet = false; Aws::String m_masterArn; bool m_masterArnHasBeenSet = false; int m_memorySize; bool m_memorySizeHasBeenSet = false; Aws::String m_revisionId; bool m_revisionIdHasBeenSet = false; Aws::String m_role; bool m_roleHasBeenSet = false; Aws::String m_runtime; bool m_runtimeHasBeenSet = false; int m_timeout; bool m_timeoutHasBeenSet = false; AwsLambdaFunctionTracingConfig m_tracingConfig; bool m_tracingConfigHasBeenSet = false; AwsLambdaFunctionVpcConfig m_vpcConfig; bool m_vpcConfigHasBeenSet = false; Aws::String m_version; bool m_versionHasBeenSet = false; Aws::Vector m_architectures; bool m_architecturesHasBeenSet = false; Aws::String m_packageType; bool m_packageTypeHasBeenSet = false; }; } // namespace Model } // namespace SecurityHub } // namespace Aws