/** * 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 namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace CodeBuild { namespace Model { /** *

Contains summary information about a batch build group.

See * Also:

AWS * API Reference

*/ class BuildSummary { public: AWS_CODEBUILD_API BuildSummary(); AWS_CODEBUILD_API BuildSummary(Aws::Utils::Json::JsonView jsonValue); AWS_CODEBUILD_API BuildSummary& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_CODEBUILD_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The batch build ARN.

*/ inline const Aws::String& GetArn() const{ return m_arn; } /** *

The batch build ARN.

*/ inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; } /** *

The batch build ARN.

*/ inline void SetArn(const Aws::String& value) { m_arnHasBeenSet = true; m_arn = value; } /** *

The batch build ARN.

*/ inline void SetArn(Aws::String&& value) { m_arnHasBeenSet = true; m_arn = std::move(value); } /** *

The batch build ARN.

*/ inline void SetArn(const char* value) { m_arnHasBeenSet = true; m_arn.assign(value); } /** *

The batch build ARN.

*/ inline BuildSummary& WithArn(const Aws::String& value) { SetArn(value); return *this;} /** *

The batch build ARN.

*/ inline BuildSummary& WithArn(Aws::String&& value) { SetArn(std::move(value)); return *this;} /** *

The batch build ARN.

*/ inline BuildSummary& WithArn(const char* value) { SetArn(value); return *this;} /** *

When the build was started, expressed in Unix time format.

*/ inline const Aws::Utils::DateTime& GetRequestedOn() const{ return m_requestedOn; } /** *

When the build was started, expressed in Unix time format.

*/ inline bool RequestedOnHasBeenSet() const { return m_requestedOnHasBeenSet; } /** *

When the build was started, expressed in Unix time format.

*/ inline void SetRequestedOn(const Aws::Utils::DateTime& value) { m_requestedOnHasBeenSet = true; m_requestedOn = value; } /** *

When the build was started, expressed in Unix time format.

*/ inline void SetRequestedOn(Aws::Utils::DateTime&& value) { m_requestedOnHasBeenSet = true; m_requestedOn = std::move(value); } /** *

When the build was started, expressed in Unix time format.

*/ inline BuildSummary& WithRequestedOn(const Aws::Utils::DateTime& value) { SetRequestedOn(value); return *this;} /** *

When the build was started, expressed in Unix time format.

*/ inline BuildSummary& WithRequestedOn(Aws::Utils::DateTime&& value) { SetRequestedOn(std::move(value)); return *this;} /** *

The status of the build group.

FAILED

The build * group failed.

FAULT

The build group faulted.

*
IN_PROGRESS

The build group is still in progress.

*
STOPPED

The build group stopped.

*
SUCCEEDED

The build group succeeded.

*
TIMED_OUT

The build group timed out.

*/ inline const StatusType& GetBuildStatus() const{ return m_buildStatus; } /** *

The status of the build group.

FAILED

The build * group failed.

FAULT

The build group faulted.

*
IN_PROGRESS

The build group is still in progress.

*
STOPPED

The build group stopped.

*
SUCCEEDED

The build group succeeded.

*
TIMED_OUT

The build group timed out.

*/ inline bool BuildStatusHasBeenSet() const { return m_buildStatusHasBeenSet; } /** *

The status of the build group.

FAILED

The build * group failed.

FAULT

The build group faulted.

*
IN_PROGRESS

The build group is still in progress.

*
STOPPED

The build group stopped.

*
SUCCEEDED

The build group succeeded.

*
TIMED_OUT

The build group timed out.

*/ inline void SetBuildStatus(const StatusType& value) { m_buildStatusHasBeenSet = true; m_buildStatus = value; } /** *

The status of the build group.

FAILED

The build * group failed.

FAULT

The build group faulted.

*
IN_PROGRESS

The build group is still in progress.

*
STOPPED

The build group stopped.

*
SUCCEEDED

The build group succeeded.

*
TIMED_OUT

The build group timed out.

*/ inline void SetBuildStatus(StatusType&& value) { m_buildStatusHasBeenSet = true; m_buildStatus = std::move(value); } /** *

The status of the build group.

FAILED

The build * group failed.

FAULT

The build group faulted.

*
IN_PROGRESS

The build group is still in progress.

*
STOPPED

The build group stopped.

*
SUCCEEDED

The build group succeeded.

*
TIMED_OUT

The build group timed out.

*/ inline BuildSummary& WithBuildStatus(const StatusType& value) { SetBuildStatus(value); return *this;} /** *

The status of the build group.

FAILED

The build * group failed.

FAULT

The build group faulted.

*
IN_PROGRESS

The build group is still in progress.

*
STOPPED

The build group stopped.

*
SUCCEEDED

The build group succeeded.

*
TIMED_OUT

The build group timed out.

*/ inline BuildSummary& WithBuildStatus(StatusType&& value) { SetBuildStatus(std::move(value)); return *this;} /** *

A ResolvedArtifact object that represents the primary build * artifacts for the build group.

*/ inline const ResolvedArtifact& GetPrimaryArtifact() const{ return m_primaryArtifact; } /** *

A ResolvedArtifact object that represents the primary build * artifacts for the build group.

*/ inline bool PrimaryArtifactHasBeenSet() const { return m_primaryArtifactHasBeenSet; } /** *

A ResolvedArtifact object that represents the primary build * artifacts for the build group.

*/ inline void SetPrimaryArtifact(const ResolvedArtifact& value) { m_primaryArtifactHasBeenSet = true; m_primaryArtifact = value; } /** *

A ResolvedArtifact object that represents the primary build * artifacts for the build group.

*/ inline void SetPrimaryArtifact(ResolvedArtifact&& value) { m_primaryArtifactHasBeenSet = true; m_primaryArtifact = std::move(value); } /** *

A ResolvedArtifact object that represents the primary build * artifacts for the build group.

*/ inline BuildSummary& WithPrimaryArtifact(const ResolvedArtifact& value) { SetPrimaryArtifact(value); return *this;} /** *

A ResolvedArtifact object that represents the primary build * artifacts for the build group.

*/ inline BuildSummary& WithPrimaryArtifact(ResolvedArtifact&& value) { SetPrimaryArtifact(std::move(value)); return *this;} /** *

An array of ResolvedArtifact objects that represents the * secondary build artifacts for the build group.

*/ inline const Aws::Vector& GetSecondaryArtifacts() const{ return m_secondaryArtifacts; } /** *

An array of ResolvedArtifact objects that represents the * secondary build artifacts for the build group.

*/ inline bool SecondaryArtifactsHasBeenSet() const { return m_secondaryArtifactsHasBeenSet; } /** *

An array of ResolvedArtifact objects that represents the * secondary build artifacts for the build group.

*/ inline void SetSecondaryArtifacts(const Aws::Vector& value) { m_secondaryArtifactsHasBeenSet = true; m_secondaryArtifacts = value; } /** *

An array of ResolvedArtifact objects that represents the * secondary build artifacts for the build group.

*/ inline void SetSecondaryArtifacts(Aws::Vector&& value) { m_secondaryArtifactsHasBeenSet = true; m_secondaryArtifacts = std::move(value); } /** *

An array of ResolvedArtifact objects that represents the * secondary build artifacts for the build group.

*/ inline BuildSummary& WithSecondaryArtifacts(const Aws::Vector& value) { SetSecondaryArtifacts(value); return *this;} /** *

An array of ResolvedArtifact objects that represents the * secondary build artifacts for the build group.

*/ inline BuildSummary& WithSecondaryArtifacts(Aws::Vector&& value) { SetSecondaryArtifacts(std::move(value)); return *this;} /** *

An array of ResolvedArtifact objects that represents the * secondary build artifacts for the build group.

*/ inline BuildSummary& AddSecondaryArtifacts(const ResolvedArtifact& value) { m_secondaryArtifactsHasBeenSet = true; m_secondaryArtifacts.push_back(value); return *this; } /** *

An array of ResolvedArtifact objects that represents the * secondary build artifacts for the build group.

*/ inline BuildSummary& AddSecondaryArtifacts(ResolvedArtifact&& value) { m_secondaryArtifactsHasBeenSet = true; m_secondaryArtifacts.push_back(std::move(value)); return *this; } private: Aws::String m_arn; bool m_arnHasBeenSet = false; Aws::Utils::DateTime m_requestedOn; bool m_requestedOnHasBeenSet = false; StatusType m_buildStatus; bool m_buildStatusHasBeenSet = false; ResolvedArtifact m_primaryArtifact; bool m_primaryArtifactHasBeenSet = false; Aws::Vector m_secondaryArtifacts; bool m_secondaryArtifactsHasBeenSet = false; }; } // namespace Model } // namespace CodeBuild } // namespace Aws