@@ -240,7 +240,8 @@ def from_data(data):
240240
241241 def to_json (self ):
242242 data = super (Run , self ).to_json ()
243- data ['dataInputs' ] = self .data_inputs
243+
244+ data ['dataInputs' ] = [data_input .to_json () for data_input in self .data_inputs ]
244245 data ['dataRows' ] = self .data_rows
245246 data ['experiments' ] = self .experiments
246247 data ['filePathRoot' ] = self .file_path_root
@@ -256,24 +257,45 @@ def __init__(self, **kwargs):
256257
257258 self .source_protocol = kwargs .pop ('source_protocol' , kwargs .pop ('sourceProtocol' , None ))
258259 self .run = kwargs .pop ('run' , None ) # TODO Check if this should be a Run instance
259- self .target_applications = kwargs .pop ('target_applications' , kwargs .pop ('targetApplications' ) , None )
260- self .successor_runs = kwargs .pop ('successor_runs' , kwargs .pop ('sucessorRuns' , None )) # sic
260+ self .target_applications = kwargs .pop ('target_applications' , kwargs .pop ('targetApplications' , None ) )
261+ self .successor_runs = kwargs .pop ('successor_runs' , kwargs .pop ('successorRuns' , kwargs . pop ( ' sucessorRuns' , None ) )) # sic
261262 self .cpas_type = kwargs .pop ('cpas_type' , kwargs .pop ('cpasType' , None ))
262263
263264 @staticmethod
264265 def from_data (data ):
265266 return ProtocolOutput (** data )
266267
268+ def to_json (self ):
269+ data = super (ProtocolOutput , self ).to_json ()
270+
271+ data ['sourceProtocol' ] = self .source_protocol
272+ data ['run' ] = self .run
273+ data ['targetApplications' ] = self .target_applications
274+ data ['sucessorRuns' ] = self .successor_runs
275+ data ['cpasType' ] = self .cpas_type
276+
277+ return data
278+
267279
268280class Data (ProtocolOutput ):
269281 def __init__ (self , ** kwargs ):
270282 super (Data , self ).__init__ (** kwargs )
271283
272284 self .data_type = kwargs .pop ('data_type' , kwargs .pop ('dataType' , None ))
273285 self .data_file_url = kwargs .pop ('data_file_url' , kwargs .pop ('dataFileURL' , None ))
274- self .pipeline_path = kwargs .pop ('pipeline_path' , kwargs .pop ('pipeline_path ' , None ))
286+ self .pipeline_path = kwargs .pop ('pipeline_path' , kwargs .pop ('pipelinePath ' , None ))
275287 self .role = kwargs .pop ('role' , None )
276288
277289 @staticmethod
278290 def from_data (data ):
279291 return Data (** data )
292+
293+ def to_json (self ):
294+ data = super (Data , self ).to_json ()
295+
296+ data ['dataFileURL' ] = self .data_file_url
297+ data ['dataType' ] = self .data_type
298+ data ['pipelinePath' ] = self .pipeline_path
299+ data ['role' ] = self .role
300+
301+ return data
0 commit comments