Hi Jean-Frederic


I am currently writing a Galaxy wrapper (for SortMeRNA [1]) and I would
have several questions.


== Pre-processing an input ==

SortMeRNA filters rRNA reads against an indexed rRNA database. This
database can either be one bundled together with SortMeRNA and defined
in a relevant .loc file, or one from the history. Either way, it must
have been processed beforehand with another binary (just like
makeblastdb/blastp).

I am not sure of the best design here.
*Providing another wrapperfor this other binary, with users explicitly
using it beforehand in their workflow?
*Assuming the databases have been processed outside of Galaxy beforehand
? (As the tool relies on the file name, this would work for databases in
the .loc file but not ones from the history)
*Providing an extra-smart wrapper which would check if the database has
been indexed, and if not invisibly indexing before running SortMeRNA ?


or providing an extra-flexible wrapper (and its corresponding UI defined in the XML file): You first ask the question whether the database is in the history (indexed or to be indexed) or in the local files system. Then depending on the choice, the UI changes according the three options.

There are several ways to offer a dynamic UI, eg: <conditional>/<when> tag sets, <page> tag set or possibilities with the "refresh_on_change" option.



== Error handling ==

I have been trying to use <stdio><regex> to catch an error (the one
defined in above section actually) and inform the user with a meaningful
message. From the console debug, it seems the error is correctly
detected, since it displays the custom <regex description=""> :
galaxy.jobs INFO 2013-01-22 19:02:04,198 Job 202: Fatal error: The
database ${databases} has not been preprocessed using buildtrie before
using SortMeRNA.
But Galaxy only displays in the failed history a generic message
« tool error
An error occurred running this job: /Unable to finish job/ »

Am I missing something, or the <stdio><regex> is not meant to be used
this way?

You should get the complete error message when you click on the 'bug' icon.


== Using a previously set choice to set a default value later ==

Main option Alpha (a binary choice A/B) influence the default value of
advanced option Beta (a float). Beta is buried into the "advanced
options" section − I’d rather not have it just next to Alpha.

Mirroring constructs seen in the <action>tag, I was hoping to do
something like :

         <conditional name="Alpha">
             <param name="Alpha_selector" type="select" format="text">
                 <option value="A">Option A</option>
                 <option value="B">Option B</option>
             </param>
         </conditional>
[…]
      <conditional name="Alpha.Alpha_selector">
             <when value="A">
                 <param name="Beta" type="float" value="0.15"/>
             </when>
             <when value="B">
                 <param name="Beta" type="float" value="0.25"/>
             </when>
         </conditional>
But that does not seem to work. Am I missing something, or is it just
not possible ?


I don't think this is possible without having it just next to Alpha.



Alternatively, I looked into setting some hidden variable $default_value
in the Alpha select, which would be used as <param name="Beta"
value=$default_value/>, but that does not seem to work either



I hope this helps

Regards, Hans-Rudolf




Thanks for your help!

[1] <http://bioinfo.lifl.fr/RNA/sortmerna/>
--
Jean-Frédéric
Bonsai Bioinformatics group


___________________________________________________________
Please keep all replies on the list by using "reply all"
in your mail client.  To manage your subscriptions to this
and other Galaxy lists, please use the interface at:

   http://lists.bx.psu.edu/

___________________________________________________________
Please keep all replies on the list by using "reply all"
in your mail client.  To manage your subscriptions to this
and other Galaxy lists, please use the interface at:

 http://lists.bx.psu.edu/

Reply via email to