Necessary modifications in JABAWS for Jpred
[jabaws.git] / runner / compbio / runner / predictors / Jpred.java
index 017dcfc..7c27a37 100644 (file)
@@ -28,17 +28,21 @@ import java.util.List;
 \r
 import org.apache.log4j.Logger;\r
 \r
+import compbio.data.sequence.Alignment;\r
+import compbio.data.sequence.AlignmentMetadata;\r
+import compbio.data.sequence.Program;\r
 import compbio.data.sequence.ScoreManager;\r
 import compbio.data.sequence.SequenceUtil;\r
 import compbio.engine.client.CommandBuilder;\r
 import compbio.engine.client.Executable;\r
 import compbio.engine.client.SkeletalExecutable;\r
 import compbio.metadata.ResultNotAvailableException;\r
+import compbio.runner.Util;\r
 \r
 /**\r
  * Command line\r
  * \r
- * jpred.pl -in d16vpa_.fas -out res_d16vpa_ -dbname ported_db -dbpath /data/UNIREFdb -ncpu 4\r
+ * jpred.pl -in d16vpa_.fas -outfile res_d16vpa_ -dbname ported_db -dbpath /data/UNIREFdb -ncpu 4\r
  * \r
  * @author asherstnev\r
  * \r
@@ -57,17 +61,17 @@ public class Jpred extends SkeletalExecutable<Jpred> {
        public static final String STAT_FILE = "stat.txt";\r
 \r
        public Jpred() {\r
-//             addParameters(Arrays.asList());\r
+               addParameters(Arrays.asList("-logfile " + STAT_FILE));\r
        }\r
+\r
        // HashMap<Method, float[]>\r
        @Override\r
-       public ScoreManager getResults(String workDirectory)\r
+       public Alignment getResults(String workDirectory)\r
                        throws ResultNotAvailableException {\r
-               ScoreManager annotations = null;\r
+               Alignment annotations = null;\r
                try {\r
                        InputStream inStream = new FileInputStream(new File(workDirectory, getOutput()));\r
-                       annotations = ScoreManager.newInstanceSingleSequence(SequenceUtil.readAAConResults(inStream));\r
-                       inStream.close();\r
+                       annotations = new Alignment(SequenceUtil.readJpredFile(inStream), new AlignmentMetadata(Program.Jpred, '-'));\r
                } catch (FileNotFoundException e) {\r
                        log.error(e.getMessage(), e.getCause());\r
                        throw new ResultNotAvailableException(e);\r
@@ -96,7 +100,7 @@ public class Jpred extends SkeletalExecutable<Jpred> {
        @Override\r
        public Jpred setOutput(String outFile) {\r
                super.setOutput(outFile);\r
-               cbuilder.setParam("-out " + outFile);\r
+               cbuilder.setParam("-outfile " + outFile);\r
                return this;\r
        }\r
 \r