AWS SDK for C++

AWS SDK for C++ Version 1.11.875

Loading...
Searching...
No Matches
AnalysisRuleCustom.h
1
6#pragma once
7#include <aws/cleanrooms/CleanRooms_EXPORTS.h>
8#include <aws/cleanrooms/model/AdditionalAnalyses.h>
9#include <aws/cleanrooms/model/AggregationThreshold.h>
10#include <aws/cleanrooms/model/ComparisonControls.h>
11#include <aws/cleanrooms/model/DifferentialPrivacyConfiguration.h>
12#include <aws/core/utils/memory/stl/AWSString.h>
13#include <aws/core/utils/memory/stl/AWSVector.h>
14
15#include <utility>
16
17namespace Aws {
18namespace Utils {
19namespace Json {
20class JsonValue;
21class JsonView;
22} // namespace Json
23} // namespace Utils
24namespace CleanRooms {
25namespace Model {
26
35 public:
36 AWS_CLEANROOMS_API AnalysisRuleCustom() = default;
37 AWS_CLEANROOMS_API AnalysisRuleCustom(Aws::Utils::Json::JsonView jsonValue);
39 AWS_CLEANROOMS_API Aws::Utils::Json::JsonValue Jsonize() const;
40
42
46 inline const Aws::Vector<Aws::String>& GetAllowedAnalyses() const { return m_allowedAnalyses; }
47 inline bool AllowedAnalysesHasBeenSet() const { return m_allowedAnalysesHasBeenSet; }
48 template <typename AllowedAnalysesT = Aws::Vector<Aws::String>>
49 void SetAllowedAnalyses(AllowedAnalysesT&& value) {
50 m_allowedAnalysesHasBeenSet = true;
51 m_allowedAnalyses = std::forward<AllowedAnalysesT>(value);
52 }
53 template <typename AllowedAnalysesT = Aws::Vector<Aws::String>>
54 AnalysisRuleCustom& WithAllowedAnalyses(AllowedAnalysesT&& value) {
55 SetAllowedAnalyses(std::forward<AllowedAnalysesT>(value));
56 return *this;
57 }
58 template <typename AllowedAnalysesT = Aws::String>
59 AnalysisRuleCustom& AddAllowedAnalyses(AllowedAnalysesT&& value) {
60 m_allowedAnalysesHasBeenSet = true;
61 m_allowedAnalyses.emplace_back(std::forward<AllowedAnalysesT>(value));
62 return *this;
63 }
65
67
72 inline const Aws::Vector<Aws::String>& GetAllowedAnalysisProviders() const { return m_allowedAnalysisProviders; }
73 inline bool AllowedAnalysisProvidersHasBeenSet() const { return m_allowedAnalysisProvidersHasBeenSet; }
74 template <typename AllowedAnalysisProvidersT = Aws::Vector<Aws::String>>
75 void SetAllowedAnalysisProviders(AllowedAnalysisProvidersT&& value) {
76 m_allowedAnalysisProvidersHasBeenSet = true;
77 m_allowedAnalysisProviders = std::forward<AllowedAnalysisProvidersT>(value);
78 }
79 template <typename AllowedAnalysisProvidersT = Aws::Vector<Aws::String>>
80 AnalysisRuleCustom& WithAllowedAnalysisProviders(AllowedAnalysisProvidersT&& value) {
81 SetAllowedAnalysisProviders(std::forward<AllowedAnalysisProvidersT>(value));
82 return *this;
83 }
84 template <typename AllowedAnalysisProvidersT = Aws::String>
85 AnalysisRuleCustom& AddAllowedAnalysisProviders(AllowedAnalysisProvidersT&& value) {
86 m_allowedAnalysisProvidersHasBeenSet = true;
87 m_allowedAnalysisProviders.emplace_back(std::forward<AllowedAnalysisProvidersT>(value));
88 return *this;
89 }
91
93
97 inline AdditionalAnalyses GetAdditionalAnalyses() const { return m_additionalAnalyses; }
98 inline bool AdditionalAnalysesHasBeenSet() const { return m_additionalAnalysesHasBeenSet; }
100 m_additionalAnalysesHasBeenSet = true;
101 m_additionalAnalyses = value;
102 }
105 return *this;
106 }
108
110
113 inline const Aws::Vector<Aws::String>& GetDisallowedOutputColumns() const { return m_disallowedOutputColumns; }
114 inline bool DisallowedOutputColumnsHasBeenSet() const { return m_disallowedOutputColumnsHasBeenSet; }
115 template <typename DisallowedOutputColumnsT = Aws::Vector<Aws::String>>
116 void SetDisallowedOutputColumns(DisallowedOutputColumnsT&& value) {
117 m_disallowedOutputColumnsHasBeenSet = true;
118 m_disallowedOutputColumns = std::forward<DisallowedOutputColumnsT>(value);
119 }
120 template <typename DisallowedOutputColumnsT = Aws::Vector<Aws::String>>
121 AnalysisRuleCustom& WithDisallowedOutputColumns(DisallowedOutputColumnsT&& value) {
122 SetDisallowedOutputColumns(std::forward<DisallowedOutputColumnsT>(value));
123 return *this;
124 }
125 template <typename DisallowedOutputColumnsT = Aws::String>
126 AnalysisRuleCustom& AddDisallowedOutputColumns(DisallowedOutputColumnsT&& value) {
127 m_disallowedOutputColumnsHasBeenSet = true;
128 m_disallowedOutputColumns.emplace_back(std::forward<DisallowedOutputColumnsT>(value));
129 return *this;
130 }
132
134
137 inline const DifferentialPrivacyConfiguration& GetDifferentialPrivacy() const { return m_differentialPrivacy; }
138 inline bool DifferentialPrivacyHasBeenSet() const { return m_differentialPrivacyHasBeenSet; }
139 template <typename DifferentialPrivacyT = DifferentialPrivacyConfiguration>
140 void SetDifferentialPrivacy(DifferentialPrivacyT&& value) {
141 m_differentialPrivacyHasBeenSet = true;
142 m_differentialPrivacy = std::forward<DifferentialPrivacyT>(value);
143 }
144 template <typename DifferentialPrivacyT = DifferentialPrivacyConfiguration>
145 AnalysisRuleCustom& WithDifferentialPrivacy(DifferentialPrivacyT&& value) {
146 SetDifferentialPrivacy(std::forward<DifferentialPrivacyT>(value));
147 return *this;
148 }
150
152
159 inline const Aws::Vector<AggregationThreshold>& GetAggregationThresholds() const { return m_aggregationThresholds; }
160 inline bool AggregationThresholdsHasBeenSet() const { return m_aggregationThresholdsHasBeenSet; }
161 template <typename AggregationThresholdsT = Aws::Vector<AggregationThreshold>>
162 void SetAggregationThresholds(AggregationThresholdsT&& value) {
163 m_aggregationThresholdsHasBeenSet = true;
164 m_aggregationThresholds = std::forward<AggregationThresholdsT>(value);
165 }
166 template <typename AggregationThresholdsT = Aws::Vector<AggregationThreshold>>
167 AnalysisRuleCustom& WithAggregationThresholds(AggregationThresholdsT&& value) {
168 SetAggregationThresholds(std::forward<AggregationThresholdsT>(value));
169 return *this;
170 }
171 template <typename AggregationThresholdsT = AggregationThreshold>
172 AnalysisRuleCustom& AddAggregationThresholds(AggregationThresholdsT&& value) {
173 m_aggregationThresholdsHasBeenSet = true;
174 m_aggregationThresholds.emplace_back(std::forward<AggregationThresholdsT>(value));
175 return *this;
176 }
178
180
185 inline const ComparisonControls& GetComparisonControls() const { return m_comparisonControls; }
186 inline bool ComparisonControlsHasBeenSet() const { return m_comparisonControlsHasBeenSet; }
187 template <typename ComparisonControlsT = ComparisonControls>
188 void SetComparisonControls(ComparisonControlsT&& value) {
189 m_comparisonControlsHasBeenSet = true;
190 m_comparisonControls = std::forward<ComparisonControlsT>(value);
191 }
192 template <typename ComparisonControlsT = ComparisonControls>
193 AnalysisRuleCustom& WithComparisonControls(ComparisonControlsT&& value) {
194 SetComparisonControls(std::forward<ComparisonControlsT>(value));
195 return *this;
196 }
198
200
204 inline const Aws::Vector<Aws::String>& GetAllowedResultReceivers() const { return m_allowedResultReceivers; }
205 inline bool AllowedResultReceiversHasBeenSet() const { return m_allowedResultReceiversHasBeenSet; }
206 template <typename AllowedResultReceiversT = Aws::Vector<Aws::String>>
207 void SetAllowedResultReceivers(AllowedResultReceiversT&& value) {
208 m_allowedResultReceiversHasBeenSet = true;
209 m_allowedResultReceivers = std::forward<AllowedResultReceiversT>(value);
210 }
211 template <typename AllowedResultReceiversT = Aws::Vector<Aws::String>>
212 AnalysisRuleCustom& WithAllowedResultReceivers(AllowedResultReceiversT&& value) {
213 SetAllowedResultReceivers(std::forward<AllowedResultReceiversT>(value));
214 return *this;
215 }
216 template <typename AllowedResultReceiversT = Aws::String>
217 AnalysisRuleCustom& AddAllowedResultReceivers(AllowedResultReceiversT&& value) {
218 m_allowedResultReceiversHasBeenSet = true;
219 m_allowedResultReceivers.emplace_back(std::forward<AllowedResultReceiversT>(value));
220 return *this;
221 }
223
225
228 inline const Aws::Vector<Aws::String>& GetAllowedAdditionalAnalyses() const { return m_allowedAdditionalAnalyses; }
229 inline bool AllowedAdditionalAnalysesHasBeenSet() const { return m_allowedAdditionalAnalysesHasBeenSet; }
230 template <typename AllowedAdditionalAnalysesT = Aws::Vector<Aws::String>>
231 void SetAllowedAdditionalAnalyses(AllowedAdditionalAnalysesT&& value) {
232 m_allowedAdditionalAnalysesHasBeenSet = true;
233 m_allowedAdditionalAnalyses = std::forward<AllowedAdditionalAnalysesT>(value);
234 }
235 template <typename AllowedAdditionalAnalysesT = Aws::Vector<Aws::String>>
236 AnalysisRuleCustom& WithAllowedAdditionalAnalyses(AllowedAdditionalAnalysesT&& value) {
237 SetAllowedAdditionalAnalyses(std::forward<AllowedAdditionalAnalysesT>(value));
238 return *this;
239 }
240 template <typename AllowedAdditionalAnalysesT = Aws::String>
241 AnalysisRuleCustom& AddAllowedAdditionalAnalyses(AllowedAdditionalAnalysesT&& value) {
242 m_allowedAdditionalAnalysesHasBeenSet = true;
243 m_allowedAdditionalAnalyses.emplace_back(std::forward<AllowedAdditionalAnalysesT>(value));
244 return *this;
245 }
247 private:
248 Aws::Vector<Aws::String> m_allowedAnalyses;
249
250 Aws::Vector<Aws::String> m_allowedAnalysisProviders;
251
253
254 Aws::Vector<Aws::String> m_disallowedOutputColumns;
255
256 DifferentialPrivacyConfiguration m_differentialPrivacy;
257
258 Aws::Vector<AggregationThreshold> m_aggregationThresholds;
259
260 ComparisonControls m_comparisonControls;
261
262 Aws::Vector<Aws::String> m_allowedResultReceivers;
263
264 Aws::Vector<Aws::String> m_allowedAdditionalAnalyses;
265 bool m_allowedAnalysesHasBeenSet = false;
266 bool m_allowedAnalysisProvidersHasBeenSet = false;
267 bool m_additionalAnalysesHasBeenSet = false;
268 bool m_disallowedOutputColumnsHasBeenSet = false;
269 bool m_differentialPrivacyHasBeenSet = false;
270 bool m_aggregationThresholdsHasBeenSet = false;
271 bool m_comparisonControlsHasBeenSet = false;
272 bool m_allowedResultReceiversHasBeenSet = false;
273 bool m_allowedAdditionalAnalysesHasBeenSet = false;
274};
275
276} // namespace Model
277} // namespace CleanRooms
278} // namespace Aws
AWS_CLEANROOMS_API AnalysisRuleCustom(Aws::Utils::Json::JsonView jsonValue)
AnalysisRuleCustom & WithDisallowedOutputColumns(DisallowedOutputColumnsT &&value)
AnalysisRuleCustom & WithComparisonControls(ComparisonControlsT &&value)
AnalysisRuleCustom & WithAllowedResultReceivers(AllowedResultReceiversT &&value)
AnalysisRuleCustom & AddAllowedAdditionalAnalyses(AllowedAdditionalAnalysesT &&value)
void SetAggregationThresholds(AggregationThresholdsT &&value)
AnalysisRuleCustom & AddAllowedAnalysisProviders(AllowedAnalysisProvidersT &&value)
AnalysisRuleCustom & WithAllowedAnalyses(AllowedAnalysesT &&value)
const ComparisonControls & GetComparisonControls() const
const Aws::Vector< AggregationThreshold > & GetAggregationThresholds() const
void SetAllowedAnalyses(AllowedAnalysesT &&value)
AnalysisRuleCustom & AddAggregationThresholds(AggregationThresholdsT &&value)
AWS_CLEANROOMS_API AnalysisRuleCustom()=default
const Aws::Vector< Aws::String > & GetAllowedAdditionalAnalyses() const
const Aws::Vector< Aws::String > & GetDisallowedOutputColumns() const
AnalysisRuleCustom & AddAllowedResultReceivers(AllowedResultReceiversT &&value)
void SetAdditionalAnalyses(AdditionalAnalyses value)
void SetAllowedResultReceivers(AllowedResultReceiversT &&value)
AnalysisRuleCustom & AddDisallowedOutputColumns(DisallowedOutputColumnsT &&value)
AnalysisRuleCustom & WithAggregationThresholds(AggregationThresholdsT &&value)
AnalysisRuleCustom & AddAllowedAnalyses(AllowedAnalysesT &&value)
AWS_CLEANROOMS_API Aws::Utils::Json::JsonValue Jsonize() const
const DifferentialPrivacyConfiguration & GetDifferentialPrivacy() const
AWS_CLEANROOMS_API AnalysisRuleCustom & operator=(Aws::Utils::Json::JsonView jsonValue)
AnalysisRuleCustom & WithAdditionalAnalyses(AdditionalAnalyses value)
const Aws::Vector< Aws::String > & GetAllowedAnalyses() const
const Aws::Vector< Aws::String > & GetAllowedAnalysisProviders() const
AnalysisRuleCustom & WithAllowedAdditionalAnalyses(AllowedAdditionalAnalysesT &&value)
AnalysisRuleCustom & WithAllowedAnalysisProviders(AllowedAnalysisProvidersT &&value)
const Aws::Vector< Aws::String > & GetAllowedResultReceivers() const
void SetDifferentialPrivacy(DifferentialPrivacyT &&value)
void SetComparisonControls(ComparisonControlsT &&value)
void SetAllowedAdditionalAnalyses(AllowedAdditionalAnalysesT &&value)
AnalysisRuleCustom & WithDifferentialPrivacy(DifferentialPrivacyT &&value)
AdditionalAnalyses GetAdditionalAnalyses() const
void SetDisallowedOutputColumns(DisallowedOutputColumnsT &&value)
void SetAllowedAnalysisProviders(AllowedAnalysisProvidersT &&value)
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue