mirror of
https://github.com/galaxyproject/galaxy.git
synced 2026-09-24 16:30:27 +08:00
Add the ability to define datatypes in the configuration file.
Datatypes are defined like: [galaxy:datatypes] bed = galaxy.datatypes.interval:Bed png = galaxy.datatypes.images:Image,image/png where the mime-type (default of text/plain) can be declared after the class name, as is seen with png.
This commit is contained in:
@@ -11,7 +11,7 @@ def exec_before_job( app, inp_data, out_data, param_dict, tool=None):
|
||||
data_type = param_dict.get( 'type', 'text' )
|
||||
if data_type == 'text': data_type='interval' #All data from biomart is TSV, assume interval
|
||||
name, data = out_data.items()[0]
|
||||
data = datatypes.change_datatype(data, data_type)
|
||||
data = app.datatypes_registry.change_datatype(data, data_type)
|
||||
data.name = data_name
|
||||
out_data[name] = data
|
||||
|
||||
|
||||
@@ -117,7 +117,7 @@ def exec_after_process(app, inp_data, out_data, param_dict, tool, stdout, stderr
|
||||
data.name = data.name + " (" + description + ")"
|
||||
data.dbkey = dbkey
|
||||
data.info = data.name
|
||||
datatypes.change_datatype( data, file_type )
|
||||
data = app.datatypes_registry.change_datatype( data, file_type )
|
||||
data.init_meta()
|
||||
data.set_peek()
|
||||
app.model.flush()
|
||||
|
||||
@@ -10,7 +10,7 @@ def exec_before_job( app, inp_data, out_data, param_dict, tool=None):
|
||||
data_type = param_dict.get( 'type', 'text' )
|
||||
if data_type == 'text': data_type='interval' #All data is TSV, assume interval
|
||||
name, data = out_data.items()[0]
|
||||
data = datatypes.change_datatype(data, data_type)
|
||||
data = app.datatypes_registry.change_datatype(data, data_type)
|
||||
data.name = data_name
|
||||
out_data[name] = data
|
||||
|
||||
@@ -70,6 +70,6 @@ def exec_after_process(app, inp_data, out_data, param_dict, tool=None, stdout=No
|
||||
shutil.move(temp_filename,data.file_name)
|
||||
|
||||
else:
|
||||
data = datatypes.change_datatype(data, 'tabular')
|
||||
data = app.datatypes_registry.change_datatype(data, 'tabular')
|
||||
data.set_peek()
|
||||
data.flush()
|
||||
|
||||
@@ -225,7 +225,7 @@ def exec_after_process(app, inp_data, out_data, param_dict, tool, stdout, stderr
|
||||
data.name = data.name + " (" + microbe_info[kingdom][org]['chrs'][chr]['data'][description]['feature'] +" for "+microbe_info[kingdom][org]['name']+":"+chr + ")"
|
||||
data.dbkey = dbkey
|
||||
data.info = data.name
|
||||
datatypes.change_datatype( data, file_type )
|
||||
data = app.datatypes_registry.change_datatype( data, file_type )
|
||||
data.init_meta()
|
||||
data.set_peek()
|
||||
app.model.flush()
|
||||
|
||||
@@ -21,9 +21,8 @@ def exec_before_job( app, inp_data, out_data, param_dict, tool=None):
|
||||
ext = outputType
|
||||
try: ext = outputType_to_ext[outputType]
|
||||
except: pass
|
||||
if ext not in datatypes.datatypes_by_extension: ext = 'interval'
|
||||
|
||||
data = datatypes.change_datatype(data, ext)
|
||||
if ext not in app.datatypes_registry.datatypes_by_extension: ext = 'interval'
|
||||
data = app.datatypes_registry.change_datatype(data, ext)
|
||||
|
||||
#store ucsc parameters temporarily in output file
|
||||
out = open(data.file_name,'w')
|
||||
@@ -40,6 +39,6 @@ def exec_after_process(app, inp_data, out_data, param_dict, tool=None, stdout=No
|
||||
|
||||
if not isinstance(data.datatype, datatypes.interval.Bed) and isinstance(data.datatype, datatypes.interval.Interval):
|
||||
data.set_meta()
|
||||
if data.missing_meta(): data = datatypes.change_datatype(data, 'tabular')
|
||||
if data.missing_meta(): data = app.datatypes_registry.change_datatype(data, 'tabular')
|
||||
data.set_peek()
|
||||
data.flush()
|
||||
|
||||
Reference in New Issue
Block a user