AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
GroupingAttributeDefinition.h
1
6#pragma once
7#include <aws/application-signals/ApplicationSignals_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10
11#include <utility>
12
13namespace Aws {
14namespace Utils {
15namespace Json {
16class JsonValue;
17class JsonView;
18} // namespace Json
19} // namespace Utils
20namespace ApplicationSignals {
21namespace Model {
22
31 public:
32 AWS_APPLICATIONSIGNALS_API GroupingAttributeDefinition() = default;
33 AWS_APPLICATIONSIGNALS_API GroupingAttributeDefinition(Aws::Utils::Json::JsonView jsonValue);
35 AWS_APPLICATIONSIGNALS_API Aws::Utils::Json::JsonValue Jsonize() const;
36
38
43 inline const Aws::String& GetGroupingName() const { return m_groupingName; }
44 inline bool GroupingNameHasBeenSet() const { return m_groupingNameHasBeenSet; }
45 template <typename GroupingNameT = Aws::String>
46 void SetGroupingName(GroupingNameT&& value) {
47 m_groupingNameHasBeenSet = true;
48 m_groupingName = std::forward<GroupingNameT>(value);
49 }
50 template <typename GroupingNameT = Aws::String>
52 SetGroupingName(std::forward<GroupingNameT>(value));
53 return *this;
54 }
56
58
63 inline const Aws::Vector<Aws::String>& GetGroupingSourceKeys() const { return m_groupingSourceKeys; }
64 inline bool GroupingSourceKeysHasBeenSet() const { return m_groupingSourceKeysHasBeenSet; }
65 template <typename GroupingSourceKeysT = Aws::Vector<Aws::String>>
66 void SetGroupingSourceKeys(GroupingSourceKeysT&& value) {
67 m_groupingSourceKeysHasBeenSet = true;
68 m_groupingSourceKeys = std::forward<GroupingSourceKeysT>(value);
69 }
70 template <typename GroupingSourceKeysT = Aws::Vector<Aws::String>>
72 SetGroupingSourceKeys(std::forward<GroupingSourceKeysT>(value));
73 return *this;
74 }
75 template <typename GroupingSourceKeysT = Aws::String>
76 GroupingAttributeDefinition& AddGroupingSourceKeys(GroupingSourceKeysT&& value) {
77 m_groupingSourceKeysHasBeenSet = true;
78 m_groupingSourceKeys.emplace_back(std::forward<GroupingSourceKeysT>(value));
79 return *this;
80 }
82
84
89 inline const Aws::String& GetDefaultGroupingValue() const { return m_defaultGroupingValue; }
90 inline bool DefaultGroupingValueHasBeenSet() const { return m_defaultGroupingValueHasBeenSet; }
91 template <typename DefaultGroupingValueT = Aws::String>
92 void SetDefaultGroupingValue(DefaultGroupingValueT&& value) {
93 m_defaultGroupingValueHasBeenSet = true;
94 m_defaultGroupingValue = std::forward<DefaultGroupingValueT>(value);
95 }
96 template <typename DefaultGroupingValueT = Aws::String>
97 GroupingAttributeDefinition& WithDefaultGroupingValue(DefaultGroupingValueT&& value) {
98 SetDefaultGroupingValue(std::forward<DefaultGroupingValueT>(value));
99 return *this;
100 }
102 private:
103 Aws::String m_groupingName;
104
105 Aws::Vector<Aws::String> m_groupingSourceKeys;
106
107 Aws::String m_defaultGroupingValue;
108 bool m_groupingNameHasBeenSet = false;
109 bool m_groupingSourceKeysHasBeenSet = false;
110 bool m_defaultGroupingValueHasBeenSet = false;
111};
112
113} // namespace Model
114} // namespace ApplicationSignals
115} // namespace Aws
GroupingAttributeDefinition & AddGroupingSourceKeys(GroupingSourceKeysT &&value)
GroupingAttributeDefinition & WithDefaultGroupingValue(DefaultGroupingValueT &&value)
GroupingAttributeDefinition & WithGroupingSourceKeys(GroupingSourceKeysT &&value)
AWS_APPLICATIONSIGNALS_API GroupingAttributeDefinition(Aws::Utils::Json::JsonView jsonValue)
AWS_APPLICATIONSIGNALS_API Aws::Utils::Json::JsonValue Jsonize() const
GroupingAttributeDefinition & WithGroupingName(GroupingNameT &&value)
AWS_APPLICATIONSIGNALS_API GroupingAttributeDefinition()=default
AWS_APPLICATIONSIGNALS_API GroupingAttributeDefinition & operator=(Aws::Utils::Json::JsonView jsonValue)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue