7#include <aws/iot/IoT_EXPORTS.h>
8#include <aws/iot/IoTRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/iot/model/TargetSelection.h>
12#include <aws/iot/model/AwsJobExecutionsRolloutConfig.h>
13#include <aws/iot/model/AwsJobPresignedUrlConfig.h>
14#include <aws/iot/model/AwsJobAbortConfig.h>
15#include <aws/iot/model/AwsJobTimeoutConfig.h>
16#include <aws/core/utils/memory/stl/AWSMap.h>
17#include <aws/iot/model/Protocol.h>
18#include <aws/iot/model/OTAUpdateFile.h>
19#include <aws/iot/model/Tag.h>
51 template<
typename OtaUpdateIdT = Aws::String>
52 void SetOtaUpdateId(OtaUpdateIdT&& value) { m_otaUpdateIdHasBeenSet =
true; m_otaUpdateId = std::forward<OtaUpdateIdT>(value); }
53 template<
typename OtaUpdateIdT = Aws::String>
63 template<
typename DescriptionT = Aws::String>
64 void SetDescription(DescriptionT&& value) { m_descriptionHasBeenSet =
true; m_description = std::forward<DescriptionT>(value); }
65 template<
typename DescriptionT = Aws::String>
75 template<
typename TargetsT = Aws::Vector<Aws::String>>
76 void SetTargets(TargetsT&& value) { m_targetsHasBeenSet =
true; m_targets = std::forward<TargetsT>(value); }
77 template<
typename TargetsT = Aws::Vector<Aws::String>>
79 template<
typename TargetsT = Aws::String>
91 template<
typename ProtocolsT = Aws::Vector<Protocol>>
92 void SetProtocols(ProtocolsT&& value) { m_protocolsHasBeenSet =
true; m_protocols = std::forward<ProtocolsT>(value); }
93 template<
typename ProtocolsT = Aws::Vector<Protocol>>
119 template<
typename AwsJobExecutionsRolloutConfigT = AwsJobExecutionsRolloutConfig>
120 void SetAwsJobExecutionsRolloutConfig(AwsJobExecutionsRolloutConfigT&& value) { m_awsJobExecutionsRolloutConfigHasBeenSet =
true; m_awsJobExecutionsRolloutConfig = std::forward<AwsJobExecutionsRolloutConfigT>(value); }
121 template<
typename AwsJobExecutionsRolloutConfigT = AwsJobExecutionsRolloutConfig>
131 template<
typename AwsJobPre
signedUrlConfigT = AwsJobPre
signedUrlConfig>
132 void SetAwsJobPresignedUrlConfig(AwsJobPresignedUrlConfigT&& value) { m_awsJobPresignedUrlConfigHasBeenSet =
true; m_awsJobPresignedUrlConfig = std::forward<AwsJobPresignedUrlConfigT>(value); }
133 template<
typename AwsJobPre
signedUrlConfigT = AwsJobPre
signedUrlConfig>
143 template<
typename AwsJobAbortConfigT = AwsJobAbortConfig>
144 void SetAwsJobAbortConfig(AwsJobAbortConfigT&& value) { m_awsJobAbortConfigHasBeenSet =
true; m_awsJobAbortConfig = std::forward<AwsJobAbortConfigT>(value); }
145 template<
typename AwsJobAbortConfigT = AwsJobAbortConfig>
159 template<
typename AwsJobTimeoutConfigT = AwsJobTimeoutConfig>
160 void SetAwsJobTimeoutConfig(AwsJobTimeoutConfigT&& value) { m_awsJobTimeoutConfigHasBeenSet =
true; m_awsJobTimeoutConfig = std::forward<AwsJobTimeoutConfigT>(value); }
161 template<
typename AwsJobTimeoutConfigT = AwsJobTimeoutConfig>
171 template<
typename FilesT = Aws::Vector<OTAUpdateFile>>
172 void SetFiles(FilesT&& value) { m_filesHasBeenSet =
true; m_files = std::forward<FilesT>(value); }
173 template<
typename FilesT = Aws::Vector<OTAUpdateFile>>
175 template<
typename FilesT = OTAUpdateFile>
187 template<
typename RoleArnT = Aws::String>
188 void SetRoleArn(RoleArnT&& value) { m_roleArnHasBeenSet =
true; m_roleArn = std::forward<RoleArnT>(value); }
189 template<
typename RoleArnT = Aws::String>
200 template<
typename AdditionalParametersT = Aws::Map<Aws::String, Aws::String>>
201 void SetAdditionalParameters(AdditionalParametersT&& value) { m_additionalParametersHasBeenSet =
true; m_additionalParameters = std::forward<AdditionalParametersT>(value); }
202 template<
typename AdditionalParametersT = Aws::Map<Aws::String, Aws::String>>
204 template<
typename AdditionalParametersKeyT = Aws::String,
typename AdditionalParametersValueT = Aws::String>
206 m_additionalParametersHasBeenSet =
true; m_additionalParameters.emplace(std::forward<AdditionalParametersKeyT>(key), std::forward<AdditionalParametersValueT>(value));
return *
this;
216 template<
typename TagsT = Aws::Vector<Tag>>
217 void SetTags(TagsT&& value) { m_tagsHasBeenSet =
true; m_tags = std::forward<TagsT>(value); }
218 template<
typename TagsT = Aws::Vector<Tag>>
220 template<
typename TagsT = Tag>
226 bool m_otaUpdateIdHasBeenSet =
false;
229 bool m_descriptionHasBeenSet =
false;
232 bool m_targetsHasBeenSet =
false;
235 bool m_protocolsHasBeenSet =
false;
238 bool m_targetSelectionHasBeenSet =
false;
240 AwsJobExecutionsRolloutConfig m_awsJobExecutionsRolloutConfig;
241 bool m_awsJobExecutionsRolloutConfigHasBeenSet =
false;
243 AwsJobPresignedUrlConfig m_awsJobPresignedUrlConfig;
244 bool m_awsJobPresignedUrlConfigHasBeenSet =
false;
246 AwsJobAbortConfig m_awsJobAbortConfig;
247 bool m_awsJobAbortConfigHasBeenSet =
false;
249 AwsJobTimeoutConfig m_awsJobTimeoutConfig;
250 bool m_awsJobTimeoutConfigHasBeenSet =
false;
253 bool m_filesHasBeenSet =
false;
256 bool m_roleArnHasBeenSet =
false;
259 bool m_additionalParametersHasBeenSet =
false;
262 bool m_tagsHasBeenSet =
false;
bool AwsJobPresignedUrlConfigHasBeenSet() const
CreateOTAUpdateRequest & WithProtocols(ProtocolsT &&value)
bool TargetsHasBeenSet() const
AWS_IOT_API CreateOTAUpdateRequest()=default
bool RoleArnHasBeenSet() const
bool AwsJobTimeoutConfigHasBeenSet() const
CreateOTAUpdateRequest & AddProtocols(Protocol value)
const AwsJobExecutionsRolloutConfig & GetAwsJobExecutionsRolloutConfig() const
AWS_IOT_API Aws::String SerializePayload() const override
CreateOTAUpdateRequest & WithAwsJobAbortConfig(AwsJobAbortConfigT &&value)
const Aws::Vector< Protocol > & GetProtocols() const
CreateOTAUpdateRequest & WithAwsJobExecutionsRolloutConfig(AwsJobExecutionsRolloutConfigT &&value)
const Aws::String & GetDescription() const
void SetRoleArn(RoleArnT &&value)
void SetAwsJobExecutionsRolloutConfig(AwsJobExecutionsRolloutConfigT &&value)
bool TargetSelectionHasBeenSet() const
bool ProtocolsHasBeenSet() const
TargetSelection GetTargetSelection() const
CreateOTAUpdateRequest & WithOtaUpdateId(OtaUpdateIdT &&value)
bool DescriptionHasBeenSet() const
const AwsJobTimeoutConfig & GetAwsJobTimeoutConfig() const
bool TagsHasBeenSet() const
CreateOTAUpdateRequest & WithAwsJobPresignedUrlConfig(AwsJobPresignedUrlConfigT &&value)
CreateOTAUpdateRequest & AddTags(TagsT &&value)
void SetTargets(TargetsT &&value)
void SetAwsJobAbortConfig(AwsJobAbortConfigT &&value)
bool AwsJobExecutionsRolloutConfigHasBeenSet() const
CreateOTAUpdateRequest & AddTargets(TargetsT &&value)
void SetAwsJobPresignedUrlConfig(AwsJobPresignedUrlConfigT &&value)
const Aws::String & GetOtaUpdateId() const
bool AwsJobAbortConfigHasBeenSet() const
void SetAdditionalParameters(AdditionalParametersT &&value)
CreateOTAUpdateRequest & WithAwsJobTimeoutConfig(AwsJobTimeoutConfigT &&value)
virtual const char * GetServiceRequestName() const override
CreateOTAUpdateRequest & WithTags(TagsT &&value)
CreateOTAUpdateRequest & WithRoleArn(RoleArnT &&value)
bool FilesHasBeenSet() const
void SetOtaUpdateId(OtaUpdateIdT &&value)
bool OtaUpdateIdHasBeenSet() const
void SetDescription(DescriptionT &&value)
void SetProtocols(ProtocolsT &&value)
CreateOTAUpdateRequest & WithTargetSelection(TargetSelection value)
void SetTargetSelection(TargetSelection value)
void SetAwsJobTimeoutConfig(AwsJobTimeoutConfigT &&value)
const Aws::Map< Aws::String, Aws::String > & GetAdditionalParameters() const
CreateOTAUpdateRequest & AddFiles(FilesT &&value)
void SetTags(TagsT &&value)
CreateOTAUpdateRequest & WithTargets(TargetsT &&value)
CreateOTAUpdateRequest & WithFiles(FilesT &&value)
CreateOTAUpdateRequest & WithDescription(DescriptionT &&value)
const Aws::String & GetRoleArn() const
const Aws::Vector< Tag > & GetTags() const
const Aws::Vector< OTAUpdateFile > & GetFiles() const
const AwsJobPresignedUrlConfig & GetAwsJobPresignedUrlConfig() const
CreateOTAUpdateRequest & AddAdditionalParameters(AdditionalParametersKeyT &&key, AdditionalParametersValueT &&value)
const AwsJobAbortConfig & GetAwsJobAbortConfig() const
bool AdditionalParametersHasBeenSet() const
CreateOTAUpdateRequest & WithAdditionalParameters(AdditionalParametersT &&value)
const Aws::Vector< Aws::String > & GetTargets() const
void SetFiles(FilesT &&value)
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector