AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
RuleBasedMatchingRequest.h
1
6#pragma once
7#include <aws/customer-profiles/CustomerProfiles_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/customer-profiles/model/AttributeTypesSelector.h>
10#include <aws/customer-profiles/model/ConflictResolution.h>
11#include <aws/customer-profiles/model/ExportingConfig.h>
12#include <aws/customer-profiles/model/MatchingRule.h>
13#include <utility>
14
15namespace Aws
16{
17namespace Utils
18{
19namespace Json
20{
21 class JsonValue;
22 class JsonView;
23} // namespace Json
24} // namespace Utils
25namespace CustomerProfiles
26{
27namespace Model
28{
29
36 {
37 public:
38 AWS_CUSTOMERPROFILES_API RuleBasedMatchingRequest() = default;
39 AWS_CUSTOMERPROFILES_API RuleBasedMatchingRequest(Aws::Utils::Json::JsonView jsonValue);
41 AWS_CUSTOMERPROFILES_API Aws::Utils::Json::JsonValue Jsonize() const;
42
43
45
49 inline bool GetEnabled() const { return m_enabled; }
50 inline bool EnabledHasBeenSet() const { return m_enabledHasBeenSet; }
51 inline void SetEnabled(bool value) { m_enabledHasBeenSet = true; m_enabled = value; }
52 inline RuleBasedMatchingRequest& WithEnabled(bool value) { SetEnabled(value); return *this;}
54
56
60 inline const Aws::Vector<MatchingRule>& GetMatchingRules() const { return m_matchingRules; }
61 inline bool MatchingRulesHasBeenSet() const { return m_matchingRulesHasBeenSet; }
62 template<typename MatchingRulesT = Aws::Vector<MatchingRule>>
63 void SetMatchingRules(MatchingRulesT&& value) { m_matchingRulesHasBeenSet = true; m_matchingRules = std::forward<MatchingRulesT>(value); }
64 template<typename MatchingRulesT = Aws::Vector<MatchingRule>>
65 RuleBasedMatchingRequest& WithMatchingRules(MatchingRulesT&& value) { SetMatchingRules(std::forward<MatchingRulesT>(value)); return *this;}
66 template<typename MatchingRulesT = MatchingRule>
67 RuleBasedMatchingRequest& AddMatchingRules(MatchingRulesT&& value) { m_matchingRulesHasBeenSet = true; m_matchingRules.emplace_back(std::forward<MatchingRulesT>(value)); return *this; }
69
71
76 inline int GetMaxAllowedRuleLevelForMerging() const { return m_maxAllowedRuleLevelForMerging; }
77 inline bool MaxAllowedRuleLevelForMergingHasBeenSet() const { return m_maxAllowedRuleLevelForMergingHasBeenSet; }
78 inline void SetMaxAllowedRuleLevelForMerging(int value) { m_maxAllowedRuleLevelForMergingHasBeenSet = true; m_maxAllowedRuleLevelForMerging = value; }
81
83
86 inline int GetMaxAllowedRuleLevelForMatching() const { return m_maxAllowedRuleLevelForMatching; }
87 inline bool MaxAllowedRuleLevelForMatchingHasBeenSet() const { return m_maxAllowedRuleLevelForMatchingHasBeenSet; }
88 inline void SetMaxAllowedRuleLevelForMatching(int value) { m_maxAllowedRuleLevelForMatchingHasBeenSet = true; m_maxAllowedRuleLevelForMatching = value; }
91
93
97 inline const AttributeTypesSelector& GetAttributeTypesSelector() const { return m_attributeTypesSelector; }
98 inline bool AttributeTypesSelectorHasBeenSet() const { return m_attributeTypesSelectorHasBeenSet; }
99 template<typename AttributeTypesSelectorT = AttributeTypesSelector>
100 void SetAttributeTypesSelector(AttributeTypesSelectorT&& value) { m_attributeTypesSelectorHasBeenSet = true; m_attributeTypesSelector = std::forward<AttributeTypesSelectorT>(value); }
101 template<typename AttributeTypesSelectorT = AttributeTypesSelector>
102 RuleBasedMatchingRequest& WithAttributeTypesSelector(AttributeTypesSelectorT&& value) { SetAttributeTypesSelector(std::forward<AttributeTypesSelectorT>(value)); return *this;}
104
106
107 inline const ConflictResolution& GetConflictResolution() const { return m_conflictResolution; }
108 inline bool ConflictResolutionHasBeenSet() const { return m_conflictResolutionHasBeenSet; }
109 template<typename ConflictResolutionT = ConflictResolution>
110 void SetConflictResolution(ConflictResolutionT&& value) { m_conflictResolutionHasBeenSet = true; m_conflictResolution = std::forward<ConflictResolutionT>(value); }
111 template<typename ConflictResolutionT = ConflictResolution>
112 RuleBasedMatchingRequest& WithConflictResolution(ConflictResolutionT&& value) { SetConflictResolution(std::forward<ConflictResolutionT>(value)); return *this;}
114
116
117 inline const ExportingConfig& GetExportingConfig() const { return m_exportingConfig; }
118 inline bool ExportingConfigHasBeenSet() const { return m_exportingConfigHasBeenSet; }
119 template<typename ExportingConfigT = ExportingConfig>
120 void SetExportingConfig(ExportingConfigT&& value) { m_exportingConfigHasBeenSet = true; m_exportingConfig = std::forward<ExportingConfigT>(value); }
121 template<typename ExportingConfigT = ExportingConfig>
122 RuleBasedMatchingRequest& WithExportingConfig(ExportingConfigT&& value) { SetExportingConfig(std::forward<ExportingConfigT>(value)); return *this;}
124 private:
125
126 bool m_enabled{false};
127 bool m_enabledHasBeenSet = false;
128
129 Aws::Vector<MatchingRule> m_matchingRules;
130 bool m_matchingRulesHasBeenSet = false;
131
132 int m_maxAllowedRuleLevelForMerging{0};
133 bool m_maxAllowedRuleLevelForMergingHasBeenSet = false;
134
135 int m_maxAllowedRuleLevelForMatching{0};
136 bool m_maxAllowedRuleLevelForMatchingHasBeenSet = false;
137
138 AttributeTypesSelector m_attributeTypesSelector;
139 bool m_attributeTypesSelectorHasBeenSet = false;
140
141 ConflictResolution m_conflictResolution;
142 bool m_conflictResolutionHasBeenSet = false;
143
144 ExportingConfig m_exportingConfig;
145 bool m_exportingConfigHasBeenSet = false;
146 };
147
148} // namespace Model
149} // namespace CustomerProfiles
150} // namespace Aws
RuleBasedMatchingRequest & WithExportingConfig(ExportingConfigT &&value)
const AttributeTypesSelector & GetAttributeTypesSelector() const
RuleBasedMatchingRequest & WithMatchingRules(MatchingRulesT &&value)
RuleBasedMatchingRequest & WithMaxAllowedRuleLevelForMatching(int value)
RuleBasedMatchingRequest & WithMaxAllowedRuleLevelForMerging(int value)
RuleBasedMatchingRequest & AddMatchingRules(MatchingRulesT &&value)
AWS_CUSTOMERPROFILES_API RuleBasedMatchingRequest & operator=(Aws::Utils::Json::JsonView jsonValue)
RuleBasedMatchingRequest & WithAttributeTypesSelector(AttributeTypesSelectorT &&value)
AWS_CUSTOMERPROFILES_API Aws::Utils::Json::JsonValue Jsonize() const
void SetAttributeTypesSelector(AttributeTypesSelectorT &&value)
RuleBasedMatchingRequest & WithConflictResolution(ConflictResolutionT &&value)
AWS_CUSTOMERPROFILES_API RuleBasedMatchingRequest(Aws::Utils::Json::JsonView jsonValue)
const Aws::Vector< MatchingRule > & GetMatchingRules() const
AWS_CUSTOMERPROFILES_API RuleBasedMatchingRequest()=default
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue