AWS SDK for C++

AWS SDK for C++ Version 1.11.912

Loading...
Searching...
No Matches
DimensionValues.h
1
6#pragma once
7#include <aws/ce/CostExplorer_EXPORTS.h>
8#include <aws/ce/model/Dimension.h>
9#include <aws/ce/model/MatchOption.h>
10#include <aws/core/utils/memory/stl/AWSString.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12
13#include <utility>
14
15namespace Aws {
16namespace Utils {
17namespace Json {
18class JsonValue;
19class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace CostExplorer {
23namespace Model {
24
33 public:
34 AWS_COSTEXPLORER_API DimensionValues() = default;
35 AWS_COSTEXPLORER_API DimensionValues(Aws::Utils::Json::JsonView jsonValue);
36 AWS_COSTEXPLORER_API DimensionValues& operator=(Aws::Utils::Json::JsonView jsonValue);
37 AWS_COSTEXPLORER_API Aws::Utils::Json::JsonValue Jsonize() const;
38
40
56 inline Dimension GetKey() const { return m_key; }
57 inline bool KeyHasBeenSet() const { return m_keyHasBeenSet; }
58 inline void SetKey(Dimension value) {
59 m_keyHasBeenSet = true;
60 m_key = value;
61 }
63 SetKey(value);
64 return *this;
65 }
67
69
73 inline const Aws::Vector<Aws::String>& GetValues() const { return m_values; }
74 inline bool ValuesHasBeenSet() const { return m_valuesHasBeenSet; }
75 template <typename ValuesT = Aws::Vector<Aws::String>>
76 void SetValues(ValuesT&& value) {
77 m_valuesHasBeenSet = true;
78 m_values = std::forward<ValuesT>(value);
79 }
80 template <typename ValuesT = Aws::Vector<Aws::String>>
81 DimensionValues& WithValues(ValuesT&& value) {
82 SetValues(std::forward<ValuesT>(value));
83 return *this;
84 }
85 template <typename ValuesT = Aws::String>
86 DimensionValues& AddValues(ValuesT&& value) {
87 m_valuesHasBeenSet = true;
88 m_values.emplace_back(std::forward<ValuesT>(value));
89 return *this;
90 }
92
94
102 inline const Aws::Vector<MatchOption>& GetMatchOptions() const { return m_matchOptions; }
103 inline bool MatchOptionsHasBeenSet() const { return m_matchOptionsHasBeenSet; }
104 template <typename MatchOptionsT = Aws::Vector<MatchOption>>
105 void SetMatchOptions(MatchOptionsT&& value) {
106 m_matchOptionsHasBeenSet = true;
107 m_matchOptions = std::forward<MatchOptionsT>(value);
108 }
109 template <typename MatchOptionsT = Aws::Vector<MatchOption>>
110 DimensionValues& WithMatchOptions(MatchOptionsT&& value) {
111 SetMatchOptions(std::forward<MatchOptionsT>(value));
112 return *this;
113 }
115 m_matchOptionsHasBeenSet = true;
116 m_matchOptions.push_back(value);
117 return *this;
118 }
120 private:
122
124
125 Aws::Vector<MatchOption> m_matchOptions;
126 bool m_keyHasBeenSet = false;
127 bool m_valuesHasBeenSet = false;
128 bool m_matchOptionsHasBeenSet = false;
129};
130
131} // namespace Model
132} // namespace CostExplorer
133} // namespace Aws
DimensionValues & WithMatchOptions(MatchOptionsT &&value)
const Aws::Vector< MatchOption > & GetMatchOptions() const
AWS_COSTEXPLORER_API DimensionValues & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_COSTEXPLORER_API DimensionValues()=default
DimensionValues & AddMatchOptions(MatchOption value)
void SetMatchOptions(MatchOptionsT &&value)
DimensionValues & WithValues(ValuesT &&value)
const Aws::Vector< Aws::String > & GetValues() const
DimensionValues & AddValues(ValuesT &&value)
AWS_COSTEXPLORER_API DimensionValues(Aws::Utils::Json::JsonView jsonValue)
DimensionValues & WithKey(Dimension value)
AWS_COSTEXPLORER_API Aws::Utils::Json::JsonValue Jsonize() const
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue