/[webpac2]/trunk/lib/WebPAC/Validate.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 /trunk/lib/WebPAC/Validate.pm

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

revision 849 by dpavlin, Sun May 27 10:50:37 2007 UTC revision 852 by dpavlin, Sun May 27 11:27:12 2007 UTC
# Line 282  sub validate_rec { Line 282  sub validate_rec {
282                  }                  }
283          }          }
284    
285          $log->debug("_delimiters_templates = ", dump( $self->{_delimiters_templates} ) );          $log->debug("_delimiters_templates = ", sub { dump( $self->{_delimiters_templates} ) } );
286    
287          foreach my $must (sort keys %{ $self->{must_exist} }) {          foreach my $must (sort keys %{ $self->{must_exist} }) {
288                  next if ($fields->{$must});                  next if ($fields->{$must});
# Line 293  sub validate_rec { Line 293  sub validate_rec {
293          if ($errors) {          if ($errors) {
294                  $log->debug("errors: ", $self->report_error( $errors ) );                  $log->debug("errors: ", $self->report_error( $errors ) );
295    
296                  my $mfn = $rec->{'000'}->[0] || $log->logconfess("record ", dump( $rec ), " doesn't have MFN");                  my $mfn = $rec->{'000'}->[0] || $log->logconfess("record ", sub { dump( $rec ) }, " doesn't have MFN");
297                  $self->{errors}->{$mfn} = $errors;                  $self->{errors}->{$mfn} = $errors;
298          }          }
299    
# Line 331  sub reset { Line 331  sub reset {
331                                  $self->{_delimiters_templates}->{$f}->{$t};                                  $self->{_delimiters_templates}->{$f}->{$t};
332                  }                  }
333          }          }
334          $log->debug("_accumulated_delimiters_templates = ", dump( $self->{_accumulated_delimiter_templates} ));          $log->debug("_accumulated_delimiters_templates = ", sub { dump( $self->{_accumulated_delimiter_templates} ) } );
335          delete ($self->{_delimiters_templates});          delete ($self->{_delimiters_templates});
336  }  }
337    
# Line 393  sub report_error { Line 393  sub report_error {
393                                  $accumulated ? "$accumulated\t$k" : $k                                  $accumulated ? "$accumulated\t$k" : $k
394                          );                          );
395    
396                          $log->debug(                          $log->debug( "new_results: ", sub { dump($new_results) } ) if ( $new_results );
                                 ( $new_results          ? "new_results: " . dump($new_results) ." "     : '' ),  
                         );  
397    
398                          push @$results, $new_results if ($new_results);                          push @$results, $new_results if ($new_results);
399                          $dump = $new_dump if ($new_dump);                          $dump = $new_dump if ($new_dump);
400    
401                  }                  }
402    
403                  $log->debug(                  $log->debug( "results: ", sub { dump($results) } ) if ( $results );
                         ( $results              ? "results: " . dump($results) ." "     : '' ),  
                 );  
404    
405                  if ($#$results == 0) {                  if ($#$results == 0) {
406                          return ($results->[0], $dump);                          return ($results->[0], $dump);
# Line 468  Generate report of delimiter tamplates Line 464  Generate report of delimiter tamplates
464    
465    my $report = $validate->delimiter_teplates(    my $report = $validate->delimiter_teplates(
466          report => 1,          report => 1,
467          accumulated => 1,          current_input => 1,
468    );    );
469    
470  Options:  Options:
# Line 479  Options: Line 475  Options:
475    
476  Generate humanly readable report with single fields  Generate humanly readable report with single fields
477    
478  =item accumulated  =item current_input
479    
480  Use accumulated data from all inputs  Report just current_input and not accumulated data
481    
482  =back  =back
483    
# Line 492  sub delimiters_templates { Line 488  sub delimiters_templates {
488    
489          my $args = {@_};          my $args = {@_};
490    
491          my $t;          my $t = $self->{_accumulated_delimiters_templates};
492          if ( $args->{accumulated} ) {          $t = $self->{_delimiters_templates} if ( $args->{current_input} );
                 $t = $self->{_accumulated_delimiters_templates};  
         } else {  
                 $t = $self->{_delimiters_templates};  
         }  
493    
494          my $log = $self->_get_logger;          my $log = $self->_get_logger;
495    
# Line 552  sub save_delimiters_templates { Line 544  sub save_delimiters_templates {
544          $path .= '.new' if ( -e $path );          $path .= '.new' if ( -e $path );
545    
546          open(my $d, '>', $path) || $log->fatal("can't open $path: $!");          open(my $d, '>', $path) || $log->fatal("can't open $path: $!");
547          print $d $self->delimiters_templates( accumulated => 1 );          print $d $self->delimiters_templates;
548          close($d);          close($d);
549    
550          $log->info("new delimiters templates saved to $path");          $log->info("new delimiters templates saved to $path");

Legend:
Removed from v.849  
changed lines
  Added in v.852

  ViewVC Help
Powered by ViewVC 1.1.26