class TreasureData::Database

Constants

PERMISSIONS
PERMISSION_LIST_TABLES

Attributes

count[R]

@!attribute [r] org_name @!attribute [r] permission @!attribute [r] count

org_name[R]

@!attribute [r] org_name @!attribute [r] permission @!attribute [r] count

permission[R]

@!attribute [r] org_name @!attribute [r] permission @!attribute [r] count

Public Class Methods

new(client, db_name, tables=nil, count=nil, created_at=nil, updated_at=nil, org_name=nil, permission=nil) click to toggle source

@param [TreasureData::Client] client @param [String] db_name @param [Array<Table>] tables @param [Fixnum] count @param [String] created_at @param [String] updated_at @param [String] org_name @param [String] permission

Calls superclass method TreasureData::Model::new
# File lib/td/client/model.rb, line 72
def initialize(client, db_name, tables=nil, count=nil, created_at=nil, updated_at=nil, org_name=nil, permission=nil)
  super(client)
  @db_name = db_name
  @tables = tables
  @count = count
  @created_at = created_at
  @updated_at = updated_at
  @permission = permission.to_sym
end

Public Instance Methods

create_log_table(name) click to toggle source

@param [String] name @return [true]

# File lib/td/client/model.rb, line 100
def create_log_table(name)
  @client.create_log_table(@db_name, name)
end
created_at() click to toggle source

@return [Time, nil]

# File lib/td/client/model.rb, line 122
def created_at
  @created_at && !@created_at.empty? ? Time.parse(@created_at) : nil
end
delete() click to toggle source

@return [Symbol]

# File lib/td/client/model.rb, line 111
def delete
  @client.delete_database(@db_name)
end
name() click to toggle source

@return [String] db_name

# File lib/td/client/model.rb, line 88
def name
  @db_name
end
query(q) click to toggle source

@param [String] q @return [Job]

# File lib/td/client/model.rb, line 117
def query(q)
  @client.query(@db_name, q)
end
table(table_name) click to toggle source

@param [String] table_name @return [Table]

# File lib/td/client/model.rb, line 106
def table(table_name)
  @client.table(@db_name, table_name)
end
tables() click to toggle source

@return [Array<Table>]

# File lib/td/client/model.rb, line 93
def tables
  update_tables! unless @tables
  @tables
end
update_tables!() click to toggle source

@return [nil]

# File lib/td/client/model.rb, line 132
def update_tables!
  @tables = @client.tables(@db_name)
  # provide Table objects with a reference to the parent Database to avoid
  # requesting the Database information (such as permission) every time
  @tables.each {|table|
    table.database = self
  }
end
updated_at() click to toggle source

@return [Time, nil]

# File lib/td/client/model.rb, line 127
def updated_at
  @updated_at && !@updated_at.empty? ? Time.parse(@updated_at) : nil
end