class Dk::Dumpdb::Db
Constants
- DEFAULT_VALUE
Public Class Methods
new(dump_file_name = nil, values = nil)
click to toggle source
# File lib/dk-dumpdb/db.rb, line 8 def initialize(dump_file_name = nil, values = nil) dump_file_name = dump_file_name || 'dump.output' @values = dk_dumpdb_symbolize_keys(values) [:host, :port, :user, :pw, :db, :output_root].each do |key| @values[key] ||= DEFAULT_VALUE end @values[:output_dir] = dk_dumpdb_build_output_dir( self.output_root, self.host, self.db ) @values[:dump_file] = File.join(self.output_dir, dump_file_name) end
Public Instance Methods
==(other_db)
click to toggle source
Calls superclass method
# File lib/dk-dumpdb/db.rb, line 38 def ==(other_db) if other_db.kind_of?(Db) self.to_hash == other_db.to_hash else super end end
method_missing(meth, *args, &block)
click to toggle source
Calls superclass method
# File lib/dk-dumpdb/db.rb, line 26 def method_missing(meth, *args, &block) if @values.has_key?(meth.to_sym) @values[meth.to_sym] else super end end
respond_to?(meth)
click to toggle source
Calls superclass method
# File lib/dk-dumpdb/db.rb, line 34 def respond_to?(meth) @values.has_key?(meth.to_sym) || super end
to_hash()
click to toggle source
# File lib/dk-dumpdb/db.rb, line 24 def to_hash; @values; end
Private Instance Methods
dk_dumpdb_build_output_dir(output_root, host, database)
click to toggle source
# File lib/dk-dumpdb/db.rb, line 48 def dk_dumpdb_build_output_dir(output_root, host, database) dir_name = dk_dumpdb_build_output_dir_name(host, database) if output_root && !output_root.to_s.empty? File.join(output_root, dir_name) else dir_name end end
dk_dumpdb_build_output_dir_name(host, database)
click to toggle source
# File lib/dk-dumpdb/db.rb, line 57 def dk_dumpdb_build_output_dir_name(host, database) [host, database, Time.now.to_f].map(&:to_s).reject(&:empty?).join("__") end
dk_dumpdb_symbolize_keys(values)
click to toggle source
# File lib/dk-dumpdb/db.rb, line 61 def dk_dumpdb_symbolize_keys(values) (values || {}).inject({}) do |h, (k, v)| h.merge(k.to_sym => v) end end