X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fws%2FEnfinEnvision2OneWay.java;h=503245b723fa526185f1dce148394165b324b619;hb=797df64fa2a0a30773d0f48f5494d4155e5a8be3;hp=6a9371bd84c0af99bbfd6c4f5e4e703a2feca671;hpb=8a6fa9ea9900d0f106529c3f6283e7f9d76dd2cb;p=jalview.git diff --git a/src/jalview/ws/EnfinEnvision2OneWay.java b/src/jalview/ws/EnfinEnvision2OneWay.java index 6a9371b..503245b 100644 --- a/src/jalview/ws/EnfinEnvision2OneWay.java +++ b/src/jalview/ws/EnfinEnvision2OneWay.java @@ -1,6 +1,6 @@ /* - * 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 2.7) + * Copyright (C) 2011 J Procter, AM Waterhouse, J Engelhardt, LM Lui, G Barton, M Clamp, S Searle * * This file is part of Jalview. * @@ -33,12 +33,21 @@ import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.ItemEvent; import java.awt.event.ItemListener; +import java.io.BufferedOutputStream; import java.io.BufferedReader; import java.io.InputStreamReader; +import java.io.OutputStreamWriter; +import java.io.PrintWriter; +import java.io.StringWriter; +import java.io.UnsupportedEncodingException; import java.net.URL; +import java.net.URLEncoder; +import java.nio.charset.Charset; +import java.nio.charset.CharsetEncoder; import java.util.Hashtable; import java.util.Map; import java.util.Vector; +import java.util.regex.Pattern; import javax.swing.JMenu; import javax.swing.JMenuItem; @@ -48,10 +57,15 @@ import javax.swing.event.MenuListener; import javax.xml.parsers.SAXParser; import javax.xml.parsers.SAXParserFactory; +import org.apache.axis.utils.StringUtils; +import org.apache.http.client.utils.URLEncodedUtils; +import org.apache.http.entity.StringEntity; import org.xml.sax.Attributes; import org.xml.sax.SAXException; import org.xml.sax.helpers.DefaultHandler; +import com.lowagie.text.html.HtmlEncoder; + /** * Lightweight runnable to discover dynamic 'one way' group URL services * @@ -138,19 +152,31 @@ public class EnfinEnvision2OneWay extends DefaultHandler implements System.err.println("Adding entry for " + wfname + " " + description); if (wfname.toLowerCase().indexOf("funcnet") == -1) { + description = Pattern.compile("\\s+",Pattern.MULTILINE).matcher(description).replaceAll(" "); groupURLdescr.addElement(description); groupURLdescr.addElement(description); + String urlstub=wfname; + if (wfname.indexOf(" ")>-1) + { + // make the name safe! + try { + urlstub = URLEncoder.encode(wfname,"utf-8"); + } catch (UnsupportedEncodingException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + } groupURLLinks .addElement(wfname + "|" + "http://www.ebi.ac.uk/enfin-srv/envision2/pages/linkin.jsf?tool=Jalview&workflow=" - + wfname + + urlstub + "&datasetName=JalviewSeqs$DATASETID$&input=$SEQUENCEIDS$&inputType=0|,"); // #"+description+"#"); groupURLLinks .addElement(wfname + "|" + "http://www.ebi.ac.uk/enfin-srv/envision2/pages/linkin.jsf?tool=Jalview&workflow=" - + wfname + + urlstub + "&datasetName=JalviewSeqs$DATASETID$&input=$SEQUENCES=/([A-Za-z]+)+/=$&inputType=1|,"); // #"+description+"#"); } } @@ -297,6 +323,10 @@ public class EnfinEnvision2OneWay extends DefaultHandler implements return; } } + try { + descr = HtmlEncoder.encode(descr); + } catch (Exception e){}; + boolean seqsorids = (urlgenerator.getGroupURLType() & urlgenerator.SEQUENCEIDS) == 0; int i = urlgenerator.getNumberInvolved(urlstub); JMenuItem item = new JMenuItem(label);