Skip to content

Commit

Permalink
Use bunch instead of trans
Browse files Browse the repository at this point in the history
  • Loading branch information
guerler committed Jan 26, 2016
1 parent 89ba002 commit 4902613
Show file tree
Hide file tree
Showing 4 changed files with 75 additions and 126 deletions.
4 changes: 0 additions & 4 deletions lib/galaxy/tools/evaluation.py
Expand Up @@ -52,10 +52,6 @@ def set_compute_environment( self, compute_environment, get_special=None ):
job = self.job
incoming = dict( [ ( p.name, p.value ) for p in job.parameters ] )
incoming = self.tool.params_from_strings( incoming, self.app )
def validate_inputs( input, value, prefixed_name, prefixed_label, context ):
value = input.from_html( value, None, context )
input.validate( value, None )
visit_input_values ( self.tool.inputs, incoming, validate_inputs, details=True )

# Restore input / output data lists
inp_data = dict( [ ( da.name, da.dataset ) for da in job.input_datasets ] )
Expand Down
11 changes: 9 additions & 2 deletions lib/galaxy/tools/parameters/__init__.py
Expand Up @@ -6,6 +6,7 @@
from grouping import Conditional, Repeat, Section, UploadDataset
from galaxy.util.json import dumps, json_fix, loads
from galaxy.util.expressions import ExpressionContext
from galaxy.util.bunch import Bunch

REPLACE_ON_TRUTHY = object()

Expand Down Expand Up @@ -68,6 +69,12 @@ def check_param( trans, param, incoming_value, param_values, source='html', bool
previous parameters (this may actually be an ExpressionContext
when dealing with grouping scenarios).
"""
request_context = Bunch(
user = trans.user,
history = trans.history,
user_ftp_dir = trans.user_ftp_dir,
workflow_building_mode = workflow_building_mode
)
value = incoming_value
error = None
try:
Expand All @@ -79,9 +86,9 @@ def check_param( trans, param, incoming_value, param_values, source='html', bool
if value is not None or isinstance( param, DataToolParameter ) or isinstance( param, DataCollectionToolParameter ):
# Convert value from HTML representation
if source == 'html':
value = param.from_html( value, trans, param_values )
value = param.from_html( value, request_context, param_values )
else:
value = param.from_json( value, trans, param_values )
value = param.from_json( value, request_context, param_values )
# Allow the value to be converted if necessary
filtered_value = param.filter_value( value, trans, param_values )
# Then do any further validation on the value
Expand Down

0 comments on commit 4902613

Please sign in to comment.