Class DefaultMavenResourcesFiltering
- java.lang.Object
-
- org.codehaus.plexus.logging.AbstractLogEnabled
-
- org.apache.maven.shared.filtering.DefaultMavenResourcesFiltering
-
- All Implemented Interfaces:
MavenResourcesFiltering,org.codehaus.plexus.logging.LogEnabled,org.codehaus.plexus.personality.plexus.lifecycle.phase.Initializable
@Component(role=MavenResourcesFiltering.class, hint="default") public class DefaultMavenResourcesFiltering extends org.codehaus.plexus.logging.AbstractLogEnabled implements MavenResourcesFiltering, org.codehaus.plexus.personality.plexus.lifecycle.phase.Initializable
-
-
Field Summary
Fields Modifier and Type Field Description private org.sonatype.plexus.build.incremental.BuildContextbuildContextprivate static java.lang.String[]DEFAULT_INCLUDESprivate java.util.List<java.lang.String>defaultNonFilteredFileExtensionsprivate static java.lang.String[]EMPTY_STRING_ARRAYprivate MavenFileFiltermavenFileFilter
-
Constructor Summary
Constructors Constructor Description DefaultMavenResourcesFiltering()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private voidcopyDirectoryLayout(java.io.File sourceDirectory, java.io.File destinationDirectory, org.codehaus.plexus.util.Scanner scanner)booleanfilteredFileExtension(java.lang.String fileName, java.util.List<java.lang.String> userNonFilteredFileExtensions)private java.lang.StringfilterFileName(java.lang.String name, java.util.List<org.apache.maven.shared.utils.io.FileUtils.FilterWrapper> wrappers)voidfilterResources(MavenResourcesExecution mavenResourcesExecution)java.util.List<java.lang.String>getDefaultNonFilteredFileExtensions()return the List of the non filtered extensions (jpg,jpeg,gif,bmp,png,ico)private java.io.FilegetDestinationFile(java.io.File outputDirectory, java.lang.String targetPath, java.lang.String name, MavenResourcesExecution mavenResourcesExecution)(package private) static java.lang.StringgetEncoding(java.io.File file, java.lang.String encoding, java.lang.String propertiesEncoding)Get the encoding to use when filtering the specified file.private java.lang.StringgetRelativeOutputDirectory(MavenResourcesExecution execution)private voidhandleDefaultFilterWrappers(MavenResourcesExecution mavenResourcesExecution)voidinitialize()(package private) static booleanisPropertiesFile(java.io.File file)Determine whether a file is a properties file or not.private java.lang.String[]setupScanner(org.apache.maven.model.Resource resource, org.codehaus.plexus.util.Scanner scanner, boolean addDefaultExcludes)
-
-
-
Field Detail
-
EMPTY_STRING_ARRAY
private static final java.lang.String[] EMPTY_STRING_ARRAY
-
DEFAULT_INCLUDES
private static final java.lang.String[] DEFAULT_INCLUDES
-
defaultNonFilteredFileExtensions
private java.util.List<java.lang.String> defaultNonFilteredFileExtensions
-
buildContext
@Requirement private org.sonatype.plexus.build.incremental.BuildContext buildContext
-
mavenFileFilter
@Requirement private MavenFileFilter mavenFileFilter
-
-
Method Detail
-
initialize
public void initialize() throws org.codehaus.plexus.personality.plexus.lifecycle.phase.InitializationException- Specified by:
initializein interfaceorg.codehaus.plexus.personality.plexus.lifecycle.phase.Initializable- Throws:
org.codehaus.plexus.personality.plexus.lifecycle.phase.InitializationException
-
filteredFileExtension
public boolean filteredFileExtension(java.lang.String fileName, java.util.List<java.lang.String> userNonFilteredFileExtensions)- Specified by:
filteredFileExtensionin interfaceMavenResourcesFiltering- Parameters:
fileName- the file nameuserNonFilteredFileExtensions- an extra list of file extensions- Returns:
- true if filtering can be applied to the file (means extensions.lowerCase is in the default List or in the user defined extension List)
-
getDefaultNonFilteredFileExtensions
public java.util.List<java.lang.String> getDefaultNonFilteredFileExtensions()
Description copied from interface:MavenResourcesFilteringreturn the List of the non filtered extensions (jpg,jpeg,gif,bmp,png,ico)- Specified by:
getDefaultNonFilteredFileExtensionsin interfaceMavenResourcesFiltering- Returns:
ListofString
-
filterResources
public void filterResources(MavenResourcesExecution mavenResourcesExecution) throws MavenFilteringException
- Specified by:
filterResourcesin interfaceMavenResourcesFiltering- Parameters:
mavenResourcesExecution-MavenResourcesExecution- Throws:
MavenFilteringException- in case of failure.
-
getEncoding
static java.lang.String getEncoding(java.io.File file, java.lang.String encoding, java.lang.String propertiesEncoding)Get the encoding to use when filtering the specified file. Properties files can be configured to use a different encoding than regular files.- Parameters:
file- The file to checkencoding- The encoding to use for regular filespropertiesEncoding- The encoding to use for properties files- Returns:
- The encoding to use when filtering the specified file
- Since:
- 3.2.0
-
isPropertiesFile
static boolean isPropertiesFile(java.io.File file)
Determine whether a file is a properties file or not.- Parameters:
file- The file to check- Returns:
trueif the file name has an extension of "properties", otherwisefalse- Since:
- 3.2.0
-
handleDefaultFilterWrappers
private void handleDefaultFilterWrappers(MavenResourcesExecution mavenResourcesExecution) throws MavenFilteringException
- Throws:
MavenFilteringException
-
getDestinationFile
private java.io.File getDestinationFile(java.io.File outputDirectory, java.lang.String targetPath, java.lang.String name, MavenResourcesExecution mavenResourcesExecution) throws MavenFilteringException- Throws:
MavenFilteringException
-
setupScanner
private java.lang.String[] setupScanner(org.apache.maven.model.Resource resource, org.codehaus.plexus.util.Scanner scanner, boolean addDefaultExcludes)
-
copyDirectoryLayout
private void copyDirectoryLayout(java.io.File sourceDirectory, java.io.File destinationDirectory, org.codehaus.plexus.util.Scanner scanner) throws java.io.IOException- Throws:
java.io.IOException
-
getRelativeOutputDirectory
private java.lang.String getRelativeOutputDirectory(MavenResourcesExecution execution)
-
filterFileName
private java.lang.String filterFileName(java.lang.String name, java.util.List<org.apache.maven.shared.utils.io.FileUtils.FilterWrapper> wrappers) throws MavenFilteringException- Throws:
MavenFilteringException
-
-