AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
SpotPlacement.h
1
6#pragma once
7#include <aws/ec2/EC2_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/ec2/model/Tenancy.h>
11#include <utility>
12
13namespace Aws
14{
15namespace Utils
16{
17namespace Xml
18{
19 class XmlNode;
20} // namespace Xml
21} // namespace Utils
22namespace EC2
23{
24namespace Model
25{
26
33 {
34 public:
35 AWS_EC2_API SpotPlacement() = default;
36 AWS_EC2_API SpotPlacement(const Aws::Utils::Xml::XmlNode& xmlNode);
37 AWS_EC2_API SpotPlacement& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
38
39 AWS_EC2_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
40 AWS_EC2_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
41
42
44
49 inline const Aws::String& GetAvailabilityZone() const { return m_availabilityZone; }
50 inline bool AvailabilityZoneHasBeenSet() const { return m_availabilityZoneHasBeenSet; }
51 template<typename AvailabilityZoneT = Aws::String>
52 void SetAvailabilityZone(AvailabilityZoneT&& value) { m_availabilityZoneHasBeenSet = true; m_availabilityZone = std::forward<AvailabilityZoneT>(value); }
53 template<typename AvailabilityZoneT = Aws::String>
54 SpotPlacement& WithAvailabilityZone(AvailabilityZoneT&& value) { SetAvailabilityZone(std::forward<AvailabilityZoneT>(value)); return *this;}
56
58
61 inline const Aws::String& GetGroupName() const { return m_groupName; }
62 inline bool GroupNameHasBeenSet() const { return m_groupNameHasBeenSet; }
63 template<typename GroupNameT = Aws::String>
64 void SetGroupName(GroupNameT&& value) { m_groupNameHasBeenSet = true; m_groupName = std::forward<GroupNameT>(value); }
65 template<typename GroupNameT = Aws::String>
66 SpotPlacement& WithGroupName(GroupNameT&& value) { SetGroupName(std::forward<GroupNameT>(value)); return *this;}
68
70
75 inline Tenancy GetTenancy() const { return m_tenancy; }
76 inline bool TenancyHasBeenSet() const { return m_tenancyHasBeenSet; }
77 inline void SetTenancy(Tenancy value) { m_tenancyHasBeenSet = true; m_tenancy = value; }
78 inline SpotPlacement& WithTenancy(Tenancy value) { SetTenancy(value); return *this;}
80 private:
81
82 Aws::String m_availabilityZone;
83 bool m_availabilityZoneHasBeenSet = false;
84
85 Aws::String m_groupName;
86 bool m_groupNameHasBeenSet = false;
87
88 Tenancy m_tenancy{Tenancy::NOT_SET};
89 bool m_tenancyHasBeenSet = false;
90 };
91
92} // namespace Model
93} // namespace EC2
94} // namespace Aws
void SetGroupName(GroupNameT &&value)
const Aws::String & GetAvailabilityZone() const
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
AWS_EC2_API SpotPlacement & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
SpotPlacement & WithAvailabilityZone(AvailabilityZoneT &&value)
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
AWS_EC2_API SpotPlacement(const Aws::Utils::Xml::XmlNode &xmlNode)
SpotPlacement & WithTenancy(Tenancy value)
AWS_EC2_API SpotPlacement()=default
void SetTenancy(Tenancy value)
void SetAvailabilityZone(AvailabilityZoneT &&value)
SpotPlacement & WithGroupName(GroupNameT &&value)
const Aws::String & GetGroupName() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::basic_ostream< char, std::char_traits< char > > OStream