AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
ResourceSharePermissionSummary.h
1
6#pragma once
7#include <aws/ram/RAM_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/DateTime.h>
10#include <aws/ram/model/PermissionType.h>
11#include <aws/ram/model/PermissionFeatureSet.h>
12#include <aws/core/utils/memory/stl/AWSVector.h>
13#include <aws/ram/model/Tag.h>
14#include <utility>
15
16namespace Aws
17{
18namespace Utils
19{
20namespace Json
21{
22 class JsonValue;
23 class JsonView;
24} // namespace Json
25} // namespace Utils
26namespace RAM
27{
28namespace Model
29{
30
37 {
38 public:
39 AWS_RAM_API ResourceSharePermissionSummary() = default;
43
44
46
51 inline const Aws::String& GetArn() const { return m_arn; }
52 inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; }
53 template<typename ArnT = Aws::String>
54 void SetArn(ArnT&& value) { m_arnHasBeenSet = true; m_arn = std::forward<ArnT>(value); }
55 template<typename ArnT = Aws::String>
56 ResourceSharePermissionSummary& WithArn(ArnT&& value) { SetArn(std::forward<ArnT>(value)); return *this;}
58
60
63 inline const Aws::String& GetVersion() const { return m_version; }
64 inline bool VersionHasBeenSet() const { return m_versionHasBeenSet; }
65 template<typename VersionT = Aws::String>
66 void SetVersion(VersionT&& value) { m_versionHasBeenSet = true; m_version = std::forward<VersionT>(value); }
67 template<typename VersionT = Aws::String>
68 ResourceSharePermissionSummary& WithVersion(VersionT&& value) { SetVersion(std::forward<VersionT>(value)); return *this;}
70
72
76 inline bool GetDefaultVersion() const { return m_defaultVersion; }
77 inline bool DefaultVersionHasBeenSet() const { return m_defaultVersionHasBeenSet; }
78 inline void SetDefaultVersion(bool value) { m_defaultVersionHasBeenSet = true; m_defaultVersion = value; }
79 inline ResourceSharePermissionSummary& WithDefaultVersion(bool value) { SetDefaultVersion(value); return *this;}
81
83
86 inline const Aws::String& GetName() const { return m_name; }
87 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
88 template<typename NameT = Aws::String>
89 void SetName(NameT&& value) { m_nameHasBeenSet = true; m_name = std::forward<NameT>(value); }
90 template<typename NameT = Aws::String>
91 ResourceSharePermissionSummary& WithName(NameT&& value) { SetName(std::forward<NameT>(value)); return *this;}
93
95
101 inline const Aws::String& GetResourceType() const { return m_resourceType; }
102 inline bool ResourceTypeHasBeenSet() const { return m_resourceTypeHasBeenSet; }
103 template<typename ResourceTypeT = Aws::String>
104 void SetResourceType(ResourceTypeT&& value) { m_resourceTypeHasBeenSet = true; m_resourceType = std::forward<ResourceTypeT>(value); }
105 template<typename ResourceTypeT = Aws::String>
106 ResourceSharePermissionSummary& WithResourceType(ResourceTypeT&& value) { SetResourceType(std::forward<ResourceTypeT>(value)); return *this;}
108
110
113 inline const Aws::String& GetStatus() const { return m_status; }
114 inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
115 template<typename StatusT = Aws::String>
116 void SetStatus(StatusT&& value) { m_statusHasBeenSet = true; m_status = std::forward<StatusT>(value); }
117 template<typename StatusT = Aws::String>
118 ResourceSharePermissionSummary& WithStatus(StatusT&& value) { SetStatus(std::forward<StatusT>(value)); return *this;}
120
122
125 inline const Aws::Utils::DateTime& GetCreationTime() const { return m_creationTime; }
126 inline bool CreationTimeHasBeenSet() const { return m_creationTimeHasBeenSet; }
127 template<typename CreationTimeT = Aws::Utils::DateTime>
128 void SetCreationTime(CreationTimeT&& value) { m_creationTimeHasBeenSet = true; m_creationTime = std::forward<CreationTimeT>(value); }
129 template<typename CreationTimeT = Aws::Utils::DateTime>
130 ResourceSharePermissionSummary& WithCreationTime(CreationTimeT&& value) { SetCreationTime(std::forward<CreationTimeT>(value)); return *this;}
132
134
137 inline const Aws::Utils::DateTime& GetLastUpdatedTime() const { return m_lastUpdatedTime; }
138 inline bool LastUpdatedTimeHasBeenSet() const { return m_lastUpdatedTimeHasBeenSet; }
139 template<typename LastUpdatedTimeT = Aws::Utils::DateTime>
140 void SetLastUpdatedTime(LastUpdatedTimeT&& value) { m_lastUpdatedTimeHasBeenSet = true; m_lastUpdatedTime = std::forward<LastUpdatedTimeT>(value); }
141 template<typename LastUpdatedTimeT = Aws::Utils::DateTime>
142 ResourceSharePermissionSummary& WithLastUpdatedTime(LastUpdatedTimeT&& value) { SetLastUpdatedTime(std::forward<LastUpdatedTimeT>(value)); return *this;}
144
146
150 inline bool GetIsResourceTypeDefault() const { return m_isResourceTypeDefault; }
151 inline bool IsResourceTypeDefaultHasBeenSet() const { return m_isResourceTypeDefaultHasBeenSet; }
152 inline void SetIsResourceTypeDefault(bool value) { m_isResourceTypeDefaultHasBeenSet = true; m_isResourceTypeDefault = value; }
155
157
166 inline PermissionType GetPermissionType() const { return m_permissionType; }
167 inline bool PermissionTypeHasBeenSet() const { return m_permissionTypeHasBeenSet; }
168 inline void SetPermissionType(PermissionType value) { m_permissionTypeHasBeenSet = true; m_permissionType = value; }
171
173
193 inline PermissionFeatureSet GetFeatureSet() const { return m_featureSet; }
194 inline bool FeatureSetHasBeenSet() const { return m_featureSetHasBeenSet; }
195 inline void SetFeatureSet(PermissionFeatureSet value) { m_featureSetHasBeenSet = true; m_featureSet = value; }
198
200
203 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
204 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
205 template<typename TagsT = Aws::Vector<Tag>>
206 void SetTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags = std::forward<TagsT>(value); }
207 template<typename TagsT = Aws::Vector<Tag>>
208 ResourceSharePermissionSummary& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
209 template<typename TagsT = Tag>
210 ResourceSharePermissionSummary& AddTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags.emplace_back(std::forward<TagsT>(value)); return *this; }
212 private:
213
214 Aws::String m_arn;
215 bool m_arnHasBeenSet = false;
216
217 Aws::String m_version;
218 bool m_versionHasBeenSet = false;
219
220 bool m_defaultVersion{false};
221 bool m_defaultVersionHasBeenSet = false;
222
223 Aws::String m_name;
224 bool m_nameHasBeenSet = false;
225
226 Aws::String m_resourceType;
227 bool m_resourceTypeHasBeenSet = false;
228
229 Aws::String m_status;
230 bool m_statusHasBeenSet = false;
231
232 Aws::Utils::DateTime m_creationTime{};
233 bool m_creationTimeHasBeenSet = false;
234
235 Aws::Utils::DateTime m_lastUpdatedTime{};
236 bool m_lastUpdatedTimeHasBeenSet = false;
237
238 bool m_isResourceTypeDefault{false};
239 bool m_isResourceTypeDefaultHasBeenSet = false;
240
241 PermissionType m_permissionType{PermissionType::NOT_SET};
242 bool m_permissionTypeHasBeenSet = false;
243
245 bool m_featureSetHasBeenSet = false;
246
247 Aws::Vector<Tag> m_tags;
248 bool m_tagsHasBeenSet = false;
249 };
250
251} // namespace Model
252} // namespace RAM
253} // namespace Aws
ResourceSharePermissionSummary & WithPermissionType(PermissionType value)
ResourceSharePermissionSummary & WithArn(ArnT &&value)
ResourceSharePermissionSummary & WithVersion(VersionT &&value)
ResourceSharePermissionSummary & WithName(NameT &&value)
AWS_RAM_API Aws::Utils::Json::JsonValue Jsonize() const
ResourceSharePermissionSummary & WithResourceType(ResourceTypeT &&value)
AWS_RAM_API ResourceSharePermissionSummary & operator=(Aws::Utils::Json::JsonView jsonValue)
ResourceSharePermissionSummary & WithFeatureSet(PermissionFeatureSet value)
ResourceSharePermissionSummary & WithIsResourceTypeDefault(bool value)
AWS_RAM_API ResourceSharePermissionSummary(Aws::Utils::Json::JsonView jsonValue)
ResourceSharePermissionSummary & WithDefaultVersion(bool value)
ResourceSharePermissionSummary & WithTags(TagsT &&value)
ResourceSharePermissionSummary & WithStatus(StatusT &&value)
ResourceSharePermissionSummary & WithLastUpdatedTime(LastUpdatedTimeT &&value)
ResourceSharePermissionSummary & WithCreationTime(CreationTimeT &&value)
ResourceSharePermissionSummary & AddTags(TagsT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue