src/hg/encode/encodeValidate/doEncodeValidate.pl 1.219
1.219 2010/03/29 20:32:38 braney
add support for BAM download only
Index: src/hg/encode/encodeValidate/doEncodeValidate.pl
===================================================================
RCS file: /projects/compbio/cvsroot/kent/src/hg/encode/encodeValidate/doEncodeValidate.pl,v
retrieving revision 1.218
retrieving revision 1.219
diff -b -B -U 4 -r1.218 -r1.219
--- src/hg/encode/encodeValidate/doEncodeValidate.pl 24 Mar 2010 21:39:03 -0000 1.218
+++ src/hg/encode/encodeValidate/doEncodeValidate.pl 29 Mar 2010 20:32:38 -0000 1.219
@@ -290,8 +290,9 @@
psl => \&validatePsl,
BAM => \&validateBAM,
cBiP => \&validateFreepass, # TODO: this is a dodge, because bed file is for different species, so chrom violations
bigWig => \&validateBigWig,
+ bam => \&validateBam,
);
my $floatRegEx = "[-+]?[0-9]*\\.?[0-9]+([eE][-+]?[0-9]+)?";
# my $floatRegEx = "[+-]?(?:\\.\\d+|\\d+(?:\\.\\d+|[eE]{1}?[+-]{1}?\\d+))"; # Tim's attempt
@@ -746,8 +747,25 @@
doTime("done validateSAM") if $opt_timing;
return ();
}
+sub validateBam
+{
+ my ($path, $file, $type) = @_;
+ doTime("beginning validateBam") if $opt_timing;
+ HgAutomate::verbose(2, "validateBam($path,$file,$type)\n");
+ my $paramList = validationSettings("validateFiles","bam");
+ my $safe = SafePipe->new(CMDS => ["validateFiles $quickOpt $paramList -type=BAM -chromDb=$daf->{assembly} $file"]);
+ if(my $err = $safe->exec()) {
+ print STDERR "ERROR: failed validateBam : " . $safe->stderr() . "\n";
+ # don't show end-user pipe error(s)
+ return("failed validateBam for '$file'");
+ }
+ HgAutomate::verbose(2, "File \'$file\' passed $type validation\n");
+ doTime("done validateBam") if $opt_timing;
+ return ();
+}
+
sub validateBigWig
{
my ($path, $file, $type) = @_;
doTime("beginning validateBigWig") if $opt_timing;