AWS SDK for C++  0.14.3
AWS SDK for C++
ManagedPolicyDetail.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>
22 
23 namespace Aws
24 {
25 namespace Utils
26 {
27 namespace Xml
28 {
29  class XmlNode;
30 } // namespace Xml
31 } // namespace Utils
32 namespace IAM
33 {
34 namespace Model
35 {
36 
47  {
48  public:
51  ManagedPolicyDetail& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
52 
53  void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
54  void OutputToStream(Aws::OStream& oStream, const char* location) const;
55 
59  inline const Aws::String& GetPolicyName() const{ return m_policyName; }
60 
64  inline void SetPolicyName(const Aws::String& value) { m_policyNameHasBeenSet = true; m_policyName = value; }
65 
69  inline void SetPolicyName(Aws::String&& value) { m_policyNameHasBeenSet = true; m_policyName = value; }
70 
74  inline void SetPolicyName(const char* value) { m_policyNameHasBeenSet = true; m_policyName.assign(value); }
75 
79  inline ManagedPolicyDetail& WithPolicyName(const Aws::String& value) { SetPolicyName(value); return *this;}
80 
84  inline ManagedPolicyDetail& WithPolicyName(Aws::String&& value) { SetPolicyName(value); return *this;}
85 
89  inline ManagedPolicyDetail& WithPolicyName(const char* value) { SetPolicyName(value); return *this;}
90 
97  inline const Aws::String& GetPolicyId() const{ return m_policyId; }
98 
105  inline void SetPolicyId(const Aws::String& value) { m_policyIdHasBeenSet = true; m_policyId = value; }
106 
113  inline void SetPolicyId(Aws::String&& value) { m_policyIdHasBeenSet = true; m_policyId = value; }
114 
121  inline void SetPolicyId(const char* value) { m_policyIdHasBeenSet = true; m_policyId.assign(value); }
122 
129  inline ManagedPolicyDetail& WithPolicyId(const Aws::String& value) { SetPolicyId(value); return *this;}
130 
137  inline ManagedPolicyDetail& WithPolicyId(Aws::String&& value) { SetPolicyId(value); return *this;}
138 
145  inline ManagedPolicyDetail& WithPolicyId(const char* value) { SetPolicyId(value); return *this;}
146 
147 
148  inline const Aws::String& GetArn() const{ return m_arn; }
149 
150 
151  inline void SetArn(const Aws::String& value) { m_arnHasBeenSet = true; m_arn = value; }
152 
153 
154  inline void SetArn(Aws::String&& value) { m_arnHasBeenSet = true; m_arn = value; }
155 
156 
157  inline void SetArn(const char* value) { m_arnHasBeenSet = true; m_arn.assign(value); }
158 
159 
160  inline ManagedPolicyDetail& WithArn(const Aws::String& value) { SetArn(value); return *this;}
161 
162 
163  inline ManagedPolicyDetail& WithArn(Aws::String&& value) { SetArn(value); return *this;}
164 
165 
166  inline ManagedPolicyDetail& WithArn(const char* value) { SetArn(value); return *this;}
167 
173  inline const Aws::String& GetPath() const{ return m_path; }
174 
180  inline void SetPath(const Aws::String& value) { m_pathHasBeenSet = true; m_path = value; }
181 
187  inline void SetPath(Aws::String&& value) { m_pathHasBeenSet = true; m_path = value; }
188 
194  inline void SetPath(const char* value) { m_pathHasBeenSet = true; m_path.assign(value); }
195 
201  inline ManagedPolicyDetail& WithPath(const Aws::String& value) { SetPath(value); return *this;}
202 
208  inline ManagedPolicyDetail& WithPath(Aws::String&& value) { SetPath(value); return *this;}
209 
215  inline ManagedPolicyDetail& WithPath(const char* value) { SetPath(value); return *this;}
216 
223  inline const Aws::String& GetDefaultVersionId() const{ return m_defaultVersionId; }
224 
231  inline void SetDefaultVersionId(const Aws::String& value) { m_defaultVersionIdHasBeenSet = true; m_defaultVersionId = value; }
232 
239  inline void SetDefaultVersionId(Aws::String&& value) { m_defaultVersionIdHasBeenSet = true; m_defaultVersionId = value; }
240 
247  inline void SetDefaultVersionId(const char* value) { m_defaultVersionIdHasBeenSet = true; m_defaultVersionId.assign(value); }
248 
255  inline ManagedPolicyDetail& WithDefaultVersionId(const Aws::String& value) { SetDefaultVersionId(value); return *this;}
256 
263  inline ManagedPolicyDetail& WithDefaultVersionId(Aws::String&& value) { SetDefaultVersionId(value); return *this;}
264 
271  inline ManagedPolicyDetail& WithDefaultVersionId(const char* value) { SetDefaultVersionId(value); return *this;}
272 
277  inline int GetAttachmentCount() const{ return m_attachmentCount; }
278 
283  inline void SetAttachmentCount(int value) { m_attachmentCountHasBeenSet = true; m_attachmentCount = value; }
284 
289  inline ManagedPolicyDetail& WithAttachmentCount(int value) { SetAttachmentCount(value); return *this;}
290 
295  inline bool GetIsAttachable() const{ return m_isAttachable; }
296 
301  inline void SetIsAttachable(bool value) { m_isAttachableHasBeenSet = true; m_isAttachable = value; }
302 
307  inline ManagedPolicyDetail& WithIsAttachable(bool value) { SetIsAttachable(value); return *this;}
308 
312  inline const Aws::String& GetDescription() const{ return m_description; }
313 
317  inline void SetDescription(const Aws::String& value) { m_descriptionHasBeenSet = true; m_description = value; }
318 
322  inline void SetDescription(Aws::String&& value) { m_descriptionHasBeenSet = true; m_description = value; }
323 
327  inline void SetDescription(const char* value) { m_descriptionHasBeenSet = true; m_description.assign(value); }
328 
332  inline ManagedPolicyDetail& WithDescription(const Aws::String& value) { SetDescription(value); return *this;}
333 
337  inline ManagedPolicyDetail& WithDescription(Aws::String&& value) { SetDescription(value); return *this;}
338 
342  inline ManagedPolicyDetail& WithDescription(const char* value) { SetDescription(value); return *this;}
343 
348  inline const Aws::Utils::DateTime& GetCreateDate() const{ return m_createDate; }
349 
354  inline void SetCreateDate(const Aws::Utils::DateTime& value) { m_createDateHasBeenSet = true; m_createDate = value; }
355 
360  inline void SetCreateDate(Aws::Utils::DateTime&& value) { m_createDateHasBeenSet = true; m_createDate = value; }
361 
366  inline ManagedPolicyDetail& WithCreateDate(const Aws::Utils::DateTime& value) { SetCreateDate(value); return *this;}
367 
372  inline ManagedPolicyDetail& WithCreateDate(Aws::Utils::DateTime&& value) { SetCreateDate(value); return *this;}
373 
381  inline const Aws::Utils::DateTime& GetUpdateDate() const{ return m_updateDate; }
382 
390  inline void SetUpdateDate(const Aws::Utils::DateTime& value) { m_updateDateHasBeenSet = true; m_updateDate = value; }
391 
399  inline void SetUpdateDate(Aws::Utils::DateTime&& value) { m_updateDateHasBeenSet = true; m_updateDate = value; }
400 
408  inline ManagedPolicyDetail& WithUpdateDate(const Aws::Utils::DateTime& value) { SetUpdateDate(value); return *this;}
409 
417  inline ManagedPolicyDetail& WithUpdateDate(Aws::Utils::DateTime&& value) { SetUpdateDate(value); return *this;}
418 
422  inline const Aws::Vector<PolicyVersion>& GetPolicyVersionList() const{ return m_policyVersionList; }
423 
427  inline void SetPolicyVersionList(const Aws::Vector<PolicyVersion>& value) { m_policyVersionListHasBeenSet = true; m_policyVersionList = value; }
428 
432  inline void SetPolicyVersionList(Aws::Vector<PolicyVersion>&& value) { m_policyVersionListHasBeenSet = true; m_policyVersionList = value; }
433 
437  inline ManagedPolicyDetail& WithPolicyVersionList(const Aws::Vector<PolicyVersion>& value) { SetPolicyVersionList(value); return *this;}
438 
442  inline ManagedPolicyDetail& WithPolicyVersionList(Aws::Vector<PolicyVersion>&& value) { SetPolicyVersionList(value); return *this;}
443 
447  inline ManagedPolicyDetail& AddPolicyVersionList(const PolicyVersion& value) { m_policyVersionListHasBeenSet = true; m_policyVersionList.push_back(value); return *this; }
448 
452  inline ManagedPolicyDetail& AddPolicyVersionList(PolicyVersion&& value) { m_policyVersionListHasBeenSet = true; m_policyVersionList.push_back(value); return *this; }
453 
454  private:
455  Aws::String m_policyName;
456  bool m_policyNameHasBeenSet;
457  Aws::String m_policyId;
458  bool m_policyIdHasBeenSet;
459  Aws::String m_arn;
460  bool m_arnHasBeenSet;
461  Aws::String m_path;
462  bool m_pathHasBeenSet;
463  Aws::String m_defaultVersionId;
464  bool m_defaultVersionIdHasBeenSet;
465  int m_attachmentCount;
466  bool m_attachmentCountHasBeenSet;
467  bool m_isAttachable;
468  bool m_isAttachableHasBeenSet;
469  Aws::String m_description;
470  bool m_descriptionHasBeenSet;
471  Aws::Utils::DateTime m_createDate;
472  bool m_createDateHasBeenSet;
473  Aws::Utils::DateTime m_updateDate;
474  bool m_updateDateHasBeenSet;
475  Aws::Vector<PolicyVersion> m_policyVersionList;
476  bool m_policyVersionListHasBeenSet;
477  };
478 
479 } // namespace Model
480 } // namespace IAM
481 } // namespace Aws
ManagedPolicyDetail & WithPolicyId(Aws::String &&value)
ManagedPolicyDetail & WithPolicyId(const char *value)
const Aws::Utils::DateTime & GetCreateDate() const
ManagedPolicyDetail & WithDescription(Aws::String &&value)
void SetDescription(const Aws::String &value)
ManagedPolicyDetail & WithArn(const Aws::String &value)
ManagedPolicyDetail & WithCreateDate(Aws::Utils::DateTime &&value)
void SetDefaultVersionId(const Aws::String &value)
void SetPath(const Aws::String &value)
ManagedPolicyDetail & WithAttachmentCount(int value)
ManagedPolicyDetail & AddPolicyVersionList(PolicyVersion &&value)
ManagedPolicyDetail & WithDefaultVersionId(Aws::String &&value)
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:27
ManagedPolicyDetail & WithPath(Aws::String &&value)
void SetArn(const Aws::String &value)
ManagedPolicyDetail & WithIsAttachable(bool value)
ManagedPolicyDetail & WithPolicyName(Aws::String &&value)
ManagedPolicyDetail & WithUpdateDate(const Aws::Utils::DateTime &value)
ManagedPolicyDetail & AddPolicyVersionList(const PolicyVersion &value)
void SetUpdateDate(Aws::Utils::DateTime &&value)
const Aws::String & GetDefaultVersionId() const
ManagedPolicyDetail & WithPath(const Aws::String &value)
void SetDefaultVersionId(Aws::String &&value)
ManagedPolicyDetail & WithPath(const char *value)
void SetCreateDate(const Aws::Utils::DateTime &value)
ManagedPolicyDetail & WithPolicyId(const Aws::String &value)
void SetUpdateDate(const Aws::Utils::DateTime &value)
void SetPolicyName(Aws::String &&value)
const Aws::Utils::DateTime & GetUpdateDate() const
std::basic_ostream< char, std::char_traits< char > > OStream
Definition: AWSStreamFwd.h:31
ManagedPolicyDetail & WithDescription(const Aws::String &value)
ManagedPolicyDetail & WithArn(const char *value)
ManagedPolicyDetail & WithDefaultVersionId(const Aws::String &value)
void SetDescription(Aws::String &&value)
ManagedPolicyDetail & WithCreateDate(const Aws::Utils::DateTime &value)
void SetPolicyVersionList(const Aws::Vector< PolicyVersion > &value)
void SetCreateDate(Aws::Utils::DateTime &&value)
const Aws::String & GetPath() const
ManagedPolicyDetail & WithUpdateDate(Aws::Utils::DateTime &&value)
void SetPolicyId(const Aws::String &value)
ManagedPolicyDetail & WithDescription(const char *value)
void SetPolicyName(const Aws::String &value)
void SetDefaultVersionId(const char *value)
ManagedPolicyDetail & WithPolicyName(const char *value)
ManagedPolicyDetail & WithDefaultVersionId(const char *value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
const Aws::String & GetPolicyName() const
const Aws::String & GetArn() const
ManagedPolicyDetail & WithArn(Aws::String &&value)
ManagedPolicyDetail & WithPolicyVersionList(Aws::Vector< PolicyVersion > &&value)
const Aws::String & GetDescription() const
ManagedPolicyDetail & WithPolicyName(const Aws::String &value)
const Aws::String & GetPolicyId() const
#define AWS_IAM_API
Definition: IAM_EXPORTS.h:37
const Aws::Vector< PolicyVersion > & GetPolicyVersionList() const
void SetPolicyVersionList(Aws::Vector< PolicyVersion > &&value)
JSON (JavaScript Object Notation).
ManagedPolicyDetail & WithPolicyVersionList(const Aws::Vector< PolicyVersion > &value)