/** * 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 #include #include #include #include namespace Aws { namespace Lambda { namespace Model { /** */ class UpdateFunctionConfigurationRequest : public LambdaRequest { public: AWS_LAMBDA_API UpdateFunctionConfigurationRequest(); // 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 "UpdateFunctionConfiguration"; } AWS_LAMBDA_API Aws::String SerializePayload() const override; /** *

The name of the Lambda function.

Name formats *

  • Function namemy-function.

  • *
  • Function ARN – * arn:aws:lambda:us-west-2:123456789012:function:my-function.

    *
  • Partial ARN – * 123456789012:function:my-function.

The length * constraint applies only to the full ARN. If you specify only the function name, * it is limited to 64 characters in length.

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

The name of the Lambda function.

Name formats *

  • Function namemy-function.

  • *
  • Function ARN – * arn:aws:lambda:us-west-2:123456789012:function:my-function.

    *
  • Partial ARN – * 123456789012:function:my-function.

The length * constraint applies only to the full ARN. If you specify only the function name, * it is limited to 64 characters in length.

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

The name of the Lambda function.

Name formats *

  • Function namemy-function.

  • *
  • Function ARN – * arn:aws:lambda:us-west-2:123456789012:function:my-function.

    *
  • Partial ARN – * 123456789012:function:my-function.

The length * constraint applies only to the full ARN. If you specify only the function name, * it is limited to 64 characters in length.

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

The name of the Lambda function.

Name formats *

  • Function namemy-function.

  • *
  • Function ARN – * arn:aws:lambda:us-west-2:123456789012:function:my-function.

    *
  • Partial ARN – * 123456789012:function:my-function.

The length * constraint applies only to the full ARN. If you specify only the function name, * it is limited to 64 characters in length.

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

The name of the Lambda function.

Name formats *

  • Function namemy-function.

  • *
  • Function ARN – * arn:aws:lambda:us-west-2:123456789012:function:my-function.

    *
  • Partial ARN – * 123456789012:function:my-function.

The length * constraint applies only to the full ARN. If you specify only the function name, * it is limited to 64 characters in length.

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

The name of the Lambda function.

Name formats *

  • Function namemy-function.

  • *
  • Function ARN – * arn:aws:lambda:us-west-2:123456789012:function:my-function.

    *
  • Partial ARN – * 123456789012:function:my-function.

The length * constraint applies only to the full ARN. If you specify only the function name, * it is limited to 64 characters in length.

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

The name of the Lambda function.

Name formats *

  • Function namemy-function.

  • *
  • Function ARN – * arn:aws:lambda:us-west-2:123456789012:function:my-function.

    *
  • Partial ARN – * 123456789012:function:my-function.

The length * constraint applies only to the full ARN. If you specify only the function name, * it is limited to 64 characters in length.

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

The name of the Lambda function.

Name formats *

  • Function namemy-function.

  • *
  • Function ARN – * arn:aws:lambda:us-west-2:123456789012:function:my-function.

    *
  • Partial ARN – * 123456789012:function:my-function.

The length * constraint applies only to the full ARN. If you specify only the function name, * it is limited to 64 characters in length.

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

The Amazon Resource Name (ARN) of the function's execution role.

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

The Amazon Resource Name (ARN) of the function's execution role.

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

The Amazon Resource Name (ARN) of the function's execution role.

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

The Amazon Resource Name (ARN) of the function's execution role.

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

The Amazon Resource Name (ARN) of the function's execution role.

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

The Amazon Resource Name (ARN) of the function's execution role.

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

The Amazon Resource Name (ARN) of the function's execution role.

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

The Amazon Resource Name (ARN) of the function's execution role.

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

The name of the method within your code that Lambda calls to run your * function. Handler is required if the deployment package is a .zip file archive. * The format includes the file name. It can also include namespaces and other * qualifiers, depending on the runtime. For more information, see Lambda * programming model.

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

The name of the method within your code that Lambda calls to run your * function. Handler is required if the deployment package is a .zip file archive. * The format includes the file name. It can also include namespaces and other * qualifiers, depending on the runtime. For more information, see Lambda * programming model.

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

The name of the method within your code that Lambda calls to run your * function. Handler is required if the deployment package is a .zip file archive. * The format includes the file name. It can also include namespaces and other * qualifiers, depending on the runtime. For more information, see Lambda * programming model.

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

The name of the method within your code that Lambda calls to run your * function. Handler is required if the deployment package is a .zip file archive. * The format includes the file name. It can also include namespaces and other * qualifiers, depending on the runtime. For more information, see Lambda * programming model.

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

The name of the method within your code that Lambda calls to run your * function. Handler is required if the deployment package is a .zip file archive. * The format includes the file name. It can also include namespaces and other * qualifiers, depending on the runtime. For more information, see Lambda * programming model.

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

The name of the method within your code that Lambda calls to run your * function. Handler is required if the deployment package is a .zip file archive. * The format includes the file name. It can also include namespaces and other * qualifiers, depending on the runtime. For more information, see Lambda * programming model.

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

The name of the method within your code that Lambda calls to run your * function. Handler is required if the deployment package is a .zip file archive. * The format includes the file name. It can also include namespaces and other * qualifiers, depending on the runtime. For more information, see Lambda * programming model.

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

The name of the method within your code that Lambda calls to run your * function. Handler is required if the deployment package is a .zip file archive. * The format includes the file name. It can also include namespaces and other * qualifiers, depending on the runtime. For more information, see Lambda * programming model.

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

A description of the function.

*/ inline const Aws::String& GetDescription() const{ return m_description; } /** *

A description of the function.

*/ inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; } /** *

A description of the function.

*/ inline void SetDescription(const Aws::String& value) { m_descriptionHasBeenSet = true; m_description = value; } /** *

A description of the function.

*/ inline void SetDescription(Aws::String&& value) { m_descriptionHasBeenSet = true; m_description = std::move(value); } /** *

A description of the function.

*/ inline void SetDescription(const char* value) { m_descriptionHasBeenSet = true; m_description.assign(value); } /** *

A description of the function.

*/ inline UpdateFunctionConfigurationRequest& WithDescription(const Aws::String& value) { SetDescription(value); return *this;} /** *

A description of the function.

*/ inline UpdateFunctionConfigurationRequest& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;} /** *

A description of the function.

*/ inline UpdateFunctionConfigurationRequest& WithDescription(const char* value) { SetDescription(value); return *this;} /** *

The amount of time (in seconds) that Lambda allows a function to run before * stopping it. The default is 3 seconds. The maximum allowed value is 900 seconds. * For more information, see Lambda * execution environment.

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

The amount of time (in seconds) that Lambda allows a function to run before * stopping it. The default is 3 seconds. The maximum allowed value is 900 seconds. * For more information, see Lambda * execution environment.

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

The amount of time (in seconds) that Lambda allows a function to run before * stopping it. The default is 3 seconds. The maximum allowed value is 900 seconds. * For more information, see Lambda * execution environment.

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

The amount of time (in seconds) that Lambda allows a function to run before * stopping it. The default is 3 seconds. The maximum allowed value is 900 seconds. * For more information, see Lambda * execution environment.

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

The amount of memory * available to the function at runtime. Increasing the function memory also * increases its CPU allocation. The default value is 128 MB. The value can be any * multiple of 1 MB.

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

The amount of memory * available to the function at runtime. Increasing the function memory also * increases its CPU allocation. The default value is 128 MB. The value can be any * multiple of 1 MB.

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

The amount of memory * available to the function at runtime. Increasing the function memory also * increases its CPU allocation. The default value is 128 MB. The value can be any * multiple of 1 MB.

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

The amount of memory * available to the function at runtime. Increasing the function memory also * increases its CPU allocation. The default value is 128 MB. The value can be any * multiple of 1 MB.

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

For network connectivity to Amazon Web Services resources in a VPC, specify a * list of security groups and subnets in the VPC. When you connect a function to a * VPC, it can access resources and the internet only through that VPC. For more * information, see Configuring * a Lambda function to access resources in a VPC.

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

For network connectivity to Amazon Web Services resources in a VPC, specify a * list of security groups and subnets in the VPC. When you connect a function to a * VPC, it can access resources and the internet only through that VPC. For more * information, see Configuring * a Lambda function to access resources in a VPC.

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

For network connectivity to Amazon Web Services resources in a VPC, specify a * list of security groups and subnets in the VPC. When you connect a function to a * VPC, it can access resources and the internet only through that VPC. For more * information, see Configuring * a Lambda function to access resources in a VPC.

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

For network connectivity to Amazon Web Services resources in a VPC, specify a * list of security groups and subnets in the VPC. When you connect a function to a * VPC, it can access resources and the internet only through that VPC. For more * information, see Configuring * a Lambda function to access resources in a VPC.

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

For network connectivity to Amazon Web Services resources in a VPC, specify a * list of security groups and subnets in the VPC. When you connect a function to a * VPC, it can access resources and the internet only through that VPC. For more * information, see Configuring * a Lambda function to access resources in a VPC.

*/ inline UpdateFunctionConfigurationRequest& WithVpcConfig(const VpcConfig& value) { SetVpcConfig(value); return *this;} /** *

For network connectivity to Amazon Web Services resources in a VPC, specify a * list of security groups and subnets in the VPC. When you connect a function to a * VPC, it can access resources and the internet only through that VPC. For more * information, see Configuring * a Lambda function to access resources in a VPC.

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

Environment variables that are accessible from function code during * execution.

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

Environment variables that are accessible from function code during * execution.

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

Environment variables that are accessible from function code during * execution.

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

Environment variables that are accessible from function code during * execution.

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

Environment variables that are accessible from function code during * execution.

*/ inline UpdateFunctionConfigurationRequest& WithEnvironment(const Environment& value) { SetEnvironment(value); return *this;} /** *

Environment variables that are accessible from function code during * execution.

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

The identifier of the function's runtime. * Runtime is required if the deployment package is a .zip file archive.

The * following list includes deprecated runtimes. For more information, see Runtime * deprecation policy.

*/ inline const Runtime& GetRuntime() const{ return m_runtime; } /** *

The identifier of the function's runtime. * Runtime is required if the deployment package is a .zip file archive.

The * following list includes deprecated runtimes. For more information, see Runtime * deprecation policy.

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

The identifier of the function's runtime. * Runtime is required if the deployment package is a .zip file archive.

The * following list includes deprecated runtimes. For more information, see Runtime * deprecation policy.

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

The identifier of the function's runtime. * Runtime is required if the deployment package is a .zip file archive.

The * following list includes deprecated runtimes. For more information, see Runtime * deprecation policy.

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

The identifier of the function's runtime. * Runtime is required if the deployment package is a .zip file archive.

The * following list includes deprecated runtimes. For more information, see Runtime * deprecation policy.

*/ inline UpdateFunctionConfigurationRequest& WithRuntime(const Runtime& value) { SetRuntime(value); return *this;} /** *

The identifier of the function's runtime. * Runtime is required if the deployment package is a .zip file archive.

The * following list includes deprecated runtimes. For more information, see Runtime * deprecation policy.

*/ inline UpdateFunctionConfigurationRequest& WithRuntime(Runtime&& value) { SetRuntime(std::move(value)); return *this;} /** *

A dead-letter queue configuration that specifies the queue or topic where * Lambda sends asynchronous events when they fail processing. For more * information, see Dead-letter * queues.

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

A dead-letter queue configuration that specifies the queue or topic where * Lambda sends asynchronous events when they fail processing. For more * information, see Dead-letter * queues.

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

A dead-letter queue configuration that specifies the queue or topic where * Lambda sends asynchronous events when they fail processing. For more * information, see Dead-letter * queues.

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

A dead-letter queue configuration that specifies the queue or topic where * Lambda sends asynchronous events when they fail processing. For more * information, see Dead-letter * queues.

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

A dead-letter queue configuration that specifies the queue or topic where * Lambda sends asynchronous events when they fail processing. For more * information, see Dead-letter * queues.

*/ inline UpdateFunctionConfigurationRequest& WithDeadLetterConfig(const DeadLetterConfig& value) { SetDeadLetterConfig(value); return *this;} /** *

A dead-letter queue configuration that specifies the queue or topic where * Lambda sends asynchronous events when they fail processing. For more * information, see Dead-letter * queues.

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

The ARN of the Key Management Service (KMS) customer managed key that's used * to encrypt your function's environment * variables. When Lambda * SnapStart is activated, Lambda also uses this key is to encrypt your * function's snapshot. If you deploy your function using a container image, Lambda * also uses this key to encrypt your function when it's deployed. Note that this * is not the same key that's used to protect your container image in the Amazon * Elastic Container Registry (Amazon ECR). If you don't provide a customer managed * key, Lambda uses a default service key.

*/ inline const Aws::String& GetKMSKeyArn() const{ return m_kMSKeyArn; } /** *

The ARN of the Key Management Service (KMS) customer managed key that's used * to encrypt your function's environment * variables. When Lambda * SnapStart is activated, Lambda also uses this key is to encrypt your * function's snapshot. If you deploy your function using a container image, Lambda * also uses this key to encrypt your function when it's deployed. Note that this * is not the same key that's used to protect your container image in the Amazon * Elastic Container Registry (Amazon ECR). If you don't provide a customer managed * key, Lambda uses a default service key.

*/ inline bool KMSKeyArnHasBeenSet() const { return m_kMSKeyArnHasBeenSet; } /** *

The ARN of the Key Management Service (KMS) customer managed key that's used * to encrypt your function's environment * variables. When Lambda * SnapStart is activated, Lambda also uses this key is to encrypt your * function's snapshot. If you deploy your function using a container image, Lambda * also uses this key to encrypt your function when it's deployed. Note that this * is not the same key that's used to protect your container image in the Amazon * Elastic Container Registry (Amazon ECR). If you don't provide a customer managed * key, Lambda uses a default service key.

*/ inline void SetKMSKeyArn(const Aws::String& value) { m_kMSKeyArnHasBeenSet = true; m_kMSKeyArn = value; } /** *

The ARN of the Key Management Service (KMS) customer managed key that's used * to encrypt your function's environment * variables. When Lambda * SnapStart is activated, Lambda also uses this key is to encrypt your * function's snapshot. If you deploy your function using a container image, Lambda * also uses this key to encrypt your function when it's deployed. Note that this * is not the same key that's used to protect your container image in the Amazon * Elastic Container Registry (Amazon ECR). If you don't provide a customer managed * key, Lambda uses a default service key.

*/ inline void SetKMSKeyArn(Aws::String&& value) { m_kMSKeyArnHasBeenSet = true; m_kMSKeyArn = std::move(value); } /** *

The ARN of the Key Management Service (KMS) customer managed key that's used * to encrypt your function's environment * variables. When Lambda * SnapStart is activated, Lambda also uses this key is to encrypt your * function's snapshot. If you deploy your function using a container image, Lambda * also uses this key to encrypt your function when it's deployed. Note that this * is not the same key that's used to protect your container image in the Amazon * Elastic Container Registry (Amazon ECR). If you don't provide a customer managed * key, Lambda uses a default service key.

*/ inline void SetKMSKeyArn(const char* value) { m_kMSKeyArnHasBeenSet = true; m_kMSKeyArn.assign(value); } /** *

The ARN of the Key Management Service (KMS) customer managed key that's used * to encrypt your function's environment * variables. When Lambda * SnapStart is activated, Lambda also uses this key is to encrypt your * function's snapshot. If you deploy your function using a container image, Lambda * also uses this key to encrypt your function when it's deployed. Note that this * is not the same key that's used to protect your container image in the Amazon * Elastic Container Registry (Amazon ECR). If you don't provide a customer managed * key, Lambda uses a default service key.

*/ inline UpdateFunctionConfigurationRequest& WithKMSKeyArn(const Aws::String& value) { SetKMSKeyArn(value); return *this;} /** *

The ARN of the Key Management Service (KMS) customer managed key that's used * to encrypt your function's environment * variables. When Lambda * SnapStart is activated, Lambda also uses this key is to encrypt your * function's snapshot. If you deploy your function using a container image, Lambda * also uses this key to encrypt your function when it's deployed. Note that this * is not the same key that's used to protect your container image in the Amazon * Elastic Container Registry (Amazon ECR). If you don't provide a customer managed * key, Lambda uses a default service key.

*/ inline UpdateFunctionConfigurationRequest& WithKMSKeyArn(Aws::String&& value) { SetKMSKeyArn(std::move(value)); return *this;} /** *

The ARN of the Key Management Service (KMS) customer managed key that's used * to encrypt your function's environment * variables. When Lambda * SnapStart is activated, Lambda also uses this key is to encrypt your * function's snapshot. If you deploy your function using a container image, Lambda * also uses this key to encrypt your function when it's deployed. Note that this * is not the same key that's used to protect your container image in the Amazon * Elastic Container Registry (Amazon ECR). If you don't provide a customer managed * key, Lambda uses a default service key.

*/ inline UpdateFunctionConfigurationRequest& WithKMSKeyArn(const char* value) { SetKMSKeyArn(value); return *this;} /** *

Set Mode to Active to sample and trace a subset of * incoming requests with X-Ray.

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

Set Mode to Active to sample and trace a subset of * incoming requests with X-Ray.

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

Set Mode to Active to sample and trace a subset of * incoming requests with X-Ray.

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

Set Mode to Active to sample and trace a subset of * incoming requests with X-Ray.

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

Set Mode to Active to sample and trace a subset of * incoming requests with X-Ray.

*/ inline UpdateFunctionConfigurationRequest& WithTracingConfig(const TracingConfig& value) { SetTracingConfig(value); return *this;} /** *

Set Mode to Active to sample and trace a subset of * incoming requests with X-Ray.

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

Update the function only if the revision ID matches the ID that's specified. * Use this option to avoid modifying a function that has changed since you last * read it.

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

Update the function only if the revision ID matches the ID that's specified. * Use this option to avoid modifying a function that has changed since you last * read it.

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

Update the function only if the revision ID matches the ID that's specified. * Use this option to avoid modifying a function that has changed since you last * read it.

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

Update the function only if the revision ID matches the ID that's specified. * Use this option to avoid modifying a function that has changed since you last * read it.

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

Update the function only if the revision ID matches the ID that's specified. * Use this option to avoid modifying a function that has changed since you last * read it.

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

Update the function only if the revision ID matches the ID that's specified. * Use this option to avoid modifying a function that has changed since you last * read it.

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

Update the function only if the revision ID matches the ID that's specified. * Use this option to avoid modifying a function that has changed since you last * read it.

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

Update the function only if the revision ID matches the ID that's specified. * Use this option to avoid modifying a function that has changed since you last * read it.

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

A list of function * layers to add to the function's execution environment. Specify each layer by * its ARN, including the version.

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

A list of function * layers to add to the function's execution environment. Specify each layer by * its ARN, including the version.

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

A list of function * layers to add to the function's execution environment. Specify each layer by * its ARN, including the version.

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

A list of function * layers to add to the function's execution environment. Specify each layer by * its ARN, including the version.

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

A list of function * layers to add to the function's execution environment. Specify each layer by * its ARN, including the version.

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

A list of function * layers to add to the function's execution environment. Specify each layer by * its ARN, including the version.

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

A list of function * layers to add to the function's execution environment. Specify each layer by * its ARN, including the version.

*/ inline UpdateFunctionConfigurationRequest& AddLayers(const Aws::String& value) { m_layersHasBeenSet = true; m_layers.push_back(value); return *this; } /** *

A list of function * layers to add to the function's execution environment. Specify each layer by * its ARN, including the version.

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

A list of function * layers to add to the function's execution environment. Specify each layer by * its ARN, including the version.

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

Connection settings for an Amazon EFS file system.

*/ inline const Aws::Vector& GetFileSystemConfigs() const{ return m_fileSystemConfigs; } /** *

Connection settings for an Amazon EFS file system.

*/ inline bool FileSystemConfigsHasBeenSet() const { return m_fileSystemConfigsHasBeenSet; } /** *

Connection settings for an Amazon EFS file system.

*/ inline void SetFileSystemConfigs(const Aws::Vector& value) { m_fileSystemConfigsHasBeenSet = true; m_fileSystemConfigs = value; } /** *

Connection settings for an Amazon EFS file system.

*/ inline void SetFileSystemConfigs(Aws::Vector&& value) { m_fileSystemConfigsHasBeenSet = true; m_fileSystemConfigs = std::move(value); } /** *

Connection settings for an Amazon EFS file system.

*/ inline UpdateFunctionConfigurationRequest& WithFileSystemConfigs(const Aws::Vector& value) { SetFileSystemConfigs(value); return *this;} /** *

Connection settings for an Amazon EFS file system.

*/ inline UpdateFunctionConfigurationRequest& WithFileSystemConfigs(Aws::Vector&& value) { SetFileSystemConfigs(std::move(value)); return *this;} /** *

Connection settings for an Amazon EFS file system.

*/ inline UpdateFunctionConfigurationRequest& AddFileSystemConfigs(const FileSystemConfig& value) { m_fileSystemConfigsHasBeenSet = true; m_fileSystemConfigs.push_back(value); return *this; } /** *

Connection settings for an Amazon EFS file system.

*/ inline UpdateFunctionConfigurationRequest& AddFileSystemConfigs(FileSystemConfig&& value) { m_fileSystemConfigsHasBeenSet = true; m_fileSystemConfigs.push_back(std::move(value)); return *this; } /** *

Container * image configuration values that override the values in the container image * Docker file.

*/ inline const ImageConfig& GetImageConfig() const{ return m_imageConfig; } /** *

Container * image configuration values that override the values in the container image * Docker file.

*/ inline bool ImageConfigHasBeenSet() const { return m_imageConfigHasBeenSet; } /** *

Container * image configuration values that override the values in the container image * Docker file.

*/ inline void SetImageConfig(const ImageConfig& value) { m_imageConfigHasBeenSet = true; m_imageConfig = value; } /** *

Container * image configuration values that override the values in the container image * Docker file.

*/ inline void SetImageConfig(ImageConfig&& value) { m_imageConfigHasBeenSet = true; m_imageConfig = std::move(value); } /** *

Container * image configuration values that override the values in the container image * Docker file.

*/ inline UpdateFunctionConfigurationRequest& WithImageConfig(const ImageConfig& value) { SetImageConfig(value); return *this;} /** *

Container * image configuration values that override the values in the container image * Docker file.

*/ inline UpdateFunctionConfigurationRequest& WithImageConfig(ImageConfig&& value) { SetImageConfig(std::move(value)); return *this;} /** *

The size of the function's /tmp directory in MB. The default * value is 512, but can be any whole number between 512 and 10,240 MB.

*/ inline const EphemeralStorage& GetEphemeralStorage() const{ return m_ephemeralStorage; } /** *

The size of the function's /tmp directory in MB. The default * value is 512, but can be any whole number between 512 and 10,240 MB.

*/ inline bool EphemeralStorageHasBeenSet() const { return m_ephemeralStorageHasBeenSet; } /** *

The size of the function's /tmp directory in MB. The default * value is 512, but can be any whole number between 512 and 10,240 MB.

*/ inline void SetEphemeralStorage(const EphemeralStorage& value) { m_ephemeralStorageHasBeenSet = true; m_ephemeralStorage = value; } /** *

The size of the function's /tmp directory in MB. The default * value is 512, but can be any whole number between 512 and 10,240 MB.

*/ inline void SetEphemeralStorage(EphemeralStorage&& value) { m_ephemeralStorageHasBeenSet = true; m_ephemeralStorage = std::move(value); } /** *

The size of the function's /tmp directory in MB. The default * value is 512, but can be any whole number between 512 and 10,240 MB.

*/ inline UpdateFunctionConfigurationRequest& WithEphemeralStorage(const EphemeralStorage& value) { SetEphemeralStorage(value); return *this;} /** *

The size of the function's /tmp directory in MB. The default * value is 512, but can be any whole number between 512 and 10,240 MB.

*/ inline UpdateFunctionConfigurationRequest& WithEphemeralStorage(EphemeralStorage&& value) { SetEphemeralStorage(std::move(value)); return *this;} /** *

The function's SnapStart * setting.

*/ inline const SnapStart& GetSnapStart() const{ return m_snapStart; } /** *

The function's SnapStart * setting.

*/ inline bool SnapStartHasBeenSet() const { return m_snapStartHasBeenSet; } /** *

The function's SnapStart * setting.

*/ inline void SetSnapStart(const SnapStart& value) { m_snapStartHasBeenSet = true; m_snapStart = value; } /** *

The function's SnapStart * setting.

*/ inline void SetSnapStart(SnapStart&& value) { m_snapStartHasBeenSet = true; m_snapStart = std::move(value); } /** *

The function's SnapStart * setting.

*/ inline UpdateFunctionConfigurationRequest& WithSnapStart(const SnapStart& value) { SetSnapStart(value); return *this;} /** *

The function's SnapStart * setting.

*/ inline UpdateFunctionConfigurationRequest& WithSnapStart(SnapStart&& value) { SetSnapStart(std::move(value)); return *this;} private: Aws::String m_functionName; bool m_functionNameHasBeenSet = false; Aws::String m_role; bool m_roleHasBeenSet = false; Aws::String m_handler; bool m_handlerHasBeenSet = false; Aws::String m_description; bool m_descriptionHasBeenSet = false; int m_timeout; bool m_timeoutHasBeenSet = false; int m_memorySize; bool m_memorySizeHasBeenSet = false; VpcConfig m_vpcConfig; bool m_vpcConfigHasBeenSet = false; Environment m_environment; bool m_environmentHasBeenSet = false; Runtime m_runtime; bool m_runtimeHasBeenSet = false; DeadLetterConfig m_deadLetterConfig; bool m_deadLetterConfigHasBeenSet = false; Aws::String m_kMSKeyArn; bool m_kMSKeyArnHasBeenSet = false; TracingConfig m_tracingConfig; bool m_tracingConfigHasBeenSet = false; Aws::String m_revisionId; bool m_revisionIdHasBeenSet = false; Aws::Vector m_layers; bool m_layersHasBeenSet = false; Aws::Vector m_fileSystemConfigs; bool m_fileSystemConfigsHasBeenSet = false; ImageConfig m_imageConfig; bool m_imageConfigHasBeenSet = false; EphemeralStorage m_ephemeralStorage; bool m_ephemeralStorageHasBeenSet = false; SnapStart m_snapStart; bool m_snapStartHasBeenSet = false; }; } // namespace Model } // namespace Lambda } // namespace Aws