X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fio%2FPIRFile.java;h=d9ed5166d9f88d04d0818007dc6114cd8f297b7f;hb=92d66803db3319c4db605177d502de91302ef684;hp=e6181fde7fda57b4b6e84c54aedadd456d8c661b;hpb=d423f22792e47dbc800ae220a58677f988971d06;p=jalview.git diff --git a/src/jalview/io/PIRFile.java b/src/jalview/io/PIRFile.java index e6181fd..d9ed516 100755 --- a/src/jalview/io/PIRFile.java +++ b/src/jalview/io/PIRFile.java @@ -1,26 +1,31 @@ /* - * Jalview - A Sequence Alignment Editor and Viewer (Version 2.5) - * Copyright (C) 2010 J Procter, AM Waterhouse, G Barton, M Clamp, S Searle + * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$) + * Copyright (C) $$Year-Rel$$ The Jalview Authors * * This file is part of Jalview. * * Jalview is free software: you can redistribute it and/or * modify it under the terms of the GNU General Public License - * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. - * + * as published by the Free Software Foundation, either version 3 + * of the License, or (at your option) any later version. + * * Jalview is distributed in the hope that it will be useful, but * WITHOUT ANY WARRANTY; without even the implied warranty * of MERCHANTABILITY or FITNESS FOR A PARTICULAR * PURPOSE. See the GNU General Public License for more details. * - * You should have received a copy of the GNU General Public License along with Jalview. If not, see . + * You should have received a copy of the GNU General Public License + * along with Jalview. If not, see . + * The Jalview Authors are detailed in the 'AUTHORS' file. */ package jalview.io; -import java.io.*; -import java.util.*; +import jalview.datamodel.Sequence; +import jalview.datamodel.SequenceI; +import jalview.util.Comparison; -import jalview.datamodel.*; +import java.io.IOException; +import java.util.Vector; public class PIRFile extends AlignFile { @@ -32,9 +37,10 @@ public class PIRFile extends AlignFile { } - public PIRFile(String inFile, String type) throws IOException + public PIRFile(String inFile, DataSourceType sourceType) + throws IOException { - super(inFile, type); + super(inFile, sourceType); } public PIRFile(FileParse source) throws IOException @@ -42,6 +48,7 @@ public class PIRFile extends AlignFile super(source); } + @Override public void parse() throws IOException { StringBuffer sequence; @@ -96,14 +103,10 @@ public class PIRFile extends AlignFile } } - public String print() - { - return print(getSeqsAsArray()); - } - - public String print(SequenceI[] s) + @Override + public String print(SequenceI[] s, boolean jvsuffix) { - boolean is_NA = jalview.util.Comparison.isNucleotide(s); + boolean is_NA = Comparison.isNucleotide(s); int len = 72; StringBuffer out = new StringBuffer(); int i = 0; @@ -127,16 +130,19 @@ public class PIRFile extends AlignFile // tRNA N3 // other functional RNA N1 - out.append(">N1;" + s[i].getName() + "\n"); + out.append(">N1;" + s[i].getName()); + out.append(newline); if (s[i].getDescription() == null) { out.append(s[i].getName() + " " + (s[i].getEnd() - s[i].getStart() + 1)); - out.append(is_NA ? " bases\n" : " residues\n"); + out.append(is_NA ? " bases" : " residues"); + out.append(newline); } else { - out.append(s[i].getDescription() + "\n"); + out.append(s[i].getDescription()); + out.append(newline); } } else @@ -144,27 +150,31 @@ public class PIRFile extends AlignFile if (useModellerOutput) { - out.append(">P1;" + s[i].getName() + "\n"); + out.append(">P1;" + s[i].getName()); + out.append(newline); md = new ModellerDescription(s[i]); - out.append(md.getDescriptionLine() + "\n"); + out.append(md.getDescriptionLine()); + out.append(newline); } else { - out.append(">P1;" + printId(s[i]) + "\n"); + out.append(">P1;" + printId(s[i], jvsuffix)); + out.append(newline); if (s[i].getDescription() != null) { - out.append(s[i].getDescription() + "\n"); + out.append(s[i].getDescription()); + out.append(newline); } else { - out - .append(s[i].getName() + " " - + (s[i].getEnd() - s[i].getStart() + 1) - + " residues\n"); + out.append(s[i].getName() + " " + + (s[i].getEnd() - s[i].getStart() + 1) + " residues"); + out.append(newline); } } } - int nochunks = (seq.length() / len) + 1; + int nochunks = (seq.length() / len) + + (seq.length() % len > 0 ? 1 : 0); for (int j = 0; j < nochunks; j++) { @@ -173,11 +183,13 @@ public class PIRFile extends AlignFile if (end < seq.length()) { - out.append(seq.substring(start, end) + "\n"); + out.append(seq.substring(start, end)); + out.append(newline); } else if (start < seq.length()) { - out.append(seq.substring(start) + "\n"); + out.append(seq.substring(start)); + out.append(newline); } }