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

Specifies weight and capacity values for a production variant.

See * Also:

AWS * API Reference

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

The name of the variant to update.

*/ inline const Aws::String& GetVariantName() const{ return m_variantName; } /** *

The name of the variant to update.

*/ inline bool VariantNameHasBeenSet() const { return m_variantNameHasBeenSet; } /** *

The name of the variant to update.

*/ inline void SetVariantName(const Aws::String& value) { m_variantNameHasBeenSet = true; m_variantName = value; } /** *

The name of the variant to update.

*/ inline void SetVariantName(Aws::String&& value) { m_variantNameHasBeenSet = true; m_variantName = std::move(value); } /** *

The name of the variant to update.

*/ inline void SetVariantName(const char* value) { m_variantNameHasBeenSet = true; m_variantName.assign(value); } /** *

The name of the variant to update.

*/ inline DesiredWeightAndCapacity& WithVariantName(const Aws::String& value) { SetVariantName(value); return *this;} /** *

The name of the variant to update.

*/ inline DesiredWeightAndCapacity& WithVariantName(Aws::String&& value) { SetVariantName(std::move(value)); return *this;} /** *

The name of the variant to update.

*/ inline DesiredWeightAndCapacity& WithVariantName(const char* value) { SetVariantName(value); return *this;} /** *

The variant's weight.

*/ inline double GetDesiredWeight() const{ return m_desiredWeight; } /** *

The variant's weight.

*/ inline bool DesiredWeightHasBeenSet() const { return m_desiredWeightHasBeenSet; } /** *

The variant's weight.

*/ inline void SetDesiredWeight(double value) { m_desiredWeightHasBeenSet = true; m_desiredWeight = value; } /** *

The variant's weight.

*/ inline DesiredWeightAndCapacity& WithDesiredWeight(double value) { SetDesiredWeight(value); return *this;} /** *

The variant's capacity.

*/ inline int GetDesiredInstanceCount() const{ return m_desiredInstanceCount; } /** *

The variant's capacity.

*/ inline bool DesiredInstanceCountHasBeenSet() const { return m_desiredInstanceCountHasBeenSet; } /** *

The variant's capacity.

*/ inline void SetDesiredInstanceCount(int value) { m_desiredInstanceCountHasBeenSet = true; m_desiredInstanceCount = value; } /** *

The variant's capacity.

*/ inline DesiredWeightAndCapacity& WithDesiredInstanceCount(int value) { SetDesiredInstanceCount(value); return *this;} /** *

Specifies the serverless update concurrency configuration for an endpoint * variant.

*/ inline const ProductionVariantServerlessUpdateConfig& GetServerlessUpdateConfig() const{ return m_serverlessUpdateConfig; } /** *

Specifies the serverless update concurrency configuration for an endpoint * variant.

*/ inline bool ServerlessUpdateConfigHasBeenSet() const { return m_serverlessUpdateConfigHasBeenSet; } /** *

Specifies the serverless update concurrency configuration for an endpoint * variant.

*/ inline void SetServerlessUpdateConfig(const ProductionVariantServerlessUpdateConfig& value) { m_serverlessUpdateConfigHasBeenSet = true; m_serverlessUpdateConfig = value; } /** *

Specifies the serverless update concurrency configuration for an endpoint * variant.

*/ inline void SetServerlessUpdateConfig(ProductionVariantServerlessUpdateConfig&& value) { m_serverlessUpdateConfigHasBeenSet = true; m_serverlessUpdateConfig = std::move(value); } /** *

Specifies the serverless update concurrency configuration for an endpoint * variant.

*/ inline DesiredWeightAndCapacity& WithServerlessUpdateConfig(const ProductionVariantServerlessUpdateConfig& value) { SetServerlessUpdateConfig(value); return *this;} /** *

Specifies the serverless update concurrency configuration for an endpoint * variant.

*/ inline DesiredWeightAndCapacity& WithServerlessUpdateConfig(ProductionVariantServerlessUpdateConfig&& value) { SetServerlessUpdateConfig(std::move(value)); return *this;} private: Aws::String m_variantName; bool m_variantNameHasBeenSet = false; double m_desiredWeight; bool m_desiredWeightHasBeenSet = false; int m_desiredInstanceCount; bool m_desiredInstanceCountHasBeenSet = false; ProductionVariantServerlessUpdateConfig m_serverlessUpdateConfig; bool m_serverlessUpdateConfigHasBeenSet = false; }; } // namespace Model } // namespace SageMaker } // namespace Aws