/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Describes integration options for Amazon Athena.See Also:
* AWS
* API Reference
The location in Amazon S3 to store the generated CloudFormation template.
*/ inline const Aws::String& GetIntegrationResultS3DestinationArn() const{ return m_integrationResultS3DestinationArn; } /** *The location in Amazon S3 to store the generated CloudFormation template.
*/ inline bool IntegrationResultS3DestinationArnHasBeenSet() const { return m_integrationResultS3DestinationArnHasBeenSet; } /** *The location in Amazon S3 to store the generated CloudFormation template.
*/ inline void SetIntegrationResultS3DestinationArn(const Aws::String& value) { m_integrationResultS3DestinationArnHasBeenSet = true; m_integrationResultS3DestinationArn = value; } /** *The location in Amazon S3 to store the generated CloudFormation template.
*/ inline void SetIntegrationResultS3DestinationArn(Aws::String&& value) { m_integrationResultS3DestinationArnHasBeenSet = true; m_integrationResultS3DestinationArn = std::move(value); } /** *The location in Amazon S3 to store the generated CloudFormation template.
*/ inline void SetIntegrationResultS3DestinationArn(const char* value) { m_integrationResultS3DestinationArnHasBeenSet = true; m_integrationResultS3DestinationArn.assign(value); } /** *The location in Amazon S3 to store the generated CloudFormation template.
*/ inline AthenaIntegration& WithIntegrationResultS3DestinationArn(const Aws::String& value) { SetIntegrationResultS3DestinationArn(value); return *this;} /** *The location in Amazon S3 to store the generated CloudFormation template.
*/ inline AthenaIntegration& WithIntegrationResultS3DestinationArn(Aws::String&& value) { SetIntegrationResultS3DestinationArn(std::move(value)); return *this;} /** *The location in Amazon S3 to store the generated CloudFormation template.
*/ inline AthenaIntegration& WithIntegrationResultS3DestinationArn(const char* value) { SetIntegrationResultS3DestinationArn(value); return *this;} /** *The schedule for adding new partitions to the table.
*/ inline const PartitionLoadFrequency& GetPartitionLoadFrequency() const{ return m_partitionLoadFrequency; } /** *The schedule for adding new partitions to the table.
*/ inline bool PartitionLoadFrequencyHasBeenSet() const { return m_partitionLoadFrequencyHasBeenSet; } /** *The schedule for adding new partitions to the table.
*/ inline void SetPartitionLoadFrequency(const PartitionLoadFrequency& value) { m_partitionLoadFrequencyHasBeenSet = true; m_partitionLoadFrequency = value; } /** *The schedule for adding new partitions to the table.
*/ inline void SetPartitionLoadFrequency(PartitionLoadFrequency&& value) { m_partitionLoadFrequencyHasBeenSet = true; m_partitionLoadFrequency = std::move(value); } /** *The schedule for adding new partitions to the table.
*/ inline AthenaIntegration& WithPartitionLoadFrequency(const PartitionLoadFrequency& value) { SetPartitionLoadFrequency(value); return *this;} /** *The schedule for adding new partitions to the table.
*/ inline AthenaIntegration& WithPartitionLoadFrequency(PartitionLoadFrequency&& value) { SetPartitionLoadFrequency(std::move(value)); return *this;} /** *The start date for the partition.
*/ inline const Aws::Utils::DateTime& GetPartitionStartDate() const{ return m_partitionStartDate; } /** *The start date for the partition.
*/ inline bool PartitionStartDateHasBeenSet() const { return m_partitionStartDateHasBeenSet; } /** *The start date for the partition.
*/ inline void SetPartitionStartDate(const Aws::Utils::DateTime& value) { m_partitionStartDateHasBeenSet = true; m_partitionStartDate = value; } /** *The start date for the partition.
*/ inline void SetPartitionStartDate(Aws::Utils::DateTime&& value) { m_partitionStartDateHasBeenSet = true; m_partitionStartDate = std::move(value); } /** *The start date for the partition.
*/ inline AthenaIntegration& WithPartitionStartDate(const Aws::Utils::DateTime& value) { SetPartitionStartDate(value); return *this;} /** *The start date for the partition.
*/ inline AthenaIntegration& WithPartitionStartDate(Aws::Utils::DateTime&& value) { SetPartitionStartDate(std::move(value)); return *this;} /** *The end date for the partition.
*/ inline const Aws::Utils::DateTime& GetPartitionEndDate() const{ return m_partitionEndDate; } /** *The end date for the partition.
*/ inline bool PartitionEndDateHasBeenSet() const { return m_partitionEndDateHasBeenSet; } /** *The end date for the partition.
*/ inline void SetPartitionEndDate(const Aws::Utils::DateTime& value) { m_partitionEndDateHasBeenSet = true; m_partitionEndDate = value; } /** *The end date for the partition.
*/ inline void SetPartitionEndDate(Aws::Utils::DateTime&& value) { m_partitionEndDateHasBeenSet = true; m_partitionEndDate = std::move(value); } /** *The end date for the partition.
*/ inline AthenaIntegration& WithPartitionEndDate(const Aws::Utils::DateTime& value) { SetPartitionEndDate(value); return *this;} /** *The end date for the partition.
*/ inline AthenaIntegration& WithPartitionEndDate(Aws::Utils::DateTime&& value) { SetPartitionEndDate(std::move(value)); return *this;} private: Aws::String m_integrationResultS3DestinationArn; bool m_integrationResultS3DestinationArnHasBeenSet = false; PartitionLoadFrequency m_partitionLoadFrequency; bool m_partitionLoadFrequencyHasBeenSet = false; Aws::Utils::DateTime m_partitionStartDate; bool m_partitionStartDateHasBeenSet = false; Aws::Utils::DateTime m_partitionEndDate; bool m_partitionEndDateHasBeenSet = false; }; } // namespace Model } // namespace EC2 } // namespace Aws