Example usage for org.apache.maven.model.building ModelBuildingRequest setModelSource

List of usage examples for org.apache.maven.model.building ModelBuildingRequest setModelSource

Introduction

In this page you can find the example usage for org.apache.maven.model.building ModelBuildingRequest setModelSource.

Prototype

ModelBuildingRequest setModelSource(ModelSource modelSource);

Source Link

Document

Sets the source of the POM to process.

Usage

From source file:org.ModelBuilderDemo.java

License:Open Source License

public static void main(String[] args) throws Exception {
    /*/*w ww . jav  a2s. c  o  m*/
     * setup the container and get us some interesting components
     */

    PlexusContainer container = new DefaultPlexusContainer();

    ModelBuilder modelBuilder = container.lookup(ModelBuilder.class);

    ModelWriter modelWriter = container.lookup(ModelWriter.class);

    /*
     * build some effective model
     */

    ModelSource modelSource = new UrlModelSource(
            ModelBuilderDemo.class.getResource("/repo/demo/dependency/1.0/pom.xml"));

    ModelBuildingRequest request = new DefaultModelBuildingRequest();

    request.setModelSource(modelSource);
    request.setValidationLevel(ModelBuildingRequest.VALIDATION_LEVEL_MINIMAL);
    request.setSystemProperties(System.getProperties());
    request.setModelResolver(new SimpleModelResolver());

    ModelBuildingResult result = modelBuilder.build(request);

    Model effectivePom = result.getEffectiveModel();

    StringWriter writer = new StringWriter();
    modelWriter.write(writer, null, effectivePom);
    System.out.println(writer.toString());
}

From source file:org.sonatype.sisu.maven.bridge.internal.DefaultMavenBridge.java

License:Open Source License

public Model buildModel(File pom, Repository... repositories) throws ModelBuildingException {
    ModelResolver mr = modelResolver.newCopy();
    if (repositories != null) {
        for (Repository repository : repositories) {
            try {
                mr.addRepository(repository);
            } catch (InvalidRepositoryException e) {
                logger.warn(String.format("Could not use repository [%s]", repository.getUrl()), e);
            }/*  w w  w  .j  a  va2 s . c  o m*/
        }
    }

    ModelBuildingRequest modelRequest = new DefaultModelBuildingRequest();
    modelRequest.setModelSource(new FileModelSource(pom));
    modelRequest.setSystemProperties(System.getProperties());
    modelRequest.setValidationLevel(ModelBuildingRequest.VALIDATION_LEVEL_MINIMAL);
    modelRequest.setLocationTracking(false);
    modelRequest.setProcessPlugins(false);
    modelRequest.setModelResolver(mr);

    ModelBuildingResult modelResult = modelBuilder.build(modelRequest);
    Model model = modelResult.getEffectiveModel();
    return model;
}

From source file:org.talend.components.api.service.internal.ComponentServiceImpl.java

License:Open Source License

Model loadPom(final InputStream pomStream, MavenBooter booter, List<String> profilesList)
        throws ModelBuildingException {

    RepositorySystem system = booter.newRepositorySystem();
    RepositorySystemSession session = booter.newRepositorySystemSession(system);
    ModelBuildingRequest modelRequest = new DefaultModelBuildingRequest();
    modelRequest.setValidationLevel(ModelBuildingRequest.VALIDATION_LEVEL_MINIMAL);
    modelRequest.setProcessPlugins(false);
    modelRequest.setTwoPhaseBuilding(false);
    modelRequest.setSystemProperties(toProperties(session.getUserProperties(), session.getSystemProperties()));
    // modelRequest.setModelCache( DefaultModelCache.newInstance( session ) );
    ProjectModelResolver projectModelResolver = new ProjectModelResolver(session, null, system,
            new DefaultRemoteRepositoryManager(),
            booter.getRemoteRepositoriesWithAuthentification(system, session), null, null);
    modelRequest.setModelResolver(projectModelResolver);
    modelRequest.setActiveProfileIds(profilesList);
    modelRequest.setModelSource(new ModelSource() {

        @Override/*from w  ww.  ja  v  a2  s .c o  m*/
        public InputStream getInputStream() throws IOException {
            return pomStream;
        }

        @Override
        public String getLocation() {
            return "";// FIXME return the component name
        }
    });
    if (modelBuilder == null) {
        modelBuilder = new DefaultModelBuilderFactory().newInstance();
    }
    ModelBuildingResult builtModel = modelBuilder.build(modelRequest);
    LOGGER.debug("built problems:" + builtModel.getProblems());
    return builtModel.getEffectiveModel();
}

From source file:org.vesalainen.test.pom.ModelFactory.java

private Model getModel(ModelSource modelSource, ModelResolver modelResolver) {
    ModelBuildingRequest req = new DefaultModelBuildingRequest();
    req.setProcessPlugins(false);//from  w  w  w  .j  a  v a 2  s. c  om
    req.setModelSource(modelSource);
    req.setModelResolver(modelResolver);
    req.setValidationLevel(ModelBuildingRequest.VALIDATION_LEVEL_MINIMAL);

    DefaultModelProcessor modelProcessor = new DefaultModelProcessor().setModelReader(new DefaultModelReader());
    DefaultSuperPomProvider superPomProvider = new DefaultSuperPomProvider().setModelProcessor(modelProcessor);
    DefaultPathTranslator pathTranslator = new DefaultPathTranslator();
    DefaultUrlNormalizer urlNormalizer = new DefaultUrlNormalizer();
    StringSearchModelInterpolator stringSearchModelInterpolator = (StringSearchModelInterpolator) new StringSearchModelInterpolator()
            .setPathTranslator(pathTranslator).setUrlNormalizer(urlNormalizer);
    DefaultModelUrlNormalizer modelUrlNormalizer = new DefaultModelUrlNormalizer()
            .setUrlNormalizer(urlNormalizer);
    DefaultModelPathTranslator modelPathTranslator = new DefaultModelPathTranslator()
            .setPathTranslator(pathTranslator);
    ModelBuilder builder = new DefaultModelBuilder()
            .setDependencyManagementImporter(new DefaultDependencyManagementImporter())
            .setDependencyManagementInjector(new DefaultDependencyManagementInjector())
            .setInheritanceAssembler(new DefaultInheritanceAssembler())
            .setModelNormalizer(new DefaultModelNormalizer()).setModelPathTranslator(modelPathTranslator)
            .setModelProcessor(modelProcessor).setModelUrlNormalizer(modelUrlNormalizer)
            .setModelValidator(new DefaultModelValidator())
            .setPluginConfigurationExpander(new DefaultPluginConfigurationExpander())
            .setPluginManagementInjector(new DefaultPluginManagementInjector())
            .setProfileInjector(new DefaultProfileInjector()).setProfileSelector(new DefaultProfileSelector())
            .setReportConfigurationExpander(new DefaultReportConfigurationExpander())
            .setReportingConverter(new DefaultReportingConverter()).setSuperPomProvider(superPomProvider)
            .setModelInterpolator(stringSearchModelInterpolator);
    try {
        return builder.build(req).getEffectiveModel();
    } catch (ModelBuildingException ex) {
        throw new RuntimeException(ex);
    }
}