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

Information about a Amazon Web Services Region in your replication * set.

See Also:

AWS * API Reference

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

The ID of the KMS key used to encrypt the data in this Amazon Web Services * Region.

*/ inline const Aws::String& GetSseKmsKeyId() const{ return m_sseKmsKeyId; } /** *

The ID of the KMS key used to encrypt the data in this Amazon Web Services * Region.

*/ inline bool SseKmsKeyIdHasBeenSet() const { return m_sseKmsKeyIdHasBeenSet; } /** *

The ID of the KMS key used to encrypt the data in this Amazon Web Services * Region.

*/ inline void SetSseKmsKeyId(const Aws::String& value) { m_sseKmsKeyIdHasBeenSet = true; m_sseKmsKeyId = value; } /** *

The ID of the KMS key used to encrypt the data in this Amazon Web Services * Region.

*/ inline void SetSseKmsKeyId(Aws::String&& value) { m_sseKmsKeyIdHasBeenSet = true; m_sseKmsKeyId = std::move(value); } /** *

The ID of the KMS key used to encrypt the data in this Amazon Web Services * Region.

*/ inline void SetSseKmsKeyId(const char* value) { m_sseKmsKeyIdHasBeenSet = true; m_sseKmsKeyId.assign(value); } /** *

The ID of the KMS key used to encrypt the data in this Amazon Web Services * Region.

*/ inline RegionInfo& WithSseKmsKeyId(const Aws::String& value) { SetSseKmsKeyId(value); return *this;} /** *

The ID of the KMS key used to encrypt the data in this Amazon Web Services * Region.

*/ inline RegionInfo& WithSseKmsKeyId(Aws::String&& value) { SetSseKmsKeyId(std::move(value)); return *this;} /** *

The ID of the KMS key used to encrypt the data in this Amazon Web Services * Region.

*/ inline RegionInfo& WithSseKmsKeyId(const char* value) { SetSseKmsKeyId(value); return *this;} /** *

The status of the Amazon Web Services Region in the replication set.

*/ inline const RegionStatus& GetStatus() const{ return m_status; } /** *

The status of the Amazon Web Services Region in the replication set.

*/ inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; } /** *

The status of the Amazon Web Services Region in the replication set.

*/ inline void SetStatus(const RegionStatus& value) { m_statusHasBeenSet = true; m_status = value; } /** *

The status of the Amazon Web Services Region in the replication set.

*/ inline void SetStatus(RegionStatus&& value) { m_statusHasBeenSet = true; m_status = std::move(value); } /** *

The status of the Amazon Web Services Region in the replication set.

*/ inline RegionInfo& WithStatus(const RegionStatus& value) { SetStatus(value); return *this;} /** *

The status of the Amazon Web Services Region in the replication set.

*/ inline RegionInfo& WithStatus(RegionStatus&& value) { SetStatus(std::move(value)); return *this;} /** *

Information displayed about the status of the Amazon Web Services Region.

*/ inline const Aws::String& GetStatusMessage() const{ return m_statusMessage; } /** *

Information displayed about the status of the Amazon Web Services Region.

*/ inline bool StatusMessageHasBeenSet() const { return m_statusMessageHasBeenSet; } /** *

Information displayed about the status of the Amazon Web Services Region.

*/ inline void SetStatusMessage(const Aws::String& value) { m_statusMessageHasBeenSet = true; m_statusMessage = value; } /** *

Information displayed about the status of the Amazon Web Services Region.

*/ inline void SetStatusMessage(Aws::String&& value) { m_statusMessageHasBeenSet = true; m_statusMessage = std::move(value); } /** *

Information displayed about the status of the Amazon Web Services Region.

*/ inline void SetStatusMessage(const char* value) { m_statusMessageHasBeenSet = true; m_statusMessage.assign(value); } /** *

Information displayed about the status of the Amazon Web Services Region.

*/ inline RegionInfo& WithStatusMessage(const Aws::String& value) { SetStatusMessage(value); return *this;} /** *

Information displayed about the status of the Amazon Web Services Region.

*/ inline RegionInfo& WithStatusMessage(Aws::String&& value) { SetStatusMessage(std::move(value)); return *this;} /** *

Information displayed about the status of the Amazon Web Services Region.

*/ inline RegionInfo& WithStatusMessage(const char* value) { SetStatusMessage(value); return *this;} /** *

The most recent date and time that Incident Manager updated the Amazon Web * Services Region's status.

*/ inline const Aws::Utils::DateTime& GetStatusUpdateDateTime() const{ return m_statusUpdateDateTime; } /** *

The most recent date and time that Incident Manager updated the Amazon Web * Services Region's status.

*/ inline bool StatusUpdateDateTimeHasBeenSet() const { return m_statusUpdateDateTimeHasBeenSet; } /** *

The most recent date and time that Incident Manager updated the Amazon Web * Services Region's status.

*/ inline void SetStatusUpdateDateTime(const Aws::Utils::DateTime& value) { m_statusUpdateDateTimeHasBeenSet = true; m_statusUpdateDateTime = value; } /** *

The most recent date and time that Incident Manager updated the Amazon Web * Services Region's status.

*/ inline void SetStatusUpdateDateTime(Aws::Utils::DateTime&& value) { m_statusUpdateDateTimeHasBeenSet = true; m_statusUpdateDateTime = std::move(value); } /** *

The most recent date and time that Incident Manager updated the Amazon Web * Services Region's status.

*/ inline RegionInfo& WithStatusUpdateDateTime(const Aws::Utils::DateTime& value) { SetStatusUpdateDateTime(value); return *this;} /** *

The most recent date and time that Incident Manager updated the Amazon Web * Services Region's status.

*/ inline RegionInfo& WithStatusUpdateDateTime(Aws::Utils::DateTime&& value) { SetStatusUpdateDateTime(std::move(value)); return *this;} private: Aws::String m_sseKmsKeyId; bool m_sseKmsKeyIdHasBeenSet = false; RegionStatus m_status; bool m_statusHasBeenSet = false; Aws::String m_statusMessage; bool m_statusMessageHasBeenSet = false; Aws::Utils::DateTime m_statusUpdateDateTime; bool m_statusUpdateDateTimeHasBeenSet = false; }; } // namespace Model } // namespace SSMIncidents } // namespace Aws