7#include <aws/codebuild/CodeBuild_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/codebuild/model/ProjectSource.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/codebuild/model/ProjectArtifacts.h>
12#include <aws/codebuild/model/ProjectCache.h>
13#include <aws/codebuild/model/ProjectEnvironment.h>
14#include <aws/core/utils/DateTime.h>
15#include <aws/codebuild/model/Webhook.h>
16#include <aws/codebuild/model/VpcConfig.h>
17#include <aws/codebuild/model/ProjectBadge.h>
18#include <aws/codebuild/model/LogsConfig.h>
19#include <aws/codebuild/model/ProjectBuildBatchConfig.h>
20#include <aws/codebuild/model/ProjectVisibilityType.h>
21#include <aws/codebuild/model/ProjectSourceVersion.h>
22#include <aws/codebuild/model/Tag.h>
23#include <aws/codebuild/model/ProjectFileSystemLocation.h>
61 template<
typename NameT = Aws::String>
62 void SetName(NameT&& value) { m_nameHasBeenSet =
true; m_name = std::forward<NameT>(value); }
63 template<
typename NameT = Aws::String>
73 template<
typename ArnT = Aws::String>
74 void SetArn(ArnT&& value) { m_arnHasBeenSet =
true; m_arn = std::forward<ArnT>(value); }
75 template<
typename ArnT = Aws::String>
85 template<
typename DescriptionT = Aws::String>
86 void SetDescription(DescriptionT&& value) { m_descriptionHasBeenSet =
true; m_description = std::forward<DescriptionT>(value); }
87 template<
typename DescriptionT = Aws::String>
97 template<
typename SourceT = ProjectSource>
98 void SetSource(SourceT&& value) { m_sourceHasBeenSet =
true; m_source = std::forward<SourceT>(value); }
99 template<
typename SourceT = ProjectSource>
109 template<
typename SecondarySourcesT = Aws::Vector<ProjectSource>>
110 void SetSecondarySources(SecondarySourcesT&& value) { m_secondarySourcesHasBeenSet =
true; m_secondarySources = std::forward<SecondarySourcesT>(value); }
111 template<
typename SecondarySourcesT = Aws::Vector<ProjectSource>>
113 template<
typename SecondarySourcesT = ProjectSource>
114 Project&
AddSecondarySources(SecondarySourcesT&& value) { m_secondarySourcesHasBeenSet =
true; m_secondarySources.emplace_back(std::forward<SecondarySourcesT>(value));
return *
this; }
141 template<
typename SourceVersionT = Aws::String>
142 void SetSourceVersion(SourceVersionT&& value) { m_sourceVersionHasBeenSet =
true; m_sourceVersion = std::forward<SourceVersionT>(value); }
143 template<
typename SourceVersionT = Aws::String>
156 template<
typename SecondarySourceVersionsT = Aws::Vector<ProjectSourceVersion>>
157 void SetSecondarySourceVersions(SecondarySourceVersionsT&& value) { m_secondarySourceVersionsHasBeenSet =
true; m_secondarySourceVersions = std::forward<SecondarySourceVersionsT>(value); }
158 template<
typename SecondarySourceVersionsT = Aws::Vector<ProjectSourceVersion>>
160 template<
typename SecondarySourceVersionsT = ProjectSourceVersion>
161 Project&
AddSecondarySourceVersions(SecondarySourceVersionsT&& value) { m_secondarySourceVersionsHasBeenSet =
true; m_secondarySourceVersions.emplace_back(std::forward<SecondarySourceVersionsT>(value));
return *
this; }
170 template<
typename ArtifactsT = ProjectArtifacts>
171 void SetArtifacts(ArtifactsT&& value) { m_artifactsHasBeenSet =
true; m_artifacts = std::forward<ArtifactsT>(value); }
172 template<
typename ArtifactsT = ProjectArtifacts>
182 template<
typename SecondaryArtifactsT = Aws::Vector<ProjectArtifacts>>
183 void SetSecondaryArtifacts(SecondaryArtifactsT&& value) { m_secondaryArtifactsHasBeenSet =
true; m_secondaryArtifacts = std::forward<SecondaryArtifactsT>(value); }
184 template<
typename SecondaryArtifactsT = Aws::Vector<ProjectArtifacts>>
186 template<
typename SecondaryArtifactsT = ProjectArtifacts>
187 Project&
AddSecondaryArtifacts(SecondaryArtifactsT&& value) { m_secondaryArtifactsHasBeenSet =
true; m_secondaryArtifacts.emplace_back(std::forward<SecondaryArtifactsT>(value));
return *
this; }
196 template<
typename CacheT = ProjectCache>
197 void SetCache(CacheT&& value) { m_cacheHasBeenSet =
true; m_cache = std::forward<CacheT>(value); }
198 template<
typename CacheT = ProjectCache>
208 template<
typename EnvironmentT = ProjectEnvironment>
209 void SetEnvironment(EnvironmentT&& value) { m_environmentHasBeenSet =
true; m_environment = std::forward<EnvironmentT>(value); }
210 template<
typename EnvironmentT = ProjectEnvironment>
221 template<
typename ServiceRoleT = Aws::String>
222 void SetServiceRole(ServiceRoleT&& value) { m_serviceRoleHasBeenSet =
true; m_serviceRole = std::forward<ServiceRoleT>(value); }
223 template<
typename ServiceRoleT = Aws::String>
235 inline void SetTimeoutInMinutes(
int value) { m_timeoutInMinutesHasBeenSet =
true; m_timeoutInMinutes = value; }
263 template<
typename EncryptionKeyT = Aws::String>
264 void SetEncryptionKey(EncryptionKeyT&& value) { m_encryptionKeyHasBeenSet =
true; m_encryptionKey = std::forward<EncryptionKeyT>(value); }
265 template<
typename EncryptionKeyT = Aws::String>
277 template<
typename TagsT = Aws::Vector<Tag>>
278 void SetTags(TagsT&& value) { m_tagsHasBeenSet =
true; m_tags = std::forward<TagsT>(value); }
279 template<
typename TagsT = Aws::Vector<Tag>>
281 template<
typename TagsT = Tag>
282 Project&
AddTags(TagsT&& value) { m_tagsHasBeenSet =
true; m_tags.emplace_back(std::forward<TagsT>(value));
return *
this; }
291 template<
typename CreatedT = Aws::Utils::DateTime>
292 void SetCreated(CreatedT&& value) { m_createdHasBeenSet =
true; m_created = std::forward<CreatedT>(value); }
293 template<
typename CreatedT = Aws::Utils::DateTime>
304 template<
typename LastModifiedT = Aws::Utils::DateTime>
305 void SetLastModified(LastModifiedT&& value) { m_lastModifiedHasBeenSet =
true; m_lastModified = std::forward<LastModifiedT>(value); }
306 template<
typename LastModifiedT = Aws::Utils::DateTime>
317 template<
typename WebhookT = Webhook>
318 void SetWebhook(WebhookT&& value) { m_webhookHasBeenSet =
true; m_webhook = std::forward<WebhookT>(value); }
319 template<
typename WebhookT = Webhook>
329 template<
typename VpcConfigT = VpcConfig>
330 void SetVpcConfig(VpcConfigT&& value) { m_vpcConfigHasBeenSet =
true; m_vpcConfig = std::forward<VpcConfigT>(value); }
331 template<
typename VpcConfigT = VpcConfig>
341 template<
typename BadgeT = ProjectBadge>
342 void SetBadge(BadgeT&& value) { m_badgeHasBeenSet =
true; m_badge = std::forward<BadgeT>(value); }
343 template<
typename BadgeT = ProjectBadge>
354 template<
typename LogsConfigT = LogsConfig>
355 void SetLogsConfig(LogsConfigT&& value) { m_logsConfigHasBeenSet =
true; m_logsConfig = std::forward<LogsConfigT>(value); }
356 template<
typename LogsConfigT = LogsConfig>
370 template<
typename FileSystemLocationsT = Aws::Vector<ProjectFileSystemLocation>>
371 void SetFileSystemLocations(FileSystemLocationsT&& value) { m_fileSystemLocationsHasBeenSet =
true; m_fileSystemLocations = std::forward<FileSystemLocationsT>(value); }
372 template<
typename FileSystemLocationsT = Aws::Vector<ProjectFileSystemLocation>>
374 template<
typename FileSystemLocationsT = ProjectFileSystemLocation>
375 Project&
AddFileSystemLocations(FileSystemLocationsT&& value) { m_fileSystemLocationsHasBeenSet =
true; m_fileSystemLocations.emplace_back(std::forward<FileSystemLocationsT>(value));
return *
this; }
385 template<
typename BuildBatchConfigT = ProjectBuildBatchConfig>
386 void SetBuildBatchConfig(BuildBatchConfigT&& value) { m_buildBatchConfigHasBeenSet =
true; m_buildBatchConfig = std::forward<BuildBatchConfigT>(value); }
387 template<
typename BuildBatchConfigT = ProjectBuildBatchConfig>
418 template<
typename PublicProjectAliasT = Aws::String>
419 void SetPublicProjectAlias(PublicProjectAliasT&& value) { m_publicProjectAliasHasBeenSet =
true; m_publicProjectAlias = std::forward<PublicProjectAliasT>(value); }
420 template<
typename PublicProjectAliasT = Aws::String>
431 template<
typename ResourceAccessRoleT = Aws::String>
432 void SetResourceAccessRole(ResourceAccessRoleT&& value) { m_resourceAccessRoleHasBeenSet =
true; m_resourceAccessRole = std::forward<ResourceAccessRoleT>(value); }
433 template<
typename ResourceAccessRoleT = Aws::String>
446 inline void SetAutoRetryLimit(
int value) { m_autoRetryLimitHasBeenSet =
true; m_autoRetryLimit = value; }
452 bool m_nameHasBeenSet =
false;
455 bool m_arnHasBeenSet =
false;
458 bool m_descriptionHasBeenSet =
false;
461 bool m_sourceHasBeenSet =
false;
464 bool m_secondarySourcesHasBeenSet =
false;
467 bool m_sourceVersionHasBeenSet =
false;
470 bool m_secondarySourceVersionsHasBeenSet =
false;
473 bool m_artifactsHasBeenSet =
false;
476 bool m_secondaryArtifactsHasBeenSet =
false;
479 bool m_cacheHasBeenSet =
false;
482 bool m_environmentHasBeenSet =
false;
485 bool m_serviceRoleHasBeenSet =
false;
487 int m_timeoutInMinutes{0};
488 bool m_timeoutInMinutesHasBeenSet =
false;
490 int m_queuedTimeoutInMinutes{0};
491 bool m_queuedTimeoutInMinutesHasBeenSet =
false;
494 bool m_encryptionKeyHasBeenSet =
false;
497 bool m_tagsHasBeenSet =
false;
500 bool m_createdHasBeenSet =
false;
503 bool m_lastModifiedHasBeenSet =
false;
506 bool m_webhookHasBeenSet =
false;
508 VpcConfig m_vpcConfig;
509 bool m_vpcConfigHasBeenSet =
false;
511 ProjectBadge m_badge;
512 bool m_badgeHasBeenSet =
false;
514 LogsConfig m_logsConfig;
515 bool m_logsConfigHasBeenSet =
false;
518 bool m_fileSystemLocationsHasBeenSet =
false;
520 ProjectBuildBatchConfig m_buildBatchConfig;
521 bool m_buildBatchConfigHasBeenSet =
false;
523 int m_concurrentBuildLimit{0};
524 bool m_concurrentBuildLimitHasBeenSet =
false;
527 bool m_projectVisibilityHasBeenSet =
false;
530 bool m_publicProjectAliasHasBeenSet =
false;
533 bool m_resourceAccessRoleHasBeenSet =
false;
535 int m_autoRetryLimit{0};
536 bool m_autoRetryLimitHasBeenSet =
false;
bool DescriptionHasBeenSet() const
Project & WithArtifacts(ArtifactsT &&value)
const ProjectArtifacts & GetArtifacts() const
void SetCache(CacheT &&value)
bool ResourceAccessRoleHasBeenSet() const
AWS_CODEBUILD_API Aws::Utils::Json::JsonValue Jsonize() const
bool TimeoutInMinutesHasBeenSet() const
Project & WithLogsConfig(LogsConfigT &&value)
bool VpcConfigHasBeenSet() const
bool AutoRetryLimitHasBeenSet() const
bool SecondaryArtifactsHasBeenSet() const
void SetSource(SourceT &&value)
const Aws::Vector< Tag > & GetTags() const
bool SecondarySourcesHasBeenSet() const
void SetLogsConfig(LogsConfigT &&value)
const Aws::String & GetSourceVersion() const
Project & AddSecondarySourceVersions(SecondarySourceVersionsT &&value)
void SetArn(ArnT &&value)
AWS_CODEBUILD_API Project()=default
void SetWebhook(WebhookT &&value)
Project & WithSecondarySourceVersions(SecondarySourceVersionsT &&value)
const LogsConfig & GetLogsConfig() const
Project & WithWebhook(WebhookT &&value)
bool ServiceRoleHasBeenSet() const
Project & WithBadge(BadgeT &&value)
void SetEncryptionKey(EncryptionKeyT &&value)
const ProjectBadge & GetBadge() const
void SetSecondaryArtifacts(SecondaryArtifactsT &&value)
bool TagsHasBeenSet() const
bool ArtifactsHasBeenSet() const
void SetBadge(BadgeT &&value)
const VpcConfig & GetVpcConfig() const
void SetServiceRole(ServiceRoleT &&value)
const Aws::Utils::DateTime & GetLastModified() const
Project & WithEnvironment(EnvironmentT &&value)
Project & WithBuildBatchConfig(BuildBatchConfigT &&value)
void SetDescription(DescriptionT &&value)
void SetName(NameT &&value)
Project & WithVpcConfig(VpcConfigT &&value)
bool EncryptionKeyHasBeenSet() const
bool NameHasBeenSet() const
Project & WithLastModified(LastModifiedT &&value)
void SetSourceVersion(SourceVersionT &&value)
Project & WithSecondaryArtifacts(SecondaryArtifactsT &&value)
bool WebhookHasBeenSet() const
Project & WithArn(ArnT &&value)
const Aws::String & GetName() const
Project & WithName(NameT &&value)
const Aws::Vector< ProjectSource > & GetSecondarySources() const
bool FileSystemLocationsHasBeenSet() const
int GetTimeoutInMinutes() const
Project & WithProjectVisibility(ProjectVisibilityType value)
bool PublicProjectAliasHasBeenSet() const
Project & WithSourceVersion(SourceVersionT &&value)
Project & WithResourceAccessRole(ResourceAccessRoleT &&value)
bool QueuedTimeoutInMinutesHasBeenSet() const
bool SourceHasBeenSet() const
void SetCreated(CreatedT &&value)
bool CacheHasBeenSet() const
bool ArnHasBeenSet() const
int GetQueuedTimeoutInMinutes() const
Project & WithServiceRole(ServiceRoleT &&value)
const Webhook & GetWebhook() const
void SetFileSystemLocations(FileSystemLocationsT &&value)
Project & WithCreated(CreatedT &&value)
const Aws::String & GetPublicProjectAlias() const
Project & WithAutoRetryLimit(int value)
Project & WithFileSystemLocations(FileSystemLocationsT &&value)
Project & WithDescription(DescriptionT &&value)
void SetArtifacts(ArtifactsT &&value)
Project & WithCache(CacheT &&value)
void SetAutoRetryLimit(int value)
void SetSecondarySourceVersions(SecondarySourceVersionsT &&value)
Project & WithSecondarySources(SecondarySourcesT &&value)
const ProjectBuildBatchConfig & GetBuildBatchConfig() const
void SetVpcConfig(VpcConfigT &&value)
const Aws::String & GetDescription() const
const Aws::String & GetEncryptionKey() const
AWS_CODEBUILD_API Project(Aws::Utils::Json::JsonView jsonValue)
bool EnvironmentHasBeenSet() const
bool ConcurrentBuildLimitHasBeenSet() const
Project & WithConcurrentBuildLimit(int value)
int GetAutoRetryLimit() const
ProjectVisibilityType GetProjectVisibility() const
bool LastModifiedHasBeenSet() const
const Aws::Vector< ProjectSourceVersion > & GetSecondarySourceVersions() const
const Aws::String & GetResourceAccessRole() const
void SetBuildBatchConfig(BuildBatchConfigT &&value)
int GetConcurrentBuildLimit() const
const Aws::String & GetArn() const
AWS_CODEBUILD_API Project & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::Utils::DateTime & GetCreated() const
void SetQueuedTimeoutInMinutes(int value)
const ProjectCache & GetCache() const
void SetProjectVisibility(ProjectVisibilityType value)
const ProjectEnvironment & GetEnvironment() const
Project & WithTimeoutInMinutes(int value)
Project & WithTags(TagsT &&value)
Project & WithSource(SourceT &&value)
Project & AddTags(TagsT &&value)
void SetTags(TagsT &&value)
bool CreatedHasBeenSet() const
bool ProjectVisibilityHasBeenSet() const
Project & AddFileSystemLocations(FileSystemLocationsT &&value)
const Aws::String & GetServiceRole() const
void SetLastModified(LastModifiedT &&value)
Project & WithQueuedTimeoutInMinutes(int value)
Project & AddSecondarySources(SecondarySourcesT &&value)
Project & WithPublicProjectAlias(PublicProjectAliasT &&value)
const ProjectSource & GetSource() const
bool BadgeHasBeenSet() const
void SetTimeoutInMinutes(int value)
bool SourceVersionHasBeenSet() const
bool BuildBatchConfigHasBeenSet() const
void SetSecondarySources(SecondarySourcesT &&value)
const Aws::Vector< ProjectArtifacts > & GetSecondaryArtifacts() const
void SetPublicProjectAlias(PublicProjectAliasT &&value)
void SetResourceAccessRole(ResourceAccessRoleT &&value)
void SetConcurrentBuildLimit(int value)
void SetEnvironment(EnvironmentT &&value)
bool LogsConfigHasBeenSet() const
const Aws::Vector< ProjectFileSystemLocation > & GetFileSystemLocations() const
Project & WithEncryptionKey(EncryptionKeyT &&value)
bool SecondarySourceVersionsHasBeenSet() const
Project & AddSecondaryArtifacts(SecondaryArtifactsT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue