/** * 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 namespace Aws { namespace ElasticBeanstalk { namespace Model { /** *

See Also:

AWS * API Reference

*/ class CreateEnvironmentRequest : public ElasticBeanstalkRequest { public: AWS_ELASTICBEANSTALK_API CreateEnvironmentRequest(); // 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 "CreateEnvironment"; } AWS_ELASTICBEANSTALK_API Aws::String SerializePayload() const override; protected: AWS_ELASTICBEANSTALK_API void DumpBodyToUrl(Aws::Http::URI& uri ) const override; public: /** *

The name of the application that is associated with this environment.

*/ inline const Aws::String& GetApplicationName() const{ return m_applicationName; } /** *

The name of the application that is associated with this environment.

*/ inline bool ApplicationNameHasBeenSet() const { return m_applicationNameHasBeenSet; } /** *

The name of the application that is associated with this environment.

*/ inline void SetApplicationName(const Aws::String& value) { m_applicationNameHasBeenSet = true; m_applicationName = value; } /** *

The name of the application that is associated with this environment.

*/ inline void SetApplicationName(Aws::String&& value) { m_applicationNameHasBeenSet = true; m_applicationName = std::move(value); } /** *

The name of the application that is associated with this environment.

*/ inline void SetApplicationName(const char* value) { m_applicationNameHasBeenSet = true; m_applicationName.assign(value); } /** *

The name of the application that is associated with this environment.

*/ inline CreateEnvironmentRequest& WithApplicationName(const Aws::String& value) { SetApplicationName(value); return *this;} /** *

The name of the application that is associated with this environment.

*/ inline CreateEnvironmentRequest& WithApplicationName(Aws::String&& value) { SetApplicationName(std::move(value)); return *this;} /** *

The name of the application that is associated with this environment.

*/ inline CreateEnvironmentRequest& WithApplicationName(const char* value) { SetApplicationName(value); return *this;} /** *

A unique name for the environment.

Constraint: Must be from 4 to 40 * characters in length. The name can contain only letters, numbers, and hyphens. * It can't start or end with a hyphen. This name must be unique within a region in * your account. If the specified name already exists in the region, Elastic * Beanstalk returns an InvalidParameterValue error.

If you * don't specify the CNAMEPrefix parameter, the environment name * becomes part of the CNAME, and therefore part of the visible URL for your * application.

*/ inline const Aws::String& GetEnvironmentName() const{ return m_environmentName; } /** *

A unique name for the environment.

Constraint: Must be from 4 to 40 * characters in length. The name can contain only letters, numbers, and hyphens. * It can't start or end with a hyphen. This name must be unique within a region in * your account. If the specified name already exists in the region, Elastic * Beanstalk returns an InvalidParameterValue error.

If you * don't specify the CNAMEPrefix parameter, the environment name * becomes part of the CNAME, and therefore part of the visible URL for your * application.

*/ inline bool EnvironmentNameHasBeenSet() const { return m_environmentNameHasBeenSet; } /** *

A unique name for the environment.

Constraint: Must be from 4 to 40 * characters in length. The name can contain only letters, numbers, and hyphens. * It can't start or end with a hyphen. This name must be unique within a region in * your account. If the specified name already exists in the region, Elastic * Beanstalk returns an InvalidParameterValue error.

If you * don't specify the CNAMEPrefix parameter, the environment name * becomes part of the CNAME, and therefore part of the visible URL for your * application.

*/ inline void SetEnvironmentName(const Aws::String& value) { m_environmentNameHasBeenSet = true; m_environmentName = value; } /** *

A unique name for the environment.

Constraint: Must be from 4 to 40 * characters in length. The name can contain only letters, numbers, and hyphens. * It can't start or end with a hyphen. This name must be unique within a region in * your account. If the specified name already exists in the region, Elastic * Beanstalk returns an InvalidParameterValue error.

If you * don't specify the CNAMEPrefix parameter, the environment name * becomes part of the CNAME, and therefore part of the visible URL for your * application.

*/ inline void SetEnvironmentName(Aws::String&& value) { m_environmentNameHasBeenSet = true; m_environmentName = std::move(value); } /** *

A unique name for the environment.

Constraint: Must be from 4 to 40 * characters in length. The name can contain only letters, numbers, and hyphens. * It can't start or end with a hyphen. This name must be unique within a region in * your account. If the specified name already exists in the region, Elastic * Beanstalk returns an InvalidParameterValue error.

If you * don't specify the CNAMEPrefix parameter, the environment name * becomes part of the CNAME, and therefore part of the visible URL for your * application.

*/ inline void SetEnvironmentName(const char* value) { m_environmentNameHasBeenSet = true; m_environmentName.assign(value); } /** *

A unique name for the environment.

Constraint: Must be from 4 to 40 * characters in length. The name can contain only letters, numbers, and hyphens. * It can't start or end with a hyphen. This name must be unique within a region in * your account. If the specified name already exists in the region, Elastic * Beanstalk returns an InvalidParameterValue error.

If you * don't specify the CNAMEPrefix parameter, the environment name * becomes part of the CNAME, and therefore part of the visible URL for your * application.

*/ inline CreateEnvironmentRequest& WithEnvironmentName(const Aws::String& value) { SetEnvironmentName(value); return *this;} /** *

A unique name for the environment.

Constraint: Must be from 4 to 40 * characters in length. The name can contain only letters, numbers, and hyphens. * It can't start or end with a hyphen. This name must be unique within a region in * your account. If the specified name already exists in the region, Elastic * Beanstalk returns an InvalidParameterValue error.

If you * don't specify the CNAMEPrefix parameter, the environment name * becomes part of the CNAME, and therefore part of the visible URL for your * application.

*/ inline CreateEnvironmentRequest& WithEnvironmentName(Aws::String&& value) { SetEnvironmentName(std::move(value)); return *this;} /** *

A unique name for the environment.

Constraint: Must be from 4 to 40 * characters in length. The name can contain only letters, numbers, and hyphens. * It can't start or end with a hyphen. This name must be unique within a region in * your account. If the specified name already exists in the region, Elastic * Beanstalk returns an InvalidParameterValue error.

If you * don't specify the CNAMEPrefix parameter, the environment name * becomes part of the CNAME, and therefore part of the visible URL for your * application.

*/ inline CreateEnvironmentRequest& WithEnvironmentName(const char* value) { SetEnvironmentName(value); return *this;} /** *

The name of the group to which the target environment belongs. Specify a * group name only if the environment's name is specified in an environment * manifest and not with the environment name parameter. See Environment * Manifest (env.yaml) for details.

*/ inline const Aws::String& GetGroupName() const{ return m_groupName; } /** *

The name of the group to which the target environment belongs. Specify a * group name only if the environment's name is specified in an environment * manifest and not with the environment name parameter. See Environment * Manifest (env.yaml) for details.

*/ inline bool GroupNameHasBeenSet() const { return m_groupNameHasBeenSet; } /** *

The name of the group to which the target environment belongs. Specify a * group name only if the environment's name is specified in an environment * manifest and not with the environment name parameter. See Environment * Manifest (env.yaml) for details.

*/ inline void SetGroupName(const Aws::String& value) { m_groupNameHasBeenSet = true; m_groupName = value; } /** *

The name of the group to which the target environment belongs. Specify a * group name only if the environment's name is specified in an environment * manifest and not with the environment name parameter. See Environment * Manifest (env.yaml) for details.

*/ inline void SetGroupName(Aws::String&& value) { m_groupNameHasBeenSet = true; m_groupName = std::move(value); } /** *

The name of the group to which the target environment belongs. Specify a * group name only if the environment's name is specified in an environment * manifest and not with the environment name parameter. See Environment * Manifest (env.yaml) for details.

*/ inline void SetGroupName(const char* value) { m_groupNameHasBeenSet = true; m_groupName.assign(value); } /** *

The name of the group to which the target environment belongs. Specify a * group name only if the environment's name is specified in an environment * manifest and not with the environment name parameter. See Environment * Manifest (env.yaml) for details.

*/ inline CreateEnvironmentRequest& WithGroupName(const Aws::String& value) { SetGroupName(value); return *this;} /** *

The name of the group to which the target environment belongs. Specify a * group name only if the environment's name is specified in an environment * manifest and not with the environment name parameter. See Environment * Manifest (env.yaml) for details.

*/ inline CreateEnvironmentRequest& WithGroupName(Aws::String&& value) { SetGroupName(std::move(value)); return *this;} /** *

The name of the group to which the target environment belongs. Specify a * group name only if the environment's name is specified in an environment * manifest and not with the environment name parameter. See Environment * Manifest (env.yaml) for details.

*/ inline CreateEnvironmentRequest& WithGroupName(const char* value) { SetGroupName(value); return *this;} /** *

Your description for this environment.

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

Your description for this environment.

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

Your description for this environment.

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

Your description for this environment.

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

Your description for this environment.

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

Your description for this environment.

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

Your description for this environment.

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

Your description for this environment.

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

If specified, the environment attempts to use this value as the prefix for * the CNAME in your Elastic Beanstalk environment URL. If not specified, the CNAME * is generated automatically by appending a random alphanumeric string to the * environment name.

*/ inline const Aws::String& GetCNAMEPrefix() const{ return m_cNAMEPrefix; } /** *

If specified, the environment attempts to use this value as the prefix for * the CNAME in your Elastic Beanstalk environment URL. If not specified, the CNAME * is generated automatically by appending a random alphanumeric string to the * environment name.

*/ inline bool CNAMEPrefixHasBeenSet() const { return m_cNAMEPrefixHasBeenSet; } /** *

If specified, the environment attempts to use this value as the prefix for * the CNAME in your Elastic Beanstalk environment URL. If not specified, the CNAME * is generated automatically by appending a random alphanumeric string to the * environment name.

*/ inline void SetCNAMEPrefix(const Aws::String& value) { m_cNAMEPrefixHasBeenSet = true; m_cNAMEPrefix = value; } /** *

If specified, the environment attempts to use this value as the prefix for * the CNAME in your Elastic Beanstalk environment URL. If not specified, the CNAME * is generated automatically by appending a random alphanumeric string to the * environment name.

*/ inline void SetCNAMEPrefix(Aws::String&& value) { m_cNAMEPrefixHasBeenSet = true; m_cNAMEPrefix = std::move(value); } /** *

If specified, the environment attempts to use this value as the prefix for * the CNAME in your Elastic Beanstalk environment URL. If not specified, the CNAME * is generated automatically by appending a random alphanumeric string to the * environment name.

*/ inline void SetCNAMEPrefix(const char* value) { m_cNAMEPrefixHasBeenSet = true; m_cNAMEPrefix.assign(value); } /** *

If specified, the environment attempts to use this value as the prefix for * the CNAME in your Elastic Beanstalk environment URL. If not specified, the CNAME * is generated automatically by appending a random alphanumeric string to the * environment name.

*/ inline CreateEnvironmentRequest& WithCNAMEPrefix(const Aws::String& value) { SetCNAMEPrefix(value); return *this;} /** *

If specified, the environment attempts to use this value as the prefix for * the CNAME in your Elastic Beanstalk environment URL. If not specified, the CNAME * is generated automatically by appending a random alphanumeric string to the * environment name.

*/ inline CreateEnvironmentRequest& WithCNAMEPrefix(Aws::String&& value) { SetCNAMEPrefix(std::move(value)); return *this;} /** *

If specified, the environment attempts to use this value as the prefix for * the CNAME in your Elastic Beanstalk environment URL. If not specified, the CNAME * is generated automatically by appending a random alphanumeric string to the * environment name.

*/ inline CreateEnvironmentRequest& WithCNAMEPrefix(const char* value) { SetCNAMEPrefix(value); return *this;} /** *

Specifies the tier to use in creating this environment. The environment tier * that you choose determines whether Elastic Beanstalk provisions resources to * support a web application that handles HTTP(S) requests or a web application * that handles background-processing tasks.

*/ inline const EnvironmentTier& GetTier() const{ return m_tier; } /** *

Specifies the tier to use in creating this environment. The environment tier * that you choose determines whether Elastic Beanstalk provisions resources to * support a web application that handles HTTP(S) requests or a web application * that handles background-processing tasks.

*/ inline bool TierHasBeenSet() const { return m_tierHasBeenSet; } /** *

Specifies the tier to use in creating this environment. The environment tier * that you choose determines whether Elastic Beanstalk provisions resources to * support a web application that handles HTTP(S) requests or a web application * that handles background-processing tasks.

*/ inline void SetTier(const EnvironmentTier& value) { m_tierHasBeenSet = true; m_tier = value; } /** *

Specifies the tier to use in creating this environment. The environment tier * that you choose determines whether Elastic Beanstalk provisions resources to * support a web application that handles HTTP(S) requests or a web application * that handles background-processing tasks.

*/ inline void SetTier(EnvironmentTier&& value) { m_tierHasBeenSet = true; m_tier = std::move(value); } /** *

Specifies the tier to use in creating this environment. The environment tier * that you choose determines whether Elastic Beanstalk provisions resources to * support a web application that handles HTTP(S) requests or a web application * that handles background-processing tasks.

*/ inline CreateEnvironmentRequest& WithTier(const EnvironmentTier& value) { SetTier(value); return *this;} /** *

Specifies the tier to use in creating this environment. The environment tier * that you choose determines whether Elastic Beanstalk provisions resources to * support a web application that handles HTTP(S) requests or a web application * that handles background-processing tasks.

*/ inline CreateEnvironmentRequest& WithTier(EnvironmentTier&& value) { SetTier(std::move(value)); return *this;} /** *

Specifies the tags applied to resources in the environment.

*/ inline const Aws::Vector& GetTags() const{ return m_tags; } /** *

Specifies the tags applied to resources in the environment.

*/ inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } /** *

Specifies the tags applied to resources in the environment.

*/ inline void SetTags(const Aws::Vector& value) { m_tagsHasBeenSet = true; m_tags = value; } /** *

Specifies the tags applied to resources in the environment.

*/ inline void SetTags(Aws::Vector&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); } /** *

Specifies the tags applied to resources in the environment.

*/ inline CreateEnvironmentRequest& WithTags(const Aws::Vector& value) { SetTags(value); return *this;} /** *

Specifies the tags applied to resources in the environment.

*/ inline CreateEnvironmentRequest& WithTags(Aws::Vector&& value) { SetTags(std::move(value)); return *this;} /** *

Specifies the tags applied to resources in the environment.

*/ inline CreateEnvironmentRequest& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; } /** *

Specifies the tags applied to resources in the environment.

*/ inline CreateEnvironmentRequest& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; } /** *

The name of the application version to deploy.

Default: If not * specified, Elastic Beanstalk attempts to deploy the sample application.

*/ inline const Aws::String& GetVersionLabel() const{ return m_versionLabel; } /** *

The name of the application version to deploy.

Default: If not * specified, Elastic Beanstalk attempts to deploy the sample application.

*/ inline bool VersionLabelHasBeenSet() const { return m_versionLabelHasBeenSet; } /** *

The name of the application version to deploy.

Default: If not * specified, Elastic Beanstalk attempts to deploy the sample application.

*/ inline void SetVersionLabel(const Aws::String& value) { m_versionLabelHasBeenSet = true; m_versionLabel = value; } /** *

The name of the application version to deploy.

Default: If not * specified, Elastic Beanstalk attempts to deploy the sample application.

*/ inline void SetVersionLabel(Aws::String&& value) { m_versionLabelHasBeenSet = true; m_versionLabel = std::move(value); } /** *

The name of the application version to deploy.

Default: If not * specified, Elastic Beanstalk attempts to deploy the sample application.

*/ inline void SetVersionLabel(const char* value) { m_versionLabelHasBeenSet = true; m_versionLabel.assign(value); } /** *

The name of the application version to deploy.

Default: If not * specified, Elastic Beanstalk attempts to deploy the sample application.

*/ inline CreateEnvironmentRequest& WithVersionLabel(const Aws::String& value) { SetVersionLabel(value); return *this;} /** *

The name of the application version to deploy.

Default: If not * specified, Elastic Beanstalk attempts to deploy the sample application.

*/ inline CreateEnvironmentRequest& WithVersionLabel(Aws::String&& value) { SetVersionLabel(std::move(value)); return *this;} /** *

The name of the application version to deploy.

Default: If not * specified, Elastic Beanstalk attempts to deploy the sample application.

*/ inline CreateEnvironmentRequest& WithVersionLabel(const char* value) { SetVersionLabel(value); return *this;} /** *

The name of the Elastic Beanstalk configuration template to use with the * environment.

If you specify TemplateName, then don't * specify SolutionStackName.

*/ inline const Aws::String& GetTemplateName() const{ return m_templateName; } /** *

The name of the Elastic Beanstalk configuration template to use with the * environment.

If you specify TemplateName, then don't * specify SolutionStackName.

*/ inline bool TemplateNameHasBeenSet() const { return m_templateNameHasBeenSet; } /** *

The name of the Elastic Beanstalk configuration template to use with the * environment.

If you specify TemplateName, then don't * specify SolutionStackName.

*/ inline void SetTemplateName(const Aws::String& value) { m_templateNameHasBeenSet = true; m_templateName = value; } /** *

The name of the Elastic Beanstalk configuration template to use with the * environment.

If you specify TemplateName, then don't * specify SolutionStackName.

*/ inline void SetTemplateName(Aws::String&& value) { m_templateNameHasBeenSet = true; m_templateName = std::move(value); } /** *

The name of the Elastic Beanstalk configuration template to use with the * environment.

If you specify TemplateName, then don't * specify SolutionStackName.

*/ inline void SetTemplateName(const char* value) { m_templateNameHasBeenSet = true; m_templateName.assign(value); } /** *

The name of the Elastic Beanstalk configuration template to use with the * environment.

If you specify TemplateName, then don't * specify SolutionStackName.

*/ inline CreateEnvironmentRequest& WithTemplateName(const Aws::String& value) { SetTemplateName(value); return *this;} /** *

The name of the Elastic Beanstalk configuration template to use with the * environment.

If you specify TemplateName, then don't * specify SolutionStackName.

*/ inline CreateEnvironmentRequest& WithTemplateName(Aws::String&& value) { SetTemplateName(std::move(value)); return *this;} /** *

The name of the Elastic Beanstalk configuration template to use with the * environment.

If you specify TemplateName, then don't * specify SolutionStackName.

*/ inline CreateEnvironmentRequest& WithTemplateName(const char* value) { SetTemplateName(value); return *this;} /** *

The name of an Elastic Beanstalk solution stack (platform version) to use * with the environment. If specified, Elastic Beanstalk sets the configuration * values to the default values associated with the specified solution stack. For a * list of current solution stacks, see Elastic * Beanstalk Supported Platforms in the AWS Elastic Beanstalk Platforms * guide.

If you specify SolutionStackName, don't * specify PlatformArn or TemplateName.

*/ inline const Aws::String& GetSolutionStackName() const{ return m_solutionStackName; } /** *

The name of an Elastic Beanstalk solution stack (platform version) to use * with the environment. If specified, Elastic Beanstalk sets the configuration * values to the default values associated with the specified solution stack. For a * list of current solution stacks, see Elastic * Beanstalk Supported Platforms in the AWS Elastic Beanstalk Platforms * guide.

If you specify SolutionStackName, don't * specify PlatformArn or TemplateName.

*/ inline bool SolutionStackNameHasBeenSet() const { return m_solutionStackNameHasBeenSet; } /** *

The name of an Elastic Beanstalk solution stack (platform version) to use * with the environment. If specified, Elastic Beanstalk sets the configuration * values to the default values associated with the specified solution stack. For a * list of current solution stacks, see Elastic * Beanstalk Supported Platforms in the AWS Elastic Beanstalk Platforms * guide.

If you specify SolutionStackName, don't * specify PlatformArn or TemplateName.

*/ inline void SetSolutionStackName(const Aws::String& value) { m_solutionStackNameHasBeenSet = true; m_solutionStackName = value; } /** *

The name of an Elastic Beanstalk solution stack (platform version) to use * with the environment. If specified, Elastic Beanstalk sets the configuration * values to the default values associated with the specified solution stack. For a * list of current solution stacks, see Elastic * Beanstalk Supported Platforms in the AWS Elastic Beanstalk Platforms * guide.

If you specify SolutionStackName, don't * specify PlatformArn or TemplateName.

*/ inline void SetSolutionStackName(Aws::String&& value) { m_solutionStackNameHasBeenSet = true; m_solutionStackName = std::move(value); } /** *

The name of an Elastic Beanstalk solution stack (platform version) to use * with the environment. If specified, Elastic Beanstalk sets the configuration * values to the default values associated with the specified solution stack. For a * list of current solution stacks, see Elastic * Beanstalk Supported Platforms in the AWS Elastic Beanstalk Platforms * guide.

If you specify SolutionStackName, don't * specify PlatformArn or TemplateName.

*/ inline void SetSolutionStackName(const char* value) { m_solutionStackNameHasBeenSet = true; m_solutionStackName.assign(value); } /** *

The name of an Elastic Beanstalk solution stack (platform version) to use * with the environment. If specified, Elastic Beanstalk sets the configuration * values to the default values associated with the specified solution stack. For a * list of current solution stacks, see Elastic * Beanstalk Supported Platforms in the AWS Elastic Beanstalk Platforms * guide.

If you specify SolutionStackName, don't * specify PlatformArn or TemplateName.

*/ inline CreateEnvironmentRequest& WithSolutionStackName(const Aws::String& value) { SetSolutionStackName(value); return *this;} /** *

The name of an Elastic Beanstalk solution stack (platform version) to use * with the environment. If specified, Elastic Beanstalk sets the configuration * values to the default values associated with the specified solution stack. For a * list of current solution stacks, see Elastic * Beanstalk Supported Platforms in the AWS Elastic Beanstalk Platforms * guide.

If you specify SolutionStackName, don't * specify PlatformArn or TemplateName.

*/ inline CreateEnvironmentRequest& WithSolutionStackName(Aws::String&& value) { SetSolutionStackName(std::move(value)); return *this;} /** *

The name of an Elastic Beanstalk solution stack (platform version) to use * with the environment. If specified, Elastic Beanstalk sets the configuration * values to the default values associated with the specified solution stack. For a * list of current solution stacks, see Elastic * Beanstalk Supported Platforms in the AWS Elastic Beanstalk Platforms * guide.

If you specify SolutionStackName, don't * specify PlatformArn or TemplateName.

*/ inline CreateEnvironmentRequest& WithSolutionStackName(const char* value) { SetSolutionStackName(value); return *this;} /** *

The Amazon Resource Name (ARN) of the custom platform to use with the * environment. For more information, see Custom * Platforms in the AWS Elastic Beanstalk Developer Guide.

*

If you specify PlatformArn, don't specify * SolutionStackName.

*/ inline const Aws::String& GetPlatformArn() const{ return m_platformArn; } /** *

The Amazon Resource Name (ARN) of the custom platform to use with the * environment. For more information, see Custom * Platforms in the AWS Elastic Beanstalk Developer Guide.

*

If you specify PlatformArn, don't specify * SolutionStackName.

*/ inline bool PlatformArnHasBeenSet() const { return m_platformArnHasBeenSet; } /** *

The Amazon Resource Name (ARN) of the custom platform to use with the * environment. For more information, see Custom * Platforms in the AWS Elastic Beanstalk Developer Guide.

*

If you specify PlatformArn, don't specify * SolutionStackName.

*/ inline void SetPlatformArn(const Aws::String& value) { m_platformArnHasBeenSet = true; m_platformArn = value; } /** *

The Amazon Resource Name (ARN) of the custom platform to use with the * environment. For more information, see Custom * Platforms in the AWS Elastic Beanstalk Developer Guide.

*

If you specify PlatformArn, don't specify * SolutionStackName.

*/ inline void SetPlatformArn(Aws::String&& value) { m_platformArnHasBeenSet = true; m_platformArn = std::move(value); } /** *

The Amazon Resource Name (ARN) of the custom platform to use with the * environment. For more information, see Custom * Platforms in the AWS Elastic Beanstalk Developer Guide.

*

If you specify PlatformArn, don't specify * SolutionStackName.

*/ inline void SetPlatformArn(const char* value) { m_platformArnHasBeenSet = true; m_platformArn.assign(value); } /** *

The Amazon Resource Name (ARN) of the custom platform to use with the * environment. For more information, see Custom * Platforms in the AWS Elastic Beanstalk Developer Guide.

*

If you specify PlatformArn, don't specify * SolutionStackName.

*/ inline CreateEnvironmentRequest& WithPlatformArn(const Aws::String& value) { SetPlatformArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the custom platform to use with the * environment. For more information, see Custom * Platforms in the AWS Elastic Beanstalk Developer Guide.

*

If you specify PlatformArn, don't specify * SolutionStackName.

*/ inline CreateEnvironmentRequest& WithPlatformArn(Aws::String&& value) { SetPlatformArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the custom platform to use with the * environment. For more information, see Custom * Platforms in the AWS Elastic Beanstalk Developer Guide.

*

If you specify PlatformArn, don't specify * SolutionStackName.

*/ inline CreateEnvironmentRequest& WithPlatformArn(const char* value) { SetPlatformArn(value); return *this;} /** *

If specified, AWS Elastic Beanstalk sets the specified configuration options * to the requested value in the configuration set for the new environment. These * override the values obtained from the solution stack or the configuration * template.

*/ inline const Aws::Vector& GetOptionSettings() const{ return m_optionSettings; } /** *

If specified, AWS Elastic Beanstalk sets the specified configuration options * to the requested value in the configuration set for the new environment. These * override the values obtained from the solution stack or the configuration * template.

*/ inline bool OptionSettingsHasBeenSet() const { return m_optionSettingsHasBeenSet; } /** *

If specified, AWS Elastic Beanstalk sets the specified configuration options * to the requested value in the configuration set for the new environment. These * override the values obtained from the solution stack or the configuration * template.

*/ inline void SetOptionSettings(const Aws::Vector& value) { m_optionSettingsHasBeenSet = true; m_optionSettings = value; } /** *

If specified, AWS Elastic Beanstalk sets the specified configuration options * to the requested value in the configuration set for the new environment. These * override the values obtained from the solution stack or the configuration * template.

*/ inline void SetOptionSettings(Aws::Vector&& value) { m_optionSettingsHasBeenSet = true; m_optionSettings = std::move(value); } /** *

If specified, AWS Elastic Beanstalk sets the specified configuration options * to the requested value in the configuration set for the new environment. These * override the values obtained from the solution stack or the configuration * template.

*/ inline CreateEnvironmentRequest& WithOptionSettings(const Aws::Vector& value) { SetOptionSettings(value); return *this;} /** *

If specified, AWS Elastic Beanstalk sets the specified configuration options * to the requested value in the configuration set for the new environment. These * override the values obtained from the solution stack or the configuration * template.

*/ inline CreateEnvironmentRequest& WithOptionSettings(Aws::Vector&& value) { SetOptionSettings(std::move(value)); return *this;} /** *

If specified, AWS Elastic Beanstalk sets the specified configuration options * to the requested value in the configuration set for the new environment. These * override the values obtained from the solution stack or the configuration * template.

*/ inline CreateEnvironmentRequest& AddOptionSettings(const ConfigurationOptionSetting& value) { m_optionSettingsHasBeenSet = true; m_optionSettings.push_back(value); return *this; } /** *

If specified, AWS Elastic Beanstalk sets the specified configuration options * to the requested value in the configuration set for the new environment. These * override the values obtained from the solution stack or the configuration * template.

*/ inline CreateEnvironmentRequest& AddOptionSettings(ConfigurationOptionSetting&& value) { m_optionSettingsHasBeenSet = true; m_optionSettings.push_back(std::move(value)); return *this; } /** *

A list of custom user-defined configuration options to remove from the * configuration set for this new environment.

*/ inline const Aws::Vector& GetOptionsToRemove() const{ return m_optionsToRemove; } /** *

A list of custom user-defined configuration options to remove from the * configuration set for this new environment.

*/ inline bool OptionsToRemoveHasBeenSet() const { return m_optionsToRemoveHasBeenSet; } /** *

A list of custom user-defined configuration options to remove from the * configuration set for this new environment.

*/ inline void SetOptionsToRemove(const Aws::Vector& value) { m_optionsToRemoveHasBeenSet = true; m_optionsToRemove = value; } /** *

A list of custom user-defined configuration options to remove from the * configuration set for this new environment.

*/ inline void SetOptionsToRemove(Aws::Vector&& value) { m_optionsToRemoveHasBeenSet = true; m_optionsToRemove = std::move(value); } /** *

A list of custom user-defined configuration options to remove from the * configuration set for this new environment.

*/ inline CreateEnvironmentRequest& WithOptionsToRemove(const Aws::Vector& value) { SetOptionsToRemove(value); return *this;} /** *

A list of custom user-defined configuration options to remove from the * configuration set for this new environment.

*/ inline CreateEnvironmentRequest& WithOptionsToRemove(Aws::Vector&& value) { SetOptionsToRemove(std::move(value)); return *this;} /** *

A list of custom user-defined configuration options to remove from the * configuration set for this new environment.

*/ inline CreateEnvironmentRequest& AddOptionsToRemove(const OptionSpecification& value) { m_optionsToRemoveHasBeenSet = true; m_optionsToRemove.push_back(value); return *this; } /** *

A list of custom user-defined configuration options to remove from the * configuration set for this new environment.

*/ inline CreateEnvironmentRequest& AddOptionsToRemove(OptionSpecification&& value) { m_optionsToRemoveHasBeenSet = true; m_optionsToRemove.push_back(std::move(value)); return *this; } /** *

The Amazon Resource Name (ARN) of an existing IAM role to be used as the * environment's operations role. If specified, Elastic Beanstalk uses the * operations role for permissions to downstream services during this call and * during subsequent calls acting on this environment. To specify an operations * role, you must have the iam:PassRole permission for the role. For * more information, see Operations * roles in the AWS Elastic Beanstalk Developer Guide.

*/ inline const Aws::String& GetOperationsRole() const{ return m_operationsRole; } /** *

The Amazon Resource Name (ARN) of an existing IAM role to be used as the * environment's operations role. If specified, Elastic Beanstalk uses the * operations role for permissions to downstream services during this call and * during subsequent calls acting on this environment. To specify an operations * role, you must have the iam:PassRole permission for the role. For * more information, see Operations * roles in the AWS Elastic Beanstalk Developer Guide.

*/ inline bool OperationsRoleHasBeenSet() const { return m_operationsRoleHasBeenSet; } /** *

The Amazon Resource Name (ARN) of an existing IAM role to be used as the * environment's operations role. If specified, Elastic Beanstalk uses the * operations role for permissions to downstream services during this call and * during subsequent calls acting on this environment. To specify an operations * role, you must have the iam:PassRole permission for the role. For * more information, see Operations * roles in the AWS Elastic Beanstalk Developer Guide.

*/ inline void SetOperationsRole(const Aws::String& value) { m_operationsRoleHasBeenSet = true; m_operationsRole = value; } /** *

The Amazon Resource Name (ARN) of an existing IAM role to be used as the * environment's operations role. If specified, Elastic Beanstalk uses the * operations role for permissions to downstream services during this call and * during subsequent calls acting on this environment. To specify an operations * role, you must have the iam:PassRole permission for the role. For * more information, see Operations * roles in the AWS Elastic Beanstalk Developer Guide.

*/ inline void SetOperationsRole(Aws::String&& value) { m_operationsRoleHasBeenSet = true; m_operationsRole = std::move(value); } /** *

The Amazon Resource Name (ARN) of an existing IAM role to be used as the * environment's operations role. If specified, Elastic Beanstalk uses the * operations role for permissions to downstream services during this call and * during subsequent calls acting on this environment. To specify an operations * role, you must have the iam:PassRole permission for the role. For * more information, see Operations * roles in the AWS Elastic Beanstalk Developer Guide.

*/ inline void SetOperationsRole(const char* value) { m_operationsRoleHasBeenSet = true; m_operationsRole.assign(value); } /** *

The Amazon Resource Name (ARN) of an existing IAM role to be used as the * environment's operations role. If specified, Elastic Beanstalk uses the * operations role for permissions to downstream services during this call and * during subsequent calls acting on this environment. To specify an operations * role, you must have the iam:PassRole permission for the role. For * more information, see Operations * roles in the AWS Elastic Beanstalk Developer Guide.

*/ inline CreateEnvironmentRequest& WithOperationsRole(const Aws::String& value) { SetOperationsRole(value); return *this;} /** *

The Amazon Resource Name (ARN) of an existing IAM role to be used as the * environment's operations role. If specified, Elastic Beanstalk uses the * operations role for permissions to downstream services during this call and * during subsequent calls acting on this environment. To specify an operations * role, you must have the iam:PassRole permission for the role. For * more information, see Operations * roles in the AWS Elastic Beanstalk Developer Guide.

*/ inline CreateEnvironmentRequest& WithOperationsRole(Aws::String&& value) { SetOperationsRole(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of an existing IAM role to be used as the * environment's operations role. If specified, Elastic Beanstalk uses the * operations role for permissions to downstream services during this call and * during subsequent calls acting on this environment. To specify an operations * role, you must have the iam:PassRole permission for the role. For * more information, see Operations * roles in the AWS Elastic Beanstalk Developer Guide.

*/ inline CreateEnvironmentRequest& WithOperationsRole(const char* value) { SetOperationsRole(value); return *this;} private: Aws::String m_applicationName; bool m_applicationNameHasBeenSet = false; Aws::String m_environmentName; bool m_environmentNameHasBeenSet = false; Aws::String m_groupName; bool m_groupNameHasBeenSet = false; Aws::String m_description; bool m_descriptionHasBeenSet = false; Aws::String m_cNAMEPrefix; bool m_cNAMEPrefixHasBeenSet = false; EnvironmentTier m_tier; bool m_tierHasBeenSet = false; Aws::Vector m_tags; bool m_tagsHasBeenSet = false; Aws::String m_versionLabel; bool m_versionLabelHasBeenSet = false; Aws::String m_templateName; bool m_templateNameHasBeenSet = false; Aws::String m_solutionStackName; bool m_solutionStackNameHasBeenSet = false; Aws::String m_platformArn; bool m_platformArnHasBeenSet = false; Aws::Vector m_optionSettings; bool m_optionSettingsHasBeenSet = false; Aws::Vector m_optionsToRemove; bool m_optionsToRemoveHasBeenSet = false; Aws::String m_operationsRole; bool m_operationsRoleHasBeenSet = false; }; } // namespace Model } // namespace ElasticBeanstalk } // namespace Aws