Class: AWSCDK::LakeFormation::CfnPermissions::TableWithColumnsResourceProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
lake_formation/cfn_permissions.rb

Overview

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 .

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(catalog_id: nil, column_names: nil, column_wildcard: nil, database_name: nil, name: nil) ⇒ TableWithColumnsResourceProperty

Returns a new instance of TableWithColumnsResourceProperty.

Parameters:

  • catalog_id (String, nil) (defaults to: nil)

    The identifier for the Data Catalog .

  • column_names (Array<String>, nil) (defaults to: nil)

    The list of column names for the table.

  • column_wildcard (AWSCDK::IResolvable, AWSCDK::LakeFormation::CfnPermissions::ColumnWildcardProperty, nil) (defaults to: nil)

    A wildcard specified by a ColumnWildcard object.

  • database_name (String, nil) (defaults to: nil)

    The name of the database for the table with columns resource.

  • name (String, nil) (defaults to: nil)

    The name of the table resource.



870
871
872
873
874
875
876
877
878
879
880
881
# File 'lake_formation/cfn_permissions.rb', line 870

def initialize(catalog_id: nil, column_names: nil, column_wildcard: nil, database_name: nil, name: nil)
  @catalog_id = catalog_id
  Jsii::Type.check_type(@catalog_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "catalogId") unless @catalog_id.nil?
  @column_names = column_names
  Jsii::Type.check_type(@column_names, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "columnNames") unless @column_names.nil?
  @column_wildcard = column_wildcard.is_a?(Hash) ? ::AWSCDK::LakeFormation::CfnPermissions::ColumnWildcardProperty.new(**column_wildcard.transform_keys(&:to_sym)) : column_wildcard
  Jsii::Type.check_type(@column_wildcard, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19sYWtlZm9ybWF0aW9uLkNmblBlcm1pc3Npb25zLkNvbHVtbldpbGRjYXJkUHJvcGVydHkifV19fQ==")), "columnWildcard") unless @column_wildcard.nil?
  @database_name = database_name
  Jsii::Type.check_type(@database_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "databaseName") unless @database_name.nil?
  @name = name
  Jsii::Type.check_type(@name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "name") unless @name.nil?
end

Instance Attribute Details

#catalog_idString? (readonly)

The identifier for the Data Catalog .

By default, it is the account ID of the caller.



889
890
891
# File 'lake_formation/cfn_permissions.rb', line 889

def catalog_id
  @catalog_id
end

#column_namesArray<String>? (readonly)

The list of column names for the table.

At least one of ColumnNames or ColumnWildcard is required.



896
897
898
# File 'lake_formation/cfn_permissions.rb', line 896

def column_names
  @column_names
end

#column_wildcardAWSCDK::IResolvable, ... (readonly)

A wildcard specified by a ColumnWildcard object.

At least one of ColumnNames or ColumnWildcard is required.



903
904
905
# File 'lake_formation/cfn_permissions.rb', line 903

def column_wildcard
  @column_wildcard
end

#database_nameString? (readonly)

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.



910
911
912
# File 'lake_formation/cfn_permissions.rb', line 910

def database_name
  @database_name
end

#nameString? (readonly)

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.



917
918
919
# File 'lake_formation/cfn_permissions.rb', line 917

def name
  @name
end

Class Method Details

.jsii_propertiesObject



919
920
921
922
923
924
925
926
927
# File 'lake_formation/cfn_permissions.rb', line 919

def self.jsii_properties
  {
    :catalog_id => "catalogId",
    :column_names => "columnNames",
    :column_wildcard => "columnWildcard",
    :database_name => "databaseName",
    :name => "name",
  }
end

Instance Method Details

#to_jsiiObject



929
930
931
932
933
934
935
936
937
938
939
# File 'lake_formation/cfn_permissions.rb', line 929

def to_jsii
  result = {}
  result.merge!({
    "catalogId" => @catalog_id,
    "columnNames" => @column_names,
    "columnWildcard" => @column_wildcard,
    "databaseName" => @database_name,
    "name" => @name,
  })
  result.compact
end