AWS SDK for C++

AWS SDK for C++ Version 1.11.684

Loading...
Searching...
No Matches
ResourceBudgetEstimate.h
1
6#pragma once
7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/lightsail/Lightsail_EXPORTS.h>
11#include <aws/lightsail/model/CostEstimate.h>
12#include <aws/lightsail/model/ResourceType.h>
13
14#include <utility>
15
16namespace Aws {
17namespace Utils {
18namespace Json {
19class JsonValue;
20class JsonView;
21} // namespace Json
22} // namespace Utils
23namespace Lightsail {
24namespace Model {
25
33 public:
34 AWS_LIGHTSAIL_API ResourceBudgetEstimate() = default;
37 AWS_LIGHTSAIL_API Aws::Utils::Json::JsonValue Jsonize() const;
38
40
43 inline const Aws::String& GetResourceName() const { return m_resourceName; }
44 inline bool ResourceNameHasBeenSet() const { return m_resourceNameHasBeenSet; }
45 template <typename ResourceNameT = Aws::String>
46 void SetResourceName(ResourceNameT&& value) {
47 m_resourceNameHasBeenSet = true;
48 m_resourceName = std::forward<ResourceNameT>(value);
49 }
50 template <typename ResourceNameT = Aws::String>
51 ResourceBudgetEstimate& WithResourceName(ResourceNameT&& value) {
52 SetResourceName(std::forward<ResourceNameT>(value));
53 return *this;
54 }
56
58
61 inline ResourceType GetResourceType() const { return m_resourceType; }
62 inline bool ResourceTypeHasBeenSet() const { return m_resourceTypeHasBeenSet; }
63 inline void SetResourceType(ResourceType value) {
64 m_resourceTypeHasBeenSet = true;
65 m_resourceType = value;
66 }
68 SetResourceType(value);
69 return *this;
70 }
72
74
77 inline const Aws::Vector<CostEstimate>& GetCostEstimates() const { return m_costEstimates; }
78 inline bool CostEstimatesHasBeenSet() const { return m_costEstimatesHasBeenSet; }
79 template <typename CostEstimatesT = Aws::Vector<CostEstimate>>
80 void SetCostEstimates(CostEstimatesT&& value) {
81 m_costEstimatesHasBeenSet = true;
82 m_costEstimates = std::forward<CostEstimatesT>(value);
83 }
84 template <typename CostEstimatesT = Aws::Vector<CostEstimate>>
85 ResourceBudgetEstimate& WithCostEstimates(CostEstimatesT&& value) {
86 SetCostEstimates(std::forward<CostEstimatesT>(value));
87 return *this;
88 }
89 template <typename CostEstimatesT = CostEstimate>
90 ResourceBudgetEstimate& AddCostEstimates(CostEstimatesT&& value) {
91 m_costEstimatesHasBeenSet = true;
92 m_costEstimates.emplace_back(std::forward<CostEstimatesT>(value));
93 return *this;
94 }
96
98
101 inline const Aws::Utils::DateTime& GetStartTime() const { return m_startTime; }
102 inline bool StartTimeHasBeenSet() const { return m_startTimeHasBeenSet; }
103 template <typename StartTimeT = Aws::Utils::DateTime>
104 void SetStartTime(StartTimeT&& value) {
105 m_startTimeHasBeenSet = true;
106 m_startTime = std::forward<StartTimeT>(value);
107 }
108 template <typename StartTimeT = Aws::Utils::DateTime>
110 SetStartTime(std::forward<StartTimeT>(value));
111 return *this;
112 }
114
116
119 inline const Aws::Utils::DateTime& GetEndTime() const { return m_endTime; }
120 inline bool EndTimeHasBeenSet() const { return m_endTimeHasBeenSet; }
121 template <typename EndTimeT = Aws::Utils::DateTime>
122 void SetEndTime(EndTimeT&& value) {
123 m_endTimeHasBeenSet = true;
124 m_endTime = std::forward<EndTimeT>(value);
125 }
126 template <typename EndTimeT = Aws::Utils::DateTime>
128 SetEndTime(std::forward<EndTimeT>(value));
129 return *this;
130 }
132 private:
133 Aws::String m_resourceName;
134 bool m_resourceNameHasBeenSet = false;
135
136 ResourceType m_resourceType{ResourceType::NOT_SET};
137 bool m_resourceTypeHasBeenSet = false;
138
139 Aws::Vector<CostEstimate> m_costEstimates;
140 bool m_costEstimatesHasBeenSet = false;
141
142 Aws::Utils::DateTime m_startTime{};
143 bool m_startTimeHasBeenSet = false;
144
145 Aws::Utils::DateTime m_endTime{};
146 bool m_endTimeHasBeenSet = false;
147};
148
149} // namespace Model
150} // namespace Lightsail
151} // namespace Aws
const Aws::Utils::DateTime & GetStartTime() const
ResourceBudgetEstimate & WithCostEstimates(CostEstimatesT &&value)
AWS_LIGHTSAIL_API ResourceBudgetEstimate(Aws::Utils::Json::JsonView jsonValue)
AWS_LIGHTSAIL_API ResourceBudgetEstimate & operator=(Aws::Utils::Json::JsonView jsonValue)
ResourceBudgetEstimate & WithResourceName(ResourceNameT &&value)
const Aws::Utils::DateTime & GetEndTime() const
ResourceBudgetEstimate & WithStartTime(StartTimeT &&value)
const Aws::Vector< CostEstimate > & GetCostEstimates() const
AWS_LIGHTSAIL_API ResourceBudgetEstimate()=default
ResourceBudgetEstimate & AddCostEstimates(CostEstimatesT &&value)
ResourceBudgetEstimate & WithResourceType(ResourceType value)
AWS_LIGHTSAIL_API Aws::Utils::Json::JsonValue Jsonize() const
ResourceBudgetEstimate & WithEndTime(EndTimeT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue