/** * 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 Proton { namespace Model { /** *

A repository sync definition.

See Also:

AWS * API Reference

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

The repository branch.

*/ inline const Aws::String& GetBranch() const{ return m_branch; } /** *

The repository branch.

*/ inline bool BranchHasBeenSet() const { return m_branchHasBeenSet; } /** *

The repository branch.

*/ inline void SetBranch(const Aws::String& value) { m_branchHasBeenSet = true; m_branch = value; } /** *

The repository branch.

*/ inline void SetBranch(Aws::String&& value) { m_branchHasBeenSet = true; m_branch = std::move(value); } /** *

The repository branch.

*/ inline void SetBranch(const char* value) { m_branchHasBeenSet = true; m_branch.assign(value); } /** *

The repository branch.

*/ inline RepositorySyncDefinition& WithBranch(const Aws::String& value) { SetBranch(value); return *this;} /** *

The repository branch.

*/ inline RepositorySyncDefinition& WithBranch(Aws::String&& value) { SetBranch(std::move(value)); return *this;} /** *

The repository branch.

*/ inline RepositorySyncDefinition& WithBranch(const char* value) { SetBranch(value); return *this;} /** *

The directory in the repository.

*/ inline const Aws::String& GetDirectory() const{ return m_directory; } /** *

The directory in the repository.

*/ inline bool DirectoryHasBeenSet() const { return m_directoryHasBeenSet; } /** *

The directory in the repository.

*/ inline void SetDirectory(const Aws::String& value) { m_directoryHasBeenSet = true; m_directory = value; } /** *

The directory in the repository.

*/ inline void SetDirectory(Aws::String&& value) { m_directoryHasBeenSet = true; m_directory = std::move(value); } /** *

The directory in the repository.

*/ inline void SetDirectory(const char* value) { m_directoryHasBeenSet = true; m_directory.assign(value); } /** *

The directory in the repository.

*/ inline RepositorySyncDefinition& WithDirectory(const Aws::String& value) { SetDirectory(value); return *this;} /** *

The directory in the repository.

*/ inline RepositorySyncDefinition& WithDirectory(Aws::String&& value) { SetDirectory(std::move(value)); return *this;} /** *

The directory in the repository.

*/ inline RepositorySyncDefinition& WithDirectory(const char* value) { SetDirectory(value); return *this;} /** *

The resource that is synced from.

*/ inline const Aws::String& GetParent() const{ return m_parent; } /** *

The resource that is synced from.

*/ inline bool ParentHasBeenSet() const { return m_parentHasBeenSet; } /** *

The resource that is synced from.

*/ inline void SetParent(const Aws::String& value) { m_parentHasBeenSet = true; m_parent = value; } /** *

The resource that is synced from.

*/ inline void SetParent(Aws::String&& value) { m_parentHasBeenSet = true; m_parent = std::move(value); } /** *

The resource that is synced from.

*/ inline void SetParent(const char* value) { m_parentHasBeenSet = true; m_parent.assign(value); } /** *

The resource that is synced from.

*/ inline RepositorySyncDefinition& WithParent(const Aws::String& value) { SetParent(value); return *this;} /** *

The resource that is synced from.

*/ inline RepositorySyncDefinition& WithParent(Aws::String&& value) { SetParent(std::move(value)); return *this;} /** *

The resource that is synced from.

*/ inline RepositorySyncDefinition& WithParent(const char* value) { SetParent(value); return *this;} /** *

The resource that is synced to.

*/ inline const Aws::String& GetTarget() const{ return m_target; } /** *

The resource that is synced to.

*/ inline bool TargetHasBeenSet() const { return m_targetHasBeenSet; } /** *

The resource that is synced to.

*/ inline void SetTarget(const Aws::String& value) { m_targetHasBeenSet = true; m_target = value; } /** *

The resource that is synced to.

*/ inline void SetTarget(Aws::String&& value) { m_targetHasBeenSet = true; m_target = std::move(value); } /** *

The resource that is synced to.

*/ inline void SetTarget(const char* value) { m_targetHasBeenSet = true; m_target.assign(value); } /** *

The resource that is synced to.

*/ inline RepositorySyncDefinition& WithTarget(const Aws::String& value) { SetTarget(value); return *this;} /** *

The resource that is synced to.

*/ inline RepositorySyncDefinition& WithTarget(Aws::String&& value) { SetTarget(std::move(value)); return *this;} /** *

The resource that is synced to.

*/ inline RepositorySyncDefinition& WithTarget(const char* value) { SetTarget(value); return *this;} private: Aws::String m_branch; bool m_branchHasBeenSet = false; Aws::String m_directory; bool m_directoryHasBeenSet = false; Aws::String m_parent; bool m_parentHasBeenSet = false; Aws::String m_target; bool m_targetHasBeenSet = false; }; } // namespace Model } // namespace Proton } // namespace Aws