comparison mqparam.py @ 6:2133b0be850a draft

"planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tree/master/tools/maxquant commit 4e77eeda8a112fb50af00325a5164b986c16fc5c"
author galaxyp
date Wed, 06 May 2020 13:35:51 -0400
parents dcd39bcc7481
children d253b379322b
comparison
equal deleted inserted replaced
5:7f432d87c82c 6:2133b0be850a
306 if node is None: 306 if node is None:
307 raise ValueError('Element {} not found in parameter file' 307 raise ValueError('Element {} not found in parameter file'
308 .format(key)) 308 .format(key))
309 node.text = str(value) 309 node.text = str(value)
310 310
311 def set_list_param(self, key, values):
312 """Set a list parameter.
313 Args:
314 key: (string) XML tag of the parameter
315 values: the lit of values of the parameter XML node
316 Returns:
317 None
318 """
319 node = self._root.find(key)
320 if node is None:
321 raise ValueError('Element {} not found in parameter file'
322 .format(key))
323 node.clear()
324 node.tag = key
325 for e in values:
326 et_add_child(node, name='string', text=e)
327
311 def _from_yaml(self, conf): 328 def _from_yaml(self, conf):
312 """Read a yaml config file. 329 """Read a yaml config file.
313 Args: 330 Args:
314 conf: (string) path to the yaml conf file 331 conf: (string) path to the yaml conf file
315 Returns: 332 Returns:
316 None 333 None
317 """ 334 """
318 with open(conf) as f: 335 with open(conf) as f:
319 conf_dict = yaml.safe_load(f.read()) 336 conf_dict = yaml.safe_load(f.read())
337
320 paramGroups = conf_dict.pop('paramGroups') 338 paramGroups = conf_dict.pop('paramGroups')
321 self.add_infiles([pg.pop('files') for pg in paramGroups]) 339 self.add_infiles([pg.pop('files') for pg in paramGroups])
322 for i, pg in enumerate(paramGroups): 340 for i, pg in enumerate(paramGroups):
323 silac = pg.pop('labelMods', False) 341 silac = pg.pop('labelMods', False)
324 if silac: 342 if silac:
337 if fastafiles: 355 if fastafiles:
338 self.add_fasta_files(fastafiles, parse_rules=conf_dict.pop('parseRules', {})) 356 self.add_fasta_files(fastafiles, parse_rules=conf_dict.pop('parseRules', {}))
339 else: 357 else:
340 raise Exception('No fasta files provided.') 358 raise Exception('No fasta files provided.')
341 for key in conf_dict: 359 for key in conf_dict:
342 self.set_simple_param(key, conf_dict[key]) 360 if key in ['restrictMods']:
361 self.set_list_param(key, conf_dict[key])
362 else:
363 self.set_simple_param(key, conf_dict[key])
343 364
344 def write(self, mqpar_out): 365 def write(self, mqpar_out):
345 """Write pretty formatted xml parameter file. 366 """Write pretty formatted xml parameter file.
346 Compose it from global parameters and parameter Groups. 367 Compose it from global parameters and parameter Groups.
347 """ 368 """