AWS SDK for C++

AWS SDK for C++ Version 1.11.608

Loading...
Searching...
No Matches
CreateAssetModelRequest.h
1
6#pragma once
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>
16#include <utility>
17#include <aws/core/utils/UUID.h>
18
19namespace Aws
20{
21namespace IoTSiteWise
22{
23namespace Model
24{
25
29 {
30 public:
31 AWS_IOTSITEWISE_API CreateAssetModelRequest() = default;
32
33 // Service request name is the Operation name which will send this request out,
34 // each operation should has unique request name, so that we can get operation's name from this request.
35 // Note: this is not true for response, multiple operations may have the same response name,
36 // so we can not get operation's name from response.
37 inline virtual const char* GetServiceRequestName() const override { return "CreateAssetModel"; }
38
39 AWS_IOTSITEWISE_API Aws::String SerializePayload() const override;
40
41
43
46 inline const Aws::String& GetAssetModelName() const { return m_assetModelName; }
47 inline bool AssetModelNameHasBeenSet() const { return m_assetModelNameHasBeenSet; }
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>
51 CreateAssetModelRequest& WithAssetModelName(AssetModelNameT&& value) { SetAssetModelName(std::forward<AssetModelNameT>(value)); return *this;}
53
55
62 inline AssetModelType GetAssetModelType() const { return m_assetModelType; }
63 inline bool AssetModelTypeHasBeenSet() const { return m_assetModelTypeHasBeenSet; }
64 inline void SetAssetModelType(AssetModelType value) { m_assetModelTypeHasBeenSet = true; m_assetModelType = value; }
67
69
75 inline const Aws::String& GetAssetModelId() const { return m_assetModelId; }
76 inline bool AssetModelIdHasBeenSet() const { return m_assetModelIdHasBeenSet; }
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>
80 CreateAssetModelRequest& WithAssetModelId(AssetModelIdT&& value) { SetAssetModelId(std::forward<AssetModelIdT>(value)); return *this;}
82
84
90 inline const Aws::String& GetAssetModelExternalId() const { return m_assetModelExternalId; }
91 inline bool AssetModelExternalIdHasBeenSet() const { return m_assetModelExternalIdHasBeenSet; }
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>
95 CreateAssetModelRequest& WithAssetModelExternalId(AssetModelExternalIdT&& value) { SetAssetModelExternalId(std::forward<AssetModelExternalIdT>(value)); return *this;}
97
99
102 inline const Aws::String& GetAssetModelDescription() const { return m_assetModelDescription; }
103 inline bool AssetModelDescriptionHasBeenSet() const { return m_assetModelDescriptionHasBeenSet; }
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>
107 CreateAssetModelRequest& WithAssetModelDescription(AssetModelDescriptionT&& value) { SetAssetModelDescription(std::forward<AssetModelDescriptionT>(value)); return *this;}
109
111
119 inline const Aws::Vector<AssetModelPropertyDefinition>& GetAssetModelProperties() const { return m_assetModelProperties; }
120 inline bool AssetModelPropertiesHasBeenSet() const { return m_assetModelPropertiesHasBeenSet; }
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>>
124 CreateAssetModelRequest& WithAssetModelProperties(AssetModelPropertiesT&& value) { SetAssetModelProperties(std::forward<AssetModelPropertiesT>(value)); return *this;}
125 template<typename AssetModelPropertiesT = AssetModelPropertyDefinition>
126 CreateAssetModelRequest& AddAssetModelProperties(AssetModelPropertiesT&& value) { m_assetModelPropertiesHasBeenSet = true; m_assetModelProperties.emplace_back(std::forward<AssetModelPropertiesT>(value)); return *this; }
128
130
140 inline const Aws::Vector<AssetModelHierarchyDefinition>& GetAssetModelHierarchies() const { return m_assetModelHierarchies; }
141 inline bool AssetModelHierarchiesHasBeenSet() const { return m_assetModelHierarchiesHasBeenSet; }
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>>
145 CreateAssetModelRequest& WithAssetModelHierarchies(AssetModelHierarchiesT&& value) { SetAssetModelHierarchies(std::forward<AssetModelHierarchiesT>(value)); return *this;}
146 template<typename AssetModelHierarchiesT = AssetModelHierarchyDefinition>
147 CreateAssetModelRequest& AddAssetModelHierarchies(AssetModelHierarchiesT&& value) { m_assetModelHierarchiesHasBeenSet = true; m_assetModelHierarchies.emplace_back(std::forward<AssetModelHierarchiesT>(value)); return *this; }
149
151
164 inline const Aws::Vector<AssetModelCompositeModelDefinition>& GetAssetModelCompositeModels() const { return m_assetModelCompositeModels; }
165 inline bool AssetModelCompositeModelsHasBeenSet() const { return m_assetModelCompositeModelsHasBeenSet; }
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>>
169 CreateAssetModelRequest& WithAssetModelCompositeModels(AssetModelCompositeModelsT&& value) { SetAssetModelCompositeModels(std::forward<AssetModelCompositeModelsT>(value)); return *this;}
170 template<typename AssetModelCompositeModelsT = AssetModelCompositeModelDefinition>
171 CreateAssetModelRequest& AddAssetModelCompositeModels(AssetModelCompositeModelsT&& value) { m_assetModelCompositeModelsHasBeenSet = true; m_assetModelCompositeModels.emplace_back(std::forward<AssetModelCompositeModelsT>(value)); return *this; }
173
175
180 inline const Aws::String& GetClientToken() const { return m_clientToken; }
181 inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; }
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>
185 CreateAssetModelRequest& WithClientToken(ClientTokenT&& value) { SetClientToken(std::forward<ClientTokenT>(value)); return *this;}
187
189
195 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
196 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
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>>
200 CreateAssetModelRequest& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
201 template<typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
202 CreateAssetModelRequest& AddTags(TagsKeyT&& key, TagsValueT&& value) {
203 m_tagsHasBeenSet = true; m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value)); return *this;
204 }
206 private:
207
208 Aws::String m_assetModelName;
209 bool m_assetModelNameHasBeenSet = false;
210
211 AssetModelType m_assetModelType{AssetModelType::NOT_SET};
212 bool m_assetModelTypeHasBeenSet = false;
213
214 Aws::String m_assetModelId;
215 bool m_assetModelIdHasBeenSet = false;
216
217 Aws::String m_assetModelExternalId;
218 bool m_assetModelExternalIdHasBeenSet = false;
219
220 Aws::String m_assetModelDescription;
221 bool m_assetModelDescriptionHasBeenSet = false;
222
223 Aws::Vector<AssetModelPropertyDefinition> m_assetModelProperties;
224 bool m_assetModelPropertiesHasBeenSet = false;
225
226 Aws::Vector<AssetModelHierarchyDefinition> m_assetModelHierarchies;
227 bool m_assetModelHierarchiesHasBeenSet = false;
228
229 Aws::Vector<AssetModelCompositeModelDefinition> m_assetModelCompositeModels;
230 bool m_assetModelCompositeModelsHasBeenSet = false;
231
233 bool m_clientTokenHasBeenSet = true;
234
236 bool m_tagsHasBeenSet = false;
237 };
238
239} // namespace Model
240} // namespace IoTSiteWise
241} // namespace Aws
CreateAssetModelRequest & WithAssetModelType(AssetModelType value)
void SetAssetModelCompositeModels(AssetModelCompositeModelsT &&value)
CreateAssetModelRequest & WithAssetModelProperties(AssetModelPropertiesT &&value)
void SetAssetModelExternalId(AssetModelExternalIdT &&value)
CreateAssetModelRequest & WithAssetModelCompositeModels(AssetModelCompositeModelsT &&value)
CreateAssetModelRequest & WithTags(TagsT &&value)
CreateAssetModelRequest & WithAssetModelId(AssetModelIdT &&value)
void SetAssetModelDescription(AssetModelDescriptionT &&value)
CreateAssetModelRequest & AddAssetModelCompositeModels(AssetModelCompositeModelsT &&value)
const Aws::Vector< AssetModelPropertyDefinition > & GetAssetModelProperties() const
CreateAssetModelRequest & WithAssetModelDescription(AssetModelDescriptionT &&value)
CreateAssetModelRequest & WithClientToken(ClientTokenT &&value)
CreateAssetModelRequest & WithAssetModelExternalId(AssetModelExternalIdT &&value)
AWS_IOTSITEWISE_API CreateAssetModelRequest()=default
void SetAssetModelProperties(AssetModelPropertiesT &&value)
const Aws::Vector< AssetModelCompositeModelDefinition > & GetAssetModelCompositeModels() const
virtual const char * GetServiceRequestName() const override
CreateAssetModelRequest & AddAssetModelProperties(AssetModelPropertiesT &&value)
CreateAssetModelRequest & AddAssetModelHierarchies(AssetModelHierarchiesT &&value)
CreateAssetModelRequest & WithAssetModelName(AssetModelNameT &&value)
const Aws::Vector< AssetModelHierarchyDefinition > & GetAssetModelHierarchies() const
CreateAssetModelRequest & AddTags(TagsKeyT &&key, TagsValueT &&value)
void SetAssetModelHierarchies(AssetModelHierarchiesT &&value)
AWS_IOTSITEWISE_API Aws::String SerializePayload() const override
const Aws::Map< Aws::String, Aws::String > & GetTags() 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