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

An object that represents the details about the remediation exception. The * details include the rule name, an explanation of an exception, the time when the * exception will be deleted, the resource ID, and resource type.

See * Also:

AWS * API Reference

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

The name of the Config rule.

*/ inline const Aws::String& GetConfigRuleName() const{ return m_configRuleName; } /** *

The name of the Config rule.

*/ inline bool ConfigRuleNameHasBeenSet() const { return m_configRuleNameHasBeenSet; } /** *

The name of the Config rule.

*/ inline void SetConfigRuleName(const Aws::String& value) { m_configRuleNameHasBeenSet = true; m_configRuleName = value; } /** *

The name of the Config rule.

*/ inline void SetConfigRuleName(Aws::String&& value) { m_configRuleNameHasBeenSet = true; m_configRuleName = std::move(value); } /** *

The name of the Config rule.

*/ inline void SetConfigRuleName(const char* value) { m_configRuleNameHasBeenSet = true; m_configRuleName.assign(value); } /** *

The name of the Config rule.

*/ inline RemediationException& WithConfigRuleName(const Aws::String& value) { SetConfigRuleName(value); return *this;} /** *

The name of the Config rule.

*/ inline RemediationException& WithConfigRuleName(Aws::String&& value) { SetConfigRuleName(std::move(value)); return *this;} /** *

The name of the Config rule.

*/ inline RemediationException& WithConfigRuleName(const char* value) { SetConfigRuleName(value); return *this;} /** *

The type of a resource.

*/ inline const Aws::String& GetResourceType() const{ return m_resourceType; } /** *

The type of a resource.

*/ inline bool ResourceTypeHasBeenSet() const { return m_resourceTypeHasBeenSet; } /** *

The type of a resource.

*/ inline void SetResourceType(const Aws::String& value) { m_resourceTypeHasBeenSet = true; m_resourceType = value; } /** *

The type of a resource.

*/ inline void SetResourceType(Aws::String&& value) { m_resourceTypeHasBeenSet = true; m_resourceType = std::move(value); } /** *

The type of a resource.

*/ inline void SetResourceType(const char* value) { m_resourceTypeHasBeenSet = true; m_resourceType.assign(value); } /** *

The type of a resource.

*/ inline RemediationException& WithResourceType(const Aws::String& value) { SetResourceType(value); return *this;} /** *

The type of a resource.

*/ inline RemediationException& WithResourceType(Aws::String&& value) { SetResourceType(std::move(value)); return *this;} /** *

The type of a resource.

*/ inline RemediationException& WithResourceType(const char* value) { SetResourceType(value); return *this;} /** *

The ID of the resource (for example., sg-xxxxxx).

*/ inline const Aws::String& GetResourceId() const{ return m_resourceId; } /** *

The ID of the resource (for example., sg-xxxxxx).

*/ inline bool ResourceIdHasBeenSet() const { return m_resourceIdHasBeenSet; } /** *

The ID of the resource (for example., sg-xxxxxx).

*/ inline void SetResourceId(const Aws::String& value) { m_resourceIdHasBeenSet = true; m_resourceId = value; } /** *

The ID of the resource (for example., sg-xxxxxx).

*/ inline void SetResourceId(Aws::String&& value) { m_resourceIdHasBeenSet = true; m_resourceId = std::move(value); } /** *

The ID of the resource (for example., sg-xxxxxx).

*/ inline void SetResourceId(const char* value) { m_resourceIdHasBeenSet = true; m_resourceId.assign(value); } /** *

The ID of the resource (for example., sg-xxxxxx).

*/ inline RemediationException& WithResourceId(const Aws::String& value) { SetResourceId(value); return *this;} /** *

The ID of the resource (for example., sg-xxxxxx).

*/ inline RemediationException& WithResourceId(Aws::String&& value) { SetResourceId(std::move(value)); return *this;} /** *

The ID of the resource (for example., sg-xxxxxx).

*/ inline RemediationException& WithResourceId(const char* value) { SetResourceId(value); return *this;} /** *

An explanation of an remediation exception.

*/ inline const Aws::String& GetMessage() const{ return m_message; } /** *

An explanation of an remediation exception.

*/ inline bool MessageHasBeenSet() const { return m_messageHasBeenSet; } /** *

An explanation of an remediation exception.

*/ inline void SetMessage(const Aws::String& value) { m_messageHasBeenSet = true; m_message = value; } /** *

An explanation of an remediation exception.

*/ inline void SetMessage(Aws::String&& value) { m_messageHasBeenSet = true; m_message = std::move(value); } /** *

An explanation of an remediation exception.

*/ inline void SetMessage(const char* value) { m_messageHasBeenSet = true; m_message.assign(value); } /** *

An explanation of an remediation exception.

*/ inline RemediationException& WithMessage(const Aws::String& value) { SetMessage(value); return *this;} /** *

An explanation of an remediation exception.

*/ inline RemediationException& WithMessage(Aws::String&& value) { SetMessage(std::move(value)); return *this;} /** *

An explanation of an remediation exception.

*/ inline RemediationException& WithMessage(const char* value) { SetMessage(value); return *this;} /** *

The time when the remediation exception will be deleted.

*/ inline const Aws::Utils::DateTime& GetExpirationTime() const{ return m_expirationTime; } /** *

The time when the remediation exception will be deleted.

*/ inline bool ExpirationTimeHasBeenSet() const { return m_expirationTimeHasBeenSet; } /** *

The time when the remediation exception will be deleted.

*/ inline void SetExpirationTime(const Aws::Utils::DateTime& value) { m_expirationTimeHasBeenSet = true; m_expirationTime = value; } /** *

The time when the remediation exception will be deleted.

*/ inline void SetExpirationTime(Aws::Utils::DateTime&& value) { m_expirationTimeHasBeenSet = true; m_expirationTime = std::move(value); } /** *

The time when the remediation exception will be deleted.

*/ inline RemediationException& WithExpirationTime(const Aws::Utils::DateTime& value) { SetExpirationTime(value); return *this;} /** *

The time when the remediation exception will be deleted.

*/ inline RemediationException& WithExpirationTime(Aws::Utils::DateTime&& value) { SetExpirationTime(std::move(value)); return *this;} private: Aws::String m_configRuleName; bool m_configRuleNameHasBeenSet = false; Aws::String m_resourceType; bool m_resourceTypeHasBeenSet = false; Aws::String m_resourceId; bool m_resourceIdHasBeenSet = false; Aws::String m_message; bool m_messageHasBeenSet = false; Aws::Utils::DateTime m_expirationTime; bool m_expirationTimeHasBeenSet = false; }; } // namespace Model } // namespace ConfigService } // namespace Aws