AWS SDK for C++

AWS SDK for C++ Version 1.11.608

Loading...
Searching...
No Matches
AnalysisRulePolicyV1.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 <aws/cleanrooms/model/AnalysisRuleIdMappingTable.h>
12#include <utility>
13
14namespace Aws
15{
16namespace Utils
17{
18namespace Json
19{
20 class JsonValue;
21 class JsonView;
22} // namespace Json
23} // namespace Utils
24namespace CleanRooms
25{
26namespace Model
27{
28
36 {
37 public:
38 AWS_CLEANROOMS_API AnalysisRulePolicyV1() = default;
39 AWS_CLEANROOMS_API AnalysisRulePolicyV1(Aws::Utils::Json::JsonView jsonValue);
41 AWS_CLEANROOMS_API Aws::Utils::Json::JsonValue Jsonize() const;
42
43
45
48 inline const AnalysisRuleList& GetList() const { return m_list; }
49 inline bool ListHasBeenSet() const { return m_listHasBeenSet; }
50 template<typename ListT = AnalysisRuleList>
51 void SetList(ListT&& value) { m_listHasBeenSet = true; m_list = std::forward<ListT>(value); }
52 template<typename ListT = AnalysisRuleList>
53 AnalysisRulePolicyV1& WithList(ListT&& value) { SetList(std::forward<ListT>(value)); return *this;}
55
57
61 inline const AnalysisRuleAggregation& GetAggregation() const { return m_aggregation; }
62 inline bool AggregationHasBeenSet() const { return m_aggregationHasBeenSet; }
63 template<typename AggregationT = AnalysisRuleAggregation>
64 void SetAggregation(AggregationT&& value) { m_aggregationHasBeenSet = true; m_aggregation = std::forward<AggregationT>(value); }
65 template<typename AggregationT = AnalysisRuleAggregation>
66 AnalysisRulePolicyV1& WithAggregation(AggregationT&& value) { SetAggregation(std::forward<AggregationT>(value)); return *this;}
68
70
73 inline const AnalysisRuleCustom& GetCustom() const { return m_custom; }
74 inline bool CustomHasBeenSet() const { return m_customHasBeenSet; }
75 template<typename CustomT = AnalysisRuleCustom>
76 void SetCustom(CustomT&& value) { m_customHasBeenSet = true; m_custom = std::forward<CustomT>(value); }
77 template<typename CustomT = AnalysisRuleCustom>
78 AnalysisRulePolicyV1& WithCustom(CustomT&& value) { SetCustom(std::forward<CustomT>(value)); return *this;}
80
82
85 inline const AnalysisRuleIdMappingTable& GetIdMappingTable() const { return m_idMappingTable; }
86 inline bool IdMappingTableHasBeenSet() const { return m_idMappingTableHasBeenSet; }
87 template<typename IdMappingTableT = AnalysisRuleIdMappingTable>
88 void SetIdMappingTable(IdMappingTableT&& value) { m_idMappingTableHasBeenSet = true; m_idMappingTable = std::forward<IdMappingTableT>(value); }
89 template<typename IdMappingTableT = AnalysisRuleIdMappingTable>
90 AnalysisRulePolicyV1& WithIdMappingTable(IdMappingTableT&& value) { SetIdMappingTable(std::forward<IdMappingTableT>(value)); return *this;}
92 private:
93
94 AnalysisRuleList m_list;
95 bool m_listHasBeenSet = false;
96
97 AnalysisRuleAggregation m_aggregation;
98 bool m_aggregationHasBeenSet = false;
99
100 AnalysisRuleCustom m_custom;
101 bool m_customHasBeenSet = false;
102
103 AnalysisRuleIdMappingTable m_idMappingTable;
104 bool m_idMappingTableHasBeenSet = false;
105 };
106
107} // namespace Model
108} // namespace CleanRooms
109} // namespace Aws
const AnalysisRuleIdMappingTable & GetIdMappingTable() const
AnalysisRulePolicyV1 & WithList(ListT &&value)
AWS_CLEANROOMS_API AnalysisRulePolicyV1(Aws::Utils::Json::JsonView jsonValue)
const AnalysisRuleCustom & GetCustom() const
AWS_CLEANROOMS_API AnalysisRulePolicyV1 & operator=(Aws::Utils::Json::JsonView jsonValue)
AnalysisRulePolicyV1 & WithIdMappingTable(IdMappingTableT &&value)
AnalysisRulePolicyV1 & WithCustom(CustomT &&value)
AnalysisRulePolicyV1 & WithAggregation(AggregationT &&value)
AWS_CLEANROOMS_API AnalysisRulePolicyV1()=default
AWS_CLEANROOMS_API Aws::Utils::Json::JsonValue Jsonize() const
const AnalysisRuleAggregation & GetAggregation() const
Aws::Utils::Json::JsonValue JsonValue