def show(self, trans, id, hda_ldda='hda', data_type=None, provider=None, **kwd): """ GET /api/datasets/{encoded_dataset_id} Displays information about and/or content of a dataset. """ # Get dataset. dataset = self.get_hda_or_ldda(trans, hda_ldda=hda_ldda, dataset_id=id) # Use data type to return particular type of data. if data_type == 'state': rval = self._dataset_state(trans, dataset) elif data_type == 'converted_datasets_state': rval = self._converted_datasets_state(trans, dataset, kwd.get('chrom', None), is_true(kwd.get('retry', False))) elif data_type == 'data': rval = self._data(trans, dataset, **kwd) elif data_type == 'features': rval = self._search_features(trans, dataset, kwd.get('query')) elif data_type == 'raw_data': rval = self._raw_data(trans, dataset, provider, **kwd) elif data_type == 'track_config': rval = self.get_new_track_config(trans, dataset) elif data_type == 'genome_data': rval = self._get_genome_data(trans, dataset, kwd.get('dbkey', None)) else: # Default: return dataset as dict. if hda_ldda == 'hda': return self.hda_serializer.serialize_to_view(dataset, view=kwd.get('view', 'detailed'), user=trans.user, trans=trans) else: rval = dataset.to_dict() return rval
def show(self, trans, id, num=None, chrom=None, low=None, high=None, **kwd): """ GET /api/genomes/{id} Returns information about build <id> """ # Process kwds. id = get_id(id, kwd.get('format', None)) reference = is_true(kwd.get('reference', False)) # Return info. rval = None if reference: region = self.app.genomes.reference(trans, dbkey=id, chrom=chrom, low=low, high=high) rval = {'dataset_type': 'refseq', 'data': region.sequence} else: rval = self.app.genomes.chroms(trans, dbkey=id, num=num, chrom=chrom, low=low) return rval
def show(self, trans, id, num=None, chrom=None, low=None, high=None, **kwd): """ GET /api/genomes/{id} Returns information about build <id> """ id = get_id(id, kwd.get('format')) reference = is_true(kwd.get('reference', False)) return self.manager.get_genome(trans, id, num, chrom, low, high, reference)
def sequences(self, trans, id, num=None, chrom=None, low=None, high=None, **kwd): """ GET /api/genomes/{id}/sequences This is a wrapper for accepting sequence requests that want a raw return, not json """ id = get_id(id, kwd.get('format', None)) reference = is_true(kwd.get('reference', False)) assert reference region = self.app.genomes.reference(trans, dbkey=id, chrom=chrom, low=low, high=high) return region.sequence
def sequences(self, trans, id, num=None, chrom=None, low=None, high=None, **kwd): """ GET /api/genomes/{id}/sequences This is a wrapper for accepting sequence requests that want a raw return, not json """ id = get_id(id, kwd.get('format', None)) reference = is_true(kwd.get('reference', False)) assert reference region = self.app.genomes.reference(trans, dbkey=id, chrom=chrom, low=low, high=high) return region.sequence
def show(self, trans, id, hda_ldda='hda', data_type=None, provider=None, **kwd): """ GET /api/datasets/{encoded_dataset_id} Displays information about and/or content of a dataset. """ # Get dataset. try: dataset = self.get_hda_or_ldda(trans, hda_ldda=hda_ldda, dataset_id=id) except Exception as e: return str(e) # Use data type to return particular type of data. try: if data_type == 'state': rval = self._dataset_state(trans, dataset) elif data_type == 'converted_datasets_state': rval = self._converted_datasets_state( trans, dataset, kwd.get('chrom', None), is_true(kwd.get('retry', False))) elif data_type == 'data': rval = self._data(trans, dataset, **kwd) elif data_type == 'features': rval = self._search_features(trans, dataset, kwd.get('query')) elif data_type == 'raw_data': rval = self._raw_data(trans, dataset, provider, **kwd) elif data_type == 'track_config': rval = self.get_new_track_config(trans, dataset) elif data_type == 'genome_data': rval = self._get_genome_data(trans, dataset, kwd.get('dbkey', None)) else: # Default: return dataset as dict. if hda_ldda == 'hda': return self.hda_serializer.serialize_to_view( trans, dataset, view=kwd.get('view', 'detailed')) else: rval = dataset.to_dict() except Exception as e: rval = "Error in dataset API at listing contents: " + str(e) log.error(rval + ": %s" % str(e), exc_info=True) trans.response.status = 500 return rval
class DatasetsController( BaseAPIController, UsesVisualizationMixin ): @web.expose_api def index( self, trans, **kwd ): """ GET /api/datasets Lists datasets. """ pass @web.expose_api def show( self, trans, id, hda_ldda='hda', data_type=None, **kwd ): """ GET /api/datasets/{encoded_dataset_id} Displays information about and/or content of a dataset. """ # Get dataset. try: dataset = self.get_hda_or_ldda( trans, hda_ldda=hda_ldda, dataset_id=id ) except Exception, e: return str( e ) # Use data type to return particular type of data. try: if data_type == 'state': rval = self._dataset_state( trans, dataset ) elif data_type == 'converted_datasets_state': rval = self._converted_datasets_state( trans, dataset, kwd.get( 'chrom', None ), is_true( kwd.get( 'retry', False ) ) ) elif data_type == 'data': rval = self._data( trans, dataset, **kwd ) elif data_type == 'features': rval = self._search_features( trans, dataset, kwd.get( 'query' ) ) elif data_type == 'raw_data': rval = self._raw_data( trans, dataset, **kwd ) elif data_type == 'track_config': rval = self.get_new_track_config( trans, dataset ) elif data_type == 'genome_data': rval = self._get_genome_data( trans, dataset, kwd.get('dbkey', None) ) else: # Default: return dataset as API value. rval = dataset.get_api_value() except Exception, e: rval = "Error in dataset API at listing contents: " + str( e ) log.error( rval + ": %s" % str(e), exc_info=True ) trans.response.status = 500
def show( self, trans, id, num=None, chrom=None, low=None, high=None, **kwd ): """ GET /api/genomes/{id} Returns information about build <id> """ # Process kwds. id = get_id( id, kwd.get( 'format', None ) ) reference = is_true( kwd.get( 'reference', False ) ) # Return info. rval = None if reference: rval = self.app.genomes.reference( trans, dbkey=id, chrom=chrom, low=low, high=high ) else: rval = self.app.genomes.chroms( trans, dbkey=id, num=num, chrom=chrom, low=low ) return rval
def show( self, trans, id, hda_ldda='hda', data_type=None, provider=None, **kwd ): """ GET /api/datasets/{encoded_dataset_id} Displays information about and/or content of a dataset. """ # Get dataset. try: dataset = self.get_hda_or_ldda( trans, hda_ldda=hda_ldda, dataset_id=id ) except Exception as e: return str( e ) # Use data type to return particular type of data. try: if data_type == 'state': rval = self._dataset_state( trans, dataset ) elif data_type == 'converted_datasets_state': rval = self._converted_datasets_state( trans, dataset, kwd.get( 'chrom', None ), is_true( kwd.get( 'retry', False ) ) ) elif data_type == 'data': rval = self._data( trans, dataset, **kwd ) elif data_type == 'features': rval = self._search_features( trans, dataset, kwd.get( 'query' ) ) elif data_type == 'raw_data': rval = self._raw_data( trans, dataset, provider, **kwd ) elif data_type == 'track_config': rval = self.get_new_track_config( trans, dataset ) elif data_type == 'genome_data': rval = self._get_genome_data( trans, dataset, kwd.get('dbkey', None) ) elif data_type == 'mzidentml': rval = self._mzIdentMLProcess(**kwd) else: # Default: return dataset as dict. if hda_ldda == 'hda': return self.hda_serializer.serialize_to_view( dataset, view=kwd.get( 'view', 'detailed' ), user=trans.user, trans=trans ) else: rval = dataset.to_dict() except Exception as e: rval = "Error in dataset API at listing contents: " + str( e ) log.error( rval + ": %s" % str(e), exc_info=True ) trans.response.status = 500 return rval