AWS SDK for C++

AWS SDK for C++ Version 1.11.440

Loading...
Searching...
No Matches
MixedInstancesPolicy.h
1
6#pragma once
7#include <aws/autoscaling/AutoScaling_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
9#include <aws/autoscaling/model/LaunchTemplate.h>
10#include <aws/autoscaling/model/InstancesDistribution.h>
11#include <utility>
12
13namespace Aws
14{
15namespace Utils
16{
17namespace Xml
18{
19 class XmlNode;
20} // namespace Xml
21} // namespace Utils
22namespace AutoScaling
23{
24namespace Model
25{
26
39 {
40 public:
41 AWS_AUTOSCALING_API MixedInstancesPolicy();
42 AWS_AUTOSCALING_API MixedInstancesPolicy(const Aws::Utils::Xml::XmlNode& xmlNode);
43 AWS_AUTOSCALING_API MixedInstancesPolicy& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
44
45 AWS_AUTOSCALING_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
46 AWS_AUTOSCALING_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
47
48
50
54 inline const LaunchTemplate& GetLaunchTemplate() const{ return m_launchTemplate; }
55 inline bool LaunchTemplateHasBeenSet() const { return m_launchTemplateHasBeenSet; }
56 inline void SetLaunchTemplate(const LaunchTemplate& value) { m_launchTemplateHasBeenSet = true; m_launchTemplate = value; }
57 inline void SetLaunchTemplate(LaunchTemplate&& value) { m_launchTemplateHasBeenSet = true; m_launchTemplate = std::move(value); }
58 inline MixedInstancesPolicy& WithLaunchTemplate(const LaunchTemplate& value) { SetLaunchTemplate(value); return *this;}
59 inline MixedInstancesPolicy& WithLaunchTemplate(LaunchTemplate&& value) { SetLaunchTemplate(std::move(value)); return *this;}
61
63
66 inline const InstancesDistribution& GetInstancesDistribution() const{ return m_instancesDistribution; }
67 inline bool InstancesDistributionHasBeenSet() const { return m_instancesDistributionHasBeenSet; }
68 inline void SetInstancesDistribution(const InstancesDistribution& value) { m_instancesDistributionHasBeenSet = true; m_instancesDistribution = value; }
69 inline void SetInstancesDistribution(InstancesDistribution&& value) { m_instancesDistributionHasBeenSet = true; m_instancesDistribution = std::move(value); }
73 private:
74
75 LaunchTemplate m_launchTemplate;
76 bool m_launchTemplateHasBeenSet = false;
77
78 InstancesDistribution m_instancesDistribution;
79 bool m_instancesDistributionHasBeenSet = false;
80 };
81
82} // namespace Model
83} // namespace AutoScaling
84} // namespace Aws
AWS_AUTOSCALING_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
void SetLaunchTemplate(const LaunchTemplate &value)
MixedInstancesPolicy & WithLaunchTemplate(const LaunchTemplate &value)
AWS_AUTOSCALING_API MixedInstancesPolicy(const Aws::Utils::Xml::XmlNode &xmlNode)
void SetInstancesDistribution(const InstancesDistribution &value)
AWS_AUTOSCALING_API void OutputToStream(Aws::OStream &oStream, const char *location) const
MixedInstancesPolicy & WithInstancesDistribution(InstancesDistribution &&value)
AWS_AUTOSCALING_API MixedInstancesPolicy & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
void SetInstancesDistribution(InstancesDistribution &&value)
MixedInstancesPolicy & WithInstancesDistribution(const InstancesDistribution &value)
const InstancesDistribution & GetInstancesDistribution() const
MixedInstancesPolicy & WithLaunchTemplate(LaunchTemplate &&value)
std::basic_ostream< char, std::char_traits< char > > OStream