X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fio%2FPhylipFile.java;h=e8fe7e94b9a371b5cdb0b4778246585211a065b9;hb=7d67fb613ec026dc9a265e351e7fab542e3f1d61;hp=ce65eea1486deb4d83e5f4924c1866896583859e;hpb=77abb3fac2965a8966410cd77cd749c7c1dc6453;p=jalview.git diff --git a/src/jalview/io/PhylipFile.java b/src/jalview/io/PhylipFile.java index ce65eea..e8fe7e9 100644 --- a/src/jalview/io/PhylipFile.java +++ b/src/jalview/io/PhylipFile.java @@ -1,9 +1,25 @@ -/** - * +/* + * 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. + * + * 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 . + * The Jalview Authors are detailed in the 'AUTHORS' file. */ package jalview.io; -import jalview.datamodel.Alignment; import jalview.datamodel.Sequence; import jalview.datamodel.SequenceI; @@ -43,9 +59,6 @@ import java.io.IOException; public class PhylipFile extends AlignFile { - // Define file extension and description to save repeating it elsewhere - public static final String FILE_EXT = "phy"; - public static final String FILE_DESC = "PHYLIP"; /** @@ -69,13 +82,14 @@ public class PhylipFile extends AlignFile /** * @param inFile - * @param type + * @param sourceType * @throws IOException * @see {@link AlignFile#AlignFile(FileParse)} */ - public PhylipFile(String inFile, String type) throws IOException + public PhylipFile(String inFile, DataSourceType sourceType) + throws IOException { - super(inFile, type); + super(inFile, sourceType); } /** @@ -171,13 +185,6 @@ public class PhylipFile extends AlignFile seqs.add(sequenceElements[i]); } - // create an alignment based on the sequences - Alignment a = new Alignment(sequenceElements); - // add annotations - although comments say addAnnotations - // is used by AppletFormatAdapter, it doesn't say other - // classes should/can not use it - addAnnotations(a); - } catch (IOException e) { System.err.println("Exception parsing PHYLIP file " + e); @@ -209,8 +216,8 @@ public class PhylipFile extends AlignFile */ private String validateName(String name) throws IOException { - char[] invalidCharacters = new char[] - { '(', ')', '[', ']', ':', ';', ',' }; + char[] invalidCharacters = new char[] { '(', ')', '[', ']', ':', ';', + ',' }; for (char c : invalidCharacters) { if (name.indexOf(c) > -1) @@ -233,15 +240,15 @@ public class PhylipFile extends AlignFile * @see {@link AlignFile#print()} */ @Override - public String print() + public String print(SequenceI[] sqs, boolean jvsuffix) { - StringBuffer sb = new StringBuffer(Integer.toString(seqs.size())); + StringBuffer sb = new StringBuffer(Integer.toString(sqs.length)); sb.append(" "); // if there are no sequences, then define the number of characters as 0 sb.append( - (seqs.size() > 0) ? Integer - .toString(seqs.get(0).getSequence().length) : "0") + (sqs.length > 0) ? Integer.toString(sqs[0].getSequence().length) + : "0") .append(newline); // Due to how IO is handled, there doesn't appear to be a way to store @@ -253,7 +260,7 @@ public class PhylipFile extends AlignFile int numInterleavedColumns = 60; int sequenceLength = 0; - for (SequenceI s : seqs) + for (SequenceI s : sqs) { // ensure name is only 10 characters @@ -304,7 +311,7 @@ public class PhylipFile extends AlignFile // add blank line to separate this matrix from previous sb.append(newline); int start = i * numInterleavedColumns; - for (SequenceI s : seqs) + for (SequenceI s : sqs) { sb.append( s.getSequence(start, Math.min(start @@ -317,4 +324,4 @@ public class PhylipFile extends AlignFile return sb.toString(); } -} \ No newline at end of file +}