Search in sources :

Example 1 with LocalProjectScanner

use of org.eclipse.m2e.core.project.LocalProjectScanner in project eclipse.jdt.ls by eclipse.

the class MavenProjectImporter method getMavenProjects.

private Set<MavenProjectInfo> getMavenProjects(File directory, MavenModelManager modelManager, IProgressMonitor monitor) throws OperationCanceledException {
    if (directory == null) {
        return Collections.emptySet();
    }
    try {
        LocalProjectScanner scanner = new LocalProjectScanner(directory.getParentFile(), directory.toString(), false, modelManager);
        scanner.run(monitor);
        return collectProjects(scanner.getProjects());
    } catch (InterruptedException e) {
        throw new OperationCanceledException();
    }
}
Also used : LocalProjectScanner(org.eclipse.m2e.core.project.LocalProjectScanner) OperationCanceledException(org.eclipse.core.runtime.OperationCanceledException)

Example 2 with LocalProjectScanner

use of org.eclipse.m2e.core.project.LocalProjectScanner in project liferay-ide by liferay.

the class MavenUtil method importProject.

public static List<IMavenProjectImportResult> importProject(String location, IProgressMonitor monitor) throws CoreException, InterruptedException {
    MavenModelManager mavenModelManager = MavenPlugin.getMavenModelManager();
    IWorkspaceRoot workspaceRoot = CoreUtil.getWorkspaceRoot();
    File root = workspaceRoot.getLocation().toFile();
    AbstractProjectScanner<MavenProjectInfo> scanner = new LocalProjectScanner(root, location, false, mavenModelManager);
    scanner.run(monitor);
    List<MavenProjectInfo> projects = scanner.getProjects();
    List<MavenProjectInfo> mavenProjects = new ArrayList<>();
    _findChildMavenProjects(mavenProjects, projects);
    mavenProjects = _filterProjects(mavenProjects);
    ProjectImportConfiguration importConfiguration = new ProjectImportConfiguration();
    IProjectConfigurationManager projectConfigurationManager = MavenPlugin.getProjectConfigurationManager();
    return projectConfigurationManager.importProjects(mavenProjects, importConfiguration, monitor);
}
Also used : IWorkspaceRoot(org.eclipse.core.resources.IWorkspaceRoot) ProjectImportConfiguration(org.eclipse.m2e.core.project.ProjectImportConfiguration) LocalProjectScanner(org.eclipse.m2e.core.project.LocalProjectScanner) MavenProjectInfo(org.eclipse.m2e.core.project.MavenProjectInfo) ArrayList(java.util.ArrayList) IProjectConfigurationManager(org.eclipse.m2e.core.project.IProjectConfigurationManager) MavenModelManager(org.eclipse.m2e.core.embedder.MavenModelManager) IFile(org.eclipse.core.resources.IFile) File(java.io.File)

Example 3 with LocalProjectScanner

use of org.eclipse.m2e.core.project.LocalProjectScanner in project jbosstools-openshift by jbosstools.

the class MavenProjectImportOperation method scan.

private Set<MavenProjectInfo> scan(File directory, MavenModelManager modelManager, IProgressMonitor monitor) throws InterruptedException {
    LocalProjectScanner scanner = new LocalProjectScanner(directory.getParentFile(), directory.toString(), false, modelManager);
    scanner.run(monitor);
    return collectProjects(scanner.getProjects());
}
Also used : LocalProjectScanner(org.eclipse.m2e.core.project.LocalProjectScanner)

Example 4 with LocalProjectScanner

use of org.eclipse.m2e.core.project.LocalProjectScanner in project m2e-nar by maven-nar.

the class AbstractTestBuild method importProject.

protected List<IProject> importProject(final String path) {
    final ArrayList<IMavenProjectImportResult> importResults = new ArrayList<IMavenProjectImportResult>();
    Job job = new Job("Importing test project") {

        @Override
        protected IStatus run(IProgressMonitor monitor) {
            try {
                final IProjectConfigurationManager configManager = MavenPlugin.getProjectConfigurationManager();
                final MavenModelManager mavenModelManager = MavenPlugin.getMavenModelManager();
                final ProjectImportConfiguration configuration = new ProjectImportConfiguration();
                final LocalProjectScanner scanner = new LocalProjectScanner(workspace.getRoot().getLocation().toFile(), path, true, mavenModelManager);
                scanner.run(monitor);
                final List<MavenProjectInfo> projects = getProjects(scanner.getProjects());
                workspace.run(new IWorkspaceRunnable() {

                    public void run(IProgressMonitor monitor) throws CoreException {
                        importResults.addAll(configManager.importProjects(projects, configuration, monitor));
                    }
                }, MavenPlugin.getProjectConfigurationManager().getRule(), IWorkspace.AVOID_UPDATE, monitor);
            } catch (CoreException e) {
                return e.getStatus();
            } catch (InterruptedException e) {
                return Status.CANCEL_STATUS;
            }
            return Status.OK_STATUS;
        }
    };
    job.schedule();
    waitForJobs();
    List<IProject> createdProjects = new ArrayList<IProject>();
    for (IMavenProjectImportResult r : importResults) {
        IProject p = r.getProject();
        if (p != null && p.exists()) {
            createdProjects.add(p);
        }
    }
    assertFalse("Could not create project " + path, createdProjects.isEmpty());
    return createdProjects;
}
Also used : IWorkspaceRunnable(org.eclipse.core.resources.IWorkspaceRunnable) LocalProjectScanner(org.eclipse.m2e.core.project.LocalProjectScanner) ArrayList(java.util.ArrayList) IProjectConfigurationManager(org.eclipse.m2e.core.project.IProjectConfigurationManager) IProject(org.eclipse.core.resources.IProject) IMavenProjectImportResult(org.eclipse.m2e.core.project.IMavenProjectImportResult) IProgressMonitor(org.eclipse.core.runtime.IProgressMonitor) ProjectImportConfiguration(org.eclipse.m2e.core.project.ProjectImportConfiguration) CoreException(org.eclipse.core.runtime.CoreException) MavenProjectInfo(org.eclipse.m2e.core.project.MavenProjectInfo) MavenModelManager(org.eclipse.m2e.core.embedder.MavenModelManager) Job(org.eclipse.core.runtime.jobs.Job)

Aggregations

LocalProjectScanner (org.eclipse.m2e.core.project.LocalProjectScanner)4 ArrayList (java.util.ArrayList)2 MavenModelManager (org.eclipse.m2e.core.embedder.MavenModelManager)2 IProjectConfigurationManager (org.eclipse.m2e.core.project.IProjectConfigurationManager)2 MavenProjectInfo (org.eclipse.m2e.core.project.MavenProjectInfo)2 ProjectImportConfiguration (org.eclipse.m2e.core.project.ProjectImportConfiguration)2 File (java.io.File)1 IFile (org.eclipse.core.resources.IFile)1 IProject (org.eclipse.core.resources.IProject)1 IWorkspaceRoot (org.eclipse.core.resources.IWorkspaceRoot)1 IWorkspaceRunnable (org.eclipse.core.resources.IWorkspaceRunnable)1 CoreException (org.eclipse.core.runtime.CoreException)1 IProgressMonitor (org.eclipse.core.runtime.IProgressMonitor)1 OperationCanceledException (org.eclipse.core.runtime.OperationCanceledException)1 Job (org.eclipse.core.runtime.jobs.Job)1 IMavenProjectImportResult (org.eclipse.m2e.core.project.IMavenProjectImportResult)1