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

Information that identifies a mitigation action. This information is returned * by ListMitigationActions.

See Also:

AWS * API Reference

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

The friendly name of the mitigation action.

*/ inline const Aws::String& GetActionName() const{ return m_actionName; } /** *

The friendly name of the mitigation action.

*/ inline bool ActionNameHasBeenSet() const { return m_actionNameHasBeenSet; } /** *

The friendly name of the mitigation action.

*/ inline void SetActionName(const Aws::String& value) { m_actionNameHasBeenSet = true; m_actionName = value; } /** *

The friendly name of the mitigation action.

*/ inline void SetActionName(Aws::String&& value) { m_actionNameHasBeenSet = true; m_actionName = std::move(value); } /** *

The friendly name of the mitigation action.

*/ inline void SetActionName(const char* value) { m_actionNameHasBeenSet = true; m_actionName.assign(value); } /** *

The friendly name of the mitigation action.

*/ inline MitigationActionIdentifier& WithActionName(const Aws::String& value) { SetActionName(value); return *this;} /** *

The friendly name of the mitigation action.

*/ inline MitigationActionIdentifier& WithActionName(Aws::String&& value) { SetActionName(std::move(value)); return *this;} /** *

The friendly name of the mitigation action.

*/ inline MitigationActionIdentifier& WithActionName(const char* value) { SetActionName(value); return *this;} /** *

The IAM role ARN used to apply this mitigation action.

*/ inline const Aws::String& GetActionArn() const{ return m_actionArn; } /** *

The IAM role ARN used to apply this mitigation action.

*/ inline bool ActionArnHasBeenSet() const { return m_actionArnHasBeenSet; } /** *

The IAM role ARN used to apply this mitigation action.

*/ inline void SetActionArn(const Aws::String& value) { m_actionArnHasBeenSet = true; m_actionArn = value; } /** *

The IAM role ARN used to apply this mitigation action.

*/ inline void SetActionArn(Aws::String&& value) { m_actionArnHasBeenSet = true; m_actionArn = std::move(value); } /** *

The IAM role ARN used to apply this mitigation action.

*/ inline void SetActionArn(const char* value) { m_actionArnHasBeenSet = true; m_actionArn.assign(value); } /** *

The IAM role ARN used to apply this mitigation action.

*/ inline MitigationActionIdentifier& WithActionArn(const Aws::String& value) { SetActionArn(value); return *this;} /** *

The IAM role ARN used to apply this mitigation action.

*/ inline MitigationActionIdentifier& WithActionArn(Aws::String&& value) { SetActionArn(std::move(value)); return *this;} /** *

The IAM role ARN used to apply this mitigation action.

*/ inline MitigationActionIdentifier& WithActionArn(const char* value) { SetActionArn(value); return *this;} /** *

The date when this mitigation action was created.

*/ inline const Aws::Utils::DateTime& GetCreationDate() const{ return m_creationDate; } /** *

The date when this mitigation action was created.

*/ inline bool CreationDateHasBeenSet() const { return m_creationDateHasBeenSet; } /** *

The date when this mitigation action was created.

*/ inline void SetCreationDate(const Aws::Utils::DateTime& value) { m_creationDateHasBeenSet = true; m_creationDate = value; } /** *

The date when this mitigation action was created.

*/ inline void SetCreationDate(Aws::Utils::DateTime&& value) { m_creationDateHasBeenSet = true; m_creationDate = std::move(value); } /** *

The date when this mitigation action was created.

*/ inline MitigationActionIdentifier& WithCreationDate(const Aws::Utils::DateTime& value) { SetCreationDate(value); return *this;} /** *

The date when this mitigation action was created.

*/ inline MitigationActionIdentifier& WithCreationDate(Aws::Utils::DateTime&& value) { SetCreationDate(std::move(value)); return *this;} private: Aws::String m_actionName; bool m_actionNameHasBeenSet = false; Aws::String m_actionArn; bool m_actionArnHasBeenSet = false; Aws::Utils::DateTime m_creationDate; bool m_creationDateHasBeenSet = false; }; } // namespace Model } // namespace IoT } // namespace Aws