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

Specifies restrictions for the batch build.

See Also:

AWS * API Reference

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

Specifies the maximum number of builds allowed.

*/ inline int GetMaximumBuildsAllowed() const{ return m_maximumBuildsAllowed; } /** *

Specifies the maximum number of builds allowed.

*/ inline bool MaximumBuildsAllowedHasBeenSet() const { return m_maximumBuildsAllowedHasBeenSet; } /** *

Specifies the maximum number of builds allowed.

*/ inline void SetMaximumBuildsAllowed(int value) { m_maximumBuildsAllowedHasBeenSet = true; m_maximumBuildsAllowed = value; } /** *

Specifies the maximum number of builds allowed.

*/ inline BatchRestrictions& WithMaximumBuildsAllowed(int value) { SetMaximumBuildsAllowed(value); return *this;} /** *

An array of strings that specify the compute types that are allowed for the * batch build. See Build * environment compute types in the AWS CodeBuild User Guide for these * values.

*/ inline const Aws::Vector& GetComputeTypesAllowed() const{ return m_computeTypesAllowed; } /** *

An array of strings that specify the compute types that are allowed for the * batch build. See Build * environment compute types in the AWS CodeBuild User Guide for these * values.

*/ inline bool ComputeTypesAllowedHasBeenSet() const { return m_computeTypesAllowedHasBeenSet; } /** *

An array of strings that specify the compute types that are allowed for the * batch build. See Build * environment compute types in the AWS CodeBuild User Guide for these * values.

*/ inline void SetComputeTypesAllowed(const Aws::Vector& value) { m_computeTypesAllowedHasBeenSet = true; m_computeTypesAllowed = value; } /** *

An array of strings that specify the compute types that are allowed for the * batch build. See Build * environment compute types in the AWS CodeBuild User Guide for these * values.

*/ inline void SetComputeTypesAllowed(Aws::Vector&& value) { m_computeTypesAllowedHasBeenSet = true; m_computeTypesAllowed = std::move(value); } /** *

An array of strings that specify the compute types that are allowed for the * batch build. See Build * environment compute types in the AWS CodeBuild User Guide for these * values.

*/ inline BatchRestrictions& WithComputeTypesAllowed(const Aws::Vector& value) { SetComputeTypesAllowed(value); return *this;} /** *

An array of strings that specify the compute types that are allowed for the * batch build. See Build * environment compute types in the AWS CodeBuild User Guide for these * values.

*/ inline BatchRestrictions& WithComputeTypesAllowed(Aws::Vector&& value) { SetComputeTypesAllowed(std::move(value)); return *this;} /** *

An array of strings that specify the compute types that are allowed for the * batch build. See Build * environment compute types in the AWS CodeBuild User Guide for these * values.

*/ inline BatchRestrictions& AddComputeTypesAllowed(const Aws::String& value) { m_computeTypesAllowedHasBeenSet = true; m_computeTypesAllowed.push_back(value); return *this; } /** *

An array of strings that specify the compute types that are allowed for the * batch build. See Build * environment compute types in the AWS CodeBuild User Guide for these * values.

*/ inline BatchRestrictions& AddComputeTypesAllowed(Aws::String&& value) { m_computeTypesAllowedHasBeenSet = true; m_computeTypesAllowed.push_back(std::move(value)); return *this; } /** *

An array of strings that specify the compute types that are allowed for the * batch build. See Build * environment compute types in the AWS CodeBuild User Guide for these * values.

*/ inline BatchRestrictions& AddComputeTypesAllowed(const char* value) { m_computeTypesAllowedHasBeenSet = true; m_computeTypesAllowed.push_back(value); return *this; } private: int m_maximumBuildsAllowed; bool m_maximumBuildsAllowedHasBeenSet; Aws::Vector m_computeTypesAllowed; bool m_computeTypesAllowedHasBeenSet; }; } // namespace Model } // namespace CodeBuild } // namespace Aws