import stat
import time
-from htsworkflow.pipelines.runfolder import \
+from htsworkflow.pipelines import \
ElementTree, \
VERSION_RE, \
EUROPEAN_STRPTIME
def __init__(self, xml=None):
self.tree = None
self.date = datetime.datetime.today()
- self._tiles = None
+ self._tiles = None
if xml is not None:
self.set_elements(xml)
+ def _get_runfolder_name(self):
+ """Return runfolder name"""
+ if self.tree is None:
+ raise ValueError("Can't query an empty run")
+ runfolder = self.tree.xpath('RunParameters/Runfolder')
+ return runfolder
+ runfolder_name = property(_get_runfolder)
+
+ def _get_software(self):
+ """Return software name"""
+ if self.tree is None:
+ raise ValueError("Can't determine software name, please load a run")
+ software = self.tree.xpath('Software')
+ if len(software) == 0:
+ return None
+ elif len(software) > 1:
+ raise RuntimeError("Too many software tags, please update ipar.py")
+ else:
+ return software[0].attrib['Name']
+ software = property(_get_software)
+
def _get_time(self):
return time.mktime(self.date.timetuple())
def _set_time(self, value):
# its still live.
# look for parameter xml file
- paramfiles = [os.path.join(pathname, 'config.xml'),
+ paramfiles = [os.path.join(pathname, 'RTAConfig.xml'),
+ os.path.join(pathname, 'config.xml'),
os.path.join(path, '.params')]
for paramfile in paramfiles:
if os.path.exists(paramfile):