AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
Interval.h
1
6#pragma once
7#include <aws/application-signals/ApplicationSignals_EXPORTS.h>
8#include <aws/application-signals/model/RollingInterval.h>
9#include <aws/application-signals/model/CalendarInterval.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 Interval() = default;
37 AWS_APPLICATIONSIGNALS_API Interval(Aws::Utils::Json::JsonView jsonValue);
38 AWS_APPLICATIONSIGNALS_API Interval& operator=(Aws::Utils::Json::JsonView jsonValue);
39 AWS_APPLICATIONSIGNALS_API Aws::Utils::Json::JsonValue Jsonize() const;
40
41
43
47 inline const RollingInterval& GetRollingInterval() const { return m_rollingInterval; }
48 inline bool RollingIntervalHasBeenSet() const { return m_rollingIntervalHasBeenSet; }
49 template<typename RollingIntervalT = RollingInterval>
50 void SetRollingInterval(RollingIntervalT&& value) { m_rollingIntervalHasBeenSet = true; m_rollingInterval = std::forward<RollingIntervalT>(value); }
51 template<typename RollingIntervalT = RollingInterval>
52 Interval& WithRollingInterval(RollingIntervalT&& value) { SetRollingInterval(std::forward<RollingIntervalT>(value)); return *this;}
54
56
60 inline const CalendarInterval& GetCalendarInterval() const { return m_calendarInterval; }
61 inline bool CalendarIntervalHasBeenSet() const { return m_calendarIntervalHasBeenSet; }
62 template<typename CalendarIntervalT = CalendarInterval>
63 void SetCalendarInterval(CalendarIntervalT&& value) { m_calendarIntervalHasBeenSet = true; m_calendarInterval = std::forward<CalendarIntervalT>(value); }
64 template<typename CalendarIntervalT = CalendarInterval>
65 Interval& WithCalendarInterval(CalendarIntervalT&& value) { SetCalendarInterval(std::forward<CalendarIntervalT>(value)); return *this;}
67 private:
68
69 RollingInterval m_rollingInterval;
70 bool m_rollingIntervalHasBeenSet = false;
71
72 CalendarInterval m_calendarInterval;
73 bool m_calendarIntervalHasBeenSet = false;
74 };
75
76} // namespace Model
77} // namespace ApplicationSignals
78} // namespace Aws
Interval & WithRollingInterval(RollingIntervalT &&value)
Definition Interval.h:52
const CalendarInterval & GetCalendarInterval() const
Definition Interval.h:60
AWS_APPLICATIONSIGNALS_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_APPLICATIONSIGNALS_API Interval()=default
void SetCalendarInterval(CalendarIntervalT &&value)
Definition Interval.h:63
void SetRollingInterval(RollingIntervalT &&value)
Definition Interval.h:50
Interval & WithCalendarInterval(CalendarIntervalT &&value)
Definition Interval.h:65
AWS_APPLICATIONSIGNALS_API Interval(Aws::Utils::Json::JsonView jsonValue)
const RollingInterval & GetRollingInterval() const
Definition Interval.h:47
AWS_APPLICATIONSIGNALS_API Interval & operator=(Aws::Utils::Json::JsonView jsonValue)
Aws::Utils::Json::JsonValue JsonValue