Update sample command-line comment for moved rules file.
[irspy-moved-to-github.git] / bin / irspy-rewrite-records.pl
index 3dbd731..fc3de55 100755 (executable)
@@ -6,7 +6,7 @@ use lib '../lib';
 use Data::Dumper;
 use Getopt::Long;
 use ZOOM::IRSpy;
 use Data::Dumper;
 use Getopt::Long;
 use ZOOM::IRSpy;
-use ZOOM::IRSpy::Utils qw(render_record);
+use ZOOM::IRSpy::Utils qw(render_record validate_record);
 
 use strict;
 use warnings;
 
 use strict;
 use warnings;
@@ -43,13 +43,22 @@ $ZOOM::IRSpy::irspy_to_zeerex_xsl = $irspy_to_zeerex_xsl
 
 my $spy = new ZOOM::IRSpy( $dbname, "admin", "fruitbat" );
 my $rs = $spy->{conn}->search( new ZOOM::Query::CQL($cql_query) );
 
 my $spy = new ZOOM::IRSpy( $dbname, "admin", "fruitbat" );
 my $rs = $spy->{conn}->search( new ZOOM::Query::CQL($cql_query) );
-print STDERR "rewriting ", $rs->size(), " target records" if $debug;
+print STDERR "rewriting ", $rs->size(), " target records\n" if $debug;
 
 foreach my $i ( 1 .. $rs->size() ) {
     my $xml = render_record( $rs, $i - 1, "zeerex" );
     my $rec = $spy->{libxml}->parse_string($xml)->documentElement();
 
 foreach my $i ( 1 .. $rs->size() ) {
     my $xml = render_record( $rs, $i - 1, "zeerex" );
     my $rec = $spy->{libxml}->parse_string($xml)->documentElement();
+
+    if ( $debug >= 2 ) {
+        my ( $ok, $errors ) = validate_record($rec);
+        if ( !$ok ) {
+            my @e  = @$errors;
+            my $id = shift @e;
+            print "Id: $id => ", join( " / ", @e ), "\n";
+        }
+    }
     ZOOM::IRSpy::_rewrite_zeerex_record( $spy->{conn}, $rec );
     ZOOM::IRSpy::_rewrite_zeerex_record( $spy->{conn}, $rec );
-    print STDERR "." if $debug;
+    print STDERR "." if $debug == 1;
 }
 }
-print STDERR "\nDone\n" if $debug;
+print STDERR "Done\n" if $debug;