/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include A Schema specifies the expected data model of the table. See
* Also:
AWS
* API Reference
A non-empty list of partition keys defining the attributes used to partition * the table data. The order of the list determines the partition hierarchy. The * name and type of each partition key as well as the partition key order cannot be * changed after the table is created. However, the enforcement level of each * partition key can be changed.
*/ inline const Aws::VectorA non-empty list of partition keys defining the attributes used to partition * the table data. The order of the list determines the partition hierarchy. The * name and type of each partition key as well as the partition key order cannot be * changed after the table is created. However, the enforcement level of each * partition key can be changed.
*/ inline bool CompositePartitionKeyHasBeenSet() const { return m_compositePartitionKeyHasBeenSet; } /** *A non-empty list of partition keys defining the attributes used to partition * the table data. The order of the list determines the partition hierarchy. The * name and type of each partition key as well as the partition key order cannot be * changed after the table is created. However, the enforcement level of each * partition key can be changed.
*/ inline void SetCompositePartitionKey(const Aws::VectorA non-empty list of partition keys defining the attributes used to partition * the table data. The order of the list determines the partition hierarchy. The * name and type of each partition key as well as the partition key order cannot be * changed after the table is created. However, the enforcement level of each * partition key can be changed.
*/ inline void SetCompositePartitionKey(Aws::VectorA non-empty list of partition keys defining the attributes used to partition * the table data. The order of the list determines the partition hierarchy. The * name and type of each partition key as well as the partition key order cannot be * changed after the table is created. However, the enforcement level of each * partition key can be changed.
*/ inline Schema& WithCompositePartitionKey(const Aws::VectorA non-empty list of partition keys defining the attributes used to partition * the table data. The order of the list determines the partition hierarchy. The * name and type of each partition key as well as the partition key order cannot be * changed after the table is created. However, the enforcement level of each * partition key can be changed.
*/ inline Schema& WithCompositePartitionKey(Aws::VectorA non-empty list of partition keys defining the attributes used to partition * the table data. The order of the list determines the partition hierarchy. The * name and type of each partition key as well as the partition key order cannot be * changed after the table is created. However, the enforcement level of each * partition key can be changed.
*/ inline Schema& AddCompositePartitionKey(const PartitionKey& value) { m_compositePartitionKeyHasBeenSet = true; m_compositePartitionKey.push_back(value); return *this; } /** *A non-empty list of partition keys defining the attributes used to partition * the table data. The order of the list determines the partition hierarchy. The * name and type of each partition key as well as the partition key order cannot be * changed after the table is created. However, the enforcement level of each * partition key can be changed.
*/ inline Schema& AddCompositePartitionKey(PartitionKey&& value) { m_compositePartitionKeyHasBeenSet = true; m_compositePartitionKey.push_back(std::move(value)); return *this; } private: Aws::Vector