/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Object containing source code information that is linked to an application
* component. See Also:
AWS
* API Reference
The repository name for the source code.
*/ inline const Aws::String& GetLocation() const{ return m_location; } /** *The repository name for the source code.
*/ inline bool LocationHasBeenSet() const { return m_locationHasBeenSet; } /** *The repository name for the source code.
*/ inline void SetLocation(const Aws::String& value) { m_locationHasBeenSet = true; m_location = value; } /** *The repository name for the source code.
*/ inline void SetLocation(Aws::String&& value) { m_locationHasBeenSet = true; m_location = std::move(value); } /** *The repository name for the source code.
*/ inline void SetLocation(const char* value) { m_locationHasBeenSet = true; m_location.assign(value); } /** *The repository name for the source code.
*/ inline SourceCode& WithLocation(const Aws::String& value) { SetLocation(value); return *this;} /** *The repository name for the source code.
*/ inline SourceCode& WithLocation(Aws::String&& value) { SetLocation(std::move(value)); return *this;} /** *The repository name for the source code.
*/ inline SourceCode& WithLocation(const char* value) { SetLocation(value); return *this;} /** *The name of the project.
*/ inline const Aws::String& GetProjectName() const{ return m_projectName; } /** *The name of the project.
*/ inline bool ProjectNameHasBeenSet() const { return m_projectNameHasBeenSet; } /** *The name of the project.
*/ inline void SetProjectName(const Aws::String& value) { m_projectNameHasBeenSet = true; m_projectName = value; } /** *The name of the project.
*/ inline void SetProjectName(Aws::String&& value) { m_projectNameHasBeenSet = true; m_projectName = std::move(value); } /** *The name of the project.
*/ inline void SetProjectName(const char* value) { m_projectNameHasBeenSet = true; m_projectName.assign(value); } /** *The name of the project.
*/ inline SourceCode& WithProjectName(const Aws::String& value) { SetProjectName(value); return *this;} /** *The name of the project.
*/ inline SourceCode& WithProjectName(Aws::String&& value) { SetProjectName(std::move(value)); return *this;} /** *The name of the project.
*/ inline SourceCode& WithProjectName(const char* value) { SetProjectName(value); return *this;} /** *The branch of the source code.
*/ inline const Aws::String& GetSourceVersion() const{ return m_sourceVersion; } /** *The branch of the source code.
*/ inline bool SourceVersionHasBeenSet() const { return m_sourceVersionHasBeenSet; } /** *The branch of the source code.
*/ inline void SetSourceVersion(const Aws::String& value) { m_sourceVersionHasBeenSet = true; m_sourceVersion = value; } /** *The branch of the source code.
*/ inline void SetSourceVersion(Aws::String&& value) { m_sourceVersionHasBeenSet = true; m_sourceVersion = std::move(value); } /** *The branch of the source code.
*/ inline void SetSourceVersion(const char* value) { m_sourceVersionHasBeenSet = true; m_sourceVersion.assign(value); } /** *The branch of the source code.
*/ inline SourceCode& WithSourceVersion(const Aws::String& value) { SetSourceVersion(value); return *this;} /** *The branch of the source code.
*/ inline SourceCode& WithSourceVersion(Aws::String&& value) { SetSourceVersion(std::move(value)); return *this;} /** *The branch of the source code.
*/ inline SourceCode& WithSourceVersion(const char* value) { SetSourceVersion(value); return *this;} /** *The type of repository to use for the source code.
*/ inline const VersionControl& GetVersionControl() const{ return m_versionControl; } /** *The type of repository to use for the source code.
*/ inline bool VersionControlHasBeenSet() const { return m_versionControlHasBeenSet; } /** *The type of repository to use for the source code.
*/ inline void SetVersionControl(const VersionControl& value) { m_versionControlHasBeenSet = true; m_versionControl = value; } /** *The type of repository to use for the source code.
*/ inline void SetVersionControl(VersionControl&& value) { m_versionControlHasBeenSet = true; m_versionControl = std::move(value); } /** *The type of repository to use for the source code.
*/ inline SourceCode& WithVersionControl(const VersionControl& value) { SetVersionControl(value); return *this;} /** *The type of repository to use for the source code.
*/ inline SourceCode& WithVersionControl(VersionControl&& value) { SetVersionControl(std::move(value)); return *this;} private: Aws::String m_location; bool m_locationHasBeenSet = false; Aws::String m_projectName; bool m_projectNameHasBeenSet = false; Aws::String m_sourceVersion; bool m_sourceVersionHasBeenSet = false; VersionControl m_versionControl; bool m_versionControlHasBeenSet = false; }; } // namespace Model } // namespace MigrationHubStrategyRecommendations } // namespace Aws