AWS SDK for C++  0.12.9
AWS SDK for C++
UserDetail.h
Go to the documentation of this file.
1 /*
2 * Copyright 2010-2016 Amazon.com, Inc. or its affiliates. All Rights Reserved.
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License").
5 * You may not use this file except in compliance with the License.
6 * A copy of the License is located at
7 *
8 * http://aws.amazon.com/apache2.0
9 *
10 * or in the "license" file accompanying this file. This file is distributed
11 * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
12 * express or implied. See the License for the specific language governing
13 * permissions and limitations under the License.
14 */
15 #pragma once
16 #include <aws/iam/IAM_EXPORTS.h>
23 
24 namespace Aws
25 {
26 namespace Utils
27 {
28 namespace Xml
29 {
30  class XmlNode;
31 } // namespace Xml
32 } // namespace Utils
33 namespace IAM
34 {
35 namespace Model
36 {
37 
44  {
45  public:
46  UserDetail();
47  UserDetail(const Aws::Utils::Xml::XmlNode& xmlNode);
48  UserDetail& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
49 
50  void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
51  void OutputToStream(Aws::OStream& oStream, const char* location) const;
52 
58  inline const Aws::String& GetPath() const{ return m_path; }
59 
65  inline void SetPath(const Aws::String& value) { m_pathHasBeenSet = true; m_path = value; }
66 
72  inline void SetPath(Aws::String&& value) { m_pathHasBeenSet = true; m_path = value; }
73 
79  inline void SetPath(const char* value) { m_pathHasBeenSet = true; m_path.assign(value); }
80 
86  inline UserDetail& WithPath(const Aws::String& value) { SetPath(value); return *this;}
87 
93  inline UserDetail& WithPath(Aws::String&& value) { SetPath(value); return *this;}
94 
100  inline UserDetail& WithPath(const char* value) { SetPath(value); return *this;}
101 
105  inline const Aws::String& GetUserName() const{ return m_userName; }
106 
110  inline void SetUserName(const Aws::String& value) { m_userNameHasBeenSet = true; m_userName = value; }
111 
115  inline void SetUserName(Aws::String&& value) { m_userNameHasBeenSet = true; m_userName = value; }
116 
120  inline void SetUserName(const char* value) { m_userNameHasBeenSet = true; m_userName.assign(value); }
121 
125  inline UserDetail& WithUserName(const Aws::String& value) { SetUserName(value); return *this;}
126 
130  inline UserDetail& WithUserName(Aws::String&& value) { SetUserName(value); return *this;}
131 
135  inline UserDetail& WithUserName(const char* value) { SetUserName(value); return *this;}
136 
143  inline const Aws::String& GetUserId() const{ return m_userId; }
144 
151  inline void SetUserId(const Aws::String& value) { m_userIdHasBeenSet = true; m_userId = value; }
152 
159  inline void SetUserId(Aws::String&& value) { m_userIdHasBeenSet = true; m_userId = value; }
160 
167  inline void SetUserId(const char* value) { m_userIdHasBeenSet = true; m_userId.assign(value); }
168 
175  inline UserDetail& WithUserId(const Aws::String& value) { SetUserId(value); return *this;}
176 
183  inline UserDetail& WithUserId(Aws::String&& value) { SetUserId(value); return *this;}
184 
191  inline UserDetail& WithUserId(const char* value) { SetUserId(value); return *this;}
192 
193 
194  inline const Aws::String& GetArn() const{ return m_arn; }
195 
196 
197  inline void SetArn(const Aws::String& value) { m_arnHasBeenSet = true; m_arn = value; }
198 
199 
200  inline void SetArn(Aws::String&& value) { m_arnHasBeenSet = true; m_arn = value; }
201 
202 
203  inline void SetArn(const char* value) { m_arnHasBeenSet = true; m_arn.assign(value); }
204 
205 
206  inline UserDetail& WithArn(const Aws::String& value) { SetArn(value); return *this;}
207 
208 
209  inline UserDetail& WithArn(Aws::String&& value) { SetArn(value); return *this;}
210 
211 
212  inline UserDetail& WithArn(const char* value) { SetArn(value); return *this;}
213 
218  inline const Aws::Utils::DateTime& GetCreateDate() const{ return m_createDate; }
219 
224  inline void SetCreateDate(const Aws::Utils::DateTime& value) { m_createDateHasBeenSet = true; m_createDate = value; }
225 
230  inline void SetCreateDate(Aws::Utils::DateTime&& value) { m_createDateHasBeenSet = true; m_createDate = value; }
231 
236  inline UserDetail& WithCreateDate(const Aws::Utils::DateTime& value) { SetCreateDate(value); return *this;}
237 
242  inline UserDetail& WithCreateDate(Aws::Utils::DateTime&& value) { SetCreateDate(value); return *this;}
243 
247  inline const Aws::Vector<PolicyDetail>& GetUserPolicyList() const{ return m_userPolicyList; }
248 
252  inline void SetUserPolicyList(const Aws::Vector<PolicyDetail>& value) { m_userPolicyListHasBeenSet = true; m_userPolicyList = value; }
253 
257  inline void SetUserPolicyList(Aws::Vector<PolicyDetail>&& value) { m_userPolicyListHasBeenSet = true; m_userPolicyList = value; }
258 
262  inline UserDetail& WithUserPolicyList(const Aws::Vector<PolicyDetail>& value) { SetUserPolicyList(value); return *this;}
263 
267  inline UserDetail& WithUserPolicyList(Aws::Vector<PolicyDetail>&& value) { SetUserPolicyList(value); return *this;}
268 
272  inline UserDetail& AddUserPolicyList(const PolicyDetail& value) { m_userPolicyListHasBeenSet = true; m_userPolicyList.push_back(value); return *this; }
273 
277  inline UserDetail& AddUserPolicyList(PolicyDetail&& value) { m_userPolicyListHasBeenSet = true; m_userPolicyList.push_back(value); return *this; }
278 
282  inline const Aws::Vector<Aws::String>& GetGroupList() const{ return m_groupList; }
283 
287  inline void SetGroupList(const Aws::Vector<Aws::String>& value) { m_groupListHasBeenSet = true; m_groupList = value; }
288 
292  inline void SetGroupList(Aws::Vector<Aws::String>&& value) { m_groupListHasBeenSet = true; m_groupList = value; }
293 
297  inline UserDetail& WithGroupList(const Aws::Vector<Aws::String>& value) { SetGroupList(value); return *this;}
298 
302  inline UserDetail& WithGroupList(Aws::Vector<Aws::String>&& value) { SetGroupList(value); return *this;}
303 
307  inline UserDetail& AddGroupList(const Aws::String& value) { m_groupListHasBeenSet = true; m_groupList.push_back(value); return *this; }
308 
312  inline UserDetail& AddGroupList(Aws::String&& value) { m_groupListHasBeenSet = true; m_groupList.push_back(value); return *this; }
313 
317  inline UserDetail& AddGroupList(const char* value) { m_groupListHasBeenSet = true; m_groupList.push_back(value); return *this; }
318 
322  inline const Aws::Vector<AttachedPolicy>& GetAttachedManagedPolicies() const{ return m_attachedManagedPolicies; }
323 
327  inline void SetAttachedManagedPolicies(const Aws::Vector<AttachedPolicy>& value) { m_attachedManagedPoliciesHasBeenSet = true; m_attachedManagedPolicies = value; }
328 
332  inline void SetAttachedManagedPolicies(Aws::Vector<AttachedPolicy>&& value) { m_attachedManagedPoliciesHasBeenSet = true; m_attachedManagedPolicies = value; }
333 
337  inline UserDetail& WithAttachedManagedPolicies(const Aws::Vector<AttachedPolicy>& value) { SetAttachedManagedPolicies(value); return *this;}
338 
342  inline UserDetail& WithAttachedManagedPolicies(Aws::Vector<AttachedPolicy>&& value) { SetAttachedManagedPolicies(value); return *this;}
343 
347  inline UserDetail& AddAttachedManagedPolicies(const AttachedPolicy& value) { m_attachedManagedPoliciesHasBeenSet = true; m_attachedManagedPolicies.push_back(value); return *this; }
348 
352  inline UserDetail& AddAttachedManagedPolicies(AttachedPolicy&& value) { m_attachedManagedPoliciesHasBeenSet = true; m_attachedManagedPolicies.push_back(value); return *this; }
353 
354  private:
355  Aws::String m_path;
356  bool m_pathHasBeenSet;
357  Aws::String m_userName;
358  bool m_userNameHasBeenSet;
359  Aws::String m_userId;
360  bool m_userIdHasBeenSet;
361  Aws::String m_arn;
362  bool m_arnHasBeenSet;
363  Aws::Utils::DateTime m_createDate;
364  bool m_createDateHasBeenSet;
365  Aws::Vector<PolicyDetail> m_userPolicyList;
366  bool m_userPolicyListHasBeenSet;
367  Aws::Vector<Aws::String> m_groupList;
368  bool m_groupListHasBeenSet;
369  Aws::Vector<AttachedPolicy> m_attachedManagedPolicies;
370  bool m_attachedManagedPoliciesHasBeenSet;
371  };
372 
373 } // namespace Model
374 } // namespace IAM
375 } // namespace Aws
void SetPath(const Aws::String &value)
Definition: UserDetail.h:65
UserDetail & AddUserPolicyList(const PolicyDetail &value)
Definition: UserDetail.h:272
UserDetail & WithAttachedManagedPolicies(const Aws::Vector< AttachedPolicy > &value)
Definition: UserDetail.h:337
void SetUserId(Aws::String &&value)
Definition: UserDetail.h:159
void SetAttachedManagedPolicies(Aws::Vector< AttachedPolicy > &&value)
Definition: UserDetail.h:332
void SetPath(const char *value)
Definition: UserDetail.h:79
void SetPath(Aws::String &&value)
Definition: UserDetail.h:72
UserDetail & WithUserName(Aws::String &&value)
Definition: UserDetail.h:130
UserDetail & WithArn(const Aws::String &value)
Definition: UserDetail.h:206
UserDetail & AddAttachedManagedPolicies(const AttachedPolicy &value)
Definition: UserDetail.h:347
UserDetail & WithCreateDate(const Aws::Utils::DateTime &value)
Definition: UserDetail.h:236
const Aws::Vector< AttachedPolicy > & GetAttachedManagedPolicies() const
Definition: UserDetail.h:322
UserDetail & WithCreateDate(Aws::Utils::DateTime &&value)
Definition: UserDetail.h:242
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:27
void SetUserName(const Aws::String &value)
Definition: UserDetail.h:110
const Aws::Utils::DateTime & GetCreateDate() const
Definition: UserDetail.h:218
UserDetail & WithUserName(const Aws::String &value)
Definition: UserDetail.h:125
UserDetail & AddGroupList(const char *value)
Definition: UserDetail.h:317
UserDetail & WithGroupList(Aws::Vector< Aws::String > &&value)
Definition: UserDetail.h:302
void SetUserPolicyList(Aws::Vector< PolicyDetail > &&value)
Definition: UserDetail.h:257
UserDetail & WithUserId(const char *value)
Definition: UserDetail.h:191
const Aws::Vector< PolicyDetail > & GetUserPolicyList() const
Definition: UserDetail.h:247
void SetGroupList(const Aws::Vector< Aws::String > &value)
Definition: UserDetail.h:287
void SetUserName(const char *value)
Definition: UserDetail.h:120
void SetAttachedManagedPolicies(const Aws::Vector< AttachedPolicy > &value)
Definition: UserDetail.h:327
UserDetail & WithPath(const char *value)
Definition: UserDetail.h:100
std::basic_ostream< char, std::char_traits< char > > OStream
Definition: AWSStreamFwd.h:31
void SetArn(Aws::String &&value)
Definition: UserDetail.h:200
UserDetail & WithAttachedManagedPolicies(Aws::Vector< AttachedPolicy > &&value)
Definition: UserDetail.h:342
void SetArn(const char *value)
Definition: UserDetail.h:203
UserDetail & AddAttachedManagedPolicies(AttachedPolicy &&value)
Definition: UserDetail.h:352
const Aws::String & GetUserName() const
Definition: UserDetail.h:105
const Aws::Vector< Aws::String > & GetGroupList() const
Definition: UserDetail.h:282
UserDetail & WithArn(const char *value)
Definition: UserDetail.h:212
UserDetail & WithUserId(Aws::String &&value)
Definition: UserDetail.h:183
UserDetail & WithUserPolicyList(Aws::Vector< PolicyDetail > &&value)
Definition: UserDetail.h:267
UserDetail & AddUserPolicyList(PolicyDetail &&value)
Definition: UserDetail.h:277
UserDetail & WithArn(Aws::String &&value)
Definition: UserDetail.h:209
void SetUserName(Aws::String &&value)
Definition: UserDetail.h:115
UserDetail & WithUserId(const Aws::String &value)
Definition: UserDetail.h:175
UserDetail & AddGroupList(Aws::String &&value)
Definition: UserDetail.h:312
void SetGroupList(Aws::Vector< Aws::String > &&value)
Definition: UserDetail.h:292
void SetCreateDate(Aws::Utils::DateTime &&value)
Definition: UserDetail.h:230
void SetArn(const Aws::String &value)
Definition: UserDetail.h:197
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
const Aws::String & GetUserId() const
Definition: UserDetail.h:143
const Aws::String & GetPath() const
Definition: UserDetail.h:58
UserDetail & AddGroupList(const Aws::String &value)
Definition: UserDetail.h:307
void SetCreateDate(const Aws::Utils::DateTime &value)
Definition: UserDetail.h:224
void SetUserId(const Aws::String &value)
Definition: UserDetail.h:151
void SetUserId(const char *value)
Definition: UserDetail.h:167
void SetUserPolicyList(const Aws::Vector< PolicyDetail > &value)
Definition: UserDetail.h:252
UserDetail & WithUserName(const char *value)
Definition: UserDetail.h:135
#define AWS_IAM_API
Definition: IAM_EXPORTS.h:34
UserDetail & WithPath(Aws::String &&value)
Definition: UserDetail.h:93
UserDetail & WithPath(const Aws::String &value)
Definition: UserDetail.h:86
const Aws::String & GetArn() const
Definition: UserDetail.h:194
UserDetail & WithUserPolicyList(const Aws::Vector< PolicyDetail > &value)
Definition: UserDetail.h:262
UserDetail & WithGroupList(const Aws::Vector< Aws::String > &value)
Definition: UserDetail.h:297
JSON (JavaScript Object Notation).