AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
ExclusionWindow.h
1
6#pragma once
7#include <aws/application-signals/ApplicationSignals_EXPORTS.h>
8#include <aws/application-signals/model/Window.h>
9#include <aws/core/utils/DateTime.h>
10#include <aws/application-signals/model/RecurrenceRule.h>
11#include <aws/core/utils/memory/stl/AWSString.h>
12#include <utility>
13
14namespace Aws
15{
16namespace Utils
17{
18namespace Json
19{
20 class JsonValue;
21 class JsonView;
22} // namespace Json
23} // namespace Utils
24namespace ApplicationSignals
25{
26namespace Model
27{
28
36 {
37 public:
38 AWS_APPLICATIONSIGNALS_API ExclusionWindow() = default;
39 AWS_APPLICATIONSIGNALS_API ExclusionWindow(Aws::Utils::Json::JsonView jsonValue);
40 AWS_APPLICATIONSIGNALS_API ExclusionWindow& operator=(Aws::Utils::Json::JsonView jsonValue);
41 AWS_APPLICATIONSIGNALS_API Aws::Utils::Json::JsonValue Jsonize() const;
42
43
45
48 inline const Window& GetWindow() const { return m_window; }
49 inline bool WindowHasBeenSet() const { return m_windowHasBeenSet; }
50 template<typename WindowT = Window>
51 void SetWindow(WindowT&& value) { m_windowHasBeenSet = true; m_window = std::forward<WindowT>(value); }
52 template<typename WindowT = Window>
53 ExclusionWindow& WithWindow(WindowT&& value) { SetWindow(std::forward<WindowT>(value)); return *this;}
55
57
61 inline const Aws::Utils::DateTime& GetStartTime() const { return m_startTime; }
62 inline bool StartTimeHasBeenSet() const { return m_startTimeHasBeenSet; }
63 template<typename StartTimeT = Aws::Utils::DateTime>
64 void SetStartTime(StartTimeT&& value) { m_startTimeHasBeenSet = true; m_startTime = std::forward<StartTimeT>(value); }
65 template<typename StartTimeT = Aws::Utils::DateTime>
66 ExclusionWindow& WithStartTime(StartTimeT&& value) { SetStartTime(std::forward<StartTimeT>(value)); return *this;}
68
70
74 inline const RecurrenceRule& GetRecurrenceRule() const { return m_recurrenceRule; }
75 inline bool RecurrenceRuleHasBeenSet() const { return m_recurrenceRuleHasBeenSet; }
76 template<typename RecurrenceRuleT = RecurrenceRule>
77 void SetRecurrenceRule(RecurrenceRuleT&& value) { m_recurrenceRuleHasBeenSet = true; m_recurrenceRule = std::forward<RecurrenceRuleT>(value); }
78 template<typename RecurrenceRuleT = RecurrenceRule>
79 ExclusionWindow& WithRecurrenceRule(RecurrenceRuleT&& value) { SetRecurrenceRule(std::forward<RecurrenceRuleT>(value)); return *this;}
81
83
87 inline const Aws::String& GetReason() const { return m_reason; }
88 inline bool ReasonHasBeenSet() const { return m_reasonHasBeenSet; }
89 template<typename ReasonT = Aws::String>
90 void SetReason(ReasonT&& value) { m_reasonHasBeenSet = true; m_reason = std::forward<ReasonT>(value); }
91 template<typename ReasonT = Aws::String>
92 ExclusionWindow& WithReason(ReasonT&& value) { SetReason(std::forward<ReasonT>(value)); return *this;}
94 private:
95
96 Window m_window;
97 bool m_windowHasBeenSet = false;
98
99 Aws::Utils::DateTime m_startTime{};
100 bool m_startTimeHasBeenSet = false;
101
102 RecurrenceRule m_recurrenceRule;
103 bool m_recurrenceRuleHasBeenSet = false;
104
105 Aws::String m_reason;
106 bool m_reasonHasBeenSet = false;
107 };
108
109} // namespace Model
110} // namespace ApplicationSignals
111} // namespace Aws
const Aws::Utils::DateTime & GetStartTime() const
void SetRecurrenceRule(RecurrenceRuleT &&value)
ExclusionWindow & WithRecurrenceRule(RecurrenceRuleT &&value)
AWS_APPLICATIONSIGNALS_API ExclusionWindow()=default
const RecurrenceRule & GetRecurrenceRule() const
ExclusionWindow & WithReason(ReasonT &&value)
ExclusionWindow & WithWindow(WindowT &&value)
AWS_APPLICATIONSIGNALS_API ExclusionWindow & operator=(Aws::Utils::Json::JsonView jsonValue)
ExclusionWindow & WithStartTime(StartTimeT &&value)
AWS_APPLICATIONSIGNALS_API ExclusionWindow(Aws::Utils::Json::JsonView jsonValue)
AWS_APPLICATIONSIGNALS_API Aws::Utils::Json::JsonValue Jsonize() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue