/** * 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 EMRServerless { namespace Model { /** *

The initial capacity configuration per worker.

See Also:

AWS * API Reference

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

The number of workers in the initial capacity configuration.

*/ inline long long GetWorkerCount() const{ return m_workerCount; } /** *

The number of workers in the initial capacity configuration.

*/ inline bool WorkerCountHasBeenSet() const { return m_workerCountHasBeenSet; } /** *

The number of workers in the initial capacity configuration.

*/ inline void SetWorkerCount(long long value) { m_workerCountHasBeenSet = true; m_workerCount = value; } /** *

The number of workers in the initial capacity configuration.

*/ inline InitialCapacityConfig& WithWorkerCount(long long value) { SetWorkerCount(value); return *this;} /** *

The resource configuration of the initial capacity configuration.

*/ inline const WorkerResourceConfig& GetWorkerConfiguration() const{ return m_workerConfiguration; } /** *

The resource configuration of the initial capacity configuration.

*/ inline bool WorkerConfigurationHasBeenSet() const { return m_workerConfigurationHasBeenSet; } /** *

The resource configuration of the initial capacity configuration.

*/ inline void SetWorkerConfiguration(const WorkerResourceConfig& value) { m_workerConfigurationHasBeenSet = true; m_workerConfiguration = value; } /** *

The resource configuration of the initial capacity configuration.

*/ inline void SetWorkerConfiguration(WorkerResourceConfig&& value) { m_workerConfigurationHasBeenSet = true; m_workerConfiguration = std::move(value); } /** *

The resource configuration of the initial capacity configuration.

*/ inline InitialCapacityConfig& WithWorkerConfiguration(const WorkerResourceConfig& value) { SetWorkerConfiguration(value); return *this;} /** *

The resource configuration of the initial capacity configuration.

*/ inline InitialCapacityConfig& WithWorkerConfiguration(WorkerResourceConfig&& value) { SetWorkerConfiguration(std::move(value)); return *this;} private: long long m_workerCount; bool m_workerCountHasBeenSet = false; WorkerResourceConfig m_workerConfiguration; bool m_workerConfigurationHasBeenSet = false; }; } // namespace Model } // namespace EMRServerless } // namespace Aws