/[webpac]/trunk2/lib/WebPAC/jsFind.pm
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Diff of /trunk2/lib/WebPAC/jsFind.pm

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 409 by dpavlin, Sun Sep 5 21:25:10 2004 UTC revision 491 by dpavlin, Sat Oct 9 21:47:42 2004 UTC
# Line 104  sub insert { Line 104  sub insert {
104          }          }
105          return unless (defined($args->{'words'}));          return unless (defined($args->{'words'}));
106    
107          my $words = $args->{'words'};          my $words = lc($args->{'words'});
108    
109          # chop leading and trailing spaces          # chop leading and trailing spaces
110          $words =~ s/^\s+//;          $words =~ s/^\s+//;
111          $words =~ s/\s+$//;          $words =~ s/\s+$//;
112    
113            my @words = split(/\s+/,$words);
114    
115          my %usage;          my %usage;
116          foreach (split(/\s+/,$words)) {          foreach (@words) {
117                  $usage{$_}++;                  $usage{$_}++;
118          }          }
119    
# Line 121  sub insert { Line 123  sub insert {
123                  " path: ",$args->{'path'}                  " path: ",$args->{'path'}
124          );          );
125    
126          foreach my $word (keys %usage) {          foreach my $word (@words) {
127    
128                  $self->tree($args->{'index_name'})->B_search(                  $self->tree($args->{'index_name'})->B_search(
129                          Key => $word,                          Key => $word,
# Line 145  This method will dump indexes to disk. Line 147  This method will dump indexes to disk.
147  This method will create directories if needed and store tree xml files  This method will create directories if needed and store tree xml files
148  for all indexes.  for all indexes.
149    
150    Turning debugging for this function by inserting
151    
152      log4perl.logger.WebPAC.jsFind.close=DEBUG
153    
154    into C<log.conf> will also result in creation of GraphViz C<.dot> files
155    for each index in current directory.
156    
157  =cut  =cut
158    
# Line 159  sub close { Line 167  sub close {
167                  $log->debug("saving index '$index_name' xml files to '$path'");                  $log->debug("saving index '$index_name' xml files to '$path'");
168    
169                  $self->tree($index_name)->to_jsfind($path,'ISO-8859-2','UTF-8');                  $self->tree($index_name)->to_jsfind($path,'ISO-8859-2','UTF-8');
170    
171                    if ($log->is_debug()) {
172                            my $dot_file = $index_name.".dot";
173                    
174                            $log->debug("saving graphviz file for '$index_name' to '$dot_file'");
175    
176                            open(DOT, ">", $dot_file) || $log->logdie("can't open '$dot_file': $!");
177                            print DOT $self->tree($index_name)->to_dot;
178                            close(DOT);
179                    }
180          }          }
181    
182  }  }

Legend:
Removed from v.409  
changed lines
  Added in v.491

  ViewVC Help
Powered by ViewVC 1.1.26