7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSMap.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/resiliencehub/ResilienceHub_EXPORTS.h>
12#include <aws/resiliencehub/model/AppAssessmentScheduleType.h>
13#include <aws/resiliencehub/model/AppComplianceStatusType.h>
14#include <aws/resiliencehub/model/AppDriftStatusType.h>
15#include <aws/resiliencehub/model/AppStatusType.h>
16#include <aws/resiliencehub/model/EventSubscription.h>
17#include <aws/resiliencehub/model/PermissionModel.h>
28namespace ResilienceHub {
38 AWS_RESILIENCEHUB_API
App() =
default;
55 template <
typename AppArnT = Aws::String>
57 m_appArnHasBeenSet =
true;
58 m_appArn = std::forward<AppArnT>(value);
60 template <
typename AppArnT = Aws::String>
74 m_assessmentScheduleHasBeenSet =
true;
75 m_assessmentSchedule = value;
93 template <
typename AwsApplicationArnT = Aws::String>
95 m_awsApplicationArnHasBeenSet =
true;
96 m_awsApplicationArn = std::forward<AwsApplicationArnT>(value);
98 template <
typename AwsApplicationArnT = Aws::String>
112 m_complianceStatusHasBeenSet =
true;
113 m_complianceStatus = value;
127 template <
typename CreationTimeT = Aws::Utils::DateTime>
129 m_creationTimeHasBeenSet =
true;
130 m_creationTime = std::forward<CreationTimeT>(value);
132 template <
typename CreationTimeT = Aws::Utils::DateTime>
145 template <
typename DescriptionT = Aws::String>
147 m_descriptionHasBeenSet =
true;
148 m_description = std::forward<DescriptionT>(value);
150 template <
typename DescriptionT = Aws::String>
165 m_driftStatusHasBeenSet =
true;
166 m_driftStatus = value;
182 template <
typename EventSubscriptionsT = Aws::Vector<EventSubscription>>
184 m_eventSubscriptionsHasBeenSet =
true;
185 m_eventSubscriptions = std::forward<EventSubscriptionsT>(value);
187 template <
typename EventSubscriptionsT = Aws::Vector<EventSubscription>>
192 template <
typename EventSubscriptionsT = EventSubscription>
194 m_eventSubscriptionsHasBeenSet =
true;
195 m_eventSubscriptions.emplace_back(std::forward<EventSubscriptionsT>(value));
206 template <
typename LastAppComplianceEvaluationTimeT = Aws::Utils::DateTime>
208 m_lastAppComplianceEvaluationTimeHasBeenSet =
true;
209 m_lastAppComplianceEvaluationTime = std::forward<LastAppComplianceEvaluationTimeT>(value);
211 template <
typename LastAppComplianceEvaluationTimeT = Aws::Utils::DateTime>
224 template <
typename LastDriftEvaluationTimeT = Aws::Utils::DateTime>
226 m_lastDriftEvaluationTimeHasBeenSet =
true;
227 m_lastDriftEvaluationTime = std::forward<LastDriftEvaluationTimeT>(value);
229 template <
typename LastDriftEvaluationTimeT = Aws::Utils::DateTime>
242 template <
typename LastResiliencyScoreEvaluationTimeT = Aws::Utils::DateTime>
244 m_lastResiliencyScoreEvaluationTimeHasBeenSet =
true;
245 m_lastResiliencyScoreEvaluationTime = std::forward<LastResiliencyScoreEvaluationTimeT>(value);
247 template <
typename LastResiliencyScoreEvaluationTimeT = Aws::Utils::DateTime>
260 template <
typename NameT = Aws::String>
262 m_nameHasBeenSet =
true;
263 m_name = std::forward<NameT>(value);
265 template <
typename NameT = Aws::String>
267 SetName(std::forward<NameT>(value));
280 template <
typename PermissionModelT = PermissionModel>
282 m_permissionModelHasBeenSet =
true;
283 m_permissionModel = std::forward<PermissionModelT>(value);
285 template <
typename PermissionModelT = PermissionModel>
304 template <
typename PolicyArnT = Aws::String>
306 m_policyArnHasBeenSet =
true;
307 m_policyArn = std::forward<PolicyArnT>(value);
309 template <
typename PolicyArnT = Aws::String>
323 m_resiliencyScoreHasBeenSet =
true;
324 m_resiliencyScore = value;
339 m_rpoInSecsHasBeenSet =
true;
355 m_rtoInSecsHasBeenSet =
true;
371 m_statusHasBeenSet =
true;
387 template <
typename TagsT = Aws::Map<Aws::String, Aws::String>>
389 m_tagsHasBeenSet =
true;
390 m_tags = std::forward<TagsT>(value);
392 template <
typename TagsT = Aws::Map<Aws::String, Aws::String>>
394 SetTags(std::forward<TagsT>(value));
397 template <
typename TagsKeyT = Aws::String,
typename TagsValueT = Aws::String>
399 m_tagsHasBeenSet =
true;
400 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
429 PermissionModel m_permissionModel;
433 double m_resiliencyScore{0.0};
442 bool m_appArnHasBeenSet =
false;
443 bool m_assessmentScheduleHasBeenSet =
false;
444 bool m_awsApplicationArnHasBeenSet =
false;
445 bool m_complianceStatusHasBeenSet =
false;
446 bool m_creationTimeHasBeenSet =
false;
447 bool m_descriptionHasBeenSet =
false;
448 bool m_driftStatusHasBeenSet =
false;
449 bool m_eventSubscriptionsHasBeenSet =
false;
450 bool m_lastAppComplianceEvaluationTimeHasBeenSet =
false;
451 bool m_lastDriftEvaluationTimeHasBeenSet =
false;
452 bool m_lastResiliencyScoreEvaluationTimeHasBeenSet =
false;
453 bool m_nameHasBeenSet =
false;
454 bool m_permissionModelHasBeenSet =
false;
455 bool m_policyArnHasBeenSet =
false;
456 bool m_resiliencyScoreHasBeenSet =
false;
457 bool m_rpoInSecsHasBeenSet =
false;
458 bool m_rtoInSecsHasBeenSet =
false;
459 bool m_statusHasBeenSet =
false;
460 bool m_tagsHasBeenSet =
false;
AppStatusType GetStatus() const
App & AddEventSubscriptions(EventSubscriptionsT &&value)
const Aws::String & GetAppArn() const
void SetLastAppComplianceEvaluationTime(LastAppComplianceEvaluationTimeT &&value)
App & WithDriftStatus(AppDriftStatusType value)
bool ComplianceStatusHasBeenSet() const
const Aws::String & GetName() const
AWS_RESILIENCEHUB_API App()=default
AppDriftStatusType GetDriftStatus() const
App & WithResiliencyScore(double value)
bool RpoInSecsHasBeenSet() const
App & WithRtoInSecs(int value)
void SetAssessmentSchedule(AppAssessmentScheduleType value)
const Aws::Utils::DateTime & GetCreationTime() const
bool TagsHasBeenSet() const
const Aws::String & GetPolicyArn() const
void SetTags(TagsT &&value)
void SetAppArn(AppArnT &&value)
void SetResiliencyScore(double value)
const Aws::Utils::DateTime & GetLastAppComplianceEvaluationTime() const
App & WithCreationTime(CreationTimeT &&value)
void SetRpoInSecs(int value)
App & AddTags(TagsKeyT &&key, TagsValueT &&value)
App & WithPermissionModel(PermissionModelT &&value)
bool EventSubscriptionsHasBeenSet() const
void SetDriftStatus(AppDriftStatusType value)
AWS_RESILIENCEHUB_API App & operator=(Aws::Utils::Json::JsonView jsonValue)
App & WithLastResiliencyScoreEvaluationTime(LastResiliencyScoreEvaluationTimeT &&value)
App & WithDescription(DescriptionT &&value)
const Aws::Utils::DateTime & GetLastResiliencyScoreEvaluationTime() const
const Aws::Utils::DateTime & GetLastDriftEvaluationTime() const
bool StatusHasBeenSet() const
void SetComplianceStatus(AppComplianceStatusType value)
void SetName(NameT &&value)
void SetRtoInSecs(int value)
AWS_RESILIENCEHUB_API App(Aws::Utils::Json::JsonView jsonValue)
App & WithComplianceStatus(AppComplianceStatusType value)
void SetCreationTime(CreationTimeT &&value)
App & WithPolicyArn(PolicyArnT &&value)
const Aws::Vector< EventSubscription > & GetEventSubscriptions() const
bool RtoInSecsHasBeenSet() const
void SetLastDriftEvaluationTime(LastDriftEvaluationTimeT &&value)
App & WithLastAppComplianceEvaluationTime(LastAppComplianceEvaluationTimeT &&value)
App & WithEventSubscriptions(EventSubscriptionsT &&value)
void SetDescription(DescriptionT &&value)
bool NameHasBeenSet() const
bool ResiliencyScoreHasBeenSet() const
bool LastAppComplianceEvaluationTimeHasBeenSet() const
App & WithStatus(AppStatusType value)
AppComplianceStatusType GetComplianceStatus() const
bool AssessmentScheduleHasBeenSet() const
App & WithAppArn(AppArnT &&value)
const PermissionModel & GetPermissionModel() const
AWS_RESILIENCEHUB_API Aws::Utils::Json::JsonValue Jsonize() const
bool LastResiliencyScoreEvaluationTimeHasBeenSet() const
bool AppArnHasBeenSet() const
App & WithRpoInSecs(int value)
void SetStatus(AppStatusType value)
const Aws::String & GetAwsApplicationArn() const
App & WithLastDriftEvaluationTime(LastDriftEvaluationTimeT &&value)
App & WithName(NameT &&value)
double GetResiliencyScore() const
bool DriftStatusHasBeenSet() const
bool DescriptionHasBeenSet() const
const Aws::Map< Aws::String, Aws::String > & GetTags() const
void SetAwsApplicationArn(AwsApplicationArnT &&value)
bool PolicyArnHasBeenSet() const
bool AwsApplicationArnHasBeenSet() const
void SetPolicyArn(PolicyArnT &&value)
App & WithAwsApplicationArn(AwsApplicationArnT &&value)
const Aws::String & GetDescription() const
void SetEventSubscriptions(EventSubscriptionsT &&value)
bool LastDriftEvaluationTimeHasBeenSet() const
void SetPermissionModel(PermissionModelT &&value)
void SetLastResiliencyScoreEvaluationTime(LastResiliencyScoreEvaluationTimeT &&value)
AppAssessmentScheduleType GetAssessmentSchedule() const
App & WithTags(TagsT &&value)
App & WithAssessmentSchedule(AppAssessmentScheduleType value)
bool PermissionModelHasBeenSet() const
bool CreationTimeHasBeenSet() const
AppAssessmentScheduleType
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue