AWS SDK for C++

AWS SDK for C++ Version 1.11.746

Loading...
Searching...
No Matches
DimensionValues.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/freetier/FreeTier_EXPORTS.h>
10#include <aws/freetier/model/Dimension.h>
11#include <aws/freetier/model/MatchOption.h>
12
13#include <utility>
14
15namespace Aws {
16namespace Utils {
17namespace Json {
18class JsonValue;
19class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace FreeTier {
23namespace Model {
24
32 public:
33 AWS_FREETIER_API DimensionValues() = default;
34 AWS_FREETIER_API DimensionValues(Aws::Utils::Json::JsonView jsonValue);
36 AWS_FREETIER_API Aws::Utils::Json::JsonValue Jsonize() const;
37
39
42 inline Dimension GetKey() const { return m_key; }
43 inline bool KeyHasBeenSet() const { return m_keyHasBeenSet; }
44 inline void SetKey(Dimension value) {
45 m_keyHasBeenSet = true;
46 m_key = value;
47 }
49 SetKey(value);
50 return *this;
51 }
53
55
59 inline const Aws::Vector<Aws::String>& GetValues() const { return m_values; }
60 inline bool ValuesHasBeenSet() const { return m_valuesHasBeenSet; }
61 template <typename ValuesT = Aws::Vector<Aws::String>>
62 void SetValues(ValuesT&& value) {
63 m_valuesHasBeenSet = true;
64 m_values = std::forward<ValuesT>(value);
65 }
66 template <typename ValuesT = Aws::Vector<Aws::String>>
67 DimensionValues& WithValues(ValuesT&& value) {
68 SetValues(std::forward<ValuesT>(value));
69 return *this;
70 }
71 template <typename ValuesT = Aws::String>
72 DimensionValues& AddValues(ValuesT&& value) {
73 m_valuesHasBeenSet = true;
74 m_values.emplace_back(std::forward<ValuesT>(value));
75 return *this;
76 }
78
80
84 inline const Aws::Vector<MatchOption>& GetMatchOptions() const { return m_matchOptions; }
85 inline bool MatchOptionsHasBeenSet() const { return m_matchOptionsHasBeenSet; }
86 template <typename MatchOptionsT = Aws::Vector<MatchOption>>
87 void SetMatchOptions(MatchOptionsT&& value) {
88 m_matchOptionsHasBeenSet = true;
89 m_matchOptions = std::forward<MatchOptionsT>(value);
90 }
91 template <typename MatchOptionsT = Aws::Vector<MatchOption>>
92 DimensionValues& WithMatchOptions(MatchOptionsT&& value) {
93 SetMatchOptions(std::forward<MatchOptionsT>(value));
94 return *this;
95 }
97 m_matchOptionsHasBeenSet = true;
98 m_matchOptions.push_back(value);
99 return *this;
100 }
102 private:
104
106
107 Aws::Vector<MatchOption> m_matchOptions;
108 bool m_keyHasBeenSet = false;
109 bool m_valuesHasBeenSet = false;
110 bool m_matchOptionsHasBeenSet = false;
111};
112
113} // namespace Model
114} // namespace FreeTier
115} // namespace Aws
const Aws::Vector< Aws::String > & GetValues() const
DimensionValues & WithKey(Dimension value)
DimensionValues & WithValues(ValuesT &&value)
AWS_FREETIER_API DimensionValues & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_FREETIER_API DimensionValues(Aws::Utils::Json::JsonView jsonValue)
DimensionValues & WithMatchOptions(MatchOptionsT &&value)
const Aws::Vector< MatchOption > & GetMatchOptions() const
AWS_FREETIER_API DimensionValues()=default
void SetMatchOptions(MatchOptionsT &&value)
DimensionValues & AddValues(ValuesT &&value)
AWS_FREETIER_API Aws::Utils::Json::JsonValue Jsonize() const
DimensionValues & AddMatchOptions(MatchOption value)
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue