Class: Convergence::Command
- Inherits:
-
Object
- Object
- Convergence::Command
show all
- Defined in:
- lib/convergence/command.rb
Defined Under Namespace
Classes: Apply, Diff, Dryrun, Export
Instance Method Summary
collapse
Constructor Details
#initialize(opts, config: nil) ⇒ Command
Returns a new instance of Command.
2
3
4
5
6
7
8
9
|
# File 'lib/convergence/command.rb', line 2
def initialize(opts, config: nil)
@opts = opts
if config.nil?
@config = Convergence::Config.load(opts[:config]) if @opts[:config]
else
@config = config
end
end
|
Instance Method Details
#database_adapter ⇒ Object
29
30
31
|
# File 'lib/convergence/command.rb', line 29
def database_adapter
@config.nil? ? 'mysql' : @config.adapter
end
|
#dumper ⇒ Object
37
38
39
40
41
42
43
44
|
# File 'lib/convergence/command.rb', line 37
def dumper
@dumper ||= case database_adapter
when 'mysql', 'mysql2'
Convergence::Dumper::MysqlSchemaDumper.new(connector)
else
fail NotImplementedError.new('unknown database adapter')
end
end
|
#logger ⇒ Object
55
56
57
|
# File 'lib/convergence/command.rb', line 55
def logger
@logger ||= Convergence::Logger.new
end
|
#sql_generator ⇒ Object
46
47
48
49
50
51
52
53
|
# File 'lib/convergence/command.rb', line 46
def sql_generator
@sql_generator ||= case database_adapter
when 'mysql', 'mysql2'
SQLGenerator::MysqlGenerator.new
else
fail NotImplementedError.new('unknown database adapter')
end
end
|