AWS SDK for C++

AWS SDK for C++ Version 1.11.745

Loading...
Searching...
No Matches
Resource.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/guardduty/GuardDuty_EXPORTS.h>
10#include <aws/guardduty/model/AccessKeyDetails.h>
11#include <aws/guardduty/model/Container.h>
12#include <aws/guardduty/model/EbsSnapshotDetails.h>
13#include <aws/guardduty/model/EbsVolumeDetails.h>
14#include <aws/guardduty/model/Ec2ImageDetails.h>
15#include <aws/guardduty/model/EcsClusterDetails.h>
16#include <aws/guardduty/model/EksClusterDetails.h>
17#include <aws/guardduty/model/InstanceDetails.h>
18#include <aws/guardduty/model/KubernetesDetails.h>
19#include <aws/guardduty/model/LambdaDetails.h>
20#include <aws/guardduty/model/RdsDbInstanceDetails.h>
21#include <aws/guardduty/model/RdsDbUserDetails.h>
22#include <aws/guardduty/model/RdsLimitlessDbDetails.h>
23#include <aws/guardduty/model/RecoveryPointDetails.h>
24#include <aws/guardduty/model/S3BucketDetail.h>
25
26#include <utility>
27
28namespace Aws {
29namespace Utils {
30namespace Json {
31class JsonValue;
32class JsonView;
33} // namespace Json
34} // namespace Utils
35namespace GuardDuty {
36namespace Model {
37
45class Resource {
46 public:
47 AWS_GUARDDUTY_API Resource() = default;
48 AWS_GUARDDUTY_API Resource(Aws::Utils::Json::JsonView jsonValue);
49 AWS_GUARDDUTY_API Resource& operator=(Aws::Utils::Json::JsonView jsonValue);
50 AWS_GUARDDUTY_API Aws::Utils::Json::JsonValue Jsonize() const;
51
53
57 inline const AccessKeyDetails& GetAccessKeyDetails() const { return m_accessKeyDetails; }
58 inline bool AccessKeyDetailsHasBeenSet() const { return m_accessKeyDetailsHasBeenSet; }
59 template <typename AccessKeyDetailsT = AccessKeyDetails>
60 void SetAccessKeyDetails(AccessKeyDetailsT&& value) {
61 m_accessKeyDetailsHasBeenSet = true;
62 m_accessKeyDetails = std::forward<AccessKeyDetailsT>(value);
63 }
64 template <typename AccessKeyDetailsT = AccessKeyDetails>
65 Resource& WithAccessKeyDetails(AccessKeyDetailsT&& value) {
66 SetAccessKeyDetails(std::forward<AccessKeyDetailsT>(value));
67 return *this;
68 }
70
72
75 inline const Aws::Vector<S3BucketDetail>& GetS3BucketDetails() const { return m_s3BucketDetails; }
76 inline bool S3BucketDetailsHasBeenSet() const { return m_s3BucketDetailsHasBeenSet; }
77 template <typename S3BucketDetailsT = Aws::Vector<S3BucketDetail>>
78 void SetS3BucketDetails(S3BucketDetailsT&& value) {
79 m_s3BucketDetailsHasBeenSet = true;
80 m_s3BucketDetails = std::forward<S3BucketDetailsT>(value);
81 }
82 template <typename S3BucketDetailsT = Aws::Vector<S3BucketDetail>>
83 Resource& WithS3BucketDetails(S3BucketDetailsT&& value) {
84 SetS3BucketDetails(std::forward<S3BucketDetailsT>(value));
85 return *this;
86 }
87 template <typename S3BucketDetailsT = S3BucketDetail>
88 Resource& AddS3BucketDetails(S3BucketDetailsT&& value) {
89 m_s3BucketDetailsHasBeenSet = true;
90 m_s3BucketDetails.emplace_back(std::forward<S3BucketDetailsT>(value));
91 return *this;
92 }
94
96
100 inline const InstanceDetails& GetInstanceDetails() const { return m_instanceDetails; }
101 inline bool InstanceDetailsHasBeenSet() const { return m_instanceDetailsHasBeenSet; }
102 template <typename InstanceDetailsT = InstanceDetails>
103 void SetInstanceDetails(InstanceDetailsT&& value) {
104 m_instanceDetailsHasBeenSet = true;
105 m_instanceDetails = std::forward<InstanceDetailsT>(value);
106 }
107 template <typename InstanceDetailsT = InstanceDetails>
108 Resource& WithInstanceDetails(InstanceDetailsT&& value) {
109 SetInstanceDetails(std::forward<InstanceDetailsT>(value));
110 return *this;
111 }
113
115
118 inline const EksClusterDetails& GetEksClusterDetails() const { return m_eksClusterDetails; }
119 inline bool EksClusterDetailsHasBeenSet() const { return m_eksClusterDetailsHasBeenSet; }
120 template <typename EksClusterDetailsT = EksClusterDetails>
121 void SetEksClusterDetails(EksClusterDetailsT&& value) {
122 m_eksClusterDetailsHasBeenSet = true;
123 m_eksClusterDetails = std::forward<EksClusterDetailsT>(value);
124 }
125 template <typename EksClusterDetailsT = EksClusterDetails>
126 Resource& WithEksClusterDetails(EksClusterDetailsT&& value) {
127 SetEksClusterDetails(std::forward<EksClusterDetailsT>(value));
128 return *this;
129 }
131
133
137 inline const KubernetesDetails& GetKubernetesDetails() const { return m_kubernetesDetails; }
138 inline bool KubernetesDetailsHasBeenSet() const { return m_kubernetesDetailsHasBeenSet; }
139 template <typename KubernetesDetailsT = KubernetesDetails>
140 void SetKubernetesDetails(KubernetesDetailsT&& value) {
141 m_kubernetesDetailsHasBeenSet = true;
142 m_kubernetesDetails = std::forward<KubernetesDetailsT>(value);
143 }
144 template <typename KubernetesDetailsT = KubernetesDetails>
145 Resource& WithKubernetesDetails(KubernetesDetailsT&& value) {
146 SetKubernetesDetails(std::forward<KubernetesDetailsT>(value));
147 return *this;
148 }
150
152
155 inline const Aws::String& GetResourceType() const { return m_resourceType; }
156 inline bool ResourceTypeHasBeenSet() const { return m_resourceTypeHasBeenSet; }
157 template <typename ResourceTypeT = Aws::String>
158 void SetResourceType(ResourceTypeT&& value) {
159 m_resourceTypeHasBeenSet = true;
160 m_resourceType = std::forward<ResourceTypeT>(value);
161 }
162 template <typename ResourceTypeT = Aws::String>
163 Resource& WithResourceType(ResourceTypeT&& value) {
164 SetResourceType(std::forward<ResourceTypeT>(value));
165 return *this;
166 }
168
170
173 inline const EbsVolumeDetails& GetEbsVolumeDetails() const { return m_ebsVolumeDetails; }
174 inline bool EbsVolumeDetailsHasBeenSet() const { return m_ebsVolumeDetailsHasBeenSet; }
175 template <typename EbsVolumeDetailsT = EbsVolumeDetails>
176 void SetEbsVolumeDetails(EbsVolumeDetailsT&& value) {
177 m_ebsVolumeDetailsHasBeenSet = true;
178 m_ebsVolumeDetails = std::forward<EbsVolumeDetailsT>(value);
179 }
180 template <typename EbsVolumeDetailsT = EbsVolumeDetails>
181 Resource& WithEbsVolumeDetails(EbsVolumeDetailsT&& value) {
182 SetEbsVolumeDetails(std::forward<EbsVolumeDetailsT>(value));
183 return *this;
184 }
186
188
191 inline const EcsClusterDetails& GetEcsClusterDetails() const { return m_ecsClusterDetails; }
192 inline bool EcsClusterDetailsHasBeenSet() const { return m_ecsClusterDetailsHasBeenSet; }
193 template <typename EcsClusterDetailsT = EcsClusterDetails>
194 void SetEcsClusterDetails(EcsClusterDetailsT&& value) {
195 m_ecsClusterDetailsHasBeenSet = true;
196 m_ecsClusterDetails = std::forward<EcsClusterDetailsT>(value);
197 }
198 template <typename EcsClusterDetailsT = EcsClusterDetails>
199 Resource& WithEcsClusterDetails(EcsClusterDetailsT&& value) {
200 SetEcsClusterDetails(std::forward<EcsClusterDetailsT>(value));
201 return *this;
202 }
204
206
207 inline const Container& GetContainerDetails() const { return m_containerDetails; }
208 inline bool ContainerDetailsHasBeenSet() const { return m_containerDetailsHasBeenSet; }
209 template <typename ContainerDetailsT = Container>
210 void SetContainerDetails(ContainerDetailsT&& value) {
211 m_containerDetailsHasBeenSet = true;
212 m_containerDetails = std::forward<ContainerDetailsT>(value);
213 }
214 template <typename ContainerDetailsT = Container>
215 Resource& WithContainerDetails(ContainerDetailsT&& value) {
216 SetContainerDetails(std::forward<ContainerDetailsT>(value));
217 return *this;
218 }
220
222
226 inline const RdsDbInstanceDetails& GetRdsDbInstanceDetails() const { return m_rdsDbInstanceDetails; }
227 inline bool RdsDbInstanceDetailsHasBeenSet() const { return m_rdsDbInstanceDetailsHasBeenSet; }
228 template <typename RdsDbInstanceDetailsT = RdsDbInstanceDetails>
229 void SetRdsDbInstanceDetails(RdsDbInstanceDetailsT&& value) {
230 m_rdsDbInstanceDetailsHasBeenSet = true;
231 m_rdsDbInstanceDetails = std::forward<RdsDbInstanceDetailsT>(value);
232 }
233 template <typename RdsDbInstanceDetailsT = RdsDbInstanceDetails>
234 Resource& WithRdsDbInstanceDetails(RdsDbInstanceDetailsT&& value) {
235 SetRdsDbInstanceDetails(std::forward<RdsDbInstanceDetailsT>(value));
236 return *this;
237 }
239
241
245 inline const RdsLimitlessDbDetails& GetRdsLimitlessDbDetails() const { return m_rdsLimitlessDbDetails; }
246 inline bool RdsLimitlessDbDetailsHasBeenSet() const { return m_rdsLimitlessDbDetailsHasBeenSet; }
247 template <typename RdsLimitlessDbDetailsT = RdsLimitlessDbDetails>
248 void SetRdsLimitlessDbDetails(RdsLimitlessDbDetailsT&& value) {
249 m_rdsLimitlessDbDetailsHasBeenSet = true;
250 m_rdsLimitlessDbDetails = std::forward<RdsLimitlessDbDetailsT>(value);
251 }
252 template <typename RdsLimitlessDbDetailsT = RdsLimitlessDbDetails>
253 Resource& WithRdsLimitlessDbDetails(RdsLimitlessDbDetailsT&& value) {
254 SetRdsLimitlessDbDetails(std::forward<RdsLimitlessDbDetailsT>(value));
255 return *this;
256 }
258
260
264 inline const RdsDbUserDetails& GetRdsDbUserDetails() const { return m_rdsDbUserDetails; }
265 inline bool RdsDbUserDetailsHasBeenSet() const { return m_rdsDbUserDetailsHasBeenSet; }
266 template <typename RdsDbUserDetailsT = RdsDbUserDetails>
267 void SetRdsDbUserDetails(RdsDbUserDetailsT&& value) {
268 m_rdsDbUserDetailsHasBeenSet = true;
269 m_rdsDbUserDetails = std::forward<RdsDbUserDetailsT>(value);
270 }
271 template <typename RdsDbUserDetailsT = RdsDbUserDetails>
272 Resource& WithRdsDbUserDetails(RdsDbUserDetailsT&& value) {
273 SetRdsDbUserDetails(std::forward<RdsDbUserDetailsT>(value));
274 return *this;
275 }
277
279
283 inline const LambdaDetails& GetLambdaDetails() const { return m_lambdaDetails; }
284 inline bool LambdaDetailsHasBeenSet() const { return m_lambdaDetailsHasBeenSet; }
285 template <typename LambdaDetailsT = LambdaDetails>
286 void SetLambdaDetails(LambdaDetailsT&& value) {
287 m_lambdaDetailsHasBeenSet = true;
288 m_lambdaDetails = std::forward<LambdaDetailsT>(value);
289 }
290 template <typename LambdaDetailsT = LambdaDetails>
291 Resource& WithLambdaDetails(LambdaDetailsT&& value) {
292 SetLambdaDetails(std::forward<LambdaDetailsT>(value));
293 return *this;
294 }
296
298
301 inline const EbsSnapshotDetails& GetEbsSnapshotDetails() const { return m_ebsSnapshotDetails; }
302 inline bool EbsSnapshotDetailsHasBeenSet() const { return m_ebsSnapshotDetailsHasBeenSet; }
303 template <typename EbsSnapshotDetailsT = EbsSnapshotDetails>
304 void SetEbsSnapshotDetails(EbsSnapshotDetailsT&& value) {
305 m_ebsSnapshotDetailsHasBeenSet = true;
306 m_ebsSnapshotDetails = std::forward<EbsSnapshotDetailsT>(value);
307 }
308 template <typename EbsSnapshotDetailsT = EbsSnapshotDetails>
309 Resource& WithEbsSnapshotDetails(EbsSnapshotDetailsT&& value) {
310 SetEbsSnapshotDetails(std::forward<EbsSnapshotDetailsT>(value));
311 return *this;
312 }
314
316
319 inline const Ec2ImageDetails& GetEc2ImageDetails() const { return m_ec2ImageDetails; }
320 inline bool Ec2ImageDetailsHasBeenSet() const { return m_ec2ImageDetailsHasBeenSet; }
321 template <typename Ec2ImageDetailsT = Ec2ImageDetails>
322 void SetEc2ImageDetails(Ec2ImageDetailsT&& value) {
323 m_ec2ImageDetailsHasBeenSet = true;
324 m_ec2ImageDetails = std::forward<Ec2ImageDetailsT>(value);
325 }
326 template <typename Ec2ImageDetailsT = Ec2ImageDetails>
327 Resource& WithEc2ImageDetails(Ec2ImageDetailsT&& value) {
328 SetEc2ImageDetails(std::forward<Ec2ImageDetailsT>(value));
329 return *this;
330 }
332
334
337 inline const RecoveryPointDetails& GetRecoveryPointDetails() const { return m_recoveryPointDetails; }
338 inline bool RecoveryPointDetailsHasBeenSet() const { return m_recoveryPointDetailsHasBeenSet; }
339 template <typename RecoveryPointDetailsT = RecoveryPointDetails>
340 void SetRecoveryPointDetails(RecoveryPointDetailsT&& value) {
341 m_recoveryPointDetailsHasBeenSet = true;
342 m_recoveryPointDetails = std::forward<RecoveryPointDetailsT>(value);
343 }
344 template <typename RecoveryPointDetailsT = RecoveryPointDetails>
345 Resource& WithRecoveryPointDetails(RecoveryPointDetailsT&& value) {
346 SetRecoveryPointDetails(std::forward<RecoveryPointDetailsT>(value));
347 return *this;
348 }
350 private:
351 AccessKeyDetails m_accessKeyDetails;
352
353 Aws::Vector<S3BucketDetail> m_s3BucketDetails;
354
355 InstanceDetails m_instanceDetails;
356
357 EksClusterDetails m_eksClusterDetails;
358
359 KubernetesDetails m_kubernetesDetails;
360
361 Aws::String m_resourceType;
362
363 EbsVolumeDetails m_ebsVolumeDetails;
364
365 EcsClusterDetails m_ecsClusterDetails;
366
367 Container m_containerDetails;
368
369 RdsDbInstanceDetails m_rdsDbInstanceDetails;
370
371 RdsLimitlessDbDetails m_rdsLimitlessDbDetails;
372
373 RdsDbUserDetails m_rdsDbUserDetails;
374
375 LambdaDetails m_lambdaDetails;
376
377 EbsSnapshotDetails m_ebsSnapshotDetails;
378
379 Ec2ImageDetails m_ec2ImageDetails;
380
381 RecoveryPointDetails m_recoveryPointDetails;
382 bool m_accessKeyDetailsHasBeenSet = false;
383 bool m_s3BucketDetailsHasBeenSet = false;
384 bool m_instanceDetailsHasBeenSet = false;
385 bool m_eksClusterDetailsHasBeenSet = false;
386 bool m_kubernetesDetailsHasBeenSet = false;
387 bool m_resourceTypeHasBeenSet = false;
388 bool m_ebsVolumeDetailsHasBeenSet = false;
389 bool m_ecsClusterDetailsHasBeenSet = false;
390 bool m_containerDetailsHasBeenSet = false;
391 bool m_rdsDbInstanceDetailsHasBeenSet = false;
392 bool m_rdsLimitlessDbDetailsHasBeenSet = false;
393 bool m_rdsDbUserDetailsHasBeenSet = false;
394 bool m_lambdaDetailsHasBeenSet = false;
395 bool m_ebsSnapshotDetailsHasBeenSet = false;
396 bool m_ec2ImageDetailsHasBeenSet = false;
397 bool m_recoveryPointDetailsHasBeenSet = false;
398};
399
400} // namespace Model
401} // namespace GuardDuty
402} // namespace Aws
void SetRdsLimitlessDbDetails(RdsLimitlessDbDetailsT &&value)
Definition Resource.h:248
void SetContainerDetails(ContainerDetailsT &&value)
Definition Resource.h:210
void SetAccessKeyDetails(AccessKeyDetailsT &&value)
Definition Resource.h:60
void SetEbsSnapshotDetails(EbsSnapshotDetailsT &&value)
Definition Resource.h:304
bool AccessKeyDetailsHasBeenSet() const
Definition Resource.h:58
void SetRdsDbInstanceDetails(RdsDbInstanceDetailsT &&value)
Definition Resource.h:229
AWS_GUARDDUTY_API Resource(Aws::Utils::Json::JsonView jsonValue)
const KubernetesDetails & GetKubernetesDetails() const
Definition Resource.h:137
AWS_GUARDDUTY_API Resource()=default
void SetEcsClusterDetails(EcsClusterDetailsT &&value)
Definition Resource.h:194
const EcsClusterDetails & GetEcsClusterDetails() const
Definition Resource.h:191
Resource & WithS3BucketDetails(S3BucketDetailsT &&value)
Definition Resource.h:83
bool S3BucketDetailsHasBeenSet() const
Definition Resource.h:76
void SetEbsVolumeDetails(EbsVolumeDetailsT &&value)
Definition Resource.h:176
Resource & WithInstanceDetails(InstanceDetailsT &&value)
Definition Resource.h:108
bool EksClusterDetailsHasBeenSet() const
Definition Resource.h:119
void SetEc2ImageDetails(Ec2ImageDetailsT &&value)
Definition Resource.h:322
void SetEksClusterDetails(EksClusterDetailsT &&value)
Definition Resource.h:121
Resource & WithEbsVolumeDetails(EbsVolumeDetailsT &&value)
Definition Resource.h:181
Resource & WithEcsClusterDetails(EcsClusterDetailsT &&value)
Definition Resource.h:199
bool KubernetesDetailsHasBeenSet() const
Definition Resource.h:138
bool Ec2ImageDetailsHasBeenSet() const
Definition Resource.h:320
void SetKubernetesDetails(KubernetesDetailsT &&value)
Definition Resource.h:140
void SetResourceType(ResourceTypeT &&value)
Definition Resource.h:158
bool EcsClusterDetailsHasBeenSet() const
Definition Resource.h:192
void SetS3BucketDetails(S3BucketDetailsT &&value)
Definition Resource.h:78
Resource & WithKubernetesDetails(KubernetesDetailsT &&value)
Definition Resource.h:145
bool EbsSnapshotDetailsHasBeenSet() const
Definition Resource.h:302
Resource & WithRecoveryPointDetails(RecoveryPointDetailsT &&value)
Definition Resource.h:345
Resource & WithContainerDetails(ContainerDetailsT &&value)
Definition Resource.h:215
bool ResourceTypeHasBeenSet() const
Definition Resource.h:156
Resource & WithAccessKeyDetails(AccessKeyDetailsT &&value)
Definition Resource.h:65
Resource & WithResourceType(ResourceTypeT &&value)
Definition Resource.h:163
const LambdaDetails & GetLambdaDetails() const
Definition Resource.h:283
const InstanceDetails & GetInstanceDetails() const
Definition Resource.h:100
const EksClusterDetails & GetEksClusterDetails() const
Definition Resource.h:118
bool RdsLimitlessDbDetailsHasBeenSet() const
Definition Resource.h:246
void SetRdsDbUserDetails(RdsDbUserDetailsT &&value)
Definition Resource.h:267
void SetInstanceDetails(InstanceDetailsT &&value)
Definition Resource.h:103
AWS_GUARDDUTY_API Resource & operator=(Aws::Utils::Json::JsonView jsonValue)
bool ContainerDetailsHasBeenSet() const
Definition Resource.h:208
const RdsDbUserDetails & GetRdsDbUserDetails() const
Definition Resource.h:264
const AccessKeyDetails & GetAccessKeyDetails() const
Definition Resource.h:57
bool LambdaDetailsHasBeenSet() const
Definition Resource.h:284
bool RdsDbUserDetailsHasBeenSet() const
Definition Resource.h:265
const EbsVolumeDetails & GetEbsVolumeDetails() const
Definition Resource.h:173
void SetLambdaDetails(LambdaDetailsT &&value)
Definition Resource.h:286
const EbsSnapshotDetails & GetEbsSnapshotDetails() const
Definition Resource.h:301
Resource & WithEksClusterDetails(EksClusterDetailsT &&value)
Definition Resource.h:126
Resource & WithLambdaDetails(LambdaDetailsT &&value)
Definition Resource.h:291
const Ec2ImageDetails & GetEc2ImageDetails() const
Definition Resource.h:319
Resource & AddS3BucketDetails(S3BucketDetailsT &&value)
Definition Resource.h:88
bool InstanceDetailsHasBeenSet() const
Definition Resource.h:101
const Container & GetContainerDetails() const
Definition Resource.h:207
Resource & WithEc2ImageDetails(Ec2ImageDetailsT &&value)
Definition Resource.h:327
Resource & WithRdsLimitlessDbDetails(RdsLimitlessDbDetailsT &&value)
Definition Resource.h:253
bool RecoveryPointDetailsHasBeenSet() const
Definition Resource.h:338
const RdsDbInstanceDetails & GetRdsDbInstanceDetails() const
Definition Resource.h:226
bool EbsVolumeDetailsHasBeenSet() const
Definition Resource.h:174
Resource & WithRdsDbUserDetails(RdsDbUserDetailsT &&value)
Definition Resource.h:272
void SetRecoveryPointDetails(RecoveryPointDetailsT &&value)
Definition Resource.h:340
const RecoveryPointDetails & GetRecoveryPointDetails() const
Definition Resource.h:337
Resource & WithEbsSnapshotDetails(EbsSnapshotDetailsT &&value)
Definition Resource.h:309
const RdsLimitlessDbDetails & GetRdsLimitlessDbDetails() const
Definition Resource.h:245
const Aws::Vector< S3BucketDetail > & GetS3BucketDetails() const
Definition Resource.h:75
AWS_GUARDDUTY_API Aws::Utils::Json::JsonValue Jsonize() const
bool RdsDbInstanceDetailsHasBeenSet() const
Definition Resource.h:227
const Aws::String & GetResourceType() const
Definition Resource.h:155
Resource & WithRdsDbInstanceDetails(RdsDbInstanceDetailsT &&value)
Definition Resource.h:234
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue