AWS SDK for C++

AWS SDK for C++ Version 1.11.694

Loading...
Searching...
No Matches
Interval.h
1
6#pragma once
7#include <aws/application-signals/ApplicationSignals_EXPORTS.h>
8#include <aws/application-signals/model/CalendarInterval.h>
9#include <aws/application-signals/model/RollingInterval.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
29class Interval {
30 public:
31 AWS_APPLICATIONSIGNALS_API Interval() = default;
32 AWS_APPLICATIONSIGNALS_API Interval(Aws::Utils::Json::JsonView jsonValue);
33 AWS_APPLICATIONSIGNALS_API Interval& operator=(Aws::Utils::Json::JsonView jsonValue);
34 AWS_APPLICATIONSIGNALS_API Aws::Utils::Json::JsonValue Jsonize() const;
35
37
41 inline const RollingInterval& GetRollingInterval() const { return m_rollingInterval; }
42 inline bool RollingIntervalHasBeenSet() const { return m_rollingIntervalHasBeenSet; }
43 template <typename RollingIntervalT = RollingInterval>
44 void SetRollingInterval(RollingIntervalT&& value) {
45 m_rollingIntervalHasBeenSet = true;
46 m_rollingInterval = std::forward<RollingIntervalT>(value);
47 }
48 template <typename RollingIntervalT = RollingInterval>
49 Interval& WithRollingInterval(RollingIntervalT&& value) {
50 SetRollingInterval(std::forward<RollingIntervalT>(value));
51 return *this;
52 }
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) {
64 m_calendarIntervalHasBeenSet = true;
65 m_calendarInterval = std::forward<CalendarIntervalT>(value);
66 }
67 template <typename CalendarIntervalT = CalendarInterval>
68 Interval& WithCalendarInterval(CalendarIntervalT&& value) {
69 SetCalendarInterval(std::forward<CalendarIntervalT>(value));
70 return *this;
71 }
73 private:
74 RollingInterval m_rollingInterval;
75 bool m_rollingIntervalHasBeenSet = false;
76
77 CalendarInterval m_calendarInterval;
78 bool m_calendarIntervalHasBeenSet = false;
79};
80
81} // namespace Model
82} // namespace ApplicationSignals
83} // namespace Aws
Interval & WithRollingInterval(RollingIntervalT &&value)
Definition Interval.h:49
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:44
Interval & WithCalendarInterval(CalendarIntervalT &&value)
Definition Interval.h:68
AWS_APPLICATIONSIGNALS_API Interval(Aws::Utils::Json::JsonView jsonValue)
const RollingInterval & GetRollingInterval() const
Definition Interval.h:41
AWS_APPLICATIONSIGNALS_API Interval & operator=(Aws::Utils::Json::JsonView jsonValue)
Aws::Utils::Json::JsonValue JsonValue