blob: 929c316c6d0a4372a5d5646875acfdb95945f07a [file] [log] [blame]
{
"classLoaderSharing" : "workflow",
"script" : "import org.biojava.bio.seq.Sequence;\nimport org.biojava.bio.seq.SequenceIterator;\nimport org.biojava.bio.seq.io.SeqIOTools;\nimport org.biojava.bio.seq.io.agave.AgaveWriter;\n\nBufferedReader getReader (String fileUrl) throws IOException {\n\t\tInputStreamReader reader;\n\t\ttry {\n\t\t\treader = new FileReader(fileUrl);\n\t\t}\n\t\tcatch (FileNotFoundException e) {\n\t\t\t// try a real URL instead\n\t\t\tURL url = new URL(fileUrl);\n\t\t\treader = new InputStreamReader (url.openStream());\n\t\t}\n\t\treturn new BufferedReader(reader);\n\t}\n\t\nif ((fileUrl == void) || (fileUrl == null)) {\n throw new RuntimeException(\"The fileUrl must be specified\");\n}\n\t\nBufferedReader br = getReader(fileUrl);\n\n// read the EMBL File\nSequenceIterator sequences = SeqIOTools.readSwissprot(br);\n\n// Prepare the writer\nAgaveWriter writer = new AgaveWriter();\nByteArrayOutputStream os = new ByteArrayOutputStream();\nStringBuffer sb = new StringBuffer();\nPrintStream ps = new PrintStream(os);\n\n// iterate through the sequences\nwhile (sequences.hasNext()) {\n\tSequence seq = sequences.nextSequence();\n\twriter.writeSequence(seq, ps);\n\tsb.append(os.toString());\n}\nresults = sb.toString();\n\nbr.close();\nps.close();\n \n",
"localworkerName" : "net.sourceforge.taverna.scuflworkers.biojava.SwissProtParserWorker",
"inputPorts" : [ {
"name" : "fileUrl",
"depth" : 0,
"type" : "String"
} ],
"outputPorts" : [ {
"name" : "results",
"depth" : 0,
"granularDepth" : 0
} ],
"isAltered" : false
}