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

Information about the levels in the hierarchy group.

See Also:

* AWS * API Reference

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

Information about level one.

*/ inline const HierarchyGroupSummaryReference& GetLevelOne() const{ return m_levelOne; } /** *

Information about level one.

*/ inline bool LevelOneHasBeenSet() const { return m_levelOneHasBeenSet; } /** *

Information about level one.

*/ inline void SetLevelOne(const HierarchyGroupSummaryReference& value) { m_levelOneHasBeenSet = true; m_levelOne = value; } /** *

Information about level one.

*/ inline void SetLevelOne(HierarchyGroupSummaryReference&& value) { m_levelOneHasBeenSet = true; m_levelOne = std::move(value); } /** *

Information about level one.

*/ inline HierarchyPathReference& WithLevelOne(const HierarchyGroupSummaryReference& value) { SetLevelOne(value); return *this;} /** *

Information about level one.

*/ inline HierarchyPathReference& WithLevelOne(HierarchyGroupSummaryReference&& value) { SetLevelOne(std::move(value)); return *this;} /** *

Information about level two.

*/ inline const HierarchyGroupSummaryReference& GetLevelTwo() const{ return m_levelTwo; } /** *

Information about level two.

*/ inline bool LevelTwoHasBeenSet() const { return m_levelTwoHasBeenSet; } /** *

Information about level two.

*/ inline void SetLevelTwo(const HierarchyGroupSummaryReference& value) { m_levelTwoHasBeenSet = true; m_levelTwo = value; } /** *

Information about level two.

*/ inline void SetLevelTwo(HierarchyGroupSummaryReference&& value) { m_levelTwoHasBeenSet = true; m_levelTwo = std::move(value); } /** *

Information about level two.

*/ inline HierarchyPathReference& WithLevelTwo(const HierarchyGroupSummaryReference& value) { SetLevelTwo(value); return *this;} /** *

Information about level two.

*/ inline HierarchyPathReference& WithLevelTwo(HierarchyGroupSummaryReference&& value) { SetLevelTwo(std::move(value)); return *this;} /** *

Information about level three.

*/ inline const HierarchyGroupSummaryReference& GetLevelThree() const{ return m_levelThree; } /** *

Information about level three.

*/ inline bool LevelThreeHasBeenSet() const { return m_levelThreeHasBeenSet; } /** *

Information about level three.

*/ inline void SetLevelThree(const HierarchyGroupSummaryReference& value) { m_levelThreeHasBeenSet = true; m_levelThree = value; } /** *

Information about level three.

*/ inline void SetLevelThree(HierarchyGroupSummaryReference&& value) { m_levelThreeHasBeenSet = true; m_levelThree = std::move(value); } /** *

Information about level three.

*/ inline HierarchyPathReference& WithLevelThree(const HierarchyGroupSummaryReference& value) { SetLevelThree(value); return *this;} /** *

Information about level three.

*/ inline HierarchyPathReference& WithLevelThree(HierarchyGroupSummaryReference&& value) { SetLevelThree(std::move(value)); return *this;} /** *

Information about level four.

*/ inline const HierarchyGroupSummaryReference& GetLevelFour() const{ return m_levelFour; } /** *

Information about level four.

*/ inline bool LevelFourHasBeenSet() const { return m_levelFourHasBeenSet; } /** *

Information about level four.

*/ inline void SetLevelFour(const HierarchyGroupSummaryReference& value) { m_levelFourHasBeenSet = true; m_levelFour = value; } /** *

Information about level four.

*/ inline void SetLevelFour(HierarchyGroupSummaryReference&& value) { m_levelFourHasBeenSet = true; m_levelFour = std::move(value); } /** *

Information about level four.

*/ inline HierarchyPathReference& WithLevelFour(const HierarchyGroupSummaryReference& value) { SetLevelFour(value); return *this;} /** *

Information about level four.

*/ inline HierarchyPathReference& WithLevelFour(HierarchyGroupSummaryReference&& value) { SetLevelFour(std::move(value)); return *this;} /** *

Information about level five.

*/ inline const HierarchyGroupSummaryReference& GetLevelFive() const{ return m_levelFive; } /** *

Information about level five.

*/ inline bool LevelFiveHasBeenSet() const { return m_levelFiveHasBeenSet; } /** *

Information about level five.

*/ inline void SetLevelFive(const HierarchyGroupSummaryReference& value) { m_levelFiveHasBeenSet = true; m_levelFive = value; } /** *

Information about level five.

*/ inline void SetLevelFive(HierarchyGroupSummaryReference&& value) { m_levelFiveHasBeenSet = true; m_levelFive = std::move(value); } /** *

Information about level five.

*/ inline HierarchyPathReference& WithLevelFive(const HierarchyGroupSummaryReference& value) { SetLevelFive(value); return *this;} /** *

Information about level five.

*/ inline HierarchyPathReference& WithLevelFive(HierarchyGroupSummaryReference&& value) { SetLevelFive(std::move(value)); return *this;} private: HierarchyGroupSummaryReference m_levelOne; bool m_levelOneHasBeenSet = false; HierarchyGroupSummaryReference m_levelTwo; bool m_levelTwoHasBeenSet = false; HierarchyGroupSummaryReference m_levelThree; bool m_levelThreeHasBeenSet = false; HierarchyGroupSummaryReference m_levelFour; bool m_levelFourHasBeenSet = false; HierarchyGroupSummaryReference m_levelFive; bool m_levelFiveHasBeenSet = false; }; } // namespace Model } // namespace Connect } // namespace Aws