X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=webservices%2Fcompbio%2Fws%2Fclient%2FAAConClient.java;h=f7f26038eb03001fe9da7605d7fb9e4964b229df;hb=4c022b67a736b6f79dbe212d73016607cf298422;hp=57cf59f5019773ea41bbd41a8edc32717438f8a3;hpb=a17f3c38045ca4509dc891722ea98143005119f6;p=jabaws.git diff --git a/webservices/compbio/ws/client/AAConClient.java b/webservices/compbio/ws/client/AAConClient.java index 57cf59f..f7f2603 100644 --- a/webservices/compbio/ws/client/AAConClient.java +++ b/webservices/compbio/ws/client/AAConClient.java @@ -1,6 +1,6 @@ -/* Copyright (c) 2010 Peter Troshin +/* Copyright (c) 2011 Peter Troshin * - * Amino Acid Conservation Web Service client @version: 1.0 + * 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 @@ -30,13 +30,11 @@ import static compbio.ws.client.Constraints.pseparator; import java.io.Closeable; import java.io.File; import java.io.IOException; -import java.io.OutputStream; +import java.io.PrintWriter; +import java.io.Writer; import java.net.MalformedURLException; import java.net.URL; -import java.util.HashSet; import java.util.List; -import java.util.Map; -import java.util.Set; import java.util.logging.Level; import java.util.logging.Logger; @@ -46,7 +44,7 @@ import javax.xml.ws.WebServiceException; import compbio.data.msa.SequenceAnnotation; import compbio.data.sequence.FastaSequence; -import compbio.data.sequence.Score; +import compbio.data.sequence.ScoreManager; import compbio.data.sequence.SequenceUtil; import compbio.data.sequence.UnknownFileFormatException; import compbio.metadata.JobSubmissionException; @@ -115,17 +113,17 @@ public class AAConClient { customOptions = MetadataHelper.processParameters(prms, msaws.getRunnerOptions()); } - Map> result = null; + ScoreManager result = null; if (inputFile != null) { System.out.println("Calculating conservation..."); result = analize(inputFile, msaws, preset, customOptions); - OutputStream outStream = null; + Writer outStream = null; if (outFile != null) { - outStream = IOHelper.getOutStream(outFile); + outStream = IOHelper.getWriter(outFile); } else { // this stream is going to be closed later which is fine as // std.out will not be - outStream = System.out; + outStream = new PrintWriter(System.out, true); } writeOut(outStream, result); // stream is closed in the method no need to close it here @@ -155,22 +153,17 @@ public class AAConClient { * @param result * the AACon scores to output */ - static void writeOut(OutputStream outStream, - Map> result) { + static void writeOut(Writer writer, ScoreManager result) { try { - for (Map.Entry> entry : result - .entrySet()) { - System.out.println(">" + entry.getKey()); - Score.write(entry.getValue(), outStream); - } + result.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(); } @@ -222,12 +215,11 @@ public class AAConClient { * @return Set the conservation scores * @throws UnknownFileFormatException */ - static Map> analize(File file, - SequenceAnnotation wsproxy, Preset preset, - List> customOptions) { + static ScoreManager analize(File file, SequenceAnnotation wsproxy, + Preset preset, List> customOptions) { List fastalist = null; - Map> scores = null; + ScoreManager scores = null; try { fastalist = SequenceUtil.openInputStream(file.getAbsolutePath());