comparison chip.py @ 0:7f9ec5d9c4db draft default tip

Imported from capsule None
author jjohnson
date Wed, 15 Oct 2014 09:22:41 -0400
parents
children
comparison
equal deleted inserted replaced
-1:000000000000 0:7f9ec5d9c4db
1 """
2 Binary classes
3 """
4
5 import galaxy.datatypes.data
6 from galaxy.datatypes.data import Data
7 import galaxy.datatypes.sniff
8 from galaxy.datatypes.sniff import *
9
10 import zipfile
11 from urllib import urlencode, quote_plus
12
13 log = logging.getLogger(__name__)
14
15 # Cistrome Customized Datatypes
16 class Eset( Data ):
17 """Class describing an Expression Set"""
18 file_ext = "eset"
19 def set_peek( self, dataset, is_multi_byte=False ):
20 if not dataset.dataset.purged:
21 dataset.peek = "Expression set"
22 dataset.blurb = data.nice_size( dataset.get_size() )
23 else:
24 dataset.peek = 'file does not exist'
25 dataset.blurb = 'file purged from disk'
26 def display_peek(self, dataset):
27 try:
28 return dataset.peek
29 except:
30 return "Expression set"
31 def get_mime(self):
32 """Returns the mime type of the datatype"""
33
34 class XysZip( Data ):
35 """Class describing a zip archive of NimbleGen XYS files"""
36 file_ext = "xys.zip"
37 def set_peek( self, dataset, is_multi_byte=False ):
38 if not dataset.dataset.purged:
39 zip_file = zipfile.ZipFile( dataset.file_name, "r" )
40 num_files = len( zip_file.namelist() )
41 dataset.peek = "Archive of %s NimbleGen XYS files" % ( str( num_files - 1 ) )
42 dataset.blurb = data.nice_size( dataset.get_size() )
43 else:
44 dataset.peek = 'file does not exist'
45 dataset.blurb = 'file purged from disk'
46 def display_peek(self, dataset):
47 try:
48 return dataset.peek
49 except:
50 return "NimbleGen XYS file archive (%s)" % ( data.nice_size( dataset.get_size() ) )
51 def get_mime(self):
52 """Returns the mime type of the datatype"""
53 return 'application/zip'
54
55 class CelZip( Data ):
56 """Class describing a zip archive of Affymetrix CEL files"""
57 file_ext = "cel.zip"
58 def set_peek( self, dataset, is_multi_byte=False ):
59 if not dataset.dataset.purged:
60 zip_file = zipfile.ZipFile( dataset.file_name, "r" )
61 num_files = len( zip_file.namelist() )
62 dataset.peek = "Archive of %s Affymetrix CEL files" % ( str( num_files - 1 ) )
63 dataset.blurb = data.nice_size( dataset.get_size() )
64 else:
65 dataset.peek = 'file does not exist'
66 dataset.blurb = 'file purged from disk'
67 def display_peek(self, dataset):
68 try:
69 return dataset.peek
70 except:
71 return "Affymetrix CEL file archive (%s)" % ( data.nice_size( dataset.get_size() ) )
72 def get_mime(self):
73 """Returns the mime type of the datatype"""
74 return 'application/zip'
75
76 class Cel( Data ):
77 """Class describing an binary CEL file"""
78 file_ext = "cel"
79 def set_peek( self, dataset, is_multi_byte=False ):
80 if not dataset.dataset.purged:
81 export_url = "/history_add_to?" + urlencode({'history_id':dataset.history_id,'ext':'cel','name':'affymetrix cel file','info':'Cel file','dbkey':dataset.dbkey})
82 dataset.peek = "Binary cel sequence file"
83 dataset.blurb = data.nice_size( dataset.get_size() )
84 else:
85 dataset.peek = 'file does not exist'
86 dataset.blurb = 'file purged from disk'
87 def display_peek(self, dataset):
88 try:
89 return dataset.peek
90 except:
91 return "Binary cel sequence file (%s)" % ( data.nice_size( dataset.get_size() ) )
92 def sniff( self, filename ):
93 """
94 Determines wether the file is in cel format
95
96 """
97 parts = filename.lower().split('.')
98 for p in parts:
99 if p == 'cel':
100 return True
101 return False
102
103 def get_mime(self):
104 """Returns the mime type of the datatype"""
105 return 'application/octet-stream'
106 # End