private void projectOpened()

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);
        }
    }