update author list in license for (JAL-826)
[jalview.git] / src / jalview / ws / jws2 / JabaPreset.java
1 /*
2  * Jalview - A Sequence Alignment Editor and Viewer (Version 2.7)
3  * Copyright (C) 2011 J Procter, AM Waterhouse, J Engelhardt, LM Lui, G Barton, M Clamp, S Searle
4  * 
5  * This file is part of Jalview.
6  * 
7  * Jalview is free software: you can redistribute it and/or
8  * modify it under the terms of the GNU General Public License 
9  * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
10  * 
11  * Jalview is distributed in the hope that it will be useful, but 
12  * WITHOUT ANY WARRANTY; without even the implied warranty 
13  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
14  * PURPOSE.  See the GNU General Public License for more details.
15  * 
16  * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
17  */
18 package jalview.ws.jws2;
19
20 import jalview.ws.jws2.Jws2Discoverer.Jws2Instance;
21 import jalview.ws.params.ArgumentI;
22 import jalview.ws.params.WsParamSetI;
23
24 import java.util.List;
25
26 import compbio.metadata.Preset;
27
28 public class JabaPreset implements WsParamSetI
29 {
30   Preset p = null;
31
32   Jws2Instance service;
33
34   public JabaPreset(Jws2Instance svc, Preset preset)
35   {
36     service = svc;
37     p = preset;
38   }
39
40   @Override
41   public String getName()
42   {
43     return p.getName();
44   }
45
46   @Override
47   public String getDescription()
48   {
49     return p.getDescription();
50   }
51
52   @Override
53   public String[] getApplicableUrls()
54   {
55     return new String[]
56     { service.getUri() };
57   }
58
59   @Override
60   public String getSourceFile()
61   {
62     return null;
63   }
64
65   @Override
66   public boolean isModifiable()
67   {
68     return false;
69   }
70
71   @Override
72   public void setSourceFile(String newfile)
73   {
74     throw new Error("Cannot set source file for " + getClass());
75   }
76
77   @Override
78   public List<ArgumentI> getArguments()
79   {
80     try
81     {
82       return JabaParamStore.getJwsArgsfromJaba(p.getArguments(service
83               .getRunnerConfig()));
84     } catch (Exception e)
85     {
86       e.printStackTrace();
87       throw new Error(
88               "Probable mismatch between service instance and preset!");
89     }
90   }
91
92   @Override
93   public void setArguments(List<ArgumentI> args)
94   {
95     throw new Error("Cannot set Parameters for a Jaba Web service's preset");
96   }
97 }