7#include <aws/core/utils/UUID.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/lambda-microvms/LambdaMicrovmsRequest.h>
11#include <aws/lambda-microvms/LambdaMicrovms_EXPORTS.h>
12#include <aws/lambda-microvms/model/IdlePolicy.h>
13#include <aws/lambda-microvms/model/Logging.h>
18namespace LambdaMicrovms {
41 template <
typename IngressNetworkConnectorsT = Aws::Vector<Aws::String>>
43 m_ingressNetworkConnectorsHasBeenSet =
true;
44 m_ingressNetworkConnectors = std::forward<IngressNetworkConnectorsT>(value);
46 template <
typename IngressNetworkConnectorsT = Aws::Vector<Aws::String>>
51 template <
typename IngressNetworkConnectorsT = Aws::String>
53 m_ingressNetworkConnectorsHasBeenSet =
true;
54 m_ingressNetworkConnectors.emplace_back(std::forward<IngressNetworkConnectorsT>(value));
65 template <
typename EgressNetworkConnectorsT = Aws::Vector<Aws::String>>
67 m_egressNetworkConnectorsHasBeenSet =
true;
68 m_egressNetworkConnectors = std::forward<EgressNetworkConnectorsT>(value);
70 template <
typename EgressNetworkConnectorsT = Aws::Vector<Aws::String>>
75 template <
typename EgressNetworkConnectorsT = Aws::String>
77 m_egressNetworkConnectorsHasBeenSet =
true;
78 m_egressNetworkConnectors.emplace_back(std::forward<EgressNetworkConnectorsT>(value));
89 template <
typename ImageIdentifierT = Aws::String>
91 m_imageIdentifierHasBeenSet =
true;
92 m_imageIdentifier = std::forward<ImageIdentifierT>(value);
94 template <
typename ImageIdentifierT = Aws::String>
107 template <
typename ImageVersionT = Aws::String>
109 m_imageVersionHasBeenSet =
true;
110 m_imageVersion = std::forward<ImageVersionT>(value);
112 template <
typename ImageVersionT = Aws::String>
125 template <
typename ExecutionRoleArnT = Aws::String>
127 m_executionRoleArnHasBeenSet =
true;
128 m_executionRoleArn = std::forward<ExecutionRoleArnT>(value);
130 template <
typename ExecutionRoleArnT = Aws::String>
143 template <
typename IdlePolicyT = IdlePolicy>
145 m_idlePolicyHasBeenSet =
true;
146 m_idlePolicy = std::forward<IdlePolicyT>(value);
148 template <
typename IdlePolicyT = IdlePolicy>
163 template <
typename LoggingT = Logging>
165 m_loggingHasBeenSet =
true;
166 m_logging = std::forward<LoggingT>(value);
168 template <
typename LoggingT = Logging>
183 template <
typename RunHookPayloadT = Aws::String>
185 m_runHookPayloadHasBeenSet =
true;
186 m_runHookPayload = std::forward<RunHookPayloadT>(value);
188 template <
typename RunHookPayloadT = Aws::String>
203 m_maximumDurationInSecondsHasBeenSet =
true;
204 m_maximumDurationInSeconds = value;
219 template <
typename ClientTokenT = Aws::String>
221 m_clientTokenHasBeenSet =
true;
222 m_clientToken = std::forward<ClientTokenT>(value);
224 template <
typename ClientTokenT = Aws::String>
247 int m_maximumDurationInSeconds{0};
250 bool m_ingressNetworkConnectorsHasBeenSet =
false;
251 bool m_egressNetworkConnectorsHasBeenSet =
false;
252 bool m_imageIdentifierHasBeenSet =
false;
253 bool m_imageVersionHasBeenSet =
false;
254 bool m_executionRoleArnHasBeenSet =
false;
255 bool m_idlePolicyHasBeenSet =
false;
256 bool m_loggingHasBeenSet =
false;
257 bool m_runHookPayloadHasBeenSet =
false;
258 bool m_maximumDurationInSecondsHasBeenSet =
false;
259 bool m_clientTokenHasBeenSet =
true;
void SetRunHookPayload(RunHookPayloadT &&value)
void SetExecutionRoleArn(ExecutionRoleArnT &&value)
const Aws::String & GetRunHookPayload() const
const Logging & GetLogging() const
const Aws::Vector< Aws::String > & GetEgressNetworkConnectors() const
void SetIngressNetworkConnectors(IngressNetworkConnectorsT &&value)
bool IdlePolicyHasBeenSet() const
RunMicrovmRequest & WithIdlePolicy(IdlePolicyT &&value)
bool RunHookPayloadHasBeenSet() const
bool ImageVersionHasBeenSet() const
void SetClientToken(ClientTokenT &&value)
RunMicrovmRequest & WithImageIdentifier(ImageIdentifierT &&value)
RunMicrovmRequest & AddEgressNetworkConnectors(EgressNetworkConnectorsT &&value)
AWS_LAMBDAMICROVMS_API Aws::String SerializePayload() const override
bool ImageIdentifierHasBeenSet() const
RunMicrovmRequest & WithExecutionRoleArn(ExecutionRoleArnT &&value)
RunMicrovmRequest & WithEgressNetworkConnectors(EgressNetworkConnectorsT &&value)
RunMicrovmRequest & WithIngressNetworkConnectors(IngressNetworkConnectorsT &&value)
int GetMaximumDurationInSeconds() const
RunMicrovmRequest & WithRunHookPayload(RunHookPayloadT &&value)
const Aws::String & GetClientToken() const
void SetIdlePolicy(IdlePolicyT &&value)
const IdlePolicy & GetIdlePolicy() const
const Aws::Vector< Aws::String > & GetIngressNetworkConnectors() const
RunMicrovmRequest & WithMaximumDurationInSeconds(int value)
const Aws::String & GetExecutionRoleArn() const
void SetLogging(LoggingT &&value)
void SetEgressNetworkConnectors(EgressNetworkConnectorsT &&value)
bool LoggingHasBeenSet() const
RunMicrovmRequest & WithImageVersion(ImageVersionT &&value)
virtual const char * GetServiceRequestName() const override
AWS_LAMBDAMICROVMS_API RunMicrovmRequest()=default
bool MaximumDurationInSecondsHasBeenSet() const
bool ExecutionRoleArnHasBeenSet() const
RunMicrovmRequest & AddIngressNetworkConnectors(IngressNetworkConnectorsT &&value)
void SetMaximumDurationInSeconds(int value)
void SetImageVersion(ImageVersionT &&value)
bool IngressNetworkConnectorsHasBeenSet() const
bool ClientTokenHasBeenSet() const
void SetImageIdentifier(ImageIdentifierT &&value)
const Aws::String & GetImageVersion() const
RunMicrovmRequest & WithLogging(LoggingT &&value)
const Aws::String & GetImageIdentifier() const
RunMicrovmRequest & WithClientToken(ClientTokenT &&value)
bool EgressNetworkConnectorsHasBeenSet() const
static Aws::Utils::UUID PseudoRandomUUID()
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector