AWS SDK for C++

AWS SDK for C++ Version 1.11.612

Loading...
Searching...
No Matches
CreateExperimentRequest.h
1
6#pragma once
7#include <aws/evidently/CloudWatchEvidently_EXPORTS.h>
8#include <aws/evidently/CloudWatchEvidentlyRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/evidently/model/OnlineAbConfig.h>
12#include <aws/core/utils/memory/stl/AWSMap.h>
13#include <aws/evidently/model/MetricGoalConfig.h>
14#include <aws/evidently/model/TreatmentConfig.h>
15#include <utility>
16
17namespace Aws
18{
19namespace CloudWatchEvidently
20{
21namespace Model
22{
23
27 {
28 public:
29 AWS_CLOUDWATCHEVIDENTLY_API CreateExperimentRequest() = default;
30
31 // Service request name is the Operation name which will send this request out,
32 // each operation should has unique request name, so that we can get operation's name from this request.
33 // Note: this is not true for response, multiple operations may have the same response name,
34 // so we can not get operation's name from response.
35 inline virtual const char* GetServiceRequestName() const override { return "CreateExperiment"; }
36
37 AWS_CLOUDWATCHEVIDENTLY_API Aws::String SerializePayload() const override;
38
39
41
44 inline const Aws::String& GetDescription() const { return m_description; }
45 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
46 template<typename DescriptionT = Aws::String>
47 void SetDescription(DescriptionT&& value) { m_descriptionHasBeenSet = true; m_description = std::forward<DescriptionT>(value); }
48 template<typename DescriptionT = Aws::String>
49 CreateExperimentRequest& WithDescription(DescriptionT&& value) { SetDescription(std::forward<DescriptionT>(value)); return *this;}
51
53
57 inline const Aws::Vector<MetricGoalConfig>& GetMetricGoals() const { return m_metricGoals; }
58 inline bool MetricGoalsHasBeenSet() const { return m_metricGoalsHasBeenSet; }
59 template<typename MetricGoalsT = Aws::Vector<MetricGoalConfig>>
60 void SetMetricGoals(MetricGoalsT&& value) { m_metricGoalsHasBeenSet = true; m_metricGoals = std::forward<MetricGoalsT>(value); }
61 template<typename MetricGoalsT = Aws::Vector<MetricGoalConfig>>
62 CreateExperimentRequest& WithMetricGoals(MetricGoalsT&& value) { SetMetricGoals(std::forward<MetricGoalsT>(value)); return *this;}
63 template<typename MetricGoalsT = MetricGoalConfig>
64 CreateExperimentRequest& AddMetricGoals(MetricGoalsT&& value) { m_metricGoalsHasBeenSet = true; m_metricGoals.emplace_back(std::forward<MetricGoalsT>(value)); return *this; }
66
68
71 inline const Aws::String& GetName() const { return m_name; }
72 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
73 template<typename NameT = Aws::String>
74 void SetName(NameT&& value) { m_nameHasBeenSet = true; m_name = std::forward<NameT>(value); }
75 template<typename NameT = Aws::String>
76 CreateExperimentRequest& WithName(NameT&& value) { SetName(std::forward<NameT>(value)); return *this;}
78
80
86 inline const OnlineAbConfig& GetOnlineAbConfig() const { return m_onlineAbConfig; }
87 inline bool OnlineAbConfigHasBeenSet() const { return m_onlineAbConfigHasBeenSet; }
88 template<typename OnlineAbConfigT = OnlineAbConfig>
89 void SetOnlineAbConfig(OnlineAbConfigT&& value) { m_onlineAbConfigHasBeenSet = true; m_onlineAbConfig = std::forward<OnlineAbConfigT>(value); }
90 template<typename OnlineAbConfigT = OnlineAbConfig>
91 CreateExperimentRequest& WithOnlineAbConfig(OnlineAbConfigT&& value) { SetOnlineAbConfig(std::forward<OnlineAbConfigT>(value)); return *this;}
93
95
99 inline const Aws::String& GetProject() const { return m_project; }
100 inline bool ProjectHasBeenSet() const { return m_projectHasBeenSet; }
101 template<typename ProjectT = Aws::String>
102 void SetProject(ProjectT&& value) { m_projectHasBeenSet = true; m_project = std::forward<ProjectT>(value); }
103 template<typename ProjectT = Aws::String>
104 CreateExperimentRequest& WithProject(ProjectT&& value) { SetProject(std::forward<ProjectT>(value)); return *this;}
106
108
115 inline const Aws::String& GetRandomizationSalt() const { return m_randomizationSalt; }
116 inline bool RandomizationSaltHasBeenSet() const { return m_randomizationSaltHasBeenSet; }
117 template<typename RandomizationSaltT = Aws::String>
118 void SetRandomizationSalt(RandomizationSaltT&& value) { m_randomizationSaltHasBeenSet = true; m_randomizationSalt = std::forward<RandomizationSaltT>(value); }
119 template<typename RandomizationSaltT = Aws::String>
120 CreateExperimentRequest& WithRandomizationSalt(RandomizationSaltT&& value) { SetRandomizationSalt(std::forward<RandomizationSaltT>(value)); return *this;}
122
124
132 inline long long GetSamplingRate() const { return m_samplingRate; }
133 inline bool SamplingRateHasBeenSet() const { return m_samplingRateHasBeenSet; }
134 inline void SetSamplingRate(long long value) { m_samplingRateHasBeenSet = true; m_samplingRate = value; }
135 inline CreateExperimentRequest& WithSamplingRate(long long value) { SetSamplingRate(value); return *this;}
137
139
144 inline const Aws::String& GetSegment() const { return m_segment; }
145 inline bool SegmentHasBeenSet() const { return m_segmentHasBeenSet; }
146 template<typename SegmentT = Aws::String>
147 void SetSegment(SegmentT&& value) { m_segmentHasBeenSet = true; m_segment = std::forward<SegmentT>(value); }
148 template<typename SegmentT = Aws::String>
149 CreateExperimentRequest& WithSegment(SegmentT&& value) { SetSegment(std::forward<SegmentT>(value)); return *this;}
151
153
164 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
165 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
166 template<typename TagsT = Aws::Map<Aws::String, Aws::String>>
167 void SetTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags = std::forward<TagsT>(value); }
168 template<typename TagsT = Aws::Map<Aws::String, Aws::String>>
169 CreateExperimentRequest& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
170 template<typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
171 CreateExperimentRequest& AddTags(TagsKeyT&& key, TagsValueT&& value) {
172 m_tagsHasBeenSet = true; m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value)); return *this;
173 }
175
177
181 inline const Aws::Vector<TreatmentConfig>& GetTreatments() const { return m_treatments; }
182 inline bool TreatmentsHasBeenSet() const { return m_treatmentsHasBeenSet; }
183 template<typename TreatmentsT = Aws::Vector<TreatmentConfig>>
184 void SetTreatments(TreatmentsT&& value) { m_treatmentsHasBeenSet = true; m_treatments = std::forward<TreatmentsT>(value); }
185 template<typename TreatmentsT = Aws::Vector<TreatmentConfig>>
186 CreateExperimentRequest& WithTreatments(TreatmentsT&& value) { SetTreatments(std::forward<TreatmentsT>(value)); return *this;}
187 template<typename TreatmentsT = TreatmentConfig>
188 CreateExperimentRequest& AddTreatments(TreatmentsT&& value) { m_treatmentsHasBeenSet = true; m_treatments.emplace_back(std::forward<TreatmentsT>(value)); return *this; }
190 private:
191
192 Aws::String m_description;
193 bool m_descriptionHasBeenSet = false;
194
195 Aws::Vector<MetricGoalConfig> m_metricGoals;
196 bool m_metricGoalsHasBeenSet = false;
197
198 Aws::String m_name;
199 bool m_nameHasBeenSet = false;
200
201 OnlineAbConfig m_onlineAbConfig;
202 bool m_onlineAbConfigHasBeenSet = false;
203
204 Aws::String m_project;
205 bool m_projectHasBeenSet = false;
206
207 Aws::String m_randomizationSalt;
208 bool m_randomizationSaltHasBeenSet = false;
209
210 long long m_samplingRate{0};
211 bool m_samplingRateHasBeenSet = false;
212
213 Aws::String m_segment;
214 bool m_segmentHasBeenSet = false;
215
217 bool m_tagsHasBeenSet = false;
218
219 Aws::Vector<TreatmentConfig> m_treatments;
220 bool m_treatmentsHasBeenSet = false;
221 };
222
223} // namespace Model
224} // namespace CloudWatchEvidently
225} // namespace Aws
CreateExperimentRequest & AddTags(TagsKeyT &&key, TagsValueT &&value)
CreateExperimentRequest & AddTreatments(TreatmentsT &&value)
CreateExperimentRequest & WithSegment(SegmentT &&value)
AWS_CLOUDWATCHEVIDENTLY_API CreateExperimentRequest()=default
CreateExperimentRequest & WithOnlineAbConfig(OnlineAbConfigT &&value)
CreateExperimentRequest & WithTreatments(TreatmentsT &&value)
CreateExperimentRequest & WithMetricGoals(MetricGoalsT &&value)
const Aws::Map< Aws::String, Aws::String > & GetTags() const
AWS_CLOUDWATCHEVIDENTLY_API Aws::String SerializePayload() const override
CreateExperimentRequest & WithRandomizationSalt(RandomizationSaltT &&value)
const Aws::Vector< TreatmentConfig > & GetTreatments() const
CreateExperimentRequest & AddMetricGoals(MetricGoalsT &&value)
CreateExperimentRequest & WithSamplingRate(long long value)
CreateExperimentRequest & WithProject(ProjectT &&value)
CreateExperimentRequest & WithDescription(DescriptionT &&value)
const Aws::Vector< MetricGoalConfig > & GetMetricGoals() const
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