From c11696a5cb129c79a3d9abe2534b5e061c6d942e Mon Sep 17 00:00:00 2001 From: Shawn Boyette Date: Thu, 7 Aug 2008 14:34:42 +0000 Subject: [PATCH] pre-exception MARC validation abstracted --- fingerprinter | 22 +++++++++++++++++----- 1 files changed, 17 insertions(+), 5 deletions(-) diff --git a/fingerprinter b/fingerprinter index 919744c..7bad37e 100755 --- a/fingerprinter +++ b/fingerprinter @@ -40,11 +40,8 @@ for my $file (@ARGV) { my $marc = populate_marc($record, $id); $marc = normalize_marc($marc); - unless ($marc->{item_form} and ($marc->{date1} =~ /\d{4}/) and - $marc->{record_type} and $marc->{bib_lvl} and $marc->{title}) { - dump_exception($marc); - next; - } + unless (marc_isvalid($marc)) + { dump_exception($marc); next; } dump_fingerprints($marc); } } @@ -158,6 +155,21 @@ sub normalize_marc { +=head2 marc_isvalid + +Checks MARC record to see if neccessary fingerprinting data is +available + +=cut + +sub marc_isvalid { + my ($marc) = @_; + return 1 if ($marc->{item_form} and ($marc->{date1} =~ /\d{4}/) and + $marc->{record_type} and $marc->{bib_lvl} and $marc->{title}); + return 0; +} + + =head2 dump_fingerprints =cut -- 1.7.2.5