AWS SDK for C++

AWS SDK for C++ Version 1.11.741

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/DifferentialPrivacyConfiguration.h>
10#include <aws/core/utils/memory/stl/AWSString.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12
13#include <utility>
14
15namespace Aws {
16namespace Utils {
17namespace Json {
18class JsonValue;
19class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace CleanRooms {
23namespace Model {
24
33 public:
34 AWS_CLEANROOMS_API AnalysisRuleCustom() = default;
35 AWS_CLEANROOMS_API AnalysisRuleCustom(Aws::Utils::Json::JsonView jsonValue);
37 AWS_CLEANROOMS_API Aws::Utils::Json::JsonValue Jsonize() const;
38
40
44 inline const Aws::Vector<Aws::String>& GetAllowedAnalyses() const { return m_allowedAnalyses; }
45 inline bool AllowedAnalysesHasBeenSet() const { return m_allowedAnalysesHasBeenSet; }
46 template <typename AllowedAnalysesT = Aws::Vector<Aws::String>>
47 void SetAllowedAnalyses(AllowedAnalysesT&& value) {
48 m_allowedAnalysesHasBeenSet = true;
49 m_allowedAnalyses = std::forward<AllowedAnalysesT>(value);
50 }
51 template <typename AllowedAnalysesT = Aws::Vector<Aws::String>>
52 AnalysisRuleCustom& WithAllowedAnalyses(AllowedAnalysesT&& value) {
53 SetAllowedAnalyses(std::forward<AllowedAnalysesT>(value));
54 return *this;
55 }
56 template <typename AllowedAnalysesT = Aws::String>
57 AnalysisRuleCustom& AddAllowedAnalyses(AllowedAnalysesT&& value) {
58 m_allowedAnalysesHasBeenSet = true;
59 m_allowedAnalyses.emplace_back(std::forward<AllowedAnalysesT>(value));
60 return *this;
61 }
63
65
70 inline const Aws::Vector<Aws::String>& GetAllowedAnalysisProviders() const { return m_allowedAnalysisProviders; }
71 inline bool AllowedAnalysisProvidersHasBeenSet() const { return m_allowedAnalysisProvidersHasBeenSet; }
72 template <typename AllowedAnalysisProvidersT = Aws::Vector<Aws::String>>
73 void SetAllowedAnalysisProviders(AllowedAnalysisProvidersT&& value) {
74 m_allowedAnalysisProvidersHasBeenSet = true;
75 m_allowedAnalysisProviders = std::forward<AllowedAnalysisProvidersT>(value);
76 }
77 template <typename AllowedAnalysisProvidersT = Aws::Vector<Aws::String>>
78 AnalysisRuleCustom& WithAllowedAnalysisProviders(AllowedAnalysisProvidersT&& value) {
79 SetAllowedAnalysisProviders(std::forward<AllowedAnalysisProvidersT>(value));
80 return *this;
81 }
82 template <typename AllowedAnalysisProvidersT = Aws::String>
83 AnalysisRuleCustom& AddAllowedAnalysisProviders(AllowedAnalysisProvidersT&& value) {
84 m_allowedAnalysisProvidersHasBeenSet = true;
85 m_allowedAnalysisProviders.emplace_back(std::forward<AllowedAnalysisProvidersT>(value));
86 return *this;
87 }
89
91
95 inline AdditionalAnalyses GetAdditionalAnalyses() const { return m_additionalAnalyses; }
96 inline bool AdditionalAnalysesHasBeenSet() const { return m_additionalAnalysesHasBeenSet; }
98 m_additionalAnalysesHasBeenSet = true;
99 m_additionalAnalyses = value;
100 }
103 return *this;
104 }
106
108
111 inline const Aws::Vector<Aws::String>& GetDisallowedOutputColumns() const { return m_disallowedOutputColumns; }
112 inline bool DisallowedOutputColumnsHasBeenSet() const { return m_disallowedOutputColumnsHasBeenSet; }
113 template <typename DisallowedOutputColumnsT = Aws::Vector<Aws::String>>
114 void SetDisallowedOutputColumns(DisallowedOutputColumnsT&& value) {
115 m_disallowedOutputColumnsHasBeenSet = true;
116 m_disallowedOutputColumns = std::forward<DisallowedOutputColumnsT>(value);
117 }
118 template <typename DisallowedOutputColumnsT = Aws::Vector<Aws::String>>
119 AnalysisRuleCustom& WithDisallowedOutputColumns(DisallowedOutputColumnsT&& value) {
120 SetDisallowedOutputColumns(std::forward<DisallowedOutputColumnsT>(value));
121 return *this;
122 }
123 template <typename DisallowedOutputColumnsT = Aws::String>
124 AnalysisRuleCustom& AddDisallowedOutputColumns(DisallowedOutputColumnsT&& value) {
125 m_disallowedOutputColumnsHasBeenSet = true;
126 m_disallowedOutputColumns.emplace_back(std::forward<DisallowedOutputColumnsT>(value));
127 return *this;
128 }
130
132
135 inline const DifferentialPrivacyConfiguration& GetDifferentialPrivacy() const { return m_differentialPrivacy; }
136 inline bool DifferentialPrivacyHasBeenSet() const { return m_differentialPrivacyHasBeenSet; }
137 template <typename DifferentialPrivacyT = DifferentialPrivacyConfiguration>
138 void SetDifferentialPrivacy(DifferentialPrivacyT&& value) {
139 m_differentialPrivacyHasBeenSet = true;
140 m_differentialPrivacy = std::forward<DifferentialPrivacyT>(value);
141 }
142 template <typename DifferentialPrivacyT = DifferentialPrivacyConfiguration>
143 AnalysisRuleCustom& WithDifferentialPrivacy(DifferentialPrivacyT&& value) {
144 SetDifferentialPrivacy(std::forward<DifferentialPrivacyT>(value));
145 return *this;
146 }
148 private:
149 Aws::Vector<Aws::String> m_allowedAnalyses;
150
151 Aws::Vector<Aws::String> m_allowedAnalysisProviders;
152
154
155 Aws::Vector<Aws::String> m_disallowedOutputColumns;
156
157 DifferentialPrivacyConfiguration m_differentialPrivacy;
158 bool m_allowedAnalysesHasBeenSet = false;
159 bool m_allowedAnalysisProvidersHasBeenSet = false;
160 bool m_additionalAnalysesHasBeenSet = false;
161 bool m_disallowedOutputColumnsHasBeenSet = false;
162 bool m_differentialPrivacyHasBeenSet = false;
163};
164
165} // namespace Model
166} // namespace CleanRooms
167} // namespace Aws
AWS_CLEANROOMS_API AnalysisRuleCustom(Aws::Utils::Json::JsonView jsonValue)
AnalysisRuleCustom & WithDisallowedOutputColumns(DisallowedOutputColumnsT &&value)
AnalysisRuleCustom & AddAllowedAnalysisProviders(AllowedAnalysisProvidersT &&value)
AnalysisRuleCustom & WithAllowedAnalyses(AllowedAnalysesT &&value)
void SetAllowedAnalyses(AllowedAnalysesT &&value)
AWS_CLEANROOMS_API AnalysisRuleCustom()=default
const Aws::Vector< Aws::String > & GetDisallowedOutputColumns() const
void SetAdditionalAnalyses(AdditionalAnalyses value)
AnalysisRuleCustom & AddDisallowedOutputColumns(DisallowedOutputColumnsT &&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 & WithAllowedAnalysisProviders(AllowedAnalysisProvidersT &&value)
void SetDifferentialPrivacy(DifferentialPrivacyT &&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