7#include <aws/application-signals/ApplicationSignalsRequest.h>
8#include <aws/application-signals/ApplicationSignals_EXPORTS.h>
9#include <aws/application-signals/model/BurnRateConfiguration.h>
10#include <aws/application-signals/model/Goal.h>
11#include <aws/application-signals/model/RequestBasedServiceLevelIndicatorConfig.h>
12#include <aws/application-signals/model/ServiceLevelIndicatorConfig.h>
13#include <aws/application-signals/model/Tag.h>
14#include <aws/core/utils/memory/stl/AWSString.h>
15#include <aws/core/utils/memory/stl/AWSVector.h>
20namespace ApplicationSignals {
43 template <
typename NameT = Aws::String>
45 m_nameHasBeenSet =
true;
46 m_name = std::forward<NameT>(value);
48 template <
typename NameT = Aws::String>
50 SetName(std::forward<NameT>(value));
61 template <
typename DescriptionT = Aws::String>
63 m_descriptionHasBeenSet =
true;
64 m_description = std::forward<DescriptionT>(value);
66 template <
typename DescriptionT = Aws::String>
82 template <
typename SliConfigT = ServiceLevelIndicatorConfig>
84 m_sliConfigHasBeenSet =
true;
85 m_sliConfig = std::forward<SliConfigT>(value);
87 template <
typename SliConfigT = ServiceLevelIndicatorConfig>
103 template <
typename RequestBasedSliConfigT = RequestBasedServiceLevelIndicatorConfig>
105 m_requestBasedSliConfigHasBeenSet =
true;
106 m_requestBasedSliConfig = std::forward<RequestBasedSliConfigT>(value);
108 template <
typename RequestBasedSliConfigT = RequestBasedServiceLevelIndicatorConfig>
122 template <
typename GoalT = Goal>
124 m_goalHasBeenSet =
true;
125 m_goal = std::forward<GoalT>(value);
127 template <
typename GoalT = Goal>
129 SetGoal(std::forward<GoalT>(value));
145 template <
typename TagsT = Aws::Vector<Tag>>
147 m_tagsHasBeenSet =
true;
148 m_tags = std::forward<TagsT>(value);
150 template <
typename TagsT = Aws::Vector<Tag>>
152 SetTags(std::forward<TagsT>(value));
155 template <
typename TagsT = Tag>
157 m_tagsHasBeenSet =
true;
158 m_tags.emplace_back(std::forward<TagsT>(value));
171 template <
typename BurnRateConfigurationsT = Aws::Vector<BurnRateConfiguration>>
173 m_burnRateConfigurationsHasBeenSet =
true;
174 m_burnRateConfigurations = std::forward<BurnRateConfigurationsT>(value);
176 template <
typename BurnRateConfigurationsT = Aws::Vector<BurnRateConfiguration>>
181 template <
typename BurnRateConfigurationsT = BurnRateConfiguration>
183 m_burnRateConfigurationsHasBeenSet =
true;
184 m_burnRateConfigurations.emplace_back(std::forward<BurnRateConfigurationsT>(value));
202 bool m_nameHasBeenSet =
false;
203 bool m_descriptionHasBeenSet =
false;
204 bool m_sliConfigHasBeenSet =
false;
205 bool m_requestBasedSliConfigHasBeenSet =
false;
206 bool m_goalHasBeenSet =
false;
207 bool m_tagsHasBeenSet =
false;
208 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