Package org.h2.store.fs.mem
Class FilePathMem
- java.lang.Object
-
- org.h2.store.fs.FilePath
-
- org.h2.store.fs.mem.FilePathMem
-
- Direct Known Subclasses:
FilePathMemLZF
public class FilePathMem extends FilePath
This file system keeps files fully in memory. There is an option to compress file blocks to save memory.
-
-
Field Summary
Fields Modifier and Type Field Description private static FileMemData
DIRECTORY
private static java.util.TreeMap<java.lang.String,FileMemData>
MEMORY_FILES
-
Constructor Summary
Constructors Constructor Description FilePathMem()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
canWrite()
Check if the file is writable.(package private) boolean
compressed()
Whether the file should be compressed.void
createDirectory()
Create a directory (all required parent directories already exist).boolean
createFile()
Create a new file.void
delete()
Delete a file or directory if it exists.boolean
exists()
Checks if a file exists.protected static java.lang.String
getCanonicalPath(java.lang.String fileName)
Get the canonical path for this file name.private FileMemData
getMemoryFile()
FilePathMem
getParent()
Get the parent directory of a file or directory.FilePathMem
getPath(java.lang.String path)
Convert a file to a path.java.lang.String
getScheme()
Get the scheme (prefix) for this file provider.boolean
isAbsolute()
Check if the file name includes a path.boolean
isDirectory()
Check if it is a file or a directory.private boolean
isRoot()
long
lastModified()
Get the last modified date of a filevoid
moveTo(FilePath newName, boolean atomicReplace)
Rename a file if this is allowed.java.util.List<FilePath>
newDirectoryStream()
List the files and directories in the given directory.java.nio.channels.FileChannel
open(java.lang.String mode)
Open a random access file object.boolean
setReadOnly()
Disable the ability to write.long
size()
Get the size of a file in bytesFilePathMem
toRealPath()
Normalize a file name.-
Methods inherited from class org.h2.store.fs.FilePath
createTempFile, get, getName, newFileChannelOutputStream, newInputStream, newOutputStream, register, toString, unregister, unwrap
-
-
-
-
Field Detail
-
MEMORY_FILES
private static final java.util.TreeMap<java.lang.String,FileMemData> MEMORY_FILES
-
DIRECTORY
private static final FileMemData DIRECTORY
-
-
Method Detail
-
getPath
public FilePathMem getPath(java.lang.String path)
Description copied from class:FilePath
Convert a file to a path. This is similar tojava.nio.file.spi.FileSystemProvider.getPath
, but may return an object even if the scheme doesn't match in case of the default file provider.
-
size
public long size()
Description copied from class:FilePath
Get the size of a file in bytes
-
moveTo
public void moveTo(FilePath newName, boolean atomicReplace)
Description copied from class:FilePath
Rename a file if this is allowed.
-
createFile
public boolean createFile()
Description copied from class:FilePath
Create a new file.- Specified by:
createFile
in classFilePath
- Returns:
- true if creating was successful
-
exists
public boolean exists()
Description copied from class:FilePath
Checks if a file exists.
-
delete
public void delete()
Description copied from class:FilePath
Delete a file or directory if it exists. Directories may only be deleted if they are empty.
-
newDirectoryStream
public java.util.List<FilePath> newDirectoryStream()
Description copied from class:FilePath
List the files and directories in the given directory.- Specified by:
newDirectoryStream
in classFilePath
- Returns:
- the list of fully qualified file names
-
setReadOnly
public boolean setReadOnly()
Description copied from class:FilePath
Disable the ability to write.- Specified by:
setReadOnly
in classFilePath
- Returns:
- true if the call was successful
-
canWrite
public boolean canWrite()
Description copied from class:FilePath
Check if the file is writable.
-
getParent
public FilePathMem getParent()
Description copied from class:FilePath
Get the parent directory of a file or directory.
-
isDirectory
public boolean isDirectory()
Description copied from class:FilePath
Check if it is a file or a directory.- Specified by:
isDirectory
in classFilePath
- Returns:
- true if it is a directory
-
isAbsolute
public boolean isAbsolute()
Description copied from class:FilePath
Check if the file name includes a path.- Specified by:
isAbsolute
in classFilePath
- Returns:
- if the file name is absolute
-
toRealPath
public FilePathMem toRealPath()
Description copied from class:FilePath
Normalize a file name.- Specified by:
toRealPath
in classFilePath
- Returns:
- the normalized file name
-
lastModified
public long lastModified()
Description copied from class:FilePath
Get the last modified date of a file- Specified by:
lastModified
in classFilePath
- Returns:
- the last modified date
-
createDirectory
public void createDirectory()
Description copied from class:FilePath
Create a directory (all required parent directories already exist).- Specified by:
createDirectory
in classFilePath
-
open
public java.nio.channels.FileChannel open(java.lang.String mode)
Description copied from class:FilePath
Open a random access file object.
-
getMemoryFile
private FileMemData getMemoryFile()
-
isRoot
private boolean isRoot()
-
getCanonicalPath
protected static java.lang.String getCanonicalPath(java.lang.String fileName)
Get the canonical path for this file name.- Parameters:
fileName
- the file name- Returns:
- the canonical path
-
getScheme
public java.lang.String getScheme()
Description copied from class:FilePath
Get the scheme (prefix) for this file provider. This is similar tojava.nio.file.spi.FileSystemProvider.getScheme
.
-
compressed
boolean compressed()
Whether the file should be compressed.- Returns:
- if it should be compressed.
-
-