AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
BrokerInstanceOption.h
1
6#pragma once
7#include <aws/mq/MQ_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/mq/model/EngineType.h>
10#include <aws/core/utils/memory/stl/AWSString.h>
11#include <aws/mq/model/BrokerStorageType.h>
12#include <aws/mq/model/AvailabilityZone.h>
13#include <aws/mq/model/DeploymentMode.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 MQ
27{
28namespace Model
29{
30
37 {
38 public:
39 AWS_MQ_API BrokerInstanceOption() = default;
43
44
46
49 inline const Aws::Vector<AvailabilityZone>& GetAvailabilityZones() const { return m_availabilityZones; }
50 inline bool AvailabilityZonesHasBeenSet() const { return m_availabilityZonesHasBeenSet; }
51 template<typename AvailabilityZonesT = Aws::Vector<AvailabilityZone>>
52 void SetAvailabilityZones(AvailabilityZonesT&& value) { m_availabilityZonesHasBeenSet = true; m_availabilityZones = std::forward<AvailabilityZonesT>(value); }
53 template<typename AvailabilityZonesT = Aws::Vector<AvailabilityZone>>
54 BrokerInstanceOption& WithAvailabilityZones(AvailabilityZonesT&& value) { SetAvailabilityZones(std::forward<AvailabilityZonesT>(value)); return *this;}
55 template<typename AvailabilityZonesT = AvailabilityZone>
56 BrokerInstanceOption& AddAvailabilityZones(AvailabilityZonesT&& value) { m_availabilityZonesHasBeenSet = true; m_availabilityZones.emplace_back(std::forward<AvailabilityZonesT>(value)); return *this; }
58
60
63 inline EngineType GetEngineType() const { return m_engineType; }
64 inline bool EngineTypeHasBeenSet() const { return m_engineTypeHasBeenSet; }
65 inline void SetEngineType(EngineType value) { m_engineTypeHasBeenSet = true; m_engineType = value; }
66 inline BrokerInstanceOption& WithEngineType(EngineType value) { SetEngineType(value); return *this;}
68
70
73 inline const Aws::String& GetHostInstanceType() const { return m_hostInstanceType; }
74 inline bool HostInstanceTypeHasBeenSet() const { return m_hostInstanceTypeHasBeenSet; }
75 template<typename HostInstanceTypeT = Aws::String>
76 void SetHostInstanceType(HostInstanceTypeT&& value) { m_hostInstanceTypeHasBeenSet = true; m_hostInstanceType = std::forward<HostInstanceTypeT>(value); }
77 template<typename HostInstanceTypeT = Aws::String>
78 BrokerInstanceOption& WithHostInstanceType(HostInstanceTypeT&& value) { SetHostInstanceType(std::forward<HostInstanceTypeT>(value)); return *this;}
80
82
85 inline BrokerStorageType GetStorageType() const { return m_storageType; }
86 inline bool StorageTypeHasBeenSet() const { return m_storageTypeHasBeenSet; }
87 inline void SetStorageType(BrokerStorageType value) { m_storageTypeHasBeenSet = true; m_storageType = value; }
90
92
95 inline const Aws::Vector<DeploymentMode>& GetSupportedDeploymentModes() const { return m_supportedDeploymentModes; }
96 inline bool SupportedDeploymentModesHasBeenSet() const { return m_supportedDeploymentModesHasBeenSet; }
97 template<typename SupportedDeploymentModesT = Aws::Vector<DeploymentMode>>
98 void SetSupportedDeploymentModes(SupportedDeploymentModesT&& value) { m_supportedDeploymentModesHasBeenSet = true; m_supportedDeploymentModes = std::forward<SupportedDeploymentModesT>(value); }
99 template<typename SupportedDeploymentModesT = Aws::Vector<DeploymentMode>>
100 BrokerInstanceOption& WithSupportedDeploymentModes(SupportedDeploymentModesT&& value) { SetSupportedDeploymentModes(std::forward<SupportedDeploymentModesT>(value)); return *this;}
101 inline BrokerInstanceOption& AddSupportedDeploymentModes(DeploymentMode value) { m_supportedDeploymentModesHasBeenSet = true; m_supportedDeploymentModes.push_back(value); return *this; }
103
105
108 inline const Aws::Vector<Aws::String>& GetSupportedEngineVersions() const { return m_supportedEngineVersions; }
109 inline bool SupportedEngineVersionsHasBeenSet() const { return m_supportedEngineVersionsHasBeenSet; }
110 template<typename SupportedEngineVersionsT = Aws::Vector<Aws::String>>
111 void SetSupportedEngineVersions(SupportedEngineVersionsT&& value) { m_supportedEngineVersionsHasBeenSet = true; m_supportedEngineVersions = std::forward<SupportedEngineVersionsT>(value); }
112 template<typename SupportedEngineVersionsT = Aws::Vector<Aws::String>>
113 BrokerInstanceOption& WithSupportedEngineVersions(SupportedEngineVersionsT&& value) { SetSupportedEngineVersions(std::forward<SupportedEngineVersionsT>(value)); return *this;}
114 template<typename SupportedEngineVersionsT = Aws::String>
115 BrokerInstanceOption& AddSupportedEngineVersions(SupportedEngineVersionsT&& value) { m_supportedEngineVersionsHasBeenSet = true; m_supportedEngineVersions.emplace_back(std::forward<SupportedEngineVersionsT>(value)); return *this; }
117 private:
118
119 Aws::Vector<AvailabilityZone> m_availabilityZones;
120 bool m_availabilityZonesHasBeenSet = false;
121
122 EngineType m_engineType{EngineType::NOT_SET};
123 bool m_engineTypeHasBeenSet = false;
124
125 Aws::String m_hostInstanceType;
126 bool m_hostInstanceTypeHasBeenSet = false;
127
129 bool m_storageTypeHasBeenSet = false;
130
131 Aws::Vector<DeploymentMode> m_supportedDeploymentModes;
132 bool m_supportedDeploymentModesHasBeenSet = false;
133
134 Aws::Vector<Aws::String> m_supportedEngineVersions;
135 bool m_supportedEngineVersionsHasBeenSet = false;
136 };
137
138} // namespace Model
139} // namespace MQ
140} // namespace Aws
const Aws::Vector< Aws::String > & GetSupportedEngineVersions() const
const Aws::Vector< DeploymentMode > & GetSupportedDeploymentModes() const
void SetAvailabilityZones(AvailabilityZonesT &&value)
void SetHostInstanceType(HostInstanceTypeT &&value)
AWS_MQ_API BrokerInstanceOption & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::String & GetHostInstanceType() const
BrokerInstanceOption & WithSupportedDeploymentModes(SupportedDeploymentModesT &&value)
void SetSupportedEngineVersions(SupportedEngineVersionsT &&value)
BrokerInstanceOption & AddSupportedDeploymentModes(DeploymentMode value)
BrokerInstanceOption & WithStorageType(BrokerStorageType value)
BrokerInstanceOption & AddAvailabilityZones(AvailabilityZonesT &&value)
BrokerInstanceOption & AddSupportedEngineVersions(SupportedEngineVersionsT &&value)
BrokerInstanceOption & WithEngineType(EngineType value)
const Aws::Vector< AvailabilityZone > & GetAvailabilityZones() const
BrokerInstanceOption & WithHostInstanceType(HostInstanceTypeT &&value)
BrokerInstanceOption & WithAvailabilityZones(AvailabilityZonesT &&value)
AWS_MQ_API BrokerInstanceOption(Aws::Utils::Json::JsonView jsonValue)
BrokerInstanceOption & WithSupportedEngineVersions(SupportedEngineVersionsT &&value)
AWS_MQ_API Aws::Utils::Json::JsonValue Jsonize() const
void SetSupportedDeploymentModes(SupportedDeploymentModesT &&value)
void SetStorageType(BrokerStorageType value)
AWS_MQ_API BrokerInstanceOption()=default
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue