/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include A complex type that contains information about a configuration for DNS query
* logging.See Also:
AWS
* API Reference
The ID for a configuration for DNS query logging.
*/ inline const Aws::String& GetId() const{ return m_id; } /** *The ID for a configuration for DNS query logging.
*/ inline bool IdHasBeenSet() const { return m_idHasBeenSet; } /** *The ID for a configuration for DNS query logging.
*/ inline void SetId(const Aws::String& value) { m_idHasBeenSet = true; m_id = value; } /** *The ID for a configuration for DNS query logging.
*/ inline void SetId(Aws::String&& value) { m_idHasBeenSet = true; m_id = std::move(value); } /** *The ID for a configuration for DNS query logging.
*/ inline void SetId(const char* value) { m_idHasBeenSet = true; m_id.assign(value); } /** *The ID for a configuration for DNS query logging.
*/ inline QueryLoggingConfig& WithId(const Aws::String& value) { SetId(value); return *this;} /** *The ID for a configuration for DNS query logging.
*/ inline QueryLoggingConfig& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;} /** *The ID for a configuration for DNS query logging.
*/ inline QueryLoggingConfig& WithId(const char* value) { SetId(value); return *this;} /** *The ID of the hosted zone that CloudWatch Logs is logging queries for.
*/ inline const Aws::String& GetHostedZoneId() const{ return m_hostedZoneId; } /** *The ID of the hosted zone that CloudWatch Logs is logging queries for.
*/ inline bool HostedZoneIdHasBeenSet() const { return m_hostedZoneIdHasBeenSet; } /** *The ID of the hosted zone that CloudWatch Logs is logging queries for.
*/ inline void SetHostedZoneId(const Aws::String& value) { m_hostedZoneIdHasBeenSet = true; m_hostedZoneId = value; } /** *The ID of the hosted zone that CloudWatch Logs is logging queries for.
*/ inline void SetHostedZoneId(Aws::String&& value) { m_hostedZoneIdHasBeenSet = true; m_hostedZoneId = std::move(value); } /** *The ID of the hosted zone that CloudWatch Logs is logging queries for.
*/ inline void SetHostedZoneId(const char* value) { m_hostedZoneIdHasBeenSet = true; m_hostedZoneId.assign(value); } /** *The ID of the hosted zone that CloudWatch Logs is logging queries for.
*/ inline QueryLoggingConfig& WithHostedZoneId(const Aws::String& value) { SetHostedZoneId(value); return *this;} /** *The ID of the hosted zone that CloudWatch Logs is logging queries for.
*/ inline QueryLoggingConfig& WithHostedZoneId(Aws::String&& value) { SetHostedZoneId(std::move(value)); return *this;} /** *The ID of the hosted zone that CloudWatch Logs is logging queries for.
*/ inline QueryLoggingConfig& WithHostedZoneId(const char* value) { SetHostedZoneId(value); return *this;} /** *The Amazon Resource Name (ARN) of the CloudWatch Logs log group that Amazon * Route 53 is publishing logs to.
*/ inline const Aws::String& GetCloudWatchLogsLogGroupArn() const{ return m_cloudWatchLogsLogGroupArn; } /** *The Amazon Resource Name (ARN) of the CloudWatch Logs log group that Amazon * Route 53 is publishing logs to.
*/ inline bool CloudWatchLogsLogGroupArnHasBeenSet() const { return m_cloudWatchLogsLogGroupArnHasBeenSet; } /** *The Amazon Resource Name (ARN) of the CloudWatch Logs log group that Amazon * Route 53 is publishing logs to.
*/ inline void SetCloudWatchLogsLogGroupArn(const Aws::String& value) { m_cloudWatchLogsLogGroupArnHasBeenSet = true; m_cloudWatchLogsLogGroupArn = value; } /** *The Amazon Resource Name (ARN) of the CloudWatch Logs log group that Amazon * Route 53 is publishing logs to.
*/ inline void SetCloudWatchLogsLogGroupArn(Aws::String&& value) { m_cloudWatchLogsLogGroupArnHasBeenSet = true; m_cloudWatchLogsLogGroupArn = std::move(value); } /** *The Amazon Resource Name (ARN) of the CloudWatch Logs log group that Amazon * Route 53 is publishing logs to.
*/ inline void SetCloudWatchLogsLogGroupArn(const char* value) { m_cloudWatchLogsLogGroupArnHasBeenSet = true; m_cloudWatchLogsLogGroupArn.assign(value); } /** *The Amazon Resource Name (ARN) of the CloudWatch Logs log group that Amazon * Route 53 is publishing logs to.
*/ inline QueryLoggingConfig& WithCloudWatchLogsLogGroupArn(const Aws::String& value) { SetCloudWatchLogsLogGroupArn(value); return *this;} /** *The Amazon Resource Name (ARN) of the CloudWatch Logs log group that Amazon * Route 53 is publishing logs to.
*/ inline QueryLoggingConfig& WithCloudWatchLogsLogGroupArn(Aws::String&& value) { SetCloudWatchLogsLogGroupArn(std::move(value)); return *this;} /** *The Amazon Resource Name (ARN) of the CloudWatch Logs log group that Amazon * Route 53 is publishing logs to.
*/ inline QueryLoggingConfig& WithCloudWatchLogsLogGroupArn(const char* value) { SetCloudWatchLogsLogGroupArn(value); return *this;} private: Aws::String m_id; bool m_idHasBeenSet = false; Aws::String m_hostedZoneId; bool m_hostedZoneIdHasBeenSet = false; Aws::String m_cloudWatchLogsLogGroupArn; bool m_cloudWatchLogsLogGroupArnHasBeenSet = false; }; } // namespace Model } // namespace Route53 } // namespace Aws