Example usage for org.apache.maven.execution MavenSession setAllProjects

List of usage examples for org.apache.maven.execution MavenSession setAllProjects

Introduction

In this page you can find the example usage for org.apache.maven.execution MavenSession setAllProjects.

Prototype

public void setAllProjects(List<MavenProject> allProjects) 

Source Link

Document

This is a provisional method and may be removed

Usage

From source file:org.wisdom.maven.mojos.RunMojo.java

License:Apache License

private MavenSession getMavenSession(final MavenProject project, MavenExecutionRequest request) {
    MavenSession newSession = new MavenSession(container, session.getRepositorySession(), request,
            session.getResult());/*from   w w w .  j  a  va  2  s .c o  m*/
    newSession.setAllProjects(session.getAllProjects());
    newSession.setCurrentProject(project);
    newSession.setParallel(session.isParallel());
    // Update project map to update the current project
    Map<String, MavenProject> projectMaps = new LinkedHashMap<>(session.getProjectMap());
    projectMaps.put(ArtifactUtils.key(project.getGroupId(), project.getArtifactId(), project.getVersion()),
            project);
    newSession.setProjectMap(projectMaps);

    /**
     * Fake implementation of the project dependency graph, as we don't support reactor.
     */
    ProjectDependencyGraph graph = new ProjectDependencyGraph() {

        @Override
        public List<MavenProject> getSortedProjects() {
            return ImmutableList.of(project);
        }

        @Override
        public List<MavenProject> getDownstreamProjects(MavenProject project, boolean transitive) {
            return Collections.emptyList();
        }

        @Override
        public List<MavenProject> getUpstreamProjects(MavenProject project, boolean transitive) {
            return Collections.emptyList();
        }
    };
    newSession.setProjectDependencyGraph(graph);
    newSession.setProjects(ImmutableList.of(project));
    return newSession;
}