Class FilesetArchetypeCreator
java.lang.Object
org.apache.maven.archetype.creator.FilesetArchetypeCreator
- All Implemented Interfaces:
ArchetypeCreator
@Named("fileset")
@Singleton
public class FilesetArchetypeCreator
extends Object
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
FieldsModifier and TypeFieldDescriptionprivate ArchetypeFilesResolverprivate static final Stringprivate org.apache.maven.shared.invoker.Invokerprivate static final org.slf4j.Loggerprivate static final Stringprivate PomManager -
Constructor Summary
ConstructorsConstructorDescriptionFilesetArchetypeCreator(ArchetypeFilesResolver archetypeFilesResolver, PomManager pomManager, org.apache.maven.shared.invoker.Invoker invoker) -
Method Summary
Modifier and TypeMethodDescriptionprivate voidaddRequiredProperties(ArchetypeDescriptor archetypeDescriptor, Properties properties) concatenateToList(List<String> toConcatenate, String with) private voidcopyFiles(File basedir, File archetypeFilesDirectory, String directory, List<String> fileSetResources, boolean packaged, String packageName, Properties reverseProperties) private voidcopyResource(String name, File destination) voidcreateArchetype(ArchetypeCreationRequest request, ArchetypeCreationResult result) private voidcreateArchetypeBasicIt(ArchetypeDescriptor archetypeDescriptor, File generatedSourcesDirectory) Create an archetype IT, ie goals.txt and archetype.properties in src/test/resources/projects/basic.private voidcreateArchetypeFiles(Properties reverseProperties, List<FileSet> fileSets, String packageName, File basedir, File archetypeFilesDirectory, String defaultEncoding, List<String> excludePatterns) private voidcreateArchetypePom(org.apache.maven.model.Model pom, File archetypeFilesDirectory, Properties pomReversedProperties, File initialPomFile, boolean preserveCData, boolean keepParent) private FilecreateArchetypeProjectPom(org.apache.maven.project.MavenProject project, Properties configurationProperties, File projectDir) Create the archetype project pom.xml file, that will be used to build the archetype.private FileSetcreateFileSet(List<String> excludes, boolean packaged, boolean filtered, String group, List<String> includes, String defaultEncoding) createFileSets(List<String> files, int level, boolean packaged, String packageName, boolean filtered, String defaultEncoding) private ModuleDescriptorcreateModule(Properties reverseProperties, String rootArtifactId, String moduleId, String packageName, File basedir, File archetypeFilesDirectory, List<String> languages, List<String> filtereds, String defaultEncoding, boolean preserveCData, boolean keepParent) private voidcreateModulePom(org.apache.maven.model.Model pom, String rootArtifactId, File archetypeFilesDirectory, Properties pomReversedProperties, File initialPomFile, boolean preserveCData, boolean keepParent) private voidcreateModulePoms(Properties pomReversedProperties, String rootArtifactId, String packageName, File basedir, File archetypeFilesDirectory, boolean preserveCData, boolean keepParent) private voidcreatePoms(org.apache.maven.model.Model pom, String rootArtifactId, String artifactId, File archetypeFilesDirectory, File basedir, File rootPom, Properties pomReversedProperties, boolean preserveCData, boolean keepParent) private voidextractPropertiesFromProject(org.apache.maven.project.MavenProject project, Properties properties, Properties configurationProperties, String packageName) getExtensionlessFiles(List<String> files) getExtensions(List<String> files) private StringgetFileCharsetEncoding(File detectedFile, String defaultEncoding) getGroupsMap(List<String> files, int level) private FileSetgetPackagedFileSet(boolean filtered, Set<String> packagedExtensions, String group, Set<String> unpackagedExtensions, List<String> unpackagedFiles, String defaultEncoding) getPackagedFileSets(boolean filtered, String group, List<String> groupFiles, String packageName, String defaultEncoding) private StringgetPackageInPathFormat(String aPackage) private StringgetReversedContent(String content, Properties properties) private StringgetReversedFilename(String filename, Properties properties) private StringgetReversedPlainContent(String content, Properties properties) private PropertiesgetReversedProperties(ArchetypeDescriptor archetypeDescriptor, Properties properties) private Stringprivate FileSetgetUnpackagedFileSet(boolean filtered, String group, List<String> groupFiles, String defaultEncoding) private FileSetgetUnpackagedFileSet(boolean filtered, Set<String> unpackagedExtensions, List<String> unpackagedFiles, String group, Set<String> packagedExtensions, String defaultEncoding) private voidprocessFileSet(File basedir, File archetypeFilesDirectory, String directory, List<String> fileSetResources, boolean packaged, String packageName, Properties reverseProperties, String defaultEncoding) resolveFileNames(org.apache.maven.model.Model pom, File basedir, List<String> excludePatterns) resolveFileSets(String packageName, List<String> fileNames, List<String> languages, List<String> filtereds, String defaultEncoding) private voidrestoreArtifactId(Properties properties, String artifactId) private voidrestoreParentArtifactId(Properties properties, String parentArtifactId) private voidrewriteDependencyReferences(org.apache.maven.model.Dependency dependency, String rootArtifactId, String groupId) private voidrewriteEARPluginReferences(org.apache.maven.model.Plugin plugin, String rootArtifactId, String groupId) private voidrewritePluginReferences(org.apache.maven.model.Plugin plugin, String rootArtifactId, String groupId) private voidrewriteReferences(org.apache.maven.model.Model pom, String rootArtifactId, String groupId) private voidsetArtifactId(Properties properties, String artifactId) private voidsetParentArtifactId(Properties properties, String parentArtifactId)
-
Field Details
-
LOGGER
private static final org.slf4j.Logger LOGGER -
DEFAULT_OUTPUT_DIRECTORY
-
archetypeFilesResolver
-
pomManager
-
invoker
private org.apache.maven.shared.invoker.Invoker invoker -
MAVEN_PROPERTIES
- See Also:
-
-
Constructor Details
-
Method Details
-
createArchetype
- Specified by:
createArchetypein interfaceArchetypeCreator
-
createArchetypeBasicIt
private void createArchetypeBasicIt(ArchetypeDescriptor archetypeDescriptor, File generatedSourcesDirectory) throws IOException Create an archetype IT, ie goals.txt and archetype.properties in src/test/resources/projects/basic.- Parameters:
archetypeDescriptor-generatedSourcesDirectory-- Throws:
IOException- Since:
- 2.0-alpha-5
-
extractPropertiesFromProject
private void extractPropertiesFromProject(org.apache.maven.project.MavenProject project, Properties properties, Properties configurationProperties, String packageName) -
createArchetypeProjectPom
private File createArchetypeProjectPom(org.apache.maven.project.MavenProject project, Properties configurationProperties, File projectDir) throws IOException Create the archetype project pom.xml file, that will be used to build the archetype.- Throws:
IOException
-
copyResource
- Throws:
IOException
-
addRequiredProperties
-
createModulePoms
private void createModulePoms(Properties pomReversedProperties, String rootArtifactId, String packageName, File basedir, File archetypeFilesDirectory, boolean preserveCData, boolean keepParent) throws IOException, org.codehaus.plexus.util.xml.pull.XmlPullParserException - Throws:
IOExceptionorg.codehaus.plexus.util.xml.pull.XmlPullParserException
-
createPoms
private void createPoms(org.apache.maven.model.Model pom, String rootArtifactId, String artifactId, File archetypeFilesDirectory, File basedir, File rootPom, Properties pomReversedProperties, boolean preserveCData, boolean keepParent) throws IOException, org.codehaus.plexus.util.xml.pull.XmlPullParserException - Throws:
IOExceptionorg.codehaus.plexus.util.xml.pull.XmlPullParserException
-
getPackageInPathFormat
-
rewriteReferences
-
rewriteDependencyReferences
-
rewritePluginReferences
-
rewriteEARPluginReferences
-
setArtifactId
-
concatenateToList
-
addLists
-
copyFiles
private void copyFiles(File basedir, File archetypeFilesDirectory, String directory, List<String> fileSetResources, boolean packaged, String packageName, Properties reverseProperties) throws IOException - Throws:
IOException
-
createArchetypeFiles
private void createArchetypeFiles(Properties reverseProperties, List<FileSet> fileSets, String packageName, File basedir, File archetypeFilesDirectory, String defaultEncoding, List<String> excludePatterns) throws IOException - Throws:
IOException
-
createArchetypePom
private void createArchetypePom(org.apache.maven.model.Model pom, File archetypeFilesDirectory, Properties pomReversedProperties, File initialPomFile, boolean preserveCData, boolean keepParent) throws IOException - Throws:
IOException
-
createFileSet
-
createFileSets
-
createModule
private ModuleDescriptor createModule(Properties reverseProperties, String rootArtifactId, String moduleId, String packageName, File basedir, File archetypeFilesDirectory, List<String> languages, List<String> filtereds, String defaultEncoding, boolean preserveCData, boolean keepParent) throws IOException, org.codehaus.plexus.util.xml.pull.XmlPullParserException - Throws:
IOExceptionorg.codehaus.plexus.util.xml.pull.XmlPullParserException
-
createModulePom
private void createModulePom(org.apache.maven.model.Model pom, String rootArtifactId, File archetypeFilesDirectory, Properties pomReversedProperties, File initialPomFile, boolean preserveCData, boolean keepParent) throws IOException - Throws:
IOException
-
getExtensions
-
getExtensionlessFiles
-
getGroupsMap
-
getPackagedFileSet
-
getPackagedFileSets
-
setParentArtifactId
-
processFileSet
private void processFileSet(File basedir, File archetypeFilesDirectory, String directory, List<String> fileSetResources, boolean packaged, String packageName, Properties reverseProperties, String defaultEncoding) throws IOException - Throws:
IOException
-
getReversedProperties
private Properties getReversedProperties(ArchetypeDescriptor archetypeDescriptor, Properties properties) -
resolveFileNames
private List<String> resolveFileNames(org.apache.maven.model.Model pom, File basedir, List<String> excludePatterns) throws IOException - Throws:
IOException
-
resolveFileSets
-
restoreArtifactId
-
restoreParentArtifactId
-
getReversedContent
-
getReversedPlainContent
-
getReversedFilename
-
getTemplateOutputDirectory
-
getUnpackagedFileSet
-
getFileCharsetEncoding
-
getUnpackagedFileSet
-
getArchetypeVersion
-