handleSaveEvent((SaveEvent) event);
}
}
private void handleSaveEvent(SaveEvent event) {
JcrNode node = event.getNode();
touch(node);
if (node.getDepth() == 0 || node.isNodeType("nt:folder")) {
// go through immediate children to determine if there are any
// modified ones
JcrNodeIterator iterator = node.getNodes();
while (iterator.hasNext()) {
JcrNode n = iterator.nextNode();
if (n.isModified() || n.isNew()) {
touch(n);
} else if (n.hasNode("jcr:content")) {
JcrNode content = n.getNode("jcr:content");
if (content.isModified() || content.isNew()) {
touch(n);
} else if (content.hasProperty("jcr:data")) {
JcrProperty data = content.getProperty("jcr:data");
if (data.isNew() || data.isModified()) {
touch(n);
}
}
}