/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace CodeBuild { namespace Model { /** *

Contains information about a batch build build group. Build groups are used * to combine builds that can run in parallel, while still being able to set * dependencies on other build groups.

See Also:

AWS * API Reference

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

Contains the identifier of the build group.

*/ inline const Aws::String& GetIdentifier() const{ return m_identifier; } /** *

Contains the identifier of the build group.

*/ inline bool IdentifierHasBeenSet() const { return m_identifierHasBeenSet; } /** *

Contains the identifier of the build group.

*/ inline void SetIdentifier(const Aws::String& value) { m_identifierHasBeenSet = true; m_identifier = value; } /** *

Contains the identifier of the build group.

*/ inline void SetIdentifier(Aws::String&& value) { m_identifierHasBeenSet = true; m_identifier = std::move(value); } /** *

Contains the identifier of the build group.

*/ inline void SetIdentifier(const char* value) { m_identifierHasBeenSet = true; m_identifier.assign(value); } /** *

Contains the identifier of the build group.

*/ inline BuildGroup& WithIdentifier(const Aws::String& value) { SetIdentifier(value); return *this;} /** *

Contains the identifier of the build group.

*/ inline BuildGroup& WithIdentifier(Aws::String&& value) { SetIdentifier(std::move(value)); return *this;} /** *

Contains the identifier of the build group.

*/ inline BuildGroup& WithIdentifier(const char* value) { SetIdentifier(value); return *this;} /** *

An array of strings that contain the identifiers of the build groups that * this build group depends on.

*/ inline const Aws::Vector& GetDependsOn() const{ return m_dependsOn; } /** *

An array of strings that contain the identifiers of the build groups that * this build group depends on.

*/ inline bool DependsOnHasBeenSet() const { return m_dependsOnHasBeenSet; } /** *

An array of strings that contain the identifiers of the build groups that * this build group depends on.

*/ inline void SetDependsOn(const Aws::Vector& value) { m_dependsOnHasBeenSet = true; m_dependsOn = value; } /** *

An array of strings that contain the identifiers of the build groups that * this build group depends on.

*/ inline void SetDependsOn(Aws::Vector&& value) { m_dependsOnHasBeenSet = true; m_dependsOn = std::move(value); } /** *

An array of strings that contain the identifiers of the build groups that * this build group depends on.

*/ inline BuildGroup& WithDependsOn(const Aws::Vector& value) { SetDependsOn(value); return *this;} /** *

An array of strings that contain the identifiers of the build groups that * this build group depends on.

*/ inline BuildGroup& WithDependsOn(Aws::Vector&& value) { SetDependsOn(std::move(value)); return *this;} /** *

An array of strings that contain the identifiers of the build groups that * this build group depends on.

*/ inline BuildGroup& AddDependsOn(const Aws::String& value) { m_dependsOnHasBeenSet = true; m_dependsOn.push_back(value); return *this; } /** *

An array of strings that contain the identifiers of the build groups that * this build group depends on.

*/ inline BuildGroup& AddDependsOn(Aws::String&& value) { m_dependsOnHasBeenSet = true; m_dependsOn.push_back(std::move(value)); return *this; } /** *

An array of strings that contain the identifiers of the build groups that * this build group depends on.

*/ inline BuildGroup& AddDependsOn(const char* value) { m_dependsOnHasBeenSet = true; m_dependsOn.push_back(value); return *this; } /** *

Specifies if failures in this build group can be ignored.

*/ inline bool GetIgnoreFailure() const{ return m_ignoreFailure; } /** *

Specifies if failures in this build group can be ignored.

*/ inline bool IgnoreFailureHasBeenSet() const { return m_ignoreFailureHasBeenSet; } /** *

Specifies if failures in this build group can be ignored.

*/ inline void SetIgnoreFailure(bool value) { m_ignoreFailureHasBeenSet = true; m_ignoreFailure = value; } /** *

Specifies if failures in this build group can be ignored.

*/ inline BuildGroup& WithIgnoreFailure(bool value) { SetIgnoreFailure(value); return *this;} /** *

A BuildSummary object that contains a summary of the current * build group.

*/ inline const BuildSummary& GetCurrentBuildSummary() const{ return m_currentBuildSummary; } /** *

A BuildSummary object that contains a summary of the current * build group.

*/ inline bool CurrentBuildSummaryHasBeenSet() const { return m_currentBuildSummaryHasBeenSet; } /** *

A BuildSummary object that contains a summary of the current * build group.

*/ inline void SetCurrentBuildSummary(const BuildSummary& value) { m_currentBuildSummaryHasBeenSet = true; m_currentBuildSummary = value; } /** *

A BuildSummary object that contains a summary of the current * build group.

*/ inline void SetCurrentBuildSummary(BuildSummary&& value) { m_currentBuildSummaryHasBeenSet = true; m_currentBuildSummary = std::move(value); } /** *

A BuildSummary object that contains a summary of the current * build group.

*/ inline BuildGroup& WithCurrentBuildSummary(const BuildSummary& value) { SetCurrentBuildSummary(value); return *this;} /** *

A BuildSummary object that contains a summary of the current * build group.

*/ inline BuildGroup& WithCurrentBuildSummary(BuildSummary&& value) { SetCurrentBuildSummary(std::move(value)); return *this;} /** *

An array of BuildSummary objects that contain summaries of * previous build groups.

*/ inline const Aws::Vector& GetPriorBuildSummaryList() const{ return m_priorBuildSummaryList; } /** *

An array of BuildSummary objects that contain summaries of * previous build groups.

*/ inline bool PriorBuildSummaryListHasBeenSet() const { return m_priorBuildSummaryListHasBeenSet; } /** *

An array of BuildSummary objects that contain summaries of * previous build groups.

*/ inline void SetPriorBuildSummaryList(const Aws::Vector& value) { m_priorBuildSummaryListHasBeenSet = true; m_priorBuildSummaryList = value; } /** *

An array of BuildSummary objects that contain summaries of * previous build groups.

*/ inline void SetPriorBuildSummaryList(Aws::Vector&& value) { m_priorBuildSummaryListHasBeenSet = true; m_priorBuildSummaryList = std::move(value); } /** *

An array of BuildSummary objects that contain summaries of * previous build groups.

*/ inline BuildGroup& WithPriorBuildSummaryList(const Aws::Vector& value) { SetPriorBuildSummaryList(value); return *this;} /** *

An array of BuildSummary objects that contain summaries of * previous build groups.

*/ inline BuildGroup& WithPriorBuildSummaryList(Aws::Vector&& value) { SetPriorBuildSummaryList(std::move(value)); return *this;} /** *

An array of BuildSummary objects that contain summaries of * previous build groups.

*/ inline BuildGroup& AddPriorBuildSummaryList(const BuildSummary& value) { m_priorBuildSummaryListHasBeenSet = true; m_priorBuildSummaryList.push_back(value); return *this; } /** *

An array of BuildSummary objects that contain summaries of * previous build groups.

*/ inline BuildGroup& AddPriorBuildSummaryList(BuildSummary&& value) { m_priorBuildSummaryListHasBeenSet = true; m_priorBuildSummaryList.push_back(std::move(value)); return *this; } private: Aws::String m_identifier; bool m_identifierHasBeenSet; Aws::Vector m_dependsOn; bool m_dependsOnHasBeenSet; bool m_ignoreFailure; bool m_ignoreFailureHasBeenSet; BuildSummary m_currentBuildSummary; bool m_currentBuildSummaryHasBeenSet; Aws::Vector m_priorBuildSummaryList; bool m_priorBuildSummaryListHasBeenSet; }; } // namespace Model } // namespace CodeBuild } // namespace Aws