AWS SDK for C++

AWS SDK for C++ Version 1.11.719

Loading...
Searching...
No Matches
SavingsPlansUtilizationDetail.h
1
6#pragma once
7#include <aws/ce/CostExplorer_EXPORTS.h>
8#include <aws/ce/model/SavingsPlansAmortizedCommitment.h>
9#include <aws/ce/model/SavingsPlansSavings.h>
10#include <aws/ce/model/SavingsPlansUtilization.h>
11#include <aws/core/utils/memory/stl/AWSMap.h>
12#include <aws/core/utils/memory/stl/AWSString.h>
13
14#include <utility>
15
16namespace Aws {
17namespace Utils {
18namespace Json {
19class JsonValue;
20class JsonView;
21} // namespace Json
22} // namespace Utils
23namespace CostExplorer {
24namespace Model {
25
35 public:
36 AWS_COSTEXPLORER_API SavingsPlansUtilizationDetail() = default;
39 AWS_COSTEXPLORER_API Aws::Utils::Json::JsonValue Jsonize() const;
40
42
45 inline const Aws::String& GetSavingsPlanArn() const { return m_savingsPlanArn; }
46 inline bool SavingsPlanArnHasBeenSet() const { return m_savingsPlanArnHasBeenSet; }
47 template <typename SavingsPlanArnT = Aws::String>
48 void SetSavingsPlanArn(SavingsPlanArnT&& value) {
49 m_savingsPlanArnHasBeenSet = true;
50 m_savingsPlanArn = std::forward<SavingsPlanArnT>(value);
51 }
52 template <typename SavingsPlanArnT = Aws::String>
54 SetSavingsPlanArn(std::forward<SavingsPlanArnT>(value));
55 return *this;
56 }
58
60
63 inline const Aws::Map<Aws::String, Aws::String>& GetAttributes() const { return m_attributes; }
64 inline bool AttributesHasBeenSet() const { return m_attributesHasBeenSet; }
65 template <typename AttributesT = Aws::Map<Aws::String, Aws::String>>
66 void SetAttributes(AttributesT&& value) {
67 m_attributesHasBeenSet = true;
68 m_attributes = std::forward<AttributesT>(value);
69 }
70 template <typename AttributesT = Aws::Map<Aws::String, Aws::String>>
72 SetAttributes(std::forward<AttributesT>(value));
73 return *this;
74 }
75 template <typename AttributesKeyT = Aws::String, typename AttributesValueT = Aws::String>
76 SavingsPlansUtilizationDetail& AddAttributes(AttributesKeyT&& key, AttributesValueT&& value) {
77 m_attributesHasBeenSet = true;
78 m_attributes.emplace(std::forward<AttributesKeyT>(key), std::forward<AttributesValueT>(value));
79 return *this;
80 }
82
84
88 inline const SavingsPlansUtilization& GetUtilization() const { return m_utilization; }
89 inline bool UtilizationHasBeenSet() const { return m_utilizationHasBeenSet; }
90 template <typename UtilizationT = SavingsPlansUtilization>
91 void SetUtilization(UtilizationT&& value) {
92 m_utilizationHasBeenSet = true;
93 m_utilization = std::forward<UtilizationT>(value);
94 }
95 template <typename UtilizationT = SavingsPlansUtilization>
97 SetUtilization(std::forward<UtilizationT>(value));
98 return *this;
99 }
101
103
108 inline const SavingsPlansSavings& GetSavings() const { return m_savings; }
109 inline bool SavingsHasBeenSet() const { return m_savingsHasBeenSet; }
110 template <typename SavingsT = SavingsPlansSavings>
111 void SetSavings(SavingsT&& value) {
112 m_savingsHasBeenSet = true;
113 m_savings = std::forward<SavingsT>(value);
114 }
115 template <typename SavingsT = SavingsPlansSavings>
117 SetSavings(std::forward<SavingsT>(value));
118 return *this;
119 }
121
123
127 inline const SavingsPlansAmortizedCommitment& GetAmortizedCommitment() const { return m_amortizedCommitment; }
128 inline bool AmortizedCommitmentHasBeenSet() const { return m_amortizedCommitmentHasBeenSet; }
129 template <typename AmortizedCommitmentT = SavingsPlansAmortizedCommitment>
130 void SetAmortizedCommitment(AmortizedCommitmentT&& value) {
131 m_amortizedCommitmentHasBeenSet = true;
132 m_amortizedCommitment = std::forward<AmortizedCommitmentT>(value);
133 }
134 template <typename AmortizedCommitmentT = SavingsPlansAmortizedCommitment>
136 SetAmortizedCommitment(std::forward<AmortizedCommitmentT>(value));
137 return *this;
138 }
140 private:
141 Aws::String m_savingsPlanArn;
142
144
145 SavingsPlansUtilization m_utilization;
146
147 SavingsPlansSavings m_savings;
148
149 SavingsPlansAmortizedCommitment m_amortizedCommitment;
150 bool m_savingsPlanArnHasBeenSet = false;
151 bool m_attributesHasBeenSet = false;
152 bool m_utilizationHasBeenSet = false;
153 bool m_savingsHasBeenSet = false;
154 bool m_amortizedCommitmentHasBeenSet = false;
155};
156
157} // namespace Model
158} // namespace CostExplorer
159} // namespace Aws
AWS_COSTEXPLORER_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_COSTEXPLORER_API SavingsPlansUtilizationDetail & operator=(Aws::Utils::Json::JsonView jsonValue)
const SavingsPlansAmortizedCommitment & GetAmortizedCommitment() const
SavingsPlansUtilizationDetail & AddAttributes(AttributesKeyT &&key, AttributesValueT &&value)
SavingsPlansUtilizationDetail & WithSavings(SavingsT &&value)
const Aws::Map< Aws::String, Aws::String > & GetAttributes() const
SavingsPlansUtilizationDetail & WithSavingsPlanArn(SavingsPlanArnT &&value)
SavingsPlansUtilizationDetail & WithAttributes(AttributesT &&value)
SavingsPlansUtilizationDetail & WithUtilization(UtilizationT &&value)
SavingsPlansUtilizationDetail & WithAmortizedCommitment(AmortizedCommitmentT &&value)
AWS_COSTEXPLORER_API SavingsPlansUtilizationDetail(Aws::Utils::Json::JsonView jsonValue)
AWS_COSTEXPLORER_API SavingsPlansUtilizationDetail()=default
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue