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

The option that determines the hierarchy of the fields for a visual * element.

See Also:

AWS * API Reference

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

The option that determines the hierarchy of the fields that are built within * a visual's field wells. These fields can't be duplicated to other visuals.

*/ inline const ExplicitHierarchy& GetExplicitHierarchy() const{ return m_explicitHierarchy; } /** *

The option that determines the hierarchy of the fields that are built within * a visual's field wells. These fields can't be duplicated to other visuals.

*/ inline bool ExplicitHierarchyHasBeenSet() const { return m_explicitHierarchyHasBeenSet; } /** *

The option that determines the hierarchy of the fields that are built within * a visual's field wells. These fields can't be duplicated to other visuals.

*/ inline void SetExplicitHierarchy(const ExplicitHierarchy& value) { m_explicitHierarchyHasBeenSet = true; m_explicitHierarchy = value; } /** *

The option that determines the hierarchy of the fields that are built within * a visual's field wells. These fields can't be duplicated to other visuals.

*/ inline void SetExplicitHierarchy(ExplicitHierarchy&& value) { m_explicitHierarchyHasBeenSet = true; m_explicitHierarchy = std::move(value); } /** *

The option that determines the hierarchy of the fields that are built within * a visual's field wells. These fields can't be duplicated to other visuals.

*/ inline ColumnHierarchy& WithExplicitHierarchy(const ExplicitHierarchy& value) { SetExplicitHierarchy(value); return *this;} /** *

The option that determines the hierarchy of the fields that are built within * a visual's field wells. These fields can't be duplicated to other visuals.

*/ inline ColumnHierarchy& WithExplicitHierarchy(ExplicitHierarchy&& value) { SetExplicitHierarchy(std::move(value)); return *this;} /** *

The option that determines the hierarchy of any DateTime * fields.

*/ inline const DateTimeHierarchy& GetDateTimeHierarchy() const{ return m_dateTimeHierarchy; } /** *

The option that determines the hierarchy of any DateTime * fields.

*/ inline bool DateTimeHierarchyHasBeenSet() const { return m_dateTimeHierarchyHasBeenSet; } /** *

The option that determines the hierarchy of any DateTime * fields.

*/ inline void SetDateTimeHierarchy(const DateTimeHierarchy& value) { m_dateTimeHierarchyHasBeenSet = true; m_dateTimeHierarchy = value; } /** *

The option that determines the hierarchy of any DateTime * fields.

*/ inline void SetDateTimeHierarchy(DateTimeHierarchy&& value) { m_dateTimeHierarchyHasBeenSet = true; m_dateTimeHierarchy = std::move(value); } /** *

The option that determines the hierarchy of any DateTime * fields.

*/ inline ColumnHierarchy& WithDateTimeHierarchy(const DateTimeHierarchy& value) { SetDateTimeHierarchy(value); return *this;} /** *

The option that determines the hierarchy of any DateTime * fields.

*/ inline ColumnHierarchy& WithDateTimeHierarchy(DateTimeHierarchy&& value) { SetDateTimeHierarchy(std::move(value)); return *this;} /** *

The option that determines the hierarchy of the fields that are defined * during data preparation. These fields are available to use in any analysis that * uses the data source.

*/ inline const PredefinedHierarchy& GetPredefinedHierarchy() const{ return m_predefinedHierarchy; } /** *

The option that determines the hierarchy of the fields that are defined * during data preparation. These fields are available to use in any analysis that * uses the data source.

*/ inline bool PredefinedHierarchyHasBeenSet() const { return m_predefinedHierarchyHasBeenSet; } /** *

The option that determines the hierarchy of the fields that are defined * during data preparation. These fields are available to use in any analysis that * uses the data source.

*/ inline void SetPredefinedHierarchy(const PredefinedHierarchy& value) { m_predefinedHierarchyHasBeenSet = true; m_predefinedHierarchy = value; } /** *

The option that determines the hierarchy of the fields that are defined * during data preparation. These fields are available to use in any analysis that * uses the data source.

*/ inline void SetPredefinedHierarchy(PredefinedHierarchy&& value) { m_predefinedHierarchyHasBeenSet = true; m_predefinedHierarchy = std::move(value); } /** *

The option that determines the hierarchy of the fields that are defined * during data preparation. These fields are available to use in any analysis that * uses the data source.

*/ inline ColumnHierarchy& WithPredefinedHierarchy(const PredefinedHierarchy& value) { SetPredefinedHierarchy(value); return *this;} /** *

The option that determines the hierarchy of the fields that are defined * during data preparation. These fields are available to use in any analysis that * uses the data source.

*/ inline ColumnHierarchy& WithPredefinedHierarchy(PredefinedHierarchy&& value) { SetPredefinedHierarchy(std::move(value)); return *this;} private: ExplicitHierarchy m_explicitHierarchy; bool m_explicitHierarchyHasBeenSet = false; DateTimeHierarchy m_dateTimeHierarchy; bool m_dateTimeHierarchyHasBeenSet = false; PredefinedHierarchy m_predefinedHierarchy; bool m_predefinedHierarchyHasBeenSet = false; }; } // namespace Model } // namespace QuickSight } // namespace Aws