AWS SDK for C++

AWS SDK for C++ Version 1.11.709

Loading...
Searching...
No Matches
Resource.h
1
6#pragma once
7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/ram/RAM_EXPORTS.h>
10#include <aws/ram/model/ResourceRegionScope.h>
11#include <aws/ram/model/ResourceStatus.h>
12
13#include <utility>
14
15namespace Aws {
16namespace Utils {
17namespace Json {
18class JsonValue;
19class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace RAM {
23namespace Model {
24
31class Resource {
32 public:
33 AWS_RAM_API Resource() = default;
34 AWS_RAM_API Resource(Aws::Utils::Json::JsonView jsonValue);
37
39
44 inline const Aws::String& GetArn() const { return m_arn; }
45 inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; }
46 template <typename ArnT = Aws::String>
47 void SetArn(ArnT&& value) {
48 m_arnHasBeenSet = true;
49 m_arn = std::forward<ArnT>(value);
50 }
51 template <typename ArnT = Aws::String>
52 Resource& WithArn(ArnT&& value) {
53 SetArn(std::forward<ArnT>(value));
54 return *this;
55 }
57
59
65 inline const Aws::String& GetType() const { return m_type; }
66 inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
67 template <typename TypeT = Aws::String>
68 void SetType(TypeT&& value) {
69 m_typeHasBeenSet = true;
70 m_type = std::forward<TypeT>(value);
71 }
72 template <typename TypeT = Aws::String>
73 Resource& WithType(TypeT&& value) {
74 SetType(std::forward<TypeT>(value));
75 return *this;
76 }
78
80
86 inline const Aws::String& GetResourceShareArn() const { return m_resourceShareArn; }
87 inline bool ResourceShareArnHasBeenSet() const { return m_resourceShareArnHasBeenSet; }
88 template <typename ResourceShareArnT = Aws::String>
89 void SetResourceShareArn(ResourceShareArnT&& value) {
90 m_resourceShareArnHasBeenSet = true;
91 m_resourceShareArn = std::forward<ResourceShareArnT>(value);
92 }
93 template <typename ResourceShareArnT = Aws::String>
94 Resource& WithResourceShareArn(ResourceShareArnT&& value) {
95 SetResourceShareArn(std::forward<ResourceShareArnT>(value));
96 return *this;
97 }
99
101
107 inline const Aws::String& GetResourceGroupArn() const { return m_resourceGroupArn; }
108 inline bool ResourceGroupArnHasBeenSet() const { return m_resourceGroupArnHasBeenSet; }
109 template <typename ResourceGroupArnT = Aws::String>
110 void SetResourceGroupArn(ResourceGroupArnT&& value) {
111 m_resourceGroupArnHasBeenSet = true;
112 m_resourceGroupArn = std::forward<ResourceGroupArnT>(value);
113 }
114 template <typename ResourceGroupArnT = Aws::String>
115 Resource& WithResourceGroupArn(ResourceGroupArnT&& value) {
116 SetResourceGroupArn(std::forward<ResourceGroupArnT>(value));
117 return *this;
118 }
120
122
125 inline ResourceStatus GetStatus() const { return m_status; }
126 inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
127 inline void SetStatus(ResourceStatus value) {
128 m_statusHasBeenSet = true;
129 m_status = value;
130 }
132 SetStatus(value);
133 return *this;
134 }
136
138
141 inline const Aws::String& GetStatusMessage() const { return m_statusMessage; }
142 inline bool StatusMessageHasBeenSet() const { return m_statusMessageHasBeenSet; }
143 template <typename StatusMessageT = Aws::String>
144 void SetStatusMessage(StatusMessageT&& value) {
145 m_statusMessageHasBeenSet = true;
146 m_statusMessage = std::forward<StatusMessageT>(value);
147 }
148 template <typename StatusMessageT = Aws::String>
149 Resource& WithStatusMessage(StatusMessageT&& value) {
150 SetStatusMessage(std::forward<StatusMessageT>(value));
151 return *this;
152 }
154
156
160 inline const Aws::Utils::DateTime& GetCreationTime() const { return m_creationTime; }
161 inline bool CreationTimeHasBeenSet() const { return m_creationTimeHasBeenSet; }
162 template <typename CreationTimeT = Aws::Utils::DateTime>
163 void SetCreationTime(CreationTimeT&& value) {
164 m_creationTimeHasBeenSet = true;
165 m_creationTime = std::forward<CreationTimeT>(value);
166 }
167 template <typename CreationTimeT = Aws::Utils::DateTime>
168 Resource& WithCreationTime(CreationTimeT&& value) {
169 SetCreationTime(std::forward<CreationTimeT>(value));
170 return *this;
171 }
173
175
179 inline const Aws::Utils::DateTime& GetLastUpdatedTime() const { return m_lastUpdatedTime; }
180 inline bool LastUpdatedTimeHasBeenSet() const { return m_lastUpdatedTimeHasBeenSet; }
181 template <typename LastUpdatedTimeT = Aws::Utils::DateTime>
182 void SetLastUpdatedTime(LastUpdatedTimeT&& value) {
183 m_lastUpdatedTimeHasBeenSet = true;
184 m_lastUpdatedTime = std::forward<LastUpdatedTimeT>(value);
185 }
186 template <typename LastUpdatedTimeT = Aws::Utils::DateTime>
187 Resource& WithLastUpdatedTime(LastUpdatedTimeT&& value) {
188 SetLastUpdatedTime(std::forward<LastUpdatedTimeT>(value));
189 return *this;
190 }
192
194
201 inline ResourceRegionScope GetResourceRegionScope() const { return m_resourceRegionScope; }
202 inline bool ResourceRegionScopeHasBeenSet() const { return m_resourceRegionScopeHasBeenSet; }
204 m_resourceRegionScopeHasBeenSet = true;
205 m_resourceRegionScope = value;
206 }
209 return *this;
210 }
212 private:
213 Aws::String m_arn;
214
215 Aws::String m_type;
216
217 Aws::String m_resourceShareArn;
218
219 Aws::String m_resourceGroupArn;
220
222
223 Aws::String m_statusMessage;
224
225 Aws::Utils::DateTime m_creationTime{};
226
227 Aws::Utils::DateTime m_lastUpdatedTime{};
228
230 bool m_arnHasBeenSet = false;
231 bool m_typeHasBeenSet = false;
232 bool m_resourceShareArnHasBeenSet = false;
233 bool m_resourceGroupArnHasBeenSet = false;
234 bool m_statusHasBeenSet = false;
235 bool m_statusMessageHasBeenSet = false;
236 bool m_creationTimeHasBeenSet = false;
237 bool m_lastUpdatedTimeHasBeenSet = false;
238 bool m_resourceRegionScopeHasBeenSet = false;
239};
240
241} // namespace Model
242} // namespace RAM
243} // namespace Aws
Resource & WithCreationTime(CreationTimeT &&value)
Definition Resource.h:168
bool CreationTimeHasBeenSet() const
Definition Resource.h:161
AWS_RAM_API Resource()=default
AWS_RAM_API Resource & operator=(Aws::Utils::Json::JsonView jsonValue)
ResourceRegionScope GetResourceRegionScope() const
Definition Resource.h:201
void SetArn(ArnT &&value)
Definition Resource.h:47
bool StatusHasBeenSet() const
Definition Resource.h:126
Resource & WithResourceGroupArn(ResourceGroupArnT &&value)
Definition Resource.h:115
const Aws::String & GetStatusMessage() const
Definition Resource.h:141
const Aws::String & GetResourceGroupArn() const
Definition Resource.h:107
void SetStatusMessage(StatusMessageT &&value)
Definition Resource.h:144
void SetResourceShareArn(ResourceShareArnT &&value)
Definition Resource.h:89
void SetLastUpdatedTime(LastUpdatedTimeT &&value)
Definition Resource.h:182
bool LastUpdatedTimeHasBeenSet() const
Definition Resource.h:180
Resource & WithStatus(ResourceStatus value)
Definition Resource.h:131
bool StatusMessageHasBeenSet() const
Definition Resource.h:142
const Aws::String & GetResourceShareArn() const
Definition Resource.h:86
void SetStatus(ResourceStatus value)
Definition Resource.h:127
const Aws::String & GetType() const
Definition Resource.h:65
Resource & WithArn(ArnT &&value)
Definition Resource.h:52
bool ArnHasBeenSet() const
Definition Resource.h:45
bool ResourceRegionScopeHasBeenSet() const
Definition Resource.h:202
const Aws::Utils::DateTime & GetLastUpdatedTime() const
Definition Resource.h:179
Resource & WithResourceRegionScope(ResourceRegionScope value)
Definition Resource.h:207
bool TypeHasBeenSet() const
Definition Resource.h:66
bool ResourceShareArnHasBeenSet() const
Definition Resource.h:87
void SetResourceGroupArn(ResourceGroupArnT &&value)
Definition Resource.h:110
void SetCreationTime(CreationTimeT &&value)
Definition Resource.h:163
Resource & WithResourceShareArn(ResourceShareArnT &&value)
Definition Resource.h:94
const Aws::Utils::DateTime & GetCreationTime() const
Definition Resource.h:160
Resource & WithLastUpdatedTime(LastUpdatedTimeT &&value)
Definition Resource.h:187
ResourceStatus GetStatus() const
Definition Resource.h:125
void SetType(TypeT &&value)
Definition Resource.h:68
Resource & WithStatusMessage(StatusMessageT &&value)
Definition Resource.h:149
bool ResourceGroupArnHasBeenSet() const
Definition Resource.h:108
Resource & WithType(TypeT &&value)
Definition Resource.h:73
const Aws::String & GetArn() const
Definition Resource.h:44
void SetResourceRegionScope(ResourceRegionScope value)
Definition Resource.h:203
AWS_RAM_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_RAM_API Resource(Aws::Utils::Json::JsonView jsonValue)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue