Class TempDirectory.CloseablePath

  • All Implemented Interfaces:
    org.junit.jupiter.api.extension.ExtensionContext.Store.CloseableResource
    Enclosing class:
    TempDirectory

    static class TempDirectory.CloseablePath
    extends java.lang.Object
    implements org.junit.jupiter.api.extension.ExtensionContext.Store.CloseableResource
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private org.junit.jupiter.api.io.CleanupMode cleanupMode  
      private java.nio.file.Path dir  
      private org.junit.jupiter.api.extension.ExtensionContext extensionContext  
      private org.junit.jupiter.api.io.TempDirFactory factory  
      private static org.junit.platform.commons.logging.Logger logger  
    • Constructor Summary

      Constructors 
      Constructor Description
      CloseablePath​(org.junit.jupiter.api.io.TempDirFactory factory, org.junit.jupiter.api.io.CleanupMode cleanupMode, org.junit.jupiter.api.extension.AnnotatedElementContext elementContext, org.junit.jupiter.api.extension.ExtensionContext extensionContext)  
    • Field Detail

      • logger

        private static final org.junit.platform.commons.logging.Logger logger
      • dir

        private final java.nio.file.Path dir
      • factory

        private final org.junit.jupiter.api.io.TempDirFactory factory
      • cleanupMode

        private final org.junit.jupiter.api.io.CleanupMode cleanupMode
      • extensionContext

        private final org.junit.jupiter.api.extension.ExtensionContext extensionContext
    • Constructor Detail

      • CloseablePath

        CloseablePath​(org.junit.jupiter.api.io.TempDirFactory factory,
                      org.junit.jupiter.api.io.CleanupMode cleanupMode,
                      org.junit.jupiter.api.extension.AnnotatedElementContext elementContext,
                      org.junit.jupiter.api.extension.ExtensionContext extensionContext)
               throws java.lang.Exception
        Throws:
        java.lang.Exception
    • Method Detail

      • get

        java.nio.file.Path get()
      • close

        public void close()
                   throws java.io.IOException
        Specified by:
        close in interface org.junit.jupiter.api.extension.ExtensionContext.Store.CloseableResource
        Throws:
        java.io.IOException
      • deleteAllFilesAndDirectories

        private java.util.SortedMap<java.nio.file.Path,​java.io.IOException> deleteAllFilesAndDirectories​(TempDirectory.FileOperations fileOperations)
                                                                                                        throws java.io.IOException
        Throws:
        java.io.IOException
      • tryToResetPermissions

        private static void tryToResetPermissions​(java.nio.file.Path path)
      • createIOExceptionWithAttachedFailures

        private java.io.IOException createIOExceptionWithAttachedFailures​(java.util.SortedMap<java.nio.file.Path,​java.io.IOException> failures)
      • tryToDeleteOnExit

        private java.nio.file.Path tryToDeleteOnExit​(java.nio.file.Path path)
      • relativizeSafely

        private java.nio.file.Path relativizeSafely​(java.nio.file.Path path)