public class SqlJetFileSystem extends java.lang.Object implements ISqlJetFileSystem
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
FS_NAME |
Constructor and Description |
---|
SqlJetFileSystem() |
Modifier and Type | Method and Description |
---|---|
boolean |
access(java.io.File path,
SqlJetFileAccesPermission permission)
The flags argument to access() may be
SqlJetFileAccesPermission.EXISTS
to test for the existence of a file, or SqlJetFileAccesPermission.READWRITE to
test whether a file is readable and writable, or SqlJetFileAccesPermission#READ
to test whether a file is at least readable. |
long |
currentTime()
The currentTime() method returns a Julian Day Number for the current date and time.
|
boolean |
delete(java.io.File path,
boolean sync)
Delete the file.
|
java.lang.String |
getFullPath(java.io.File filename) |
java.lang.String |
getName()
The getName() returns the name of the FS module.
|
java.io.File |
getTempFile() |
ISqlJetFile |
memJournalOpen()
Open a memory journal file.
|
ISqlJetFile |
open(java.io.File path,
SqlJetFileType type,
java.util.Set<SqlJetFileOpenPermission> permissions)
The flags argument to open() includes all set in
the flags argument to ISqlJet.open().
|
byte[] |
randomness(int numBytes)
The randomness() function returns numBytes bytes of good-quality randomness.
|
long |
sleep(long microseconds)
The sleep() method causes the calling thread to sleep for at
least the number of microseconds given.
|
public java.lang.String getName()
ISqlJetFileSystem
getName
in interface ISqlJetFileSystem
public ISqlJetFile open(java.io.File path, SqlJetFileType type, java.util.Set<SqlJetFileOpenPermission> permissions) throws SqlJetException
ISqlJetFileSystem
SqlJetFileOpenPermission.READWRITE
and
SqlJetFileOpenPermission.CREATE
.
If open() opens a file read-only then it sets flags in
ISqlJetFile.getPermissions()
to
include SqlJetFileOpenPermission.READONLY
.
Other permissions may be set.
SqlJet will also add one of the following flags to the open()
call, depending on the object being opened:
SqlJetFileOpenPermission#MAIN_DB
SqlJetFileOpenPermission#MAIN_JOURNAL
SqlJetFileOpenPermission#TEMP_DB
SqlJetFileOpenPermission#TEMP_JOURNAL
SqlJetFileOpenPermission#TRANSIENT_DB
SqlJetFileOpenPermission#SUBJOURNAL
SqlJetFileOpenPermission#MASTER_JOURNAL
SqlJetIOException
. Or the implementation might recognize that a database
file will be doing page-aligned sector reads and writes in a random
order and set up its I/O subsystem accordingly.
SqlJet might also add one of the following flags to the open() method:
The SqlJetFileOpenPermission.DELETEONCLOSE
flag means the file should be
deleted when it is closed. The SqlJetFileOpenPermission.DELETEONCLOSE
will be set for TEMP databases, journals and for subjournals.
The SqlJetFileOpenPermission.EXCLUSIVE
flag means the file should be opened
for exclusive access. This flag is set for all files except
for the main database file.open
in interface ISqlJetFileSystem
path
- File
or NULL. If NULL then open()
must invite its own temporary name for the file. Whenever the
filename parameter is NULL it will also be the case that the
flags parameter will include SqlJetFileOpenPermission.DELETEONCLOSE
.permissions
- Exactly one of the SqlJetFileOpenPermission.READWRITE
and
SqlJetFileOpenPermission.READONLY
flags must be set, and
if SqlJetFileOpenPermission.CREATE
is set,
then SqlJetFileOpenPermission.READWRITE
must also be set, and
if SqlJetFileOpenPermission.EXCLUSIVE
is set,
then SqlJetFileOpenPermission.CREATE
must also be set.
if SqlJetFileOpenPermission.DELETEONCLOSE
is set,
then SqlJetFileOpenPermission.CREATE
must also be set.SqlJetException
- If it is impossible to open file.public java.io.File getTempFile() throws java.io.IOException
getTempFile
in interface ISqlJetFileSystem
java.io.IOException
public boolean delete(java.io.File path, boolean sync)
ISqlJetFileSystem
delete
in interface ISqlJetFileSystem
public boolean access(java.io.File path, SqlJetFileAccesPermission permission) throws SqlJetException
ISqlJetFileSystem
SqlJetFileAccesPermission.EXISTS
to test for the existence of a file, or SqlJetFileAccesPermission.READWRITE
to
test whether a file is readable and writable, or SqlJetFileAccesPermission#READ
to test whether a file is at least readable. The file can be a directory.
Test the existance of or access permissions of file. The
test performed depends on the value of flags:
SqlJetFileAccesPermission.EXISTS
: Return true if the file exists
SqlJetFileAccesPermission.READWRITE
: Return true if the file is read and writable.
SqlJetFileAccesPermission#READ
: Return true if the file is readable.
Otherwise return false.access
in interface ISqlJetFileSystem
SqlJetException
public long currentTime()
ISqlJetFileSystem
currentTime
in interface ISqlJetFileSystem
public byte[] randomness(int numBytes)
ISqlJetFileSystem
randomness
in interface ISqlJetFileSystem
public long sleep(long microseconds)
ISqlJetFileSystem
sleep
in interface ISqlJetFileSystem
public ISqlJetFile memJournalOpen()
ISqlJetFileSystem
memJournalOpen
in interface ISqlJetFileSystem
public java.lang.String getFullPath(java.io.File filename) throws SqlJetException
getFullPath
in interface ISqlJetFileSystem
SqlJetException
Copyright © 2009-2010 TMate Software Ltd. All Rights Reserved.