AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
ResourceShare.h
1
6#pragma once
7#include <aws/ram/RAM_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/ram/model/ResourceShareStatus.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/core/utils/DateTime.h>
12#include <aws/ram/model/ResourceShareFeatureSet.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 ResourceShare() = default;
43
44
46
51 inline const Aws::String& GetResourceShareArn() const { return m_resourceShareArn; }
52 inline bool ResourceShareArnHasBeenSet() const { return m_resourceShareArnHasBeenSet; }
53 template<typename ResourceShareArnT = Aws::String>
54 void SetResourceShareArn(ResourceShareArnT&& value) { m_resourceShareArnHasBeenSet = true; m_resourceShareArn = std::forward<ResourceShareArnT>(value); }
55 template<typename ResourceShareArnT = Aws::String>
56 ResourceShare& WithResourceShareArn(ResourceShareArnT&& value) { SetResourceShareArn(std::forward<ResourceShareArnT>(value)); return *this;}
58
60
63 inline const Aws::String& GetName() const { return m_name; }
64 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
65 template<typename NameT = Aws::String>
66 void SetName(NameT&& value) { m_nameHasBeenSet = true; m_name = std::forward<NameT>(value); }
67 template<typename NameT = Aws::String>
68 ResourceShare& WithName(NameT&& value) { SetName(std::forward<NameT>(value)); return *this;}
70
72
75 inline const Aws::String& GetOwningAccountId() const { return m_owningAccountId; }
76 inline bool OwningAccountIdHasBeenSet() const { return m_owningAccountIdHasBeenSet; }
77 template<typename OwningAccountIdT = Aws::String>
78 void SetOwningAccountId(OwningAccountIdT&& value) { m_owningAccountIdHasBeenSet = true; m_owningAccountId = std::forward<OwningAccountIdT>(value); }
79 template<typename OwningAccountIdT = Aws::String>
80 ResourceShare& WithOwningAccountId(OwningAccountIdT&& value) { SetOwningAccountId(std::forward<OwningAccountIdT>(value)); return *this;}
82
84
92 inline bool GetAllowExternalPrincipals() const { return m_allowExternalPrincipals; }
93 inline bool AllowExternalPrincipalsHasBeenSet() const { return m_allowExternalPrincipalsHasBeenSet; }
94 inline void SetAllowExternalPrincipals(bool value) { m_allowExternalPrincipalsHasBeenSet = true; m_allowExternalPrincipals = value; }
95 inline ResourceShare& WithAllowExternalPrincipals(bool value) { SetAllowExternalPrincipals(value); return *this;}
97
99
102 inline ResourceShareStatus GetStatus() const { return m_status; }
103 inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
104 inline void SetStatus(ResourceShareStatus value) { m_statusHasBeenSet = true; m_status = value; }
105 inline ResourceShare& WithStatus(ResourceShareStatus value) { SetStatus(value); return *this;}
107
109
112 inline const Aws::String& GetStatusMessage() const { return m_statusMessage; }
113 inline bool StatusMessageHasBeenSet() const { return m_statusMessageHasBeenSet; }
114 template<typename StatusMessageT = Aws::String>
115 void SetStatusMessage(StatusMessageT&& value) { m_statusMessageHasBeenSet = true; m_statusMessage = std::forward<StatusMessageT>(value); }
116 template<typename StatusMessageT = Aws::String>
117 ResourceShare& WithStatusMessage(StatusMessageT&& value) { SetStatusMessage(std::forward<StatusMessageT>(value)); return *this;}
119
121
124 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
125 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
126 template<typename TagsT = Aws::Vector<Tag>>
127 void SetTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags = std::forward<TagsT>(value); }
128 template<typename TagsT = Aws::Vector<Tag>>
129 ResourceShare& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
130 template<typename TagsT = Tag>
131 ResourceShare& AddTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags.emplace_back(std::forward<TagsT>(value)); return *this; }
133
135
138 inline const Aws::Utils::DateTime& GetCreationTime() const { return m_creationTime; }
139 inline bool CreationTimeHasBeenSet() const { return m_creationTimeHasBeenSet; }
140 template<typename CreationTimeT = Aws::Utils::DateTime>
141 void SetCreationTime(CreationTimeT&& value) { m_creationTimeHasBeenSet = true; m_creationTime = std::forward<CreationTimeT>(value); }
142 template<typename CreationTimeT = Aws::Utils::DateTime>
143 ResourceShare& WithCreationTime(CreationTimeT&& value) { SetCreationTime(std::forward<CreationTimeT>(value)); return *this;}
145
147
150 inline const Aws::Utils::DateTime& GetLastUpdatedTime() const { return m_lastUpdatedTime; }
151 inline bool LastUpdatedTimeHasBeenSet() const { return m_lastUpdatedTimeHasBeenSet; }
152 template<typename LastUpdatedTimeT = Aws::Utils::DateTime>
153 void SetLastUpdatedTime(LastUpdatedTimeT&& value) { m_lastUpdatedTimeHasBeenSet = true; m_lastUpdatedTime = std::forward<LastUpdatedTimeT>(value); }
154 template<typename LastUpdatedTimeT = Aws::Utils::DateTime>
155 ResourceShare& WithLastUpdatedTime(LastUpdatedTimeT&& value) { SetLastUpdatedTime(std::forward<LastUpdatedTimeT>(value)); return *this;}
157
159
179 inline ResourceShareFeatureSet GetFeatureSet() const { return m_featureSet; }
180 inline bool FeatureSetHasBeenSet() const { return m_featureSetHasBeenSet; }
181 inline void SetFeatureSet(ResourceShareFeatureSet value) { m_featureSetHasBeenSet = true; m_featureSet = value; }
184 private:
185
186 Aws::String m_resourceShareArn;
187 bool m_resourceShareArnHasBeenSet = false;
188
189 Aws::String m_name;
190 bool m_nameHasBeenSet = false;
191
192 Aws::String m_owningAccountId;
193 bool m_owningAccountIdHasBeenSet = false;
194
195 bool m_allowExternalPrincipals{false};
196 bool m_allowExternalPrincipalsHasBeenSet = false;
197
199 bool m_statusHasBeenSet = false;
200
201 Aws::String m_statusMessage;
202 bool m_statusMessageHasBeenSet = false;
203
204 Aws::Vector<Tag> m_tags;
205 bool m_tagsHasBeenSet = false;
206
207 Aws::Utils::DateTime m_creationTime{};
208 bool m_creationTimeHasBeenSet = false;
209
210 Aws::Utils::DateTime m_lastUpdatedTime{};
211 bool m_lastUpdatedTimeHasBeenSet = false;
212
214 bool m_featureSetHasBeenSet = false;
215 };
216
217} // namespace Model
218} // namespace RAM
219} // namespace Aws
void SetStatusMessage(StatusMessageT &&value)
void SetName(NameT &&value)
void SetOwningAccountId(OwningAccountIdT &&value)
void SetCreationTime(CreationTimeT &&value)
const Aws::String & GetOwningAccountId() const
ResourceShare & WithAllowExternalPrincipals(bool value)
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
ResourceShareFeatureSet GetFeatureSet() const
AWS_RAM_API ResourceShare & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::String & GetStatusMessage() const
ResourceShare & WithResourceShareArn(ResourceShareArnT &&value)
ResourceShare & WithName(NameT &&value)
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)
const Aws::Vector< Tag > & GetTags() const
void SetFeatureSet(ResourceShareFeatureSet value)
AWS_RAM_API ResourceShare()=default
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)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue