AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
EbsVolume.h
1
6#pragma once
7#include <aws/cost-optimization-hub/CostOptimizationHub_EXPORTS.h>
8#include <aws/cost-optimization-hub/model/EbsVolumeConfiguration.h>
9#include <aws/cost-optimization-hub/model/ResourceCostCalculation.h>
10#include <utility>
11
12namespace Aws
13{
14namespace Utils
15{
16namespace Json
17{
18 class JsonValue;
19 class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace CostOptimizationHub
23{
24namespace Model
25{
26
35 {
36 public:
37 AWS_COSTOPTIMIZATIONHUB_API EbsVolume() = default;
38 AWS_COSTOPTIMIZATIONHUB_API EbsVolume(Aws::Utils::Json::JsonView jsonValue);
39 AWS_COSTOPTIMIZATIONHUB_API EbsVolume& operator=(Aws::Utils::Json::JsonView jsonValue);
40 AWS_COSTOPTIMIZATIONHUB_API Aws::Utils::Json::JsonValue Jsonize() const;
41
42
44
48 inline const EbsVolumeConfiguration& GetConfiguration() const { return m_configuration; }
49 inline bool ConfigurationHasBeenSet() const { return m_configurationHasBeenSet; }
50 template<typename ConfigurationT = EbsVolumeConfiguration>
51 void SetConfiguration(ConfigurationT&& value) { m_configurationHasBeenSet = true; m_configuration = std::forward<ConfigurationT>(value); }
52 template<typename ConfigurationT = EbsVolumeConfiguration>
53 EbsVolume& WithConfiguration(ConfigurationT&& value) { SetConfiguration(std::forward<ConfigurationT>(value)); return *this;}
55
57
60 inline const ResourceCostCalculation& GetCostCalculation() const { return m_costCalculation; }
61 inline bool CostCalculationHasBeenSet() const { return m_costCalculationHasBeenSet; }
62 template<typename CostCalculationT = ResourceCostCalculation>
63 void SetCostCalculation(CostCalculationT&& value) { m_costCalculationHasBeenSet = true; m_costCalculation = std::forward<CostCalculationT>(value); }
64 template<typename CostCalculationT = ResourceCostCalculation>
65 EbsVolume& WithCostCalculation(CostCalculationT&& value) { SetCostCalculation(std::forward<CostCalculationT>(value)); return *this;}
67 private:
68
69 EbsVolumeConfiguration m_configuration;
70 bool m_configurationHasBeenSet = false;
71
72 ResourceCostCalculation m_costCalculation;
73 bool m_costCalculationHasBeenSet = false;
74 };
75
76} // namespace Model
77} // namespace CostOptimizationHub
78} // namespace Aws
AWS_COSTOPTIMIZATIONHUB_API EbsVolume()=default
void SetCostCalculation(CostCalculationT &&value)
Definition EbsVolume.h:63
AWS_COSTOPTIMIZATIONHUB_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_COSTOPTIMIZATIONHUB_API EbsVolume & operator=(Aws::Utils::Json::JsonView jsonValue)
EbsVolume & WithCostCalculation(CostCalculationT &&value)
Definition EbsVolume.h:65
void SetConfiguration(ConfigurationT &&value)
Definition EbsVolume.h:51
AWS_COSTOPTIMIZATIONHUB_API EbsVolume(Aws::Utils::Json::JsonView jsonValue)
const ResourceCostCalculation & GetCostCalculation() const
Definition EbsVolume.h:60
const EbsVolumeConfiguration & GetConfiguration() const
Definition EbsVolume.h:48
EbsVolume & WithConfiguration(ConfigurationT &&value)
Definition EbsVolume.h:53
Aws::Utils::Json::JsonValue JsonValue