Class AbstractScriptedMojoDescriptorExtractor
- java.lang.Object
-
- org.codehaus.plexus.logging.AbstractLogEnabled
-
- org.apache.maven.tools.plugin.extractor.AbstractScriptedMojoDescriptorExtractor
-
- All Implemented Interfaces:
MojoDescriptorExtractor
,org.codehaus.plexus.logging.LogEnabled
public abstract class AbstractScriptedMojoDescriptorExtractor extends org.codehaus.plexus.logging.AbstractLogEnabled implements MojoDescriptorExtractor
- Author:
- jdcasey
-
-
Field Summary
-
Fields inherited from interface org.apache.maven.tools.plugin.extractor.MojoDescriptorExtractor
ROLE
-
-
Constructor Summary
Constructors Constructor Description AbstractScriptedMojoDescriptorExtractor()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected void
copyScriptsToOutputDirectory(Map<String,Set<File>> scriptFilesKeyedByBasedir, String outputDirectory, PluginToolsRequest request)
List<org.apache.maven.plugin.descriptor.MojoDescriptor>
execute(PluginToolsRequest request)
Execute the mojo extraction.protected List<org.apache.maven.plugin.descriptor.MojoDescriptor>
extractMojoDescriptors(Map<String,Set<File>> scriptFilesKeyedByBasedir, PluginToolsRequest request)
Should be implemented in the sub classes.protected List<org.apache.maven.plugin.descriptor.MojoDescriptor>
extractMojoDescriptorsFromMetadata(Map<String,Set<File>> metadataFilesByBasedir, PluginToolsRequest request)
Should be implemented in the sub classes.protected Map<String,Set<File>>
gatherFilesByBasedir(File basedir, List<String> directories, String scriptFileExtension, PluginToolsRequest request)
protected String
getMetadataFileExtension(PluginToolsRequest request)
Should be implemented in the sub classes.protected abstract String
getScriptFileExtension(PluginToolsRequest request)
-
-
-
Method Detail
-
execute
public List<org.apache.maven.plugin.descriptor.MojoDescriptor> execute(PluginToolsRequest request) throws ExtractionException, org.apache.maven.plugin.descriptor.InvalidPluginDescriptorException
Execute the mojo extraction.- Specified by:
execute
in interfaceMojoDescriptorExtractor
- Parameters:
request
- ThePluginToolsRequest
containing information for the extraction process.- Returns:
- a list of mojo descriptors.
- Throws:
ExtractionException
- if anyorg.apache.maven.plugin.descriptor.InvalidPluginDescriptorException
- if any
-
copyScriptsToOutputDirectory
protected void copyScriptsToOutputDirectory(Map<String,Set<File>> scriptFilesKeyedByBasedir, String outputDirectory, PluginToolsRequest request) throws ExtractionException
- Parameters:
scriptFilesKeyedByBasedir
- not nulloutputDirectory
- not nullrequest
- the request- Throws:
ExtractionException
- if any
-
gatherFilesByBasedir
protected Map<String,Set<File>> gatherFilesByBasedir(File basedir, List<String> directories, String scriptFileExtension, PluginToolsRequest request)
- Parameters:
basedir
- not nulldirectories
- not nullscriptFileExtension
- not nullrequest
- the request- Returns:
- map with subdirs paths as key
-
extractMojoDescriptorsFromMetadata
protected List<org.apache.maven.plugin.descriptor.MojoDescriptor> extractMojoDescriptorsFromMetadata(Map<String,Set<File>> metadataFilesByBasedir, PluginToolsRequest request) throws ExtractionException, org.apache.maven.plugin.descriptor.InvalidPluginDescriptorException
Should be implemented in the sub classes.- Parameters:
metadataFilesByBasedir
- could be nullrequest
- The plugin request, nevernull
.- Returns:
- always null
- Throws:
ExtractionException
- if anyorg.apache.maven.plugin.descriptor.InvalidPluginDescriptorException
- if any
-
getMetadataFileExtension
protected String getMetadataFileExtension(PluginToolsRequest request)
Should be implemented in the sub classes.- Parameters:
request
- the request- Returns:
- always null
-
extractMojoDescriptors
protected List<org.apache.maven.plugin.descriptor.MojoDescriptor> extractMojoDescriptors(Map<String,Set<File>> scriptFilesKeyedByBasedir, PluginToolsRequest request) throws ExtractionException, org.apache.maven.plugin.descriptor.InvalidPluginDescriptorException
Should be implemented in the sub classes.- Parameters:
scriptFilesKeyedByBasedir
- could be nullrequest
- The plugin request, nevernull
.- Returns:
- always null
- Throws:
ExtractionException
- if anyorg.apache.maven.plugin.descriptor.InvalidPluginDescriptorException
- if any
-
getScriptFileExtension
protected abstract String getScriptFileExtension(PluginToolsRequest request)
- Parameters:
request
- the request- Returns:
- the file extension like
.bsh
for BeanShell.
-
-