Clean up logging system
[jabaws.git] / runner / compbio / runner / structure / RNAalifold.java
1 package compbio.runner.structure;\r
2 \r
3 import java.io.FileNotFoundException;\r
4 import java.io.IOException;\r
5 \r
6 import org.apache.log4j.Logger;\r
7 \r
8 import compbio.data.sequence.RNAStructScoreManager;\r
9 import compbio.engine.client.PipedExecutable;\r
10 import compbio.engine.client.SkeletalExecutable;\r
11 import compbio.metadata.ResultNotAvailableException;\r
12 import compbio.runner.Util;\r
13 \r
14 public class RNAalifold extends SkeletalExecutable<RNAalifold> \r
15                 implements PipedExecutable<RNAalifold> {\r
16 \r
17         private static Logger log = Logger.getLogger(RNAalifold.class);\r
18 \r
19         // May not be necessary as defult is "<space>" but still dont know\r
20         // How to deal with different key value separators for different params\r
21         public static final String KEY_VALUE_SEPARATOR = " ";\r
22         \r
23         public RNAalifold() {\r
24                 super(KEY_VALUE_SEPARATOR);\r
25         }\r
26         \r
27         @Override\r
28         public RNAalifold setOutput(String outFile) {\r
29                 super.setOutput(outFile);\r
30                 return this;\r
31         }\r
32         \r
33         @Override\r
34         public RNAalifold setInput(String inFile) {\r
35                 cbuilder.setLast(inFile);\r
36                 super.setInput(inFile);\r
37                 return this;\r
38         }\r
39         \r
40         @SuppressWarnings("unchecked")\r
41         @Override\r
42         public Class<RNAalifold> getType() {\r
43                 return (Class<RNAalifold>) this.getClass();\r
44         }\r
45         \r
46         @SuppressWarnings("unchecked")\r
47         @Override\r
48         public RNAStructScoreManager getResults(String workDirectory)\r
49                         throws ResultNotAvailableException {\r
50                 try {\r
51                         return Util.readRNAStruct(workDirectory, getOutput());\r
52                 } catch (FileNotFoundException e) {\r
53                         log.error(e.getMessage(), e.getCause());\r
54                         throw new ResultNotAvailableException(e);\r
55                 } catch (IOException e) {\r
56                         log.error(e.getMessage(), e.getCause());\r
57                         throw new ResultNotAvailableException(e);\r
58                 }\r
59         }\r
60 \r
61 }\r