From c8dfa0a1b91d46b9c11dc6ce7b2b4bfcbc71c13e Mon Sep 17 00:00:00 2001 From: Mateusz Warowny Date: Tue, 6 Jul 2021 15:42:38 +0200 Subject: [PATCH] JAL-3848 Update slivka client library. --- j11lib/slivka-client.jar | Bin 278736 -> 251052 bytes .../slivkaws/SlivkaAnnotationServiceInstance.java | 20 ++- .../ws/slivkaws/SlivkaMsaServiceInstance.java | 15 ++- src/jalview/ws/slivkaws/SlivkaParamSet.java | 129 ++++++++++---------- src/jalview/ws/slivkaws/SlivkaWSDiscoverer.java | 2 +- src/jalview/ws/slivkaws/SlivkaWSInstance.java | 93 +++++++------- 6 files changed, 133 insertions(+), 126 deletions(-) diff --git a/j11lib/slivka-client.jar b/j11lib/slivka-client.jar index 68cc9324537426879d74b25ea72019a2a43e0c6f..895366c7d8ab37975c4371137c1115d7a4128847 100644 GIT binary patch delta 63162 zcma&N1#le8vMs6+Gcz+YTg=SN3>GuPh?!}`%uJSKfyEZHEM~AIi!DZfdwa(__uL=v z$M2ZwSe;eVRb81`mDMX}HW;n83I$0;9s&{*3>Fp^4Au90GLjMGVbrEtlM@s;WJpw$G27Iph2lJ29sD_|Z%{12rOnNi zZO!pInE1hLtYOA zhkhravuIzS<)mp75%3Z?Bzp=ayTw(bTHWw11#i34ShB7Y}?jz#2I7jMKIV!8b$%7-b=^E5hLMCc=^V9k)xgPk<;->=@se1gIRMJall^* zRmNj7yH>7Ah8USjo+3+=x+@6eCYJ~EY>rIPJem5>2sivAI^Lo7Fyx`4z6rB#aVsMy zQyeLMAL>jt`u*UpURqNJ%yKwELtw%xgas2;-xHIBgXIYyyaERo*@)TqNyb?G!bXnp zXigH;Z+k?2H_pr^^Vx(>OkazqI)Gw+{*Gx)iC0uEc{?^Rn@VAsWi4)ol_l1d#t)L` zQIeHeIMR<1&OUE#Fx~0T;Be_w-*9AV*8_&>AE@Z=lkD4NtB+*$cyuVQ3`njpZKh}P z93O!I6?qs~+bm?8Li|qLGmX5)cd%qJPM8k(V1G!) z-pgK$AFTZ(P13BGrhZ=hdDFnoIouq&I=IH7o;&xtEZaAzTO1Om3IS;EsJVWWcLSU` zo)yW{U+ib>gA5?Osrjx+mW$XfK*t>)M98DIrWkL7Z(OTL6dAM&nZmrUp!j*ZC{uaS z1KX#)U56b0;}b)}CASE+x!@>sbSCIE-{HFM&}od41A4c79;CPa)CC}9t~|$vN{boa z_paPw&S`Q$4*=Clij@9-mC%4QhALR*#Swt2@$*G_)tk|rh^KpR$X`Bc)b50RrnRVz zgU_$Q`J-l~aOKTn02tV>->UwPnqPbmQ#&XXflpqTBWUkZ;8PduK|1xMaTM-5>8$t` z7=4UG*kVDG@b>O2y!~Szzokg&O)+w`fV+}-?lCBt@kb^OO`DqYUk4+_8oe3?PEU}e zgBpCL=H*5O`h1nwHx~>wjWq)_H-Eit_r4?TfH`JXax^xuJMc^T)$Ya9S>n89{j5A) z2bzxM<$1sS`LjAwbArR*!NSW8uCu(8jg%Hyu+cNl)^ z@lEDQ%8Dy?bt3=O=P+7ez$=WaDOE*AK7a|+?n-#5p)#lt&z{&bQOVDok$tk10Wf%?=)8 zS#%%`5Qzfi+BqV(c}+AEbgdo_lRwfrB|@+(xn&`hw$9|731-KZ#20fLlX=$0O)-2t zh*O063MFkTDNWXcxQt3t{i|3dn;|#@T^bSsWV=4R#gf&5o{yMBOxRi_{SpLjKwyQ- zSRvL_@qrKmwHo_rVaTAiHb_s1#C<{-DC{3&(U$bFzXZQQPr_m4 zd0OGtD}GMMX-VoAC1k%&3MOji!2+(OoMm?qdc`D@7_=pgm_iW1y=UTk(U-{(L~}VA z(e+SJkCxT*GxQ=R?4XTVCI%yYE<-%QP2My@7@4&;VM@-erCU6|KFJ{(Maa@VEhPBZ z>!ARn!FiH+sCY}@eNcn_5t?SszSyMjhymv#bj2*Aur;GV#EAI=4BQuVxh!Bx`seqA zWK3v0SbiDE^VLirKdHB-2}AXw%jgJG1d5b#My}guBZ*Ws1M~>Ydmlty|8-s70#I>5Gi&_30B)Wr_Rf;t z^}7tzyeDU#TC!`1`McyLw&og#QgoOKdSi1q!beK1SSn!+ys*klQWqXuf&=kiSzqKO zHL-0FT3p=&vH+=^I2DoL6*AVRhQ>eY8bc8EC-ef``{-u86ob=S3xQSUJL}~iYu66mgjtF(E)oc(H)rPU!CDRSJZYc8!oct z)B4(jvlctX1}2LU*&4$<#`wUm{M1|DHQl^i+OKe4)6uLst;+aXcm`#6FDVbU>fcIG zVm?1G8lWXV=Z`$AKL({<)b}91p9#PrZ!tm1l#BMFV}5hdj`|F|`<~Mz-^b?n7H3y@ zi9Ni$Splu*R6>^dIN6txj-qCLuB!E|S!l|h*{S{ZLw`hG_w(tKf?+(LkB)OjdOKi* z+NajJHWep?_(^Dow(E3G<};FkhjUu5J2!u%VnNACwU93gkl=QS`fS#??^_Ro*^!Ng zXYZCz=&!FHXJ@ZK@VX<%!Z$w8F+LjMyx8$<&Niu9@-Lj+YUft=gV=Ryh&oMt8;OEz z8aTbn{YoZhhqP7&rQNx9V{KYYZ)?gMMjzp3%Lx#}fDbDRFOr zwY|qlGeQ4_qS4|*q#4!)c_(&WP2Qv`!rXO0B=`4HqL)SllzkyYQtidx(>4>9=dynm20t3EepH25t_ z(9%6_q2FvP11EbG4#~HeqAT}cl%qy8U&G+Wh17>xzF+yj9xktHf4^G8vVdRRzRVva zG57B}eiHbS$?}4i2a!v1uqA#xM8>}Bj5K`#X-%Wd(tm&A^vn`SAk#zcJ6bUq_ zF6|a%Ba`f!D@JKPLTX?8h-WkPVlC@1SMVA|w)Rm}lD`4}tZP%_T(dRMU|`wE|7%@S zOYLHi18Ph-uCt_HW2A3S?{B;p$Q02#6;)FF|O?=w7iI6a7!}viMTgmE7$}_t52xn7qrVeT!x8a?68EQt4 zsG-=}z)Ge%)+WMbcQ`e&8mYHWr*<0TGrd^IOr{>2J(g=- z3UpWrWhl3pV+?>6I3Kpzu!NOdmN0gWn6G4o6(yOY)64vnZu&BYn* z8}>F;ZQ2>>5e)B?u7eJ73c-g=ts7q#o>Z2@sPHn6M=_&DpiiHLj^J2a0~SB08q$k% zGl}XB;4reN7u&kVn(aZaW^Ve>L657A4wS7x`)JoL+1gYWdCUK4sP$YSe9g0U(JfF$ zp@c%`p}6RUctJ&s^_Bw`fWf{PO^MlTb(9;TI>qoU@x$}PGX@*I%ndrwOJu)@XjnbWvT?s$XH8e2+ z^V&fgUE4~CfS zgGz@R&bfyP7xz|-_pc?%Dn7`?G3p^~<0kEbKeh=!Gia$3=7>k6Z6p;!z`W`Bi9shM z^lNKyTaZ+c6u0*u2{)iUB_RC@g<0<>`D55Cj5}q`;9y`){}q=nhwrt_GSkCC`~h#= zxZwW)+z)|}|9~vPBM6A!dtcB8DF_Zw5IiJG%djX36hzJMI4{{&8yK2;h|o_@AtKhd zBf;IqQdER_HoNi_5@WSI!@)LpF4Y}3xE5nRdZ)hB@3LoJ(z-Jxh_$Fx(K@C4_w~b; zP4C09Y=%8rj@hr$u3x^Fey1*Pf4`3_Bnx~cXjZ}W4t;JT1IdQ9PcplX1$sOia z=+_jHwI9hHX$(1PfzbT>aDJ5O&b2Fzc`h7$ww#O~J`y!ehNb7S!cf4RSJs%Sz9&U6 zh#{nJlt2^Vzrq;seB004ZVkHWig_7y-~v#(uMTX^gmV z%jgn~5WnALJiqWNj{I4yhVT1steTaUI=Pb1xE<*0nRrM%3v65rRUl)x8LvG%E^V~f z*i;(s|E`L}C8#ucZ<-aMx!3GaZbR~kS{<%yQ&!pgSy5Qaq%0wp6SpjZwGqCCO37y3 z)d4BKe^vo=(2*}c_xK~Tmmv|SfmtDPAQDc*o~$1!KVH+qpcbVlAUFx*6MBgjAG5iW zt7--KnKTzZ60lZM#KN9cC06pc*fY20==Gym39Jow;UJ9@0n*}NQad*Uj!9E@7Buq^ zy6>nU>deQL&K=6!^sSV5ymcZna0YSF_pK6D{==_$JVZHM0%9Mcil3ol8Su4`EmIx+ z=ZWL3_uR#`*-tt$_$2nl(Fs5UC)RdW!)I*|{5JY0z>_O;20nNDk^<|H;tWLhJzJ#b zuybUc)Z43hlbemcr)ymIla7e%luw~}>OV_{()sHuPfIHh-Af|1W`~IG0~vCh(^I++ zEYsP|G^86M?%ir^ggtlk;C?Y9A@%<(wIxpfwh3J?E;9%v(OgsdtbOD)!zDt7H#_UG zRdysT48%V?ZGw(Koi>N%pkIwk!*QcsSr+&)2#ZiTBHNj^z%7t&ws}r0kAsG!f-t;?UFw3l{YAqZ!dh2`2u7( z`9&O6ZVCdwjYgflj;xvV^s6{Rh)QXm?yYtWd~$?(p&SngW14Jm-)i`vRHfn*qek;LTXJZW&Lnn_r{9`3-o7&uG58!FuZH zPB^p?C8Lfs_GILGB#3qS0Wl)-%^T0C2)KV}k&V9J$&SabXx*#!W4>{*^1*pY&O&0V z2B{mm;SfsRhknM!)j8paDx!hs3c5S_fyE16{GMwDDJy{ot6G}qqFs%^H`UR%nz((J z33@B0ea;2bIZu!)r#F^-%Vejhlz{9u@SD+=MYqXbQJ8NchU<+3Rxo4J;j-bQU>QW=8BIDB~MCAd14A3a~!`kb!x`64))>LrT( z#<6@W;kXmMVu67y4pStVPQd} z5tclEv6xq?`95iN^rTF!p<9F&M9)R^YpyX6;FXf_tC^kNskC#x&R)!VGbXO@j2ZrP z#Y6iB=8!zl_M4XozPph27z?yeO{t=`GWW@kG3>k<-wWFv#}pjtDSzO&v7yNcXU2AT z?4^qSGVNS*D>$ec&$+eD+g><*;zvYAs?Kt8Uf*-Z!bg1m=m}*~+I{RN+w_Keyl6XE zGy&sKOUTcJ@-ApvKY>W14M*J{*?+paK-FvT@u*sJ5sy9KC)5v=2w3Q+QL@t5E=C6g zmlF~T#-Bqro1ZBe_@e{)p_W|k;J(j}ga?unVj7Ihtp&Zftxz}x@AiE}PE>DLK5{mf z?}L}9nd!^_DuMSt5v5mqg?8fVYfkh_e@;f>bWU=zYn3t1WjT)MCB{=>KB1cYxim6x zsdWyrb)`hbQTGD2lJRvWj;a0l(Z~m%f~L zW^rWc?!H{I@fYdSVrYz~XKJvRcNn08Tu>s-TZuCoz}s<)YQnslxKRhO( z6eRgZg5+Nu@`IWFxco=Hj|T9Ezs5GsqdU~MWwn0h>WdudJL~D+UkKyM!p;JC=t^H_ z;%~;;(syLdF}Yj}RqyOsq*r&@9F@d18MBcU*HeUF_~U^jlMxu@^QP3RGH`?~u-1xb z(}_pHH>BEjPlS08BMjGpiILE2_|7DBl}uL{DN1%Z+Lv`tX2S92=8&%~gn=IDz3W;n z&D2*T>@;n(86*^K0j0ApYIAq6d(e8$6my$l=dV3{V6pcSX_DH9s#r`v?ilsP;y^jY zG3eYiUB!CYNB)l-?_vlwSK4LQPLEymhxly+zxsNyzwK^&M+L|cy*yFJ_afm=Q`f1Nk`2y`N!MH^_Wq_h(@ZlHSG?SJH&T0eTApON_Nx_=_9 zRq5#Fti2V2cFH?nh0kD}Jn+~LeyPgf+HVQ;K3{1B zT?fuMj4wJK)9aWDh3Nz&c(f`loQKCVjAhOBj(+7JH`PQyKkR$e%38hjA7KW?>Yl`A+2-6^$9b5( zE5-DB29;X7TzdeX?6yS#E~kF=u|wVpG$Xree4E{I{5&)vga)r2LocE% zW2X$m^Xo~;)5lxSk6tg<6_oVlyKM;6uliyPlEhDV^v(BB0!8x&Y zd*O15UH_Ej@*k$BQgj<4IY-to!w5n^=%;5)b^HU|x1x>IZK|}8m$KVuLj9_wiclI5 z!C3fODxKra@)2%Iw?qCS;&OckLLAx_JMD!78h7K=wvIvB6yw9ghIYlXs*e?mfxPq6 z@Ht_C(N30E$HQQa!nYeXp`n4(-DldKp#}0KjiJ{XoY1T6%;%iSUEioG%m;j&tg{&+91IWL1lQ;mhf9cEiZZ5$3zZG(L0Hgmx>kok0 zzYsJl0MG&%VM4;RXYvC$|1JM5Ech3?2>}}Ztx7Ed2>RPMdqn^<$PXJ5vHd^<5cjt! zkh?g*7wyl8{12iOj209u4j==ON&pJ}Uu86Z%Ytwq;Xuz40RO+8_mu>g!2E4yO92q` zSNOX@vHu8}K|2}%)xRZNnt-c+yGo}GK>YWyKj;F&|4RRiZ~K-Wfb!q5fi?yp{R?r- z0lxn}+Os==zP;B1fbv&&px;FlAR_`u`1W5m0K0$d|JFzp^xsy0*FXLDv42CVc4Th= z++PFu(;n!;1^^8b3hJ(A%FYM5(^0Z+t>ECG(gA=1b_5qJAV}TFYtf1|NR5tL?EGLaQJqMSa5D| zV06^pe`%EFw|f83ceZXUAKl%ZS!8~n)GXbcogCdPCB4lpo!xDm9GT7SP2JqW)%2av zMKRyY4cZ*r!_8vbPN8abbZo925x;_}lOtBjX=Tm*b&fGJ`j}UV@PVPxzlLBG�)M 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%0D;>ugBf~}1X|3gP#H(m*L-lT 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
QyHqt&rMp)yiLP2 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 IAO`RM0D8MMZ2$lO delta 88841 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ვghfdRn0j`L6Nq$!zT~lt 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 diff --git a/src/jalview/ws/slivkaws/SlivkaAnnotationServiceInstance.java b/src/jalview/ws/slivkaws/SlivkaAnnotationServiceInstance.java index b3509b0..3c80fbc 100644 --- a/src/jalview/ws/slivkaws/SlivkaAnnotationServiceInstance.java +++ b/src/jalview/ws/slivkaws/SlivkaAnnotationServiceInstance.java @@ -19,6 +19,7 @@ import jalview.ws.uimodel.AlignAnalysisUIText; import java.io.IOError; import java.io.IOException; import java.util.Arrays; +import java.util.Collection; import java.util.List; import java.util.Map; @@ -55,7 +56,7 @@ public class SlivkaAnnotationServiceInstance extends SlivkaWSInstance implements } @Override - public List getAnnotationResult(JobId job, + public List getAnnotationResult(JobId jobId, List seqs, Map featureColours, Map featureFilters) throws Throwable { @@ -63,14 +64,15 @@ public class SlivkaAnnotationServiceInstance extends SlivkaWSInstance implements RemoteFile featFile = null; try { - List files = client.getJobResults(job.getJobId()); + var slivkaJob = client.getJob(jobId.getJobId()); + Collection files = slivkaJob.getResults(); for (RemoteFile f : files) { - if (f.getMimeType().equals("application/jalview-annotations")) + if (f.getMediaType().equals("application/jalview-annotations")) { annotFile = f; } - else if (f.getMimeType().equals("application/jalview-features")) + else if (f.getMediaType().equals("application/jalview-features")) { featFile = f; } @@ -81,15 +83,21 @@ public class SlivkaAnnotationServiceInstance extends SlivkaWSInstance implements } Alignment aln = new Alignment(seqs.toArray(new SequenceI[0])); if (annotFile == null - || !new AnnotationFile().readAnnotationFile(aln, annotFile.getURL().toString(), DataSourceType.URL)) + || !new AnnotationFile().readAnnotationFile(aln, annotFile.getContentUrl().toString(), DataSourceType.URL)) { Cache.log.debug("No annotation from slivka job\n" + annotFile); } + else { + Cache.log.debug("Annotation file loaded " + annotFile); + } if (featFile == null - || !new FeaturesFile(featFile.getURL().toString(), DataSourceType.URL).parse(aln, featureColours, true)) + || !new FeaturesFile(featFile.getContentUrl().toString(), DataSourceType.URL).parse(aln, featureColours, true)) { Cache.log.debug("No features from slivka job\n" + featFile); } + else { + Cache.log.debug("Features feil loaded " + featFile); + } return Arrays.asList(aln.getAlignmentAnnotation()); } } diff --git a/src/jalview/ws/slivkaws/SlivkaMsaServiceInstance.java b/src/jalview/ws/slivkaws/SlivkaMsaServiceInstance.java index 9a33b04..03dda3f 100644 --- a/src/jalview/ws/slivkaws/SlivkaMsaServiceInstance.java +++ b/src/jalview/ws/slivkaws/SlivkaMsaServiceInstance.java @@ -1,5 +1,6 @@ package jalview.ws.slivkaws; +import jalview.bin.Cache; import jalview.datamodel.AlignmentI; import jalview.datamodel.SequenceI; import jalview.io.DataSourceType; @@ -14,6 +15,7 @@ import jalview.ws.params.WsParamSetI; import java.io.IOError; import java.io.IOException; import java.rmi.ServerError; +import java.util.Collection; import java.util.List; import compbio.data.msa.Category; @@ -37,19 +39,20 @@ public class SlivkaMsaServiceInstance extends SlivkaWSInstance implements Multip @Override public AlignmentI getAlignmentFor(JobId jobId) throws InvalidArgumentException, ServerError, IOError { - List files; + Collection files; try { - files = client.getJobResults(jobId.getJobId()); + var slivkaJob = client.getJob(jobId.getJobId()); + files = slivkaJob.getResults(); for (RemoteFile f : files) { - if (f.getMimeType().equals("application/clustal")) + if (f.getMediaType().equals("application/clustal")) { - return new FormatAdapter().readFile(f.getURL().toString(), DataSourceType.URL, FileFormat.Clustal); + return new FormatAdapter().readFile(f.getContentUrl().toString(), DataSourceType.URL, FileFormat.Clustal); } - else if (f.getMimeType().equals("application/fasta")) + else if (f.getMediaType().equals("application/fasta")) { - return new FormatAdapter().readFile(f.getURL().toString(), DataSourceType.URL, FileFormat.Fasta); + return new FormatAdapter().readFile(f.getContentUrl().toString(), DataSourceType.URL, FileFormat.Fasta); } } } catch (IOException e) diff --git a/src/jalview/ws/slivkaws/SlivkaParamSet.java b/src/jalview/ws/slivkaws/SlivkaParamSet.java index 7e81684..8a1d382 100644 --- a/src/jalview/ws/slivkaws/SlivkaParamSet.java +++ b/src/jalview/ws/slivkaws/SlivkaParamSet.java @@ -9,85 +9,90 @@ import jalview.ws.params.simple.StringParameter; import java.io.IOException; import java.util.ArrayList; +import java.util.Collections; import java.util.List; -import uk.ac.dundee.compbio.slivkaclient.BooleanField; -import uk.ac.dundee.compbio.slivkaclient.ChoiceField; -import uk.ac.dundee.compbio.slivkaclient.DecimalField; -import uk.ac.dundee.compbio.slivkaclient.FormField; -import uk.ac.dundee.compbio.slivkaclient.IntegerField; -import uk.ac.dundee.compbio.slivkaclient.SlivkaForm; +import uk.ac.dundee.compbio.slivkaclient.Parameter; import uk.ac.dundee.compbio.slivkaclient.SlivkaService; -import uk.ac.dundee.compbio.slivkaclient.TextField; - - public class SlivkaParamSet implements WsParamSetI { private SlivkaService service; + private List args = new ArrayList<>(); - SlivkaParamSet(SlivkaService service) throws IOException { + SlivkaParamSet(SlivkaService service) throws IOException + { this.service = service; - SlivkaForm form = service.getForm(); - for (FormField field : form.getFields()) + for (Parameter param : service.getParameters()) { - switch (field.getType()) { - case BOOLEAN: - BooleanField boolField = (BooleanField) field; - args.add(new BooleanOption( - field.getName(), field.getDescription(), field.getLabel(), - field.isRequired(), boolField.getDefault(), null - )); - break; - case TEXT: - TextField textField = (TextField) field; - args.add(new StringParameter( - field.getName(), field.getDescription(), field.isRequired(), - textField.getDefault(), textField.getDefault() - )); - break; - case INTEGER: - IntegerField intField = (IntegerField) field; - args.add(new IntegerParameter( - field.getName(), field.getDescription(), field.isRequired(), - intField.getDefault(), intField.getMin(), intField.getMax() - )); - break; - case DECIMAL: - DecimalField doubleField = (DecimalField) field; - args.add(new DoubleParameter( - field.getName(), field.getDescription(), field.isRequired(), - doubleField.getDefault(), doubleField.getMin(), - doubleField.getMax() - )); - break; - case CHOICE: - ChoiceField choiceField = (ChoiceField) field; - List choices = new ArrayList<>(choiceField.getChoices()); - if (field.hasMultipleValues()) { - int counter = 0; - for (String choice : choices) { + Object defaultValue = param.getDefault() instanceof List ? ((List) param.getDefault()).get(0) + : param.getDefault(); + if (param instanceof Parameter.FlagParameter) + { + args.add(new BooleanOption(param.getId(), param.getDescription(), + param.getName(), param.isRequired(), (Boolean) defaultValue, null)); + } + else if (param instanceof Parameter.TextParameter) + { + args.add(new StringParameter(param.getId(), param.getDescription(), + param.isRequired(), (String) defaultValue, (String) defaultValue)); + } + else if (param instanceof Parameter.IntegerParameter) + { + Integer min = ((Parameter.IntegerParameter) param).getMin(); + Integer max = ((Parameter.IntegerParameter) param).getMax(); + Integer defVal = defaultValue != null ? ((Number) defaultValue).intValue() : null; + args.add(new IntegerParameter(param.getId(), param.getDescription(), + param.isRequired(), defVal, (min == null) ? Integer.MIN_VALUE : min, + (max == null) ? Integer.MAX_VALUE : max)); + } + else if (param instanceof Parameter.DecimalParameter) + { + Double min = ((Parameter.DecimalParameter) param).getMin(); + Double max = ((Parameter.DecimalParameter) param).getMax(); + Double defVal = defaultValue != null ? ((Number) defaultValue).doubleValue() : null; + args.add(new DoubleParameter(param.getId(), param.getDescription(), + param.isRequired(), defVal, (min == null) ? -Double.MAX_VALUE : min, + (max == null) ? Double.MAX_VALUE : max)); + } + else if (param instanceof Parameter.ChoiceParameter) + { + List choices = ((Parameter.ChoiceParameter) param) + .getChoices(); + if (param.isArray()) + { + int i = 0; + List selected = param.getDefault() != null + ? (List) param.getDefault() + : Collections.EMPTY_LIST; + for (String choice : choices) + { args.add(new BooleanOption( - String.format("%s$%d", field.getName(), counter++), - field.getDescription(), choice, field.isRequired(), - choice.equals(choiceField.getDefault()), choice, - null - )); + String.format("%s$%d", param.getId(), i++), + param.getDescription(), choice, param.isRequired(), + selected.contains(choice), choice, null)); } } else { args.add(new StringParameter( - field.getName(), field.getDescription(), - field.isRequired(), choiceField.getDefault(), choiceField.getDefault(), - choices, choices - )); + param.getId(), param.getDescription(), + param.isRequired(), (String) param.getDefault(), + (String) defaultValue, choices, choices)); } - break; - case FILE: - default: - continue; + } + else if (param instanceof Parameter.FileParameter) + { + // skip: files are provided from sequences + } + else + { + String defaultVal = param.getDefault() != null + ? param.getDefault().toString() + : null; + args.add(new StringParameter(param.getId(), param.getDescription(), + param.isRequired(), defaultVal, defaultVal)); } } } @@ -107,7 +112,7 @@ public class SlivkaParamSet implements WsParamSetI @Override public String[] getApplicableUrls() { - return new String[] { service.getURL().toString() }; + return new String[] { service.getUrl().toString() }; } @Override diff --git a/src/jalview/ws/slivkaws/SlivkaWSDiscoverer.java b/src/jalview/ws/slivkaws/SlivkaWSDiscoverer.java index e849f97..accb40d 100644 --- a/src/jalview/ws/slivkaws/SlivkaWSDiscoverer.java +++ b/src/jalview/ws/slivkaws/SlivkaWSDiscoverer.java @@ -215,7 +215,7 @@ public class SlivkaWSDiscoverer implements WSDiscovererI { List services = new SlivkaClient(url).getServices(); return services.isEmpty() ? STATUS_NO_SERVICES : STATUS_OK; - } catch (IOException e) + } catch (IOException | org.json.JSONException e) { Cache.log.error("Slivka could not retrieve services list", e); return STATUS_INVALID; diff --git a/src/jalview/ws/slivkaws/SlivkaWSInstance.java b/src/jalview/ws/slivkaws/SlivkaWSInstance.java index 75e5722..658d99e 100644 --- a/src/jalview/ws/slivkaws/SlivkaWSInstance.java +++ b/src/jalview/ws/slivkaws/SlivkaWSInstance.java @@ -13,6 +13,7 @@ import jalview.ws.params.ArgumentI; import jalview.ws.params.ParamDatastoreI; import jalview.ws.params.ParamManager; import jalview.ws.params.WsParamSetI; +import javajs.http.ClientProtocolException; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; @@ -20,22 +21,18 @@ import java.io.IOError; import java.io.IOException; import java.io.InputStream; import java.util.Arrays; +import java.util.Collection; import java.util.EnumMap; import java.util.HashSet; import java.util.List; -import java.util.Optional; import java.util.Set; -import uk.ac.dundee.compbio.slivkaclient.FieldType; -import uk.ac.dundee.compbio.slivkaclient.FileField; -import uk.ac.dundee.compbio.slivkaclient.FormField; -import uk.ac.dundee.compbio.slivkaclient.FormValidationException; -import uk.ac.dundee.compbio.slivkaclient.JobState; +import uk.ac.dundee.compbio.slivkaclient.Job; +import uk.ac.dundee.compbio.slivkaclient.JobRequest; +import uk.ac.dundee.compbio.slivkaclient.Parameter; import uk.ac.dundee.compbio.slivkaclient.RemoteFile; import uk.ac.dundee.compbio.slivkaclient.SlivkaClient; -import uk.ac.dundee.compbio.slivkaclient.SlivkaForm; import uk.ac.dundee.compbio.slivkaclient.SlivkaService; -import uk.ac.dundee.compbio.slivkaclient.ValidationException; public abstract class SlivkaWSInstance extends ServiceWithParameters implements JalviewServiceEndpointProviderI, JalviewWebServiceI @@ -46,19 +43,19 @@ public abstract class SlivkaWSInstance extends ServiceWithParameters protected SlivkaDatastore store = null; - protected static final EnumMap stateMap = new EnumMap<>(JobState.class); + protected static final EnumMap stateMap = new EnumMap<>(Job.Status.class); { - stateMap.put(JobState.PENDING, WsJob.JobState.QUEUED); - stateMap.put(JobState.REJECTED, WsJob.JobState.INVALID); - stateMap.put(JobState.ACCEPTED, WsJob.JobState.QUEUED); - stateMap.put(JobState.QUEUED, WsJob.JobState.QUEUED); - stateMap.put(JobState.RUNNING, WsJob.JobState.RUNNING); - stateMap.put(JobState.COMPLETED, WsJob.JobState.FINISHED); - stateMap.put(JobState.INTERRUPTED, WsJob.JobState.CANCELLED); - stateMap.put(JobState.DELETED, WsJob.JobState.CANCELLED); - stateMap.put(JobState.FAILED, WsJob.JobState.FAILED); - stateMap.put(JobState.ERROR, WsJob.JobState.SERVERERROR); - stateMap.put(JobState.UNKNOWN, WsJob.JobState.UNKNOWN); + stateMap.put(Job.Status.PENDING, WsJob.JobState.QUEUED); + stateMap.put(Job.Status.REJECTED, WsJob.JobState.INVALID); + stateMap.put(Job.Status.ACCEPTED, WsJob.JobState.QUEUED); + stateMap.put(Job.Status.QUEUED, WsJob.JobState.QUEUED); + stateMap.put(Job.Status.RUNNING, WsJob.JobState.RUNNING); + stateMap.put(Job.Status.COMPLETED, WsJob.JobState.FINISHED); + stateMap.put(Job.Status.INTERRUPTED, WsJob.JobState.CANCELLED); + stateMap.put(Job.Status.DELETED, WsJob.JobState.CANCELLED); + stateMap.put(Job.Status.FAILED, WsJob.JobState.FAILED); + stateMap.put(Job.Status.ERROR, WsJob.JobState.SERVERERROR); + stateMap.put(Job.Status.UNKNOWN, WsJob.JobState.UNKNOWN); } protected final Set failedStates = new HashSet<>(Arrays.asList( WsJob.JobState.INVALID, WsJob.JobState.BROKEN, WsJob.JobState.FAILED, @@ -67,7 +64,7 @@ public abstract class SlivkaWSInstance extends ServiceWithParameters public SlivkaWSInstance(SlivkaClient client, SlivkaService service, String action) { - super(action, action, service.getLabel(), "Slivka", client.getUrl().toString()); + super(action, action, service.getName(), "Slivka", client.getUrl().toString()); this.client = client; this.service = service; } @@ -75,16 +72,17 @@ public abstract class SlivkaWSInstance extends ServiceWithParameters protected final JobId submit(List sequences, WsParamSetI preset, List args) throws Throwable { - SlivkaForm form = service.getForm(); - for (FormField field : form.getFields()) + var parameters = service.getParameters(); + var request = new JobRequest(); + for (Parameter param : parameters) { - if (field.getType() == FieldType.FILE) + if (param instanceof Parameter.FileParameter) { FormatAdapter fa = new FormatAdapter(); fa.setNewlineString("\r\n"); - FileField fileField = (FileField) field; + Parameter.FileParameter fileParam = (Parameter.FileParameter) param; FileFormat format; - switch (fileField.getMediaType()) + switch (fileParam.getMediaType()) { case "application/pfam": format = FileFormat.Pfam; @@ -100,9 +98,7 @@ public abstract class SlivkaWSInstance extends ServiceWithParameters InputStream stream = new ByteArrayInputStream( fa.formatSequences(format, sequences.toArray(new SequenceI[0])) .getBytes()); - RemoteFile rf = client.uploadFile(stream, "input", - fileField.getMediaType()); - form.insert(field.getName(), rf); + request.addFile(param.getId(), stream); } } if (args != null) @@ -111,22 +107,22 @@ public abstract class SlivkaWSInstance extends ServiceWithParameters { // multiple choice field names are name$number to avoid duplications // the number is stripped here - String fieldName = arg.getName().split("\\$", 2)[0]; - FormField field = form.getField(fieldName); - if (field.getType() == FieldType.BOOLEAN) - { - form.insert(fieldName, - (arg.getValue() != null && !arg.getValue().isBlank()) - ? true - : false); + String paramId = arg.getName().split("\\$", 2)[0]; + Parameter param = service.getParameter(paramId); + if (param instanceof Parameter.FlagParameter) { + if (arg.getValue() != null && !arg.getValue().isBlank()) + request.addData(paramId, true); + else + request.addData(paramId, false); } else { - form.insert(fieldName, arg.getValue()); + request.addData(paramId, arg.getValue()); } } } - return new JobId(service.getName(), service.getName(), form.submit()); + var job = service.submitJob(request); + return new JobId(service.getName(), service.getName(), job.getId()); } @Override @@ -134,7 +130,8 @@ public abstract class SlivkaWSInstance extends ServiceWithParameters { try { - job.setState(stateMap.get(client.getJobState(job.getJobId()))); + var slivkaJob = client.getJob(job.getJobId()); + job.setState(stateMap.get(slivkaJob.getStatus())); } catch (IOException e) { throw new IOError(e); @@ -143,8 +140,9 @@ public abstract class SlivkaWSInstance extends ServiceWithParameters @Override public final boolean updateJobProgress(WsJob job) throws IOException - { - List files = client.getJobResults(job.getJobId()); + { + var slivkaJob = client.getJob(job.getJobId()); + Collection files = slivkaJob.getResults(); RemoteFile logFile=null; for (RemoteFile f : files) { @@ -196,17 +194,10 @@ public abstract class SlivkaWSInstance extends ServiceWithParameters @Override public final boolean handleSubmitError(Throwable _lex, WsJob j, WebserviceInfo wsInfo) { - if (_lex instanceof FormValidationException) + if (_lex instanceof ClientProtocolException) { - FormValidationException formError = (FormValidationException) _lex; - String[] messages = new String[formError.getErrors().size()]; - int i = 0; - for (ValidationException e : formError.getErrors()) - { - messages[i++] = String.format("%s: %s,", e.getField().getName(), e.getMessage()); - } j.setState(WsJob.JobState.INVALID); - j.setStatus(String.join(", ", messages)); + j.setStatus(_lex.getMessage()); return true; } return false; -- 1.7.10.2