AWS SDK for C++

AWS SDK for C++ Version 1.11.612

Loading...
Searching...
No Matches
ConfiguredTableAnalysisRulePolicyV1.h
1
6#pragma once
7#include <aws/cleanrooms/CleanRooms_EXPORTS.h>
8#include <aws/cleanrooms/model/AnalysisRuleList.h>
9#include <aws/cleanrooms/model/AnalysisRuleAggregation.h>
10#include <aws/cleanrooms/model/AnalysisRuleCustom.h>
11#include <utility>
12
13namespace Aws
14{
15namespace Utils
16{
17namespace Json
18{
19 class JsonValue;
20 class JsonView;
21} // namespace Json
22} // namespace Utils
23namespace CleanRooms
24{
25namespace Model
26{
27
35 {
36 public:
37 AWS_CLEANROOMS_API ConfiguredTableAnalysisRulePolicyV1() = default;
40 AWS_CLEANROOMS_API Aws::Utils::Json::JsonValue Jsonize() const;
41
42
44
47 inline const AnalysisRuleList& GetList() const { return m_list; }
48 inline bool ListHasBeenSet() const { return m_listHasBeenSet; }
49 template<typename ListT = AnalysisRuleList>
50 void SetList(ListT&& value) { m_listHasBeenSet = true; m_list = std::forward<ListT>(value); }
51 template<typename ListT = AnalysisRuleList>
52 ConfiguredTableAnalysisRulePolicyV1& WithList(ListT&& value) { SetList(std::forward<ListT>(value)); return *this;}
54
56
60 inline const AnalysisRuleAggregation& GetAggregation() const { return m_aggregation; }
61 inline bool AggregationHasBeenSet() const { return m_aggregationHasBeenSet; }
62 template<typename AggregationT = AnalysisRuleAggregation>
63 void SetAggregation(AggregationT&& value) { m_aggregationHasBeenSet = true; m_aggregation = std::forward<AggregationT>(value); }
64 template<typename AggregationT = AnalysisRuleAggregation>
65 ConfiguredTableAnalysisRulePolicyV1& WithAggregation(AggregationT&& value) { SetAggregation(std::forward<AggregationT>(value)); return *this;}
67
69
70 inline const AnalysisRuleCustom& GetCustom() const { return m_custom; }
71 inline bool CustomHasBeenSet() const { return m_customHasBeenSet; }
72 template<typename CustomT = AnalysisRuleCustom>
73 void SetCustom(CustomT&& value) { m_customHasBeenSet = true; m_custom = std::forward<CustomT>(value); }
74 template<typename CustomT = AnalysisRuleCustom>
75 ConfiguredTableAnalysisRulePolicyV1& WithCustom(CustomT&& value) { SetCustom(std::forward<CustomT>(value)); return *this;}
77 private:
78
79 AnalysisRuleList m_list;
80 bool m_listHasBeenSet = false;
81
82 AnalysisRuleAggregation m_aggregation;
83 bool m_aggregationHasBeenSet = false;
84
85 AnalysisRuleCustom m_custom;
86 bool m_customHasBeenSet = false;
87 };
88
89} // namespace Model
90} // namespace CleanRooms
91} // namespace Aws
ConfiguredTableAnalysisRulePolicyV1 & WithAggregation(AggregationT &&value)
AWS_CLEANROOMS_API ConfiguredTableAnalysisRulePolicyV1()=default
AWS_CLEANROOMS_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_CLEANROOMS_API ConfiguredTableAnalysisRulePolicyV1(Aws::Utils::Json::JsonView jsonValue)
AWS_CLEANROOMS_API ConfiguredTableAnalysisRulePolicyV1 & operator=(Aws::Utils::Json::JsonView jsonValue)
ConfiguredTableAnalysisRulePolicyV1 & WithCustom(CustomT &&value)
Aws::Utils::Json::JsonValue JsonValue