AWS SDK for C++  0.12.9
AWS SDK for C++
Group.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>
20 
21 namespace Aws
22 {
23 namespace Utils
24 {
25 namespace Xml
26 {
27  class XmlNode;
28 } // namespace Xml
29 } // namespace Utils
30 namespace IAM
31 {
32 namespace Model
33 {
34 
42  {
43  public:
44  Group();
45  Group(const Aws::Utils::Xml::XmlNode& xmlNode);
46  Group& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
47 
48  void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
49  void OutputToStream(Aws::OStream& oStream, const char* location) const;
50 
56  inline const Aws::String& GetPath() const{ return m_path; }
57 
63  inline void SetPath(const Aws::String& value) { m_pathHasBeenSet = true; m_path = value; }
64 
70  inline void SetPath(Aws::String&& value) { m_pathHasBeenSet = true; m_path = value; }
71 
77  inline void SetPath(const char* value) { m_pathHasBeenSet = true; m_path.assign(value); }
78 
84  inline Group& WithPath(const Aws::String& value) { SetPath(value); return *this;}
85 
91  inline Group& WithPath(Aws::String&& value) { SetPath(value); return *this;}
92 
98  inline Group& WithPath(const char* value) { SetPath(value); return *this;}
99 
103  inline const Aws::String& GetGroupName() const{ return m_groupName; }
104 
108  inline void SetGroupName(const Aws::String& value) { m_groupNameHasBeenSet = true; m_groupName = value; }
109 
113  inline void SetGroupName(Aws::String&& value) { m_groupNameHasBeenSet = true; m_groupName = value; }
114 
118  inline void SetGroupName(const char* value) { m_groupNameHasBeenSet = true; m_groupName.assign(value); }
119 
123  inline Group& WithGroupName(const Aws::String& value) { SetGroupName(value); return *this;}
124 
128  inline Group& WithGroupName(Aws::String&& value) { SetGroupName(value); return *this;}
129 
133  inline Group& WithGroupName(const char* value) { SetGroupName(value); return *this;}
134 
141  inline const Aws::String& GetGroupId() const{ return m_groupId; }
142 
149  inline void SetGroupId(const Aws::String& value) { m_groupIdHasBeenSet = true; m_groupId = value; }
150 
157  inline void SetGroupId(Aws::String&& value) { m_groupIdHasBeenSet = true; m_groupId = value; }
158 
165  inline void SetGroupId(const char* value) { m_groupIdHasBeenSet = true; m_groupId.assign(value); }
166 
173  inline Group& WithGroupId(const Aws::String& value) { SetGroupId(value); return *this;}
174 
181  inline Group& WithGroupId(Aws::String&& value) { SetGroupId(value); return *this;}
182 
189  inline Group& WithGroupId(const char* value) { SetGroupId(value); return *this;}
190 
197  inline const Aws::String& GetArn() const{ return m_arn; }
198 
205  inline void SetArn(const Aws::String& value) { m_arnHasBeenSet = true; m_arn = value; }
206 
213  inline void SetArn(Aws::String&& value) { m_arnHasBeenSet = true; m_arn = value; }
214 
221  inline void SetArn(const char* value) { m_arnHasBeenSet = true; m_arn.assign(value); }
222 
229  inline Group& WithArn(const Aws::String& value) { SetArn(value); return *this;}
230 
237  inline Group& WithArn(Aws::String&& value) { SetArn(value); return *this;}
238 
245  inline Group& WithArn(const char* value) { SetArn(value); return *this;}
246 
251  inline const Aws::Utils::DateTime& GetCreateDate() const{ return m_createDate; }
252 
257  inline void SetCreateDate(const Aws::Utils::DateTime& value) { m_createDateHasBeenSet = true; m_createDate = value; }
258 
263  inline void SetCreateDate(Aws::Utils::DateTime&& value) { m_createDateHasBeenSet = true; m_createDate = value; }
264 
269  inline Group& WithCreateDate(const Aws::Utils::DateTime& value) { SetCreateDate(value); return *this;}
270 
275  inline Group& WithCreateDate(Aws::Utils::DateTime&& value) { SetCreateDate(value); return *this;}
276 
277  private:
278  Aws::String m_path;
279  bool m_pathHasBeenSet;
280  Aws::String m_groupName;
281  bool m_groupNameHasBeenSet;
282  Aws::String m_groupId;
283  bool m_groupIdHasBeenSet;
284  Aws::String m_arn;
285  bool m_arnHasBeenSet;
286  Aws::Utils::DateTime m_createDate;
287  bool m_createDateHasBeenSet;
288  };
289 
290 } // namespace Model
291 } // namespace IAM
292 } // namespace Aws
Group & WithGroupName(Aws::String &&value)
Definition: Group.h:128
Group & WithGroupId(Aws::String &&value)
Definition: Group.h:181
Group & WithArn(Aws::String &&value)
Definition: Group.h:237
void SetPath(const char *value)
Definition: Group.h:77
void SetCreateDate(Aws::Utils::DateTime &&value)
Definition: Group.h:263
Group & WithGroupName(const char *value)
Definition: Group.h:133
Group & WithArn(const char *value)
Definition: Group.h:245
void SetCreateDate(const Aws::Utils::DateTime &value)
Definition: Group.h:257
void SetPath(const Aws::String &value)
Definition: Group.h:63
Group & WithCreateDate(Aws::Utils::DateTime &&value)
Definition: Group.h:275
void SetArn(Aws::String &&value)
Definition: Group.h:213
void SetPath(Aws::String &&value)
Definition: Group.h:70
const Aws::Utils::DateTime & GetCreateDate() const
Definition: Group.h:251
Group & WithCreateDate(const Aws::Utils::DateTime &value)
Definition: Group.h:269
void SetGroupName(const Aws::String &value)
Definition: Group.h:108
std::basic_ostream< char, std::char_traits< char > > OStream
Definition: AWSStreamFwd.h:31
void SetGroupId(const char *value)
Definition: Group.h:165
Group & WithGroupName(const Aws::String &value)
Definition: Group.h:123
Group & WithArn(const Aws::String &value)
Definition: Group.h:229
const Aws::String & GetArn() const
Definition: Group.h:197
void SetGroupId(Aws::String &&value)
Definition: Group.h:157
Group & WithGroupId(const Aws::String &value)
Definition: Group.h:173
const Aws::String & GetGroupName() const
Definition: Group.h:103
const Aws::String & GetPath() const
Definition: Group.h:56
Group & WithPath(Aws::String &&value)
Definition: Group.h:91
void SetGroupId(const Aws::String &value)
Definition: Group.h:149
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
void SetGroupName(Aws::String &&value)
Definition: Group.h:113
Group & WithPath(const Aws::String &value)
Definition: Group.h:84
Group & WithPath(const char *value)
Definition: Group.h:98
void SetArn(const char *value)
Definition: Group.h:221
#define AWS_IAM_API
Definition: IAM_EXPORTS.h:34
Group & WithGroupId(const char *value)
Definition: Group.h:189
const Aws::String & GetGroupId() const
Definition: Group.h:141
void SetGroupName(const char *value)
Definition: Group.h:118
JSON (JavaScript Object Notation).
void SetArn(const Aws::String &value)
Definition: Group.h:205