old = BDB::Hash.open("#{@bot.botclass}/registry.db", nil,
"r+", 0600)
new = BDB::CIBtree.open("#{@bot.botclass}/plugin_registry.db", nil,
old = BDB::Hash.open("#{@bot.botclass}/registry.db", nil,
"r+", 0600)
new = BDB::CIBtree.open("#{@bot.botclass}/plugin_registry.db", nil,
Dir.mkdir("#{@bot.botclass}/registry") unless File.exist?("#{@bot.botclass}/registry")
env = BDB::Env.open("#{@bot.botclass}", BDB::INIT_TRANSACTION | BDB::CREATE | BDB::RECOVER)
dbs = Hash.new
Dir.mkdir("#{@bot.botclass}/registry") unless File.exist?("#{@bot.botclass}/registry")
env = BDB::Env.open("#{@bot.botclass}", BDB::INIT_TRANSACTION | BDB::CREATE | BDB::RECOVER)
dbs = Hash.new
old = BDB::CIBtree.open("#{@bot.botclass}/plugin_registry.db", nil,
"r+", 0600, "env" => env)
old.each {|k,v|
prefix,key = k.split("/", 2)
prefix.downcase!
unless dbs.has_key?(prefix)
old = BDB::CIBtree.open("#{@bot.botclass}/plugin_registry.db", nil,
"r+", 0600, "env" => env)
old.each {|k,v|
prefix,key = k.split("/", 2)
prefix.downcase!
unless dbs.has_key?(prefix)
dbs[prefix] = BDB::CIBtree.open("#{@bot.botclass}/registry/#{prefix}.db",
nil, BDB::CREATE | BDB::EXCL,
0600, "env" => env)
dbs[prefix] = BDB::CIBtree.open("#{@bot.botclass}/registry/#{prefix}.db",
nil, BDB::CREATE | BDB::EXCL,
0600, "env" => env)