1 /** 2 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. 3 * SPDX-License-Identifier: Apache-2.0. 4 */ 5 6 #pragma once 7 #include <aws/sagemaker/SageMaker_EXPORTS.h> 8 #include <aws/sagemaker/SageMakerRequest.h> 9 #include <aws/core/utils/memory/stl/AWSString.h> 10 #include <aws/sagemaker/model/ArtifactSource.h> 11 #include <aws/core/utils/memory/stl/AWSMap.h> 12 #include <aws/sagemaker/model/MetadataProperties.h> 13 #include <aws/core/utils/memory/stl/AWSVector.h> 14 #include <aws/sagemaker/model/Tag.h> 15 #include <utility> 16 17 namespace Aws 18 { 19 namespace SageMaker 20 { 21 namespace Model 22 { 23 24 /** 25 */ 26 class AWS_SAGEMAKER_API CreateArtifactRequest : public SageMakerRequest 27 { 28 public: 29 CreateArtifactRequest(); 30 31 // Service request name is the Operation name which will send this request out, 32 // each operation should has unique request name, so that we can get operation's name from this request. 33 // Note: this is not true for response, multiple operations may have the same response name, 34 // so we can not get operation's name from response. GetServiceRequestName()35 inline virtual const char* GetServiceRequestName() const override { return "CreateArtifact"; } 36 37 Aws::String SerializePayload() const override; 38 39 Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; 40 41 42 /** 43 * <p>The name of the artifact. Must be unique to your account in an Amazon Web 44 * Services Region.</p> 45 */ GetArtifactName()46 inline const Aws::String& GetArtifactName() const{ return m_artifactName; } 47 48 /** 49 * <p>The name of the artifact. Must be unique to your account in an Amazon Web 50 * Services Region.</p> 51 */ ArtifactNameHasBeenSet()52 inline bool ArtifactNameHasBeenSet() const { return m_artifactNameHasBeenSet; } 53 54 /** 55 * <p>The name of the artifact. Must be unique to your account in an Amazon Web 56 * Services Region.</p> 57 */ SetArtifactName(const Aws::String & value)58 inline void SetArtifactName(const Aws::String& value) { m_artifactNameHasBeenSet = true; m_artifactName = value; } 59 60 /** 61 * <p>The name of the artifact. Must be unique to your account in an Amazon Web 62 * Services Region.</p> 63 */ SetArtifactName(Aws::String && value)64 inline void SetArtifactName(Aws::String&& value) { m_artifactNameHasBeenSet = true; m_artifactName = std::move(value); } 65 66 /** 67 * <p>The name of the artifact. Must be unique to your account in an Amazon Web 68 * Services Region.</p> 69 */ SetArtifactName(const char * value)70 inline void SetArtifactName(const char* value) { m_artifactNameHasBeenSet = true; m_artifactName.assign(value); } 71 72 /** 73 * <p>The name of the artifact. Must be unique to your account in an Amazon Web 74 * Services Region.</p> 75 */ WithArtifactName(const Aws::String & value)76 inline CreateArtifactRequest& WithArtifactName(const Aws::String& value) { SetArtifactName(value); return *this;} 77 78 /** 79 * <p>The name of the artifact. Must be unique to your account in an Amazon Web 80 * Services Region.</p> 81 */ WithArtifactName(Aws::String && value)82 inline CreateArtifactRequest& WithArtifactName(Aws::String&& value) { SetArtifactName(std::move(value)); return *this;} 83 84 /** 85 * <p>The name of the artifact. Must be unique to your account in an Amazon Web 86 * Services Region.</p> 87 */ WithArtifactName(const char * value)88 inline CreateArtifactRequest& WithArtifactName(const char* value) { SetArtifactName(value); return *this;} 89 90 91 /** 92 * <p>The ID, ID type, and URI of the source.</p> 93 */ GetSource()94 inline const ArtifactSource& GetSource() const{ return m_source; } 95 96 /** 97 * <p>The ID, ID type, and URI of the source.</p> 98 */ SourceHasBeenSet()99 inline bool SourceHasBeenSet() const { return m_sourceHasBeenSet; } 100 101 /** 102 * <p>The ID, ID type, and URI of the source.</p> 103 */ SetSource(const ArtifactSource & value)104 inline void SetSource(const ArtifactSource& value) { m_sourceHasBeenSet = true; m_source = value; } 105 106 /** 107 * <p>The ID, ID type, and URI of the source.</p> 108 */ SetSource(ArtifactSource && value)109 inline void SetSource(ArtifactSource&& value) { m_sourceHasBeenSet = true; m_source = std::move(value); } 110 111 /** 112 * <p>The ID, ID type, and URI of the source.</p> 113 */ WithSource(const ArtifactSource & value)114 inline CreateArtifactRequest& WithSource(const ArtifactSource& value) { SetSource(value); return *this;} 115 116 /** 117 * <p>The ID, ID type, and URI of the source.</p> 118 */ WithSource(ArtifactSource && value)119 inline CreateArtifactRequest& WithSource(ArtifactSource&& value) { SetSource(std::move(value)); return *this;} 120 121 122 /** 123 * <p>The artifact type.</p> 124 */ GetArtifactType()125 inline const Aws::String& GetArtifactType() const{ return m_artifactType; } 126 127 /** 128 * <p>The artifact type.</p> 129 */ ArtifactTypeHasBeenSet()130 inline bool ArtifactTypeHasBeenSet() const { return m_artifactTypeHasBeenSet; } 131 132 /** 133 * <p>The artifact type.</p> 134 */ SetArtifactType(const Aws::String & value)135 inline void SetArtifactType(const Aws::String& value) { m_artifactTypeHasBeenSet = true; m_artifactType = value; } 136 137 /** 138 * <p>The artifact type.</p> 139 */ SetArtifactType(Aws::String && value)140 inline void SetArtifactType(Aws::String&& value) { m_artifactTypeHasBeenSet = true; m_artifactType = std::move(value); } 141 142 /** 143 * <p>The artifact type.</p> 144 */ SetArtifactType(const char * value)145 inline void SetArtifactType(const char* value) { m_artifactTypeHasBeenSet = true; m_artifactType.assign(value); } 146 147 /** 148 * <p>The artifact type.</p> 149 */ WithArtifactType(const Aws::String & value)150 inline CreateArtifactRequest& WithArtifactType(const Aws::String& value) { SetArtifactType(value); return *this;} 151 152 /** 153 * <p>The artifact type.</p> 154 */ WithArtifactType(Aws::String && value)155 inline CreateArtifactRequest& WithArtifactType(Aws::String&& value) { SetArtifactType(std::move(value)); return *this;} 156 157 /** 158 * <p>The artifact type.</p> 159 */ WithArtifactType(const char * value)160 inline CreateArtifactRequest& WithArtifactType(const char* value) { SetArtifactType(value); return *this;} 161 162 163 /** 164 * <p>A list of properties to add to the artifact.</p> 165 */ GetProperties()166 inline const Aws::Map<Aws::String, Aws::String>& GetProperties() const{ return m_properties; } 167 168 /** 169 * <p>A list of properties to add to the artifact.</p> 170 */ PropertiesHasBeenSet()171 inline bool PropertiesHasBeenSet() const { return m_propertiesHasBeenSet; } 172 173 /** 174 * <p>A list of properties to add to the artifact.</p> 175 */ SetProperties(const Aws::Map<Aws::String,Aws::String> & value)176 inline void SetProperties(const Aws::Map<Aws::String, Aws::String>& value) { m_propertiesHasBeenSet = true; m_properties = value; } 177 178 /** 179 * <p>A list of properties to add to the artifact.</p> 180 */ SetProperties(Aws::Map<Aws::String,Aws::String> && value)181 inline void SetProperties(Aws::Map<Aws::String, Aws::String>&& value) { m_propertiesHasBeenSet = true; m_properties = std::move(value); } 182 183 /** 184 * <p>A list of properties to add to the artifact.</p> 185 */ WithProperties(const Aws::Map<Aws::String,Aws::String> & value)186 inline CreateArtifactRequest& WithProperties(const Aws::Map<Aws::String, Aws::String>& value) { SetProperties(value); return *this;} 187 188 /** 189 * <p>A list of properties to add to the artifact.</p> 190 */ WithProperties(Aws::Map<Aws::String,Aws::String> && value)191 inline CreateArtifactRequest& WithProperties(Aws::Map<Aws::String, Aws::String>&& value) { SetProperties(std::move(value)); return *this;} 192 193 /** 194 * <p>A list of properties to add to the artifact.</p> 195 */ AddProperties(const Aws::String & key,const Aws::String & value)196 inline CreateArtifactRequest& AddProperties(const Aws::String& key, const Aws::String& value) { m_propertiesHasBeenSet = true; m_properties.emplace(key, value); return *this; } 197 198 /** 199 * <p>A list of properties to add to the artifact.</p> 200 */ AddProperties(Aws::String && key,const Aws::String & value)201 inline CreateArtifactRequest& AddProperties(Aws::String&& key, const Aws::String& value) { m_propertiesHasBeenSet = true; m_properties.emplace(std::move(key), value); return *this; } 202 203 /** 204 * <p>A list of properties to add to the artifact.</p> 205 */ AddProperties(const Aws::String & key,Aws::String && value)206 inline CreateArtifactRequest& AddProperties(const Aws::String& key, Aws::String&& value) { m_propertiesHasBeenSet = true; m_properties.emplace(key, std::move(value)); return *this; } 207 208 /** 209 * <p>A list of properties to add to the artifact.</p> 210 */ AddProperties(Aws::String && key,Aws::String && value)211 inline CreateArtifactRequest& AddProperties(Aws::String&& key, Aws::String&& value) { m_propertiesHasBeenSet = true; m_properties.emplace(std::move(key), std::move(value)); return *this; } 212 213 /** 214 * <p>A list of properties to add to the artifact.</p> 215 */ AddProperties(const char * key,Aws::String && value)216 inline CreateArtifactRequest& AddProperties(const char* key, Aws::String&& value) { m_propertiesHasBeenSet = true; m_properties.emplace(key, std::move(value)); return *this; } 217 218 /** 219 * <p>A list of properties to add to the artifact.</p> 220 */ AddProperties(Aws::String && key,const char * value)221 inline CreateArtifactRequest& AddProperties(Aws::String&& key, const char* value) { m_propertiesHasBeenSet = true; m_properties.emplace(std::move(key), value); return *this; } 222 223 /** 224 * <p>A list of properties to add to the artifact.</p> 225 */ AddProperties(const char * key,const char * value)226 inline CreateArtifactRequest& AddProperties(const char* key, const char* value) { m_propertiesHasBeenSet = true; m_properties.emplace(key, value); return *this; } 227 228 229 GetMetadataProperties()230 inline const MetadataProperties& GetMetadataProperties() const{ return m_metadataProperties; } 231 232 MetadataPropertiesHasBeenSet()233 inline bool MetadataPropertiesHasBeenSet() const { return m_metadataPropertiesHasBeenSet; } 234 235 SetMetadataProperties(const MetadataProperties & value)236 inline void SetMetadataProperties(const MetadataProperties& value) { m_metadataPropertiesHasBeenSet = true; m_metadataProperties = value; } 237 238 SetMetadataProperties(MetadataProperties && value)239 inline void SetMetadataProperties(MetadataProperties&& value) { m_metadataPropertiesHasBeenSet = true; m_metadataProperties = std::move(value); } 240 241 WithMetadataProperties(const MetadataProperties & value)242 inline CreateArtifactRequest& WithMetadataProperties(const MetadataProperties& value) { SetMetadataProperties(value); return *this;} 243 244 WithMetadataProperties(MetadataProperties && value)245 inline CreateArtifactRequest& WithMetadataProperties(MetadataProperties&& value) { SetMetadataProperties(std::move(value)); return *this;} 246 247 248 /** 249 * <p>A list of tags to apply to the artifact.</p> 250 */ GetTags()251 inline const Aws::Vector<Tag>& GetTags() const{ return m_tags; } 252 253 /** 254 * <p>A list of tags to apply to the artifact.</p> 255 */ TagsHasBeenSet()256 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } 257 258 /** 259 * <p>A list of tags to apply to the artifact.</p> 260 */ SetTags(const Aws::Vector<Tag> & value)261 inline void SetTags(const Aws::Vector<Tag>& value) { m_tagsHasBeenSet = true; m_tags = value; } 262 263 /** 264 * <p>A list of tags to apply to the artifact.</p> 265 */ SetTags(Aws::Vector<Tag> && value)266 inline void SetTags(Aws::Vector<Tag>&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); } 267 268 /** 269 * <p>A list of tags to apply to the artifact.</p> 270 */ WithTags(const Aws::Vector<Tag> & value)271 inline CreateArtifactRequest& WithTags(const Aws::Vector<Tag>& value) { SetTags(value); return *this;} 272 273 /** 274 * <p>A list of tags to apply to the artifact.</p> 275 */ WithTags(Aws::Vector<Tag> && value)276 inline CreateArtifactRequest& WithTags(Aws::Vector<Tag>&& value) { SetTags(std::move(value)); return *this;} 277 278 /** 279 * <p>A list of tags to apply to the artifact.</p> 280 */ AddTags(const Tag & value)281 inline CreateArtifactRequest& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; } 282 283 /** 284 * <p>A list of tags to apply to the artifact.</p> 285 */ AddTags(Tag && value)286 inline CreateArtifactRequest& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; } 287 288 private: 289 290 Aws::String m_artifactName; 291 bool m_artifactNameHasBeenSet; 292 293 ArtifactSource m_source; 294 bool m_sourceHasBeenSet; 295 296 Aws::String m_artifactType; 297 bool m_artifactTypeHasBeenSet; 298 299 Aws::Map<Aws::String, Aws::String> m_properties; 300 bool m_propertiesHasBeenSet; 301 302 MetadataProperties m_metadataProperties; 303 bool m_metadataPropertiesHasBeenSet; 304 305 Aws::Vector<Tag> m_tags; 306 bool m_tagsHasBeenSet; 307 }; 308 309 } // namespace Model 310 } // namespace SageMaker 311 } // namespace Aws 312