X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fio%2FJPredFile.java;h=e375df7c19e307b79efc5f087c6ad6c7f4f9fa20;hb=a83adb45bdf9554e270921b4baad94defd314b36;hp=abd44c09da8f81e2a45dc1748e876ab7fe90f8a5;hpb=ab43013b7e357b84b4abade0dba949668dfb2a0e;p=jalview.git diff --git a/src/jalview/io/JPredFile.java b/src/jalview/io/JPredFile.java index abd44c0..e375df7 100755 --- a/src/jalview/io/JPredFile.java +++ b/src/jalview/io/JPredFile.java @@ -1,6 +1,6 @@ /* - * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2b1) - * Copyright (C) 2014 The Jalview Authors + * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$) + * Copyright (C) $$Year-Rel$$ The Jalview Authors * * This file is part of Jalview. * @@ -25,12 +25,17 @@ */ package jalview.io; -import java.io.*; -import java.util.*; - -import jalview.datamodel.*; +import jalview.datamodel.Alignment; +import jalview.datamodel.AlignmentAnnotation; +import jalview.datamodel.Sequence; +import jalview.datamodel.SequenceI; import jalview.util.MessageManager; +import java.io.IOException; +import java.util.Hashtable; +import java.util.StringTokenizer; +import java.util.Vector; + /** * Parser for the JPred/JNet concise format. This is a series of CSV lines, each * line is either a sequence (QUERY), a sequence profile (align;), or jnet @@ -63,17 +68,20 @@ public class JPredFile extends AlignFile /** * Creates a new JPredFile object. * + * BH allows File or String + * * @param inFile * DOCUMENT ME! - * @param type + * @param sourceType * DOCUMENT ME! * * @throws IOException * DOCUMENT ME! */ - public JPredFile(String inFile, String type) throws IOException + public JPredFile(Object inFile, DataSourceType sourceType) + throws IOException { - super(inFile, type); + super(inFile, sourceType); } public JPredFile(FileParse source) throws IOException @@ -125,6 +133,7 @@ public class JPredFile extends AlignFile /** * DOCUMENT ME! */ + @Override public void initData() { super.initData(); @@ -136,6 +145,7 @@ public class JPredFile extends AlignFile /** * parse a JPred concise file into a sequence-alignment like object. */ + @Override public void parse() throws IOException { // JBPNote log.System.out.println("all read in "); @@ -200,7 +210,7 @@ public class JPredFile extends AlignFile ascore = symbols.nextToken(); Float score = new Float(ascore); - scores.addElement((Object) score); + scores.addElement(score); } Scores.put(id, scores); @@ -211,16 +221,16 @@ public class JPredFile extends AlignFile for (int j = 0; j < i; j++) { - scores.setElementAt( - (Object) ((Float) scores.elementAt(j)).toString(), j); + scores.setElementAt(((Float) scores.elementAt(j)).toString(), + j); } - scores.addElement((Object) ascore); + scores.addElement(ascore); while (symbols.hasMoreTokens()) { ascore = symbols.nextToken(); - scores.addElement((Object) ascore); + scores.addElement(ascore); } Scores.put(id, scores); @@ -260,7 +270,9 @@ public class JPredFile extends AlignFile } if (QuerySeqPosition == -1) + { QuerySeqPosition = ids.size(); + } ids.addElement(name); noSeqs++; } @@ -273,7 +285,7 @@ public class JPredFile extends AlignFile seq_entries.addElement(newseq.toString()); ids.addElement(id); - Symscores.put((Object) id, (Object) new Integer(ids.size() - 1)); + Symscores.put(id, new Integer(ids.size() - 1)); } } } @@ -289,16 +301,20 @@ public class JPredFile extends AlignFile { // Add all sequence like objects Sequence newSeq = new Sequence(ids.elementAt(i).toString(), - seq_entries.elementAt(i).toString(), 1, seq_entries - .elementAt(i).toString().length()); + seq_entries.elementAt(i).toString(), 1, + seq_entries.elementAt(i).toString().length()); if (maxLength != seq_entries.elementAt(i).toString().length()) { - throw new IOException(MessageManager.formatMessage("exception.jpredconcide_entry_has_unexpected_number_of_columns", new String[]{ids.elementAt(i).toString()})); + throw new IOException(MessageManager.formatMessage( + "exception.jpredconcide_entry_has_unexpected_number_of_columns", + new String[] + { ids.elementAt(i).toString() })); } - if ((newSeq.getName().startsWith("QUERY") || newSeq.getName() - .startsWith("align;")) && (QuerySeqPosition == -1)) + if ((newSeq.getName().startsWith("QUERY") + || newSeq.getName().startsWith("align;")) + && (QuerySeqPosition == -1)) { QuerySeqPosition = seqs.size(); } @@ -318,7 +334,10 @@ public class JPredFile extends AlignFile } catch (Exception e) { tal = null; - IOException ex = new IOException(MessageManager.formatMessage("exception.couldnt_parse_concise_annotation_for_prediction", new String[]{e.getMessage()})); + IOException ex = new IOException(MessageManager.formatMessage( + "exception.couldnt_parse_concise_annotation_for_prediction", + new String[] + { e.getMessage() })); e.printStackTrace(); // java 1.1 does not have : // ex.setStackTrace(e.getStackTrace()); throw ex; @@ -337,28 +356,28 @@ public class JPredFile extends AlignFile * * @return String */ - public String print() + @Override + public String print(SequenceI[] sqs, boolean jvsuffix) { return "Not Supported"; } /** - * DOCUMENT ME! * * @param args - * DOCUMENT ME! + * @j2sIgnore */ public static void main(String[] args) { try { - JPredFile blc = new JPredFile(args[0], "File"); + JPredFile jpred = new JPredFile(args[0], DataSourceType.FILE); - for (int i = 0; i < blc.seqs.size(); i++) + for (int i = 0; i < jpred.seqs.size(); i++) { - System.out.println(((Sequence) blc.seqs.elementAt(i)).getName() + System.out.println(((Sequence) jpred.seqs.elementAt(i)).getName() + "\n" - + ((Sequence) blc.seqs.elementAt(i)).getSequenceAsString() + + ((Sequence) jpred.seqs.elementAt(i)).getSequenceAsString() + "\n"); } } catch (java.io.IOException e) @@ -389,7 +408,7 @@ public class JPredFile extends AlignFile } // check that no stray annotations have been added at the end. { - SequenceI sq = (SequenceI) seqs.elementAt(j - 1); + SequenceI sq = seqs.elementAt(j - 1); if (sq.getName().toUpperCase().startsWith("JPRED")) { annotSeqs.addElement(sq);