7#include <aws/iotsitewise/IoTSiteWise_EXPORTS.h>
8#include <aws/iotsitewise/IoTSiteWiseRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/iotsitewise/model/AssetModelType.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12#include <aws/core/utils/memory/stl/AWSMap.h>
13#include <aws/iotsitewise/model/AssetModelPropertyDefinition.h>
14#include <aws/iotsitewise/model/AssetModelHierarchyDefinition.h>
15#include <aws/iotsitewise/model/AssetModelCompositeModelDefinition.h>
17#include <aws/core/utils/UUID.h>
48 template<
typename AssetModelNameT = Aws::String>
49 void SetAssetModelName(AssetModelNameT&& value) { m_assetModelNameHasBeenSet =
true; m_assetModelName = std::forward<AssetModelNameT>(value); }
50 template<
typename AssetModelNameT = Aws::String>
77 template<
typename AssetModelIdT = Aws::String>
78 void SetAssetModelId(AssetModelIdT&& value) { m_assetModelIdHasBeenSet =
true; m_assetModelId = std::forward<AssetModelIdT>(value); }
79 template<
typename AssetModelIdT = Aws::String>
92 template<
typename AssetModelExternalIdT = Aws::String>
93 void SetAssetModelExternalId(AssetModelExternalIdT&& value) { m_assetModelExternalIdHasBeenSet =
true; m_assetModelExternalId = std::forward<AssetModelExternalIdT>(value); }
94 template<
typename AssetModelExternalIdT = Aws::String>
104 template<
typename AssetModelDescriptionT = Aws::String>
105 void SetAssetModelDescription(AssetModelDescriptionT&& value) { m_assetModelDescriptionHasBeenSet =
true; m_assetModelDescription = std::forward<AssetModelDescriptionT>(value); }
106 template<
typename AssetModelDescriptionT = Aws::String>
121 template<
typename AssetModelPropertiesT = Aws::Vector<AssetModelPropertyDefinition>>
122 void SetAssetModelProperties(AssetModelPropertiesT&& value) { m_assetModelPropertiesHasBeenSet =
true; m_assetModelProperties = std::forward<AssetModelPropertiesT>(value); }
123 template<
typename AssetModelPropertiesT = Aws::Vector<AssetModelPropertyDefinition>>
125 template<
typename AssetModelPropertiesT = AssetModelPropertyDefinition>
142 template<
typename AssetModelHierarchiesT = Aws::Vector<AssetModelHierarchyDefinition>>
143 void SetAssetModelHierarchies(AssetModelHierarchiesT&& value) { m_assetModelHierarchiesHasBeenSet =
true; m_assetModelHierarchies = std::forward<AssetModelHierarchiesT>(value); }
144 template<
typename AssetModelHierarchiesT = Aws::Vector<AssetModelHierarchyDefinition>>
146 template<
typename AssetModelHierarchiesT = AssetModelHierarchyDefinition>
166 template<
typename AssetModelCompositeModelsT = Aws::Vector<AssetModelCompositeModelDefinition>>
167 void SetAssetModelCompositeModels(AssetModelCompositeModelsT&& value) { m_assetModelCompositeModelsHasBeenSet =
true; m_assetModelCompositeModels = std::forward<AssetModelCompositeModelsT>(value); }
168 template<
typename AssetModelCompositeModelsT = Aws::Vector<AssetModelCompositeModelDefinition>>
170 template<
typename AssetModelCompositeModelsT = AssetModelCompositeModelDefinition>
182 template<
typename ClientTokenT = Aws::String>
183 void SetClientToken(ClientTokenT&& value) { m_clientTokenHasBeenSet =
true; m_clientToken = std::forward<ClientTokenT>(value); }
184 template<
typename ClientTokenT = Aws::String>
197 template<
typename TagsT = Aws::Map<Aws::String, Aws::String>>
198 void SetTags(TagsT&& value) { m_tagsHasBeenSet =
true; m_tags = std::forward<TagsT>(value); }
199 template<
typename TagsT = Aws::Map<Aws::String, Aws::String>>
201 template<
typename TagsKeyT = Aws::String,
typename TagsValueT = Aws::String>
203 m_tagsHasBeenSet =
true; m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
return *
this;
209 bool m_assetModelNameHasBeenSet =
false;
212 bool m_assetModelTypeHasBeenSet =
false;
215 bool m_assetModelIdHasBeenSet =
false;
218 bool m_assetModelExternalIdHasBeenSet =
false;
221 bool m_assetModelDescriptionHasBeenSet =
false;
224 bool m_assetModelPropertiesHasBeenSet =
false;
227 bool m_assetModelHierarchiesHasBeenSet =
false;
230 bool m_assetModelCompositeModelsHasBeenSet =
false;
233 bool m_clientTokenHasBeenSet =
true;
236 bool m_tagsHasBeenSet =
false;
CreateAssetModelRequest & WithAssetModelType(AssetModelType value)
void SetAssetModelCompositeModels(AssetModelCompositeModelsT &&value)
bool ClientTokenHasBeenSet() const
AssetModelType GetAssetModelType() const
bool AssetModelCompositeModelsHasBeenSet() const
void SetAssetModelType(AssetModelType value)
void SetAssetModelName(AssetModelNameT &&value)
CreateAssetModelRequest & WithAssetModelProperties(AssetModelPropertiesT &&value)
void SetAssetModelExternalId(AssetModelExternalIdT &&value)
CreateAssetModelRequest & WithAssetModelCompositeModels(AssetModelCompositeModelsT &&value)
const Aws::String & GetAssetModelExternalId() const
CreateAssetModelRequest & WithTags(TagsT &&value)
bool AssetModelNameHasBeenSet() const
CreateAssetModelRequest & WithAssetModelId(AssetModelIdT &&value)
void SetAssetModelDescription(AssetModelDescriptionT &&value)
void SetClientToken(ClientTokenT &&value)
bool TagsHasBeenSet() const
CreateAssetModelRequest & AddAssetModelCompositeModels(AssetModelCompositeModelsT &&value)
const Aws::Vector< AssetModelPropertyDefinition > & GetAssetModelProperties() const
bool AssetModelExternalIdHasBeenSet() const
const Aws::String & GetClientToken() const
bool AssetModelHierarchiesHasBeenSet() const
CreateAssetModelRequest & WithAssetModelDescription(AssetModelDescriptionT &&value)
CreateAssetModelRequest & WithClientToken(ClientTokenT &&value)
CreateAssetModelRequest & WithAssetModelExternalId(AssetModelExternalIdT &&value)
AWS_IOTSITEWISE_API CreateAssetModelRequest()=default
void SetAssetModelProperties(AssetModelPropertiesT &&value)
bool AssetModelTypeHasBeenSet() const
void SetAssetModelId(AssetModelIdT &&value)
const Aws::Vector< AssetModelCompositeModelDefinition > & GetAssetModelCompositeModels() const
const Aws::String & GetAssetModelName() const
virtual const char * GetServiceRequestName() const override
CreateAssetModelRequest & AddAssetModelProperties(AssetModelPropertiesT &&value)
CreateAssetModelRequest & AddAssetModelHierarchies(AssetModelHierarchiesT &&value)
void SetTags(TagsT &&value)
CreateAssetModelRequest & WithAssetModelName(AssetModelNameT &&value)
bool AssetModelDescriptionHasBeenSet() const
bool AssetModelPropertiesHasBeenSet() const
const Aws::Vector< AssetModelHierarchyDefinition > & GetAssetModelHierarchies() const
CreateAssetModelRequest & AddTags(TagsKeyT &&key, TagsValueT &&value)
void SetAssetModelHierarchies(AssetModelHierarchiesT &&value)
const Aws::String & GetAssetModelDescription() const
AWS_IOTSITEWISE_API Aws::String SerializePayload() const override
bool AssetModelIdHasBeenSet() const
const Aws::Map< Aws::String, Aws::String > & GetTags() const
const Aws::String & GetAssetModelId() const
CreateAssetModelRequest & WithAssetModelHierarchies(AssetModelHierarchiesT &&value)
static Aws::Utils::UUID PseudoRandomUUID()
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