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 voidcopyScriptsToOutputDirectory(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 StringgetMetadataFileExtension(PluginToolsRequest request)Should be implemented in the sub classes.protected abstract StringgetScriptFileExtension(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:
executein interfaceMojoDescriptorExtractor- Parameters:
request- ThePluginToolsRequestcontaining 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
.bshfor BeanShell.
-
-