mirror of
https://github.com/galaxyproject/galaxy.git
synced 2026-09-24 16:30:27 +08:00
Controller updates for the resubmitted dataset instance state (thanks Carl!)
This commit is contained in:
@@ -940,10 +940,9 @@ class JobWrapper( object ):
|
||||
def mark_as_resubmitted( self ):
|
||||
job = self.get_job()
|
||||
self.sa_session.refresh( job )
|
||||
# TODO: Enable this code once a UI for resubmitted datasets exists
|
||||
#for dataset in [ dataset_assoc.dataset for dataset_assoc in job.output_datasets + job.output_library_datasets ]:
|
||||
# dataset._state = model.Dataset.states.RESUBMITTED
|
||||
# self.sa_session.add( dataset )
|
||||
for dataset in [ dataset_assoc.dataset for dataset_assoc in job.output_datasets + job.output_library_datasets ]:
|
||||
dataset._state = model.Dataset.states.RESUBMITTED
|
||||
self.sa_session.add( dataset )
|
||||
job.state = model.Job.states.RESUBMITTED
|
||||
self.sa_session.add( job )
|
||||
self.sa_session.flush()
|
||||
|
||||
@@ -131,15 +131,20 @@ class HistoryContentsController( BaseAPIController, UsesHistoryDatasetAssociatio
|
||||
"""
|
||||
api_type = "file"
|
||||
encoded_id = trans.security.encode_id( hda.id )
|
||||
# TODO: handle failed_metadata here as well
|
||||
state = hda.state
|
||||
if state == trans.app.model.Dataset.states.RESUBMITTED:
|
||||
state = hda.dataset.state
|
||||
return {
|
||||
'id' : encoded_id,
|
||||
'history_id' : encoded_history_id,
|
||||
'name' : hda.name,
|
||||
'type' : api_type,
|
||||
'state' : hda.state,
|
||||
'state' : state,
|
||||
'deleted': hda.deleted,
|
||||
'visible': hda.visible,
|
||||
'purged': hda.purged,
|
||||
'resubmitted': hda._state == trans.app.model.Dataset.states.RESUBMITTED,
|
||||
'hid' : hda.hid,
|
||||
'history_content_type' : hda.history_content_type,
|
||||
'url' : url_for( 'history_content_typed', history_id=encoded_history_id, id=encoded_id, type="dataset" ),
|
||||
@@ -157,6 +162,9 @@ class HistoryContentsController( BaseAPIController, UsesHistoryDatasetAssociatio
|
||||
hda_dict = self.get_hda_dict( trans, hda )
|
||||
hda_dict[ 'display_types' ] = self.get_old_display_applications( trans, hda )
|
||||
hda_dict[ 'display_apps' ] = self.get_display_apps( trans, hda )
|
||||
if hda_dict[ 'state' ] == trans.app.model.Dataset.states.RESUBMITTED:
|
||||
hda_dict[ 'state' ] = hda.dataset.state
|
||||
hda_dict[ 'resubmitted' ] = True
|
||||
return hda_dict
|
||||
except Exception, exc:
|
||||
# catch error here - returning a briefer hda_dict with an error attribute
|
||||
|
||||
Reference in New Issue
Block a user