AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
CalendarInterval.h
1
6#pragma once
7#include <aws/application-signals/ApplicationSignals_EXPORTS.h>
8#include <aws/application-signals/model/DurationUnit.h>
9#include <aws/core/utils/DateTime.h>
10
11#include <utility>
12
13namespace Aws {
14namespace Utils {
15namespace Json {
16class JsonValue;
17class JsonView;
18} // namespace Json
19} // namespace Utils
20namespace ApplicationSignals {
21namespace Model {
22
30 public:
31 AWS_APPLICATIONSIGNALS_API CalendarInterval() = default;
32 AWS_APPLICATIONSIGNALS_API CalendarInterval(Aws::Utils::Json::JsonView jsonValue);
33 AWS_APPLICATIONSIGNALS_API CalendarInterval& operator=(Aws::Utils::Json::JsonView jsonValue);
34 AWS_APPLICATIONSIGNALS_API Aws::Utils::Json::JsonValue Jsonize() const;
35
37
46 inline const Aws::Utils::DateTime& GetStartTime() const { return m_startTime; }
47 inline bool StartTimeHasBeenSet() const { return m_startTimeHasBeenSet; }
48 template <typename StartTimeT = Aws::Utils::DateTime>
49 void SetStartTime(StartTimeT&& value) {
50 m_startTimeHasBeenSet = true;
51 m_startTime = std::forward<StartTimeT>(value);
52 }
53 template <typename StartTimeT = Aws::Utils::DateTime>
54 CalendarInterval& WithStartTime(StartTimeT&& value) {
55 SetStartTime(std::forward<StartTimeT>(value));
56 return *this;
57 }
59
61
64 inline DurationUnit GetDurationUnit() const { return m_durationUnit; }
65 inline bool DurationUnitHasBeenSet() const { return m_durationUnitHasBeenSet; }
66 inline void SetDurationUnit(DurationUnit value) {
67 m_durationUnitHasBeenSet = true;
68 m_durationUnit = value;
69 }
71 SetDurationUnit(value);
72 return *this;
73 }
75
77
82 inline int GetDuration() const { return m_duration; }
83 inline bool DurationHasBeenSet() const { return m_durationHasBeenSet; }
84 inline void SetDuration(int value) {
85 m_durationHasBeenSet = true;
86 m_duration = value;
87 }
88 inline CalendarInterval& WithDuration(int value) {
89 SetDuration(value);
90 return *this;
91 }
93 private:
94 Aws::Utils::DateTime m_startTime{};
95
96 DurationUnit m_durationUnit{DurationUnit::NOT_SET};
97
98 int m_duration{0};
99 bool m_startTimeHasBeenSet = false;
100 bool m_durationUnitHasBeenSet = false;
101 bool m_durationHasBeenSet = false;
102};
103
104} // namespace Model
105} // namespace ApplicationSignals
106} // namespace Aws
CalendarInterval & WithDurationUnit(DurationUnit value)
AWS_APPLICATIONSIGNALS_API CalendarInterval & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_APPLICATIONSIGNALS_API CalendarInterval()=default
const Aws::Utils::DateTime & GetStartTime() const
AWS_APPLICATIONSIGNALS_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_APPLICATIONSIGNALS_API CalendarInterval(Aws::Utils::Json::JsonView jsonValue)
CalendarInterval & WithStartTime(StartTimeT &&value)
Aws::Utils::Json::JsonValue JsonValue