AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
CalendarInterval.h
1
6#pragma once
7#include <aws/application-signals/ApplicationSignals_EXPORTS.h>
8#include <aws/core/utils/DateTime.h>
9#include <aws/application-signals/model/DurationUnit.h>
10#include <utility>
11
12namespace Aws
13{
14namespace Utils
15{
16namespace Json
17{
18 class JsonValue;
19 class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace ApplicationSignals
23{
24namespace Model
25{
26
34 {
35 public:
36 AWS_APPLICATIONSIGNALS_API CalendarInterval() = default;
37 AWS_APPLICATIONSIGNALS_API CalendarInterval(Aws::Utils::Json::JsonView jsonValue);
38 AWS_APPLICATIONSIGNALS_API CalendarInterval& operator=(Aws::Utils::Json::JsonView jsonValue);
39 AWS_APPLICATIONSIGNALS_API Aws::Utils::Json::JsonValue Jsonize() const;
40
41
43
52 inline const Aws::Utils::DateTime& GetStartTime() const { return m_startTime; }
53 inline bool StartTimeHasBeenSet() const { return m_startTimeHasBeenSet; }
54 template<typename StartTimeT = Aws::Utils::DateTime>
55 void SetStartTime(StartTimeT&& value) { m_startTimeHasBeenSet = true; m_startTime = std::forward<StartTimeT>(value); }
56 template<typename StartTimeT = Aws::Utils::DateTime>
57 CalendarInterval& WithStartTime(StartTimeT&& value) { SetStartTime(std::forward<StartTimeT>(value)); return *this;}
59
61
64 inline DurationUnit GetDurationUnit() const { return m_durationUnit; }
65 inline bool DurationUnitHasBeenSet() const { return m_durationUnitHasBeenSet; }
66 inline void SetDurationUnit(DurationUnit value) { m_durationUnitHasBeenSet = true; m_durationUnit = value; }
67 inline CalendarInterval& WithDurationUnit(DurationUnit value) { SetDurationUnit(value); return *this;}
69
71
76 inline int GetDuration() const { return m_duration; }
77 inline bool DurationHasBeenSet() const { return m_durationHasBeenSet; }
78 inline void SetDuration(int value) { m_durationHasBeenSet = true; m_duration = value; }
79 inline CalendarInterval& WithDuration(int value) { SetDuration(value); return *this;}
81 private:
82
83 Aws::Utils::DateTime m_startTime{};
84 bool m_startTimeHasBeenSet = false;
85
86 DurationUnit m_durationUnit{DurationUnit::NOT_SET};
87 bool m_durationUnitHasBeenSet = false;
88
89 int m_duration{0};
90 bool m_durationHasBeenSet = false;
91 };
92
93} // namespace Model
94} // namespace ApplicationSignals
95} // 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