/** * 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 Glue { namespace Model { /** *

Specifies a Delta data store to crawl one or more Delta tables.

See * Also:

AWS * API Reference

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

A list of the Amazon S3 paths to the Delta tables.

*/ inline const Aws::Vector& GetDeltaTables() const{ return m_deltaTables; } /** *

A list of the Amazon S3 paths to the Delta tables.

*/ inline bool DeltaTablesHasBeenSet() const { return m_deltaTablesHasBeenSet; } /** *

A list of the Amazon S3 paths to the Delta tables.

*/ inline void SetDeltaTables(const Aws::Vector& value) { m_deltaTablesHasBeenSet = true; m_deltaTables = value; } /** *

A list of the Amazon S3 paths to the Delta tables.

*/ inline void SetDeltaTables(Aws::Vector&& value) { m_deltaTablesHasBeenSet = true; m_deltaTables = std::move(value); } /** *

A list of the Amazon S3 paths to the Delta tables.

*/ inline DeltaTarget& WithDeltaTables(const Aws::Vector& value) { SetDeltaTables(value); return *this;} /** *

A list of the Amazon S3 paths to the Delta tables.

*/ inline DeltaTarget& WithDeltaTables(Aws::Vector&& value) { SetDeltaTables(std::move(value)); return *this;} /** *

A list of the Amazon S3 paths to the Delta tables.

*/ inline DeltaTarget& AddDeltaTables(const Aws::String& value) { m_deltaTablesHasBeenSet = true; m_deltaTables.push_back(value); return *this; } /** *

A list of the Amazon S3 paths to the Delta tables.

*/ inline DeltaTarget& AddDeltaTables(Aws::String&& value) { m_deltaTablesHasBeenSet = true; m_deltaTables.push_back(std::move(value)); return *this; } /** *

A list of the Amazon S3 paths to the Delta tables.

*/ inline DeltaTarget& AddDeltaTables(const char* value) { m_deltaTablesHasBeenSet = true; m_deltaTables.push_back(value); return *this; } /** *

The name of the connection to use to connect to the Delta table target.

*/ inline const Aws::String& GetConnectionName() const{ return m_connectionName; } /** *

The name of the connection to use to connect to the Delta table target.

*/ inline bool ConnectionNameHasBeenSet() const { return m_connectionNameHasBeenSet; } /** *

The name of the connection to use to connect to the Delta table target.

*/ inline void SetConnectionName(const Aws::String& value) { m_connectionNameHasBeenSet = true; m_connectionName = value; } /** *

The name of the connection to use to connect to the Delta table target.

*/ inline void SetConnectionName(Aws::String&& value) { m_connectionNameHasBeenSet = true; m_connectionName = std::move(value); } /** *

The name of the connection to use to connect to the Delta table target.

*/ inline void SetConnectionName(const char* value) { m_connectionNameHasBeenSet = true; m_connectionName.assign(value); } /** *

The name of the connection to use to connect to the Delta table target.

*/ inline DeltaTarget& WithConnectionName(const Aws::String& value) { SetConnectionName(value); return *this;} /** *

The name of the connection to use to connect to the Delta table target.

*/ inline DeltaTarget& WithConnectionName(Aws::String&& value) { SetConnectionName(std::move(value)); return *this;} /** *

The name of the connection to use to connect to the Delta table target.

*/ inline DeltaTarget& WithConnectionName(const char* value) { SetConnectionName(value); return *this;} /** *

Specifies whether to write the manifest files to the Delta table path.

*/ inline bool GetWriteManifest() const{ return m_writeManifest; } /** *

Specifies whether to write the manifest files to the Delta table path.

*/ inline bool WriteManifestHasBeenSet() const { return m_writeManifestHasBeenSet; } /** *

Specifies whether to write the manifest files to the Delta table path.

*/ inline void SetWriteManifest(bool value) { m_writeManifestHasBeenSet = true; m_writeManifest = value; } /** *

Specifies whether to write the manifest files to the Delta table path.

*/ inline DeltaTarget& WithWriteManifest(bool value) { SetWriteManifest(value); return *this;} /** *

Specifies whether the crawler will create native tables, to allow integration * with query engines that support querying of the Delta transaction log * directly.

*/ inline bool GetCreateNativeDeltaTable() const{ return m_createNativeDeltaTable; } /** *

Specifies whether the crawler will create native tables, to allow integration * with query engines that support querying of the Delta transaction log * directly.

*/ inline bool CreateNativeDeltaTableHasBeenSet() const { return m_createNativeDeltaTableHasBeenSet; } /** *

Specifies whether the crawler will create native tables, to allow integration * with query engines that support querying of the Delta transaction log * directly.

*/ inline void SetCreateNativeDeltaTable(bool value) { m_createNativeDeltaTableHasBeenSet = true; m_createNativeDeltaTable = value; } /** *

Specifies whether the crawler will create native tables, to allow integration * with query engines that support querying of the Delta transaction log * directly.

*/ inline DeltaTarget& WithCreateNativeDeltaTable(bool value) { SetCreateNativeDeltaTable(value); return *this;} private: Aws::Vector m_deltaTables; bool m_deltaTablesHasBeenSet = false; Aws::String m_connectionName; bool m_connectionNameHasBeenSet = false; bool m_writeManifest; bool m_writeManifestHasBeenSet = false; bool m_createNativeDeltaTable; bool m_createNativeDeltaTableHasBeenSet = false; }; } // namespace Model } // namespace Glue } // namespace Aws