/*
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License").
* You may not use this file except in compliance with the License.
* A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
/*
* Do not modify this file. This file is generated from the glue-2017-03-31.normal.json service model.
*/
using System;
using System.Collections.Generic;
using System.Xml.Serialization;
using System.Text;
using System.IO;
using System.Net;
using Amazon.Runtime;
using Amazon.Runtime.Internal;
namespace Amazon.Glue.Model
{
///
/// The database and table in the Glue Data Catalog that is used for input or output data.
///
public partial class GlueTable
{
private Dictionary _additionalOptions = new Dictionary();
private string _catalogId;
private string _connectionName;
private string _databaseName;
private string _tableName;
///
/// Gets and sets the property AdditionalOptions.
///
/// Additional options for the table. Currently there are two keys supported:
///
/// -
///
///
pushDownPredicate
: to filter on partitions without having to list and
/// read all the files in your dataset.
///
/// -
///
///
catalogPartitionPredicate
: to use server-side partition pruning using
/// partition indexes in the Glue Data Catalog.
///
///
///
[AWSProperty(Min=1, Max=10)]
public Dictionary AdditionalOptions
{
get { return this._additionalOptions; }
set { this._additionalOptions = value; }
}
// Check to see if AdditionalOptions property is set
internal bool IsSetAdditionalOptions()
{
return this._additionalOptions != null && this._additionalOptions.Count > 0;
}
///
/// Gets and sets the property CatalogId.
///
/// A unique identifier for the Glue Data Catalog.
///
///
[AWSProperty(Min=1, Max=255)]
public string CatalogId
{
get { return this._catalogId; }
set { this._catalogId = value; }
}
// Check to see if CatalogId property is set
internal bool IsSetCatalogId()
{
return this._catalogId != null;
}
///
/// Gets and sets the property ConnectionName.
///
/// The name of the connection to the Glue Data Catalog.
///
///
[AWSProperty(Min=1, Max=255)]
public string ConnectionName
{
get { return this._connectionName; }
set { this._connectionName = value; }
}
// Check to see if ConnectionName property is set
internal bool IsSetConnectionName()
{
return this._connectionName != null;
}
///
/// Gets and sets the property DatabaseName.
///
/// A database name in the Glue Data Catalog.
///
///
[AWSProperty(Required=true, Min=1, Max=255)]
public string DatabaseName
{
get { return this._databaseName; }
set { this._databaseName = value; }
}
// Check to see if DatabaseName property is set
internal bool IsSetDatabaseName()
{
return this._databaseName != null;
}
///
/// Gets and sets the property TableName.
///
/// A table name in the Glue Data Catalog.
///
///
[AWSProperty(Required=true, Min=1, Max=255)]
public string TableName
{
get { return this._tableName; }
set { this._tableName = value; }
}
// Check to see if TableName property is set
internal bool IsSetTableName()
{
return this._tableName != null;
}
}
}