in org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/workspaceresolver/WorkspaceResourceChangeListener.java [106:137]
private void projectOpened(IResourceChangeEvent event) {
// Find out if a project was opened.
IResourceDelta delta = event.getDelta();
if (delta == null) {
return;
}
final Collection<IResource> projects = new LinkedHashSet<>();
for (IResourceDelta projectDelta : delta.getAffectedChildren(IResourceDelta.CHANGED)) {
if ((projectDelta.getFlags() & IResourceDelta.OPEN) == 0) {
continue;
}
IResource resource = projectDelta.getResource();
if (!(resource instanceof IProject)) {
continue;
}
if (IvyNatureHelper.hasNature((IProject) resource)) {
projects.add(resource);
}
}
if (projects.size() == 0) {
return;
}
// Let's try to be nice and use the workspace method to schedule resolves in
// dependent projects after the open operation has finished.
for (IvyClasspathContainer container : getAllContainersExcludingProjects(projects)) {
container.launchResolve(false, null);
}
}