/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include The aggregation settings that you can use to customize the output format of
* your flow data. See Also:
AWS
* API Reference
Specifies whether Amazon AppFlow aggregates the flow records into a single * file, or leave them unaggregated.
*/ inline const AggregationType& GetAggregationType() const{ return m_aggregationType; } /** *Specifies whether Amazon AppFlow aggregates the flow records into a single * file, or leave them unaggregated.
*/ inline bool AggregationTypeHasBeenSet() const { return m_aggregationTypeHasBeenSet; } /** *Specifies whether Amazon AppFlow aggregates the flow records into a single * file, or leave them unaggregated.
*/ inline void SetAggregationType(const AggregationType& value) { m_aggregationTypeHasBeenSet = true; m_aggregationType = value; } /** *Specifies whether Amazon AppFlow aggregates the flow records into a single * file, or leave them unaggregated.
*/ inline void SetAggregationType(AggregationType&& value) { m_aggregationTypeHasBeenSet = true; m_aggregationType = std::move(value); } /** *Specifies whether Amazon AppFlow aggregates the flow records into a single * file, or leave them unaggregated.
*/ inline AggregationConfig& WithAggregationType(const AggregationType& value) { SetAggregationType(value); return *this;} /** *Specifies whether Amazon AppFlow aggregates the flow records into a single * file, or leave them unaggregated.
*/ inline AggregationConfig& WithAggregationType(AggregationType&& value) { SetAggregationType(std::move(value)); return *this;} /** *The desired file size, in MB, for each output file that Amazon AppFlow writes * to the flow destination. For each file, Amazon AppFlow attempts to achieve the * size that you specify. The actual file sizes might differ from this target based * on the number and size of the records that each file contains.
*/ inline long long GetTargetFileSize() const{ return m_targetFileSize; } /** *The desired file size, in MB, for each output file that Amazon AppFlow writes * to the flow destination. For each file, Amazon AppFlow attempts to achieve the * size that you specify. The actual file sizes might differ from this target based * on the number and size of the records that each file contains.
*/ inline bool TargetFileSizeHasBeenSet() const { return m_targetFileSizeHasBeenSet; } /** *The desired file size, in MB, for each output file that Amazon AppFlow writes * to the flow destination. For each file, Amazon AppFlow attempts to achieve the * size that you specify. The actual file sizes might differ from this target based * on the number and size of the records that each file contains.
*/ inline void SetTargetFileSize(long long value) { m_targetFileSizeHasBeenSet = true; m_targetFileSize = value; } /** *The desired file size, in MB, for each output file that Amazon AppFlow writes * to the flow destination. For each file, Amazon AppFlow attempts to achieve the * size that you specify. The actual file sizes might differ from this target based * on the number and size of the records that each file contains.
*/ inline AggregationConfig& WithTargetFileSize(long long value) { SetTargetFileSize(value); return *this;} private: AggregationType m_aggregationType; bool m_aggregationTypeHasBeenSet = false; long long m_targetFileSize; bool m_targetFileSizeHasBeenSet = false; }; } // namespace Model } // namespace Appflow } // namespace Aws