7#include <aws/codebuild/CodeBuild_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/DateTime.h>
10#include <aws/codebuild/model/StatusType.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12#include <aws/codebuild/model/ProjectSource.h>
13#include <aws/codebuild/model/BuildArtifacts.h>
14#include <aws/codebuild/model/ProjectCache.h>
15#include <aws/codebuild/model/ProjectEnvironment.h>
16#include <aws/codebuild/model/LogsLocation.h>
17#include <aws/codebuild/model/VpcConfig.h>
18#include <aws/codebuild/model/NetworkInterface.h>
19#include <aws/codebuild/model/DebugSession.h>
20#include <aws/codebuild/model/AutoRetryConfig.h>
21#include <aws/codebuild/model/BuildPhase.h>
22#include <aws/codebuild/model/ProjectSourceVersion.h>
23#include <aws/codebuild/model/ExportedEnvironmentVariable.h>
24#include <aws/codebuild/model/ProjectFileSystemLocation.h>
50 AWS_CODEBUILD_API
Build() =
default;
62 template<
typename IdT = Aws::String>
63 void SetId(IdT&& value) { m_idHasBeenSet =
true; m_id = std::forward<IdT>(value); }
64 template<
typename IdT = Aws::String>
74 template<
typename ArnT = Aws::String>
75 void SetArn(ArnT&& value) { m_arnHasBeenSet =
true; m_arn = std::forward<ArnT>(value); }
76 template<
typename ArnT = Aws::String>
89 inline void SetBuildNumber(
long long value) { m_buildNumberHasBeenSet =
true; m_buildNumber = value; }
99 template<
typename StartTimeT = Aws::Utils::DateTime>
100 void SetStartTime(StartTimeT&& value) { m_startTimeHasBeenSet =
true; m_startTime = std::forward<StartTimeT>(value); }
101 template<
typename StartTimeT = Aws::Utils::DateTime>
111 template<
typename EndTimeT = Aws::Utils::DateTime>
112 void SetEndTime(EndTimeT&& value) { m_endTimeHasBeenSet =
true; m_endTime = std::forward<EndTimeT>(value); }
113 template<
typename EndTimeT = Aws::Utils::DateTime>
123 template<
typename CurrentPhaseT = Aws::String>
124 void SetCurrentPhase(CurrentPhaseT&& value) { m_currentPhaseHasBeenSet =
true; m_currentPhase = std::forward<CurrentPhaseT>(value); }
125 template<
typename CurrentPhaseT = Aws::String>
155 template<
typename SourceVersionT = Aws::String>
156 void SetSourceVersion(SourceVersionT&& value) { m_sourceVersionHasBeenSet =
true; m_sourceVersion = std::forward<SourceVersionT>(value); }
157 template<
typename SourceVersionT = Aws::String>
171 template<
typename ResolvedSourceVersionT = Aws::String>
172 void SetResolvedSourceVersion(ResolvedSourceVersionT&& value) { m_resolvedSourceVersionHasBeenSet =
true; m_resolvedSourceVersion = std::forward<ResolvedSourceVersionT>(value); }
173 template<
typename ResolvedSourceVersionT = Aws::String>
183 template<
typename ProjectNameT = Aws::String>
184 void SetProjectName(ProjectNameT&& value) { m_projectNameHasBeenSet =
true; m_projectName = std::forward<ProjectNameT>(value); }
185 template<
typename ProjectNameT = Aws::String>
196 template<
typename PhasesT = Aws::Vector<BuildPhase>>
197 void SetPhases(PhasesT&& value) { m_phasesHasBeenSet =
true; m_phases = std::forward<PhasesT>(value); }
198 template<
typename PhasesT = Aws::Vector<BuildPhase>>
200 template<
typename PhasesT = BuildPhase>
201 Build&
AddPhases(PhasesT&& value) { m_phasesHasBeenSet =
true; m_phases.emplace_back(std::forward<PhasesT>(value));
return *
this; }
210 template<
typename SourceT = ProjectSource>
211 void SetSource(SourceT&& value) { m_sourceHasBeenSet =
true; m_source = std::forward<SourceT>(value); }
212 template<
typename SourceT = ProjectSource>
222 template<
typename SecondarySourcesT = Aws::Vector<ProjectSource>>
223 void SetSecondarySources(SecondarySourcesT&& value) { m_secondarySourcesHasBeenSet =
true; m_secondarySources = std::forward<SecondarySourcesT>(value); }
224 template<
typename SecondarySourcesT = Aws::Vector<ProjectSource>>
226 template<
typename SecondarySourcesT = ProjectSource>
227 Build&
AddSecondarySources(SecondarySourcesT&& value) { m_secondarySourcesHasBeenSet =
true; m_secondarySources.emplace_back(std::forward<SecondarySourcesT>(value));
return *
this; }
249 template<
typename SecondarySourceVersionsT = Aws::Vector<ProjectSourceVersion>>
250 void SetSecondarySourceVersions(SecondarySourceVersionsT&& value) { m_secondarySourceVersionsHasBeenSet =
true; m_secondarySourceVersions = std::forward<SecondarySourceVersionsT>(value); }
251 template<
typename SecondarySourceVersionsT = Aws::Vector<ProjectSourceVersion>>
253 template<
typename SecondarySourceVersionsT = ProjectSourceVersion>
254 Build&
AddSecondarySourceVersions(SecondarySourceVersionsT&& value) { m_secondarySourceVersionsHasBeenSet =
true; m_secondarySourceVersions.emplace_back(std::forward<SecondarySourceVersionsT>(value));
return *
this; }
263 template<
typename ArtifactsT = BuildArtifacts>
264 void SetArtifacts(ArtifactsT&& value) { m_artifactsHasBeenSet =
true; m_artifacts = std::forward<ArtifactsT>(value); }
265 template<
typename ArtifactsT = BuildArtifacts>
275 template<
typename SecondaryArtifactsT = Aws::Vector<BuildArtifacts>>
276 void SetSecondaryArtifacts(SecondaryArtifactsT&& value) { m_secondaryArtifactsHasBeenSet =
true; m_secondaryArtifacts = std::forward<SecondaryArtifactsT>(value); }
277 template<
typename SecondaryArtifactsT = Aws::Vector<BuildArtifacts>>
279 template<
typename SecondaryArtifactsT = BuildArtifacts>
280 Build&
AddSecondaryArtifacts(SecondaryArtifactsT&& value) { m_secondaryArtifactsHasBeenSet =
true; m_secondaryArtifacts.emplace_back(std::forward<SecondaryArtifactsT>(value));
return *
this; }
289 template<
typename CacheT = ProjectCache>
290 void SetCache(CacheT&& value) { m_cacheHasBeenSet =
true; m_cache = std::forward<CacheT>(value); }
291 template<
typename CacheT = ProjectCache>
301 template<
typename EnvironmentT = ProjectEnvironment>
302 void SetEnvironment(EnvironmentT&& value) { m_environmentHasBeenSet =
true; m_environment = std::forward<EnvironmentT>(value); }
303 template<
typename EnvironmentT = ProjectEnvironment>
313 template<
typename ServiceRoleT = Aws::String>
314 void SetServiceRole(ServiceRoleT&& value) { m_serviceRoleHasBeenSet =
true; m_serviceRole = std::forward<ServiceRoleT>(value); }
315 template<
typename ServiceRoleT = Aws::String>
325 template<
typename LogsT = LogsLocation>
326 void SetLogs(LogsT&& value) { m_logsHasBeenSet =
true; m_logs = std::forward<LogsT>(value); }
327 template<
typename LogsT = LogsLocation>
338 inline void SetTimeoutInMinutes(
int value) { m_timeoutInMinutesHasBeenSet =
true; m_timeoutInMinutes = value; }
359 inline void SetBuildComplete(
bool value) { m_buildCompleteHasBeenSet =
true; m_buildComplete = value; }
374 template<
typename InitiatorT = Aws::String>
375 void SetInitiator(InitiatorT&& value) { m_initiatorHasBeenSet =
true; m_initiator = std::forward<InitiatorT>(value); }
376 template<
typename InitiatorT = Aws::String>
389 template<
typename VpcConfigT = VpcConfig>
390 void SetVpcConfig(VpcConfigT&& value) { m_vpcConfigHasBeenSet =
true; m_vpcConfig = std::forward<VpcConfigT>(value); }
391 template<
typename VpcConfigT = VpcConfig>
401 template<
typename NetworkInterfaceT = NetworkInterface>
402 void SetNetworkInterface(NetworkInterfaceT&& value) { m_networkInterfaceHasBeenSet =
true; m_networkInterface = std::forward<NetworkInterfaceT>(value); }
403 template<
typename NetworkInterfaceT = NetworkInterface>
418 template<
typename EncryptionKeyT = Aws::String>
419 void SetEncryptionKey(EncryptionKeyT&& value) { m_encryptionKeyHasBeenSet =
true; m_encryptionKey = std::forward<EncryptionKeyT>(value); }
420 template<
typename EncryptionKeyT = Aws::String>
435 template<
typename ExportedEnvironmentVariablesT = Aws::Vector<ExportedEnvironmentVariable>>
436 void SetExportedEnvironmentVariables(ExportedEnvironmentVariablesT&& value) { m_exportedEnvironmentVariablesHasBeenSet =
true; m_exportedEnvironmentVariables = std::forward<ExportedEnvironmentVariablesT>(value); }
437 template<
typename ExportedEnvironmentVariablesT = Aws::Vector<ExportedEnvironmentVariable>>
439 template<
typename ExportedEnvironmentVariablesT = ExportedEnvironmentVariable>
440 Build&
AddExportedEnvironmentVariables(ExportedEnvironmentVariablesT&& value) { m_exportedEnvironmentVariablesHasBeenSet =
true; m_exportedEnvironmentVariables.emplace_back(std::forward<ExportedEnvironmentVariablesT>(value));
return *
this; }
449 template<
typename ReportArnsT = Aws::Vector<Aws::String>>
450 void SetReportArns(ReportArnsT&& value) { m_reportArnsHasBeenSet =
true; m_reportArns = std::forward<ReportArnsT>(value); }
451 template<
typename ReportArnsT = Aws::Vector<Aws::String>>
453 template<
typename ReportArnsT = Aws::String>
454 Build&
AddReportArns(ReportArnsT&& value) { m_reportArnsHasBeenSet =
true; m_reportArns.emplace_back(std::forward<ReportArnsT>(value));
return *
this; }
467 template<
typename FileSystemLocationsT = Aws::Vector<ProjectFileSystemLocation>>
468 void SetFileSystemLocations(FileSystemLocationsT&& value) { m_fileSystemLocationsHasBeenSet =
true; m_fileSystemLocations = std::forward<FileSystemLocationsT>(value); }
469 template<
typename FileSystemLocationsT = Aws::Vector<ProjectFileSystemLocation>>
471 template<
typename FileSystemLocationsT = ProjectFileSystemLocation>
472 Build&
AddFileSystemLocations(FileSystemLocationsT&& value) { m_fileSystemLocationsHasBeenSet =
true; m_fileSystemLocations.emplace_back(std::forward<FileSystemLocationsT>(value));
return *
this; }
481 template<
typename DebugSessionT = DebugSession>
482 void SetDebugSession(DebugSessionT&& value) { m_debugSessionHasBeenSet =
true; m_debugSession = std::forward<DebugSessionT>(value); }
483 template<
typename DebugSessionT = DebugSession>
493 template<
typename BuildBatchArnT = Aws::String>
494 void SetBuildBatchArn(BuildBatchArnT&& value) { m_buildBatchArnHasBeenSet =
true; m_buildBatchArn = std::forward<BuildBatchArnT>(value); }
495 template<
typename BuildBatchArnT = Aws::String>
505 template<
typename AutoRetryConfigT = AutoRetryConfig>
506 void SetAutoRetryConfig(AutoRetryConfigT&& value) { m_autoRetryConfigHasBeenSet =
true; m_autoRetryConfig = std::forward<AutoRetryConfigT>(value); }
507 template<
typename AutoRetryConfigT = AutoRetryConfig>
513 bool m_idHasBeenSet =
false;
516 bool m_arnHasBeenSet =
false;
518 long long m_buildNumber{0};
519 bool m_buildNumberHasBeenSet =
false;
522 bool m_startTimeHasBeenSet =
false;
525 bool m_endTimeHasBeenSet =
false;
528 bool m_currentPhaseHasBeenSet =
false;
531 bool m_buildStatusHasBeenSet =
false;
534 bool m_sourceVersionHasBeenSet =
false;
537 bool m_resolvedSourceVersionHasBeenSet =
false;
540 bool m_projectNameHasBeenSet =
false;
543 bool m_phasesHasBeenSet =
false;
545 ProjectSource m_source;
546 bool m_sourceHasBeenSet =
false;
549 bool m_secondarySourcesHasBeenSet =
false;
552 bool m_secondarySourceVersionsHasBeenSet =
false;
554 BuildArtifacts m_artifacts;
555 bool m_artifactsHasBeenSet =
false;
558 bool m_secondaryArtifactsHasBeenSet =
false;
560 ProjectCache m_cache;
561 bool m_cacheHasBeenSet =
false;
563 ProjectEnvironment m_environment;
564 bool m_environmentHasBeenSet =
false;
567 bool m_serviceRoleHasBeenSet =
false;
570 bool m_logsHasBeenSet =
false;
572 int m_timeoutInMinutes{0};
573 bool m_timeoutInMinutesHasBeenSet =
false;
575 int m_queuedTimeoutInMinutes{0};
576 bool m_queuedTimeoutInMinutesHasBeenSet =
false;
578 bool m_buildComplete{
false};
579 bool m_buildCompleteHasBeenSet =
false;
582 bool m_initiatorHasBeenSet =
false;
584 VpcConfig m_vpcConfig;
585 bool m_vpcConfigHasBeenSet =
false;
587 NetworkInterface m_networkInterface;
588 bool m_networkInterfaceHasBeenSet =
false;
591 bool m_encryptionKeyHasBeenSet =
false;
594 bool m_exportedEnvironmentVariablesHasBeenSet =
false;
597 bool m_reportArnsHasBeenSet =
false;
600 bool m_fileSystemLocationsHasBeenSet =
false;
602 DebugSession m_debugSession;
603 bool m_debugSessionHasBeenSet =
false;
606 bool m_buildBatchArnHasBeenSet =
false;
608 AutoRetryConfig m_autoRetryConfig;
609 bool m_autoRetryConfigHasBeenSet =
false;
bool DebugSessionHasBeenSet() const
const Aws::String & GetServiceRole() const
const Aws::Utils::DateTime & GetStartTime() const
Build & AddExportedEnvironmentVariables(ExportedEnvironmentVariablesT &&value)
bool SecondaryArtifactsHasBeenSet() const
Build & WithInitiator(InitiatorT &&value)
int GetQueuedTimeoutInMinutes() const
const DebugSession & GetDebugSession() const
const Aws::String & GetId() const
void SetAutoRetryConfig(AutoRetryConfigT &&value)
Build & WithDebugSession(DebugSessionT &&value)
const Aws::String & GetInitiator() const
void SetResolvedSourceVersion(ResolvedSourceVersionT &&value)
bool GetBuildComplete() const
Build & WithBuildBatchArn(BuildBatchArnT &&value)
bool CacheHasBeenSet() const
Build & WithResolvedSourceVersion(ResolvedSourceVersionT &&value)
Build & WithId(IdT &&value)
Build & AddPhases(PhasesT &&value)
Build & WithQueuedTimeoutInMinutes(int value)
void SetBuildNumber(long long value)
bool BuildNumberHasBeenSet() const
const Aws::Vector< ProjectFileSystemLocation > & GetFileSystemLocations() const
Build & WithExportedEnvironmentVariables(ExportedEnvironmentVariablesT &&value)
int GetTimeoutInMinutes() const
void SetLogs(LogsT &&value)
Build & WithFileSystemLocations(FileSystemLocationsT &&value)
bool CurrentPhaseHasBeenSet() const
Build & WithTimeoutInMinutes(int value)
void SetEndTime(EndTimeT &&value)
void SetTimeoutInMinutes(int value)
const Aws::String & GetProjectName() const
void SetBuildBatchArn(BuildBatchArnT &&value)
void SetCurrentPhase(CurrentPhaseT &&value)
bool InitiatorHasBeenSet() const
AWS_CODEBUILD_API Build()=default
void SetCache(CacheT &&value)
const Aws::String & GetResolvedSourceVersion() const
const Aws::String & GetBuildBatchArn() const
bool ResolvedSourceVersionHasBeenSet() const
const ProjectCache & GetCache() const
bool ServiceRoleHasBeenSet() const
bool SecondarySourcesHasBeenSet() const
Build & WithEncryptionKey(EncryptionKeyT &&value)
void SetEnvironment(EnvironmentT &&value)
bool QueuedTimeoutInMinutesHasBeenSet() const
bool BuildStatusHasBeenSet() const
void SetNetworkInterface(NetworkInterfaceT &&value)
const NetworkInterface & GetNetworkInterface() const
AWS_CODEBUILD_API Aws::Utils::Json::JsonValue Jsonize() const
const BuildArtifacts & GetArtifacts() const
const Aws::Utils::DateTime & GetEndTime() const
bool BuildBatchArnHasBeenSet() const
Build & WithBuildComplete(bool value)
void SetFileSystemLocations(FileSystemLocationsT &&value)
Build & WithCache(CacheT &&value)
const AutoRetryConfig & GetAutoRetryConfig() const
Build & WithReportArns(ReportArnsT &&value)
Build & AddReportArns(ReportArnsT &&value)
Build & WithSecondaryArtifacts(SecondaryArtifactsT &&value)
bool IdHasBeenSet() const
Build & AddSecondarySources(SecondarySourcesT &&value)
void SetEncryptionKey(EncryptionKeyT &&value)
const Aws::Vector< ExportedEnvironmentVariable > & GetExportedEnvironmentVariables() const
void SetServiceRole(ServiceRoleT &&value)
void SetSource(SourceT &&value)
void SetArtifacts(ArtifactsT &&value)
bool SecondarySourceVersionsHasBeenSet() const
Build & AddSecondaryArtifacts(SecondaryArtifactsT &&value)
const LogsLocation & GetLogs() const
bool LogsHasBeenSet() const
const ProjectEnvironment & GetEnvironment() const
void SetSecondarySources(SecondarySourcesT &&value)
const Aws::String & GetEncryptionKey() const
const Aws::Vector< ProjectSourceVersion > & GetSecondarySourceVersions() const
Build & WithArtifacts(ArtifactsT &&value)
Build & WithEnvironment(EnvironmentT &&value)
Build & WithSource(SourceT &&value)
bool ArnHasBeenSet() const
bool ArtifactsHasBeenSet() const
void SetStartTime(StartTimeT &&value)
const ProjectSource & GetSource() const
bool StartTimeHasBeenSet() const
Build & WithArn(ArnT &&value)
bool BuildCompleteHasBeenSet() const
const Aws::Vector< ProjectSource > & GetSecondarySources() const
StatusType GetBuildStatus() const
Build & AddSecondarySourceVersions(SecondarySourceVersionsT &&value)
const Aws::String & GetSourceVersion() const
void SetArn(ArnT &&value)
void SetReportArns(ReportArnsT &&value)
Build & WithNetworkInterface(NetworkInterfaceT &&value)
void SetSourceVersion(SourceVersionT &&value)
AWS_CODEBUILD_API Build(Aws::Utils::Json::JsonView jsonValue)
Build & WithSourceVersion(SourceVersionT &&value)
void SetBuildComplete(bool value)
Build & WithSecondarySourceVersions(SecondarySourceVersionsT &&value)
const Aws::String & GetCurrentPhase() const
bool EncryptionKeyHasBeenSet() const
Build & WithProjectName(ProjectNameT &&value)
bool NetworkInterfaceHasBeenSet() const
Build & WithAutoRetryConfig(AutoRetryConfigT &&value)
Build & WithEndTime(EndTimeT &&value)
bool AutoRetryConfigHasBeenSet() const
Build & AddFileSystemLocations(FileSystemLocationsT &&value)
void SetPhases(PhasesT &&value)
void SetSecondarySourceVersions(SecondarySourceVersionsT &&value)
Build & WithSecondarySources(SecondarySourcesT &&value)
Build & WithBuildNumber(long long value)
bool EnvironmentHasBeenSet() const
Build & WithPhases(PhasesT &&value)
void SetQueuedTimeoutInMinutes(int value)
bool PhasesHasBeenSet() const
bool FileSystemLocationsHasBeenSet() const
bool VpcConfigHasBeenSet() const
const Aws::Vector< BuildPhase > & GetPhases() const
Build & WithBuildStatus(StatusType value)
bool SourceHasBeenSet() const
bool SourceVersionHasBeenSet() const
bool TimeoutInMinutesHasBeenSet() const
bool EndTimeHasBeenSet() const
AWS_CODEBUILD_API Build & operator=(Aws::Utils::Json::JsonView jsonValue)
Build & WithServiceRole(ServiceRoleT &&value)
bool ExportedEnvironmentVariablesHasBeenSet() const
void SetExportedEnvironmentVariables(ExportedEnvironmentVariablesT &&value)
long long GetBuildNumber() const
bool ProjectNameHasBeenSet() const
const VpcConfig & GetVpcConfig() const
void SetBuildStatus(StatusType value)
Build & WithLogs(LogsT &&value)
Build & WithVpcConfig(VpcConfigT &&value)
void SetProjectName(ProjectNameT &&value)
const Aws::String & GetArn() const
void SetSecondaryArtifacts(SecondaryArtifactsT &&value)
void SetInitiator(InitiatorT &&value)
const Aws::Vector< BuildArtifacts > & GetSecondaryArtifacts() const
Build & WithStartTime(StartTimeT &&value)
Build & WithCurrentPhase(CurrentPhaseT &&value)
const Aws::Vector< Aws::String > & GetReportArns() const
void SetVpcConfig(VpcConfigT &&value)
void SetDebugSession(DebugSessionT &&value)
bool ReportArnsHasBeenSet() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue