private static JobStatusTreeNode loadTreeNode(
IJobStatus parentStatus,
HierarchicalConfiguration jobXML, String suiteName,
IJobStatusStore store) throws IOException {
if (jobXML == null) {
return null;
}
String jobId = jobXML.getString("[@name]");
IJobStatus jobStatus = store.read(suiteName, jobId);
List<HierarchicalConfiguration> xmls = jobXML.configurationsAt("job");
List<JobStatusTreeNode> childNodes = new ArrayList<JobStatusTreeNode>();
if (xmls != null) {
for (HierarchicalConfiguration xml : xmls) {
JobStatusTreeNode child = loadTreeNode(
jobStatus, xml, suiteName, store);
if (child != null) {
childNodes.add(child);
}
}
}
return new JobStatusTreeNode(parentStatus, jobStatus, childNodes);
}