Better error checking for missing .dict file.
git-svn-id: file:///humgen/gsa-scr1/gsa-engineering/svn_contents/trunk@741 348d0f76-0448-11de-a6fe-93d51630548a
This commit is contained in:
parent
7161b8f927
commit
d35e20ce21
|
|
@ -67,20 +67,21 @@ public class IndexedFastaSequenceFile implements ReferenceSequenceFile {
|
|||
dictionaryName = dictionaryName.substring(0, dictionaryName.lastIndexOf(".fasta"));
|
||||
dictionaryName += ".dict";
|
||||
final File dictionary = new File(dictionaryName);
|
||||
if (dictionary.exists()) {
|
||||
IoUtil.assertFileIsReadable(dictionary);
|
||||
if (!dictionary.exists())
|
||||
throw new PicardException("Unable to load .dict file. Dictionary is required for the indexed fasta reader.");
|
||||
|
||||
try {
|
||||
final SAMTextHeaderCodec codec = new SAMTextHeaderCodec();
|
||||
final SAMFileHeader header = codec.decode(new AsciiLineReader(new FileInputStream(dictionary)), dictionary);
|
||||
if (header.getSequenceDictionary() != null && header.getSequenceDictionary().size() > 0) {
|
||||
this.sequenceDictionary = header.getSequenceDictionary();
|
||||
}
|
||||
}
|
||||
catch (Exception e) {
|
||||
throw new PicardException("Could not open sequence dictionary file: " + dictionaryName, e);
|
||||
IoUtil.assertFileIsReadable(dictionary);
|
||||
|
||||
try {
|
||||
final SAMTextHeaderCodec codec = new SAMTextHeaderCodec();
|
||||
final SAMFileHeader header = codec.decode(new AsciiLineReader(new FileInputStream(dictionary)), dictionary);
|
||||
if (header.getSequenceDictionary() != null && header.getSequenceDictionary().size() > 0) {
|
||||
this.sequenceDictionary = header.getSequenceDictionary();
|
||||
}
|
||||
}
|
||||
catch (Exception e) {
|
||||
throw new PicardException("Could not open sequence dictionary file: " + dictionaryName, e);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue