7#include <aws/cost-optimization-hub/CostOptimizationHub_EXPORTS.h>
8#include <aws/cost-optimization-hub/model/AuroraDbClusterStorage.h>
9#include <aws/cost-optimization-hub/model/ComputeSavingsPlans.h>
10#include <aws/cost-optimization-hub/model/DocumentDbCluster.h>
11#include <aws/cost-optimization-hub/model/DynamoDbReservedCapacity.h>
12#include <aws/cost-optimization-hub/model/DynamoDbTable.h>
13#include <aws/cost-optimization-hub/model/EbsVolume.h>
14#include <aws/cost-optimization-hub/model/Ec2AutoScalingGroup.h>
15#include <aws/cost-optimization-hub/model/Ec2Instance.h>
16#include <aws/cost-optimization-hub/model/Ec2InstanceSavingsPlans.h>
17#include <aws/cost-optimization-hub/model/Ec2ReservedInstances.h>
18#include <aws/cost-optimization-hub/model/EcsService.h>
19#include <aws/cost-optimization-hub/model/ElastiCacheCluster.h>
20#include <aws/cost-optimization-hub/model/ElastiCacheReservedInstances.h>
21#include <aws/cost-optimization-hub/model/LambdaFunction.h>
22#include <aws/cost-optimization-hub/model/MemoryDbCluster.h>
23#include <aws/cost-optimization-hub/model/MemoryDbReservedInstances.h>
24#include <aws/cost-optimization-hub/model/NatGateway.h>
25#include <aws/cost-optimization-hub/model/OpenSearchReservedInstances.h>
26#include <aws/cost-optimization-hub/model/RdsDbInstance.h>
27#include <aws/cost-optimization-hub/model/RdsDbInstanceStorage.h>
28#include <aws/cost-optimization-hub/model/RdsReservedInstances.h>
29#include <aws/cost-optimization-hub/model/RedshiftReservedInstances.h>
30#include <aws/cost-optimization-hub/model/SageMakerEndpoint.h>
31#include <aws/cost-optimization-hub/model/SageMakerSavingsPlans.h>
32#include <aws/cost-optimization-hub/model/WorkSpaces.h>
43namespace CostOptimizationHub {
65 template <
typename LambdaFunctionT = LambdaFunction>
67 m_lambdaFunctionHasBeenSet =
true;
68 m_lambdaFunction = std::forward<LambdaFunctionT>(value);
70 template <
typename LambdaFunctionT = LambdaFunction>
83 template <
typename EcsServiceT = EcsService>
85 m_ecsServiceHasBeenSet =
true;
86 m_ecsService = std::forward<EcsServiceT>(value);
88 template <
typename EcsServiceT = EcsService>
101 template <
typename Ec2InstanceT = Ec2Instance>
103 m_ec2InstanceHasBeenSet =
true;
104 m_ec2Instance = std::forward<Ec2InstanceT>(value);
106 template <
typename Ec2InstanceT = Ec2Instance>
119 template <
typename EbsVolumeT = EbsVolume>
121 m_ebsVolumeHasBeenSet =
true;
122 m_ebsVolume = std::forward<EbsVolumeT>(value);
124 template <
typename EbsVolumeT = EbsVolume>
137 template <
typename Ec2AutoScalingGroupT = Ec2AutoScalingGroup>
139 m_ec2AutoScalingGroupHasBeenSet =
true;
140 m_ec2AutoScalingGroup = std::forward<Ec2AutoScalingGroupT>(value);
142 template <
typename Ec2AutoScalingGroupT = Ec2AutoScalingGroup>
155 template <
typename Ec2ReservedInstancesT = Ec2ReservedInstances>
157 m_ec2ReservedInstancesHasBeenSet =
true;
158 m_ec2ReservedInstances = std::forward<Ec2ReservedInstancesT>(value);
160 template <
typename Ec2ReservedInstancesT = Ec2ReservedInstances>
173 template <
typename RdsReservedInstancesT = RdsReservedInstances>
175 m_rdsReservedInstancesHasBeenSet =
true;
176 m_rdsReservedInstances = std::forward<RdsReservedInstancesT>(value);
178 template <
typename RdsReservedInstancesT = RdsReservedInstances>
191 template <
typename ElastiCacheReservedInstancesT = ElastiCacheReservedInstances>
193 m_elastiCacheReservedInstancesHasBeenSet =
true;
194 m_elastiCacheReservedInstances = std::forward<ElastiCacheReservedInstancesT>(value);
196 template <
typename ElastiCacheReservedInstancesT = ElastiCacheReservedInstances>
209 template <
typename OpenSearchReservedInstancesT = OpenSearchReservedInstances>
211 m_openSearchReservedInstancesHasBeenSet =
true;
212 m_openSearchReservedInstances = std::forward<OpenSearchReservedInstancesT>(value);
214 template <
typename OpenSearchReservedInstancesT = OpenSearchReservedInstances>
227 template <
typename RedshiftReservedInstancesT = RedshiftReservedInstances>
229 m_redshiftReservedInstancesHasBeenSet =
true;
230 m_redshiftReservedInstances = std::forward<RedshiftReservedInstancesT>(value);
232 template <
typename RedshiftReservedInstancesT = RedshiftReservedInstances>
245 template <
typename Ec2InstanceSavingsPlansT = Ec2InstanceSavingsPlans>
247 m_ec2InstanceSavingsPlansHasBeenSet =
true;
248 m_ec2InstanceSavingsPlans = std::forward<Ec2InstanceSavingsPlansT>(value);
250 template <
typename Ec2InstanceSavingsPlansT = Ec2InstanceSavingsPlans>
263 template <
typename ComputeSavingsPlansT = ComputeSavingsPlans>
265 m_computeSavingsPlansHasBeenSet =
true;
266 m_computeSavingsPlans = std::forward<ComputeSavingsPlansT>(value);
268 template <
typename ComputeSavingsPlansT = ComputeSavingsPlans>
281 template <
typename SageMakerSavingsPlansT = SageMakerSavingsPlans>
283 m_sageMakerSavingsPlansHasBeenSet =
true;
284 m_sageMakerSavingsPlans = std::forward<SageMakerSavingsPlansT>(value);
286 template <
typename SageMakerSavingsPlansT = SageMakerSavingsPlans>
299 template <
typename RdsDbInstanceT = RdsDbInstance>
301 m_rdsDbInstanceHasBeenSet =
true;
302 m_rdsDbInstance = std::forward<RdsDbInstanceT>(value);
304 template <
typename RdsDbInstanceT = RdsDbInstance>
317 template <
typename RdsDbInstanceStorageT = RdsDbInstanceStorage>
319 m_rdsDbInstanceStorageHasBeenSet =
true;
320 m_rdsDbInstanceStorage = std::forward<RdsDbInstanceStorageT>(value);
322 template <
typename RdsDbInstanceStorageT = RdsDbInstanceStorage>
335 template <
typename AuroraDbClusterStorageT = AuroraDbClusterStorage>
337 m_auroraDbClusterStorageHasBeenSet =
true;
338 m_auroraDbClusterStorage = std::forward<AuroraDbClusterStorageT>(value);
340 template <
typename AuroraDbClusterStorageT = AuroraDbClusterStorage>
353 template <
typename DynamoDbReservedCapacityT = DynamoDbReservedCapacity>
355 m_dynamoDbReservedCapacityHasBeenSet =
true;
356 m_dynamoDbReservedCapacity = std::forward<DynamoDbReservedCapacityT>(value);
358 template <
typename DynamoDbReservedCapacityT = DynamoDbReservedCapacity>
371 template <
typename MemoryDbReservedInstancesT = MemoryDbReservedInstances>
373 m_memoryDbReservedInstancesHasBeenSet =
true;
374 m_memoryDbReservedInstances = std::forward<MemoryDbReservedInstancesT>(value);
376 template <
typename MemoryDbReservedInstancesT = MemoryDbReservedInstances>
389 template <
typename NatGatewayT = NatGateway>
391 m_natGatewayHasBeenSet =
true;
392 m_natGateway = std::forward<NatGatewayT>(value);
394 template <
typename NatGatewayT = NatGateway>
407 template <
typename DynamoDbTableT = DynamoDbTable>
409 m_dynamoDbTableHasBeenSet =
true;
410 m_dynamoDbTable = std::forward<DynamoDbTableT>(value);
412 template <
typename DynamoDbTableT = DynamoDbTable>
425 template <
typename ElastiCacheClusterT = ElastiCacheCluster>
427 m_elastiCacheClusterHasBeenSet =
true;
428 m_elastiCacheCluster = std::forward<ElastiCacheClusterT>(value);
430 template <
typename ElastiCacheClusterT = ElastiCacheCluster>
443 template <
typename MemoryDbClusterT = MemoryDbCluster>
445 m_memoryDbClusterHasBeenSet =
true;
446 m_memoryDbCluster = std::forward<MemoryDbClusterT>(value);
448 template <
typename MemoryDbClusterT = MemoryDbCluster>
461 template <
typename DocumentDbClusterT = DocumentDbCluster>
463 m_documentDbClusterHasBeenSet =
true;
464 m_documentDbCluster = std::forward<DocumentDbClusterT>(value);
466 template <
typename DocumentDbClusterT = DocumentDbCluster>
479 template <
typename WorkSpacesT = WorkSpaces>
481 m_workSpacesHasBeenSet =
true;
482 m_workSpaces = std::forward<WorkSpacesT>(value);
484 template <
typename WorkSpacesT = WorkSpaces>
497 template <
typename SageMakerEndpo
intT = SageMakerEndpo
int>
499 m_sageMakerEndpointHasBeenSet =
true;
500 m_sageMakerEndpoint = std::forward<SageMakerEndpointT>(value);
502 template <
typename SageMakerEndpo
intT = SageMakerEndpo
int>
558 bool m_lambdaFunctionHasBeenSet =
false;
559 bool m_ecsServiceHasBeenSet =
false;
560 bool m_ec2InstanceHasBeenSet =
false;
561 bool m_ebsVolumeHasBeenSet =
false;
562 bool m_ec2AutoScalingGroupHasBeenSet =
false;
563 bool m_ec2ReservedInstancesHasBeenSet =
false;
564 bool m_rdsReservedInstancesHasBeenSet =
false;
565 bool m_elastiCacheReservedInstancesHasBeenSet =
false;
566 bool m_openSearchReservedInstancesHasBeenSet =
false;
567 bool m_redshiftReservedInstancesHasBeenSet =
false;
568 bool m_ec2InstanceSavingsPlansHasBeenSet =
false;
569 bool m_computeSavingsPlansHasBeenSet =
false;
570 bool m_sageMakerSavingsPlansHasBeenSet =
false;
571 bool m_rdsDbInstanceHasBeenSet =
false;
572 bool m_rdsDbInstanceStorageHasBeenSet =
false;
573 bool m_auroraDbClusterStorageHasBeenSet =
false;
574 bool m_dynamoDbReservedCapacityHasBeenSet =
false;
575 bool m_memoryDbReservedInstancesHasBeenSet =
false;
576 bool m_natGatewayHasBeenSet =
false;
577 bool m_dynamoDbTableHasBeenSet =
false;
578 bool m_elastiCacheClusterHasBeenSet =
false;
579 bool m_memoryDbClusterHasBeenSet =
false;
580 bool m_documentDbClusterHasBeenSet =
false;
581 bool m_workSpacesHasBeenSet =
false;
582 bool m_sageMakerEndpointHasBeenSet =
false;
void SetEc2ReservedInstances(Ec2ReservedInstancesT &&value)
const Ec2AutoScalingGroup & GetEc2AutoScalingGroup() const
bool SageMakerSavingsPlansHasBeenSet() const
bool ElastiCacheReservedInstancesHasBeenSet() const
const ElastiCacheCluster & GetElastiCacheCluster() const
ResourceDetails & WithMemoryDbReservedInstances(MemoryDbReservedInstancesT &&value)
ResourceDetails & WithEc2InstanceSavingsPlans(Ec2InstanceSavingsPlansT &&value)
const DocumentDbCluster & GetDocumentDbCluster() const
ResourceDetails & WithNatGateway(NatGatewayT &&value)
AWS_COSTOPTIMIZATIONHUB_API ResourceDetails & operator=(Aws::Utils::Json::JsonView jsonValue)
const AuroraDbClusterStorage & GetAuroraDbClusterStorage() const
const WorkSpaces & GetWorkSpaces() const
bool EbsVolumeHasBeenSet() const
const RedshiftReservedInstances & GetRedshiftReservedInstances() const
void SetEcsService(EcsServiceT &&value)
void SetWorkSpaces(WorkSpacesT &&value)
ResourceDetails & WithRdsDbInstanceStorage(RdsDbInstanceStorageT &&value)
ResourceDetails & WithOpenSearchReservedInstances(OpenSearchReservedInstancesT &&value)
const DynamoDbTable & GetDynamoDbTable() const
const Ec2Instance & GetEc2Instance() const
bool Ec2AutoScalingGroupHasBeenSet() const
ResourceDetails & WithEbsVolume(EbsVolumeT &&value)
bool RdsDbInstanceStorageHasBeenSet() const
void SetSageMakerEndpoint(SageMakerEndpointT &&value)
ResourceDetails & WithEc2AutoScalingGroup(Ec2AutoScalingGroupT &&value)
void SetRdsDbInstanceStorage(RdsDbInstanceStorageT &&value)
const Ec2InstanceSavingsPlans & GetEc2InstanceSavingsPlans() const
bool LambdaFunctionHasBeenSet() const
bool AuroraDbClusterStorageHasBeenSet() const
ResourceDetails & WithRdsReservedInstances(RdsReservedInstancesT &&value)
ResourceDetails & WithWorkSpaces(WorkSpacesT &&value)
ResourceDetails & WithSageMakerEndpoint(SageMakerEndpointT &&value)
const EbsVolume & GetEbsVolume() const
void SetEc2InstanceSavingsPlans(Ec2InstanceSavingsPlansT &&value)
ResourceDetails & WithComputeSavingsPlans(ComputeSavingsPlansT &&value)
ResourceDetails & WithDynamoDbReservedCapacity(DynamoDbReservedCapacityT &&value)
void SetLambdaFunction(LambdaFunctionT &&value)
const RdsDbInstance & GetRdsDbInstance() const
void SetDynamoDbTable(DynamoDbTableT &&value)
const SageMakerEndpoint & GetSageMakerEndpoint() const
const MemoryDbReservedInstances & GetMemoryDbReservedInstances() const
const RdsReservedInstances & GetRdsReservedInstances() const
ResourceDetails & WithElastiCacheCluster(ElastiCacheClusterT &&value)
ResourceDetails & WithEc2Instance(Ec2InstanceT &&value)
ResourceDetails & WithRdsDbInstance(RdsDbInstanceT &&value)
const DynamoDbReservedCapacity & GetDynamoDbReservedCapacity() const
void SetRdsReservedInstances(RdsReservedInstancesT &&value)
void SetComputeSavingsPlans(ComputeSavingsPlansT &&value)
bool SageMakerEndpointHasBeenSet() const
ResourceDetails & WithDocumentDbCluster(DocumentDbClusterT &&value)
AWS_COSTOPTIMIZATIONHUB_API Aws::Utils::Json::JsonValue Jsonize() const
ResourceDetails & WithElastiCacheReservedInstances(ElastiCacheReservedInstancesT &&value)
void SetEbsVolume(EbsVolumeT &&value)
bool Ec2InstanceSavingsPlansHasBeenSet() const
const EcsService & GetEcsService() const
bool OpenSearchReservedInstancesHasBeenSet() const
void SetAuroraDbClusterStorage(AuroraDbClusterStorageT &&value)
bool RdsReservedInstancesHasBeenSet() const
void SetSageMakerSavingsPlans(SageMakerSavingsPlansT &&value)
bool WorkSpacesHasBeenSet() const
void SetEc2AutoScalingGroup(Ec2AutoScalingGroupT &&value)
bool DocumentDbClusterHasBeenSet() const
void SetOpenSearchReservedInstances(OpenSearchReservedInstancesT &&value)
bool DynamoDbReservedCapacityHasBeenSet() const
void SetElastiCacheReservedInstances(ElastiCacheReservedInstancesT &&value)
ResourceDetails & WithSageMakerSavingsPlans(SageMakerSavingsPlansT &&value)
bool Ec2InstanceHasBeenSet() const
const OpenSearchReservedInstances & GetOpenSearchReservedInstances() const
bool MemoryDbReservedInstancesHasBeenSet() const
void SetMemoryDbReservedInstances(MemoryDbReservedInstancesT &&value)
ResourceDetails & WithAuroraDbClusterStorage(AuroraDbClusterStorageT &&value)
bool NatGatewayHasBeenSet() const
ResourceDetails & WithRedshiftReservedInstances(RedshiftReservedInstancesT &&value)
ResourceDetails & WithEc2ReservedInstances(Ec2ReservedInstancesT &&value)
const LambdaFunction & GetLambdaFunction() const
bool ComputeSavingsPlansHasBeenSet() const
ResourceDetails & WithEcsService(EcsServiceT &&value)
void SetEc2Instance(Ec2InstanceT &&value)
void SetDynamoDbReservedCapacity(DynamoDbReservedCapacityT &&value)
bool ElastiCacheClusterHasBeenSet() const
bool EcsServiceHasBeenSet() const
const ElastiCacheReservedInstances & GetElastiCacheReservedInstances() const
ResourceDetails & WithDynamoDbTable(DynamoDbTableT &&value)
void SetElastiCacheCluster(ElastiCacheClusterT &&value)
const Ec2ReservedInstances & GetEc2ReservedInstances() const
const SageMakerSavingsPlans & GetSageMakerSavingsPlans() const
AWS_COSTOPTIMIZATIONHUB_API ResourceDetails(Aws::Utils::Json::JsonView jsonValue)
const RdsDbInstanceStorage & GetRdsDbInstanceStorage() const
const NatGateway & GetNatGateway() const
ResourceDetails & WithMemoryDbCluster(MemoryDbClusterT &&value)
bool RedshiftReservedInstancesHasBeenSet() const
void SetMemoryDbCluster(MemoryDbClusterT &&value)
const MemoryDbCluster & GetMemoryDbCluster() const
bool Ec2ReservedInstancesHasBeenSet() const
void SetNatGateway(NatGatewayT &&value)
bool DynamoDbTableHasBeenSet() const
bool RdsDbInstanceHasBeenSet() const
void SetDocumentDbCluster(DocumentDbClusterT &&value)
AWS_COSTOPTIMIZATIONHUB_API ResourceDetails()=default
const ComputeSavingsPlans & GetComputeSavingsPlans() const
void SetRedshiftReservedInstances(RedshiftReservedInstancesT &&value)
bool MemoryDbClusterHasBeenSet() const
void SetRdsDbInstance(RdsDbInstanceT &&value)
ResourceDetails & WithLambdaFunction(LambdaFunctionT &&value)
Aws::Utils::Json::JsonValue JsonValue