Mercurial > repos > jjohnson > chip_datatypes
view chip.py @ 0:7f9ec5d9c4db draft default tip
Imported from capsule None
author | jjohnson |
---|---|
date | Wed, 15 Oct 2014 09:22:41 -0400 |
parents | |
children |
line wrap: on
line source
""" Binary classes """ import galaxy.datatypes.data from galaxy.datatypes.data import Data import galaxy.datatypes.sniff from galaxy.datatypes.sniff import * import zipfile from urllib import urlencode, quote_plus log = logging.getLogger(__name__) # Cistrome Customized Datatypes class Eset( Data ): """Class describing an Expression Set""" file_ext = "eset" def set_peek( self, dataset, is_multi_byte=False ): if not dataset.dataset.purged: dataset.peek = "Expression set" dataset.blurb = data.nice_size( dataset.get_size() ) else: dataset.peek = 'file does not exist' dataset.blurb = 'file purged from disk' def display_peek(self, dataset): try: return dataset.peek except: return "Expression set" def get_mime(self): """Returns the mime type of the datatype""" class XysZip( Data ): """Class describing a zip archive of NimbleGen XYS files""" file_ext = "xys.zip" def set_peek( self, dataset, is_multi_byte=False ): if not dataset.dataset.purged: zip_file = zipfile.ZipFile( dataset.file_name, "r" ) num_files = len( zip_file.namelist() ) dataset.peek = "Archive of %s NimbleGen XYS files" % ( str( num_files - 1 ) ) dataset.blurb = data.nice_size( dataset.get_size() ) else: dataset.peek = 'file does not exist' dataset.blurb = 'file purged from disk' def display_peek(self, dataset): try: return dataset.peek except: return "NimbleGen XYS file archive (%s)" % ( data.nice_size( dataset.get_size() ) ) def get_mime(self): """Returns the mime type of the datatype""" return 'application/zip' class CelZip( Data ): """Class describing a zip archive of Affymetrix CEL files""" file_ext = "cel.zip" def set_peek( self, dataset, is_multi_byte=False ): if not dataset.dataset.purged: zip_file = zipfile.ZipFile( dataset.file_name, "r" ) num_files = len( zip_file.namelist() ) dataset.peek = "Archive of %s Affymetrix CEL files" % ( str( num_files - 1 ) ) dataset.blurb = data.nice_size( dataset.get_size() ) else: dataset.peek = 'file does not exist' dataset.blurb = 'file purged from disk' def display_peek(self, dataset): try: return dataset.peek except: return "Affymetrix CEL file archive (%s)" % ( data.nice_size( dataset.get_size() ) ) def get_mime(self): """Returns the mime type of the datatype""" return 'application/zip' class Cel( Data ): """Class describing an binary CEL file""" file_ext = "cel" def set_peek( self, dataset, is_multi_byte=False ): if not dataset.dataset.purged: export_url = "/history_add_to?" + urlencode({'history_id':dataset.history_id,'ext':'cel','name':'affymetrix cel file','info':'Cel file','dbkey':dataset.dbkey}) dataset.peek = "Binary cel sequence file" dataset.blurb = data.nice_size( dataset.get_size() ) else: dataset.peek = 'file does not exist' dataset.blurb = 'file purged from disk' def display_peek(self, dataset): try: return dataset.peek except: return "Binary cel sequence file (%s)" % ( data.nice_size( dataset.get_size() ) ) def sniff( self, filename ): """ Determines wether the file is in cel format """ parts = filename.lower().split('.') for p in parts: if p == 'cel': return True return False def get_mime(self): """Returns the mime type of the datatype""" return 'application/octet-stream' # End