Class DefaultMavenResourcesFiltering

    • Field Detail

      • LOGGER

        private static final org.slf4j.Logger LOGGER
      • EMPTY_STRING_ARRAY

        private static final java.lang.String[] EMPTY_STRING_ARRAY
      • DEFAULT_INCLUDES

        private static final java.lang.String[] DEFAULT_INCLUDES
      • defaultNonFilteredFileExtensions

        private final java.util.List<java.lang.String> defaultNonFilteredFileExtensions
      • buildContext

        private final org.sonatype.plexus.build.incremental.BuildContext buildContext
    • Constructor Detail

      • DefaultMavenResourcesFiltering

        @Inject
        public DefaultMavenResourcesFiltering​(MavenFileFilter mavenFileFilter,
                                              org.sonatype.plexus.build.incremental.BuildContext buildContext)
    • Method Detail

      • filteredFileExtension

        public boolean filteredFileExtension​(java.lang.String fileName,
                                             java.util.List<java.lang.String> userNonFilteredFileExtensions)
        Specified by:
        filteredFileExtension in interface MavenResourcesFiltering
        Parameters:
        fileName - the file name
        userNonFilteredFileExtensions - 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)
      • getExtension

        private static java.lang.String getExtension​(java.lang.String fileName)
      • 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 check
        encoding - The encoding to use for regular files
        propertiesEncoding - 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:
        true if the file name has an extension of "properties", otherwise false
        Since:
        3.2.0
      • 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)