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

A complex type that contains information about a Resolver configuration for a * VPC.

See Also:

AWS * API Reference

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

ID for the Resolver configuration.

*/ inline const Aws::String& GetId() const{ return m_id; } /** *

ID for the Resolver configuration.

*/ inline bool IdHasBeenSet() const { return m_idHasBeenSet; } /** *

ID for the Resolver configuration.

*/ inline void SetId(const Aws::String& value) { m_idHasBeenSet = true; m_id = value; } /** *

ID for the Resolver configuration.

*/ inline void SetId(Aws::String&& value) { m_idHasBeenSet = true; m_id = std::move(value); } /** *

ID for the Resolver configuration.

*/ inline void SetId(const char* value) { m_idHasBeenSet = true; m_id.assign(value); } /** *

ID for the Resolver configuration.

*/ inline ResolverConfig& WithId(const Aws::String& value) { SetId(value); return *this;} /** *

ID for the Resolver configuration.

*/ inline ResolverConfig& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;} /** *

ID for the Resolver configuration.

*/ inline ResolverConfig& WithId(const char* value) { SetId(value); return *this;} /** *

The ID of the Amazon Virtual Private Cloud VPC that you're configuring * Resolver for.

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

The ID of the Amazon Virtual Private Cloud VPC that you're configuring * Resolver for.

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

The ID of the Amazon Virtual Private Cloud VPC that you're configuring * Resolver for.

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

The ID of the Amazon Virtual Private Cloud VPC that you're configuring * Resolver for.

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

The ID of the Amazon Virtual Private Cloud VPC that you're configuring * Resolver for.

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

The ID of the Amazon Virtual Private Cloud VPC that you're configuring * Resolver for.

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

The ID of the Amazon Virtual Private Cloud VPC that you're configuring * Resolver for.

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

The ID of the Amazon Virtual Private Cloud VPC that you're configuring * Resolver for.

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

The owner account ID of the Amazon Virtual Private Cloud VPC.

*/ inline const Aws::String& GetOwnerId() const{ return m_ownerId; } /** *

The owner account ID of the Amazon Virtual Private Cloud VPC.

*/ inline bool OwnerIdHasBeenSet() const { return m_ownerIdHasBeenSet; } /** *

The owner account ID of the Amazon Virtual Private Cloud VPC.

*/ inline void SetOwnerId(const Aws::String& value) { m_ownerIdHasBeenSet = true; m_ownerId = value; } /** *

The owner account ID of the Amazon Virtual Private Cloud VPC.

*/ inline void SetOwnerId(Aws::String&& value) { m_ownerIdHasBeenSet = true; m_ownerId = std::move(value); } /** *

The owner account ID of the Amazon Virtual Private Cloud VPC.

*/ inline void SetOwnerId(const char* value) { m_ownerIdHasBeenSet = true; m_ownerId.assign(value); } /** *

The owner account ID of the Amazon Virtual Private Cloud VPC.

*/ inline ResolverConfig& WithOwnerId(const Aws::String& value) { SetOwnerId(value); return *this;} /** *

The owner account ID of the Amazon Virtual Private Cloud VPC.

*/ inline ResolverConfig& WithOwnerId(Aws::String&& value) { SetOwnerId(std::move(value)); return *this;} /** *

The owner account ID of the Amazon Virtual Private Cloud VPC.

*/ inline ResolverConfig& WithOwnerId(const char* value) { SetOwnerId(value); return *this;} /** *

The status of whether or not the Resolver will create autodefined rules for * reverse DNS lookups. This is enabled by default. The status can be one of * following:

  • ENABLING: Autodefined rules for reverse DNS * lookups are being enabled but are not complete.

  • * ENABLED: Autodefined rules for reverse DNS lookups are enabled.

  • *
  • DISABLING: Autodefined rules for reverse DNS lookups are being * disabled but are not complete.

  • DISABLED: Autodefined * rules for reverse DNS lookups are disabled.

*/ inline const ResolverAutodefinedReverseStatus& GetAutodefinedReverse() const{ return m_autodefinedReverse; } /** *

The status of whether or not the Resolver will create autodefined rules for * reverse DNS lookups. This is enabled by default. The status can be one of * following:

  • ENABLING: Autodefined rules for reverse DNS * lookups are being enabled but are not complete.

  • * ENABLED: Autodefined rules for reverse DNS lookups are enabled.

  • *
  • DISABLING: Autodefined rules for reverse DNS lookups are being * disabled but are not complete.

  • DISABLED: Autodefined * rules for reverse DNS lookups are disabled.

*/ inline bool AutodefinedReverseHasBeenSet() const { return m_autodefinedReverseHasBeenSet; } /** *

The status of whether or not the Resolver will create autodefined rules for * reverse DNS lookups. This is enabled by default. The status can be one of * following:

  • ENABLING: Autodefined rules for reverse DNS * lookups are being enabled but are not complete.

  • * ENABLED: Autodefined rules for reverse DNS lookups are enabled.

  • *
  • DISABLING: Autodefined rules for reverse DNS lookups are being * disabled but are not complete.

  • DISABLED: Autodefined * rules for reverse DNS lookups are disabled.

*/ inline void SetAutodefinedReverse(const ResolverAutodefinedReverseStatus& value) { m_autodefinedReverseHasBeenSet = true; m_autodefinedReverse = value; } /** *

The status of whether or not the Resolver will create autodefined rules for * reverse DNS lookups. This is enabled by default. The status can be one of * following:

  • ENABLING: Autodefined rules for reverse DNS * lookups are being enabled but are not complete.

  • * ENABLED: Autodefined rules for reverse DNS lookups are enabled.

  • *
  • DISABLING: Autodefined rules for reverse DNS lookups are being * disabled but are not complete.

  • DISABLED: Autodefined * rules for reverse DNS lookups are disabled.

*/ inline void SetAutodefinedReverse(ResolverAutodefinedReverseStatus&& value) { m_autodefinedReverseHasBeenSet = true; m_autodefinedReverse = std::move(value); } /** *

The status of whether or not the Resolver will create autodefined rules for * reverse DNS lookups. This is enabled by default. The status can be one of * following:

  • ENABLING: Autodefined rules for reverse DNS * lookups are being enabled but are not complete.

  • * ENABLED: Autodefined rules for reverse DNS lookups are enabled.

  • *
  • DISABLING: Autodefined rules for reverse DNS lookups are being * disabled but are not complete.

  • DISABLED: Autodefined * rules for reverse DNS lookups are disabled.

*/ inline ResolverConfig& WithAutodefinedReverse(const ResolverAutodefinedReverseStatus& value) { SetAutodefinedReverse(value); return *this;} /** *

The status of whether or not the Resolver will create autodefined rules for * reverse DNS lookups. This is enabled by default. The status can be one of * following:

  • ENABLING: Autodefined rules for reverse DNS * lookups are being enabled but are not complete.

  • * ENABLED: Autodefined rules for reverse DNS lookups are enabled.

  • *
  • DISABLING: Autodefined rules for reverse DNS lookups are being * disabled but are not complete.

  • DISABLED: Autodefined * rules for reverse DNS lookups are disabled.

*/ inline ResolverConfig& WithAutodefinedReverse(ResolverAutodefinedReverseStatus&& value) { SetAutodefinedReverse(std::move(value)); return *this;} private: Aws::String m_id; bool m_idHasBeenSet = false; Aws::String m_resourceId; bool m_resourceIdHasBeenSet = false; Aws::String m_ownerId; bool m_ownerIdHasBeenSet = false; ResolverAutodefinedReverseStatus m_autodefinedReverse; bool m_autodefinedReverseHasBeenSet = false; }; } // namespace Model } // namespace Route53Resolver } // namespace Aws