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

Returns information about a submodule reference in a repository * folder.

See Also:

AWS * API Reference

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

The commit ID that contains the reference to the submodule.

*/ inline const Aws::String& GetCommitId() const{ return m_commitId; } /** *

The commit ID that contains the reference to the submodule.

*/ inline bool CommitIdHasBeenSet() const { return m_commitIdHasBeenSet; } /** *

The commit ID that contains the reference to the submodule.

*/ inline void SetCommitId(const Aws::String& value) { m_commitIdHasBeenSet = true; m_commitId = value; } /** *

The commit ID that contains the reference to the submodule.

*/ inline void SetCommitId(Aws::String&& value) { m_commitIdHasBeenSet = true; m_commitId = std::move(value); } /** *

The commit ID that contains the reference to the submodule.

*/ inline void SetCommitId(const char* value) { m_commitIdHasBeenSet = true; m_commitId.assign(value); } /** *

The commit ID that contains the reference to the submodule.

*/ inline SubModule& WithCommitId(const Aws::String& value) { SetCommitId(value); return *this;} /** *

The commit ID that contains the reference to the submodule.

*/ inline SubModule& WithCommitId(Aws::String&& value) { SetCommitId(std::move(value)); return *this;} /** *

The commit ID that contains the reference to the submodule.

*/ inline SubModule& WithCommitId(const char* value) { SetCommitId(value); return *this;} /** *

The fully qualified path to the folder that contains the reference to the * submodule.

*/ inline const Aws::String& GetAbsolutePath() const{ return m_absolutePath; } /** *

The fully qualified path to the folder that contains the reference to the * submodule.

*/ inline bool AbsolutePathHasBeenSet() const { return m_absolutePathHasBeenSet; } /** *

The fully qualified path to the folder that contains the reference to the * submodule.

*/ inline void SetAbsolutePath(const Aws::String& value) { m_absolutePathHasBeenSet = true; m_absolutePath = value; } /** *

The fully qualified path to the folder that contains the reference to the * submodule.

*/ inline void SetAbsolutePath(Aws::String&& value) { m_absolutePathHasBeenSet = true; m_absolutePath = std::move(value); } /** *

The fully qualified path to the folder that contains the reference to the * submodule.

*/ inline void SetAbsolutePath(const char* value) { m_absolutePathHasBeenSet = true; m_absolutePath.assign(value); } /** *

The fully qualified path to the folder that contains the reference to the * submodule.

*/ inline SubModule& WithAbsolutePath(const Aws::String& value) { SetAbsolutePath(value); return *this;} /** *

The fully qualified path to the folder that contains the reference to the * submodule.

*/ inline SubModule& WithAbsolutePath(Aws::String&& value) { SetAbsolutePath(std::move(value)); return *this;} /** *

The fully qualified path to the folder that contains the reference to the * submodule.

*/ inline SubModule& WithAbsolutePath(const char* value) { SetAbsolutePath(value); return *this;} /** *

The relative path of the submodule from the folder where the query * originated.

*/ inline const Aws::String& GetRelativePath() const{ return m_relativePath; } /** *

The relative path of the submodule from the folder where the query * originated.

*/ inline bool RelativePathHasBeenSet() const { return m_relativePathHasBeenSet; } /** *

The relative path of the submodule from the folder where the query * originated.

*/ inline void SetRelativePath(const Aws::String& value) { m_relativePathHasBeenSet = true; m_relativePath = value; } /** *

The relative path of the submodule from the folder where the query * originated.

*/ inline void SetRelativePath(Aws::String&& value) { m_relativePathHasBeenSet = true; m_relativePath = std::move(value); } /** *

The relative path of the submodule from the folder where the query * originated.

*/ inline void SetRelativePath(const char* value) { m_relativePathHasBeenSet = true; m_relativePath.assign(value); } /** *

The relative path of the submodule from the folder where the query * originated.

*/ inline SubModule& WithRelativePath(const Aws::String& value) { SetRelativePath(value); return *this;} /** *

The relative path of the submodule from the folder where the query * originated.

*/ inline SubModule& WithRelativePath(Aws::String&& value) { SetRelativePath(std::move(value)); return *this;} /** *

The relative path of the submodule from the folder where the query * originated.

*/ inline SubModule& WithRelativePath(const char* value) { SetRelativePath(value); return *this;} private: Aws::String m_commitId; bool m_commitIdHasBeenSet = false; Aws::String m_absolutePath; bool m_absolutePathHasBeenSet = false; Aws::String m_relativePath; bool m_relativePathHasBeenSet = false; }; } // namespace Model } // namespace CodeCommit } // namespace Aws