Source code for bioblend.galaxy.genomes

"""
Contains possible interactions with the Galaxy Histories
"""
from bioblend.galaxy.client import Client


[docs]class GenomeClient(Client): def __init__(self, galaxy_instance): self.module = 'genomes' super(GenomeClient, self).__init__(galaxy_instance)
[docs] def get_genomes(self): """ Returns a list of installed genomes """ genomes = Client._get(self) return genomes
[docs] def show_genome(self, id, num=None, chrom=None, low=None, high=None): """ Returns information about build <id> """ params = {} if num: params['num'] = num if chrom: params['chrom'] = chrom if low: params['low'] = low if high: params['high'] = high return Client._get(self, id, params)
[docs] def install_genome(self, func='download', source=None, dbkey=None, ncbi_name=None, ensembl_dbkey=None, url_dbkey=None, indexers=None): """ Download and/or index a genome. Parameters:: dbkey DB key of the build to download, ignored unless 'UCSC' is specified as the source ncbi_name NCBI's genome identifier, ignored unless NCBI is specified as the source ensembl_dbkey Ensembl's genome identifier, ignored unless Ensembl is specified as the source url_dbkey DB key to use for this build, ignored unless URL is specified as the source source Data source for this build. Can be: UCSC, Ensembl, NCBI, URL indexers POST array of indexers to run after downloading (indexers[] = first, indexers[] = second, ...) func Allowed values: 'download' Download and index 'index' Index only Returns:: If no error: dict( status: 'ok', job: <job ID> ) If error: dict( status: 'error', error: <error message> ) """ payload = {} if source: payload['source'] = source if func: payload['func'] = func if dbkey: payload['dbkey'] = dbkey if ncbi_name: payload['ncbi_name'] = ncbi_name if ensembl_dbkey: payload['ensembl_dbkey'] = ensembl_dbkey if url_dbkey: payload['url_dbkey'] = url_dbkey if indexers: payload['indexers'] = indexers return Client._post(self, payload)