/*
* 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 lakeformation-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.LakeFormation.Model
{
///
/// A structure for a table with columns object. This object is only used when granting
/// a SELECT permission.
///
///
///
/// This object must take a value for at least one of ColumnsNames
, ColumnsIndexes
,
/// or ColumnsWildcard
.
///
///
public partial class TableWithColumnsResource
{
private string _catalogId;
private List _columnNames = new List();
private ColumnWildcard _columnWildcard;
private string _databaseName;
private string _name;
///
/// Gets and sets the property CatalogId.
///
/// The identifier for the Data Catalog. By default, it is the account ID of the caller.
///
///
[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 ColumnNames.
///
/// The list of column names for the table. At least one of ColumnNames
or
/// ColumnWildcard
is required.
///
///
public List ColumnNames
{
get { return this._columnNames; }
set { this._columnNames = value; }
}
// Check to see if ColumnNames property is set
internal bool IsSetColumnNames()
{
return this._columnNames != null && this._columnNames.Count > 0;
}
///
/// Gets and sets the property ColumnWildcard.
///
/// A wildcard specified by a ColumnWildcard
object. At least one of ColumnNames
/// or ColumnWildcard
is required.
///
///
public ColumnWildcard ColumnWildcard
{
get { return this._columnWildcard; }
set { this._columnWildcard = value; }
}
// Check to see if ColumnWildcard property is set
internal bool IsSetColumnWildcard()
{
return this._columnWildcard != null;
}
///
/// Gets and sets the property DatabaseName.
///
/// The name of the database for the table with columns resource. Unique to the Data Catalog.
/// A database is a set of associated table definitions organized into a logical group.
/// You can Grant and Revoke database privileges to a principal.
///
///
[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 Name.
///
/// The name of the table resource. A table is a metadata definition that represents your
/// data. You can Grant and Revoke table privileges to a principal.
///
///
[AWSProperty(Required=true, Min=1, Max=255)]
public string Name
{
get { return this._name; }
set { this._name = value; }
}
// Check to see if Name property is set
internal bool IsSetName()
{
return this._name != null;
}
}
}