ArchetypeCreationRequest request = new ArchetypeCreationRequest() .setProject(project) .setProperties(config) .setLanguages(languages) .setFilteredExtensions(filteredExtensions) .setPreserveCData(preserveCDATA) .setKeepParent(keepParent) .setPartialArchetype(partial) .setLocalRepository(rsys.createDefaultLocalRepository()) .setPackageName(packageName); registryFile = new File(dir, ".m2/archetype.xml"); request.setArchetypeRegistryFile(registryFile); request.setOutputDirectory(outputDirectory); io.info("Archetype created in: {}", request.getOutputDirectory().getAbsolutePath()); // TODO: i18n
new ArchetypeCreationRequest().setDefaultEncoding( defaultEncoding ).setProject( project ) /* Used when in interactive mode */.setProperties( properties ).setLanguages( languages ) /* Should be refactored to use some ant patterns */.setFiltereds( filtereds ) /* This should be correctly handled */.setPreserveCData( preserveCData ).setKeepParent( keepParent ).setPartialArchetype( partialArchetype ) .setLocalRepository( localRepository ).setProjectBuildingRequest( session.getProjectBuildingRequest() ) /* this should be resolved and asked for user to verify */.setPackageName( packageName ).setPostPhase( archetypePostPhase ).setOutputDirectory( outputDirectory ).setSettingsFile( session.getRequest().getUserSettingsFile() );
MavenProject project = request.getProject(); List<String> languages = request.getLanguages(); List<String> filtereds = request.getFiltereds(); String defaultEncoding = request.getDefaultEncoding(); boolean preserveCData = request.isPreserveCData(); boolean keepParent = request.isKeepParent(); boolean partialArchetype = request.isPartialArchetype(); File outputDirectory = request.getOutputDirectory(); File basedir = project.getBasedir(); if ( request.getProperties() != null ) properties.putAll( request.getProperties() ); configurationProperties.putAll( request.getProperties() ); extractPropertiesFromProject( project, properties, configurationProperties, request.getPackageName() ); File archetypePomFile = createArchetypeProjectPom( project, request.getProjectBuildingRequest(), configurationProperties, outputDirectory ); if ( request.getProject().getBuild() != null && CollectionUtils.isNotEmpty( request.getProject().getBuild().getResources() ) ) for ( Resource resource : request.getProject().getBuild().getResources() ) internalRequest.setUserSettingsFile( request.getSettingsFile() ); internalRequest.setGoals( Collections.singletonList( request.getPostPhase() ) ); if ( request.getLocalRepository() != null )
public void createArchetype(ArchetypeCreationRequest request, ArchetypeCreationResult result) { MavenProject project = request.getProject(); List<String> languages = request.getLanguages(); List<String> filtereds = request.getFilteredExtensions(); String defaultEncoding = request.getDefaultEncoding(); boolean preserveCData = request.isPreserveCData(); boolean keepParent = request.isKeepParent(); boolean partialArchetype = request.isPartialArchetype(); ArtifactRepository localRepository = request.getLocalRepository(); if (request.getProperties() != null) { properties.putAll(request.getProperties()); configurationProperties.putAll(request.getProperties()); if (request.getPackageName() != null) { properties.setProperty(Constants.PACKAGE, request.getPackageName()); File outputDirectory = request.getOutputDirectory(); File generatedSourcesDirectory = FileUtils.resolveFile(basedir, outputDirectory.getPath()); generatedSourcesDirectory.mkdirs();
new ArchetypeCreationRequest().setDefaultEncoding( defaultEncoding ).setProject( project ) /* Used when in interactive mode */.setProperties( properties ).setLanguages( languages ) /* Should be refactored to use some ant patterns */.setFiltereds( filtereds ) /* This should be correctly handled */.setPreserveCData( preserveCData ).setKeepParent( keepParent ).setPartialArchetype( partialArchetype ) .setLocalRepository( localRepository ).setProjectBuildingRequest( session.getProjectBuildingRequest() ) /* this should be resolved and asked for user to verify */.setPackageName( packageName ).setPostPhase( archetypePostPhase ).setOutputDirectory( outputDirectory );