Package com.jogamp.common.util.cache
Class TempFileCache
- java.lang.Object
-
- com.jogamp.common.util.cache.TempFileCache
-
public class TempFileCache extends Object
-
-
Constructor Summary
Constructors Constructor Description TempFileCache()
Create thegetTempDir()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
destroy()
Delete thegetTempDir()
recursively and remove it's reference.static File
getBaseDir()
Base temp directory used byTempFileCache
.static File
getRootDir()
Root temp directory for this JVM instance.File
getTempDir()
Temporary directory for individual files (eg.static boolean
initSingleton()
Documented way to kick off static initializationboolean
isValid(boolean forExecutables)
-
-
-
Constructor Detail
-
TempFileCache
public TempFileCache()
Create thegetTempDir()
-
-
Method Detail
-
initSingleton
public static boolean initSingleton()
Documented way to kick off static initialization- Returns:
- true is static initialization was successful
-
destroy
public void destroy()
Delete thegetTempDir()
recursively and remove it's reference.
-
isValid
public boolean isValid(boolean forExecutables)
- Parameters:
forExecutables
- iftrue
, method also tests whether the underlyinggetBaseDir()
is suitable to load native libraries or launch executables- Returns:
- true if static and object initialization was successful
- See Also:
#isTempExecutable()
,#isValid()
-
getBaseDir
public static File getBaseDir()
Base temp directory used byTempFileCache
.Lifecycle: For one user's concurrently running JVMs and ClassLoader
This is set to:${java.io.tmpdir}/tmpDirPrefix
- Returns:
-
getRootDir
public static File getRootDir()
Root temp directory for this JVM instance. Used to store individual directories.This directory is a sub-folder to
getBaseDir()
.Lifecycle: For one user's concurrently running JVMs and ClassLoader
tmpBaseDir/tmpRootPropValue
Use Case: Per ClassLoader files, eg. native libraries.
Old temp directories are cleaned up the next time a JVM is launched that uses TempFileCache.
- Returns:
-
getTempDir
public File getTempDir()
Temporary directory for individual files (eg. native libraries of one ClassLoader instance).This directory is a sub-folder to
getRootDir()
.Lifecycle: Within each JVM .. use case dependent, ie. per ClassLoader and per
TempFileCache
instance!The directory name is:
tmpRootDir/jlnMMMMM
where jlnMMMMM is the unique filename created by File.createTempFile() without the ".tmp" extension.- Returns:
-
-