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

The configuration of the resource used to execute the * containerAction.

See Also:

AWS * API Reference

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

The type of the compute resource used to execute the * containerAction. Possible values are: ACU_1 (vCPU=4, * memory=16 GiB) or ACU_2 (vCPU=8, memory=32 GiB).

*/ inline const ComputeType& GetComputeType() const{ return m_computeType; } /** *

The type of the compute resource used to execute the * containerAction. Possible values are: ACU_1 (vCPU=4, * memory=16 GiB) or ACU_2 (vCPU=8, memory=32 GiB).

*/ inline bool ComputeTypeHasBeenSet() const { return m_computeTypeHasBeenSet; } /** *

The type of the compute resource used to execute the * containerAction. Possible values are: ACU_1 (vCPU=4, * memory=16 GiB) or ACU_2 (vCPU=8, memory=32 GiB).

*/ inline void SetComputeType(const ComputeType& value) { m_computeTypeHasBeenSet = true; m_computeType = value; } /** *

The type of the compute resource used to execute the * containerAction. Possible values are: ACU_1 (vCPU=4, * memory=16 GiB) or ACU_2 (vCPU=8, memory=32 GiB).

*/ inline void SetComputeType(ComputeType&& value) { m_computeTypeHasBeenSet = true; m_computeType = std::move(value); } /** *

The type of the compute resource used to execute the * containerAction. Possible values are: ACU_1 (vCPU=4, * memory=16 GiB) or ACU_2 (vCPU=8, memory=32 GiB).

*/ inline ResourceConfiguration& WithComputeType(const ComputeType& value) { SetComputeType(value); return *this;} /** *

The type of the compute resource used to execute the * containerAction. Possible values are: ACU_1 (vCPU=4, * memory=16 GiB) or ACU_2 (vCPU=8, memory=32 GiB).

*/ inline ResourceConfiguration& WithComputeType(ComputeType&& value) { SetComputeType(std::move(value)); return *this;} /** *

The size, in GB, of the persistent storage available to the resource instance * used to execute the containerAction (min: 1, max: 50).

*/ inline int GetVolumeSizeInGB() const{ return m_volumeSizeInGB; } /** *

The size, in GB, of the persistent storage available to the resource instance * used to execute the containerAction (min: 1, max: 50).

*/ inline bool VolumeSizeInGBHasBeenSet() const { return m_volumeSizeInGBHasBeenSet; } /** *

The size, in GB, of the persistent storage available to the resource instance * used to execute the containerAction (min: 1, max: 50).

*/ inline void SetVolumeSizeInGB(int value) { m_volumeSizeInGBHasBeenSet = true; m_volumeSizeInGB = value; } /** *

The size, in GB, of the persistent storage available to the resource instance * used to execute the containerAction (min: 1, max: 50).

*/ inline ResourceConfiguration& WithVolumeSizeInGB(int value) { SetVolumeSizeInGB(value); return *this;} private: ComputeType m_computeType; bool m_computeTypeHasBeenSet = false; int m_volumeSizeInGB; bool m_volumeSizeInGBHasBeenSet = false; }; } // namespace Model } // namespace IoTAnalytics } // namespace Aws