AWS SDK for C++

AWS SDK for C++ Version 1.11.912

Loading...
Searching...
No Matches
ProductAttributeValues.h
1
6#pragma once
7#include <aws/ce/CostExplorer_EXPORTS.h>
8#include <aws/ce/model/MatchOption.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace CostExplorer {
22namespace Model {
23
65 public:
66 AWS_COSTEXPLORER_API ProductAttributeValues() = default;
67 AWS_COSTEXPLORER_API ProductAttributeValues(Aws::Utils::Json::JsonView jsonValue);
69 AWS_COSTEXPLORER_API Aws::Utils::Json::JsonValue Jsonize() const;
70
72
81 inline const Aws::String& GetKey() const { return m_key; }
82 inline bool KeyHasBeenSet() const { return m_keyHasBeenSet; }
83 template <typename KeyT = Aws::String>
84 void SetKey(KeyT&& value) {
85 m_keyHasBeenSet = true;
86 m_key = std::forward<KeyT>(value);
87 }
88 template <typename KeyT = Aws::String>
90 SetKey(std::forward<KeyT>(value));
91 return *this;
92 }
94
96
105 inline const Aws::Vector<Aws::String>& GetValues() const { return m_values; }
106 inline bool ValuesHasBeenSet() const { return m_valuesHasBeenSet; }
107 template <typename ValuesT = Aws::Vector<Aws::String>>
108 void SetValues(ValuesT&& value) {
109 m_valuesHasBeenSet = true;
110 m_values = std::forward<ValuesT>(value);
111 }
112 template <typename ValuesT = Aws::Vector<Aws::String>>
114 SetValues(std::forward<ValuesT>(value));
115 return *this;
116 }
117 template <typename ValuesT = Aws::String>
119 m_valuesHasBeenSet = true;
120 m_values.emplace_back(std::forward<ValuesT>(value));
121 return *this;
122 }
124
126
135 inline const Aws::Vector<MatchOption>& GetMatchOptions() const { return m_matchOptions; }
136 inline bool MatchOptionsHasBeenSet() const { return m_matchOptionsHasBeenSet; }
137 template <typename MatchOptionsT = Aws::Vector<MatchOption>>
138 void SetMatchOptions(MatchOptionsT&& value) {
139 m_matchOptionsHasBeenSet = true;
140 m_matchOptions = std::forward<MatchOptionsT>(value);
141 }
142 template <typename MatchOptionsT = Aws::Vector<MatchOption>>
143 ProductAttributeValues& WithMatchOptions(MatchOptionsT&& value) {
144 SetMatchOptions(std::forward<MatchOptionsT>(value));
145 return *this;
146 }
148 m_matchOptionsHasBeenSet = true;
149 m_matchOptions.push_back(value);
150 return *this;
151 }
153 private:
154 Aws::String m_key;
155
157
158 Aws::Vector<MatchOption> m_matchOptions;
159 bool m_keyHasBeenSet = false;
160 bool m_valuesHasBeenSet = false;
161 bool m_matchOptionsHasBeenSet = false;
162};
163
164} // namespace Model
165} // namespace CostExplorer
166} // namespace Aws
AWS_COSTEXPLORER_API ProductAttributeValues()=default
AWS_COSTEXPLORER_API Aws::Utils::Json::JsonValue Jsonize() const
ProductAttributeValues & WithMatchOptions(MatchOptionsT &&value)
ProductAttributeValues & AddValues(ValuesT &&value)
ProductAttributeValues & AddMatchOptions(MatchOption value)
AWS_COSTEXPLORER_API ProductAttributeValues(Aws::Utils::Json::JsonView jsonValue)
ProductAttributeValues & WithValues(ValuesT &&value)
ProductAttributeValues & WithKey(KeyT &&value)
const Aws::Vector< Aws::String > & GetValues() const
AWS_COSTEXPLORER_API ProductAttributeValues & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::Vector< MatchOption > & GetMatchOptions() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue