Index: suite_leahi/shared/scripts/configuration/utility.py =================================================================== diff -u -r2d57ccb6d19e9fda0a30ee78e25a4aea0414ff97 -r96fd1aec4a34f016b03af48b8bbc34a21d307813 --- suite_leahi/shared/scripts/configuration/utility.py (.../utility.py) (revision 2d57ccb6d19e9fda0a30ee78e25a4aea0414ff97) +++ suite_leahi/shared/scripts/configuration/utility.py (.../utility.py) (revision 96fd1aec4a34f016b03af48b8bbc34a21d307813) @@ -11,4 +11,18 @@ except LookupError: test.fail("ERROR : " + error_message) return None + +def findObjectById(parent, id): + """ + Recursively searches for a child object by its id. + Returns the found object or None if not found. + """ + if str(parent.id) == id: + return parent + + for child in object.children(parent): + found = findObjectById(child, id) + if found: + return found + return None \ No newline at end of file