/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace QuickSight { namespace Model { /** *

Information about the source of a logical table. This is a variant type * structure. For this structure to be valid, only one of the attributes can be * non-null.

See Also:

AWS * API Reference

*/ class LogicalTableSource { public: AWS_QUICKSIGHT_API LogicalTableSource(); AWS_QUICKSIGHT_API LogicalTableSource(Aws::Utils::Json::JsonView jsonValue); AWS_QUICKSIGHT_API LogicalTableSource& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_QUICKSIGHT_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

Specifies the result of a join of two logical tables.

*/ inline const JoinInstruction& GetJoinInstruction() const{ return m_joinInstruction; } /** *

Specifies the result of a join of two logical tables.

*/ inline bool JoinInstructionHasBeenSet() const { return m_joinInstructionHasBeenSet; } /** *

Specifies the result of a join of two logical tables.

*/ inline void SetJoinInstruction(const JoinInstruction& value) { m_joinInstructionHasBeenSet = true; m_joinInstruction = value; } /** *

Specifies the result of a join of two logical tables.

*/ inline void SetJoinInstruction(JoinInstruction&& value) { m_joinInstructionHasBeenSet = true; m_joinInstruction = std::move(value); } /** *

Specifies the result of a join of two logical tables.

*/ inline LogicalTableSource& WithJoinInstruction(const JoinInstruction& value) { SetJoinInstruction(value); return *this;} /** *

Specifies the result of a join of two logical tables.

*/ inline LogicalTableSource& WithJoinInstruction(JoinInstruction&& value) { SetJoinInstruction(std::move(value)); return *this;} /** *

Physical table ID.

*/ inline const Aws::String& GetPhysicalTableId() const{ return m_physicalTableId; } /** *

Physical table ID.

*/ inline bool PhysicalTableIdHasBeenSet() const { return m_physicalTableIdHasBeenSet; } /** *

Physical table ID.

*/ inline void SetPhysicalTableId(const Aws::String& value) { m_physicalTableIdHasBeenSet = true; m_physicalTableId = value; } /** *

Physical table ID.

*/ inline void SetPhysicalTableId(Aws::String&& value) { m_physicalTableIdHasBeenSet = true; m_physicalTableId = std::move(value); } /** *

Physical table ID.

*/ inline void SetPhysicalTableId(const char* value) { m_physicalTableIdHasBeenSet = true; m_physicalTableId.assign(value); } /** *

Physical table ID.

*/ inline LogicalTableSource& WithPhysicalTableId(const Aws::String& value) { SetPhysicalTableId(value); return *this;} /** *

Physical table ID.

*/ inline LogicalTableSource& WithPhysicalTableId(Aws::String&& value) { SetPhysicalTableId(std::move(value)); return *this;} /** *

Physical table ID.

*/ inline LogicalTableSource& WithPhysicalTableId(const char* value) { SetPhysicalTableId(value); return *this;} /** *

The Amazon Resource Number (ARN) of the parent dataset.

*/ inline const Aws::String& GetDataSetArn() const{ return m_dataSetArn; } /** *

The Amazon Resource Number (ARN) of the parent dataset.

*/ inline bool DataSetArnHasBeenSet() const { return m_dataSetArnHasBeenSet; } /** *

The Amazon Resource Number (ARN) of the parent dataset.

*/ inline void SetDataSetArn(const Aws::String& value) { m_dataSetArnHasBeenSet = true; m_dataSetArn = value; } /** *

The Amazon Resource Number (ARN) of the parent dataset.

*/ inline void SetDataSetArn(Aws::String&& value) { m_dataSetArnHasBeenSet = true; m_dataSetArn = std::move(value); } /** *

The Amazon Resource Number (ARN) of the parent dataset.

*/ inline void SetDataSetArn(const char* value) { m_dataSetArnHasBeenSet = true; m_dataSetArn.assign(value); } /** *

The Amazon Resource Number (ARN) of the parent dataset.

*/ inline LogicalTableSource& WithDataSetArn(const Aws::String& value) { SetDataSetArn(value); return *this;} /** *

The Amazon Resource Number (ARN) of the parent dataset.

*/ inline LogicalTableSource& WithDataSetArn(Aws::String&& value) { SetDataSetArn(std::move(value)); return *this;} /** *

The Amazon Resource Number (ARN) of the parent dataset.

*/ inline LogicalTableSource& WithDataSetArn(const char* value) { SetDataSetArn(value); return *this;} private: JoinInstruction m_joinInstruction; bool m_joinInstructionHasBeenSet = false; Aws::String m_physicalTableId; bool m_physicalTableIdHasBeenSet = false; Aws::String m_dataSetArn; bool m_dataSetArnHasBeenSet = false; }; } // namespace Model } // namespace QuickSight } // namespace Aws