13 |
use WebPAC::Store 0.03; |
use WebPAC::Store 0.03; |
14 |
use WebPAC::Normalize::XML; |
use WebPAC::Normalize::XML; |
15 |
use WebPAC::Output::TT; |
use WebPAC::Output::TT; |
16 |
use WebPAC::Output::Estraier 0.08; |
use WebPAC::Output::Estraier '0.10'; |
17 |
use YAML qw/LoadFile/; |
use YAML qw/LoadFile/; |
18 |
use Getopt::Long; |
use Getopt::Long; |
19 |
use File::Path; |
use File::Path; |
20 |
|
use Time::HiRes qw/time/; |
21 |
|
|
22 |
=head1 NAME |
=head1 NAME |
23 |
|
|
77 |
die "no databases in config file!\n" unless ($config->{databases}); |
die "no databases in config file!\n" unless ($config->{databases}); |
78 |
|
|
79 |
my $total_rows = 0; |
my $total_rows = 0; |
80 |
|
my $start_t = time(); |
81 |
|
|
82 |
while (my ($database, $db_config) = each %{ $config->{databases} }) { |
while (my ($database, $db_config) = each %{ $config->{databases} }) { |
83 |
|
|
92 |
my $est_config = $config->{hyperestraier} || $log->logdie("can't find 'hyperestraier' part in confguration"); |
my $est_config = $config->{hyperestraier} || $log->logdie("can't find 'hyperestraier' part in confguration"); |
93 |
$est_config->{database} = $database; |
$est_config->{database} = $database; |
94 |
$est_config->{clean} = $clean; |
$est_config->{clean} = $clean; |
95 |
|
$est_config->{label} = $db_config->{name}; |
96 |
|
|
97 |
my $est = new WebPAC::Output::Estraier( %{ $est_config } ); |
my $est = new WebPAC::Output::Estraier( %{ $est_config } ); |
98 |
|
|
108 |
$log->info("creating new database $database in $db_path"); |
$log->info("creating new database $database in $db_path"); |
109 |
rmtree( $db_path ) || $log->warn("can't remove $db_path: $!"); |
rmtree( $db_path ) || $log->warn("can't remove $db_path: $!"); |
110 |
} else { |
} else { |
111 |
$log->info("working on $database in $db_path"); |
$log->debug("working on $database in $db_path"); |
112 |
} |
} |
113 |
|
|
114 |
my $db = new WebPAC::Store( |
my $db = new WebPAC::Store( |
145 |
|
|
146 |
my $input_module = $config->{webpac}->{inputs}->{$type}; |
my $input_module = $config->{webpac}->{inputs}->{$type}; |
147 |
|
|
148 |
$log->info("working on input $input->{path} [$input->{type}] using $input_module"); |
$log->info("working on input '$input->{path}' [$input->{type}] using $input_module lookup '$input->{lookup}'"); |
149 |
|
|
150 |
my $input_db = new WebPAC::Input( |
my $input_db = new WebPAC::Input( |
151 |
module => $input_module, |
module => $input_module, |
208 |
|
|
209 |
}; |
}; |
210 |
|
|
211 |
$log->info("$total_rows records indexed"); |
my $dt = time() - $start_t; |
212 |
|
$log->info("$total_rows records indexed in " . |
213 |
|
sprintf("%.2f sec [%.2f rec/sec]", |
214 |
|
$dt, ($total_rows / $dt) |
215 |
|
) |
216 |
|
); |
217 |
|
|
218 |
# |
# |
219 |
# add Hyper Estraier links to other databases |
# add Hyper Estraier links to other databases |