Class: TreasureData::Database
Constant Summary collapse
- PERMISSIONS =
[:administrator, :full_access, :import_only, :query_only]
- PERMISSION_LIST_TABLES =
[:administrator, :full_access]
Instance Attribute Summary collapse
-
#count ⇒ Object
readonly
Returns the value of attribute count.
-
#org_name ⇒ Object
readonly
Returns the value of attribute org_name.
-
#permission ⇒ Object
readonly
Returns the value of attribute permission.
Attributes inherited from Model
Instance Method Summary collapse
- #create_item_table(name) ⇒ Object
- #create_log_table(name) ⇒ Object
- #created_at ⇒ Object
- #delete ⇒ Object
-
#initialize(client, db_name, tables = nil, count = nil, created_at = nil, updated_at = nil, org_name = nil, permission = nil) ⇒ Database
constructor
A new instance of Database.
- #name ⇒ Object
- #query(q) ⇒ Object
- #table(table_name) ⇒ Object
- #tables ⇒ Object
- #update_tables! ⇒ Object
- #updated_at ⇒ Object
Constructor Details
#initialize(client, db_name, tables = nil, count = nil, created_at = nil, updated_at = nil, org_name = nil, permission = nil) ⇒ Database
Returns a new instance of Database.
47 48 49 50 51 52 53 54 55 |
# File 'lib/td/client/model.rb', line 47 def initialize(client, db_name, tables=nil, count=nil, created_at=nil, updated_at=nil, org_name=nil, =nil) super(client) @db_name = db_name @tables = tables @count = count @created_at = created_at @updated_at = updated_at @permission = .to_sym end |
Instance Attribute Details
#count ⇒ Object (readonly)
Returns the value of attribute count.
57 58 59 |
# File 'lib/td/client/model.rb', line 57 def count @count end |
#org_name ⇒ Object (readonly)
Returns the value of attribute org_name.
57 58 59 |
# File 'lib/td/client/model.rb', line 57 def org_name @org_name end |
#permission ⇒ Object (readonly)
Returns the value of attribute permission.
57 58 59 |
# File 'lib/td/client/model.rb', line 57 def @permission end |
Instance Method Details
#create_item_table(name) ⇒ Object
72 73 74 |
# File 'lib/td/client/model.rb', line 72 def create_item_table(name) @client.create_item_table(@db_name, name) end |
#create_log_table(name) ⇒ Object
68 69 70 |
# File 'lib/td/client/model.rb', line 68 def create_log_table(name) @client.create_log_table(@db_name, name) end |
#created_at ⇒ Object
88 89 90 |
# File 'lib/td/client/model.rb', line 88 def created_at @created_at && !@created_at.empty? ? Time.parse(@created_at) : nil end |
#delete ⇒ Object
80 81 82 |
# File 'lib/td/client/model.rb', line 80 def delete @client.delete_database(@db_name) end |
#name ⇒ Object
59 60 61 |
# File 'lib/td/client/model.rb', line 59 def name @db_name end |
#query(q) ⇒ Object
84 85 86 |
# File 'lib/td/client/model.rb', line 84 def query(q) @client.query(@db_name, q) end |
#table(table_name) ⇒ Object
76 77 78 |
# File 'lib/td/client/model.rb', line 76 def table(table_name) @client.table(@db_name, table_name) end |
#tables ⇒ Object
63 64 65 66 |
# File 'lib/td/client/model.rb', line 63 def tables update_tables! unless @tables @tables end |
#update_tables! ⇒ Object
96 97 98 99 100 101 102 103 |
# File 'lib/td/client/model.rb', line 96 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 ⇒ Object
92 93 94 |
# File 'lib/td/client/model.rb', line 92 def updated_at @updated_at && !@updated_at.empty? ? Time.parse(@updated_at) : nil end |