Class: Tapsoob::CLI::Schema

Inherits:
Thor
  • Object
show all
Defined in:
lib/tapsoob/cli/schema.rb

Instance Method Summary collapse

Instance Method Details

#console(database_url) ⇒ Object



10
11
12
13
14
# File 'lib/tapsoob/cli/schema.rb', line 10

def console(database_url)
  $db = Sequel.connect(database_url)
  require 'ripl'
  Ripl.start binding: binding
end

#dump(database_url) ⇒ Object



20
21
22
23
24
25
26
27
# File 'lib/tapsoob/cli/schema.rb', line 20

def dump(database_url)
  opts = {}
  opts[:indexes] = options[:"indexes"]
  opts[:foreign_keys] = options[:"foreign-keys"]
  opts[:same_db] = options[:"same-db"]

  puts Tapsoob::Schema.dump(database_url, opts)
end

#dump_table(database_url, table) ⇒ Object



30
31
32
# File 'lib/tapsoob/cli/schema.rb', line 30

def dump_table(database_url, table)
  puts Tapsoob::Schema.dump_table(database_url, table)
end

#foreign_keys(database_url) ⇒ Object



35
36
37
# File 'lib/tapsoob/cli/schema.rb', line 35

def foreign_keys(database_url)
  puts Tapsoob::Schema.foreign_keys(database_url)
end

#indexes(database_url) ⇒ Object



40
41
42
# File 'lib/tapsoob/cli/schema.rb', line 40

def indexes(database_url)
  puts Tapsoob::Schema.indexes(database_url)
end

#indexes_individual(database_url) ⇒ Object



45
46
47
# File 'lib/tapsoob/cli/schema.rb', line 45

def indexes_individual(database_url)
  puts Tapsoob::Schema.indexes_individual(database_url)
end

#load(database_url, filename = nil) ⇒ Object



56
57
58
59
60
61
62
63
64
65
66
67
68
# File 'lib/tapsoob/cli/schema.rb', line 56

def load(database_url, filename = nil)
  schema = if filename && File.exists?(filename)
    File.read(filename)
  else
    STDIN.read
  end

  begin
    Tapsoob::Schema.load(database_url, schema, options)
  rescue Exception => e
    throw e
  end
end

#load_foreign_keys(database_url, filename = nil) ⇒ Object



71
72
73
74
75
76
77
78
79
80
81
82
83
# File 'lib/tapsoob/cli/schema.rb', line 71

def load_foreign_keys(database_url, filename = nil)
  indexes = if filename && File.exists?(filename)
    File.read(filename)
  else
    STDIN.read
  end

  begin
    Tapsoob::Schema.load_foreign_keys(database_url, indexes)
  rescue Exception => e
    throw e
  end
end

#load_indexes(database_url, filename = nil) ⇒ Object



86
87
88
89
90
91
92
93
94
95
96
97
98
# File 'lib/tapsoob/cli/schema.rb', line 86

def load_indexes(database_url, filename = nil)
  indexes = if filename && File.exists?(filename)
    File.read(filename)
  else
    STDIN.read
  end

  begin
    Tapsoob::Schema.load_indexes(database_url, indexes)
  rescue Exception => e
    throw e
  end
end

#reset_db_sequences(database_url) ⇒ Object



50
51
52
# File 'lib/tapsoob/cli/schema.rb', line 50

def reset_db_sequences(database_url)
  Tapsoob::Schema.reset_db_sequences(database_url)
end