class Convergence::Command

Public Class Methods

new(opts, config: nil) click to toggle source
# File lib/convergence/command.rb, line 6
def initialize(opts, config: nil)
  @opts = opts
  if config.nil?
    @config = Convergence::Config.load(opts[:config]) if @opts[:config]
  else
    @config = config
  end
end

Private Instance Methods

connector() click to toggle source
# File lib/convergence/command.rb, line 21
def connector
  @connector ||= Convergence::DatabaseConnector.new(@config)
end
database_adapter() click to toggle source
# File lib/convergence/command.rb, line 17
def database_adapter
  @config.nil? ? 'mysql' : @config.adapter
end
dumper() click to toggle source
# File lib/convergence/command.rb, line 25
def dumper
  @dumper ||= case database_adapter
              when 'mysql', 'mysql2'
                require 'convergence/dumper/mysql_schema_dumper'
                Convergence::Dumper::MysqlSchemaDumper.new(connector)
              else
                fail NotImplementedError.new('unknown database adapter')
              end
end
logger() click to toggle source
# File lib/convergence/command.rb, line 35
def logger
  @logger ||= Convergence::Logger.new
end