/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Information about an AWS CodeBuild project.See Also:
AWS
* API Reference
The AWS Key Management Service (AWS KMS) customer master key (CMK) used to * encrypt the build output artifacts.
You can specify either the Amazon * Resource Name (ARN) of the CMK or, if available, the CMK alias (using the format * alias/alias-name).
*/ inline const Aws::String& GetEncryptionKey() const{ return m_encryptionKey; } /** *The AWS Key Management Service (AWS KMS) customer master key (CMK) used to * encrypt the build output artifacts.
You can specify either the Amazon * Resource Name (ARN) of the CMK or, if available, the CMK alias (using the format * alias/alias-name).
*/ inline bool EncryptionKeyHasBeenSet() const { return m_encryptionKeyHasBeenSet; } /** *The AWS Key Management Service (AWS KMS) customer master key (CMK) used to * encrypt the build output artifacts.
You can specify either the Amazon * Resource Name (ARN) of the CMK or, if available, the CMK alias (using the format * alias/alias-name).
*/ inline void SetEncryptionKey(const Aws::String& value) { m_encryptionKeyHasBeenSet = true; m_encryptionKey = value; } /** *The AWS Key Management Service (AWS KMS) customer master key (CMK) used to * encrypt the build output artifacts.
You can specify either the Amazon * Resource Name (ARN) of the CMK or, if available, the CMK alias (using the format * alias/alias-name).
*/ inline void SetEncryptionKey(Aws::String&& value) { m_encryptionKeyHasBeenSet = true; m_encryptionKey = std::move(value); } /** *The AWS Key Management Service (AWS KMS) customer master key (CMK) used to * encrypt the build output artifacts.
You can specify either the Amazon * Resource Name (ARN) of the CMK or, if available, the CMK alias (using the format * alias/alias-name).
*/ inline void SetEncryptionKey(const char* value) { m_encryptionKeyHasBeenSet = true; m_encryptionKey.assign(value); } /** *The AWS Key Management Service (AWS KMS) customer master key (CMK) used to * encrypt the build output artifacts.
You can specify either the Amazon * Resource Name (ARN) of the CMK or, if available, the CMK alias (using the format * alias/alias-name).
*/ inline AwsCodeBuildProjectDetails& WithEncryptionKey(const Aws::String& value) { SetEncryptionKey(value); return *this;} /** *The AWS Key Management Service (AWS KMS) customer master key (CMK) used to * encrypt the build output artifacts.
You can specify either the Amazon * Resource Name (ARN) of the CMK or, if available, the CMK alias (using the format * alias/alias-name).
*/ inline AwsCodeBuildProjectDetails& WithEncryptionKey(Aws::String&& value) { SetEncryptionKey(std::move(value)); return *this;} /** *The AWS Key Management Service (AWS KMS) customer master key (CMK) used to * encrypt the build output artifacts.
You can specify either the Amazon * Resource Name (ARN) of the CMK or, if available, the CMK alias (using the format * alias/alias-name).
*/ inline AwsCodeBuildProjectDetails& WithEncryptionKey(const char* value) { SetEncryptionKey(value); return *this;} /** *Information about the build environment for this build project.
*/ inline const AwsCodeBuildProjectEnvironment& GetEnvironment() const{ return m_environment; } /** *Information about the build environment for this build project.
*/ inline bool EnvironmentHasBeenSet() const { return m_environmentHasBeenSet; } /** *Information about the build environment for this build project.
*/ inline void SetEnvironment(const AwsCodeBuildProjectEnvironment& value) { m_environmentHasBeenSet = true; m_environment = value; } /** *Information about the build environment for this build project.
*/ inline void SetEnvironment(AwsCodeBuildProjectEnvironment&& value) { m_environmentHasBeenSet = true; m_environment = std::move(value); } /** *Information about the build environment for this build project.
*/ inline AwsCodeBuildProjectDetails& WithEnvironment(const AwsCodeBuildProjectEnvironment& value) { SetEnvironment(value); return *this;} /** *Information about the build environment for this build project.
*/ inline AwsCodeBuildProjectDetails& WithEnvironment(AwsCodeBuildProjectEnvironment&& value) { SetEnvironment(std::move(value)); return *this;} /** *The name of the build project.
*/ inline const Aws::String& GetName() const{ return m_name; } /** *The name of the build project.
*/ inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } /** *The name of the build project.
*/ inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; } /** *The name of the build project.
*/ inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } /** *The name of the build project.
*/ inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); } /** *The name of the build project.
*/ inline AwsCodeBuildProjectDetails& WithName(const Aws::String& value) { SetName(value); return *this;} /** *The name of the build project.
*/ inline AwsCodeBuildProjectDetails& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} /** *The name of the build project.
*/ inline AwsCodeBuildProjectDetails& WithName(const char* value) { SetName(value); return *this;} /** *Information about the build input source code for this build project.
*/ inline const AwsCodeBuildProjectSource& GetSource() const{ return m_source; } /** *Information about the build input source code for this build project.
*/ inline bool SourceHasBeenSet() const { return m_sourceHasBeenSet; } /** *Information about the build input source code for this build project.
*/ inline void SetSource(const AwsCodeBuildProjectSource& value) { m_sourceHasBeenSet = true; m_source = value; } /** *Information about the build input source code for this build project.
*/ inline void SetSource(AwsCodeBuildProjectSource&& value) { m_sourceHasBeenSet = true; m_source = std::move(value); } /** *Information about the build input source code for this build project.
*/ inline AwsCodeBuildProjectDetails& WithSource(const AwsCodeBuildProjectSource& value) { SetSource(value); return *this;} /** *Information about the build input source code for this build project.
*/ inline AwsCodeBuildProjectDetails& WithSource(AwsCodeBuildProjectSource&& value) { SetSource(std::move(value)); return *this;} /** *The ARN of the IAM role that enables AWS CodeBuild to interact with dependent * AWS services on behalf of the AWS account.
*/ inline const Aws::String& GetServiceRole() const{ return m_serviceRole; } /** *The ARN of the IAM role that enables AWS CodeBuild to interact with dependent * AWS services on behalf of the AWS account.
*/ inline bool ServiceRoleHasBeenSet() const { return m_serviceRoleHasBeenSet; } /** *The ARN of the IAM role that enables AWS CodeBuild to interact with dependent * AWS services on behalf of the AWS account.
*/ inline void SetServiceRole(const Aws::String& value) { m_serviceRoleHasBeenSet = true; m_serviceRole = value; } /** *The ARN of the IAM role that enables AWS CodeBuild to interact with dependent * AWS services on behalf of the AWS account.
*/ inline void SetServiceRole(Aws::String&& value) { m_serviceRoleHasBeenSet = true; m_serviceRole = std::move(value); } /** *The ARN of the IAM role that enables AWS CodeBuild to interact with dependent * AWS services on behalf of the AWS account.
*/ inline void SetServiceRole(const char* value) { m_serviceRoleHasBeenSet = true; m_serviceRole.assign(value); } /** *The ARN of the IAM role that enables AWS CodeBuild to interact with dependent * AWS services on behalf of the AWS account.
*/ inline AwsCodeBuildProjectDetails& WithServiceRole(const Aws::String& value) { SetServiceRole(value); return *this;} /** *The ARN of the IAM role that enables AWS CodeBuild to interact with dependent * AWS services on behalf of the AWS account.
*/ inline AwsCodeBuildProjectDetails& WithServiceRole(Aws::String&& value) { SetServiceRole(std::move(value)); return *this;} /** *The ARN of the IAM role that enables AWS CodeBuild to interact with dependent * AWS services on behalf of the AWS account.
*/ inline AwsCodeBuildProjectDetails& WithServiceRole(const char* value) { SetServiceRole(value); return *this;} /** *Information about the VPC configuration that AWS CodeBuild accesses.
*/ inline const AwsCodeBuildProjectVpcConfig& GetVpcConfig() const{ return m_vpcConfig; } /** *Information about the VPC configuration that AWS CodeBuild accesses.
*/ inline bool VpcConfigHasBeenSet() const { return m_vpcConfigHasBeenSet; } /** *Information about the VPC configuration that AWS CodeBuild accesses.
*/ inline void SetVpcConfig(const AwsCodeBuildProjectVpcConfig& value) { m_vpcConfigHasBeenSet = true; m_vpcConfig = value; } /** *Information about the VPC configuration that AWS CodeBuild accesses.
*/ inline void SetVpcConfig(AwsCodeBuildProjectVpcConfig&& value) { m_vpcConfigHasBeenSet = true; m_vpcConfig = std::move(value); } /** *Information about the VPC configuration that AWS CodeBuild accesses.
*/ inline AwsCodeBuildProjectDetails& WithVpcConfig(const AwsCodeBuildProjectVpcConfig& value) { SetVpcConfig(value); return *this;} /** *Information about the VPC configuration that AWS CodeBuild accesses.
*/ inline AwsCodeBuildProjectDetails& WithVpcConfig(AwsCodeBuildProjectVpcConfig&& value) { SetVpcConfig(std::move(value)); return *this;} private: Aws::String m_encryptionKey; bool m_encryptionKeyHasBeenSet; AwsCodeBuildProjectEnvironment m_environment; bool m_environmentHasBeenSet; Aws::String m_name; bool m_nameHasBeenSet; AwsCodeBuildProjectSource m_source; bool m_sourceHasBeenSet; Aws::String m_serviceRole; bool m_serviceRoleHasBeenSet; AwsCodeBuildProjectVpcConfig m_vpcConfig; bool m_vpcConfigHasBeenSet; }; } // namespace Model } // namespace SecurityHub } // namespace Aws