7#include <aws/resiliencehub/ResilienceHub_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/resiliencehub/model/AppAssessmentScheduleType.h>
10#include <aws/resiliencehub/model/AppComplianceStatusType.h>
11#include <aws/core/utils/DateTime.h>
12#include <aws/resiliencehub/model/AppDriftStatusType.h>
13#include <aws/core/utils/memory/stl/AWSVector.h>
14#include <aws/resiliencehub/model/PermissionModel.h>
15#include <aws/resiliencehub/model/AppStatusType.h>
16#include <aws/core/utils/memory/stl/AWSMap.h>
17#include <aws/resiliencehub/model/EventSubscription.h>
30namespace ResilienceHub
43 AWS_RESILIENCEHUB_API
App() =
default;
61 template<
typename AppArnT = Aws::String>
62 void SetAppArn(AppArnT&& value) { m_appArnHasBeenSet =
true; m_appArn = std::forward<AppArnT>(value); }
63 template<
typename AppArnT = Aws::String>
87 template<
typename AwsApplicationArnT = Aws::String>
88 void SetAwsApplicationArn(AwsApplicationArnT&& value) { m_awsApplicationArnHasBeenSet =
true; m_awsApplicationArn = std::forward<AwsApplicationArnT>(value); }
89 template<
typename AwsApplicationArnT = Aws::String>
109 template<
typename CreationTimeT = Aws::Utils::DateTime>
110 void SetCreationTime(CreationTimeT&& value) { m_creationTimeHasBeenSet =
true; m_creationTime = std::forward<CreationTimeT>(value); }
111 template<
typename CreationTimeT = Aws::Utils::DateTime>
121 template<
typename DescriptionT = Aws::String>
122 void SetDescription(DescriptionT&& value) { m_descriptionHasBeenSet =
true; m_description = std::forward<DescriptionT>(value); }
123 template<
typename DescriptionT = Aws::String>
146 template<
typename EventSubscriptionsT = Aws::Vector<EventSubscription>>
147 void SetEventSubscriptions(EventSubscriptionsT&& value) { m_eventSubscriptionsHasBeenSet =
true; m_eventSubscriptions = std::forward<EventSubscriptionsT>(value); }
148 template<
typename EventSubscriptionsT = Aws::Vector<EventSubscription>>
150 template<
typename EventSubscriptionsT = EventSubscription>
151 App&
AddEventSubscriptions(EventSubscriptionsT&& value) { m_eventSubscriptionsHasBeenSet =
true; m_eventSubscriptions.emplace_back(std::forward<EventSubscriptionsT>(value));
return *
this; }
160 template<
typename LastAppComplianceEvaluationTimeT = Aws::Utils::DateTime>
161 void SetLastAppComplianceEvaluationTime(LastAppComplianceEvaluationTimeT&& value) { m_lastAppComplianceEvaluationTimeHasBeenSet =
true; m_lastAppComplianceEvaluationTime = std::forward<LastAppComplianceEvaluationTimeT>(value); }
162 template<
typename LastAppComplianceEvaluationTimeT = Aws::Utils::DateTime>
172 template<
typename LastDriftEvaluationTimeT = Aws::Utils::DateTime>
173 void SetLastDriftEvaluationTime(LastDriftEvaluationTimeT&& value) { m_lastDriftEvaluationTimeHasBeenSet =
true; m_lastDriftEvaluationTime = std::forward<LastDriftEvaluationTimeT>(value); }
174 template<
typename LastDriftEvaluationTimeT = Aws::Utils::DateTime>
184 template<
typename LastResiliencyScoreEvaluationTimeT = Aws::Utils::DateTime>
185 void SetLastResiliencyScoreEvaluationTime(LastResiliencyScoreEvaluationTimeT&& value) { m_lastResiliencyScoreEvaluationTimeHasBeenSet =
true; m_lastResiliencyScoreEvaluationTime = std::forward<LastResiliencyScoreEvaluationTimeT>(value); }
186 template<
typename LastResiliencyScoreEvaluationTimeT = Aws::Utils::DateTime>
196 template<
typename NameT = Aws::String>
197 void SetName(NameT&& value) { m_nameHasBeenSet =
true; m_name = std::forward<NameT>(value); }
198 template<
typename NameT = Aws::String>
210 template<
typename PermissionModelT = PermissionModel>
211 void SetPermissionModel(PermissionModelT&& value) { m_permissionModelHasBeenSet =
true; m_permissionModel = std::forward<PermissionModelT>(value); }
212 template<
typename PermissionModelT = PermissionModel>
228 template<
typename PolicyArnT = Aws::String>
229 void SetPolicyArn(PolicyArnT&& value) { m_policyArnHasBeenSet =
true; m_policyArn = std::forward<PolicyArnT>(value); }
230 template<
typename PolicyArnT = Aws::String>
240 inline void SetResiliencyScore(
double value) { m_resiliencyScoreHasBeenSet =
true; m_resiliencyScore = value; }
250 inline void SetRpoInSecs(
int value) { m_rpoInSecsHasBeenSet =
true; m_rpoInSecs = value; }
260 inline void SetRtoInSecs(
int value) { m_rtoInSecsHasBeenSet =
true; m_rtoInSecs = value; }
281 template<
typename TagsT = Aws::Map<Aws::String, Aws::String>>
282 void SetTags(TagsT&& value) { m_tagsHasBeenSet =
true; m_tags = std::forward<TagsT>(value); }
283 template<
typename TagsT = Aws::Map<Aws::String, Aws::String>>
285 template<
typename TagsKeyT = Aws::String,
typename TagsValueT = Aws::String>
287 m_tagsHasBeenSet =
true; m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
return *
this;
293 bool m_appArnHasBeenSet =
false;
296 bool m_assessmentScheduleHasBeenSet =
false;
299 bool m_awsApplicationArnHasBeenSet =
false;
302 bool m_complianceStatusHasBeenSet =
false;
305 bool m_creationTimeHasBeenSet =
false;
308 bool m_descriptionHasBeenSet =
false;
311 bool m_driftStatusHasBeenSet =
false;
314 bool m_eventSubscriptionsHasBeenSet =
false;
317 bool m_lastAppComplianceEvaluationTimeHasBeenSet =
false;
320 bool m_lastDriftEvaluationTimeHasBeenSet =
false;
323 bool m_lastResiliencyScoreEvaluationTimeHasBeenSet =
false;
326 bool m_nameHasBeenSet =
false;
328 PermissionModel m_permissionModel;
329 bool m_permissionModelHasBeenSet =
false;
332 bool m_policyArnHasBeenSet =
false;
334 double m_resiliencyScore{0.0};
335 bool m_resiliencyScoreHasBeenSet =
false;
338 bool m_rpoInSecsHasBeenSet =
false;
341 bool m_rtoInSecsHasBeenSet =
false;
344 bool m_statusHasBeenSet =
false;
347 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