X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fio%2FFastaFile.java;h=c698a31b81963fe24ec8c3044ceaf6a10eb0fb15;hb=d4271d32477e99e9fbbfa5db3e11f1b79324e60d;hp=2db0ded1682df40d00c8420c7e2518188486c5cb;hpb=a8f483d04205bb8273ee311c12968b7e86d205fa;p=jalview.git
diff --git a/src/jalview/io/FastaFile.java b/src/jalview/io/FastaFile.java
index 2db0ded..c698a31 100755
--- a/src/jalview/io/FastaFile.java
+++ b/src/jalview/io/FastaFile.java
@@ -1,27 +1,32 @@
/*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
- * 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.
*
* 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.io.IOException;
-
-import jalview.datamodel.*;
+import jalview.datamodel.Alignment;
+import jalview.datamodel.AlignmentAnnotation;
+import jalview.datamodel.Annotation;
+import jalview.datamodel.Sequence;
+import jalview.datamodel.SequenceI;
/**
* DOCUMENT ME!
@@ -50,20 +55,31 @@ public class FastaFile extends AlignFile
*
* @param inFile
* DOCUMENT ME!
- * @param type
+ * @param sourceType
* DOCUMENT ME!
*
* @throws IOException
* DOCUMENT ME!
*/
- public FastaFile(String inFile, String type) throws IOException
+ public FastaFile(String inFile, DataSourceType sourceType)
+ throws IOException
{
- super(inFile, type);
+ super(inFile, sourceType);
}
public FastaFile(FileParse source) throws IOException
{
- super(source);
+ this(source, true);
+ }
+
+ public FastaFile(FileParse source, boolean closeData) throws IOException
+ {
+ super(true, source, closeData);
+ }
+
+ public FastaFile(SequenceI[] seqs)
+ {
+ super(seqs);
}
/**
@@ -72,12 +88,13 @@ public class FastaFile extends AlignFile
* @throws IOException
* DOCUMENT ME!
*/
+ @Override
public void parse() throws IOException
{
StringBuffer sb = new StringBuffer();
boolean firstLine = true;
- String line,uline;
+ String line, uline;
Sequence seq = null;
boolean annotation = false;
@@ -139,23 +156,24 @@ public class FastaFile extends AlignFile
seqs.addElement(seq);
}
}
+
private AlignmentAnnotation makeAnnotation(SequenceI seq, StringBuffer sb)
{
Annotation[] anots = new Annotation[sb.length()];
char cb;
- for (int i=0;i" + printId(s[i]));
+ out.append(">" + printId(s[i], jvsuffix));
if (s[i].getDescription() != null)
{
out.append(" " + s[i].getDescription());
@@ -203,7 +207,8 @@ public class FastaFile extends AlignFile
out.append(newline);
- int nochunks = (s[i].getLength() / len) + 1;
+ int nochunks = (s[i].getLength() / len)
+ + (s[i].getLength() % len > 0 ? 1 : 0);
for (int j = 0; j < nochunks; j++)
{
@@ -226,14 +231,4 @@ public class FastaFile extends AlignFile
return out.toString();
}
-
- /**
- * DOCUMENT ME!
- *
- * @return DOCUMENT ME!
- */
- public String print()
- {
- return print(getSeqsAsArray());
- }
}