AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
CreateRotationRequest.h
1
6#pragma once
7#include <aws/ssm-contacts/SSMContacts_EXPORTS.h>
8#include <aws/ssm-contacts/SSMContactsRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/core/utils/DateTime.h>
12#include <aws/ssm-contacts/model/RecurrenceSettings.h>
13#include <aws/ssm-contacts/model/Tag.h>
14#include <utility>
15
16namespace Aws
17{
18namespace SSMContacts
19{
20namespace Model
21{
22
26 {
27 public:
28 AWS_SSMCONTACTS_API CreateRotationRequest() = default;
29
30 // Service request name is the Operation name which will send this request out,
31 // each operation should has unique request name, so that we can get operation's name from this request.
32 // Note: this is not true for response, multiple operations may have the same response name,
33 // so we can not get operation's name from response.
34 inline virtual const char* GetServiceRequestName() const override { return "CreateRotation"; }
35
36 AWS_SSMCONTACTS_API Aws::String SerializePayload() const override;
37
38 AWS_SSMCONTACTS_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
39
40
42
45 inline const Aws::String& GetName() const { return m_name; }
46 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
47 template<typename NameT = Aws::String>
48 void SetName(NameT&& value) { m_nameHasBeenSet = true; m_name = std::forward<NameT>(value); }
49 template<typename NameT = Aws::String>
50 CreateRotationRequest& WithName(NameT&& value) { SetName(std::forward<NameT>(value)); return *this;}
52
54
60 inline const Aws::Vector<Aws::String>& GetContactIds() const { return m_contactIds; }
61 inline bool ContactIdsHasBeenSet() const { return m_contactIdsHasBeenSet; }
62 template<typename ContactIdsT = Aws::Vector<Aws::String>>
63 void SetContactIds(ContactIdsT&& value) { m_contactIdsHasBeenSet = true; m_contactIds = std::forward<ContactIdsT>(value); }
64 template<typename ContactIdsT = Aws::Vector<Aws::String>>
65 CreateRotationRequest& WithContactIds(ContactIdsT&& value) { SetContactIds(std::forward<ContactIdsT>(value)); return *this;}
66 template<typename ContactIdsT = Aws::String>
67 CreateRotationRequest& AddContactIds(ContactIdsT&& value) { m_contactIdsHasBeenSet = true; m_contactIds.emplace_back(std::forward<ContactIdsT>(value)); return *this; }
69
71
74 inline const Aws::Utils::DateTime& GetStartTime() const { return m_startTime; }
75 inline bool StartTimeHasBeenSet() const { return m_startTimeHasBeenSet; }
76 template<typename StartTimeT = Aws::Utils::DateTime>
77 void SetStartTime(StartTimeT&& value) { m_startTimeHasBeenSet = true; m_startTime = std::forward<StartTimeT>(value); }
78 template<typename StartTimeT = Aws::Utils::DateTime>
79 CreateRotationRequest& WithStartTime(StartTimeT&& value) { SetStartTime(std::forward<StartTimeT>(value)); return *this;}
81
83
92 inline const Aws::String& GetTimeZoneId() const { return m_timeZoneId; }
93 inline bool TimeZoneIdHasBeenSet() const { return m_timeZoneIdHasBeenSet; }
94 template<typename TimeZoneIdT = Aws::String>
95 void SetTimeZoneId(TimeZoneIdT&& value) { m_timeZoneIdHasBeenSet = true; m_timeZoneId = std::forward<TimeZoneIdT>(value); }
96 template<typename TimeZoneIdT = Aws::String>
97 CreateRotationRequest& WithTimeZoneId(TimeZoneIdT&& value) { SetTimeZoneId(std::forward<TimeZoneIdT>(value)); return *this;}
99
101
105 inline const RecurrenceSettings& GetRecurrence() const { return m_recurrence; }
106 inline bool RecurrenceHasBeenSet() const { return m_recurrenceHasBeenSet; }
107 template<typename RecurrenceT = RecurrenceSettings>
108 void SetRecurrence(RecurrenceT&& value) { m_recurrenceHasBeenSet = true; m_recurrence = std::forward<RecurrenceT>(value); }
109 template<typename RecurrenceT = RecurrenceSettings>
110 CreateRotationRequest& WithRecurrence(RecurrenceT&& value) { SetRecurrence(std::forward<RecurrenceT>(value)); return *this;}
112
114
121 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
122 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
123 template<typename TagsT = Aws::Vector<Tag>>
124 void SetTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags = std::forward<TagsT>(value); }
125 template<typename TagsT = Aws::Vector<Tag>>
126 CreateRotationRequest& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
127 template<typename TagsT = Tag>
128 CreateRotationRequest& AddTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags.emplace_back(std::forward<TagsT>(value)); return *this; }
130
132
136 inline const Aws::String& GetIdempotencyToken() const { return m_idempotencyToken; }
137 inline bool IdempotencyTokenHasBeenSet() const { return m_idempotencyTokenHasBeenSet; }
138 template<typename IdempotencyTokenT = Aws::String>
139 void SetIdempotencyToken(IdempotencyTokenT&& value) { m_idempotencyTokenHasBeenSet = true; m_idempotencyToken = std::forward<IdempotencyTokenT>(value); }
140 template<typename IdempotencyTokenT = Aws::String>
141 CreateRotationRequest& WithIdempotencyToken(IdempotencyTokenT&& value) { SetIdempotencyToken(std::forward<IdempotencyTokenT>(value)); return *this;}
143 private:
144
145 Aws::String m_name;
146 bool m_nameHasBeenSet = false;
147
148 Aws::Vector<Aws::String> m_contactIds;
149 bool m_contactIdsHasBeenSet = false;
150
151 Aws::Utils::DateTime m_startTime{};
152 bool m_startTimeHasBeenSet = false;
153
154 Aws::String m_timeZoneId;
155 bool m_timeZoneIdHasBeenSet = false;
156
157 RecurrenceSettings m_recurrence;
158 bool m_recurrenceHasBeenSet = false;
159
160 Aws::Vector<Tag> m_tags;
161 bool m_tagsHasBeenSet = false;
162
163 Aws::String m_idempotencyToken;
164 bool m_idempotencyTokenHasBeenSet = false;
165 };
166
167} // namespace Model
168} // namespace SSMContacts
169} // namespace Aws
CreateRotationRequest & WithTags(TagsT &&value)
AWS_SSMCONTACTS_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
virtual const char * GetServiceRequestName() const override
const Aws::Utils::DateTime & GetStartTime() const
CreateRotationRequest & WithRecurrence(RecurrenceT &&value)
CreateRotationRequest & WithName(NameT &&value)
const RecurrenceSettings & GetRecurrence() const
const Aws::Vector< Aws::String > & GetContactIds() const
CreateRotationRequest & AddContactIds(ContactIdsT &&value)
AWS_SSMCONTACTS_API Aws::String SerializePayload() const override
CreateRotationRequest & WithContactIds(ContactIdsT &&value)
CreateRotationRequest & AddTags(TagsT &&value)
CreateRotationRequest & WithStartTime(StartTimeT &&value)
CreateRotationRequest & WithIdempotencyToken(IdempotencyTokenT &&value)
CreateRotationRequest & WithTimeZoneId(TimeZoneIdT &&value)
AWS_SSMCONTACTS_API CreateRotationRequest()=default
Aws::Map< Aws::String, Aws::String > HeaderValueCollection
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector