AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
AnalysisRuleAggregation.h
1
6#pragma once
7#include <aws/cleanrooms/CleanRooms_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/cleanrooms/model/JoinRequiredOption.h>
10#include <aws/cleanrooms/model/AdditionalAnalyses.h>
11#include <aws/cleanrooms/model/AggregateColumn.h>
12#include <aws/core/utils/memory/stl/AWSString.h>
13#include <aws/cleanrooms/model/JoinOperator.h>
14#include <aws/cleanrooms/model/ScalarFunctions.h>
15#include <aws/cleanrooms/model/AggregationConstraint.h>
16#include <utility>
17
18namespace Aws
19{
20namespace Utils
21{
22namespace Json
23{
24 class JsonValue;
25 class JsonView;
26} // namespace Json
27} // namespace Utils
28namespace CleanRooms
29{
30namespace Model
31{
32
40 {
41 public:
42 AWS_CLEANROOMS_API AnalysisRuleAggregation() = default;
45 AWS_CLEANROOMS_API Aws::Utils::Json::JsonValue Jsonize() const;
46
47
49
52 inline const Aws::Vector<AggregateColumn>& GetAggregateColumns() const { return m_aggregateColumns; }
53 inline bool AggregateColumnsHasBeenSet() const { return m_aggregateColumnsHasBeenSet; }
54 template<typename AggregateColumnsT = Aws::Vector<AggregateColumn>>
55 void SetAggregateColumns(AggregateColumnsT&& value) { m_aggregateColumnsHasBeenSet = true; m_aggregateColumns = std::forward<AggregateColumnsT>(value); }
56 template<typename AggregateColumnsT = Aws::Vector<AggregateColumn>>
57 AnalysisRuleAggregation& WithAggregateColumns(AggregateColumnsT&& value) { SetAggregateColumns(std::forward<AggregateColumnsT>(value)); return *this;}
58 template<typename AggregateColumnsT = AggregateColumn>
59 AnalysisRuleAggregation& AddAggregateColumns(AggregateColumnsT&& value) { m_aggregateColumnsHasBeenSet = true; m_aggregateColumns.emplace_back(std::forward<AggregateColumnsT>(value)); return *this; }
61
63
67 inline const Aws::Vector<Aws::String>& GetJoinColumns() const { return m_joinColumns; }
68 inline bool JoinColumnsHasBeenSet() const { return m_joinColumnsHasBeenSet; }
69 template<typename JoinColumnsT = Aws::Vector<Aws::String>>
70 void SetJoinColumns(JoinColumnsT&& value) { m_joinColumnsHasBeenSet = true; m_joinColumns = std::forward<JoinColumnsT>(value); }
71 template<typename JoinColumnsT = Aws::Vector<Aws::String>>
72 AnalysisRuleAggregation& WithJoinColumns(JoinColumnsT&& value) { SetJoinColumns(std::forward<JoinColumnsT>(value)); return *this;}
73 template<typename JoinColumnsT = Aws::String>
74 AnalysisRuleAggregation& AddJoinColumns(JoinColumnsT&& value) { m_joinColumnsHasBeenSet = true; m_joinColumns.emplace_back(std::forward<JoinColumnsT>(value)); return *this; }
76
78
82 inline JoinRequiredOption GetJoinRequired() const { return m_joinRequired; }
83 inline bool JoinRequiredHasBeenSet() const { return m_joinRequiredHasBeenSet; }
84 inline void SetJoinRequired(JoinRequiredOption value) { m_joinRequiredHasBeenSet = true; m_joinRequired = value; }
87
89
93 inline const Aws::Vector<JoinOperator>& GetAllowedJoinOperators() const { return m_allowedJoinOperators; }
94 inline bool AllowedJoinOperatorsHasBeenSet() const { return m_allowedJoinOperatorsHasBeenSet; }
95 template<typename AllowedJoinOperatorsT = Aws::Vector<JoinOperator>>
96 void SetAllowedJoinOperators(AllowedJoinOperatorsT&& value) { m_allowedJoinOperatorsHasBeenSet = true; m_allowedJoinOperators = std::forward<AllowedJoinOperatorsT>(value); }
97 template<typename AllowedJoinOperatorsT = Aws::Vector<JoinOperator>>
98 AnalysisRuleAggregation& WithAllowedJoinOperators(AllowedJoinOperatorsT&& value) { SetAllowedJoinOperators(std::forward<AllowedJoinOperatorsT>(value)); return *this;}
99 inline AnalysisRuleAggregation& AddAllowedJoinOperators(JoinOperator value) { m_allowedJoinOperatorsHasBeenSet = true; m_allowedJoinOperators.push_back(value); return *this; }
101
103
107 inline const Aws::Vector<Aws::String>& GetDimensionColumns() const { return m_dimensionColumns; }
108 inline bool DimensionColumnsHasBeenSet() const { return m_dimensionColumnsHasBeenSet; }
109 template<typename DimensionColumnsT = Aws::Vector<Aws::String>>
110 void SetDimensionColumns(DimensionColumnsT&& value) { m_dimensionColumnsHasBeenSet = true; m_dimensionColumns = std::forward<DimensionColumnsT>(value); }
111 template<typename DimensionColumnsT = Aws::Vector<Aws::String>>
112 AnalysisRuleAggregation& WithDimensionColumns(DimensionColumnsT&& value) { SetDimensionColumns(std::forward<DimensionColumnsT>(value)); return *this;}
113 template<typename DimensionColumnsT = Aws::String>
114 AnalysisRuleAggregation& AddDimensionColumns(DimensionColumnsT&& value) { m_dimensionColumnsHasBeenSet = true; m_dimensionColumns.emplace_back(std::forward<DimensionColumnsT>(value)); return *this; }
116
118
122 inline const Aws::Vector<ScalarFunctions>& GetScalarFunctions() const { return m_scalarFunctions; }
123 inline bool ScalarFunctionsHasBeenSet() const { return m_scalarFunctionsHasBeenSet; }
124 template<typename ScalarFunctionsT = Aws::Vector<ScalarFunctions>>
125 void SetScalarFunctions(ScalarFunctionsT&& value) { m_scalarFunctionsHasBeenSet = true; m_scalarFunctions = std::forward<ScalarFunctionsT>(value); }
126 template<typename ScalarFunctionsT = Aws::Vector<ScalarFunctions>>
127 AnalysisRuleAggregation& WithScalarFunctions(ScalarFunctionsT&& value) { SetScalarFunctions(std::forward<ScalarFunctionsT>(value)); return *this;}
128 inline AnalysisRuleAggregation& AddScalarFunctions(ScalarFunctions value) { m_scalarFunctionsHasBeenSet = true; m_scalarFunctions.push_back(value); return *this; }
130
132
136 inline const Aws::Vector<AggregationConstraint>& GetOutputConstraints() const { return m_outputConstraints; }
137 inline bool OutputConstraintsHasBeenSet() const { return m_outputConstraintsHasBeenSet; }
138 template<typename OutputConstraintsT = Aws::Vector<AggregationConstraint>>
139 void SetOutputConstraints(OutputConstraintsT&& value) { m_outputConstraintsHasBeenSet = true; m_outputConstraints = std::forward<OutputConstraintsT>(value); }
140 template<typename OutputConstraintsT = Aws::Vector<AggregationConstraint>>
141 AnalysisRuleAggregation& WithOutputConstraints(OutputConstraintsT&& value) { SetOutputConstraints(std::forward<OutputConstraintsT>(value)); return *this;}
142 template<typename OutputConstraintsT = AggregationConstraint>
143 AnalysisRuleAggregation& AddOutputConstraints(OutputConstraintsT&& value) { m_outputConstraintsHasBeenSet = true; m_outputConstraints.emplace_back(std::forward<OutputConstraintsT>(value)); return *this; }
145
147
154 inline AdditionalAnalyses GetAdditionalAnalyses() const { return m_additionalAnalyses; }
155 inline bool AdditionalAnalysesHasBeenSet() const { return m_additionalAnalysesHasBeenSet; }
156 inline void SetAdditionalAnalyses(AdditionalAnalyses value) { m_additionalAnalysesHasBeenSet = true; m_additionalAnalyses = value; }
159 private:
160
161 Aws::Vector<AggregateColumn> m_aggregateColumns;
162 bool m_aggregateColumnsHasBeenSet = false;
163
164 Aws::Vector<Aws::String> m_joinColumns;
165 bool m_joinColumnsHasBeenSet = false;
166
168 bool m_joinRequiredHasBeenSet = false;
169
170 Aws::Vector<JoinOperator> m_allowedJoinOperators;
171 bool m_allowedJoinOperatorsHasBeenSet = false;
172
173 Aws::Vector<Aws::String> m_dimensionColumns;
174 bool m_dimensionColumnsHasBeenSet = false;
175
176 Aws::Vector<ScalarFunctions> m_scalarFunctions;
177 bool m_scalarFunctionsHasBeenSet = false;
178
179 Aws::Vector<AggregationConstraint> m_outputConstraints;
180 bool m_outputConstraintsHasBeenSet = false;
181
183 bool m_additionalAnalysesHasBeenSet = false;
184 };
185
186} // namespace Model
187} // namespace CleanRooms
188} // namespace Aws
AnalysisRuleAggregation & AddAllowedJoinOperators(JoinOperator value)
AnalysisRuleAggregation & WithDimensionColumns(DimensionColumnsT &&value)
AnalysisRuleAggregation & WithAdditionalAnalyses(AdditionalAnalyses value)
const Aws::Vector< JoinOperator > & GetAllowedJoinOperators() const
AnalysisRuleAggregation & WithOutputConstraints(OutputConstraintsT &&value)
AnalysisRuleAggregation & WithJoinColumns(JoinColumnsT &&value)
AnalysisRuleAggregation & AddOutputConstraints(OutputConstraintsT &&value)
AnalysisRuleAggregation & AddJoinColumns(JoinColumnsT &&value)
AWS_CLEANROOMS_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_CLEANROOMS_API AnalysisRuleAggregation(Aws::Utils::Json::JsonView jsonValue)
const Aws::Vector< Aws::String > & GetJoinColumns() const
AnalysisRuleAggregation & AddAggregateColumns(AggregateColumnsT &&value)
const Aws::Vector< AggregateColumn > & GetAggregateColumns() const
AnalysisRuleAggregation & AddDimensionColumns(DimensionColumnsT &&value)
const Aws::Vector< Aws::String > & GetDimensionColumns() const
AWS_CLEANROOMS_API AnalysisRuleAggregation & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetAllowedJoinOperators(AllowedJoinOperatorsT &&value)
AWS_CLEANROOMS_API AnalysisRuleAggregation()=default
AnalysisRuleAggregation & WithAggregateColumns(AggregateColumnsT &&value)
AnalysisRuleAggregation & WithJoinRequired(JoinRequiredOption value)
AnalysisRuleAggregation & WithScalarFunctions(ScalarFunctionsT &&value)
const Aws::Vector< ScalarFunctions > & GetScalarFunctions() const
AnalysisRuleAggregation & WithAllowedJoinOperators(AllowedJoinOperatorsT &&value)
const Aws::Vector< AggregationConstraint > & GetOutputConstraints() const
AnalysisRuleAggregation & AddScalarFunctions(ScalarFunctions value)
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue