/*
* 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 the resource.
///
public partial class Resource
{
private CatalogResource _catalog;
private DatabaseResource _database;
private DataCellsFilterResource _dataCellsFilter;
private DataLocationResource _dataLocation;
private LFTagKeyResource _lfTag;
private LFTagPolicyResource _lfTagPolicy;
private TableResource _table;
private TableWithColumnsResource _tableWithColumns;
///
/// Gets and sets the property Catalog.
///
/// The identifier for the Data Catalog. By default, the account ID. The Data Catalog
/// is the persistent metadata store. It contains database definitions, table definitions,
/// and other control information to manage your Lake Formation environment.
///
///
public CatalogResource Catalog
{
get { return this._catalog; }
set { this._catalog = value; }
}
// Check to see if Catalog property is set
internal bool IsSetCatalog()
{
return this._catalog != null;
}
///
/// Gets and sets the property Database.
///
/// The database for the 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 permissions to a principal.
///
///
public DatabaseResource Database
{
get { return this._database; }
set { this._database = value; }
}
// Check to see if Database property is set
internal bool IsSetDatabase()
{
return this._database != null;
}
///
/// Gets and sets the property DataCellsFilter.
///
/// A data cell filter.
///
///
public DataCellsFilterResource DataCellsFilter
{
get { return this._dataCellsFilter; }
set { this._dataCellsFilter = value; }
}
// Check to see if DataCellsFilter property is set
internal bool IsSetDataCellsFilter()
{
return this._dataCellsFilter != null;
}
///
/// Gets and sets the property DataLocation.
///
/// The location of an Amazon S3 path where permissions are granted or revoked.
///
///
public DataLocationResource DataLocation
{
get { return this._dataLocation; }
set { this._dataLocation = value; }
}
// Check to see if DataLocation property is set
internal bool IsSetDataLocation()
{
return this._dataLocation != null;
}
///
/// Gets and sets the property LFTag.
///
/// The LF-tag key and values attached to a resource.
///
///
public LFTagKeyResource LFTag
{
get { return this._lfTag; }
set { this._lfTag = value; }
}
// Check to see if LFTag property is set
internal bool IsSetLFTag()
{
return this._lfTag != null;
}
///
/// Gets and sets the property LFTagPolicy.
///
/// A list of LF-tag conditions that define a resource's LF-tag policy.
///
///
public LFTagPolicyResource LFTagPolicy
{
get { return this._lfTagPolicy; }
set { this._lfTagPolicy = value; }
}
// Check to see if LFTagPolicy property is set
internal bool IsSetLFTagPolicy()
{
return this._lfTagPolicy != null;
}
///
/// Gets and sets the property Table.
///
/// The table for the resource. A table is a metadata definition that represents your
/// data. You can Grant and Revoke table privileges to a principal.
///
///
public TableResource Table
{
get { return this._table; }
set { this._table = value; }
}
// Check to see if Table property is set
internal bool IsSetTable()
{
return this._table != null;
}
///
/// Gets and sets the property TableWithColumns.
///
/// The table with columns for the resource. A principal with permissions to this resource
/// can select metadata from the columns of a table in the Data Catalog and the underlying
/// data in Amazon S3.
///
///
public TableWithColumnsResource TableWithColumns
{
get { return this._tableWithColumns; }
set { this._tableWithColumns = value; }
}
// Check to see if TableWithColumns property is set
internal bool IsSetTableWithColumns()
{
return this._tableWithColumns != null;
}
}
}