7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/ram/RAM_EXPORTS.h>
11#include <aws/ram/model/PermissionFeatureSet.h>
12#include <aws/ram/model/PermissionStatus.h>
13#include <aws/ram/model/PermissionType.h>
14#include <aws/ram/model/Tag.h>
48 template <
typename ArnT = Aws::String>
50 m_arnHasBeenSet =
true;
51 m_arn = std::forward<ArnT>(value);
53 template <
typename ArnT = Aws::String>
55 SetArn(std::forward<ArnT>(value));
66 template <
typename VersionT = Aws::String>
68 m_versionHasBeenSet =
true;
69 m_version = std::forward<VersionT>(value);
71 template <
typename VersionT = Aws::String>
86 m_defaultVersionHasBeenSet =
true;
87 m_defaultVersion = value;
101 template <
typename NameT = Aws::String>
103 m_nameHasBeenSet =
true;
104 m_name = std::forward<NameT>(value);
106 template <
typename NameT = Aws::String>
108 SetName(std::forward<NameT>(value));
119 template <
typename ResourceTypeT = Aws::String>
121 m_resourceTypeHasBeenSet =
true;
122 m_resourceType = std::forward<ResourceTypeT>(value);
124 template <
typename ResourceTypeT = Aws::String>
140 template <
typename PermissionT = Aws::String>
142 m_permissionHasBeenSet =
true;
143 m_permission = std::forward<PermissionT>(value);
145 template <
typename PermissionT = Aws::String>
158 template <
typename CreationTimeT = Aws::Utils::DateTime>
160 m_creationTimeHasBeenSet =
true;
161 m_creationTime = std::forward<CreationTimeT>(value);
163 template <
typename CreationTimeT = Aws::Utils::DateTime>
176 template <
typename LastUpdatedTimeT = Aws::Utils::DateTime>
178 m_lastUpdatedTimeHasBeenSet =
true;
179 m_lastUpdatedTime = std::forward<LastUpdatedTimeT>(value);
181 template <
typename LastUpdatedTimeT = Aws::Utils::DateTime>
196 m_isResourceTypeDefaultHasBeenSet =
true;
197 m_isResourceTypeDefault = value;
218 m_permissionTypeHasBeenSet =
true;
219 m_permissionType = value;
251 m_featureSetHasBeenSet =
true;
252 m_featureSet = value;
274 m_statusHasBeenSet =
true;
289 template <
typename TagsT = Aws::Vector<Tag>>
291 m_tagsHasBeenSet =
true;
292 m_tags = std::forward<TagsT>(value);
294 template <
typename TagsT = Aws::Vector<Tag>>
296 SetTags(std::forward<TagsT>(value));
299 template <
typename TagsT = Tag>
301 m_tagsHasBeenSet =
true;
302 m_tags.emplace_back(std::forward<TagsT>(value));
311 bool m_defaultVersion{
false};
323 bool m_isResourceTypeDefault{
false};
332 bool m_arnHasBeenSet =
false;
333 bool m_versionHasBeenSet =
false;
334 bool m_defaultVersionHasBeenSet =
false;
335 bool m_nameHasBeenSet =
false;
336 bool m_resourceTypeHasBeenSet =
false;
337 bool m_permissionHasBeenSet =
false;
338 bool m_creationTimeHasBeenSet =
false;
339 bool m_lastUpdatedTimeHasBeenSet =
false;
340 bool m_isResourceTypeDefaultHasBeenSet =
false;
341 bool m_permissionTypeHasBeenSet =
false;
342 bool m_featureSetHasBeenSet =
false;
343 bool m_statusHasBeenSet =
false;
344 bool m_tagsHasBeenSet =
false;
void SetVersion(VersionT &&value)
bool ArnHasBeenSet() const
ResourceSharePermissionDetail & WithName(NameT &&value)
ResourceSharePermissionDetail & WithPermissionType(PermissionType value)
bool DefaultVersionHasBeenSet() const
bool StatusHasBeenSet() const
ResourceSharePermissionDetail & AddTags(TagsT &&value)
void SetDefaultVersion(bool value)
const Aws::Vector< Tag > & GetTags() const
ResourceSharePermissionDetail & WithCreationTime(CreationTimeT &&value)
const Aws::String & GetResourceType() const
bool ResourceTypeHasBeenSet() const
PermissionType GetPermissionType() const
void SetArn(ArnT &&value)
ResourceSharePermissionDetail & WithFeatureSet(PermissionFeatureSet value)
bool PermissionHasBeenSet() const
void SetLastUpdatedTime(LastUpdatedTimeT &&value)
void SetPermission(PermissionT &&value)
bool GetDefaultVersion() const
bool VersionHasBeenSet() const
AWS_RAM_API ResourceSharePermissionDetail(Aws::Utils::Json::JsonView jsonValue)
ResourceSharePermissionDetail & WithStatus(PermissionStatus value)
bool GetIsResourceTypeDefault() const
ResourceSharePermissionDetail & WithResourceType(ResourceTypeT &&value)
ResourceSharePermissionDetail & WithLastUpdatedTime(LastUpdatedTimeT &&value)
ResourceSharePermissionDetail & WithArn(ArnT &&value)
AWS_RAM_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_RAM_API ResourceSharePermissionDetail & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::String & GetName() const
PermissionStatus GetStatus() const
void SetFeatureSet(PermissionFeatureSet value)
bool TagsHasBeenSet() const
void SetPermissionType(PermissionType value)
ResourceSharePermissionDetail & WithPermission(PermissionT &&value)
void SetName(NameT &&value)
bool CreationTimeHasBeenSet() const
bool LastUpdatedTimeHasBeenSet() const
ResourceSharePermissionDetail & WithTags(TagsT &&value)
AWS_RAM_API ResourceSharePermissionDetail()=default
bool FeatureSetHasBeenSet() const
void SetTags(TagsT &&value)
ResourceSharePermissionDetail & WithVersion(VersionT &&value)
ResourceSharePermissionDetail & WithIsResourceTypeDefault(bool value)
ResourceSharePermissionDetail & WithDefaultVersion(bool value)
const Aws::String & GetArn() const
const Aws::Utils::DateTime & GetCreationTime() const
void SetStatus(PermissionStatus value)
void SetIsResourceTypeDefault(bool value)
const Aws::String & GetVersion() const
void SetResourceType(ResourceTypeT &&value)
void SetCreationTime(CreationTimeT &&value)
bool IsResourceTypeDefaultHasBeenSet() const
const Aws::Utils::DateTime & GetLastUpdatedTime() const
const Aws::String & GetPermission() const
bool PermissionTypeHasBeenSet() const
bool NameHasBeenSet() const
PermissionFeatureSet GetFeatureSet() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue