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

The lookback window setup of an incremental refresh * configuration.

See Also:

AWS * API Reference

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

The name of the lookback window column.

*/ inline const Aws::String& GetColumnName() const{ return m_columnName; } /** *

The name of the lookback window column.

*/ inline bool ColumnNameHasBeenSet() const { return m_columnNameHasBeenSet; } /** *

The name of the lookback window column.

*/ inline void SetColumnName(const Aws::String& value) { m_columnNameHasBeenSet = true; m_columnName = value; } /** *

The name of the lookback window column.

*/ inline void SetColumnName(Aws::String&& value) { m_columnNameHasBeenSet = true; m_columnName = std::move(value); } /** *

The name of the lookback window column.

*/ inline void SetColumnName(const char* value) { m_columnNameHasBeenSet = true; m_columnName.assign(value); } /** *

The name of the lookback window column.

*/ inline LookbackWindow& WithColumnName(const Aws::String& value) { SetColumnName(value); return *this;} /** *

The name of the lookback window column.

*/ inline LookbackWindow& WithColumnName(Aws::String&& value) { SetColumnName(std::move(value)); return *this;} /** *

The name of the lookback window column.

*/ inline LookbackWindow& WithColumnName(const char* value) { SetColumnName(value); return *this;} /** *

The lookback window column size.

*/ inline long long GetSize() const{ return m_size; } /** *

The lookback window column size.

*/ inline bool SizeHasBeenSet() const { return m_sizeHasBeenSet; } /** *

The lookback window column size.

*/ inline void SetSize(long long value) { m_sizeHasBeenSet = true; m_size = value; } /** *

The lookback window column size.

*/ inline LookbackWindow& WithSize(long long value) { SetSize(value); return *this;} /** *

The size unit that is used for the lookback window column. Valid values for * this structure are HOUR, DAY, and * WEEK.

*/ inline const LookbackWindowSizeUnit& GetSizeUnit() const{ return m_sizeUnit; } /** *

The size unit that is used for the lookback window column. Valid values for * this structure are HOUR, DAY, and * WEEK.

*/ inline bool SizeUnitHasBeenSet() const { return m_sizeUnitHasBeenSet; } /** *

The size unit that is used for the lookback window column. Valid values for * this structure are HOUR, DAY, and * WEEK.

*/ inline void SetSizeUnit(const LookbackWindowSizeUnit& value) { m_sizeUnitHasBeenSet = true; m_sizeUnit = value; } /** *

The size unit that is used for the lookback window column. Valid values for * this structure are HOUR, DAY, and * WEEK.

*/ inline void SetSizeUnit(LookbackWindowSizeUnit&& value) { m_sizeUnitHasBeenSet = true; m_sizeUnit = std::move(value); } /** *

The size unit that is used for the lookback window column. Valid values for * this structure are HOUR, DAY, and * WEEK.

*/ inline LookbackWindow& WithSizeUnit(const LookbackWindowSizeUnit& value) { SetSizeUnit(value); return *this;} /** *

The size unit that is used for the lookback window column. Valid values for * this structure are HOUR, DAY, and * WEEK.

*/ inline LookbackWindow& WithSizeUnit(LookbackWindowSizeUnit&& value) { SetSizeUnit(std::move(value)); return *this;} private: Aws::String m_columnName; bool m_columnNameHasBeenSet = false; long long m_size; bool m_sizeHasBeenSet = false; LookbackWindowSizeUnit m_sizeUnit; bool m_sizeUnitHasBeenSet = false; }; } // namespace Model } // namespace QuickSight } // namespace Aws