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/ResourceShareConfiguration.h>
12#include <aws/ram/model/ResourceShareFeatureSet.h>
13#include <aws/ram/model/ResourceShareStatus.h>
14#include <aws/ram/model/Tag.h>
48 template <
typename ResourceShareArnT = Aws::String>
50 m_resourceShareArnHasBeenSet =
true;
51 m_resourceShareArn = std::forward<ResourceShareArnT>(value);
53 template <
typename ResourceShareArnT = Aws::String>
66 template <
typename NameT = Aws::String>
68 m_nameHasBeenSet =
true;
69 m_name = std::forward<NameT>(value);
71 template <
typename NameT = Aws::String>
73 SetName(std::forward<NameT>(value));
84 template <
typename OwningAccountIdT = Aws::String>
86 m_owningAccountIdHasBeenSet =
true;
87 m_owningAccountId = std::forward<OwningAccountIdT>(value);
89 template <
typename OwningAccountIdT = Aws::String>
108 m_allowExternalPrincipalsHasBeenSet =
true;
109 m_allowExternalPrincipals = value;
124 m_statusHasBeenSet =
true;
139 template <
typename StatusMessageT = Aws::String>
141 m_statusMessageHasBeenSet =
true;
142 m_statusMessage = std::forward<StatusMessageT>(value);
144 template <
typename StatusMessageT = Aws::String>
157 template <
typename TagsT = Aws::Vector<Tag>>
159 m_tagsHasBeenSet =
true;
160 m_tags = std::forward<TagsT>(value);
162 template <
typename TagsT = Aws::Vector<Tag>>
164 SetTags(std::forward<TagsT>(value));
167 template <
typename TagsT = Tag>
169 m_tagsHasBeenSet =
true;
170 m_tags.emplace_back(std::forward<TagsT>(value));
181 template <
typename CreationTimeT = Aws::Utils::DateTime>
183 m_creationTimeHasBeenSet =
true;
184 m_creationTime = std::forward<CreationTimeT>(value);
186 template <
typename CreationTimeT = Aws::Utils::DateTime>
199 template <
typename LastUpdatedTimeT = Aws::Utils::DateTime>
201 m_lastUpdatedTimeHasBeenSet =
true;
202 m_lastUpdatedTime = std::forward<LastUpdatedTimeT>(value);
204 template <
typename LastUpdatedTimeT = Aws::Utils::DateTime>
235 m_featureSetHasBeenSet =
true;
236 m_featureSet = value;
250 template <
typename ResourceShareConfigurationT = ResourceShareConfiguration>
252 m_resourceShareConfigurationHasBeenSet =
true;
253 m_resourceShareConfiguration = std::forward<ResourceShareConfigurationT>(value);
255 template <
typename ResourceShareConfigurationT = ResourceShareConfiguration>
268 bool m_allowExternalPrincipals{
false};
282 ResourceShareConfiguration m_resourceShareConfiguration;
283 bool m_resourceShareArnHasBeenSet =
false;
284 bool m_nameHasBeenSet =
false;
285 bool m_owningAccountIdHasBeenSet =
false;
286 bool m_allowExternalPrincipalsHasBeenSet =
false;
287 bool m_statusHasBeenSet =
false;
288 bool m_statusMessageHasBeenSet =
false;
289 bool m_tagsHasBeenSet =
false;
290 bool m_creationTimeHasBeenSet =
false;
291 bool m_lastUpdatedTimeHasBeenSet =
false;
292 bool m_featureSetHasBeenSet =
false;
293 bool m_resourceShareConfigurationHasBeenSet =
false;
void SetTags(TagsT &&value)
void SetStatusMessage(StatusMessageT &&value)
void SetName(NameT &&value)
void SetOwningAccountId(OwningAccountIdT &&value)
bool CreationTimeHasBeenSet() const
void SetCreationTime(CreationTimeT &&value)
const Aws::String & GetOwningAccountId() const
ResourceShare & WithAllowExternalPrincipals(bool value)
bool LastUpdatedTimeHasBeenSet() const
ResourceShare & WithStatusMessage(StatusMessageT &&value)
void SetStatus(ResourceShareStatus value)
void SetResourceShareArn(ResourceShareArnT &&value)
const Aws::String & GetResourceShareArn() const
AWS_RAM_API ResourceShare(Aws::Utils::Json::JsonView jsonValue)
const Aws::Utils::DateTime & GetCreationTime() const
ResourceShare & WithCreationTime(CreationTimeT &&value)
bool AllowExternalPrincipalsHasBeenSet() const
void SetResourceShareConfiguration(ResourceShareConfigurationT &&value)
ResourceShareFeatureSet GetFeatureSet() const
AWS_RAM_API ResourceShare & operator=(Aws::Utils::Json::JsonView jsonValue)
bool ResourceShareArnHasBeenSet() const
bool StatusHasBeenSet() const
const Aws::String & GetStatusMessage() const
ResourceShare & WithResourceShareArn(ResourceShareArnT &&value)
ResourceShare & WithResourceShareConfiguration(ResourceShareConfigurationT &&value)
ResourceShare & WithName(NameT &&value)
bool ResourceShareConfigurationHasBeenSet() const
bool FeatureSetHasBeenSet() const
bool StatusMessageHasBeenSet() const
ResourceShare & WithStatus(ResourceShareStatus value)
AWS_RAM_API Aws::Utils::Json::JsonValue Jsonize() const
ResourceShare & WithTags(TagsT &&value)
const Aws::String & GetName() const
void SetAllowExternalPrincipals(bool value)
ResourceShare & AddTags(TagsT &&value)
bool GetAllowExternalPrincipals() const
const Aws::Vector< Tag > & GetTags() const
void SetFeatureSet(ResourceShareFeatureSet value)
const ResourceShareConfiguration & GetResourceShareConfiguration() const
bool OwningAccountIdHasBeenSet() const
AWS_RAM_API ResourceShare()=default
bool TagsHasBeenSet() const
const Aws::Utils::DateTime & GetLastUpdatedTime() const
ResourceShare & WithOwningAccountId(OwningAccountIdT &&value)
ResourceShareStatus GetStatus() const
ResourceShare & WithFeatureSet(ResourceShareFeatureSet value)
void SetLastUpdatedTime(LastUpdatedTimeT &&value)
ResourceShare & WithLastUpdatedTime(LastUpdatedTimeT &&value)
bool NameHasBeenSet() 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