7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/sagemaker/SageMaker_EXPORTS.h>
11#include <aws/sagemaker/model/ContainerDefinition.h>
12#include <aws/sagemaker/model/DeploymentRecommendation.h>
13#include <aws/sagemaker/model/InferenceExecutionConfig.h>
14#include <aws/sagemaker/model/Tag.h>
15#include <aws/sagemaker/model/VpcConfig.h>
38 AWS_SAGEMAKER_API
Model() =
default;
49 template <
typename ModelNameT = Aws::String>
51 m_modelNameHasBeenSet =
true;
52 m_modelName = std::forward<ModelNameT>(value);
54 template <
typename ModelNameT = Aws::String>
65 template <
typename PrimaryContainerT = ContainerDefinition>
67 m_primaryContainerHasBeenSet =
true;
68 m_primaryContainer = std::forward<PrimaryContainerT>(value);
70 template <
typename PrimaryContainerT = ContainerDefinition>
83 template <
typename ContainersT = Aws::Vector<ContainerDefinition>>
85 m_containersHasBeenSet =
true;
86 m_containers = std::forward<ContainersT>(value);
88 template <
typename ContainersT = Aws::Vector<ContainerDefinition>>
93 template <
typename ContainersT = ContainerDefinition>
95 m_containersHasBeenSet =
true;
96 m_containers.emplace_back(std::forward<ContainersT>(value));
105 template <
typename InferenceExecutionConfigT = InferenceExecutionConfig>
107 m_inferenceExecutionConfigHasBeenSet =
true;
108 m_inferenceExecutionConfig = std::forward<InferenceExecutionConfigT>(value);
110 template <
typename InferenceExecutionConfigT = InferenceExecutionConfig>
124 template <
typename ExecutionRoleArnT = Aws::String>
126 m_executionRoleArnHasBeenSet =
true;
127 m_executionRoleArn = std::forward<ExecutionRoleArnT>(value);
129 template <
typename ExecutionRoleArnT = Aws::String>
140 template <
typename VpcConfigT = VpcConfig>
142 m_vpcConfigHasBeenSet =
true;
143 m_vpcConfig = std::forward<VpcConfigT>(value);
145 template <
typename VpcConfigT = VpcConfig>
158 template <
typename CreationTimeT = Aws::Utils::DateTime>
160 m_creationTimeHasBeenSet =
true;
161 m_creationTime = std::forward<CreationTimeT>(value);
163 template <
typename CreationTimeT = Aws::Utils::DateTime>
176 template <
typename ModelArnT = Aws::String>
178 m_modelArnHasBeenSet =
true;
179 m_modelArn = std::forward<ModelArnT>(value);
181 template <
typename ModelArnT = Aws::String>
196 m_enableNetworkIsolationHasBeenSet =
true;
197 m_enableNetworkIsolation = value;
215 template <
typename TagsT = Aws::Vector<Tag>>
217 m_tagsHasBeenSet =
true;
218 m_tags = std::forward<TagsT>(value);
220 template <
typename TagsT = Aws::Vector<Tag>>
222 SetTags(std::forward<TagsT>(value));
225 template <
typename TagsT = Tag>
227 m_tagsHasBeenSet =
true;
228 m_tags.emplace_back(std::forward<TagsT>(value));
239 template <
typename DeploymentRecommendationT = DeploymentRecommendation>
241 m_deploymentRecommendationHasBeenSet =
true;
242 m_deploymentRecommendation = std::forward<DeploymentRecommendationT>(value);
244 template <
typename DeploymentRecommendationT = DeploymentRecommendation>
267 bool m_enableNetworkIsolation{
false};
271 DeploymentRecommendation m_deploymentRecommendation;
272 bool m_modelNameHasBeenSet =
false;
273 bool m_primaryContainerHasBeenSet =
false;
274 bool m_containersHasBeenSet =
false;
275 bool m_inferenceExecutionConfigHasBeenSet =
false;
276 bool m_executionRoleArnHasBeenSet =
false;
277 bool m_vpcConfigHasBeenSet =
false;
278 bool m_creationTimeHasBeenSet =
false;
279 bool m_modelArnHasBeenSet =
false;
280 bool m_enableNetworkIsolationHasBeenSet =
false;
281 bool m_tagsHasBeenSet =
false;
282 bool m_deploymentRecommendationHasBeenSet =
false;
void SetPrimaryContainer(PrimaryContainerT &&value)
void SetModelName(ModelNameT &&value)
bool VpcConfigHasBeenSet() const
const DeploymentRecommendation & GetDeploymentRecommendation() const
bool EnableNetworkIsolationHasBeenSet() const
bool GetEnableNetworkIsolation() const
Model & WithCreationTime(CreationTimeT &&value)
const Aws::String & GetModelName() const
void SetModelArn(ModelArnT &&value)
Model & WithModelArn(ModelArnT &&value)
void SetTags(TagsT &&value)
Model & WithDeploymentRecommendation(DeploymentRecommendationT &&value)
void SetCreationTime(CreationTimeT &&value)
bool InferenceExecutionConfigHasBeenSet() const
AWS_SAGEMAKER_API Model()=default
const Aws::Vector< ContainerDefinition > & GetContainers() const
Model & WithModelName(ModelNameT &&value)
void SetContainers(ContainersT &&value)
AWS_SAGEMAKER_API Model(Aws::Utils::Json::JsonView jsonValue)
bool CreationTimeHasBeenSet() const
void SetDeploymentRecommendation(DeploymentRecommendationT &&value)
void SetEnableNetworkIsolation(bool value)
void SetInferenceExecutionConfig(InferenceExecutionConfigT &&value)
void SetVpcConfig(VpcConfigT &&value)
bool PrimaryContainerHasBeenSet() const
void SetExecutionRoleArn(ExecutionRoleArnT &&value)
const Aws::Utils::DateTime & GetCreationTime() const
Model & WithPrimaryContainer(PrimaryContainerT &&value)
Model & WithVpcConfig(VpcConfigT &&value)
Model & WithInferenceExecutionConfig(InferenceExecutionConfigT &&value)
Model & WithEnableNetworkIsolation(bool value)
bool ModelNameHasBeenSet() const
Model & AddContainers(ContainersT &&value)
AWS_SAGEMAKER_API Model & operator=(Aws::Utils::Json::JsonView jsonValue)
Model & WithTags(TagsT &&value)
bool TagsHasBeenSet() const
bool ModelArnHasBeenSet() const
Model & WithContainers(ContainersT &&value)
const Aws::String & GetExecutionRoleArn() const
const ContainerDefinition & GetPrimaryContainer() const
Model & WithExecutionRoleArn(ExecutionRoleArnT &&value)
const Aws::String & GetModelArn() const
bool ExecutionRoleArnHasBeenSet() const
const Aws::Vector< Tag > & GetTags() const
const VpcConfig & GetVpcConfig() const
const InferenceExecutionConfig & GetInferenceExecutionConfig() const
AWS_SAGEMAKER_API Aws::Utils::Json::JsonValue Jsonize() const
bool DeploymentRecommendationHasBeenSet() const
Model & AddTags(TagsT &&value)
bool ContainersHasBeenSet() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue