]> git.donarmstrong.com Git - infobot.git/blobdiff - scripts/dbm2mysql.pl
ws
[infobot.git] / scripts / dbm2mysql.pl
index b2c86774e67cc4decbdbaee9f59d42bf346f73b8..d9f6c319a44e741c0dc7749b7bdade458451fcf5 100755 (executable)
@@ -2,15 +2,14 @@
 # by the xk.
 ###
 
-require "src/logger.pl";
 require "src/core.pl";
+require "src/logger.pl";
+require "src/modules.pl";
 
 require "src/Misc.pl";
 require "src/Files.pl";
-package MYSQL;
-require "src/Factoids/db_mysql.pl";
-package DBM;
-require "src/Factoids/db_dbm.pl";
+&loadDBModules();
+require "src/dbi.pl";
 package main;
 
 if (!scalar @ARGV) {
@@ -24,28 +23,47 @@ my $dbfile = shift;
 my $key;
 my %db;
 
+# open dbm.
+if (dbmopen(%{ $dbm }, $dbfile, 0666)) {
+    &status("::: opening dbm file: $dbfile");
+} else {
+    &ERROR("Failed open to dbm file ($dbfile).");
+    exit 1;
+}
+
 ### open all the data...
-&loadConfig("files/infobot.config");
-$dbname = $param{'DBFile'};
-my $dbh_mysql = MYSQL::openDB();
-DBM::openDB();
+&loadConfig("files/blootbot.config");
+$dbname = $param{'DBName'};
+my $dbh_mysql = sqlOpenDB($param{'DBName'},
+       $param{'DBType'}, $param{'SQLUser'}, $param{'SQLPass'});
 
 print "scalar db == '". scalar(keys %db) ."'.\n";
 
 my ($ndef, $i) = (1,1);
 my $factoid;
 foreach $factoid (keys %db) {
-    foreach (@DBM::extra_format) {
-       my $val = &DBM::getFactInfo($key, $_, $db{$key});
-       if (!defined $val) {
-           $ndef++;
-           next;
+    # blootbot dbm to sql support:
+    if (0) {
+       foreach (@DBM::extra_format) {
+#          my $val = &getFactInfo($key, $_, $db{$key});
+           if (!defined $val) {
+               $ndef++;
+               next;
+           }
        }
-       &MYSQL::setFactInfo($key, $_, $val); # fact, type, what
+    } else {
+       # infobot dbm to blootbot sql support.
+       &sqlReplace("factoids", {
+               factoid_key     => $_,
+               factoid_value   => $db{$_},
+       } );
     }
+
     $i++;
     print "i=$i... " if ($i % 100 == 0);
     print "ndef=$ndef... " if ($ndef % 1000 == 0);
 }
 
 print "Done.\n";
+&closeDB();
+dbmclose(%{ $dbm });