/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Describes the status of an instance.See Also:
AWS
* API Reference
The Availability Zone of the instance.
*/ inline const Aws::String& GetAvailabilityZone() const{ return m_availabilityZone; } /** *The Availability Zone of the instance.
*/ inline bool AvailabilityZoneHasBeenSet() const { return m_availabilityZoneHasBeenSet; } /** *The Availability Zone of the instance.
*/ inline void SetAvailabilityZone(const Aws::String& value) { m_availabilityZoneHasBeenSet = true; m_availabilityZone = value; } /** *The Availability Zone of the instance.
*/ inline void SetAvailabilityZone(Aws::String&& value) { m_availabilityZoneHasBeenSet = true; m_availabilityZone = std::move(value); } /** *The Availability Zone of the instance.
*/ inline void SetAvailabilityZone(const char* value) { m_availabilityZoneHasBeenSet = true; m_availabilityZone.assign(value); } /** *The Availability Zone of the instance.
*/ inline InstanceStatus& WithAvailabilityZone(const Aws::String& value) { SetAvailabilityZone(value); return *this;} /** *The Availability Zone of the instance.
*/ inline InstanceStatus& WithAvailabilityZone(Aws::String&& value) { SetAvailabilityZone(std::move(value)); return *this;} /** *The Availability Zone of the instance.
*/ inline InstanceStatus& WithAvailabilityZone(const char* value) { SetAvailabilityZone(value); return *this;} /** *The Amazon Resource Name (ARN) of the Outpost.
*/ inline const Aws::String& GetOutpostArn() const{ return m_outpostArn; } /** *The Amazon Resource Name (ARN) of the Outpost.
*/ inline bool OutpostArnHasBeenSet() const { return m_outpostArnHasBeenSet; } /** *The Amazon Resource Name (ARN) of the Outpost.
*/ inline void SetOutpostArn(const Aws::String& value) { m_outpostArnHasBeenSet = true; m_outpostArn = value; } /** *The Amazon Resource Name (ARN) of the Outpost.
*/ inline void SetOutpostArn(Aws::String&& value) { m_outpostArnHasBeenSet = true; m_outpostArn = std::move(value); } /** *The Amazon Resource Name (ARN) of the Outpost.
*/ inline void SetOutpostArn(const char* value) { m_outpostArnHasBeenSet = true; m_outpostArn.assign(value); } /** *The Amazon Resource Name (ARN) of the Outpost.
*/ inline InstanceStatus& WithOutpostArn(const Aws::String& value) { SetOutpostArn(value); return *this;} /** *The Amazon Resource Name (ARN) of the Outpost.
*/ inline InstanceStatus& WithOutpostArn(Aws::String&& value) { SetOutpostArn(std::move(value)); return *this;} /** *The Amazon Resource Name (ARN) of the Outpost.
*/ inline InstanceStatus& WithOutpostArn(const char* value) { SetOutpostArn(value); return *this;} /** *Any scheduled events associated with the instance.
*/ inline const Aws::VectorAny scheduled events associated with the instance.
*/ inline bool EventsHasBeenSet() const { return m_eventsHasBeenSet; } /** *Any scheduled events associated with the instance.
*/ inline void SetEvents(const Aws::VectorAny scheduled events associated with the instance.
*/ inline void SetEvents(Aws::VectorAny scheduled events associated with the instance.
*/ inline InstanceStatus& WithEvents(const Aws::VectorAny scheduled events associated with the instance.
*/ inline InstanceStatus& WithEvents(Aws::VectorAny scheduled events associated with the instance.
*/ inline InstanceStatus& AddEvents(const InstanceStatusEvent& value) { m_eventsHasBeenSet = true; m_events.push_back(value); return *this; } /** *Any scheduled events associated with the instance.
*/ inline InstanceStatus& AddEvents(InstanceStatusEvent&& value) { m_eventsHasBeenSet = true; m_events.push_back(std::move(value)); return *this; } /** *The ID of the instance.
*/ inline const Aws::String& GetInstanceId() const{ return m_instanceId; } /** *The ID of the instance.
*/ inline bool InstanceIdHasBeenSet() const { return m_instanceIdHasBeenSet; } /** *The ID of the instance.
*/ inline void SetInstanceId(const Aws::String& value) { m_instanceIdHasBeenSet = true; m_instanceId = value; } /** *The ID of the instance.
*/ inline void SetInstanceId(Aws::String&& value) { m_instanceIdHasBeenSet = true; m_instanceId = std::move(value); } /** *The ID of the instance.
*/ inline void SetInstanceId(const char* value) { m_instanceIdHasBeenSet = true; m_instanceId.assign(value); } /** *The ID of the instance.
*/ inline InstanceStatus& WithInstanceId(const Aws::String& value) { SetInstanceId(value); return *this;} /** *The ID of the instance.
*/ inline InstanceStatus& WithInstanceId(Aws::String&& value) { SetInstanceId(std::move(value)); return *this;} /** *The ID of the instance.
*/ inline InstanceStatus& WithInstanceId(const char* value) { SetInstanceId(value); return *this;} /** *The intended state of the instance. DescribeInstanceStatus requires
* that an instance be in the running
state.
The intended state of the instance. DescribeInstanceStatus requires
* that an instance be in the running
state.
The intended state of the instance. DescribeInstanceStatus requires
* that an instance be in the running
state.
The intended state of the instance. DescribeInstanceStatus requires
* that an instance be in the running
state.
The intended state of the instance. DescribeInstanceStatus requires
* that an instance be in the running
state.
The intended state of the instance. DescribeInstanceStatus requires
* that an instance be in the running
state.
Reports impaired functionality that stems from issues internal to the * instance, such as impaired reachability.
*/ inline const InstanceStatusSummary& GetInstanceStatus() const{ return m_instanceStatus; } /** *Reports impaired functionality that stems from issues internal to the * instance, such as impaired reachability.
*/ inline bool InstanceStatusHasBeenSet() const { return m_instanceStatusHasBeenSet; } /** *Reports impaired functionality that stems from issues internal to the * instance, such as impaired reachability.
*/ inline void SetInstanceStatus(const InstanceStatusSummary& value) { m_instanceStatusHasBeenSet = true; m_instanceStatus = value; } /** *Reports impaired functionality that stems from issues internal to the * instance, such as impaired reachability.
*/ inline void SetInstanceStatus(InstanceStatusSummary&& value) { m_instanceStatusHasBeenSet = true; m_instanceStatus = std::move(value); } /** *Reports impaired functionality that stems from issues internal to the * instance, such as impaired reachability.
*/ inline InstanceStatus& WithInstanceStatus(const InstanceStatusSummary& value) { SetInstanceStatus(value); return *this;} /** *Reports impaired functionality that stems from issues internal to the * instance, such as impaired reachability.
*/ inline InstanceStatus& WithInstanceStatus(InstanceStatusSummary&& value) { SetInstanceStatus(std::move(value)); return *this;} /** *Reports impaired functionality that stems from issues related to the systems * that support an instance, such as hardware failures and network connectivity * problems.
*/ inline const InstanceStatusSummary& GetSystemStatus() const{ return m_systemStatus; } /** *Reports impaired functionality that stems from issues related to the systems * that support an instance, such as hardware failures and network connectivity * problems.
*/ inline bool SystemStatusHasBeenSet() const { return m_systemStatusHasBeenSet; } /** *Reports impaired functionality that stems from issues related to the systems * that support an instance, such as hardware failures and network connectivity * problems.
*/ inline void SetSystemStatus(const InstanceStatusSummary& value) { m_systemStatusHasBeenSet = true; m_systemStatus = value; } /** *Reports impaired functionality that stems from issues related to the systems * that support an instance, such as hardware failures and network connectivity * problems.
*/ inline void SetSystemStatus(InstanceStatusSummary&& value) { m_systemStatusHasBeenSet = true; m_systemStatus = std::move(value); } /** *Reports impaired functionality that stems from issues related to the systems * that support an instance, such as hardware failures and network connectivity * problems.
*/ inline InstanceStatus& WithSystemStatus(const InstanceStatusSummary& value) { SetSystemStatus(value); return *this;} /** *Reports impaired functionality that stems from issues related to the systems * that support an instance, such as hardware failures and network connectivity * problems.
*/ inline InstanceStatus& WithSystemStatus(InstanceStatusSummary&& value) { SetSystemStatus(std::move(value)); return *this;} private: Aws::String m_availabilityZone; bool m_availabilityZoneHasBeenSet = false; Aws::String m_outpostArn; bool m_outpostArnHasBeenSet = false; Aws::Vector