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

A resource that represents your subscription to a supported * standard.

See Also:

AWS * API Reference

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

The ARN of a resource that represents your subscription to a supported * standard.

*/ inline const Aws::String& GetStandardsSubscriptionArn() const{ return m_standardsSubscriptionArn; } /** *

The ARN of a resource that represents your subscription to a supported * standard.

*/ inline bool StandardsSubscriptionArnHasBeenSet() const { return m_standardsSubscriptionArnHasBeenSet; } /** *

The ARN of a resource that represents your subscription to a supported * standard.

*/ inline void SetStandardsSubscriptionArn(const Aws::String& value) { m_standardsSubscriptionArnHasBeenSet = true; m_standardsSubscriptionArn = value; } /** *

The ARN of a resource that represents your subscription to a supported * standard.

*/ inline void SetStandardsSubscriptionArn(Aws::String&& value) { m_standardsSubscriptionArnHasBeenSet = true; m_standardsSubscriptionArn = std::move(value); } /** *

The ARN of a resource that represents your subscription to a supported * standard.

*/ inline void SetStandardsSubscriptionArn(const char* value) { m_standardsSubscriptionArnHasBeenSet = true; m_standardsSubscriptionArn.assign(value); } /** *

The ARN of a resource that represents your subscription to a supported * standard.

*/ inline StandardsSubscription& WithStandardsSubscriptionArn(const Aws::String& value) { SetStandardsSubscriptionArn(value); return *this;} /** *

The ARN of a resource that represents your subscription to a supported * standard.

*/ inline StandardsSubscription& WithStandardsSubscriptionArn(Aws::String&& value) { SetStandardsSubscriptionArn(std::move(value)); return *this;} /** *

The ARN of a resource that represents your subscription to a supported * standard.

*/ inline StandardsSubscription& WithStandardsSubscriptionArn(const char* value) { SetStandardsSubscriptionArn(value); return *this;} /** *

The ARN of a standard.

*/ inline const Aws::String& GetStandardsArn() const{ return m_standardsArn; } /** *

The ARN of a standard.

*/ inline bool StandardsArnHasBeenSet() const { return m_standardsArnHasBeenSet; } /** *

The ARN of a standard.

*/ inline void SetStandardsArn(const Aws::String& value) { m_standardsArnHasBeenSet = true; m_standardsArn = value; } /** *

The ARN of a standard.

*/ inline void SetStandardsArn(Aws::String&& value) { m_standardsArnHasBeenSet = true; m_standardsArn = std::move(value); } /** *

The ARN of a standard.

*/ inline void SetStandardsArn(const char* value) { m_standardsArnHasBeenSet = true; m_standardsArn.assign(value); } /** *

The ARN of a standard.

*/ inline StandardsSubscription& WithStandardsArn(const Aws::String& value) { SetStandardsArn(value); return *this;} /** *

The ARN of a standard.

*/ inline StandardsSubscription& WithStandardsArn(Aws::String&& value) { SetStandardsArn(std::move(value)); return *this;} /** *

The ARN of a standard.

*/ inline StandardsSubscription& WithStandardsArn(const char* value) { SetStandardsArn(value); return *this;} /** *

A key-value pair of input for the standard.

*/ inline const Aws::Map& GetStandardsInput() const{ return m_standardsInput; } /** *

A key-value pair of input for the standard.

*/ inline bool StandardsInputHasBeenSet() const { return m_standardsInputHasBeenSet; } /** *

A key-value pair of input for the standard.

*/ inline void SetStandardsInput(const Aws::Map& value) { m_standardsInputHasBeenSet = true; m_standardsInput = value; } /** *

A key-value pair of input for the standard.

*/ inline void SetStandardsInput(Aws::Map&& value) { m_standardsInputHasBeenSet = true; m_standardsInput = std::move(value); } /** *

A key-value pair of input for the standard.

*/ inline StandardsSubscription& WithStandardsInput(const Aws::Map& value) { SetStandardsInput(value); return *this;} /** *

A key-value pair of input for the standard.

*/ inline StandardsSubscription& WithStandardsInput(Aws::Map&& value) { SetStandardsInput(std::move(value)); return *this;} /** *

A key-value pair of input for the standard.

*/ inline StandardsSubscription& AddStandardsInput(const Aws::String& key, const Aws::String& value) { m_standardsInputHasBeenSet = true; m_standardsInput.emplace(key, value); return *this; } /** *

A key-value pair of input for the standard.

*/ inline StandardsSubscription& AddStandardsInput(Aws::String&& key, const Aws::String& value) { m_standardsInputHasBeenSet = true; m_standardsInput.emplace(std::move(key), value); return *this; } /** *

A key-value pair of input for the standard.

*/ inline StandardsSubscription& AddStandardsInput(const Aws::String& key, Aws::String&& value) { m_standardsInputHasBeenSet = true; m_standardsInput.emplace(key, std::move(value)); return *this; } /** *

A key-value pair of input for the standard.

*/ inline StandardsSubscription& AddStandardsInput(Aws::String&& key, Aws::String&& value) { m_standardsInputHasBeenSet = true; m_standardsInput.emplace(std::move(key), std::move(value)); return *this; } /** *

A key-value pair of input for the standard.

*/ inline StandardsSubscription& AddStandardsInput(const char* key, Aws::String&& value) { m_standardsInputHasBeenSet = true; m_standardsInput.emplace(key, std::move(value)); return *this; } /** *

A key-value pair of input for the standard.

*/ inline StandardsSubscription& AddStandardsInput(Aws::String&& key, const char* value) { m_standardsInputHasBeenSet = true; m_standardsInput.emplace(std::move(key), value); return *this; } /** *

A key-value pair of input for the standard.

*/ inline StandardsSubscription& AddStandardsInput(const char* key, const char* value) { m_standardsInputHasBeenSet = true; m_standardsInput.emplace(key, value); return *this; } /** *

The status of the standard subscription.

The status values are as * follows:

  • PENDING - Standard is in the process of * being enabled.

  • READY - Standard is enabled.

    *
  • INCOMPLETE - Standard could not be enabled * completely. Some controls may not be available.

  • * DELETING - Standard is in the process of being disabled.

  • *
  • FAILED - Standard could not be disabled.

*/ inline const StandardsStatus& GetStandardsStatus() const{ return m_standardsStatus; } /** *

The status of the standard subscription.

The status values are as * follows:

  • PENDING - Standard is in the process of * being enabled.

  • READY - Standard is enabled.

    *
  • INCOMPLETE - Standard could not be enabled * completely. Some controls may not be available.

  • * DELETING - Standard is in the process of being disabled.

  • *
  • FAILED - Standard could not be disabled.

*/ inline bool StandardsStatusHasBeenSet() const { return m_standardsStatusHasBeenSet; } /** *

The status of the standard subscription.

The status values are as * follows:

  • PENDING - Standard is in the process of * being enabled.

  • READY - Standard is enabled.

    *
  • INCOMPLETE - Standard could not be enabled * completely. Some controls may not be available.

  • * DELETING - Standard is in the process of being disabled.

  • *
  • FAILED - Standard could not be disabled.

*/ inline void SetStandardsStatus(const StandardsStatus& value) { m_standardsStatusHasBeenSet = true; m_standardsStatus = value; } /** *

The status of the standard subscription.

The status values are as * follows:

  • PENDING - Standard is in the process of * being enabled.

  • READY - Standard is enabled.

    *
  • INCOMPLETE - Standard could not be enabled * completely. Some controls may not be available.

  • * DELETING - Standard is in the process of being disabled.

  • *
  • FAILED - Standard could not be disabled.

*/ inline void SetStandardsStatus(StandardsStatus&& value) { m_standardsStatusHasBeenSet = true; m_standardsStatus = std::move(value); } /** *

The status of the standard subscription.

The status values are as * follows:

  • PENDING - Standard is in the process of * being enabled.

  • READY - Standard is enabled.

    *
  • INCOMPLETE - Standard could not be enabled * completely. Some controls may not be available.

  • * DELETING - Standard is in the process of being disabled.

  • *
  • FAILED - Standard could not be disabled.

*/ inline StandardsSubscription& WithStandardsStatus(const StandardsStatus& value) { SetStandardsStatus(value); return *this;} /** *

The status of the standard subscription.

The status values are as * follows:

  • PENDING - Standard is in the process of * being enabled.

  • READY - Standard is enabled.

    *
  • INCOMPLETE - Standard could not be enabled * completely. Some controls may not be available.

  • * DELETING - Standard is in the process of being disabled.

  • *
  • FAILED - Standard could not be disabled.

*/ inline StandardsSubscription& WithStandardsStatus(StandardsStatus&& value) { SetStandardsStatus(std::move(value)); return *this;} /** *

The reason for the current status.

*/ inline const StandardsStatusReason& GetStandardsStatusReason() const{ return m_standardsStatusReason; } /** *

The reason for the current status.

*/ inline bool StandardsStatusReasonHasBeenSet() const { return m_standardsStatusReasonHasBeenSet; } /** *

The reason for the current status.

*/ inline void SetStandardsStatusReason(const StandardsStatusReason& value) { m_standardsStatusReasonHasBeenSet = true; m_standardsStatusReason = value; } /** *

The reason for the current status.

*/ inline void SetStandardsStatusReason(StandardsStatusReason&& value) { m_standardsStatusReasonHasBeenSet = true; m_standardsStatusReason = std::move(value); } /** *

The reason for the current status.

*/ inline StandardsSubscription& WithStandardsStatusReason(const StandardsStatusReason& value) { SetStandardsStatusReason(value); return *this;} /** *

The reason for the current status.

*/ inline StandardsSubscription& WithStandardsStatusReason(StandardsStatusReason&& value) { SetStandardsStatusReason(std::move(value)); return *this;} private: Aws::String m_standardsSubscriptionArn; bool m_standardsSubscriptionArnHasBeenSet = false; Aws::String m_standardsArn; bool m_standardsArnHasBeenSet = false; Aws::Map m_standardsInput; bool m_standardsInputHasBeenSet = false; StandardsStatus m_standardsStatus; bool m_standardsStatusHasBeenSet = false; StandardsStatusReason m_standardsStatusReason; bool m_standardsStatusReasonHasBeenSet = false; }; } // namespace Model } // namespace SecurityHub } // namespace Aws