Pieter,
As Martin said, a data source tool would be your best approach. This is fairly simple to implement, all you need is a standard tool with no input datasets and one parameter for the CAS registry number. That number gets plugged into a script called in the command tag, e.g.
<command interpreter="python">get_nist.py --cas_id "$input_id" --output "$output_dataset"</command>
Inside get_nist.py, you'll want code that takes the CAS number and builds the URL to get mass spectrometry or other data, then parses the returned information, writing the data to the filename passed in the command line.
One thing to consider is that if you have a free-form text entry field for the CAS number, you may want to add a filter to only allow printable characters, or numbers, or whichever bytes are allowed for those identifiers.
If you'd like specific advice on any of those items, feel free to contact me.
--Dave B.
On 01/23/2015 10:56 AM, Martin Čech wrote:
Hello Pieter,
adding a controller to Galaxy's codebase is not possible through the Tool Shed. It would be very unsecure to allow such.
However, reading your code (https://gist.github.com/martenson/7ce1ddb19c199b2df61c) you should be able to convert this controller into an actual tool (data source tool kind) pretty easily and publishing the tool through the Tool Shed should be straight forward afterwards.
Dave Bouvier will get back to you with some tips in the next message.
Thank you for using Galaxy.
Martin
On Fri Jan 23 2015 at 8:36:44 AM Lukasse, Pieter <pieter.lukasse@wur.nl mailto:pieter.lukasse@wur.nl> wrote:
Hi Greg,____ __ __ I would like to deploy my custom controller together with my tool via toolshed. Is there already a way to do this? What should I add to my tool_dependencies.xml?____ __ __ I tried something like :____ __ __ <actiontype=/"shell_command"/>____ _cd_ $GALAXY_HOME;____ _wget_ http://toolshed.g2.bx.psu.edu/__repos/pieterlukasse/nist___wrapper/raw-file/tip/nist___controller.py <http://toolshed.g2.bx.psu.edu/repos/pieterlukasse/nist_wrapper/raw-file/tip/nist_controller.py>;____ </action>____ __ __ But I’m glad this apparently didn’t work ;)____ __ __ Thanks,____ __ __ Pieter____ __ __ *From:*galaxy-dev [mailto:galaxy-dev-bounces@__lists.galaxyproject.org <mailto:galaxy-dev-bounces@lists.galaxyproject.org>] *On Behalf Of *Lukasse, Pieter *Sent:* vrijdag 9 januari 2015 16:10 *To:* 'galaxy-dev@lists.__galaxyproject.org <mailto:galaxy-dev@lists.galaxyproject.org>' *Subject:* [galaxy-dev] FW: Adding a new web-service or perhaps a "webapp" to Galaxy____ __ __ Meanwhile I added a new file indeed to <galaxy-dist>/lib/galaxy/__webapps/galaxy/controllers/____ and this works for me. If there is a better/easier/standard way of doing this, please let me know! ____ __ __ Attached my file as example.____ __ __ Best regards,____ __ __ Pieter____ __ __ *From:*galaxy-dev [mailto:galaxy-dev-bounces@__lists.galaxyproject.org <mailto:galaxy-dev-bounces@lists.galaxyproject.org>] *On Behalf Of *Lukasse, Pieter *Sent:* vrijdag 9 januari 2015 13:55 *To:* galaxy-dev@lists.bx.psu.edu <mailto:galaxy-dev@lists.bx.psu.edu> *Subject:* Re: [galaxy-dev] Adding a new web-service or perhaps a "webapp" to Galaxy____ __ __ I could add a new file to ____ __ __ <galaxy-dist>/lib/galaxy/__webapps/galaxy/controllers/ ____ __ __ ...is that a good way to do it?____ __ __ __ __ *From:*galaxy-dev [mailto:galaxy-dev-bounces@__lists.galaxyproject.org <mailto:galaxy-dev-bounces@lists.galaxyproject.org>] *On Behalf Of *Lukasse, Pieter *Sent:* vrijdag 9 januari 2015 13:28 *To:* galaxy-dev@lists.bx.psu.edu <mailto:galaxy-dev@lists.bx.psu.edu> *Subject:* [galaxy-dev] Adding a new web-service or perhaps a "webapp" to Galaxy____ __ __ Hi,____ __ __ In one of my tools I generate a HTML report which I would like to enhance with some ajax functionality. I would like the possibility to do some backend computations based on the ajax requests. ____ __ __ My question is: is there an easy way to add a new web-service to my Galaxy server? The web-service implementation would be in python. Ideally I would like to be able to ship this python file together with my tool via tool shed (and when installing from toolshed, the necessary configurations are applied to the server to enable this python code as a local web-service on the respective Galaxy server). ____ __ __ Thanks!____ __ __ Pieter Lukasse____ Wageningen UR, Plant Research International____ Department of Bioinformatics (Bioscience)____ Wageningen Campus, Building 107, Droevendaalsesteeg 1, 6708 PB, Wageningen, the Netherlands____ T: +31-317481122; M: +31-628189540; skype: pieter.lukasse.wur____ http://www.pri.wur.nl <http://www.pri.wur.nl/>____ __ __ _______________________________________________________________ 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: https://lists.galaxyproject.__or__g/ <https://lists.galaxyproject.org/> To search Galaxy mailing lists use the unified search at: http://galaxyproject.org/__searc__h/mailinglists/ <http://galaxyproject.org/search/mailinglists/>
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: https://lists.galaxyproject.org/
To search Galaxy mailing lists use the unified search at: http://galaxyproject.org/search/mailinglists/