Delete elements on attr value of None or ""

This commit is contained in:
usov_i 2020-07-29 13:48:12 +02:00
parent eb697be616
commit cf3abd97c0

View File

@ -50,7 +50,8 @@ class AnatricConfig:
return elem.attrib[attr] return elem.attrib[attr]
def _set_attr(self, name, tag, attr, value): def _set_attr(self, name, tag, attr, value):
if value is None: if value == "" or value is None:
self._del_attr(name, tag)
return return
tree_elem = self._tree.find(name) tree_elem = self._tree.find(name)
@ -62,6 +63,12 @@ class AnatricConfig:
else: else:
elem.attrib[attr] = value elem.attrib[attr] = value
def _del_attr(self, name, tag):
tree_elem = self._tree.find(name)
param_elem = tree_elem.find(tag)
if param_elem is not None:
tree_elem.remove(param_elem)
@property @property
def logfile(self): def logfile(self):
return self._tree.find("logfile").attrib["file"] return self._tree.find("logfile").attrib["file"]
@ -220,7 +227,8 @@ class AnatricConfig:
return param_elem.attrib[attr] return param_elem.attrib[attr]
def _set_alg_attr(self, alg, tag, attr, value): def _set_alg_attr(self, alg, tag, attr, value):
if value is None: if value == "" or value is None:
self._del_alg_attr(alg, tag)
return return
alg_elem = self._alg_elems[alg] alg_elem = self._alg_elems[alg]
@ -232,6 +240,12 @@ class AnatricConfig:
else: else:
param_elem.attrib[attr] = value param_elem.attrib[attr] = value
def _del_alg_attr(self, alg, tag):
alg_elem = self._alg_elems[alg]
param_elem = alg_elem.find(tag)
if param_elem is not None:
alg_elem.remove(param_elem)
# --- adaptivemaxcog # --- adaptivemaxcog
@property @property
def threshold(self): def threshold(self):