def get_child_node_id(cid): if not msc.MSC.row_with_cid_exists(cid, 1): return None colnames = ["id"] results = msc.MSC.get_child_collection(colnames, cid) if msc.is_data_valid(results): # get and return only id from the list return [row[0] for row in results]
def create_and_link_child_nodes(self): colnames = ["id", "parent_id"] results = msc.MSC.get_child_collection(colnames, self.cid) # for each row / node in results, create TreeNode object and link to the current node if msc.is_data_valid(results): for row in results: cid, parent_id = row child_node = TreeNode(int(cid)) self.add_child(child_node)
def rec_print_tree_db(cid, max_level, level=0): # recursive ##print TreeNode.get_node_info_with_cid(cid, level) print msc.prepend_columns_string(TreeNode.get_node_info_with_cid(cid, level), level, 8) new_level = level + 1 if new_level == max_level: return # stop recursing # get collection id of child nodes child_cids = TreeNode.get_child_node_id(cid) if msc.is_data_valid(child_cids): for cid in child_cids: TreeNode.rec_print_tree_db(cid, max_level, new_level)