AWS SDK for C++

AWS SDK for C++ Version 1.11.608

Loading...
Searching...
No Matches
EC2ResourceDetails.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
32 {
33 public:
34 AWS_COSTEXPLORER_API EC2ResourceDetails() = default;
35 AWS_COSTEXPLORER_API EC2ResourceDetails(Aws::Utils::Json::JsonView jsonValue);
37 AWS_COSTEXPLORER_API Aws::Utils::Json::JsonValue Jsonize() const;
38
39
41
44 inline const Aws::String& GetHourlyOnDemandRate() const { return m_hourlyOnDemandRate; }
45 inline bool HourlyOnDemandRateHasBeenSet() const { return m_hourlyOnDemandRateHasBeenSet; }
46 template<typename HourlyOnDemandRateT = Aws::String>
47 void SetHourlyOnDemandRate(HourlyOnDemandRateT&& value) { m_hourlyOnDemandRateHasBeenSet = true; m_hourlyOnDemandRate = std::forward<HourlyOnDemandRateT>(value); }
48 template<typename HourlyOnDemandRateT = Aws::String>
49 EC2ResourceDetails& WithHourlyOnDemandRate(HourlyOnDemandRateT&& value) { SetHourlyOnDemandRate(std::forward<HourlyOnDemandRateT>(value)); return *this;}
51
53
56 inline const Aws::String& GetInstanceType() const { return m_instanceType; }
57 inline bool InstanceTypeHasBeenSet() const { return m_instanceTypeHasBeenSet; }
58 template<typename InstanceTypeT = Aws::String>
59 void SetInstanceType(InstanceTypeT&& value) { m_instanceTypeHasBeenSet = true; m_instanceType = std::forward<InstanceTypeT>(value); }
60 template<typename InstanceTypeT = Aws::String>
61 EC2ResourceDetails& WithInstanceType(InstanceTypeT&& value) { SetInstanceType(std::forward<InstanceTypeT>(value)); return *this;}
63
65
70 inline const Aws::String& GetPlatform() const { return m_platform; }
71 inline bool PlatformHasBeenSet() const { return m_platformHasBeenSet; }
72 template<typename PlatformT = Aws::String>
73 void SetPlatform(PlatformT&& value) { m_platformHasBeenSet = true; m_platform = std::forward<PlatformT>(value); }
74 template<typename PlatformT = Aws::String>
75 EC2ResourceDetails& WithPlatform(PlatformT&& value) { SetPlatform(std::forward<PlatformT>(value)); return *this;}
77
79
82 inline const Aws::String& GetRegion() const { return m_region; }
83 inline bool RegionHasBeenSet() const { return m_regionHasBeenSet; }
84 template<typename RegionT = Aws::String>
85 void SetRegion(RegionT&& value) { m_regionHasBeenSet = true; m_region = std::forward<RegionT>(value); }
86 template<typename RegionT = Aws::String>
87 EC2ResourceDetails& WithRegion(RegionT&& value) { SetRegion(std::forward<RegionT>(value)); return *this;}
89
91
94 inline const Aws::String& GetSku() const { return m_sku; }
95 inline bool SkuHasBeenSet() const { return m_skuHasBeenSet; }
96 template<typename SkuT = Aws::String>
97 void SetSku(SkuT&& value) { m_skuHasBeenSet = true; m_sku = std::forward<SkuT>(value); }
98 template<typename SkuT = Aws::String>
99 EC2ResourceDetails& WithSku(SkuT&& value) { SetSku(std::forward<SkuT>(value)); return *this;}
101
103
106 inline const Aws::String& GetMemory() const { return m_memory; }
107 inline bool MemoryHasBeenSet() const { return m_memoryHasBeenSet; }
108 template<typename MemoryT = Aws::String>
109 void SetMemory(MemoryT&& value) { m_memoryHasBeenSet = true; m_memory = std::forward<MemoryT>(value); }
110 template<typename MemoryT = Aws::String>
111 EC2ResourceDetails& WithMemory(MemoryT&& value) { SetMemory(std::forward<MemoryT>(value)); return *this;}
113
115
118 inline const Aws::String& GetNetworkPerformance() const { return m_networkPerformance; }
119 inline bool NetworkPerformanceHasBeenSet() const { return m_networkPerformanceHasBeenSet; }
120 template<typename NetworkPerformanceT = Aws::String>
121 void SetNetworkPerformance(NetworkPerformanceT&& value) { m_networkPerformanceHasBeenSet = true; m_networkPerformance = std::forward<NetworkPerformanceT>(value); }
122 template<typename NetworkPerformanceT = Aws::String>
123 EC2ResourceDetails& WithNetworkPerformance(NetworkPerformanceT&& value) { SetNetworkPerformance(std::forward<NetworkPerformanceT>(value)); return *this;}
125
127
131 inline const Aws::String& GetStorage() const { return m_storage; }
132 inline bool StorageHasBeenSet() const { return m_storageHasBeenSet; }
133 template<typename StorageT = Aws::String>
134 void SetStorage(StorageT&& value) { m_storageHasBeenSet = true; m_storage = std::forward<StorageT>(value); }
135 template<typename StorageT = Aws::String>
136 EC2ResourceDetails& WithStorage(StorageT&& value) { SetStorage(std::forward<StorageT>(value)); return *this;}
138
140
143 inline const Aws::String& GetVcpu() const { return m_vcpu; }
144 inline bool VcpuHasBeenSet() const { return m_vcpuHasBeenSet; }
145 template<typename VcpuT = Aws::String>
146 void SetVcpu(VcpuT&& value) { m_vcpuHasBeenSet = true; m_vcpu = std::forward<VcpuT>(value); }
147 template<typename VcpuT = Aws::String>
148 EC2ResourceDetails& WithVcpu(VcpuT&& value) { SetVcpu(std::forward<VcpuT>(value)); return *this;}
150 private:
151
152 Aws::String m_hourlyOnDemandRate;
153 bool m_hourlyOnDemandRateHasBeenSet = false;
154
155 Aws::String m_instanceType;
156 bool m_instanceTypeHasBeenSet = false;
157
158 Aws::String m_platform;
159 bool m_platformHasBeenSet = false;
160
161 Aws::String m_region;
162 bool m_regionHasBeenSet = false;
163
164 Aws::String m_sku;
165 bool m_skuHasBeenSet = false;
166
167 Aws::String m_memory;
168 bool m_memoryHasBeenSet = false;
169
170 Aws::String m_networkPerformance;
171 bool m_networkPerformanceHasBeenSet = false;
172
173 Aws::String m_storage;
174 bool m_storageHasBeenSet = false;
175
176 Aws::String m_vcpu;
177 bool m_vcpuHasBeenSet = false;
178 };
179
180} // namespace Model
181} // namespace CostExplorer
182} // namespace Aws
AWS_COSTEXPLORER_API EC2ResourceDetails & operator=(Aws::Utils::Json::JsonView jsonValue)
EC2ResourceDetails & WithStorage(StorageT &&value)
AWS_COSTEXPLORER_API Aws::Utils::Json::JsonValue Jsonize() const
EC2ResourceDetails & WithHourlyOnDemandRate(HourlyOnDemandRateT &&value)
void SetHourlyOnDemandRate(HourlyOnDemandRateT &&value)
EC2ResourceDetails & WithVcpu(VcpuT &&value)
EC2ResourceDetails & WithMemory(MemoryT &&value)
EC2ResourceDetails & WithInstanceType(InstanceTypeT &&value)
EC2ResourceDetails & WithSku(SkuT &&value)
EC2ResourceDetails & WithPlatform(PlatformT &&value)
const Aws::String & GetHourlyOnDemandRate() const
AWS_COSTEXPLORER_API EC2ResourceDetails(Aws::Utils::Json::JsonView jsonValue)
void SetNetworkPerformance(NetworkPerformanceT &&value)
AWS_COSTEXPLORER_API EC2ResourceDetails()=default
EC2ResourceDetails & WithNetworkPerformance(NetworkPerformanceT &&value)
EC2ResourceDetails & WithRegion(RegionT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue