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

A source identifier and its corresponding version.

See Also:

* AWS * API Reference

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

An identifier for a source in the build project.

*/ inline const Aws::String& GetSourceIdentifier() const{ return m_sourceIdentifier; } /** *

An identifier for a source in the build project.

*/ inline bool SourceIdentifierHasBeenSet() const { return m_sourceIdentifierHasBeenSet; } /** *

An identifier for a source in the build project.

*/ inline void SetSourceIdentifier(const Aws::String& value) { m_sourceIdentifierHasBeenSet = true; m_sourceIdentifier = value; } /** *

An identifier for a source in the build project.

*/ inline void SetSourceIdentifier(Aws::String&& value) { m_sourceIdentifierHasBeenSet = true; m_sourceIdentifier = std::move(value); } /** *

An identifier for a source in the build project.

*/ inline void SetSourceIdentifier(const char* value) { m_sourceIdentifierHasBeenSet = true; m_sourceIdentifier.assign(value); } /** *

An identifier for a source in the build project.

*/ inline ProjectSourceVersion& WithSourceIdentifier(const Aws::String& value) { SetSourceIdentifier(value); return *this;} /** *

An identifier for a source in the build project.

*/ inline ProjectSourceVersion& WithSourceIdentifier(Aws::String&& value) { SetSourceIdentifier(std::move(value)); return *this;} /** *

An identifier for a source in the build project.

*/ inline ProjectSourceVersion& WithSourceIdentifier(const char* value) { SetSourceIdentifier(value); return *this;} /** *

The source version for the corresponding source identifier. If specified, * must be one of:

  • For AWS CodeCommit: the commit ID, branch, or * Git tag to use.

  • For GitHub: the commit ID, pull request ID, * branch name, or tag name that corresponds to the version of the source code you * want to build. If a pull request ID is specified, it must use the format * pr/pull-request-ID (for example, pr/25). If a branch * name is specified, the branch's HEAD commit ID is used. If not specified, the * default branch's HEAD commit ID is used.

  • For Bitbucket: the * commit ID, branch name, or tag name that corresponds to the version of the * source code you want to build. If a branch name is specified, the branch's HEAD * commit ID is used. If not specified, the default branch's HEAD commit ID is * used.

  • For Amazon Simple Storage Service (Amazon S3): the * version ID of the object that represents the build input ZIP file to use.

    *

For more information, see Source * Version Sample with CodeBuild in the AWS CodeBuild User Guide.

*/ inline const Aws::String& GetSourceVersion() const{ return m_sourceVersion; } /** *

The source version for the corresponding source identifier. If specified, * must be one of:

  • For AWS CodeCommit: the commit ID, branch, or * Git tag to use.

  • For GitHub: the commit ID, pull request ID, * branch name, or tag name that corresponds to the version of the source code you * want to build. If a pull request ID is specified, it must use the format * pr/pull-request-ID (for example, pr/25). If a branch * name is specified, the branch's HEAD commit ID is used. If not specified, the * default branch's HEAD commit ID is used.

  • For Bitbucket: the * commit ID, branch name, or tag name that corresponds to the version of the * source code you want to build. If a branch name is specified, the branch's HEAD * commit ID is used. If not specified, the default branch's HEAD commit ID is * used.

  • For Amazon Simple Storage Service (Amazon S3): the * version ID of the object that represents the build input ZIP file to use.

    *

For more information, see Source * Version Sample with CodeBuild in the AWS CodeBuild User Guide.

*/ inline bool SourceVersionHasBeenSet() const { return m_sourceVersionHasBeenSet; } /** *

The source version for the corresponding source identifier. If specified, * must be one of:

  • For AWS CodeCommit: the commit ID, branch, or * Git tag to use.

  • For GitHub: the commit ID, pull request ID, * branch name, or tag name that corresponds to the version of the source code you * want to build. If a pull request ID is specified, it must use the format * pr/pull-request-ID (for example, pr/25). If a branch * name is specified, the branch's HEAD commit ID is used. If not specified, the * default branch's HEAD commit ID is used.

  • For Bitbucket: the * commit ID, branch name, or tag name that corresponds to the version of the * source code you want to build. If a branch name is specified, the branch's HEAD * commit ID is used. If not specified, the default branch's HEAD commit ID is * used.

  • For Amazon Simple Storage Service (Amazon S3): the * version ID of the object that represents the build input ZIP file to use.

    *

For more information, see Source * Version Sample with CodeBuild in the AWS CodeBuild User Guide.

*/ inline void SetSourceVersion(const Aws::String& value) { m_sourceVersionHasBeenSet = true; m_sourceVersion = value; } /** *

The source version for the corresponding source identifier. If specified, * must be one of:

  • For AWS CodeCommit: the commit ID, branch, or * Git tag to use.

  • For GitHub: the commit ID, pull request ID, * branch name, or tag name that corresponds to the version of the source code you * want to build. If a pull request ID is specified, it must use the format * pr/pull-request-ID (for example, pr/25). If a branch * name is specified, the branch's HEAD commit ID is used. If not specified, the * default branch's HEAD commit ID is used.

  • For Bitbucket: the * commit ID, branch name, or tag name that corresponds to the version of the * source code you want to build. If a branch name is specified, the branch's HEAD * commit ID is used. If not specified, the default branch's HEAD commit ID is * used.

  • For Amazon Simple Storage Service (Amazon S3): the * version ID of the object that represents the build input ZIP file to use.

    *

For more information, see Source * Version Sample with CodeBuild in the AWS CodeBuild User Guide.

*/ inline void SetSourceVersion(Aws::String&& value) { m_sourceVersionHasBeenSet = true; m_sourceVersion = std::move(value); } /** *

The source version for the corresponding source identifier. If specified, * must be one of:

  • For AWS CodeCommit: the commit ID, branch, or * Git tag to use.

  • For GitHub: the commit ID, pull request ID, * branch name, or tag name that corresponds to the version of the source code you * want to build. If a pull request ID is specified, it must use the format * pr/pull-request-ID (for example, pr/25). If a branch * name is specified, the branch's HEAD commit ID is used. If not specified, the * default branch's HEAD commit ID is used.

  • For Bitbucket: the * commit ID, branch name, or tag name that corresponds to the version of the * source code you want to build. If a branch name is specified, the branch's HEAD * commit ID is used. If not specified, the default branch's HEAD commit ID is * used.

  • For Amazon Simple Storage Service (Amazon S3): the * version ID of the object that represents the build input ZIP file to use.

    *

For more information, see Source * Version Sample with CodeBuild in the AWS CodeBuild User Guide.

*/ inline void SetSourceVersion(const char* value) { m_sourceVersionHasBeenSet = true; m_sourceVersion.assign(value); } /** *

The source version for the corresponding source identifier. If specified, * must be one of:

  • For AWS CodeCommit: the commit ID, branch, or * Git tag to use.

  • For GitHub: the commit ID, pull request ID, * branch name, or tag name that corresponds to the version of the source code you * want to build. If a pull request ID is specified, it must use the format * pr/pull-request-ID (for example, pr/25). If a branch * name is specified, the branch's HEAD commit ID is used. If not specified, the * default branch's HEAD commit ID is used.

  • For Bitbucket: the * commit ID, branch name, or tag name that corresponds to the version of the * source code you want to build. If a branch name is specified, the branch's HEAD * commit ID is used. If not specified, the default branch's HEAD commit ID is * used.

  • For Amazon Simple Storage Service (Amazon S3): the * version ID of the object that represents the build input ZIP file to use.

    *

For more information, see Source * Version Sample with CodeBuild in the AWS CodeBuild User Guide.

*/ inline ProjectSourceVersion& WithSourceVersion(const Aws::String& value) { SetSourceVersion(value); return *this;} /** *

The source version for the corresponding source identifier. If specified, * must be one of:

  • For AWS CodeCommit: the commit ID, branch, or * Git tag to use.

  • For GitHub: the commit ID, pull request ID, * branch name, or tag name that corresponds to the version of the source code you * want to build. If a pull request ID is specified, it must use the format * pr/pull-request-ID (for example, pr/25). If a branch * name is specified, the branch's HEAD commit ID is used. If not specified, the * default branch's HEAD commit ID is used.

  • For Bitbucket: the * commit ID, branch name, or tag name that corresponds to the version of the * source code you want to build. If a branch name is specified, the branch's HEAD * commit ID is used. If not specified, the default branch's HEAD commit ID is * used.

  • For Amazon Simple Storage Service (Amazon S3): the * version ID of the object that represents the build input ZIP file to use.

    *

For more information, see Source * Version Sample with CodeBuild in the AWS CodeBuild User Guide.

*/ inline ProjectSourceVersion& WithSourceVersion(Aws::String&& value) { SetSourceVersion(std::move(value)); return *this;} /** *

The source version for the corresponding source identifier. If specified, * must be one of:

  • For AWS CodeCommit: the commit ID, branch, or * Git tag to use.

  • For GitHub: the commit ID, pull request ID, * branch name, or tag name that corresponds to the version of the source code you * want to build. If a pull request ID is specified, it must use the format * pr/pull-request-ID (for example, pr/25). If a branch * name is specified, the branch's HEAD commit ID is used. If not specified, the * default branch's HEAD commit ID is used.

  • For Bitbucket: the * commit ID, branch name, or tag name that corresponds to the version of the * source code you want to build. If a branch name is specified, the branch's HEAD * commit ID is used. If not specified, the default branch's HEAD commit ID is * used.

  • For Amazon Simple Storage Service (Amazon S3): the * version ID of the object that represents the build input ZIP file to use.

    *

For more information, see Source * Version Sample with CodeBuild in the AWS CodeBuild User Guide.

*/ inline ProjectSourceVersion& WithSourceVersion(const char* value) { SetSourceVersion(value); return *this;} private: Aws::String m_sourceIdentifier; bool m_sourceIdentifierHasBeenSet; Aws::String m_sourceVersion; bool m_sourceVersionHasBeenSet; }; } // namespace Model } // namespace CodeBuild } // namespace Aws