Class FilesetArchetypeCreator
- java.lang.Object
-
- org.codehaus.plexus.logging.AbstractLogEnabled
-
- org.apache.maven.archetype.creator.FilesetArchetypeCreator
-
- All Implemented Interfaces:
ArchetypeCreator,org.codehaus.plexus.logging.LogEnabled
@Component(role=ArchetypeCreator.class, hint="fileset") public class FilesetArchetypeCreator extends org.codehaus.plexus.logging.AbstractLogEnabled implements ArchetypeCreator
Create a 2.x Archetype project from a project. Since 2.0-alpha-5, an integration-test named "basic" is created along the archetype itself to provide immediate test when building the archetype.
-
-
Field Summary
Fields Modifier and Type Field Description private ArchetypeFilesResolverarchetypeFilesResolverprivate static java.lang.StringDEFAULT_OUTPUT_DIRECTORYprivate org.apache.maven.shared.invoker.Invokerinvokerprivate static java.lang.StringMAVEN_PROPERTIESprivate PomManagerpomManager-
Fields inherited from interface org.apache.maven.archetype.creator.ArchetypeCreator
ROLE
-
-
Constructor Summary
Constructors Constructor Description FilesetArchetypeCreator()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private java.util.List<java.lang.String>addLists(java.util.List<java.lang.String> list, java.util.List<java.lang.String> other)private voidaddRequiredProperties(ArchetypeDescriptor archetypeDescriptor, java.util.Properties properties)private java.util.List<java.lang.String>concatenateToList(java.util.List<java.lang.String> toConcatenate, java.lang.String with)private voidcopyFiles(java.io.File basedir, java.io.File archetypeFilesDirectory, java.lang.String directory, java.util.List<java.lang.String> fileSetResources, boolean packaged, java.lang.String packageName, java.util.Properties reverseProperties)private voidcopyResource(java.lang.String name, java.io.File destination)voidcreateArchetype(ArchetypeCreationRequest request, ArchetypeCreationResult result)private voidcreateArchetypeBasicIt(ArchetypeDescriptor archetypeDescriptor, java.io.File generatedSourcesDirectory)Create an archetype IT, ie goals.txt and archetype.properties in src/test/resources/projects/basic.private voidcreateArchetypeFiles(java.util.Properties reverseProperties, java.util.List<FileSet> fileSets, java.lang.String packageName, java.io.File basedir, java.io.File archetypeFilesDirectory, java.lang.String defaultEncoding, java.util.List<java.lang.String> excludePatterns)private voidcreateArchetypePom(org.apache.maven.model.Model pom, java.io.File archetypeFilesDirectory, java.util.Properties pomReversedProperties, java.io.File initialPomFile, boolean preserveCData, boolean keepParent)private java.io.FilecreateArchetypeProjectPom(org.apache.maven.project.MavenProject project, org.apache.maven.project.ProjectBuildingRequest buildingRequest, java.util.Properties configurationProperties, java.io.File projectDir)Create the archetype project pom.xml file, that will be used to build the archetype.private FileSetcreateFileSet(java.util.List<java.lang.String> excludes, boolean packaged, boolean filtered, java.lang.String group, java.util.List<java.lang.String> includes, java.lang.String defaultEncoding)private java.util.List<FileSet>createFileSets(java.util.List<java.lang.String> files, int level, boolean packaged, java.lang.String packageName, boolean filtered, java.lang.String defaultEncoding)private ModuleDescriptorcreateModule(java.util.Properties reverseProperties, java.lang.String rootArtifactId, java.lang.String moduleId, java.lang.String packageName, java.io.File basedir, java.io.File archetypeFilesDirectory, java.util.List<java.lang.String> languages, java.util.List<java.lang.String> filtereds, java.lang.String defaultEncoding, boolean preserveCData, boolean keepParent)private voidcreateModulePom(org.apache.maven.model.Model pom, java.lang.String rootArtifactId, java.io.File archetypeFilesDirectory, java.util.Properties pomReversedProperties, java.io.File initialPomFile, boolean preserveCData, boolean keepParent)private voidcreateModulePoms(java.util.Properties pomReversedProperties, java.lang.String rootArtifactId, java.lang.String packageName, java.io.File basedir, java.io.File archetypeFilesDirectory, boolean preserveCData, boolean keepParent)private voidcreatePoms(org.apache.maven.model.Model pom, java.lang.String rootArtifactId, java.lang.String artifactId, java.io.File archetypeFilesDirectory, java.io.File basedir, java.io.File rootPom, java.util.Properties pomReversedProperties, boolean preserveCData, boolean keepParent)private voidextractPropertiesFromProject(org.apache.maven.project.MavenProject project, java.util.Properties properties, java.util.Properties configurationProperties, java.lang.String packageName)java.lang.StringgetArchetypeVersion()private java.util.Set<java.lang.String>getExtensions(java.util.List<java.lang.String> files)private java.util.Map<java.lang.String,java.util.List<java.lang.String>>getGroupsMap(java.util.List<java.lang.String> files, int level)private FileSetgetPackagedFileSet(boolean filtered, java.util.Set<java.lang.String> packagedExtensions, java.lang.String group, java.util.Set<java.lang.String> unpackagedExtensions, java.util.List<java.lang.String> unpackagedFiles, java.lang.String defaultEncoding)private java.util.List<FileSet>getPackagedFileSets(boolean filtered, java.lang.String group, java.util.List<java.lang.String> groupFiles, java.lang.String packageName, java.lang.String defaultEncoding)private java.lang.StringgetPackageInPathFormat(java.lang.String aPackage)private java.lang.StringgetReversedContent(java.lang.String content, java.util.Properties properties)private java.lang.StringgetReversedFilename(java.lang.String filename, java.util.Properties properties)private java.lang.StringgetReversedPlainContent(java.lang.String content, java.util.Properties properties)private java.util.PropertiesgetReversedProperties(ArchetypeDescriptor archetypeDescriptor, java.util.Properties properties)private java.lang.StringgetTemplateOutputDirectory()private FileSetgetUnpackagedFileSet(boolean filtered, java.lang.String group, java.util.List<java.lang.String> groupFiles, java.lang.String defaultEncoding)private FileSetgetUnpackagedFileSet(boolean filtered, java.util.Set<java.lang.String> unpackagedExtensions, java.util.List<java.lang.String> unpackagedFiles, java.lang.String group, java.util.Set<java.lang.String> packagedExtensions, java.lang.String defaultEncoding)private voidprocessFileSet(java.io.File basedir, java.io.File archetypeFilesDirectory, java.lang.String directory, java.util.List<java.lang.String> fileSetResources, boolean packaged, java.lang.String packageName, java.util.Properties reverseProperties, java.lang.String defaultEncoding)private java.util.List<java.lang.String>resolveFileNames(org.apache.maven.model.Model pom, java.io.File basedir, java.util.List<java.lang.String> excludePatterns)private java.util.List<FileSet>resolveFileSets(java.lang.String packageName, java.util.List<java.lang.String> fileNames, java.util.List<java.lang.String> languages, java.util.List<java.lang.String> filtereds, java.lang.String defaultEncoding)private voidrestoreArtifactId(java.util.Properties properties, java.lang.String artifactId)private voidrestoreParentArtifactId(java.util.Properties properties, java.lang.String parentArtifactId)private voidrewriteDependencyReferences(org.apache.maven.model.Dependency dependency, java.lang.String rootArtifactId, java.lang.String groupId)private voidrewriteEARPluginReferences(org.apache.maven.model.Plugin plugin, java.lang.String rootArtifactId, java.lang.String groupId)private voidrewritePluginReferences(org.apache.maven.model.Plugin plugin, java.lang.String rootArtifactId, java.lang.String groupId)private voidrewriteReferences(org.apache.maven.model.Model pom, java.lang.String rootArtifactId, java.lang.String groupId)private voidsetArtifactId(java.util.Properties properties, java.lang.String artifactId)private voidsetParentArtifactId(java.util.Properties properties, java.lang.String parentArtifactId)
-
-
-
Field Detail
-
DEFAULT_OUTPUT_DIRECTORY
private static final java.lang.String DEFAULT_OUTPUT_DIRECTORY
-
archetypeFilesResolver
@Requirement private ArchetypeFilesResolver archetypeFilesResolver
-
pomManager
@Requirement private PomManager pomManager
-
invoker
@Requirement private org.apache.maven.shared.invoker.Invoker invoker
-
MAVEN_PROPERTIES
private static final java.lang.String MAVEN_PROPERTIES
- See Also:
- Constant Field Values
-
-
Method Detail
-
createArchetype
public void createArchetype(ArchetypeCreationRequest request, ArchetypeCreationResult result)
- Specified by:
createArchetypein interfaceArchetypeCreator
-
createArchetypeBasicIt
private void createArchetypeBasicIt(ArchetypeDescriptor archetypeDescriptor, java.io.File generatedSourcesDirectory) throws java.io.IOException
Create an archetype IT, ie goals.txt and archetype.properties in src/test/resources/projects/basic.- Parameters:
archetypeDescriptor-generatedSourcesDirectory-- Throws:
java.io.IOException- Since:
- 2.0-alpha-5
-
extractPropertiesFromProject
private void extractPropertiesFromProject(org.apache.maven.project.MavenProject project, java.util.Properties properties, java.util.Properties configurationProperties, java.lang.String packageName)
-
createArchetypeProjectPom
private java.io.File createArchetypeProjectPom(org.apache.maven.project.MavenProject project, org.apache.maven.project.ProjectBuildingRequest buildingRequest, java.util.Properties configurationProperties, java.io.File projectDir) throws TemplateCreationException, java.io.IOExceptionCreate the archetype project pom.xml file, that will be used to build the archetype.- Throws:
TemplateCreationExceptionjava.io.IOException
-
copyResource
private void copyResource(java.lang.String name, java.io.File destination) throws java.io.IOException- Throws:
java.io.IOException
-
addRequiredProperties
private void addRequiredProperties(ArchetypeDescriptor archetypeDescriptor, java.util.Properties properties)
-
createModulePoms
private void createModulePoms(java.util.Properties pomReversedProperties, java.lang.String rootArtifactId, java.lang.String packageName, java.io.File basedir, java.io.File archetypeFilesDirectory, boolean preserveCData, boolean keepParent) throws java.io.FileNotFoundException, java.io.IOException, org.codehaus.plexus.util.xml.pull.XmlPullParserException- Throws:
java.io.FileNotFoundExceptionjava.io.IOExceptionorg.codehaus.plexus.util.xml.pull.XmlPullParserException
-
createPoms
private void createPoms(org.apache.maven.model.Model pom, java.lang.String rootArtifactId, java.lang.String artifactId, java.io.File archetypeFilesDirectory, java.io.File basedir, java.io.File rootPom, java.util.Properties pomReversedProperties, boolean preserveCData, boolean keepParent) throws java.io.IOException, java.io.FileNotFoundException, org.codehaus.plexus.util.xml.pull.XmlPullParserException- Throws:
java.io.IOExceptionjava.io.FileNotFoundExceptionorg.codehaus.plexus.util.xml.pull.XmlPullParserException
-
getPackageInPathFormat
private java.lang.String getPackageInPathFormat(java.lang.String aPackage)
-
rewriteReferences
private void rewriteReferences(org.apache.maven.model.Model pom, java.lang.String rootArtifactId, java.lang.String groupId)
-
rewriteDependencyReferences
private void rewriteDependencyReferences(org.apache.maven.model.Dependency dependency, java.lang.String rootArtifactId, java.lang.String groupId)
-
rewritePluginReferences
private void rewritePluginReferences(org.apache.maven.model.Plugin plugin, java.lang.String rootArtifactId, java.lang.String groupId)
-
rewriteEARPluginReferences
private void rewriteEARPluginReferences(org.apache.maven.model.Plugin plugin, java.lang.String rootArtifactId, java.lang.String groupId)
-
setArtifactId
private void setArtifactId(java.util.Properties properties, java.lang.String artifactId)
-
concatenateToList
private java.util.List<java.lang.String> concatenateToList(java.util.List<java.lang.String> toConcatenate, java.lang.String with)
-
addLists
private java.util.List<java.lang.String> addLists(java.util.List<java.lang.String> list, java.util.List<java.lang.String> other)
-
copyFiles
private void copyFiles(java.io.File basedir, java.io.File archetypeFilesDirectory, java.lang.String directory, java.util.List<java.lang.String> fileSetResources, boolean packaged, java.lang.String packageName, java.util.Properties reverseProperties) throws java.io.IOException- Throws:
java.io.IOException
-
createArchetypeFiles
private void createArchetypeFiles(java.util.Properties reverseProperties, java.util.List<FileSet> fileSets, java.lang.String packageName, java.io.File basedir, java.io.File archetypeFilesDirectory, java.lang.String defaultEncoding, java.util.List<java.lang.String> excludePatterns) throws java.io.IOException- Throws:
java.io.IOException
-
createArchetypePom
private void createArchetypePom(org.apache.maven.model.Model pom, java.io.File archetypeFilesDirectory, java.util.Properties pomReversedProperties, java.io.File initialPomFile, boolean preserveCData, boolean keepParent) throws java.io.IOException- Throws:
java.io.IOException
-
createFileSet
private FileSet createFileSet(java.util.List<java.lang.String> excludes, boolean packaged, boolean filtered, java.lang.String group, java.util.List<java.lang.String> includes, java.lang.String defaultEncoding)
-
createFileSets
private java.util.List<FileSet> createFileSets(java.util.List<java.lang.String> files, int level, boolean packaged, java.lang.String packageName, boolean filtered, java.lang.String defaultEncoding)
-
createModule
private ModuleDescriptor createModule(java.util.Properties reverseProperties, java.lang.String rootArtifactId, java.lang.String moduleId, java.lang.String packageName, java.io.File basedir, java.io.File archetypeFilesDirectory, java.util.List<java.lang.String> languages, java.util.List<java.lang.String> filtereds, java.lang.String defaultEncoding, boolean preserveCData, boolean keepParent) throws java.io.IOException, org.codehaus.plexus.util.xml.pull.XmlPullParserException
- Throws:
java.io.IOExceptionorg.codehaus.plexus.util.xml.pull.XmlPullParserException
-
createModulePom
private void createModulePom(org.apache.maven.model.Model pom, java.lang.String rootArtifactId, java.io.File archetypeFilesDirectory, java.util.Properties pomReversedProperties, java.io.File initialPomFile, boolean preserveCData, boolean keepParent) throws java.io.IOException- Throws:
java.io.IOException
-
getExtensions
private java.util.Set<java.lang.String> getExtensions(java.util.List<java.lang.String> files)
-
getGroupsMap
private java.util.Map<java.lang.String,java.util.List<java.lang.String>> getGroupsMap(java.util.List<java.lang.String> files, int level)
-
getPackagedFileSet
private FileSet getPackagedFileSet(boolean filtered, java.util.Set<java.lang.String> packagedExtensions, java.lang.String group, java.util.Set<java.lang.String> unpackagedExtensions, java.util.List<java.lang.String> unpackagedFiles, java.lang.String defaultEncoding)
-
getPackagedFileSets
private java.util.List<FileSet> getPackagedFileSets(boolean filtered, java.lang.String group, java.util.List<java.lang.String> groupFiles, java.lang.String packageName, java.lang.String defaultEncoding)
-
setParentArtifactId
private void setParentArtifactId(java.util.Properties properties, java.lang.String parentArtifactId)
-
processFileSet
private void processFileSet(java.io.File basedir, java.io.File archetypeFilesDirectory, java.lang.String directory, java.util.List<java.lang.String> fileSetResources, boolean packaged, java.lang.String packageName, java.util.Properties reverseProperties, java.lang.String defaultEncoding) throws java.io.IOException- Throws:
java.io.IOException
-
getReversedProperties
private java.util.Properties getReversedProperties(ArchetypeDescriptor archetypeDescriptor, java.util.Properties properties)
-
resolveFileNames
private java.util.List<java.lang.String> resolveFileNames(org.apache.maven.model.Model pom, java.io.File basedir, java.util.List<java.lang.String> excludePatterns) throws java.io.IOException- Throws:
java.io.IOException
-
resolveFileSets
private java.util.List<FileSet> resolveFileSets(java.lang.String packageName, java.util.List<java.lang.String> fileNames, java.util.List<java.lang.String> languages, java.util.List<java.lang.String> filtereds, java.lang.String defaultEncoding)
-
restoreArtifactId
private void restoreArtifactId(java.util.Properties properties, java.lang.String artifactId)
-
restoreParentArtifactId
private void restoreParentArtifactId(java.util.Properties properties, java.lang.String parentArtifactId)
-
getReversedContent
private java.lang.String getReversedContent(java.lang.String content, java.util.Properties properties)
-
getReversedPlainContent
private java.lang.String getReversedPlainContent(java.lang.String content, java.util.Properties properties)
-
getReversedFilename
private java.lang.String getReversedFilename(java.lang.String filename, java.util.Properties properties)
-
getTemplateOutputDirectory
private java.lang.String getTemplateOutputDirectory()
-
getUnpackagedFileSet
private FileSet getUnpackagedFileSet(boolean filtered, java.lang.String group, java.util.List<java.lang.String> groupFiles, java.lang.String defaultEncoding)
-
getUnpackagedFileSet
private FileSet getUnpackagedFileSet(boolean filtered, java.util.Set<java.lang.String> unpackagedExtensions, java.util.List<java.lang.String> unpackagedFiles, java.lang.String group, java.util.Set<java.lang.String> packagedExtensions, java.lang.String defaultEncoding)
-
getArchetypeVersion
public java.lang.String getArchetypeVersion()
-
-