AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
CreateProfileRequest.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/rolesanywhere/RolesAnywhereRequest.h>
10#include <aws/rolesanywhere/RolesAnywhere_EXPORTS.h>
11#include <aws/rolesanywhere/model/Tag.h>
12
13#include <utility>
14
15namespace Aws {
16namespace RolesAnywhere {
17namespace Model {
18
22 public:
23 AWS_ROLESANYWHERE_API CreateProfileRequest() = default;
24
25 // Service request name is the Operation name which will send this request out,
26 // each operation should has unique request name, so that we can get operation's name from this request.
27 // Note: this is not true for response, multiple operations may have the same response name,
28 // so we can not get operation's name from response.
29 inline virtual const char* GetServiceRequestName() const override { return "CreateProfile"; }
30
31 AWS_ROLESANYWHERE_API Aws::String SerializePayload() const override;
32
34
37 inline const Aws::String& GetName() const { return m_name; }
38 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
39 template <typename NameT = Aws::String>
40 void SetName(NameT&& value) {
41 m_nameHasBeenSet = true;
42 m_name = std::forward<NameT>(value);
43 }
44 template <typename NameT = Aws::String>
46 SetName(std::forward<NameT>(value));
47 return *this;
48 }
50
52
56 inline bool GetRequireInstanceProperties() const { return m_requireInstanceProperties; }
57 inline bool RequireInstancePropertiesHasBeenSet() const { return m_requireInstancePropertiesHasBeenSet; }
58 inline void SetRequireInstanceProperties(bool value) {
59 m_requireInstancePropertiesHasBeenSet = true;
60 m_requireInstanceProperties = value;
61 }
64 return *this;
65 }
67
69
73 inline const Aws::String& GetSessionPolicy() const { return m_sessionPolicy; }
74 inline bool SessionPolicyHasBeenSet() const { return m_sessionPolicyHasBeenSet; }
75 template <typename SessionPolicyT = Aws::String>
76 void SetSessionPolicy(SessionPolicyT&& value) {
77 m_sessionPolicyHasBeenSet = true;
78 m_sessionPolicy = std::forward<SessionPolicyT>(value);
79 }
80 template <typename SessionPolicyT = Aws::String>
81 CreateProfileRequest& WithSessionPolicy(SessionPolicyT&& value) {
82 SetSessionPolicy(std::forward<SessionPolicyT>(value));
83 return *this;
84 }
86
88
92 inline const Aws::Vector<Aws::String>& GetRoleArns() const { return m_roleArns; }
93 inline bool RoleArnsHasBeenSet() const { return m_roleArnsHasBeenSet; }
94 template <typename RoleArnsT = Aws::Vector<Aws::String>>
95 void SetRoleArns(RoleArnsT&& value) {
96 m_roleArnsHasBeenSet = true;
97 m_roleArns = std::forward<RoleArnsT>(value);
98 }
99 template <typename RoleArnsT = Aws::Vector<Aws::String>>
100 CreateProfileRequest& WithRoleArns(RoleArnsT&& value) {
101 SetRoleArns(std::forward<RoleArnsT>(value));
102 return *this;
103 }
104 template <typename RoleArnsT = Aws::String>
105 CreateProfileRequest& AddRoleArns(RoleArnsT&& value) {
106 m_roleArnsHasBeenSet = true;
107 m_roleArns.emplace_back(std::forward<RoleArnsT>(value));
108 return *this;
109 }
111
113
117 inline const Aws::Vector<Aws::String>& GetManagedPolicyArns() const { return m_managedPolicyArns; }
118 inline bool ManagedPolicyArnsHasBeenSet() const { return m_managedPolicyArnsHasBeenSet; }
119 template <typename ManagedPolicyArnsT = Aws::Vector<Aws::String>>
120 void SetManagedPolicyArns(ManagedPolicyArnsT&& value) {
121 m_managedPolicyArnsHasBeenSet = true;
122 m_managedPolicyArns = std::forward<ManagedPolicyArnsT>(value);
123 }
124 template <typename ManagedPolicyArnsT = Aws::Vector<Aws::String>>
125 CreateProfileRequest& WithManagedPolicyArns(ManagedPolicyArnsT&& value) {
126 SetManagedPolicyArns(std::forward<ManagedPolicyArnsT>(value));
127 return *this;
128 }
129 template <typename ManagedPolicyArnsT = Aws::String>
130 CreateProfileRequest& AddManagedPolicyArns(ManagedPolicyArnsT&& value) {
131 m_managedPolicyArnsHasBeenSet = true;
132 m_managedPolicyArns.emplace_back(std::forward<ManagedPolicyArnsT>(value));
133 return *this;
134 }
136
138
145 inline int GetDurationSeconds() const { return m_durationSeconds; }
146 inline bool DurationSecondsHasBeenSet() const { return m_durationSecondsHasBeenSet; }
147 inline void SetDurationSeconds(int value) {
148 m_durationSecondsHasBeenSet = true;
149 m_durationSeconds = value;
150 }
152 SetDurationSeconds(value);
153 return *this;
154 }
156
158
161 inline bool GetEnabled() const { return m_enabled; }
162 inline bool EnabledHasBeenSet() const { return m_enabledHasBeenSet; }
163 inline void SetEnabled(bool value) {
164 m_enabledHasBeenSet = true;
165 m_enabled = value;
166 }
167 inline CreateProfileRequest& WithEnabled(bool value) {
168 SetEnabled(value);
169 return *this;
170 }
172
174
177 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
178 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
179 template <typename TagsT = Aws::Vector<Tag>>
180 void SetTags(TagsT&& value) {
181 m_tagsHasBeenSet = true;
182 m_tags = std::forward<TagsT>(value);
183 }
184 template <typename TagsT = Aws::Vector<Tag>>
186 SetTags(std::forward<TagsT>(value));
187 return *this;
188 }
189 template <typename TagsT = Tag>
191 m_tagsHasBeenSet = true;
192 m_tags.emplace_back(std::forward<TagsT>(value));
193 return *this;
194 }
196
198
202 inline bool GetAcceptRoleSessionName() const { return m_acceptRoleSessionName; }
203 inline bool AcceptRoleSessionNameHasBeenSet() const { return m_acceptRoleSessionNameHasBeenSet; }
204 inline void SetAcceptRoleSessionName(bool value) {
205 m_acceptRoleSessionNameHasBeenSet = true;
206 m_acceptRoleSessionName = value;
207 }
210 return *this;
211 }
213 private:
214 Aws::String m_name;
215
216 bool m_requireInstanceProperties{false};
217
218 Aws::String m_sessionPolicy;
219
220 Aws::Vector<Aws::String> m_roleArns;
221
222 Aws::Vector<Aws::String> m_managedPolicyArns;
223
224 int m_durationSeconds{0};
225
226 bool m_enabled{false};
227
228 Aws::Vector<Tag> m_tags;
229
230 bool m_acceptRoleSessionName{false};
231 bool m_nameHasBeenSet = false;
232 bool m_requireInstancePropertiesHasBeenSet = false;
233 bool m_sessionPolicyHasBeenSet = false;
234 bool m_roleArnsHasBeenSet = false;
235 bool m_managedPolicyArnsHasBeenSet = false;
236 bool m_durationSecondsHasBeenSet = false;
237 bool m_enabledHasBeenSet = false;
238 bool m_tagsHasBeenSet = false;
239 bool m_acceptRoleSessionNameHasBeenSet = false;
240};
241
242} // namespace Model
243} // namespace RolesAnywhere
244} // namespace Aws
CreateProfileRequest & WithSessionPolicy(SessionPolicyT &&value)
CreateProfileRequest & WithName(NameT &&value)
CreateProfileRequest & WithTags(TagsT &&value)
virtual const char * GetServiceRequestName() const override
CreateProfileRequest & WithAcceptRoleSessionName(bool value)
AWS_ROLESANYWHERE_API CreateProfileRequest()=default
CreateProfileRequest & WithManagedPolicyArns(ManagedPolicyArnsT &&value)
CreateProfileRequest & WithRequireInstanceProperties(bool value)
const Aws::Vector< Aws::String > & GetManagedPolicyArns() const
void SetManagedPolicyArns(ManagedPolicyArnsT &&value)
CreateProfileRequest & WithRoleArns(RoleArnsT &&value)
AWS_ROLESANYWHERE_API Aws::String SerializePayload() const override
const Aws::Vector< Aws::String > & GetRoleArns() const
CreateProfileRequest & AddManagedPolicyArns(ManagedPolicyArnsT &&value)
CreateProfileRequest & AddTags(TagsT &&value)
CreateProfileRequest & AddRoleArns(RoleArnsT &&value)
CreateProfileRequest & WithDurationSeconds(int value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector