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

The time range.

See Also:

AWS * API Reference

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

The start time, in Unix time in seconds.

*/ inline const Aws::Utils::DateTime& GetFromInclusive() const{ return m_fromInclusive; } /** *

The start time, in Unix time in seconds.

*/ inline bool FromInclusiveHasBeenSet() const { return m_fromInclusiveHasBeenSet; } /** *

The start time, in Unix time in seconds.

*/ inline void SetFromInclusive(const Aws::Utils::DateTime& value) { m_fromInclusiveHasBeenSet = true; m_fromInclusive = value; } /** *

The start time, in Unix time in seconds.

*/ inline void SetFromInclusive(Aws::Utils::DateTime&& value) { m_fromInclusiveHasBeenSet = true; m_fromInclusive = std::move(value); } /** *

The start time, in Unix time in seconds.

*/ inline TimeRange& WithFromInclusive(const Aws::Utils::DateTime& value) { SetFromInclusive(value); return *this;} /** *

The start time, in Unix time in seconds.

*/ inline TimeRange& WithFromInclusive(Aws::Utils::DateTime&& value) { SetFromInclusive(std::move(value)); return *this;} /** *

The end time, in Unix time in seconds.

*/ inline const Aws::Utils::DateTime& GetToExclusive() const{ return m_toExclusive; } /** *

The end time, in Unix time in seconds.

*/ inline bool ToExclusiveHasBeenSet() const { return m_toExclusiveHasBeenSet; } /** *

The end time, in Unix time in seconds.

*/ inline void SetToExclusive(const Aws::Utils::DateTime& value) { m_toExclusiveHasBeenSet = true; m_toExclusive = value; } /** *

The end time, in Unix time in seconds.

*/ inline void SetToExclusive(Aws::Utils::DateTime&& value) { m_toExclusiveHasBeenSet = true; m_toExclusive = std::move(value); } /** *

The end time, in Unix time in seconds.

*/ inline TimeRange& WithToExclusive(const Aws::Utils::DateTime& value) { SetToExclusive(value); return *this;} /** *

The end time, in Unix time in seconds.

*/ inline TimeRange& WithToExclusive(Aws::Utils::DateTime&& value) { SetToExclusive(std::move(value)); return *this;} private: Aws::Utils::DateTime m_fromInclusive; bool m_fromInclusiveHasBeenSet = false; Aws::Utils::DateTime m_toExclusive; bool m_toExclusiveHasBeenSet = false; }; } // namespace Model } // namespace Shield } // namespace Aws