def run
case @opts.dbtype
when :sdbm
SDBM.open(@opts.ifile, 0666) do |db|
db.each_value {|v| store v}
end
when :gdbm
GDBM.open(@opts.ifile, 0666) do |db|
db.each_value {|v| store v}
end
when :dbm
DBM.open(@opts.ifile, 0666) do |db|
db.each_value {|v| store v}
end
when :sqlite
db = SQLite::Database.open(@opts.ifile)
db.execute("select data from tmud;") do |v|
store v.first
end
db.close
when :sqlite3
db = SQLite3::Database.open(@opts.ifile)
db.execute("select data from tmud;") do |v|
store v.first
end
db.close
end
File.open(@opts.ofile,'wb') do |f|
YAML::dump(@db.values,f)
end
puts "Highest object in use : #{@dbtop}"
puts "Count of objects dumped : #{@count}"
end