private List getAffectedContainers()

in org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/workspaceresolver/WorkspaceResourceChangeListener.java [145:174]


    private List<IvyClasspathContainer> getAffectedContainers(IPath projectPath) {
        List<IvyClasspathContainer> allContainers = new ArrayList<>();

        IWorkspaceRoot root = ResourcesPlugin.getWorkspace().getRoot();
        IJavaProject[] projects;
        try {
            projects = JavaCore.create(root).getJavaProjects();
        } catch (JavaModelException e) {
            // something bad happened in the JDT...
            IvyPlugin.log(e);
            return allContainers;
        }

        for (IJavaProject javaProject : projects) {
            for (IvyClasspathContainer container : IvyClasspathContainerHelper.getContainers(javaProject)) {
                IvyClasspathContainerImpl ivycp = (IvyClasspathContainerImpl) container;
                for (IClasspathEntry containerEntry : ivycp.getClasspathEntries()) {
                    if (containerEntry == null
                            || containerEntry.getEntryKind() != IClasspathEntry.CPE_PROJECT
                            || !containerEntry.getPath().equals(projectPath)) {
                        continue;
                    }
                    allContainers.add(ivycp);
                    break;
                }
            }
        }

        return allContainers;
    }