X-Git-Url: http://dxcluster.net/gitweb/gitweb.cgi?a=blobdiff_plain;f=perl%2FPrefix.pm;h=2fab0e0b4f9437812f5737a77034c8b815f36955;hb=5d10d2095199b0d798926fa9e79a3f580c296b67;hp=1e74d63dbc2f8a4f141d2ca646da4650cc2dc42d;hpb=a645d1b0058cd4a02d88d5657ed915fc6e88b1a7;p=spider.git diff --git a/perl/Prefix.pm b/perl/Prefix.pm index 1e74d63d..2fab0e0b 100644 --- a/perl/Prefix.pm +++ b/perl/Prefix.pm @@ -16,6 +16,7 @@ use DXDebug; use DXUtil; use USDB; use LRU; +use DXBearing; use strict; @@ -25,7 +26,7 @@ $db = undef; # the DB_File handle %prefix_loc = (); # the meat of the info %pre = (); # the prefix list $hits = $misses = $matchtotal = 1; # cache stats -$lrusize = 1000; # size of prefix LRU cache +$lrusize = 5000; # size of prefix LRU cache sub init { @@ -87,49 +88,6 @@ sub loaded return $db; } -sub store -{ - my ($k, $l); - my $fh = new IO::File; - my $fn = localdata("prefix_data.pl"); - - confess "Prefix system not started" if !$db; - - # save versions! - rename "$fn.oooo", "$fn.ooooo" if -e "$fn.oooo"; - rename "$fn.ooo", "$fn.oooo" if -e "$fn.ooo"; - rename "$fn.oo", "$fn.ooo" if -e "$fn.oo"; - rename "$fn.o", "$fn.oo" if -e "$fn.o"; - rename "$fn", "$fn.o" if -e "$fn"; - - $fh->open(">$fn") or die "Can't open $fn ($!)"; - - # prefix location data - $fh->print("%prefix_loc = (\n"); - foreach $l (sort {$a <=> $b} keys %prefix_loc) { - my $r = $prefix_loc{$l}; - $fh->printf(" $l => bless( { name => '%s', dxcc => %d, itu => %d, utcoff => %d, lat => %f, long => %f }, 'Prefix'),\n", - $r->{name}, $r->{dxcc}, $r->{itu}, $r->{cq}, $r->{utcoff}, $r->{lat}, $r->{long}); - } - $fh->print(");\n\n"); - - # prefix data - $fh->print("%pre = (\n"); - foreach $k (sort keys %pre) { - $fh->print(" '$k' => ["); - my @list = @{$pre{$k}}; - my $l; - my $str; - foreach $l (@list) { - $str .= " $l,"; - } - chop $str; - $fh->print("$str ],\n"); - } - $fh->print(");\n"); - undef $fh; - untie %pre; -} # what you get is a list that looks like:- # @@ -524,6 +482,7 @@ my %valid = ( city => '0,City', utcoff => '0,UTC offset', cont => '0,Continent', + qra => '0,Locator', ); sub AUTOLOAD