AWS SDK for C++

AWS SDK for C++ Version 1.11.608

Loading...
Searching...
No Matches
InstanceDetails.h
1
6#pragma once
7#include <aws/ce/CostExplorer_EXPORTS.h>
8#include <aws/ce/model/EC2InstanceDetails.h>
9#include <aws/ce/model/RDSInstanceDetails.h>
10#include <aws/ce/model/RedshiftInstanceDetails.h>
11#include <aws/ce/model/ElastiCacheInstanceDetails.h>
12#include <aws/ce/model/ESInstanceDetails.h>
13#include <aws/ce/model/MemoryDBInstanceDetails.h>
14#include <utility>
15
16namespace Aws
17{
18namespace Utils
19{
20namespace Json
21{
22 class JsonValue;
23 class JsonView;
24} // namespace Json
25} // namespace Utils
26namespace CostExplorer
27{
28namespace Model
29{
30
38 {
39 public:
40 AWS_COSTEXPLORER_API InstanceDetails() = default;
41 AWS_COSTEXPLORER_API InstanceDetails(Aws::Utils::Json::JsonView jsonValue);
42 AWS_COSTEXPLORER_API InstanceDetails& operator=(Aws::Utils::Json::JsonView jsonValue);
43 AWS_COSTEXPLORER_API Aws::Utils::Json::JsonValue Jsonize() const;
44
45
47
51 inline const EC2InstanceDetails& GetEC2InstanceDetails() const { return m_eC2InstanceDetails; }
52 inline bool EC2InstanceDetailsHasBeenSet() const { return m_eC2InstanceDetailsHasBeenSet; }
53 template<typename EC2InstanceDetailsT = EC2InstanceDetails>
54 void SetEC2InstanceDetails(EC2InstanceDetailsT&& value) { m_eC2InstanceDetailsHasBeenSet = true; m_eC2InstanceDetails = std::forward<EC2InstanceDetailsT>(value); }
55 template<typename EC2InstanceDetailsT = EC2InstanceDetails>
56 InstanceDetails& WithEC2InstanceDetails(EC2InstanceDetailsT&& value) { SetEC2InstanceDetails(std::forward<EC2InstanceDetailsT>(value)); return *this;}
58
60
64 inline const RDSInstanceDetails& GetRDSInstanceDetails() const { return m_rDSInstanceDetails; }
65 inline bool RDSInstanceDetailsHasBeenSet() const { return m_rDSInstanceDetailsHasBeenSet; }
66 template<typename RDSInstanceDetailsT = RDSInstanceDetails>
67 void SetRDSInstanceDetails(RDSInstanceDetailsT&& value) { m_rDSInstanceDetailsHasBeenSet = true; m_rDSInstanceDetails = std::forward<RDSInstanceDetailsT>(value); }
68 template<typename RDSInstanceDetailsT = RDSInstanceDetails>
69 InstanceDetails& WithRDSInstanceDetails(RDSInstanceDetailsT&& value) { SetRDSInstanceDetails(std::forward<RDSInstanceDetailsT>(value)); return *this;}
71
73
77 inline const RedshiftInstanceDetails& GetRedshiftInstanceDetails() const { return m_redshiftInstanceDetails; }
78 inline bool RedshiftInstanceDetailsHasBeenSet() const { return m_redshiftInstanceDetailsHasBeenSet; }
79 template<typename RedshiftInstanceDetailsT = RedshiftInstanceDetails>
80 void SetRedshiftInstanceDetails(RedshiftInstanceDetailsT&& value) { m_redshiftInstanceDetailsHasBeenSet = true; m_redshiftInstanceDetails = std::forward<RedshiftInstanceDetailsT>(value); }
81 template<typename RedshiftInstanceDetailsT = RedshiftInstanceDetails>
82 InstanceDetails& WithRedshiftInstanceDetails(RedshiftInstanceDetailsT&& value) { SetRedshiftInstanceDetails(std::forward<RedshiftInstanceDetailsT>(value)); return *this;}
84
86
90 inline const ElastiCacheInstanceDetails& GetElastiCacheInstanceDetails() const { return m_elastiCacheInstanceDetails; }
91 inline bool ElastiCacheInstanceDetailsHasBeenSet() const { return m_elastiCacheInstanceDetailsHasBeenSet; }
92 template<typename ElastiCacheInstanceDetailsT = ElastiCacheInstanceDetails>
93 void SetElastiCacheInstanceDetails(ElastiCacheInstanceDetailsT&& value) { m_elastiCacheInstanceDetailsHasBeenSet = true; m_elastiCacheInstanceDetails = std::forward<ElastiCacheInstanceDetailsT>(value); }
94 template<typename ElastiCacheInstanceDetailsT = ElastiCacheInstanceDetails>
95 InstanceDetails& WithElastiCacheInstanceDetails(ElastiCacheInstanceDetailsT&& value) { SetElastiCacheInstanceDetails(std::forward<ElastiCacheInstanceDetailsT>(value)); return *this;}
97
99
103 inline const ESInstanceDetails& GetESInstanceDetails() const { return m_eSInstanceDetails; }
104 inline bool ESInstanceDetailsHasBeenSet() const { return m_eSInstanceDetailsHasBeenSet; }
105 template<typename ESInstanceDetailsT = ESInstanceDetails>
106 void SetESInstanceDetails(ESInstanceDetailsT&& value) { m_eSInstanceDetailsHasBeenSet = true; m_eSInstanceDetails = std::forward<ESInstanceDetailsT>(value); }
107 template<typename ESInstanceDetailsT = ESInstanceDetails>
108 InstanceDetails& WithESInstanceDetails(ESInstanceDetailsT&& value) { SetESInstanceDetails(std::forward<ESInstanceDetailsT>(value)); return *this;}
110
112
116 inline const MemoryDBInstanceDetails& GetMemoryDBInstanceDetails() const { return m_memoryDBInstanceDetails; }
117 inline bool MemoryDBInstanceDetailsHasBeenSet() const { return m_memoryDBInstanceDetailsHasBeenSet; }
118 template<typename MemoryDBInstanceDetailsT = MemoryDBInstanceDetails>
119 void SetMemoryDBInstanceDetails(MemoryDBInstanceDetailsT&& value) { m_memoryDBInstanceDetailsHasBeenSet = true; m_memoryDBInstanceDetails = std::forward<MemoryDBInstanceDetailsT>(value); }
120 template<typename MemoryDBInstanceDetailsT = MemoryDBInstanceDetails>
121 InstanceDetails& WithMemoryDBInstanceDetails(MemoryDBInstanceDetailsT&& value) { SetMemoryDBInstanceDetails(std::forward<MemoryDBInstanceDetailsT>(value)); return *this;}
123 private:
124
125 EC2InstanceDetails m_eC2InstanceDetails;
126 bool m_eC2InstanceDetailsHasBeenSet = false;
127
128 RDSInstanceDetails m_rDSInstanceDetails;
129 bool m_rDSInstanceDetailsHasBeenSet = false;
130
131 RedshiftInstanceDetails m_redshiftInstanceDetails;
132 bool m_redshiftInstanceDetailsHasBeenSet = false;
133
134 ElastiCacheInstanceDetails m_elastiCacheInstanceDetails;
135 bool m_elastiCacheInstanceDetailsHasBeenSet = false;
136
137 ESInstanceDetails m_eSInstanceDetails;
138 bool m_eSInstanceDetailsHasBeenSet = false;
139
140 MemoryDBInstanceDetails m_memoryDBInstanceDetails;
141 bool m_memoryDBInstanceDetailsHasBeenSet = false;
142 };
143
144} // namespace Model
145} // namespace CostExplorer
146} // namespace Aws
void SetESInstanceDetails(ESInstanceDetailsT &&value)
const MemoryDBInstanceDetails & GetMemoryDBInstanceDetails() const
InstanceDetails & WithRDSInstanceDetails(RDSInstanceDetailsT &&value)
const RDSInstanceDetails & GetRDSInstanceDetails() const
InstanceDetails & WithRedshiftInstanceDetails(RedshiftInstanceDetailsT &&value)
InstanceDetails & WithMemoryDBInstanceDetails(MemoryDBInstanceDetailsT &&value)
void SetEC2InstanceDetails(EC2InstanceDetailsT &&value)
InstanceDetails & WithElastiCacheInstanceDetails(ElastiCacheInstanceDetailsT &&value)
const ElastiCacheInstanceDetails & GetElastiCacheInstanceDetails() const
InstanceDetails & WithEC2InstanceDetails(EC2InstanceDetailsT &&value)
void SetMemoryDBInstanceDetails(MemoryDBInstanceDetailsT &&value)
AWS_COSTEXPLORER_API InstanceDetails()=default
AWS_COSTEXPLORER_API InstanceDetails & operator=(Aws::Utils::Json::JsonView jsonValue)
const EC2InstanceDetails & GetEC2InstanceDetails() const
const RedshiftInstanceDetails & GetRedshiftInstanceDetails() const
void SetRedshiftInstanceDetails(RedshiftInstanceDetailsT &&value)
AWS_COSTEXPLORER_API InstanceDetails(Aws::Utils::Json::JsonView jsonValue)
InstanceDetails & WithESInstanceDetails(ESInstanceDetailsT &&value)
AWS_COSTEXPLORER_API Aws::Utils::Json::JsonValue Jsonize() const
void SetElastiCacheInstanceDetails(ElastiCacheInstanceDetailsT &&value)
const ESInstanceDetails & GetESInstanceDetails() const
void SetRDSInstanceDetails(RDSInstanceDetailsT &&value)
Aws::Utils::Json::JsonValue JsonValue