AWS SDK for C++

AWS SDK for C++ Version 1.11.816

Loading...
Searching...
No Matches
ServiceManagedEc2FleetConfiguration.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/deadline/Deadline_EXPORTS.h>
9#include <aws/deadline/model/PersistentVolumeConfiguration.h>
10#include <aws/deadline/model/ServiceManagedEc2AutoScalingConfiguration.h>
11#include <aws/deadline/model/ServiceManagedEc2InstanceCapabilities.h>
12#include <aws/deadline/model/ServiceManagedEc2InstanceMarketOptions.h>
13#include <aws/deadline/model/VpcConfiguration.h>
14
15#include <utility>
16
17namespace Aws {
18namespace Utils {
19namespace Json {
20class JsonValue;
21class JsonView;
22} // namespace Json
23} // namespace Utils
24namespace deadline {
25namespace Model {
26
34 public:
35 AWS_DEADLINE_API ServiceManagedEc2FleetConfiguration() = default;
38 AWS_DEADLINE_API Aws::Utils::Json::JsonValue Jsonize() const;
39
41
44 inline const ServiceManagedEc2InstanceCapabilities& GetInstanceCapabilities() const { return m_instanceCapabilities; }
45 inline bool InstanceCapabilitiesHasBeenSet() const { return m_instanceCapabilitiesHasBeenSet; }
46 template <typename InstanceCapabilitiesT = ServiceManagedEc2InstanceCapabilities>
47 void SetInstanceCapabilities(InstanceCapabilitiesT&& value) {
48 m_instanceCapabilitiesHasBeenSet = true;
49 m_instanceCapabilities = std::forward<InstanceCapabilitiesT>(value);
50 }
51 template <typename InstanceCapabilitiesT = ServiceManagedEc2InstanceCapabilities>
53 SetInstanceCapabilities(std::forward<InstanceCapabilitiesT>(value));
54 return *this;
55 }
57
59
62 inline const ServiceManagedEc2InstanceMarketOptions& GetInstanceMarketOptions() const { return m_instanceMarketOptions; }
63 inline bool InstanceMarketOptionsHasBeenSet() const { return m_instanceMarketOptionsHasBeenSet; }
64 template <typename InstanceMarketOptionsT = ServiceManagedEc2InstanceMarketOptions>
65 void SetInstanceMarketOptions(InstanceMarketOptionsT&& value) {
66 m_instanceMarketOptionsHasBeenSet = true;
67 m_instanceMarketOptions = std::forward<InstanceMarketOptionsT>(value);
68 }
69 template <typename InstanceMarketOptionsT = ServiceManagedEc2InstanceMarketOptions>
71 SetInstanceMarketOptions(std::forward<InstanceMarketOptionsT>(value));
72 return *this;
73 }
75
77
80 inline const VpcConfiguration& GetVpcConfiguration() const { return m_vpcConfiguration; }
81 inline bool VpcConfigurationHasBeenSet() const { return m_vpcConfigurationHasBeenSet; }
82 template <typename VpcConfigurationT = VpcConfiguration>
83 void SetVpcConfiguration(VpcConfigurationT&& value) {
84 m_vpcConfigurationHasBeenSet = true;
85 m_vpcConfiguration = std::forward<VpcConfigurationT>(value);
86 }
87 template <typename VpcConfigurationT = VpcConfiguration>
89 SetVpcConfiguration(std::forward<VpcConfigurationT>(value));
90 return *this;
91 }
93
95
98 inline const Aws::String& GetStorageProfileId() const { return m_storageProfileId; }
99 inline bool StorageProfileIdHasBeenSet() const { return m_storageProfileIdHasBeenSet; }
100 template <typename StorageProfileIdT = Aws::String>
101 void SetStorageProfileId(StorageProfileIdT&& value) {
102 m_storageProfileIdHasBeenSet = true;
103 m_storageProfileId = std::forward<StorageProfileIdT>(value);
104 }
105 template <typename StorageProfileIdT = Aws::String>
107 SetStorageProfileId(std::forward<StorageProfileIdT>(value));
108 return *this;
109 }
111
113
116 inline const PersistentVolumeConfiguration& GetPersistentVolumeConfiguration() const { return m_persistentVolumeConfiguration; }
117 inline bool PersistentVolumeConfigurationHasBeenSet() const { return m_persistentVolumeConfigurationHasBeenSet; }
118 template <typename PersistentVolumeConfigurationT = PersistentVolumeConfiguration>
119 void SetPersistentVolumeConfiguration(PersistentVolumeConfigurationT&& value) {
120 m_persistentVolumeConfigurationHasBeenSet = true;
121 m_persistentVolumeConfiguration = std::forward<PersistentVolumeConfigurationT>(value);
122 }
123 template <typename PersistentVolumeConfigurationT = PersistentVolumeConfiguration>
125 SetPersistentVolumeConfiguration(std::forward<PersistentVolumeConfigurationT>(value));
126 return *this;
127 }
129
131
135 inline const ServiceManagedEc2AutoScalingConfiguration& GetAutoScalingConfiguration() const { return m_autoScalingConfiguration; }
136 inline bool AutoScalingConfigurationHasBeenSet() const { return m_autoScalingConfigurationHasBeenSet; }
137 template <typename AutoScalingConfigurationT = ServiceManagedEc2AutoScalingConfiguration>
138 void SetAutoScalingConfiguration(AutoScalingConfigurationT&& value) {
139 m_autoScalingConfigurationHasBeenSet = true;
140 m_autoScalingConfiguration = std::forward<AutoScalingConfigurationT>(value);
141 }
142 template <typename AutoScalingConfigurationT = ServiceManagedEc2AutoScalingConfiguration>
144 SetAutoScalingConfiguration(std::forward<AutoScalingConfigurationT>(value));
145 return *this;
146 }
148 private:
149 ServiceManagedEc2InstanceCapabilities m_instanceCapabilities;
150
151 ServiceManagedEc2InstanceMarketOptions m_instanceMarketOptions;
152
153 VpcConfiguration m_vpcConfiguration;
154
155 Aws::String m_storageProfileId;
156
157 PersistentVolumeConfiguration m_persistentVolumeConfiguration;
158
159 ServiceManagedEc2AutoScalingConfiguration m_autoScalingConfiguration;
160 bool m_instanceCapabilitiesHasBeenSet = false;
161 bool m_instanceMarketOptionsHasBeenSet = false;
162 bool m_vpcConfigurationHasBeenSet = false;
163 bool m_storageProfileIdHasBeenSet = false;
164 bool m_persistentVolumeConfigurationHasBeenSet = false;
165 bool m_autoScalingConfigurationHasBeenSet = false;
166};
167
168} // namespace Model
169} // namespace deadline
170} // namespace Aws
ServiceManagedEc2FleetConfiguration & WithVpcConfiguration(VpcConfigurationT &&value)
ServiceManagedEc2FleetConfiguration & WithInstanceCapabilities(InstanceCapabilitiesT &&value)
ServiceManagedEc2FleetConfiguration & WithStorageProfileId(StorageProfileIdT &&value)
const PersistentVolumeConfiguration & GetPersistentVolumeConfiguration() const
void SetPersistentVolumeConfiguration(PersistentVolumeConfigurationT &&value)
ServiceManagedEc2FleetConfiguration & WithAutoScalingConfiguration(AutoScalingConfigurationT &&value)
ServiceManagedEc2FleetConfiguration & WithPersistentVolumeConfiguration(PersistentVolumeConfigurationT &&value)
AWS_DEADLINE_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_DEADLINE_API ServiceManagedEc2FleetConfiguration & operator=(Aws::Utils::Json::JsonView jsonValue)
const ServiceManagedEc2AutoScalingConfiguration & GetAutoScalingConfiguration() const
AWS_DEADLINE_API ServiceManagedEc2FleetConfiguration(Aws::Utils::Json::JsonView jsonValue)
const ServiceManagedEc2InstanceMarketOptions & GetInstanceMarketOptions() const
const ServiceManagedEc2InstanceCapabilities & GetInstanceCapabilities() const
ServiceManagedEc2FleetConfiguration & WithInstanceMarketOptions(InstanceMarketOptionsT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue