annotate flapjack.py @ 40:4a0f069c98e0 draft

Uploaded
author cropgeeks
date Thu, 02 Mar 2017 08:25:37 -0500
parents c8c40cbe2945
children 1de63acd6b12
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
32
591567e072f1 Uploaded
cropgeeks
parents: 31
diff changeset
1 from galaxy.datatypes.data import Text
31
9f4041f700d8 Uploaded
cropgeeks
parents: 28
diff changeset
2 from galaxy.datatypes.tabular import Tabular
39
c8c40cbe2945 Uploaded
cropgeeks
parents: 38
diff changeset
3 from galaxy.datatypes.binary import Binary
4
8970bd921458 Uploaded
cropgeeks
parents:
diff changeset
4
39
c8c40cbe2945 Uploaded
cropgeeks
parents: 38
diff changeset
5 class FlapjackFormat(Binary):
9
44c2d3b788f1 Uploaded
cropgeeks
parents: 7
diff changeset
6 file_ext = "flapjack"
35
414aa590a1de Uploaded
cropgeeks
parents: 32
diff changeset
7
40
4a0f069c98e0 Uploaded
cropgeeks
parents: 39
diff changeset
8 # def sniff(self, filename):
39
c8c40cbe2945 Uploaded
cropgeeks
parents: 38
diff changeset
9 # The first 16 bytes of any SQLite3 database file is 'SQLite format 3\0', and the file is binary. For details
c8c40cbe2945 Uploaded
cropgeeks
parents: 38
diff changeset
10 # about the format, see http://www.sqlite.org/fileformat.html
40
4a0f069c98e0 Uploaded
cropgeeks
parents: 39
diff changeset
11 # try:
4a0f069c98e0 Uploaded
cropgeeks
parents: 39
diff changeset
12 # header = open(filename, 'rb').read(16)
4a0f069c98e0 Uploaded
cropgeeks
parents: 39
diff changeset
13 # if header == b'SQLite format 3\0':
4a0f069c98e0 Uploaded
cropgeeks
parents: 39
diff changeset
14 # fj_table_names = ["objects", "project"]
4a0f069c98e0 Uploaded
cropgeeks
parents: 39
diff changeset
15 # conn = sqlite.connect(filename)
4a0f069c98e0 Uploaded
cropgeeks
parents: 39
diff changeset
16 # c = conn.cursor()
4a0f069c98e0 Uploaded
cropgeeks
parents: 39
diff changeset
17 # tables_query = "SELECT name FROM sqlite_master WHERE type='table' ORDER BY name"
4a0f069c98e0 Uploaded
cropgeeks
parents: 39
diff changeset
18 # result = c.execute(tables_query).fetchall()
4a0f069c98e0 Uploaded
cropgeeks
parents: 39
diff changeset
19 # result = [_[0] for _ in result]
4a0f069c98e0 Uploaded
cropgeeks
parents: 39
diff changeset
20 # for table_name in fj_table_names:
4a0f069c98e0 Uploaded
cropgeeks
parents: 39
diff changeset
21 # if table_name not in result:
4a0f069c98e0 Uploaded
cropgeeks
parents: 39
diff changeset
22 # return False
4a0f069c98e0 Uploaded
cropgeeks
parents: 39
diff changeset
23 # return True
4a0f069c98e0 Uploaded
cropgeeks
parents: 39
diff changeset
24 # return False
4a0f069c98e0 Uploaded
cropgeeks
parents: 39
diff changeset
25 # except:
4a0f069c98e0 Uploaded
cropgeeks
parents: 39
diff changeset
26 # return False
9
44c2d3b788f1 Uploaded
cropgeeks
parents: 7
diff changeset
27
28
326e6b1e926c Uploaded
cropgeeks
parents: 9
diff changeset
28 class FlapjackMapFormat(Tabular):
4
8970bd921458 Uploaded
cropgeeks
parents:
diff changeset
29 file_ext = "fjmap"
8970bd921458 Uploaded
cropgeeks
parents:
diff changeset
30
8970bd921458 Uploaded
cropgeeks
parents:
diff changeset
31 def sniff( self, filename ):
8970bd921458 Uploaded
cropgeeks
parents:
diff changeset
32 h = open(filename)
8970bd921458 Uploaded
cropgeeks
parents:
diff changeset
33 line = h.readline()
8970bd921458 Uploaded
cropgeeks
parents:
diff changeset
34 if line.rstrip() != "# fjFile = MAP":
8970bd921458 Uploaded
cropgeeks
parents:
diff changeset
35 h.close()
8970bd921458 Uploaded
cropgeeks
parents:
diff changeset
36 return False
8970bd921458 Uploaded
cropgeeks
parents:
diff changeset
37 return True
8970bd921458 Uploaded
cropgeeks
parents:
diff changeset
38
28
326e6b1e926c Uploaded
cropgeeks
parents: 9
diff changeset
39 class FlapjackGenotypeFormat(Tabular):
4
8970bd921458 Uploaded
cropgeeks
parents:
diff changeset
40 file_ext = "fjgenotype"
8970bd921458 Uploaded
cropgeeks
parents:
diff changeset
41
8970bd921458 Uploaded
cropgeeks
parents:
diff changeset
42 def sniff( self, filename ):
8970bd921458 Uploaded
cropgeeks
parents:
diff changeset
43 h = open(filename)
8970bd921458 Uploaded
cropgeeks
parents:
diff changeset
44 line = h.readline()
8970bd921458 Uploaded
cropgeeks
parents:
diff changeset
45 if line.rstrip() != "# fjFile = GENOTYPE":
8970bd921458 Uploaded
cropgeeks
parents:
diff changeset
46 h.close()
8970bd921458 Uploaded
cropgeeks
parents:
diff changeset
47 return False
8970bd921458 Uploaded
cropgeeks
parents:
diff changeset
48 return True
8970bd921458 Uploaded
cropgeeks
parents:
diff changeset
49
28
326e6b1e926c Uploaded
cropgeeks
parents: 9
diff changeset
50 class FlapjackPhenotypeFormat(Tabular):
4
8970bd921458 Uploaded
cropgeeks
parents:
diff changeset
51 file_ext = "fjphenotye"
8970bd921458 Uploaded
cropgeeks
parents:
diff changeset
52
8970bd921458 Uploaded
cropgeeks
parents:
diff changeset
53 def sniff( self, filename ):
8970bd921458 Uploaded
cropgeeks
parents:
diff changeset
54 h = open(filename)
8970bd921458 Uploaded
cropgeeks
parents:
diff changeset
55 line = h.readline()
8970bd921458 Uploaded
cropgeeks
parents:
diff changeset
56 if line.rstrip() != "# fjFile = PHENOTYPE":
8970bd921458 Uploaded
cropgeeks
parents:
diff changeset
57 h.close()
8970bd921458 Uploaded
cropgeeks
parents:
diff changeset
58 return False
8970bd921458 Uploaded
cropgeeks
parents:
diff changeset
59 return True
8970bd921458 Uploaded
cropgeeks
parents:
diff changeset
60
28
326e6b1e926c Uploaded
cropgeeks
parents: 9
diff changeset
61 class FlapjackQtlFormat(Tabular):
4
8970bd921458 Uploaded
cropgeeks
parents:
diff changeset
62 file_ext = "fjqtl"
8970bd921458 Uploaded
cropgeeks
parents:
diff changeset
63
8970bd921458 Uploaded
cropgeeks
parents:
diff changeset
64 def sniff( self, filename ):
8970bd921458 Uploaded
cropgeeks
parents:
diff changeset
65 h = open(filename)
8970bd921458 Uploaded
cropgeeks
parents:
diff changeset
66 line = h.readline()
8970bd921458 Uploaded
cropgeeks
parents:
diff changeset
67 if line.rstrip() != "# fjFile = QTL":
8970bd921458 Uploaded
cropgeeks
parents:
diff changeset
68 h.close()
8970bd921458 Uploaded
cropgeeks
parents:
diff changeset
69 return False
8970bd921458 Uploaded
cropgeeks
parents:
diff changeset
70 return True
8970bd921458 Uploaded
cropgeeks
parents:
diff changeset
71
28
326e6b1e926c Uploaded
cropgeeks
parents: 9
diff changeset
72 class FlapjackGraphFormat(Tabular):
4
8970bd921458 Uploaded
cropgeeks
parents:
diff changeset
73 file_ext = "fjgraph"
8970bd921458 Uploaded
cropgeeks
parents:
diff changeset
74
8970bd921458 Uploaded
cropgeeks
parents:
diff changeset
75 def sniff( self, filename ):
8970bd921458 Uploaded
cropgeeks
parents:
diff changeset
76 h = open(filename)
8970bd921458 Uploaded
cropgeeks
parents:
diff changeset
77 line = h.readline()
8970bd921458 Uploaded
cropgeeks
parents:
diff changeset
78 if line.rstrip() != "# fjFile = GRAPH":
8970bd921458 Uploaded
cropgeeks
parents:
diff changeset
79 h.close()
8970bd921458 Uploaded
cropgeeks
parents:
diff changeset
80 return False
8970bd921458 Uploaded
cropgeeks
parents:
diff changeset
81 return True