/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include A logical table is a unit that joins and that data transformations
* operate on. A logical table has a source, which can be either a physical table
* or result of a join. When a logical table points to a physical table, the
* logical table acts as a mutable copy of that physical table through transform
* operations.See Also:
AWS
* API Reference
A display name for the logical table.
*/ inline const Aws::String& GetAlias() const{ return m_alias; } /** *A display name for the logical table.
*/ inline bool AliasHasBeenSet() const { return m_aliasHasBeenSet; } /** *A display name for the logical table.
*/ inline void SetAlias(const Aws::String& value) { m_aliasHasBeenSet = true; m_alias = value; } /** *A display name for the logical table.
*/ inline void SetAlias(Aws::String&& value) { m_aliasHasBeenSet = true; m_alias = std::move(value); } /** *A display name for the logical table.
*/ inline void SetAlias(const char* value) { m_aliasHasBeenSet = true; m_alias.assign(value); } /** *A display name for the logical table.
*/ inline LogicalTable& WithAlias(const Aws::String& value) { SetAlias(value); return *this;} /** *A display name for the logical table.
*/ inline LogicalTable& WithAlias(Aws::String&& value) { SetAlias(std::move(value)); return *this;} /** *A display name for the logical table.
*/ inline LogicalTable& WithAlias(const char* value) { SetAlias(value); return *this;} /** *Transform operations that act on this logical table. For this structure to be * valid, only one of the attributes can be non-null.
*/ inline const Aws::VectorTransform operations that act on this logical table. For this structure to be * valid, only one of the attributes can be non-null.
*/ inline bool DataTransformsHasBeenSet() const { return m_dataTransformsHasBeenSet; } /** *Transform operations that act on this logical table. For this structure to be * valid, only one of the attributes can be non-null.
*/ inline void SetDataTransforms(const Aws::VectorTransform operations that act on this logical table. For this structure to be * valid, only one of the attributes can be non-null.
*/ inline void SetDataTransforms(Aws::VectorTransform operations that act on this logical table. For this structure to be * valid, only one of the attributes can be non-null.
*/ inline LogicalTable& WithDataTransforms(const Aws::VectorTransform operations that act on this logical table. For this structure to be * valid, only one of the attributes can be non-null.
*/ inline LogicalTable& WithDataTransforms(Aws::VectorTransform operations that act on this logical table. For this structure to be * valid, only one of the attributes can be non-null.
*/ inline LogicalTable& AddDataTransforms(const TransformOperation& value) { m_dataTransformsHasBeenSet = true; m_dataTransforms.push_back(value); return *this; } /** *Transform operations that act on this logical table. For this structure to be * valid, only one of the attributes can be non-null.
*/ inline LogicalTable& AddDataTransforms(TransformOperation&& value) { m_dataTransformsHasBeenSet = true; m_dataTransforms.push_back(std::move(value)); return *this; } /** *Source of this logical table.
*/ inline const LogicalTableSource& GetSource() const{ return m_source; } /** *Source of this logical table.
*/ inline bool SourceHasBeenSet() const { return m_sourceHasBeenSet; } /** *Source of this logical table.
*/ inline void SetSource(const LogicalTableSource& value) { m_sourceHasBeenSet = true; m_source = value; } /** *Source of this logical table.
*/ inline void SetSource(LogicalTableSource&& value) { m_sourceHasBeenSet = true; m_source = std::move(value); } /** *Source of this logical table.
*/ inline LogicalTable& WithSource(const LogicalTableSource& value) { SetSource(value); return *this;} /** *Source of this logical table.
*/ inline LogicalTable& WithSource(LogicalTableSource&& value) { SetSource(std::move(value)); return *this;} private: Aws::String m_alias; bool m_aliasHasBeenSet = false; Aws::Vector