AWS SDK for C++

AWS SDK for C++ Version 1.11.608

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#include <utility>
10
11namespace Aws
12{
13namespace Utils
14{
15namespace Json
16{
17 class JsonValue;
18 class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace CostExplorer
22{
23namespace Model
24{
25
33 {
34 public:
35 AWS_COSTEXPLORER_API ESInstanceDetails() = default;
36 AWS_COSTEXPLORER_API ESInstanceDetails(Aws::Utils::Json::JsonView jsonValue);
37 AWS_COSTEXPLORER_API ESInstanceDetails& operator=(Aws::Utils::Json::JsonView jsonValue);
38 AWS_COSTEXPLORER_API Aws::Utils::Json::JsonValue Jsonize() const;
39
40
42
45 inline const Aws::String& GetInstanceClass() const { return m_instanceClass; }
46 inline bool InstanceClassHasBeenSet() const { return m_instanceClassHasBeenSet; }
47 template<typename InstanceClassT = Aws::String>
48 void SetInstanceClass(InstanceClassT&& value) { m_instanceClassHasBeenSet = true; m_instanceClass = std::forward<InstanceClassT>(value); }
49 template<typename InstanceClassT = Aws::String>
50 ESInstanceDetails& WithInstanceClass(InstanceClassT&& value) { SetInstanceClass(std::forward<InstanceClassT>(value)); return *this;}
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) { m_instanceSizeHasBeenSet = true; m_instanceSize = std::forward<InstanceSizeT>(value); }
61 template<typename InstanceSizeT = Aws::String>
62 ESInstanceDetails& WithInstanceSize(InstanceSizeT&& value) { SetInstanceSize(std::forward<InstanceSizeT>(value)); return *this;}
64
66
69 inline const Aws::String& GetRegion() const { return m_region; }
70 inline bool RegionHasBeenSet() const { return m_regionHasBeenSet; }
71 template<typename RegionT = Aws::String>
72 void SetRegion(RegionT&& value) { m_regionHasBeenSet = true; m_region = std::forward<RegionT>(value); }
73 template<typename RegionT = Aws::String>
74 ESInstanceDetails& WithRegion(RegionT&& value) { SetRegion(std::forward<RegionT>(value)); return *this;}
76
78
82 inline bool GetCurrentGeneration() const { return m_currentGeneration; }
83 inline bool CurrentGenerationHasBeenSet() const { return m_currentGenerationHasBeenSet; }
84 inline void SetCurrentGeneration(bool value) { m_currentGenerationHasBeenSet = true; m_currentGeneration = value; }
85 inline ESInstanceDetails& WithCurrentGeneration(bool value) { SetCurrentGeneration(value); return *this;}
87
89
92 inline bool GetSizeFlexEligible() const { return m_sizeFlexEligible; }
93 inline bool SizeFlexEligibleHasBeenSet() const { return m_sizeFlexEligibleHasBeenSet; }
94 inline void SetSizeFlexEligible(bool value) { m_sizeFlexEligibleHasBeenSet = true; m_sizeFlexEligible = value; }
95 inline ESInstanceDetails& WithSizeFlexEligible(bool value) { SetSizeFlexEligible(value); return *this;}
97 private:
98
99 Aws::String m_instanceClass;
100 bool m_instanceClassHasBeenSet = false;
101
102 Aws::String m_instanceSize;
103 bool m_instanceSizeHasBeenSet = false;
104
105 Aws::String m_region;
106 bool m_regionHasBeenSet = false;
107
108 bool m_currentGeneration{false};
109 bool m_currentGenerationHasBeenSet = false;
110
111 bool m_sizeFlexEligible{false};
112 bool m_sizeFlexEligibleHasBeenSet = false;
113 };
114
115} // namespace Model
116} // namespace CostExplorer
117} // 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