/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace SageMaker { namespace Model { /** *

A hosted endpoint for real-time inference.

See Also:

AWS * API Reference

*/ class Endpoint { public: AWS_SAGEMAKER_API Endpoint(); AWS_SAGEMAKER_API Endpoint(Aws::Utils::Json::JsonView jsonValue); AWS_SAGEMAKER_API Endpoint& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_SAGEMAKER_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The name of the endpoint.

*/ inline const Aws::String& GetEndpointName() const{ return m_endpointName; } /** *

The name of the endpoint.

*/ inline bool EndpointNameHasBeenSet() const { return m_endpointNameHasBeenSet; } /** *

The name of the endpoint.

*/ inline void SetEndpointName(const Aws::String& value) { m_endpointNameHasBeenSet = true; m_endpointName = value; } /** *

The name of the endpoint.

*/ inline void SetEndpointName(Aws::String&& value) { m_endpointNameHasBeenSet = true; m_endpointName = std::move(value); } /** *

The name of the endpoint.

*/ inline void SetEndpointName(const char* value) { m_endpointNameHasBeenSet = true; m_endpointName.assign(value); } /** *

The name of the endpoint.

*/ inline Endpoint& WithEndpointName(const Aws::String& value) { SetEndpointName(value); return *this;} /** *

The name of the endpoint.

*/ inline Endpoint& WithEndpointName(Aws::String&& value) { SetEndpointName(std::move(value)); return *this;} /** *

The name of the endpoint.

*/ inline Endpoint& WithEndpointName(const char* value) { SetEndpointName(value); return *this;} /** *

The Amazon Resource Name (ARN) of the endpoint.

*/ inline const Aws::String& GetEndpointArn() const{ return m_endpointArn; } /** *

The Amazon Resource Name (ARN) of the endpoint.

*/ inline bool EndpointArnHasBeenSet() const { return m_endpointArnHasBeenSet; } /** *

The Amazon Resource Name (ARN) of the endpoint.

*/ inline void SetEndpointArn(const Aws::String& value) { m_endpointArnHasBeenSet = true; m_endpointArn = value; } /** *

The Amazon Resource Name (ARN) of the endpoint.

*/ inline void SetEndpointArn(Aws::String&& value) { m_endpointArnHasBeenSet = true; m_endpointArn = std::move(value); } /** *

The Amazon Resource Name (ARN) of the endpoint.

*/ inline void SetEndpointArn(const char* value) { m_endpointArnHasBeenSet = true; m_endpointArn.assign(value); } /** *

The Amazon Resource Name (ARN) of the endpoint.

*/ inline Endpoint& WithEndpointArn(const Aws::String& value) { SetEndpointArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the endpoint.

*/ inline Endpoint& WithEndpointArn(Aws::String&& value) { SetEndpointArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the endpoint.

*/ inline Endpoint& WithEndpointArn(const char* value) { SetEndpointArn(value); return *this;} /** *

The endpoint configuration associated with the endpoint.

*/ inline const Aws::String& GetEndpointConfigName() const{ return m_endpointConfigName; } /** *

The endpoint configuration associated with the endpoint.

*/ inline bool EndpointConfigNameHasBeenSet() const { return m_endpointConfigNameHasBeenSet; } /** *

The endpoint configuration associated with the endpoint.

*/ inline void SetEndpointConfigName(const Aws::String& value) { m_endpointConfigNameHasBeenSet = true; m_endpointConfigName = value; } /** *

The endpoint configuration associated with the endpoint.

*/ inline void SetEndpointConfigName(Aws::String&& value) { m_endpointConfigNameHasBeenSet = true; m_endpointConfigName = std::move(value); } /** *

The endpoint configuration associated with the endpoint.

*/ inline void SetEndpointConfigName(const char* value) { m_endpointConfigNameHasBeenSet = true; m_endpointConfigName.assign(value); } /** *

The endpoint configuration associated with the endpoint.

*/ inline Endpoint& WithEndpointConfigName(const Aws::String& value) { SetEndpointConfigName(value); return *this;} /** *

The endpoint configuration associated with the endpoint.

*/ inline Endpoint& WithEndpointConfigName(Aws::String&& value) { SetEndpointConfigName(std::move(value)); return *this;} /** *

The endpoint configuration associated with the endpoint.

*/ inline Endpoint& WithEndpointConfigName(const char* value) { SetEndpointConfigName(value); return *this;} /** *

A list of the production variants hosted on the endpoint. Each production * variant is a model.

*/ inline const Aws::Vector& GetProductionVariants() const{ return m_productionVariants; } /** *

A list of the production variants hosted on the endpoint. Each production * variant is a model.

*/ inline bool ProductionVariantsHasBeenSet() const { return m_productionVariantsHasBeenSet; } /** *

A list of the production variants hosted on the endpoint. Each production * variant is a model.

*/ inline void SetProductionVariants(const Aws::Vector& value) { m_productionVariantsHasBeenSet = true; m_productionVariants = value; } /** *

A list of the production variants hosted on the endpoint. Each production * variant is a model.

*/ inline void SetProductionVariants(Aws::Vector&& value) { m_productionVariantsHasBeenSet = true; m_productionVariants = std::move(value); } /** *

A list of the production variants hosted on the endpoint. Each production * variant is a model.

*/ inline Endpoint& WithProductionVariants(const Aws::Vector& value) { SetProductionVariants(value); return *this;} /** *

A list of the production variants hosted on the endpoint. Each production * variant is a model.

*/ inline Endpoint& WithProductionVariants(Aws::Vector&& value) { SetProductionVariants(std::move(value)); return *this;} /** *

A list of the production variants hosted on the endpoint. Each production * variant is a model.

*/ inline Endpoint& AddProductionVariants(const ProductionVariantSummary& value) { m_productionVariantsHasBeenSet = true; m_productionVariants.push_back(value); return *this; } /** *

A list of the production variants hosted on the endpoint. Each production * variant is a model.

*/ inline Endpoint& AddProductionVariants(ProductionVariantSummary&& value) { m_productionVariantsHasBeenSet = true; m_productionVariants.push_back(std::move(value)); return *this; } inline const DataCaptureConfigSummary& GetDataCaptureConfig() const{ return m_dataCaptureConfig; } inline bool DataCaptureConfigHasBeenSet() const { return m_dataCaptureConfigHasBeenSet; } inline void SetDataCaptureConfig(const DataCaptureConfigSummary& value) { m_dataCaptureConfigHasBeenSet = true; m_dataCaptureConfig = value; } inline void SetDataCaptureConfig(DataCaptureConfigSummary&& value) { m_dataCaptureConfigHasBeenSet = true; m_dataCaptureConfig = std::move(value); } inline Endpoint& WithDataCaptureConfig(const DataCaptureConfigSummary& value) { SetDataCaptureConfig(value); return *this;} inline Endpoint& WithDataCaptureConfig(DataCaptureConfigSummary&& value) { SetDataCaptureConfig(std::move(value)); return *this;} /** *

The status of the endpoint.

*/ inline const EndpointStatus& GetEndpointStatus() const{ return m_endpointStatus; } /** *

The status of the endpoint.

*/ inline bool EndpointStatusHasBeenSet() const { return m_endpointStatusHasBeenSet; } /** *

The status of the endpoint.

*/ inline void SetEndpointStatus(const EndpointStatus& value) { m_endpointStatusHasBeenSet = true; m_endpointStatus = value; } /** *

The status of the endpoint.

*/ inline void SetEndpointStatus(EndpointStatus&& value) { m_endpointStatusHasBeenSet = true; m_endpointStatus = std::move(value); } /** *

The status of the endpoint.

*/ inline Endpoint& WithEndpointStatus(const EndpointStatus& value) { SetEndpointStatus(value); return *this;} /** *

The status of the endpoint.

*/ inline Endpoint& WithEndpointStatus(EndpointStatus&& value) { SetEndpointStatus(std::move(value)); return *this;} /** *

If the endpoint failed, the reason it failed.

*/ inline const Aws::String& GetFailureReason() const{ return m_failureReason; } /** *

If the endpoint failed, the reason it failed.

*/ inline bool FailureReasonHasBeenSet() const { return m_failureReasonHasBeenSet; } /** *

If the endpoint failed, the reason it failed.

*/ inline void SetFailureReason(const Aws::String& value) { m_failureReasonHasBeenSet = true; m_failureReason = value; } /** *

If the endpoint failed, the reason it failed.

*/ inline void SetFailureReason(Aws::String&& value) { m_failureReasonHasBeenSet = true; m_failureReason = std::move(value); } /** *

If the endpoint failed, the reason it failed.

*/ inline void SetFailureReason(const char* value) { m_failureReasonHasBeenSet = true; m_failureReason.assign(value); } /** *

If the endpoint failed, the reason it failed.

*/ inline Endpoint& WithFailureReason(const Aws::String& value) { SetFailureReason(value); return *this;} /** *

If the endpoint failed, the reason it failed.

*/ inline Endpoint& WithFailureReason(Aws::String&& value) { SetFailureReason(std::move(value)); return *this;} /** *

If the endpoint failed, the reason it failed.

*/ inline Endpoint& WithFailureReason(const char* value) { SetFailureReason(value); return *this;} /** *

The time that the endpoint was created.

*/ inline const Aws::Utils::DateTime& GetCreationTime() const{ return m_creationTime; } /** *

The time that the endpoint was created.

*/ inline bool CreationTimeHasBeenSet() const { return m_creationTimeHasBeenSet; } /** *

The time that the endpoint was created.

*/ inline void SetCreationTime(const Aws::Utils::DateTime& value) { m_creationTimeHasBeenSet = true; m_creationTime = value; } /** *

The time that the endpoint was created.

*/ inline void SetCreationTime(Aws::Utils::DateTime&& value) { m_creationTimeHasBeenSet = true; m_creationTime = std::move(value); } /** *

The time that the endpoint was created.

*/ inline Endpoint& WithCreationTime(const Aws::Utils::DateTime& value) { SetCreationTime(value); return *this;} /** *

The time that the endpoint was created.

*/ inline Endpoint& WithCreationTime(Aws::Utils::DateTime&& value) { SetCreationTime(std::move(value)); return *this;} /** *

The last time the endpoint was modified.

*/ inline const Aws::Utils::DateTime& GetLastModifiedTime() const{ return m_lastModifiedTime; } /** *

The last time the endpoint was modified.

*/ inline bool LastModifiedTimeHasBeenSet() const { return m_lastModifiedTimeHasBeenSet; } /** *

The last time the endpoint was modified.

*/ inline void SetLastModifiedTime(const Aws::Utils::DateTime& value) { m_lastModifiedTimeHasBeenSet = true; m_lastModifiedTime = value; } /** *

The last time the endpoint was modified.

*/ inline void SetLastModifiedTime(Aws::Utils::DateTime&& value) { m_lastModifiedTimeHasBeenSet = true; m_lastModifiedTime = std::move(value); } /** *

The last time the endpoint was modified.

*/ inline Endpoint& WithLastModifiedTime(const Aws::Utils::DateTime& value) { SetLastModifiedTime(value); return *this;} /** *

The last time the endpoint was modified.

*/ inline Endpoint& WithLastModifiedTime(Aws::Utils::DateTime&& value) { SetLastModifiedTime(std::move(value)); return *this;} /** *

A list of monitoring schedules for the endpoint. For information about model * monitoring, see Amazon * SageMaker Model Monitor.

*/ inline const Aws::Vector& GetMonitoringSchedules() const{ return m_monitoringSchedules; } /** *

A list of monitoring schedules for the endpoint. For information about model * monitoring, see Amazon * SageMaker Model Monitor.

*/ inline bool MonitoringSchedulesHasBeenSet() const { return m_monitoringSchedulesHasBeenSet; } /** *

A list of monitoring schedules for the endpoint. For information about model * monitoring, see Amazon * SageMaker Model Monitor.

*/ inline void SetMonitoringSchedules(const Aws::Vector& value) { m_monitoringSchedulesHasBeenSet = true; m_monitoringSchedules = value; } /** *

A list of monitoring schedules for the endpoint. For information about model * monitoring, see Amazon * SageMaker Model Monitor.

*/ inline void SetMonitoringSchedules(Aws::Vector&& value) { m_monitoringSchedulesHasBeenSet = true; m_monitoringSchedules = std::move(value); } /** *

A list of monitoring schedules for the endpoint. For information about model * monitoring, see Amazon * SageMaker Model Monitor.

*/ inline Endpoint& WithMonitoringSchedules(const Aws::Vector& value) { SetMonitoringSchedules(value); return *this;} /** *

A list of monitoring schedules for the endpoint. For information about model * monitoring, see Amazon * SageMaker Model Monitor.

*/ inline Endpoint& WithMonitoringSchedules(Aws::Vector&& value) { SetMonitoringSchedules(std::move(value)); return *this;} /** *

A list of monitoring schedules for the endpoint. For information about model * monitoring, see Amazon * SageMaker Model Monitor.

*/ inline Endpoint& AddMonitoringSchedules(const MonitoringSchedule& value) { m_monitoringSchedulesHasBeenSet = true; m_monitoringSchedules.push_back(value); return *this; } /** *

A list of monitoring schedules for the endpoint. For information about model * monitoring, see Amazon * SageMaker Model Monitor.

*/ inline Endpoint& AddMonitoringSchedules(MonitoringSchedule&& value) { m_monitoringSchedulesHasBeenSet = true; m_monitoringSchedules.push_back(std::move(value)); return *this; } /** *

A list of the tags associated with the endpoint. For more information, see Tagging * Amazon Web Services resources in the Amazon Web Services General * Reference Guide.

*/ inline const Aws::Vector& GetTags() const{ return m_tags; } /** *

A list of the tags associated with the endpoint. For more information, see Tagging * Amazon Web Services resources in the Amazon Web Services General * Reference Guide.

*/ inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } /** *

A list of the tags associated with the endpoint. For more information, see Tagging * Amazon Web Services resources in the Amazon Web Services General * Reference Guide.

*/ inline void SetTags(const Aws::Vector& value) { m_tagsHasBeenSet = true; m_tags = value; } /** *

A list of the tags associated with the endpoint. For more information, see Tagging * Amazon Web Services resources in the Amazon Web Services General * Reference Guide.

*/ inline void SetTags(Aws::Vector&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); } /** *

A list of the tags associated with the endpoint. For more information, see Tagging * Amazon Web Services resources in the Amazon Web Services General * Reference Guide.

*/ inline Endpoint& WithTags(const Aws::Vector& value) { SetTags(value); return *this;} /** *

A list of the tags associated with the endpoint. For more information, see Tagging * Amazon Web Services resources in the Amazon Web Services General * Reference Guide.

*/ inline Endpoint& WithTags(Aws::Vector&& value) { SetTags(std::move(value)); return *this;} /** *

A list of the tags associated with the endpoint. For more information, see Tagging * Amazon Web Services resources in the Amazon Web Services General * Reference Guide.

*/ inline Endpoint& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; } /** *

A list of the tags associated with the endpoint. For more information, see Tagging * Amazon Web Services resources in the Amazon Web Services General * Reference Guide.

*/ inline Endpoint& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; } /** *

A list of the shadow variants hosted on the endpoint. Each shadow variant is * a model in shadow mode with production traffic replicated from the production * variant.

*/ inline const Aws::Vector& GetShadowProductionVariants() const{ return m_shadowProductionVariants; } /** *

A list of the shadow variants hosted on the endpoint. Each shadow variant is * a model in shadow mode with production traffic replicated from the production * variant.

*/ inline bool ShadowProductionVariantsHasBeenSet() const { return m_shadowProductionVariantsHasBeenSet; } /** *

A list of the shadow variants hosted on the endpoint. Each shadow variant is * a model in shadow mode with production traffic replicated from the production * variant.

*/ inline void SetShadowProductionVariants(const Aws::Vector& value) { m_shadowProductionVariantsHasBeenSet = true; m_shadowProductionVariants = value; } /** *

A list of the shadow variants hosted on the endpoint. Each shadow variant is * a model in shadow mode with production traffic replicated from the production * variant.

*/ inline void SetShadowProductionVariants(Aws::Vector&& value) { m_shadowProductionVariantsHasBeenSet = true; m_shadowProductionVariants = std::move(value); } /** *

A list of the shadow variants hosted on the endpoint. Each shadow variant is * a model in shadow mode with production traffic replicated from the production * variant.

*/ inline Endpoint& WithShadowProductionVariants(const Aws::Vector& value) { SetShadowProductionVariants(value); return *this;} /** *

A list of the shadow variants hosted on the endpoint. Each shadow variant is * a model in shadow mode with production traffic replicated from the production * variant.

*/ inline Endpoint& WithShadowProductionVariants(Aws::Vector&& value) { SetShadowProductionVariants(std::move(value)); return *this;} /** *

A list of the shadow variants hosted on the endpoint. Each shadow variant is * a model in shadow mode with production traffic replicated from the production * variant.

*/ inline Endpoint& AddShadowProductionVariants(const ProductionVariantSummary& value) { m_shadowProductionVariantsHasBeenSet = true; m_shadowProductionVariants.push_back(value); return *this; } /** *

A list of the shadow variants hosted on the endpoint. Each shadow variant is * a model in shadow mode with production traffic replicated from the production * variant.

*/ inline Endpoint& AddShadowProductionVariants(ProductionVariantSummary&& value) { m_shadowProductionVariantsHasBeenSet = true; m_shadowProductionVariants.push_back(std::move(value)); return *this; } private: Aws::String m_endpointName; bool m_endpointNameHasBeenSet = false; Aws::String m_endpointArn; bool m_endpointArnHasBeenSet = false; Aws::String m_endpointConfigName; bool m_endpointConfigNameHasBeenSet = false; Aws::Vector m_productionVariants; bool m_productionVariantsHasBeenSet = false; DataCaptureConfigSummary m_dataCaptureConfig; bool m_dataCaptureConfigHasBeenSet = false; EndpointStatus m_endpointStatus; bool m_endpointStatusHasBeenSet = false; Aws::String m_failureReason; bool m_failureReasonHasBeenSet = false; Aws::Utils::DateTime m_creationTime; bool m_creationTimeHasBeenSet = false; Aws::Utils::DateTime m_lastModifiedTime; bool m_lastModifiedTimeHasBeenSet = false; Aws::Vector m_monitoringSchedules; bool m_monitoringSchedulesHasBeenSet = false; Aws::Vector m_tags; bool m_tagsHasBeenSet = false; Aws::Vector m_shadowProductionVariants; bool m_shadowProductionVariantsHasBeenSet = false; }; } // namespace Model } // namespace SageMaker } // namespace Aws