Class Cleaner


  • class Cleaner
    extends java.lang.Object
    Cleans directories.
    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
      private static interface  Cleaner.Logger  
      private static class  Cleaner.Result  
    • Constructor Summary

      Constructors 
      Constructor Description
      Cleaner​(org.apache.maven.plugin.logging.Log log, boolean verbose)
      Creates a new cleaner.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      private int delete​(java.io.File file, boolean failOnError, boolean retryOnError)
      Deletes the specified file, directory.
      private Cleaner.Result delete​(java.io.File file, java.lang.String pathname, Selector selector, boolean followSymlinks, boolean failOnError, boolean retryOnError)
      Deletes the specified file or directory.
      void delete​(java.io.File basedir, Selector selector, boolean followSymlinks, boolean failOnError, boolean retryOnError)
      Deletes the specified directories and its contents.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • Cleaner

        Cleaner​(org.apache.maven.plugin.logging.Log log,
                boolean verbose)
        Creates a new cleaner.
        Parameters:
        log - The logger to use, may be null to disable logging.
        verbose - Whether to perform verbose logging.
    • Method Detail

      • delete

        public void delete​(java.io.File basedir,
                           Selector selector,
                           boolean followSymlinks,
                           boolean failOnError,
                           boolean retryOnError)
                    throws java.io.IOException
        Deletes the specified directories and its contents.
        Parameters:
        basedir - The directory to delete, must not be null. Non-existing directories will be silently ignored.
        selector - The selector used to determine what contents to delete, may be null to delete everything.
        followSymlinks - Whether to follow symlinks.
        failOnError - Whether to abort with an exception in case a selected file/directory could not be deleted.
        retryOnError - Whether to undertake additional delete attempts in case the first attempt failed.
        Throws:
        java.io.IOException - If a file/directory could not be deleted and failOnError is true.
      • delete

        private Cleaner.Result delete​(java.io.File file,
                                      java.lang.String pathname,
                                      Selector selector,
                                      boolean followSymlinks,
                                      boolean failOnError,
                                      boolean retryOnError)
                               throws java.io.IOException
        Deletes the specified file or directory.
        Parameters:
        file - The file/directory to delete, must not be null. If followSymlinks is false, it is assumed that the parent file is canonical.
        pathname - The relative pathname of the file, using File.separatorChar, must not be null.
        selector - The selector used to determine what contents to delete, may be null to delete everything.
        followSymlinks - Whether to follow symlinks.
        failOnError - Whether to abort with an exception in case a selected file/directory could not be deleted.
        retryOnError - Whether to undertake additional delete attempts in case the first attempt failed.
        Returns:
        The result of the cleaning, never null.
        Throws:
        java.io.IOException - If a file/directory could not be deleted and failOnError is true.
      • delete

        private int delete​(java.io.File file,
                           boolean failOnError,
                           boolean retryOnError)
                    throws java.io.IOException
        Deletes the specified file, directory. If the path denotes a symlink, only the link is removed, its target is left untouched.
        Parameters:
        file - The file/directory to delete, must not be null.
        failOnError - Whether to abort with an exception in case the file/directory could not be deleted.
        retryOnError - Whether to undertake additional delete attempts in case the first attempt failed.
        Returns:
        0 if the file was deleted, 1 otherwise.
        Throws:
        java.io.IOException - If a file/directory could not be deleted and failOnError is true.