X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=webservices%2Fcompbio%2Fws%2Fclient%2FIOHelper.java;h=3e4b72696a69bef9362e0ee19f6f05cadcf101eb;hb=652864eebc0ecdeb6f8bfef1700e3b365a0d7227;hp=79357e5c8dce33bae248c5a498c5fee40df07e7c;hpb=8033a51860de2200a54e64add0809d6780f5b092;p=jabaws.git diff --git a/webservices/compbio/ws/client/IOHelper.java b/webservices/compbio/ws/client/IOHelper.java index 79357e5..3e4b726 100644 --- a/webservices/compbio/ws/client/IOHelper.java +++ b/webservices/compbio/ws/client/IOHelper.java @@ -1,21 +1,36 @@ +/* Copyright (c) 2011 Peter Troshin + * + * JAva Bioinformatics Analysis Web Services (JABAWS) @version: 2.0 + * + * This library is free software; you can redistribute it and/or modify it under the terms of the + * Apache License version 2 as published by the Apache Software Foundation + * + * This library 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 Apache + * License for more details. + * + * A copy of the license is in apache_license.txt. It is also available here: + * @see: http://www.apache.org/licenses/LICENSE-2.0.txt + * + * Any republication or derived work distributed in source code form + * must include this copyright and license notice. + */ package compbio.ws.client; import static compbio.ws.client.Constraints.pseparator; import java.io.BufferedReader; import java.io.File; -import java.io.FileNotFoundException; -import java.io.FileOutputStream; import java.io.FileReader; +import java.io.FileWriter; import java.io.IOException; -import java.io.OutputStream; +import java.io.Writer; import java.util.ArrayList; import java.util.List; -import java.util.Set; import compbio.data.sequence.Alignment; import compbio.data.sequence.ClustalAlignmentUtil; -import compbio.data.sequence.Score; +import compbio.data.sequence.ScoreManager; public class IOHelper { @@ -31,8 +46,8 @@ public class IOHelper { static File getFile(String[] cmd, String key, boolean mustExist) throws IOException { assert key != null && key.trim().length() != 0; - for (int i = 0; i < cmd.length; i++) { - String filename = cmd[i]; + for (String c : cmd) { + String filename = c; filename = filename.trim(); if (filename.toLowerCase().startsWith(key + pseparator)) { filename = filename.substring((key + pseparator).length()); @@ -75,14 +90,9 @@ public class IOHelper { return params; } - static OutputStream getOutStream(File file) { + static Writer getWriter(File file) throws IOException { assert file != null && file.exists(); - try { - return new FileOutputStream(file); - } catch (FileNotFoundException e) { - e.printStackTrace(); - } - return null; + return new FileWriter(file); } /** @@ -93,17 +103,17 @@ public class IOHelper { * @param align * the alignment to output */ - static void writeOut(OutputStream outStream, Alignment align) { + static void writeOut(Writer writer, Alignment align) { try { - ClustalAlignmentUtil.writeClustalAlignment(outStream, align); + ClustalAlignmentUtil.writeClustalAlignment(writer, align); } catch (IOException e) { System.err .println("Problems writing output file! Stack trace is below: "); e.printStackTrace(); } finally { - if (outStream != null) { + if (writer != null) { try { - outStream.close(); + writer.close(); } catch (IOException ignored) { // e.printStackTrace(); } @@ -118,17 +128,20 @@ public class IOHelper { * @param result * the AACon scores to output */ - static void writeOut(OutputStream outStream, Set result) { + static void writeOut(Writer writer, ScoreManager results) { + if (results == null) { + return; + } try { - Score.write(result, outStream); + results.writeOut(writer); } catch (IOException e) { System.err .println("Problems writing output file! Stack trace is below: "); e.printStackTrace(); } finally { - if (outStream != null) { + if (writer != null) { try { - outStream.close(); + writer.close(); } catch (IOException ignored) { // e.printStackTrace(); }