X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fio%2FWSWUBlastClient.java;h=81708019a06febcc5997f629ebcd51bba425ef65;hb=eb3e681d6e82ccdd5d312d1981dfb306e7f479f0;hp=8fbf0023a026445754449f7b77349dab72f27e9a;hpb=8a6fa9ea9900d0f106529c3f6283e7f9d76dd2cb;p=jalview.git diff --git a/src/jalview/io/WSWUBlastClient.java b/src/jalview/io/WSWUBlastClient.java index 8fbf002..8170801 100755 --- a/src/jalview/io/WSWUBlastClient.java +++ b/src/jalview/io/WSWUBlastClient.java @@ -1,30 +1,49 @@ /* - * Jalview - A Sequence Alignment Editor and Viewer (Version 2.6) - * Copyright (C) 2010 J Procter, AM Waterhouse, G Barton, M Clamp, S Searle + * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$) + * Copyright (C) $$Year-Rel$$ The Jalview Authors * * This file is part of Jalview. * * Jalview is free software: you can redistribute it and/or * modify it under the terms of the GNU General Public License - * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. - * + * as published by the Free Software Foundation, either version 3 + * of the License, or (at your option) any later version. + * * Jalview 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 GNU General Public License for more details. * - * You should have received a copy of the GNU General Public License along with Jalview. If not, see . + * You should have received a copy of the GNU General Public License + * along with Jalview. If not, see . + * The Jalview Authors are detailed in the 'AUTHORS' file. */ package jalview.io; -import java.util.*; - -import javax.swing.*; - -import jalview.analysis.*; -import jalview.datamodel.*; -import jalview.gui.*; -import uk.ac.ebi.www.*; +import jalview.analysis.AlignSeq; +import jalview.datamodel.AlignmentI; +import jalview.datamodel.DBRefEntry; +import jalview.datamodel.Sequence; +import jalview.gui.AlignmentPanel; +import jalview.gui.CutAndPasteTransfer; +import jalview.gui.Desktop; +import jalview.gui.JvOptionPane; +import jalview.util.MessageManager; + +import java.util.ArrayList; +import java.util.Enumeration; +import java.util.List; +import java.util.StringTokenizer; +import java.util.Vector; + +import javax.swing.ImageIcon; + +import uk.ac.ebi.www.Data; +import uk.ac.ebi.www.InputParams; +import uk.ac.ebi.www.WSFile; +import uk.ac.ebi.www.WSWUBlast; +import uk.ac.ebi.www.WSWUBlastService; +import uk.ac.ebi.www.WSWUBlastServiceLocator; /** * DOCUMENT ME! @@ -56,20 +75,16 @@ public class WSWUBlastClient { this.ap = ap; this.al = al; - output.setText("To display sequence features an exact Uniprot id with 100% sequence identity match must be entered." - + "\nIn order to display these features, try changing the names of your sequences to the ids suggested below." - + "\n\nRunning WSWUBlast at EBI." - + "\nPlease quote Pillai S., Silventoinen V., Kallio K., Senger M., Sobhany S., Tate J., Velankar S., Golovin A., Henrick K., Rice P., Stoehr P., Lopez R." - + "\nSOAP-based services provided by the European Bioinformatics Institute." - + "\nNucleic Acids Res. 33(1):W25-W28 (2005));"); + output.setText( + MessageManager.getString("label.wswublast_client_credits")); - Desktop.addInternalFrame(output, - "BLASTing for unidentified sequences ", 800, 300); + Desktop.addInternalFrame(output, MessageManager.getString( + "label.blasting_for_unidentified_sequence"), 800, 300); for (int i = 0; i < ids.size(); i++) { Sequence sequence = (Sequence) ids.get(i); - System.out.println(sequence.getName()); + jalview.bin.Console.outPrintln(sequence.getName()); BlastThread thread = new BlastThread(sequence); thread.start(); @@ -114,15 +129,14 @@ public class WSWUBlastClient { identitiesFound = true; - int value = Integer.parseInt(data.substring( - data.indexOf("(") + 1, data.indexOf("%"))); + int value = Integer.parseInt(data + .substring(data.indexOf("(") + 1, data.indexOf("%"))); if (value >= maxFound) { maxFound = value; buffer.append(" " + id2 + " " + value + "%; "); - suggestedIds.addElement(new Object[] - { seq, id2 }); + suggestedIds.addElement(new Object[] { seq, id2 }); } } } @@ -136,11 +150,11 @@ public class WSWUBlastClient { // This must be outside the run() body as java 1.5 // will not return any value from the OptionPane to the expired thread. - int reply = JOptionPane.showConfirmDialog(Desktop.desktop, + int reply = JvOptionPane.showConfirmDialog(Desktop.desktop, "Automatically update suggested ids?", - "Auto replace sequence ids", JOptionPane.YES_NO_OPTION); + "Auto replace sequence ids", JvOptionPane.YES_NO_OPTION); - if (reply == JOptionPane.YES_OPTION) + if (reply == JvOptionPane.YES_OPTION) { Enumeration keys = suggestedIds.elements(); while (keys.hasMoreElements()) @@ -162,16 +176,17 @@ public class WSWUBlastClient } } - DBRefEntry[] entries = oldseq.getDBRef(); - if (entries != null) + List entries = oldseq.getDBRefs(); + // BH 2019.01.25 check for 0-length was missing here + if (entries != null && entries.size() > 0) { oldseq.addDBRef(new jalview.datamodel.DBRefEntry( - jalview.datamodel.DBRefSource.UNIPROT, "0", entries[0] - .getAccessionId())); + jalview.datamodel.DBRefSource.UNIPROT, "0", + entries.get(0).getAccessionId())); } } } - ap.paintAlignment(true); + ap.paintAlignment(true, false); } @@ -187,8 +202,8 @@ public class WSWUBlastClient for (int i = 0; i < 9; i++) { - java.net.URL url = getClass().getResource( - "/images/dna" + (i + 1) + ".gif"); + java.net.URL url = getClass() + .getResource("/images/dna" + (i + 1) + ".gif"); if (url != null) { @@ -197,6 +212,7 @@ public class WSWUBlastClient } } + @Override public void run() { while (jobsRunning > 0) @@ -207,8 +223,10 @@ public class WSWUBlastClient imageIndex++; imageIndex %= 9; output.setFrameIcon(imageIcon[imageIndex]); - output.setTitle("BLASTing for unidentified sequences - " - + jobsRunning + " jobs running."); + output.setTitle(MessageManager.formatMessage( + "label.blasting_for_unidentified_sequence_jobs_running", + new String[] + { Integer.valueOf(jobsRunning).toString() })); } catch (Exception ex) { } @@ -231,10 +249,11 @@ public class WSWUBlastClient BlastThread(Sequence sequence) { - System.out.println("blasting for: " + sequence.getName()); + jalview.bin.Console.outPrintln("blasting for: " + sequence.getName()); this.sequence = sequence; } + @Override public void run() { StartJob(); @@ -257,7 +276,7 @@ public class WSWUBlastClient else { Thread.sleep(10000); - System.out.println("WSWuBlastClient: I'm alive " + jalview.bin.Console.outPrintln("WSWuBlastClient: I'm alive " + sequence.getName() + " " + jobid); // log.debug } } catch (Exception ex) @@ -296,7 +315,8 @@ public class WSWUBlastClient { jobComplete = true; jobsRunning--; - System.err.println("WSWUBlastClient error:\n" + exp.toString()); + jalview.bin.Console + .errPrintln("WSWUBlastClient error:\n" + exp.toString()); exp.printStackTrace(); } }