AWS SDK for C++

AWS SDK for C++ Version 1.11.741

Loading...
Searching...
No Matches
AnalysisRule.h
1
6#pragma once
7#include <aws/cleanrooms/CleanRooms_EXPORTS.h>
8#include <aws/cleanrooms/model/AnalysisRulePolicy.h>
9#include <aws/cleanrooms/model/AnalysisRuleType.h>
10#include <aws/cleanrooms/model/ConfiguredTableAssociationAnalysisRulePolicy.h>
11#include <aws/cleanrooms/model/ConsolidatedPolicy.h>
12#include <aws/core/utils/DateTime.h>
13#include <aws/core/utils/memory/stl/AWSString.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
34 public:
35 AWS_CLEANROOMS_API AnalysisRule() = default;
36 AWS_CLEANROOMS_API AnalysisRule(Aws::Utils::Json::JsonView jsonValue);
37 AWS_CLEANROOMS_API AnalysisRule& operator=(Aws::Utils::Json::JsonView jsonValue);
38 AWS_CLEANROOMS_API Aws::Utils::Json::JsonValue Jsonize() const;
39
41
44 inline const Aws::String& GetCollaborationId() const { return m_collaborationId; }
45 inline bool CollaborationIdHasBeenSet() const { return m_collaborationIdHasBeenSet; }
46 template <typename CollaborationIdT = Aws::String>
47 void SetCollaborationId(CollaborationIdT&& value) {
48 m_collaborationIdHasBeenSet = true;
49 m_collaborationId = std::forward<CollaborationIdT>(value);
50 }
51 template <typename CollaborationIdT = Aws::String>
52 AnalysisRule& WithCollaborationId(CollaborationIdT&& value) {
53 SetCollaborationId(std::forward<CollaborationIdT>(value));
54 return *this;
55 }
57
59
62 inline AnalysisRuleType GetType() const { return m_type; }
63 inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
64 inline void SetType(AnalysisRuleType value) {
65 m_typeHasBeenSet = true;
66 m_type = value;
67 }
69 SetType(value);
70 return *this;
71 }
73
75
78 inline const Aws::String& GetName() const { return m_name; }
79 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
80 template <typename NameT = Aws::String>
81 void SetName(NameT&& value) {
82 m_nameHasBeenSet = true;
83 m_name = std::forward<NameT>(value);
84 }
85 template <typename NameT = Aws::String>
86 AnalysisRule& WithName(NameT&& value) {
87 SetName(std::forward<NameT>(value));
88 return *this;
89 }
91
93
96 inline const Aws::Utils::DateTime& GetCreateTime() const { return m_createTime; }
97 inline bool CreateTimeHasBeenSet() const { return m_createTimeHasBeenSet; }
98 template <typename CreateTimeT = Aws::Utils::DateTime>
99 void SetCreateTime(CreateTimeT&& value) {
100 m_createTimeHasBeenSet = true;
101 m_createTime = std::forward<CreateTimeT>(value);
102 }
103 template <typename CreateTimeT = Aws::Utils::DateTime>
104 AnalysisRule& WithCreateTime(CreateTimeT&& value) {
105 SetCreateTime(std::forward<CreateTimeT>(value));
106 return *this;
107 }
109
111
114 inline const Aws::Utils::DateTime& GetUpdateTime() const { return m_updateTime; }
115 inline bool UpdateTimeHasBeenSet() const { return m_updateTimeHasBeenSet; }
116 template <typename UpdateTimeT = Aws::Utils::DateTime>
117 void SetUpdateTime(UpdateTimeT&& value) {
118 m_updateTimeHasBeenSet = true;
119 m_updateTime = std::forward<UpdateTimeT>(value);
120 }
121 template <typename UpdateTimeT = Aws::Utils::DateTime>
122 AnalysisRule& WithUpdateTime(UpdateTimeT&& value) {
123 SetUpdateTime(std::forward<UpdateTimeT>(value));
124 return *this;
125 }
127
129
132 inline const AnalysisRulePolicy& GetPolicy() const { return m_policy; }
133 inline bool PolicyHasBeenSet() const { return m_policyHasBeenSet; }
134 template <typename PolicyT = AnalysisRulePolicy>
135 void SetPolicy(PolicyT&& value) {
136 m_policyHasBeenSet = true;
137 m_policy = std::forward<PolicyT>(value);
138 }
139 template <typename PolicyT = AnalysisRulePolicy>
140 AnalysisRule& WithPolicy(PolicyT&& value) {
141 SetPolicy(std::forward<PolicyT>(value));
142 return *this;
143 }
145
147
148 inline const ConfiguredTableAssociationAnalysisRulePolicy& GetCollaborationPolicy() const { return m_collaborationPolicy; }
149 inline bool CollaborationPolicyHasBeenSet() const { return m_collaborationPolicyHasBeenSet; }
150 template <typename CollaborationPolicyT = ConfiguredTableAssociationAnalysisRulePolicy>
151 void SetCollaborationPolicy(CollaborationPolicyT&& value) {
152 m_collaborationPolicyHasBeenSet = true;
153 m_collaborationPolicy = std::forward<CollaborationPolicyT>(value);
154 }
155 template <typename CollaborationPolicyT = ConfiguredTableAssociationAnalysisRulePolicy>
156 AnalysisRule& WithCollaborationPolicy(CollaborationPolicyT&& value) {
157 SetCollaborationPolicy(std::forward<CollaborationPolicyT>(value));
158 return *this;
159 }
161
163
166 inline const ConsolidatedPolicy& GetConsolidatedPolicy() const { return m_consolidatedPolicy; }
167 inline bool ConsolidatedPolicyHasBeenSet() const { return m_consolidatedPolicyHasBeenSet; }
168 template <typename ConsolidatedPolicyT = ConsolidatedPolicy>
169 void SetConsolidatedPolicy(ConsolidatedPolicyT&& value) {
170 m_consolidatedPolicyHasBeenSet = true;
171 m_consolidatedPolicy = std::forward<ConsolidatedPolicyT>(value);
172 }
173 template <typename ConsolidatedPolicyT = ConsolidatedPolicy>
174 AnalysisRule& WithConsolidatedPolicy(ConsolidatedPolicyT&& value) {
175 SetConsolidatedPolicy(std::forward<ConsolidatedPolicyT>(value));
176 return *this;
177 }
179 private:
180 Aws::String m_collaborationId;
181
183
184 Aws::String m_name;
185
186 Aws::Utils::DateTime m_createTime{};
187
188 Aws::Utils::DateTime m_updateTime{};
189
190 AnalysisRulePolicy m_policy;
191
192 ConfiguredTableAssociationAnalysisRulePolicy m_collaborationPolicy;
193
194 ConsolidatedPolicy m_consolidatedPolicy;
195 bool m_collaborationIdHasBeenSet = false;
196 bool m_typeHasBeenSet = false;
197 bool m_nameHasBeenSet = false;
198 bool m_createTimeHasBeenSet = false;
199 bool m_updateTimeHasBeenSet = false;
200 bool m_policyHasBeenSet = false;
201 bool m_collaborationPolicyHasBeenSet = false;
202 bool m_consolidatedPolicyHasBeenSet = false;
203};
204
205} // namespace Model
206} // namespace CleanRooms
207} // namespace Aws
const ConfiguredTableAssociationAnalysisRulePolicy & GetCollaborationPolicy() const
void SetType(AnalysisRuleType value)
AnalysisRule & WithUpdateTime(UpdateTimeT &&value)
AnalysisRule & WithCreateTime(CreateTimeT &&value)
AnalysisRule & WithCollaborationPolicy(CollaborationPolicyT &&value)
const Aws::String & GetCollaborationId() const
const AnalysisRulePolicy & GetPolicy() const
AWS_CLEANROOMS_API AnalysisRule(Aws::Utils::Json::JsonView jsonValue)
AnalysisRule & WithCollaborationId(CollaborationIdT &&value)
const Aws::Utils::DateTime & GetCreateTime() const
AWS_CLEANROOMS_API AnalysisRule()=default
void SetCollaborationId(CollaborationIdT &&value)
void SetCollaborationPolicy(CollaborationPolicyT &&value)
const Aws::String & GetName() const
void SetUpdateTime(UpdateTimeT &&value)
AnalysisRule & WithName(NameT &&value)
AWS_CLEANROOMS_API AnalysisRule & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetConsolidatedPolicy(ConsolidatedPolicyT &&value)
AnalysisRule & WithPolicy(PolicyT &&value)
AnalysisRule & WithConsolidatedPolicy(ConsolidatedPolicyT &&value)
const Aws::Utils::DateTime & GetUpdateTime() const
const ConsolidatedPolicy & GetConsolidatedPolicy() const
void SetCreateTime(CreateTimeT &&value)
AWS_CLEANROOMS_API Aws::Utils::Json::JsonValue Jsonize() const
AnalysisRule & WithType(AnalysisRuleType value)
AnalysisRuleType GetType() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue