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.luka...@wur.nl
<mailto:pieter.luka...@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-boun...@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-boun...@lists.galaxyproject.org>] *On Behalf Of
    *Lukasse, Pieter
    *Sent:* vrijdag 9 januari 2015 13:55
    *To:* galaxy-...@lists.bx.psu.edu <mailto:galaxy-...@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-boun...@lists.galaxyproject.org>] *On Behalf Of
    *Lukasse, Pieter
    *Sent:* vrijdag 9 januari 2015 13:28
    *To:* galaxy-...@lists.bx.psu.edu <mailto:galaxy-...@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/

___________________________________________________________
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/

Reply via email to