AWS SDK for C++

AWS SDK for C++ Version 1.11.719

Loading...
Searching...
No Matches
ESInstanceDetails.h
1
6#pragma once
7#include <aws/ce/CostExplorer_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9
10#include <utility>
11
12namespace Aws {
13namespace Utils {
14namespace Json {
15class JsonValue;
16class JsonView;
17} // namespace Json
18} // namespace Utils
19namespace CostExplorer {
20namespace Model {
21
29 public:
30 AWS_COSTEXPLORER_API ESInstanceDetails() = default;
31 AWS_COSTEXPLORER_API ESInstanceDetails(Aws::Utils::Json::JsonView jsonValue);
32 AWS_COSTEXPLORER_API ESInstanceDetails& operator=(Aws::Utils::Json::JsonView jsonValue);
33 AWS_COSTEXPLORER_API Aws::Utils::Json::JsonValue Jsonize() const;
34
36
39 inline const Aws::String& GetInstanceClass() const { return m_instanceClass; }
40 inline bool InstanceClassHasBeenSet() const { return m_instanceClassHasBeenSet; }
41 template <typename InstanceClassT = Aws::String>
42 void SetInstanceClass(InstanceClassT&& value) {
43 m_instanceClassHasBeenSet = true;
44 m_instanceClass = std::forward<InstanceClassT>(value);
45 }
46 template <typename InstanceClassT = Aws::String>
47 ESInstanceDetails& WithInstanceClass(InstanceClassT&& value) {
48 SetInstanceClass(std::forward<InstanceClassT>(value));
49 return *this;
50 }
52
54
57 inline const Aws::String& GetInstanceSize() const { return m_instanceSize; }
58 inline bool InstanceSizeHasBeenSet() const { return m_instanceSizeHasBeenSet; }
59 template <typename InstanceSizeT = Aws::String>
60 void SetInstanceSize(InstanceSizeT&& value) {
61 m_instanceSizeHasBeenSet = true;
62 m_instanceSize = std::forward<InstanceSizeT>(value);
63 }
64 template <typename InstanceSizeT = Aws::String>
65 ESInstanceDetails& WithInstanceSize(InstanceSizeT&& value) {
66 SetInstanceSize(std::forward<InstanceSizeT>(value));
67 return *this;
68 }
70
72
75 inline const Aws::String& GetRegion() const { return m_region; }
76 inline bool RegionHasBeenSet() const { return m_regionHasBeenSet; }
77 template <typename RegionT = Aws::String>
78 void SetRegion(RegionT&& value) {
79 m_regionHasBeenSet = true;
80 m_region = std::forward<RegionT>(value);
81 }
82 template <typename RegionT = Aws::String>
83 ESInstanceDetails& WithRegion(RegionT&& value) {
84 SetRegion(std::forward<RegionT>(value));
85 return *this;
86 }
88
90
94 inline bool GetCurrentGeneration() const { return m_currentGeneration; }
95 inline bool CurrentGenerationHasBeenSet() const { return m_currentGenerationHasBeenSet; }
96 inline void SetCurrentGeneration(bool value) {
97 m_currentGenerationHasBeenSet = true;
98 m_currentGeneration = value;
99 }
102 return *this;
103 }
105
107
110 inline bool GetSizeFlexEligible() const { return m_sizeFlexEligible; }
111 inline bool SizeFlexEligibleHasBeenSet() const { return m_sizeFlexEligibleHasBeenSet; }
112 inline void SetSizeFlexEligible(bool value) {
113 m_sizeFlexEligibleHasBeenSet = true;
114 m_sizeFlexEligible = value;
115 }
117 SetSizeFlexEligible(value);
118 return *this;
119 }
121 private:
122 Aws::String m_instanceClass;
123
124 Aws::String m_instanceSize;
125
126 Aws::String m_region;
127
128 bool m_currentGeneration{false};
129
130 bool m_sizeFlexEligible{false};
131 bool m_instanceClassHasBeenSet = false;
132 bool m_instanceSizeHasBeenSet = false;
133 bool m_regionHasBeenSet = false;
134 bool m_currentGenerationHasBeenSet = false;
135 bool m_sizeFlexEligibleHasBeenSet = false;
136};
137
138} // namespace Model
139} // namespace CostExplorer
140} // namespace Aws
AWS_COSTEXPLORER_API ESInstanceDetails(Aws::Utils::Json::JsonView jsonValue)
ESInstanceDetails & WithRegion(RegionT &&value)
ESInstanceDetails & WithInstanceSize(InstanceSizeT &&value)
ESInstanceDetails & WithCurrentGeneration(bool value)
void SetInstanceClass(InstanceClassT &&value)
AWS_COSTEXPLORER_API ESInstanceDetails()=default
ESInstanceDetails & WithInstanceClass(InstanceClassT &&value)
ESInstanceDetails & WithSizeFlexEligible(bool value)
AWS_COSTEXPLORER_API ESInstanceDetails & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_COSTEXPLORER_API Aws::Utils::Json::JsonValue Jsonize() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue