7#include <aws/application-signals/ApplicationSignals_EXPORTS.h>
8#include <aws/application-signals/ApplicationSignalsRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/application-signals/model/ServiceLevelIndicatorConfig.h>
11#include <aws/application-signals/model/RequestBasedServiceLevelIndicatorConfig.h>
12#include <aws/application-signals/model/Goal.h>
13#include <aws/core/utils/memory/stl/AWSVector.h>
14#include <aws/application-signals/model/Tag.h>
15#include <aws/application-signals/model/BurnRateConfiguration.h>
20namespace ApplicationSignals
47 template<
typename NameT = Aws::String>
48 void SetName(NameT&& value) { m_nameHasBeenSet =
true; m_name = std::forward<NameT>(value); }
49 template<
typename NameT = Aws::String>
59 template<
typename DescriptionT = Aws::String>
60 void SetDescription(DescriptionT&& value) { m_descriptionHasBeenSet =
true; m_description = std::forward<DescriptionT>(value); }
61 template<
typename DescriptionT = Aws::String>
74 template<
typename SliConfigT = ServiceLevelIndicatorConfig>
75 void SetSliConfig(SliConfigT&& value) { m_sliConfigHasBeenSet =
true; m_sliConfig = std::forward<SliConfigT>(value); }
76 template<
typename SliConfigT = ServiceLevelIndicatorConfig>
89 template<
typename RequestBasedSliConfigT = RequestBasedServiceLevelIndicatorConfig>
90 void SetRequestBasedSliConfig(RequestBasedSliConfigT&& value) { m_requestBasedSliConfigHasBeenSet =
true; m_requestBasedSliConfig = std::forward<RequestBasedSliConfigT>(value); }
91 template<
typename RequestBasedSliConfigT = RequestBasedServiceLevelIndicatorConfig>
102 template<
typename GoalT = Goal>
103 void SetGoal(GoalT&& value) { m_goalHasBeenSet =
true; m_goal = std::forward<GoalT>(value); }
104 template<
typename GoalT = Goal>
119 template<
typename TagsT = Aws::Vector<Tag>>
120 void SetTags(TagsT&& value) { m_tagsHasBeenSet =
true; m_tags = std::forward<TagsT>(value); }
121 template<
typename TagsT = Aws::Vector<Tag>>
123 template<
typename TagsT = Tag>
135 template<
typename BurnRateConfigurationsT = Aws::Vector<BurnRateConfiguration>>
136 void SetBurnRateConfigurations(BurnRateConfigurationsT&& value) { m_burnRateConfigurationsHasBeenSet =
true; m_burnRateConfigurations = std::forward<BurnRateConfigurationsT>(value); }
137 template<
typename BurnRateConfigurationsT = Aws::Vector<BurnRateConfiguration>>
139 template<
typename BurnRateConfigurationsT = BurnRateConfiguration>
145 bool m_nameHasBeenSet =
false;
148 bool m_descriptionHasBeenSet =
false;
151 bool m_sliConfigHasBeenSet =
false;
154 bool m_requestBasedSliConfigHasBeenSet =
false;
157 bool m_goalHasBeenSet =
false;
160 bool m_tagsHasBeenSet =
false;
163 bool m_burnRateConfigurationsHasBeenSet =
false;
AWS_APPLICATIONSIGNALS_API CreateServiceLevelObjectiveRequest()=default
const Aws::Vector< BurnRateConfiguration > & GetBurnRateConfigurations() const
void SetTags(TagsT &&value)
void SetGoal(GoalT &&value)
bool DescriptionHasBeenSet() const
CreateServiceLevelObjectiveRequest & WithBurnRateConfigurations(BurnRateConfigurationsT &&value)
const Aws::String & GetDescription() const
CreateServiceLevelObjectiveRequest & WithSliConfig(SliConfigT &&value)
virtual const char * GetServiceRequestName() const override
bool TagsHasBeenSet() const
const ServiceLevelIndicatorConfig & GetSliConfig() const
CreateServiceLevelObjectiveRequest & WithName(NameT &&value)
bool RequestBasedSliConfigHasBeenSet() const
CreateServiceLevelObjectiveRequest & WithTags(TagsT &&value)
bool SliConfigHasBeenSet() const
CreateServiceLevelObjectiveRequest & WithDescription(DescriptionT &&value)
bool BurnRateConfigurationsHasBeenSet() const
const Aws::String & GetName() const
bool NameHasBeenSet() const
void SetDescription(DescriptionT &&value)
void SetSliConfig(SliConfigT &&value)
const RequestBasedServiceLevelIndicatorConfig & GetRequestBasedSliConfig() const
CreateServiceLevelObjectiveRequest & WithRequestBasedSliConfig(RequestBasedSliConfigT &&value)
CreateServiceLevelObjectiveRequest & AddTags(TagsT &&value)
const Goal & GetGoal() const
void SetName(NameT &&value)
void SetRequestBasedSliConfig(RequestBasedSliConfigT &&value)
void SetBurnRateConfigurations(BurnRateConfigurationsT &&value)
const Aws::Vector< Tag > & GetTags() const
bool GoalHasBeenSet() const
AWS_APPLICATIONSIGNALS_API Aws::String SerializePayload() const override
CreateServiceLevelObjectiveRequest & AddBurnRateConfigurations(BurnRateConfigurationsT &&value)
CreateServiceLevelObjectiveRequest & WithGoal(GoalT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector