/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include The status of the instance fleet. The instance fleet
* configuration is available only in Amazon EMR releases 4.8.0 and later,
* excluding 5.0.x versions.See Also:
AWS
* API Reference
A code representing the instance fleet status.
* PROVISIONING
—The instance fleet is provisioning Amazon EC2
* resources and is not yet ready to run jobs.
* BOOTSTRAPPING
—Amazon EC2 instances and other resources have been
* provisioned and the bootstrap actions specified for the instances are
* underway.
RUNNING
—Amazon EC2 instances and other
* resources are running. They are either executing jobs or waiting to execute
* jobs.
RESIZING
—A resize operation is underway.
* Amazon EC2 instances are either being added or removed.
* SUSPENDED
—A resize operation could not complete. Existing Amazon
* EC2 instances are running, but instances can't be added or removed.
TERMINATING
—The instance fleet is terminating Amazon EC2
* instances.
TERMINATED
—The instance fleet is no
* longer active, and all Amazon EC2 instances have been terminated.
A code representing the instance fleet status.
* PROVISIONING
—The instance fleet is provisioning Amazon EC2
* resources and is not yet ready to run jobs.
* BOOTSTRAPPING
—Amazon EC2 instances and other resources have been
* provisioned and the bootstrap actions specified for the instances are
* underway.
RUNNING
—Amazon EC2 instances and other
* resources are running. They are either executing jobs or waiting to execute
* jobs.
RESIZING
—A resize operation is underway.
* Amazon EC2 instances are either being added or removed.
* SUSPENDED
—A resize operation could not complete. Existing Amazon
* EC2 instances are running, but instances can't be added or removed.
TERMINATING
—The instance fleet is terminating Amazon EC2
* instances.
TERMINATED
—The instance fleet is no
* longer active, and all Amazon EC2 instances have been terminated.
A code representing the instance fleet status.
* PROVISIONING
—The instance fleet is provisioning Amazon EC2
* resources and is not yet ready to run jobs.
* BOOTSTRAPPING
—Amazon EC2 instances and other resources have been
* provisioned and the bootstrap actions specified for the instances are
* underway.
RUNNING
—Amazon EC2 instances and other
* resources are running. They are either executing jobs or waiting to execute
* jobs.
RESIZING
—A resize operation is underway.
* Amazon EC2 instances are either being added or removed.
* SUSPENDED
—A resize operation could not complete. Existing Amazon
* EC2 instances are running, but instances can't be added or removed.
TERMINATING
—The instance fleet is terminating Amazon EC2
* instances.
TERMINATED
—The instance fleet is no
* longer active, and all Amazon EC2 instances have been terminated.
A code representing the instance fleet status.
* PROVISIONING
—The instance fleet is provisioning Amazon EC2
* resources and is not yet ready to run jobs.
* BOOTSTRAPPING
—Amazon EC2 instances and other resources have been
* provisioned and the bootstrap actions specified for the instances are
* underway.
RUNNING
—Amazon EC2 instances and other
* resources are running. They are either executing jobs or waiting to execute
* jobs.
RESIZING
—A resize operation is underway.
* Amazon EC2 instances are either being added or removed.
* SUSPENDED
—A resize operation could not complete. Existing Amazon
* EC2 instances are running, but instances can't be added or removed.
TERMINATING
—The instance fleet is terminating Amazon EC2
* instances.
TERMINATED
—The instance fleet is no
* longer active, and all Amazon EC2 instances have been terminated.
A code representing the instance fleet status.
* PROVISIONING
—The instance fleet is provisioning Amazon EC2
* resources and is not yet ready to run jobs.
* BOOTSTRAPPING
—Amazon EC2 instances and other resources have been
* provisioned and the bootstrap actions specified for the instances are
* underway.
RUNNING
—Amazon EC2 instances and other
* resources are running. They are either executing jobs or waiting to execute
* jobs.
RESIZING
—A resize operation is underway.
* Amazon EC2 instances are either being added or removed.
* SUSPENDED
—A resize operation could not complete. Existing Amazon
* EC2 instances are running, but instances can't be added or removed.
TERMINATING
—The instance fleet is terminating Amazon EC2
* instances.
TERMINATED
—The instance fleet is no
* longer active, and all Amazon EC2 instances have been terminated.
A code representing the instance fleet status.
* PROVISIONING
—The instance fleet is provisioning Amazon EC2
* resources and is not yet ready to run jobs.
* BOOTSTRAPPING
—Amazon EC2 instances and other resources have been
* provisioned and the bootstrap actions specified for the instances are
* underway.
RUNNING
—Amazon EC2 instances and other
* resources are running. They are either executing jobs or waiting to execute
* jobs.
RESIZING
—A resize operation is underway.
* Amazon EC2 instances are either being added or removed.
* SUSPENDED
—A resize operation could not complete. Existing Amazon
* EC2 instances are running, but instances can't be added or removed.
TERMINATING
—The instance fleet is terminating Amazon EC2
* instances.
TERMINATED
—The instance fleet is no
* longer active, and all Amazon EC2 instances have been terminated.
Provides status change reason details for the instance fleet.
*/ inline const InstanceFleetStateChangeReason& GetStateChangeReason() const{ return m_stateChangeReason; } /** *Provides status change reason details for the instance fleet.
*/ inline bool StateChangeReasonHasBeenSet() const { return m_stateChangeReasonHasBeenSet; } /** *Provides status change reason details for the instance fleet.
*/ inline void SetStateChangeReason(const InstanceFleetStateChangeReason& value) { m_stateChangeReasonHasBeenSet = true; m_stateChangeReason = value; } /** *Provides status change reason details for the instance fleet.
*/ inline void SetStateChangeReason(InstanceFleetStateChangeReason&& value) { m_stateChangeReasonHasBeenSet = true; m_stateChangeReason = std::move(value); } /** *Provides status change reason details for the instance fleet.
*/ inline InstanceFleetStatus& WithStateChangeReason(const InstanceFleetStateChangeReason& value) { SetStateChangeReason(value); return *this;} /** *Provides status change reason details for the instance fleet.
*/ inline InstanceFleetStatus& WithStateChangeReason(InstanceFleetStateChangeReason&& value) { SetStateChangeReason(std::move(value)); return *this;} /** *Provides historical timestamps for the instance fleet, including the time of * creation, the time it became ready to run jobs, and the time of termination.
*/ inline const InstanceFleetTimeline& GetTimeline() const{ return m_timeline; } /** *Provides historical timestamps for the instance fleet, including the time of * creation, the time it became ready to run jobs, and the time of termination.
*/ inline bool TimelineHasBeenSet() const { return m_timelineHasBeenSet; } /** *Provides historical timestamps for the instance fleet, including the time of * creation, the time it became ready to run jobs, and the time of termination.
*/ inline void SetTimeline(const InstanceFleetTimeline& value) { m_timelineHasBeenSet = true; m_timeline = value; } /** *Provides historical timestamps for the instance fleet, including the time of * creation, the time it became ready to run jobs, and the time of termination.
*/ inline void SetTimeline(InstanceFleetTimeline&& value) { m_timelineHasBeenSet = true; m_timeline = std::move(value); } /** *Provides historical timestamps for the instance fleet, including the time of * creation, the time it became ready to run jobs, and the time of termination.
*/ inline InstanceFleetStatus& WithTimeline(const InstanceFleetTimeline& value) { SetTimeline(value); return *this;} /** *Provides historical timestamps for the instance fleet, including the time of * creation, the time it became ready to run jobs, and the time of termination.
*/ inline InstanceFleetStatus& WithTimeline(InstanceFleetTimeline&& value) { SetTimeline(std::move(value)); return *this;} private: InstanceFleetState m_state; bool m_stateHasBeenSet = false; InstanceFleetStateChangeReason m_stateChangeReason; bool m_stateChangeReasonHasBeenSet = false; InstanceFleetTimeline m_timeline; bool m_timelineHasBeenSet = false; }; } // namespace Model } // namespace EMR } // namespace Aws