AWS SDK for C++

AWS SDK for C++ Version 1.11.612

Loading...
Searching...
No Matches
Recommendation.h
1
6#pragma once
7#include <aws/trustedadvisor/TrustedAdvisor_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/core/utils/DateTime.h>
11#include <aws/trustedadvisor/model/RecommendationLifecycleStage.h>
12#include <aws/trustedadvisor/model/RecommendationPillarSpecificAggregates.h>
13#include <aws/trustedadvisor/model/RecommendationResourcesAggregates.h>
14#include <aws/trustedadvisor/model/RecommendationSource.h>
15#include <aws/trustedadvisor/model/RecommendationStatus.h>
16#include <aws/trustedadvisor/model/RecommendationType.h>
17#include <aws/trustedadvisor/model/UpdateRecommendationLifecycleStageReasonCode.h>
18#include <aws/trustedadvisor/model/RecommendationPillar.h>
19#include <utility>
20
21namespace Aws
22{
23namespace Utils
24{
25namespace Json
26{
27 class JsonValue;
28 class JsonView;
29} // namespace Json
30} // namespace Utils
31namespace TrustedAdvisor
32{
33namespace Model
34{
35
42 {
43 public:
44 AWS_TRUSTEDADVISOR_API Recommendation() = default;
45 AWS_TRUSTEDADVISOR_API Recommendation(Aws::Utils::Json::JsonView jsonValue);
46 AWS_TRUSTEDADVISOR_API Recommendation& operator=(Aws::Utils::Json::JsonView jsonValue);
47 AWS_TRUSTEDADVISOR_API Aws::Utils::Json::JsonValue Jsonize() const;
48
49
51
54 inline const Aws::String& GetArn() const { return m_arn; }
55 inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; }
56 template<typename ArnT = Aws::String>
57 void SetArn(ArnT&& value) { m_arnHasBeenSet = true; m_arn = std::forward<ArnT>(value); }
58 template<typename ArnT = Aws::String>
59 Recommendation& WithArn(ArnT&& value) { SetArn(std::forward<ArnT>(value)); return *this;}
61
63
66 inline const Aws::Vector<Aws::String>& GetAwsServices() const { return m_awsServices; }
67 inline bool AwsServicesHasBeenSet() const { return m_awsServicesHasBeenSet; }
68 template<typename AwsServicesT = Aws::Vector<Aws::String>>
69 void SetAwsServices(AwsServicesT&& value) { m_awsServicesHasBeenSet = true; m_awsServices = std::forward<AwsServicesT>(value); }
70 template<typename AwsServicesT = Aws::Vector<Aws::String>>
71 Recommendation& WithAwsServices(AwsServicesT&& value) { SetAwsServices(std::forward<AwsServicesT>(value)); return *this;}
72 template<typename AwsServicesT = Aws::String>
73 Recommendation& AddAwsServices(AwsServicesT&& value) { m_awsServicesHasBeenSet = true; m_awsServices.emplace_back(std::forward<AwsServicesT>(value)); return *this; }
75
77
80 inline const Aws::String& GetCheckArn() const { return m_checkArn; }
81 inline bool CheckArnHasBeenSet() const { return m_checkArnHasBeenSet; }
82 template<typename CheckArnT = Aws::String>
83 void SetCheckArn(CheckArnT&& value) { m_checkArnHasBeenSet = true; m_checkArn = std::forward<CheckArnT>(value); }
84 template<typename CheckArnT = Aws::String>
85 Recommendation& WithCheckArn(CheckArnT&& value) { SetCheckArn(std::forward<CheckArnT>(value)); return *this;}
87
89
93 inline const Aws::Utils::DateTime& GetCreatedAt() const { return m_createdAt; }
94 inline bool CreatedAtHasBeenSet() const { return m_createdAtHasBeenSet; }
95 template<typename CreatedAtT = Aws::Utils::DateTime>
96 void SetCreatedAt(CreatedAtT&& value) { m_createdAtHasBeenSet = true; m_createdAt = std::forward<CreatedAtT>(value); }
97 template<typename CreatedAtT = Aws::Utils::DateTime>
98 Recommendation& WithCreatedAt(CreatedAtT&& value) { SetCreatedAt(std::forward<CreatedAtT>(value)); return *this;}
100
102
105 inline const Aws::String& GetCreatedBy() const { return m_createdBy; }
106 inline bool CreatedByHasBeenSet() const { return m_createdByHasBeenSet; }
107 template<typename CreatedByT = Aws::String>
108 void SetCreatedBy(CreatedByT&& value) { m_createdByHasBeenSet = true; m_createdBy = std::forward<CreatedByT>(value); }
109 template<typename CreatedByT = Aws::String>
110 Recommendation& WithCreatedBy(CreatedByT&& value) { SetCreatedBy(std::forward<CreatedByT>(value)); return *this;}
112
114
117 inline const Aws::String& GetDescription() const { return m_description; }
118 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
119 template<typename DescriptionT = Aws::String>
120 void SetDescription(DescriptionT&& value) { m_descriptionHasBeenSet = true; m_description = std::forward<DescriptionT>(value); }
121 template<typename DescriptionT = Aws::String>
122 Recommendation& WithDescription(DescriptionT&& value) { SetDescription(std::forward<DescriptionT>(value)); return *this;}
124
126
129 inline const Aws::String& GetId() const { return m_id; }
130 inline bool IdHasBeenSet() const { return m_idHasBeenSet; }
131 template<typename IdT = Aws::String>
132 void SetId(IdT&& value) { m_idHasBeenSet = true; m_id = std::forward<IdT>(value); }
133 template<typename IdT = Aws::String>
134 Recommendation& WithId(IdT&& value) { SetId(std::forward<IdT>(value)); return *this;}
136
138
141 inline const Aws::Utils::DateTime& GetLastUpdatedAt() const { return m_lastUpdatedAt; }
142 inline bool LastUpdatedAtHasBeenSet() const { return m_lastUpdatedAtHasBeenSet; }
143 template<typename LastUpdatedAtT = Aws::Utils::DateTime>
144 void SetLastUpdatedAt(LastUpdatedAtT&& value) { m_lastUpdatedAtHasBeenSet = true; m_lastUpdatedAt = std::forward<LastUpdatedAtT>(value); }
145 template<typename LastUpdatedAtT = Aws::Utils::DateTime>
146 Recommendation& WithLastUpdatedAt(LastUpdatedAtT&& value) { SetLastUpdatedAt(std::forward<LastUpdatedAtT>(value)); return *this;}
148
150
153 inline RecommendationLifecycleStage GetLifecycleStage() const { return m_lifecycleStage; }
154 inline bool LifecycleStageHasBeenSet() const { return m_lifecycleStageHasBeenSet; }
155 inline void SetLifecycleStage(RecommendationLifecycleStage value) { m_lifecycleStageHasBeenSet = true; m_lifecycleStage = value; }
158
160
163 inline const Aws::String& GetName() const { return m_name; }
164 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
165 template<typename NameT = Aws::String>
166 void SetName(NameT&& value) { m_nameHasBeenSet = true; m_name = std::forward<NameT>(value); }
167 template<typename NameT = Aws::String>
168 Recommendation& WithName(NameT&& value) { SetName(std::forward<NameT>(value)); return *this;}
170
172
175 inline const RecommendationPillarSpecificAggregates& GetPillarSpecificAggregates() const { return m_pillarSpecificAggregates; }
176 inline bool PillarSpecificAggregatesHasBeenSet() const { return m_pillarSpecificAggregatesHasBeenSet; }
177 template<typename PillarSpecificAggregatesT = RecommendationPillarSpecificAggregates>
178 void SetPillarSpecificAggregates(PillarSpecificAggregatesT&& value) { m_pillarSpecificAggregatesHasBeenSet = true; m_pillarSpecificAggregates = std::forward<PillarSpecificAggregatesT>(value); }
179 template<typename PillarSpecificAggregatesT = RecommendationPillarSpecificAggregates>
180 Recommendation& WithPillarSpecificAggregates(PillarSpecificAggregatesT&& value) { SetPillarSpecificAggregates(std::forward<PillarSpecificAggregatesT>(value)); return *this;}
182
184
187 inline const Aws::Vector<RecommendationPillar>& GetPillars() const { return m_pillars; }
188 inline bool PillarsHasBeenSet() const { return m_pillarsHasBeenSet; }
189 template<typename PillarsT = Aws::Vector<RecommendationPillar>>
190 void SetPillars(PillarsT&& value) { m_pillarsHasBeenSet = true; m_pillars = std::forward<PillarsT>(value); }
191 template<typename PillarsT = Aws::Vector<RecommendationPillar>>
192 Recommendation& WithPillars(PillarsT&& value) { SetPillars(std::forward<PillarsT>(value)); return *this;}
193 inline Recommendation& AddPillars(RecommendationPillar value) { m_pillarsHasBeenSet = true; m_pillars.push_back(value); return *this; }
195
197
200 inline const Aws::Utils::DateTime& GetResolvedAt() const { return m_resolvedAt; }
201 inline bool ResolvedAtHasBeenSet() const { return m_resolvedAtHasBeenSet; }
202 template<typename ResolvedAtT = Aws::Utils::DateTime>
203 void SetResolvedAt(ResolvedAtT&& value) { m_resolvedAtHasBeenSet = true; m_resolvedAt = std::forward<ResolvedAtT>(value); }
204 template<typename ResolvedAtT = Aws::Utils::DateTime>
205 Recommendation& WithResolvedAt(ResolvedAtT&& value) { SetResolvedAt(std::forward<ResolvedAtT>(value)); return *this;}
207
209
212 inline const RecommendationResourcesAggregates& GetResourcesAggregates() const { return m_resourcesAggregates; }
213 inline bool ResourcesAggregatesHasBeenSet() const { return m_resourcesAggregatesHasBeenSet; }
214 template<typename ResourcesAggregatesT = RecommendationResourcesAggregates>
215 void SetResourcesAggregates(ResourcesAggregatesT&& value) { m_resourcesAggregatesHasBeenSet = true; m_resourcesAggregates = std::forward<ResourcesAggregatesT>(value); }
216 template<typename ResourcesAggregatesT = RecommendationResourcesAggregates>
217 Recommendation& WithResourcesAggregates(ResourcesAggregatesT&& value) { SetResourcesAggregates(std::forward<ResourcesAggregatesT>(value)); return *this;}
219
221
224 inline RecommendationSource GetSource() const { return m_source; }
225 inline bool SourceHasBeenSet() const { return m_sourceHasBeenSet; }
226 inline void SetSource(RecommendationSource value) { m_sourceHasBeenSet = true; m_source = value; }
227 inline Recommendation& WithSource(RecommendationSource value) { SetSource(value); return *this;}
229
231
234 inline RecommendationStatus GetStatus() const { return m_status; }
235 inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
236 inline void SetStatus(RecommendationStatus value) { m_statusHasBeenSet = true; m_status = value; }
237 inline Recommendation& WithStatus(RecommendationStatus value) { SetStatus(value); return *this;}
239
241
245 inline RecommendationType GetType() const { return m_type; }
246 inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
247 inline void SetType(RecommendationType value) { m_typeHasBeenSet = true; m_type = value; }
248 inline Recommendation& WithType(RecommendationType value) { SetType(value); return *this;}
250
252
255 inline const Aws::String& GetUpdateReason() const { return m_updateReason; }
256 inline bool UpdateReasonHasBeenSet() const { return m_updateReasonHasBeenSet; }
257 template<typename UpdateReasonT = Aws::String>
258 void SetUpdateReason(UpdateReasonT&& value) { m_updateReasonHasBeenSet = true; m_updateReason = std::forward<UpdateReasonT>(value); }
259 template<typename UpdateReasonT = Aws::String>
260 Recommendation& WithUpdateReason(UpdateReasonT&& value) { SetUpdateReason(std::forward<UpdateReasonT>(value)); return *this;}
262
264
267 inline UpdateRecommendationLifecycleStageReasonCode GetUpdateReasonCode() const { return m_updateReasonCode; }
268 inline bool UpdateReasonCodeHasBeenSet() const { return m_updateReasonCodeHasBeenSet; }
269 inline void SetUpdateReasonCode(UpdateRecommendationLifecycleStageReasonCode value) { m_updateReasonCodeHasBeenSet = true; m_updateReasonCode = value; }
272
274
280 inline const Aws::String& GetUpdatedOnBehalfOf() const { return m_updatedOnBehalfOf; }
281 inline bool UpdatedOnBehalfOfHasBeenSet() const { return m_updatedOnBehalfOfHasBeenSet; }
282 template<typename UpdatedOnBehalfOfT = Aws::String>
283 void SetUpdatedOnBehalfOf(UpdatedOnBehalfOfT&& value) { m_updatedOnBehalfOfHasBeenSet = true; m_updatedOnBehalfOf = std::forward<UpdatedOnBehalfOfT>(value); }
284 template<typename UpdatedOnBehalfOfT = Aws::String>
285 Recommendation& WithUpdatedOnBehalfOf(UpdatedOnBehalfOfT&& value) { SetUpdatedOnBehalfOf(std::forward<UpdatedOnBehalfOfT>(value)); return *this;}
287
289
295 inline const Aws::String& GetUpdatedOnBehalfOfJobTitle() const { return m_updatedOnBehalfOfJobTitle; }
296 inline bool UpdatedOnBehalfOfJobTitleHasBeenSet() const { return m_updatedOnBehalfOfJobTitleHasBeenSet; }
297 template<typename UpdatedOnBehalfOfJobTitleT = Aws::String>
298 void SetUpdatedOnBehalfOfJobTitle(UpdatedOnBehalfOfJobTitleT&& value) { m_updatedOnBehalfOfJobTitleHasBeenSet = true; m_updatedOnBehalfOfJobTitle = std::forward<UpdatedOnBehalfOfJobTitleT>(value); }
299 template<typename UpdatedOnBehalfOfJobTitleT = Aws::String>
300 Recommendation& WithUpdatedOnBehalfOfJobTitle(UpdatedOnBehalfOfJobTitleT&& value) { SetUpdatedOnBehalfOfJobTitle(std::forward<UpdatedOnBehalfOfJobTitleT>(value)); return *this;}
302 private:
303
304 Aws::String m_arn;
305 bool m_arnHasBeenSet = false;
306
307 Aws::Vector<Aws::String> m_awsServices;
308 bool m_awsServicesHasBeenSet = false;
309
310 Aws::String m_checkArn;
311 bool m_checkArnHasBeenSet = false;
312
313 Aws::Utils::DateTime m_createdAt{};
314 bool m_createdAtHasBeenSet = false;
315
316 Aws::String m_createdBy;
317 bool m_createdByHasBeenSet = false;
318
319 Aws::String m_description;
320 bool m_descriptionHasBeenSet = false;
321
322 Aws::String m_id;
323 bool m_idHasBeenSet = false;
324
325 Aws::Utils::DateTime m_lastUpdatedAt{};
326 bool m_lastUpdatedAtHasBeenSet = false;
327
329 bool m_lifecycleStageHasBeenSet = false;
330
331 Aws::String m_name;
332 bool m_nameHasBeenSet = false;
333
334 RecommendationPillarSpecificAggregates m_pillarSpecificAggregates;
335 bool m_pillarSpecificAggregatesHasBeenSet = false;
336
338 bool m_pillarsHasBeenSet = false;
339
340 Aws::Utils::DateTime m_resolvedAt{};
341 bool m_resolvedAtHasBeenSet = false;
342
343 RecommendationResourcesAggregates m_resourcesAggregates;
344 bool m_resourcesAggregatesHasBeenSet = false;
345
347 bool m_sourceHasBeenSet = false;
348
350 bool m_statusHasBeenSet = false;
351
353 bool m_typeHasBeenSet = false;
354
355 Aws::String m_updateReason;
356 bool m_updateReasonHasBeenSet = false;
357
359 bool m_updateReasonCodeHasBeenSet = false;
360
361 Aws::String m_updatedOnBehalfOf;
362 bool m_updatedOnBehalfOfHasBeenSet = false;
363
364 Aws::String m_updatedOnBehalfOfJobTitle;
365 bool m_updatedOnBehalfOfJobTitleHasBeenSet = false;
366 };
367
368} // namespace Model
369} // namespace TrustedAdvisor
370} // namespace Aws
Recommendation & WithSource(RecommendationSource value)
Recommendation & WithStatus(RecommendationStatus value)
const Aws::Vector< Aws::String > & GetAwsServices() const
AWS_TRUSTEDADVISOR_API Recommendation(Aws::Utils::Json::JsonView jsonValue)
const RecommendationResourcesAggregates & GetResourcesAggregates() const
void SetPillarSpecificAggregates(PillarSpecificAggregatesT &&value)
Recommendation & WithLifecycleStage(RecommendationLifecycleStage value)
const Aws::Utils::DateTime & GetLastUpdatedAt() const
Recommendation & WithUpdatedOnBehalfOfJobTitle(UpdatedOnBehalfOfJobTitleT &&value)
AWS_TRUSTEDADVISOR_API Recommendation & operator=(Aws::Utils::Json::JsonView jsonValue)
RecommendationStatus GetStatus() const
Recommendation & WithCheckArn(CheckArnT &&value)
Recommendation & WithUpdateReasonCode(UpdateRecommendationLifecycleStageReasonCode value)
RecommendationSource GetSource() const
const Aws::String & GetUpdateReason() const
void SetResourcesAggregates(ResourcesAggregatesT &&value)
void SetUpdateReason(UpdateReasonT &&value)
void SetDescription(DescriptionT &&value)
void SetType(RecommendationType value)
void SetLifecycleStage(RecommendationLifecycleStage value)
UpdateRecommendationLifecycleStageReasonCode GetUpdateReasonCode() const
const Aws::String & GetUpdatedOnBehalfOfJobTitle() const
RecommendationLifecycleStage GetLifecycleStage() const
Recommendation & WithCreatedAt(CreatedAtT &&value)
Recommendation & WithPillars(PillarsT &&value)
const Aws::Utils::DateTime & GetResolvedAt() const
Recommendation & WithDescription(DescriptionT &&value)
void SetLastUpdatedAt(LastUpdatedAtT &&value)
AWS_TRUSTEDADVISOR_API Aws::Utils::Json::JsonValue Jsonize() const
void SetStatus(RecommendationStatus value)
const Aws::String & GetCheckArn() const
Recommendation & WithUpdateReason(UpdateReasonT &&value)
Recommendation & WithResolvedAt(ResolvedAtT &&value)
Recommendation & WithPillarSpecificAggregates(PillarSpecificAggregatesT &&value)
Recommendation & WithId(IdT &&value)
Recommendation & WithName(NameT &&value)
Recommendation & WithUpdatedOnBehalfOf(UpdatedOnBehalfOfT &&value)
const RecommendationPillarSpecificAggregates & GetPillarSpecificAggregates() const
AWS_TRUSTEDADVISOR_API Recommendation()=default
void SetUpdateReasonCode(UpdateRecommendationLifecycleStageReasonCode value)
const Aws::String & GetCreatedBy() const
Recommendation & WithType(RecommendationType value)
const Aws::String & GetDescription() const
const Aws::Utils::DateTime & GetCreatedAt() const
const Aws::Vector< RecommendationPillar > & GetPillars() const
Recommendation & WithCreatedBy(CreatedByT &&value)
Recommendation & WithArn(ArnT &&value)
void SetAwsServices(AwsServicesT &&value)
Recommendation & WithAwsServices(AwsServicesT &&value)
void SetUpdatedOnBehalfOfJobTitle(UpdatedOnBehalfOfJobTitleT &&value)
Recommendation & WithLastUpdatedAt(LastUpdatedAtT &&value)
Recommendation & WithResourcesAggregates(ResourcesAggregatesT &&value)
Recommendation & AddAwsServices(AwsServicesT &&value)
Recommendation & AddPillars(RecommendationPillar value)
const Aws::String & GetUpdatedOnBehalfOf() const
void SetSource(RecommendationSource value)
void SetUpdatedOnBehalfOf(UpdatedOnBehalfOfT &&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