/*
* Jalview - A Sequence Alignment Editor and Viewer (Version 2.8)
* Copyright (C) 2012 J Procter, AM Waterhouse, LM Lui, J Engelhardt, G Barton, M Clamp, S Searle
*
* 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.
*
* 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 .
*/
package jalview.ws.gui;
import static org.junit.Assert.assertTrue;
import jalview.gui.WsJobParameters;
import jalview.ws.jws2.JabaPreset;
import jalview.ws.jws2.Jws2Discoverer;
import jalview.ws.jws2.jabaws2.Jws2Instance;
import java.awt.BorderLayout;
import java.awt.event.WindowEvent;
import java.awt.event.WindowListener;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.Vector;
import javax.swing.JFrame;
import javax.swing.JPanel;
import org.junit.Test;
import compbio.metadata.Option;
import compbio.metadata.Parameter;
import compbio.metadata.Preset;
import compbio.metadata.PresetManager;
public class Jws2ParamView
{
/**
* test servers
*/
public static String[] serviceUrls = new String[]
{ "http://localhost:8080/jabaws" };
/**
* which services to test
*/
public static List serviceTests = new ArrayList();
/**
* which presets to test for services
*/
public static List presetTests = new ArrayList();
static
{
serviceTests.add("AAConWS".toLowerCase());
}
@Test
public void testJws2Gui()
{
jalview.ws.jws2.Jws2Discoverer disc = jalview.ws.jws2.Jws2Discoverer
.getDiscoverer();
int p = 0;
String svcurls="";
Vector services = new Vector();
for (String url : serviceUrls)
{
svcurls+=url+"; ";
services.add(url);
}
;
Jws2Discoverer.setServiceUrls(services);
try
{
disc.run();
} catch (Exception e)
{
System.err.println("Aborting. Problem discovering services. Tried "+svcurls);
e.printStackTrace();
return;
}
assertTrue("Failed to discover any services at ",
disc.getServices().size() > 0);
Jws2Instance lastserv = null;
Iterator presetEnum = presetTests.iterator();
for (Jws2Instance service : disc.getServices())
{
lastserv = service;
if (serviceTests.size() == 0
|| serviceTests.contains(service.serviceType.toLowerCase()))
{
if (lastserv != null)
{
List prl = null;
Preset pr = null;
if (presetEnum.hasNext())
{
PresetManager prman = lastserv.getPresets();
if (prman != null)
{
pr = prman.getPresetByName(presetEnum.next());
if (pr == null)
{
// just grab the last preset.
prl = prman.getPresets();
}
}
}
else
{
PresetManager prman = lastserv.getPresets();
if (prman != null)
{
prl = prman.getPresets();
}
}
Iterator en = (prl == null) ? null : prl.iterator();
while (en != null && en.hasNext())
{
if (en != null)
{
if (!en.hasNext())
{
en = prl.iterator();
}
pr = en.next();
}
{
System.out.println("Testing opts dupes for "
+ lastserv.getUri() + " : "
+ lastserv.getActionText() + ":" + pr.getName());
List