annotate emboss_5/emboss_format_corrector.py @ 7:55075056bd56

Fix for emboss_format_corrector.py. Datatypes should be changed before the job is run.
author Daniel Blankenberg <dan@bx.psu.edu>
date Fri, 11 Oct 2013 14:03:31 -0400
parents d3a9c3114f2c
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
d3a9c3114f2c Uploaded emboss5.tar
devteam
parents:
diff changeset
1 #EMBOSS format corrector
d3a9c3114f2c Uploaded emboss5.tar
devteam
parents:
diff changeset
2
d3a9c3114f2c Uploaded emboss5.tar
devteam
parents:
diff changeset
3 import operator
d3a9c3114f2c Uploaded emboss5.tar
devteam
parents:
diff changeset
4
d3a9c3114f2c Uploaded emboss5.tar
devteam
parents:
diff changeset
5 #Properly set file formats before job run
7
55075056bd56 Fix for emboss_format_corrector.py. Datatypes should be changed before the job is run.
Daniel Blankenberg <dan@bx.psu.edu>
parents: 0
diff changeset
6 def exec_before_job( app, inp_data=None, out_data=None, tool=None, param_dict=None ):
0
d3a9c3114f2c Uploaded emboss5.tar
devteam
parents:
diff changeset
7 #why isn't items an ordered list?
d3a9c3114f2c Uploaded emboss5.tar
devteam
parents:
diff changeset
8 items = out_data.items()
d3a9c3114f2c Uploaded emboss5.tar
devteam
parents:
diff changeset
9 #lets sort it ourselves....
d3a9c3114f2c Uploaded emboss5.tar
devteam
parents:
diff changeset
10 items = sorted(items, key=operator.itemgetter(0))
d3a9c3114f2c Uploaded emboss5.tar
devteam
parents:
diff changeset
11 #items is now sorted...
d3a9c3114f2c Uploaded emboss5.tar
devteam
parents:
diff changeset
12
d3a9c3114f2c Uploaded emboss5.tar
devteam
parents:
diff changeset
13 #normal filetype correction
d3a9c3114f2c Uploaded emboss5.tar
devteam
parents:
diff changeset
14 data_count=1
d3a9c3114f2c Uploaded emboss5.tar
devteam
parents:
diff changeset
15 for name, data in items:
d3a9c3114f2c Uploaded emboss5.tar
devteam
parents:
diff changeset
16 outputType = param_dict.get( 'out_format'+str(data_count), None )
d3a9c3114f2c Uploaded emboss5.tar
devteam
parents:
diff changeset
17 #print "data_count",data_count, "name", name, "outputType", outputType
d3a9c3114f2c Uploaded emboss5.tar
devteam
parents:
diff changeset
18 if outputType !=None:
d3a9c3114f2c Uploaded emboss5.tar
devteam
parents:
diff changeset
19 if outputType == 'ncbi':
d3a9c3114f2c Uploaded emboss5.tar
devteam
parents:
diff changeset
20 outputType = "fasta"
d3a9c3114f2c Uploaded emboss5.tar
devteam
parents:
diff changeset
21 elif outputType == 'excel':
d3a9c3114f2c Uploaded emboss5.tar
devteam
parents:
diff changeset
22 outputType = "tabular"
d3a9c3114f2c Uploaded emboss5.tar
devteam
parents:
diff changeset
23 elif outputType == 'text':
d3a9c3114f2c Uploaded emboss5.tar
devteam
parents:
diff changeset
24 outputType = "txt"
d3a9c3114f2c Uploaded emboss5.tar
devteam
parents:
diff changeset
25 data = app.datatypes_registry.change_datatype(data, outputType)
d3a9c3114f2c Uploaded emboss5.tar
devteam
parents:
diff changeset
26 app.model.context.add( data )
d3a9c3114f2c Uploaded emboss5.tar
devteam
parents:
diff changeset
27 app.model.context.flush()
d3a9c3114f2c Uploaded emboss5.tar
devteam
parents:
diff changeset
28 data_count+=1
d3a9c3114f2c Uploaded emboss5.tar
devteam
parents:
diff changeset
29
d3a9c3114f2c Uploaded emboss5.tar
devteam
parents:
diff changeset
30 #html filetype correction
d3a9c3114f2c Uploaded emboss5.tar
devteam
parents:
diff changeset
31 data_count=1
d3a9c3114f2c Uploaded emboss5.tar
devteam
parents:
diff changeset
32 for name, data in items:
d3a9c3114f2c Uploaded emboss5.tar
devteam
parents:
diff changeset
33 wants_plot = param_dict.get( 'html_out'+str(data_count), None )
d3a9c3114f2c Uploaded emboss5.tar
devteam
parents:
diff changeset
34 ext = "html"
d3a9c3114f2c Uploaded emboss5.tar
devteam
parents:
diff changeset
35 if wants_plot == "yes":
d3a9c3114f2c Uploaded emboss5.tar
devteam
parents:
diff changeset
36 data = app.datatypes_registry.change_datatype(data, ext)
d3a9c3114f2c Uploaded emboss5.tar
devteam
parents:
diff changeset
37 app.model.context.add( data )
d3a9c3114f2c Uploaded emboss5.tar
devteam
parents:
diff changeset
38 app.model.context.flush()
d3a9c3114f2c Uploaded emboss5.tar
devteam
parents:
diff changeset
39 data_count+=1
d3a9c3114f2c Uploaded emboss5.tar
devteam
parents:
diff changeset
40
d3a9c3114f2c Uploaded emboss5.tar
devteam
parents:
diff changeset
41 #png file correction
d3a9c3114f2c Uploaded emboss5.tar
devteam
parents:
diff changeset
42 data_count=1
d3a9c3114f2c Uploaded emboss5.tar
devteam
parents:
diff changeset
43 for name, data in items:
d3a9c3114f2c Uploaded emboss5.tar
devteam
parents:
diff changeset
44 wants_plot = param_dict.get( 'plot'+str(data_count), None )
d3a9c3114f2c Uploaded emboss5.tar
devteam
parents:
diff changeset
45 ext = "png"
d3a9c3114f2c Uploaded emboss5.tar
devteam
parents:
diff changeset
46 if wants_plot == "yes":
d3a9c3114f2c Uploaded emboss5.tar
devteam
parents:
diff changeset
47 data = app.datatypes_registry.change_datatype(data, ext)
d3a9c3114f2c Uploaded emboss5.tar
devteam
parents:
diff changeset
48 app.model.context.add( data )
d3a9c3114f2c Uploaded emboss5.tar
devteam
parents:
diff changeset
49 app.model.context.flush()
d3a9c3114f2c Uploaded emboss5.tar
devteam
parents:
diff changeset
50 data_count+=1