rendered paste body public void resourceChanged(final IResourceChangeEvent event) {
IResourceDelta delta = event.getDelta();
if (delta == null)
return;
// ignore clean builds
if (event.getBuildKind() == IncrementalProjectBuilder.CLEAN_BUILD)
return;
// search for changes related to Server projects
Trace.trace(Trace.RESOURCES, "->- ServerResourceChangeListener responding to resource change: " + event.getType() + " ->-");
IResourceDelta[] children = delta.getAffectedChildren();
if (children != null) {
int size = children.length;
for (int i = 0; i < size; i++) {
IResource resource = children[i].getResource();
if (resource != null && resource instanceof IProject) {
projectChanged((IProject) resource, children[i]);
}
}
}
// search for changes to any project using a visitor
try {
delta.accept(new IResourceDeltaVisitor() {
public boolean visit(IResourceDelta visitorDelta) {
IResource resource = visitorDelta.getResource();
// only respond to project changes
if (resource != null && resource instanceof IProject) {
publishHandleProjectChange(visitorDelta, event);
return false;
}
return true;
}
});
} catch (Exception e) {
Trace.trace(Trace.SEVERE, "Error responding to resource change", e);
}
Trace.trace(Trace.RESOURCES, "-<- Done ServerResourceChangeListener responding to resource change -<-");
}