/** * 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 { /** *

High-level information about a list of firewall domains for use in a * FirewallRule. This is returned by GetFirewallDomainList.

To * retrieve the domains that are defined for this domain list, call * ListFirewallDomains.

See Also:

AWS * API Reference

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

The ID of the domain list.

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

The ID of the domain list.

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

The ID of the domain list.

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

The ID of the domain list.

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

The ID of the domain list.

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

The ID of the domain list.

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

The ID of the domain list.

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

The ID of the domain list.

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

The Amazon Resource Name (ARN) of the firewall domain list.

*/ inline const Aws::String& GetArn() const{ return m_arn; } /** *

The Amazon Resource Name (ARN) of the firewall domain list.

*/ inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; } /** *

The Amazon Resource Name (ARN) of the firewall domain list.

*/ inline void SetArn(const Aws::String& value) { m_arnHasBeenSet = true; m_arn = value; } /** *

The Amazon Resource Name (ARN) of the firewall domain list.

*/ inline void SetArn(Aws::String&& value) { m_arnHasBeenSet = true; m_arn = std::move(value); } /** *

The Amazon Resource Name (ARN) of the firewall domain list.

*/ inline void SetArn(const char* value) { m_arnHasBeenSet = true; m_arn.assign(value); } /** *

The Amazon Resource Name (ARN) of the firewall domain list.

*/ inline FirewallDomainList& WithArn(const Aws::String& value) { SetArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the firewall domain list.

*/ inline FirewallDomainList& WithArn(Aws::String&& value) { SetArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the firewall domain list.

*/ inline FirewallDomainList& WithArn(const char* value) { SetArn(value); return *this;} /** *

The name of the domain list.

*/ inline const Aws::String& GetName() const{ return m_name; } /** *

The name of the domain list.

*/ inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } /** *

The name of the domain list.

*/ inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; } /** *

The name of the domain list.

*/ inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } /** *

The name of the domain list.

*/ inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); } /** *

The name of the domain list.

*/ inline FirewallDomainList& WithName(const Aws::String& value) { SetName(value); return *this;} /** *

The name of the domain list.

*/ inline FirewallDomainList& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} /** *

The name of the domain list.

*/ inline FirewallDomainList& WithName(const char* value) { SetName(value); return *this;} /** *

The number of domain names that are specified in the domain list.

*/ inline int GetDomainCount() const{ return m_domainCount; } /** *

The number of domain names that are specified in the domain list.

*/ inline bool DomainCountHasBeenSet() const { return m_domainCountHasBeenSet; } /** *

The number of domain names that are specified in the domain list.

*/ inline void SetDomainCount(int value) { m_domainCountHasBeenSet = true; m_domainCount = value; } /** *

The number of domain names that are specified in the domain list.

*/ inline FirewallDomainList& WithDomainCount(int value) { SetDomainCount(value); return *this;} /** *

The status of the domain list.

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

The status of the domain list.

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

The status of the domain list.

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

The status of the domain list.

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

The status of the domain list.

*/ inline FirewallDomainList& WithStatus(const FirewallDomainListStatus& value) { SetStatus(value); return *this;} /** *

The status of the domain list.

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

Additional information about the status of the list, if available.

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

Additional information about the status of the list, if available.

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

Additional information about the status of the list, if available.

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

Additional information about the status of the list, if available.

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

Additional information about the status of the list, if available.

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

Additional information about the status of the list, if available.

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

Additional information about the status of the list, if available.

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

Additional information about the status of the list, if available.

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

The owner of the list, used only for lists that are not managed by you. For * example, the managed domain list AWSManagedDomainsMalwareDomainList * has the managed owner name Route 53 Resolver DNS Firewall.

*/ inline const Aws::String& GetManagedOwnerName() const{ return m_managedOwnerName; } /** *

The owner of the list, used only for lists that are not managed by you. For * example, the managed domain list AWSManagedDomainsMalwareDomainList * has the managed owner name Route 53 Resolver DNS Firewall.

*/ inline bool ManagedOwnerNameHasBeenSet() const { return m_managedOwnerNameHasBeenSet; } /** *

The owner of the list, used only for lists that are not managed by you. For * example, the managed domain list AWSManagedDomainsMalwareDomainList * has the managed owner name Route 53 Resolver DNS Firewall.

*/ inline void SetManagedOwnerName(const Aws::String& value) { m_managedOwnerNameHasBeenSet = true; m_managedOwnerName = value; } /** *

The owner of the list, used only for lists that are not managed by you. For * example, the managed domain list AWSManagedDomainsMalwareDomainList * has the managed owner name Route 53 Resolver DNS Firewall.

*/ inline void SetManagedOwnerName(Aws::String&& value) { m_managedOwnerNameHasBeenSet = true; m_managedOwnerName = std::move(value); } /** *

The owner of the list, used only for lists that are not managed by you. For * example, the managed domain list AWSManagedDomainsMalwareDomainList * has the managed owner name Route 53 Resolver DNS Firewall.

*/ inline void SetManagedOwnerName(const char* value) { m_managedOwnerNameHasBeenSet = true; m_managedOwnerName.assign(value); } /** *

The owner of the list, used only for lists that are not managed by you. For * example, the managed domain list AWSManagedDomainsMalwareDomainList * has the managed owner name Route 53 Resolver DNS Firewall.

*/ inline FirewallDomainList& WithManagedOwnerName(const Aws::String& value) { SetManagedOwnerName(value); return *this;} /** *

The owner of the list, used only for lists that are not managed by you. For * example, the managed domain list AWSManagedDomainsMalwareDomainList * has the managed owner name Route 53 Resolver DNS Firewall.

*/ inline FirewallDomainList& WithManagedOwnerName(Aws::String&& value) { SetManagedOwnerName(std::move(value)); return *this;} /** *

The owner of the list, used only for lists that are not managed by you. For * example, the managed domain list AWSManagedDomainsMalwareDomainList * has the managed owner name Route 53 Resolver DNS Firewall.

*/ inline FirewallDomainList& WithManagedOwnerName(const char* value) { SetManagedOwnerName(value); return *this;} /** *

A unique string defined by you to identify the request. This allows you to * retry failed requests without the risk of running the operation twice. This can * be any unique string, for example, a timestamp.

*/ inline const Aws::String& GetCreatorRequestId() const{ return m_creatorRequestId; } /** *

A unique string defined by you to identify the request. This allows you to * retry failed requests without the risk of running the operation twice. This can * be any unique string, for example, a timestamp.

*/ inline bool CreatorRequestIdHasBeenSet() const { return m_creatorRequestIdHasBeenSet; } /** *

A unique string defined by you to identify the request. This allows you to * retry failed requests without the risk of running the operation twice. This can * be any unique string, for example, a timestamp.

*/ inline void SetCreatorRequestId(const Aws::String& value) { m_creatorRequestIdHasBeenSet = true; m_creatorRequestId = value; } /** *

A unique string defined by you to identify the request. This allows you to * retry failed requests without the risk of running the operation twice. This can * be any unique string, for example, a timestamp.

*/ inline void SetCreatorRequestId(Aws::String&& value) { m_creatorRequestIdHasBeenSet = true; m_creatorRequestId = std::move(value); } /** *

A unique string defined by you to identify the request. This allows you to * retry failed requests without the risk of running the operation twice. This can * be any unique string, for example, a timestamp.

*/ inline void SetCreatorRequestId(const char* value) { m_creatorRequestIdHasBeenSet = true; m_creatorRequestId.assign(value); } /** *

A unique string defined by you to identify the request. This allows you to * retry failed requests without the risk of running the operation twice. This can * be any unique string, for example, a timestamp.

*/ inline FirewallDomainList& WithCreatorRequestId(const Aws::String& value) { SetCreatorRequestId(value); return *this;} /** *

A unique string defined by you to identify the request. This allows you to * retry failed requests without the risk of running the operation twice. This can * be any unique string, for example, a timestamp.

*/ inline FirewallDomainList& WithCreatorRequestId(Aws::String&& value) { SetCreatorRequestId(std::move(value)); return *this;} /** *

A unique string defined by you to identify the request. This allows you to * retry failed requests without the risk of running the operation twice. This can * be any unique string, for example, a timestamp.

*/ inline FirewallDomainList& WithCreatorRequestId(const char* value) { SetCreatorRequestId(value); return *this;} /** *

The date and time that the domain list was created, in Unix time format and * Coordinated Universal Time (UTC).

*/ inline const Aws::String& GetCreationTime() const{ return m_creationTime; } /** *

The date and time that the domain list was created, in Unix time format and * Coordinated Universal Time (UTC).

*/ inline bool CreationTimeHasBeenSet() const { return m_creationTimeHasBeenSet; } /** *

The date and time that the domain list was created, in Unix time format and * Coordinated Universal Time (UTC).

*/ inline void SetCreationTime(const Aws::String& value) { m_creationTimeHasBeenSet = true; m_creationTime = value; } /** *

The date and time that the domain list was created, in Unix time format and * Coordinated Universal Time (UTC).

*/ inline void SetCreationTime(Aws::String&& value) { m_creationTimeHasBeenSet = true; m_creationTime = std::move(value); } /** *

The date and time that the domain list was created, in Unix time format and * Coordinated Universal Time (UTC).

*/ inline void SetCreationTime(const char* value) { m_creationTimeHasBeenSet = true; m_creationTime.assign(value); } /** *

The date and time that the domain list was created, in Unix time format and * Coordinated Universal Time (UTC).

*/ inline FirewallDomainList& WithCreationTime(const Aws::String& value) { SetCreationTime(value); return *this;} /** *

The date and time that the domain list was created, in Unix time format and * Coordinated Universal Time (UTC).

*/ inline FirewallDomainList& WithCreationTime(Aws::String&& value) { SetCreationTime(std::move(value)); return *this;} /** *

The date and time that the domain list was created, in Unix time format and * Coordinated Universal Time (UTC).

*/ inline FirewallDomainList& WithCreationTime(const char* value) { SetCreationTime(value); return *this;} /** *

The date and time that the domain list was last modified, in Unix time format * and Coordinated Universal Time (UTC).

*/ inline const Aws::String& GetModificationTime() const{ return m_modificationTime; } /** *

The date and time that the domain list was last modified, in Unix time format * and Coordinated Universal Time (UTC).

*/ inline bool ModificationTimeHasBeenSet() const { return m_modificationTimeHasBeenSet; } /** *

The date and time that the domain list was last modified, in Unix time format * and Coordinated Universal Time (UTC).

*/ inline void SetModificationTime(const Aws::String& value) { m_modificationTimeHasBeenSet = true; m_modificationTime = value; } /** *

The date and time that the domain list was last modified, in Unix time format * and Coordinated Universal Time (UTC).

*/ inline void SetModificationTime(Aws::String&& value) { m_modificationTimeHasBeenSet = true; m_modificationTime = std::move(value); } /** *

The date and time that the domain list was last modified, in Unix time format * and Coordinated Universal Time (UTC).

*/ inline void SetModificationTime(const char* value) { m_modificationTimeHasBeenSet = true; m_modificationTime.assign(value); } /** *

The date and time that the domain list was last modified, in Unix time format * and Coordinated Universal Time (UTC).

*/ inline FirewallDomainList& WithModificationTime(const Aws::String& value) { SetModificationTime(value); return *this;} /** *

The date and time that the domain list was last modified, in Unix time format * and Coordinated Universal Time (UTC).

*/ inline FirewallDomainList& WithModificationTime(Aws::String&& value) { SetModificationTime(std::move(value)); return *this;} /** *

The date and time that the domain list was last modified, in Unix time format * and Coordinated Universal Time (UTC).

*/ inline FirewallDomainList& WithModificationTime(const char* value) { SetModificationTime(value); return *this;} private: Aws::String m_id; bool m_idHasBeenSet = false; Aws::String m_arn; bool m_arnHasBeenSet = false; Aws::String m_name; bool m_nameHasBeenSet = false; int m_domainCount; bool m_domainCountHasBeenSet = false; FirewallDomainListStatus m_status; bool m_statusHasBeenSet = false; Aws::String m_statusMessage; bool m_statusMessageHasBeenSet = false; Aws::String m_managedOwnerName; bool m_managedOwnerNameHasBeenSet = false; Aws::String m_creatorRequestId; bool m_creatorRequestIdHasBeenSet = false; Aws::String m_creationTime; bool m_creationTimeHasBeenSet = false; Aws::String m_modificationTime; bool m_modificationTimeHasBeenSet = false; }; } // namespace Model } // namespace Route53Resolver } // namespace Aws