in core/src/main/java/org/apache/sdap/mudrod/weblog/structure/session/SessionTree.java [100:134]
public SessionNode insert(SessionNode node) {
// begin with datasetlist
if (MudrodConstants.SEARCH_MARKER.equals(node.getKey())) {
this.binsert = true;
}
if (!this.binsert) {
return null;
}
// remove unrelated node
if (!MudrodConstants.SEARCH_MARKER.equals(node.getKey()) &&
!MudrodConstants.VIEW_MARKER.equals(node.getKey()) &&
!MudrodConstants.FTP_LOG.equals(node.getKey())) {
return null;
}
// remove dumplicated click
if (node.getRequest().equals(tmpnode.getRequest())) {
return null;
}
// search insert node
SessionNode parentnode = this.searchParentNode(node);
if (parentnode == null) {
return null;
}
node.setParent(parentnode);
parentnode.addChildren(node);
// record insert node
tmpnode = node;
if (MudrodConstants.VIEW_MARKER.equals(node.getKey())) {
latestDatasetnode = node;
}
size++;
return node;
}