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/ram/model/PermissionStatus.h>
13#include <aws/core/utils/memory/stl/AWSVector.h>
14#include <aws/ram/model/Tag.h>
54 template<
typename ArnT = Aws::String>
55 void SetArn(ArnT&& value) { m_arnHasBeenSet =
true; m_arn = std::forward<ArnT>(value); }
56 template<
typename ArnT = Aws::String>
66 template<
typename VersionT = Aws::String>
67 void SetVersion(VersionT&& value) { m_versionHasBeenSet =
true; m_version = std::forward<VersionT>(value); }
68 template<
typename VersionT = Aws::String>
79 inline void SetDefaultVersion(
bool value) { m_defaultVersionHasBeenSet =
true; m_defaultVersion = value; }
89 template<
typename NameT = Aws::String>
90 void SetName(NameT&& value) { m_nameHasBeenSet =
true; m_name = std::forward<NameT>(value); }
91 template<
typename NameT = Aws::String>
101 template<
typename ResourceTypeT = Aws::String>
102 void SetResourceType(ResourceTypeT&& value) { m_resourceTypeHasBeenSet =
true; m_resourceType = std::forward<ResourceTypeT>(value); }
103 template<
typename ResourceTypeT = Aws::String>
116 template<
typename PermissionT = Aws::String>
117 void SetPermission(PermissionT&& value) { m_permissionHasBeenSet =
true; m_permission = std::forward<PermissionT>(value); }
118 template<
typename PermissionT = Aws::String>
128 template<
typename CreationTimeT = Aws::Utils::DateTime>
129 void SetCreationTime(CreationTimeT&& value) { m_creationTimeHasBeenSet =
true; m_creationTime = std::forward<CreationTimeT>(value); }
130 template<
typename CreationTimeT = Aws::Utils::DateTime>
140 template<
typename LastUpdatedTimeT = Aws::Utils::DateTime>
141 void SetLastUpdatedTime(LastUpdatedTimeT&& value) { m_lastUpdatedTimeHasBeenSet =
true; m_lastUpdatedTime = std::forward<LastUpdatedTimeT>(value); }
142 template<
typename LastUpdatedTimeT = Aws::Utils::DateTime>
223 template<
typename TagsT = Aws::Vector<Tag>>
224 void SetTags(TagsT&& value) { m_tagsHasBeenSet =
true; m_tags = std::forward<TagsT>(value); }
225 template<
typename TagsT = Aws::Vector<Tag>>
227 template<
typename TagsT = Tag>
233 bool m_arnHasBeenSet =
false;
236 bool m_versionHasBeenSet =
false;
238 bool m_defaultVersion{
false};
239 bool m_defaultVersionHasBeenSet =
false;
242 bool m_nameHasBeenSet =
false;
245 bool m_resourceTypeHasBeenSet =
false;
248 bool m_permissionHasBeenSet =
false;
251 bool m_creationTimeHasBeenSet =
false;
254 bool m_lastUpdatedTimeHasBeenSet =
false;
256 bool m_isResourceTypeDefault{
false};
257 bool m_isResourceTypeDefaultHasBeenSet =
false;
260 bool m_permissionTypeHasBeenSet =
false;
263 bool m_featureSetHasBeenSet =
false;
266 bool m_statusHasBeenSet =
false;
269 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