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 static final java.lang.String
     
    private org.apache.maven.shared.invoker.Invoker
     
    private static final java.lang.String
     
    private PomManager
     

    Fields inherited from interface org.apache.maven.archetype.creator.ArchetypeCreator

    ROLE
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    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 void
    addRequiredProperties(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 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)
     
    private void
    copyResource(java.lang.String name, java.io.File destination)
     
    void
     
    private void
    createArchetypeBasicIt(ArchetypeDescriptor archetypeDescriptor, java.io.File generatedSourcesDirectory)
    Create an archetype IT, ie goals.txt and archetype.properties in src/test/resources/projects/basic.
    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)
     
    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)
     
    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)
    Create the archetype project pom.xml file, that will be used to build the archetype.
    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)
     
    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(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 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)
     
    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)
     
    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)
     
    private void
    extractPropertiesFromProject(org.apache.maven.project.MavenProject project, java.util.Properties properties, java.util.Properties configurationProperties, java.lang.String packageName)
     
    java.lang.String
     
    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 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)
     
    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.String
    getPackageInPathFormat(java.lang.String aPackage)
     
    private java.lang.String
    getReversedContent(java.lang.String content, java.util.Properties properties)
     
    private java.lang.String
    getReversedFilename(java.lang.String filename, java.util.Properties properties)
     
    private java.lang.String
    getReversedPlainContent(java.lang.String content, java.util.Properties properties)
     
    private java.util.Properties
    getReversedProperties(ArchetypeDescriptor archetypeDescriptor, java.util.Properties properties)
     
    private java.lang.String
     
    private FileSet
    getUnpackagedFileSet(boolean filtered, java.lang.String group, java.util.List<java.lang.String> groupFiles, java.lang.String defaultEncoding)
     
    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)
     
    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)
     
    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 void
    restoreArtifactId(java.util.Properties properties, java.lang.String artifactId)
     
    private void
    restoreParentArtifactId(java.util.Properties properties, java.lang.String parentArtifactId)
     
    private void
    rewriteDependencyReferences(org.apache.maven.model.Dependency dependency, java.lang.String rootArtifactId, java.lang.String groupId)
     
    private void
    rewriteEARPluginReferences(org.apache.maven.model.Plugin plugin, java.lang.String rootArtifactId, java.lang.String groupId)
     
    private void
    rewritePluginReferences(org.apache.maven.model.Plugin plugin, java.lang.String rootArtifactId, java.lang.String groupId)
     
    private void
    rewriteReferences(org.apache.maven.model.Model pom, java.lang.String rootArtifactId, java.lang.String groupId)
     
    private void
    setArtifactId(java.util.Properties properties, java.lang.String artifactId)
     
    private void
    setParentArtifactId(java.util.Properties properties, java.lang.String parentArtifactId)
     

    Methods inherited from class org.codehaus.plexus.logging.AbstractLogEnabled

    enableLogging, getLogger, setupLogger, setupLogger, setupLogger

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • 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:
  • Constructor Details

    • FilesetArchetypeCreator

      public FilesetArchetypeCreator()
  • Method Details

    • createArchetype

      public void createArchetype(ArchetypeCreationRequest request, ArchetypeCreationResult result)
      Specified by:
      createArchetype in interface ArchetypeCreator
    • 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.IOException
      Create the archetype project pom.xml file, that will be used to build the archetype.
      Throws:
      TemplateCreationException
      java.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.FileNotFoundException
      java.io.IOException
      org.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.IOException
      java.io.FileNotFoundException
      org.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.IOException
      org.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()