Files
galaxy/tools/samtools/sam_merge_code.py
T

35 lines
1.6 KiB
Python

from galaxy.tools.parameters import DataToolParameter
def validate_input( trans, error_map, param_values, page_param_map ):
dbkeys = set()
data_param_names = set()
data_params = 0
for name, param in page_param_map.iteritems():
if isinstance( param, DataToolParameter ):
# for each dataset parameter
if param_values.get(name, None) != None:
dbkeys.add( param_values[name].dbkey )
data_params += 1
# check meta data
# try:
# param = param_values[name]
# startCol = int( param.metadata.startCol )
# endCol = int( param.metadata.endCol )
# chromCol = int( param.metadata.chromCol )
# if param.metadata.strandCol is not None:
# strandCol = int ( param.metadata.strandCol )
# else:
# strandCol = 0
# except:
# error_msg = "The attributes of this dataset are not properly set. " + \
# "Click the pencil icon in the history item to set the chrom, start, end and strand columns."
# error_map[name] = error_msg
data_param_names.add( name )
if len( dbkeys ) > 1:
for name in data_param_names:
error_map[name] = "All datasets must belong to same genomic build, " \
"this dataset is linked to build '%s'" % param_values[name].dbkey
if data_params != len(data_param_names):
for name in data_param_names:
error_map[name] = "A dataset of the appropriate type is required"