Example usage for org.apache.maven.project MavenProject getBasedir

List of usage examples for org.apache.maven.project MavenProject getBasedir

Introduction

In this page you can find the example usage for org.apache.maven.project MavenProject getBasedir.

Prototype

public File getBasedir() 

Source Link

Usage

From source file:org.sourcepit.b2.maven.core.B2MavenBridge.java

License:Apache License

private void connect(MavenSession mavenSession, ResourceSet resourceSet) {
    final Map<File, Project> dirToProjectMap = new HashMap<File, Project>();
    for (MavenProject mavenProject : mavenSession.getProjects()) {
        if (isModuleProject(resourceSet, mavenProject)) {
            if (getContextValue(mavenProject, AbstractModule.class) != null) {
                throw new IllegalStateException("b2 maven bridge already connected");
            }/*from   w ww.  j a v a  2 s.  c o m*/

            final URI uri = B2MavenBridge.toArtifactURI(mavenProject, "module", null);
            final AbstractModule module = (AbstractModule) resourceSet.getResource(uri, true).getContents()
                    .get(0);

            mavenProject.setContextValue(AbstractModule.class.getName(), module);

            for (ProjectFacet<Project> projectFacet : module.getFacets(ProjectFacet.class)) {
                for (Project project : projectFacet.getProjects()) {
                    dirToProjectMap.put(project.getDirectory(), project);
                }
            }

            final File moduleDir = module.getDirectory();
            final File fileFlagsFile = new File(moduleDir, ".b2/moduleDirectory.properties");

            final ModuleDirectory moduleDirectory;
            if (fileFlagsFile.exists()) {
                moduleDirectory = ModuleDirectory.load(moduleDir, fileFlagsFile);
            } else {
                moduleDirectory = new ModuleDirectory(moduleDir, Collections.<File, Integer>emptyMap());
            }

            mavenProject.setContextValue(ModuleDirectory.class.getName(), moduleDirectory);
        }
    }

    for (MavenProject mavenProject : mavenSession.getProjects()) {
        final Project project = dirToProjectMap.get(mavenProject.getBasedir());
        if (project != null) {
            mavenProject.setContextValue(Project.class.getName(), project);
        }
    }
}

From source file:org.sourcepit.b2.maven.internal.wrapper.B2Bootstrapper.java

License:Apache License

@Override
protected void adjustActualSession(MavenSession bootSession, MavenSession actualSession) {
    final File baseDir;
    if (bootSession.getRequest().getPom() == null) {
        baseDir = new File(bootSession.getRequest().getBaseDirectory());
    } else {//  w  w  w  .  j  a v  a  2s .  co m
        baseDir = bootSession.getRequest().getPom().getParentFile();
    }

    MavenProject mainBootProject = null;
    for (MavenProject bootProject : bootSession.getProjects()) {
        if (baseDir.equals(bootProject.getBasedir())) {
            mainBootProject = bootProject;
            break;
        }
    }

    final File pom = (File) mainBootProject.getContextValue("pom");
    if (pom != null) {
        final MavenExecutionRequest request = actualSession.getRequest();
        request.setPom(pom);
    }
}

From source file:org.sourcepit.b2.p2.MavenDependenciesSiteGenerator.java

License:Apache License

@Override
protected void generate(Annotatable inputElement, boolean skipFacets, PropertiesSource propertie,
        ITemplates templates, ModuleDirectory moduleDirectory) {
    if (inputElement instanceof AbstractModule) {
        final AbstractModule module = (AbstractModule) inputElement;

        final Set<AbstractModule> requiredModules = new LinkedHashSet<AbstractModule>();
        requiredModules.add(module);//from  w  w  w.j ava  2s  . c  om
        requiredModules.addAll(contextResolver.resolveResolutionContext(module, false).keySet());
        requiredModules.addAll(contextResolver.resolveResolutionContext(module, true).keySet());

        final Set<File> projectDirs = new HashSet<File>();
        for (MavenProject project : legacySupport.getSession().getProjects()) {
            projectDirs.add(project.getBasedir());
        }

        for (AbstractModule requiredModule : requiredModules) {
            if (projectDirs.contains(requiredModule.getDirectory())) // only if in reactor
            {
                addMavenDependenciesRepository(module, requiredModule);
            }
        }
    }
}

From source file:org.sourcepit.b2.release.B2ReleaseHelper.java

License:Apache License

public MavenProject adaptModuleProject(MavenProject reactorProject) {
    MavenProject moduleProject = (MavenProject) reactorProject.getContextValue("b2.moduleProject");
    if (moduleProject == null) {
        if (bridge.getModule(reactorProject) != null) {
            moduleProject = (MavenProject) reactorProject.clone();
            moduleProject.setFile(new File(reactorProject.getBasedir(), "module.xml"));
            reactorProject.setContextValue("b2.moduleProject", moduleProject);
        }/*from  w  w w  .  j  ava 2s  .  co  m*/
    }
    return moduleProject;
}

From source file:org.sourcepit.b2.release.B2ReleaseHelper.java

License:Apache License

private void rewriteBundleVersion(ReleaseResult result, ReleaseDescriptor releaseDescriptor,
        ReleaseEnvironment releaseEnvironment, MavenProject mavenProject, boolean release, boolean simulate) {
    final String mavenVersion = determineNewMavenVersion(releaseDescriptor, mavenProject, release);

    final String osgiVersion = toOSGiVersion(mavenVersion);

    final File manifestFile = new File(mavenProject.getBasedir(), "META-INF/MANIFEST.MF");
    if (!manifestFile.canRead()) {
        throw Exceptions.pipe(new FileNotFoundException(manifestFile.getPath()));
    }//  ww w. j  ava 2s. c o  m

    scmHelper.edit(mavenProject, releaseDescriptor, releaseEnvironment.getSettings(), manifestFile, simulate);

    final BundleManifest manifest = readBundleManifest(manifestFile);
    manifest.setBundleVersion(osgiVersion);
    try {
        manifest.eResource().save(null);
    } catch (IOException e) {
        throw Exceptions.pipe(e);
    }
}

From source file:org.sourcepit.common.maven.core.MavenProjectUtils.java

License:Apache License

@NotNull
private static File getProjectBaseDir(MavenProject project) {
    return project.getBasedir();
}

From source file:org.sourcepit.common.maven.testing.EmbeddedMaven.java

License:Apache License

public MavenExecutionResult2 buildProject(File pom, Properties userProperties, boolean resolveDependencies)
        throws Exception {
    final MavenExecutionRequest request = newMavenExecutionRequest(pom, newSystemProperties(), userProperties,
            "compile");
    request.getProjectBuildingRequest().setProcessPlugins(false);
    request.getProjectBuildingRequest().setResolveDependencies(resolveDependencies);

    final MavenSession[] session = new MavenSession[1];
    request.setExecutionListener(new ChainedExecutionListener(request.getExecutionListener()) {
        @Override/*from  w  w w  .ja  v  a 2s.  c o m*/
        public void sessionStarted(ExecutionEvent event) {
            super.sessionStarted(event);
            session[0] = event.getSession();
            throw new IllegalStateException();
        }
    });

    final MavenExecutionResult2 tmpResult = execute(request);
    if (session[0] == null) {
        if (tmpResult.hasExceptions()) {
            throw new IllegalStateException(tmpResult.getExceptions().get(0));
        }
    }

    final MavenExecutionResult2 result = new MavenExecutionResult2Impl(session[0], session[0].getResult());
    if (request.getProjectBuildingRequest().isResolveDependencies()) {
        Set<Artifact> projectArtifacts = new HashSet<Artifact>();

        for (MavenProject mavenProject : result.getTopologicallySortedProjects()) {
            File artifactFile = MavenProjectUtils.getOutputDir(mavenProject);
            if (artifactFile == null) {
                artifactFile = mavenProject.getBasedir();
            }
            mavenProject.getArtifact().setFile(artifactFile);
            mavenProject.getArtifact().setResolved(true);

            projectArtifacts.add(mavenProject.getArtifact());

            mavenProject.addLifecyclePhase("clean");
            mavenProject.addLifecyclePhase("process-resources");
            mavenProject.addLifecyclePhase("compile");

            ArrayList<String> scopesToCollect = new ArrayList<String>();
            Collections.addAll(scopesToCollect, "system", "compile", "provided", "runtime", "test");

            try {
                resolver.resolveProjectDependencies(mavenProject, scopesToCollect, scopesToCollect,
                        result.getSession(), true, Collections.<Artifact>emptySet());
            } catch (LifecycleExecutionException e) {
                result.addException(e);
            }

            mavenProject.setArtifactFilter(new CumulativeScopeArtifactFilter(scopesToCollect));
        }
    }
    if (result.hasExceptions()) {
        throw new IllegalStateException(result.getExceptions().get(0));
    }

    return result;
}

From source file:org.sourcepit.osgifier.maven.GenerateManifestMojo.java

License:Apache License

@Override
protected void doExecute() throws MojoExecutionException, MojoFailureException {
    final MavenProject project = buildContext.getSession().getCurrentProject();

    final ArtifactManifestBuilderRequest request = newManifestRequest(project);

    final ArtifactManifestBuilderResult result = manifestBuilder.buildManifest(request);
    project.setContextValue("osgifier.manifestBuilderResult", result);

    final BundleManifest manifest = result.getBundleManifest();
    write(bundleOutputDirectory, manifest, result.getBundleLocalization());

    final BundleManifest sourceManifest = result.getSourceBundleManifest();
    if (sourceManifest != null) {
        write(sourceBundleOutputDirectory, sourceManifest, result.getSourceBundleLocalization());
    }//from   w  ww .jav a  2  s .c  om

    if (pde) {
        // set as derived
        try {
            copyDirectory(bundleOutputDirectory, project.getBasedir());
        } catch (IOException e) {
            throw pipe(e);
        }
    }
}

From source file:org.sourcepit.tpmp.b2.B2Utils.java

License:Apache License

public static File findModuleXML(MavenSession session, MavenProject project) {
    final File moduleXML = findModuleXML(project.getBasedir());
    if (moduleXML != null && findModuleProject(session, moduleXML) != null) {
        return moduleXML;
    }//from  w  ww.j  a  va2s  .  c  om
    return null;
}

From source file:org.sourcepit.tpmp.b2.B2Utils.java

License:Apache License

public static MavenProject findModuleProject(MavenSession session, final File moduleXML) {
    final File moduleDir = moduleXML.getParentFile();
    for (MavenProject mavenProject : session.getProjects()) {
        if (moduleDir.equals(mavenProject.getBasedir())) {
            return mavenProject;
        }//ww w.j a  v  a2s. com
    }
    return null;
}