org.apache.lucene.store.db
Class DbDirectory
java.lang.Object
org.apache.lucene.store.Directory
org.apache.lucene.store.db.DbDirectory
public class DbDirectory
- extends Directory
A DbDirectory is a Berkeley DB 4.3 based implementation of
Directory
. It uses two
Db
database handles, one for storing file
records and another for storing file data blocks.
- Author:
- Andi Vajda
Constructor Summary |
DbDirectory(DbTxn txn,
Db files,
Db blocks,
int flags)
Instantiate a DbDirectory. |
DbDirectory(Transaction txn,
Database files,
Database blocks)
|
DbDirectory(Transaction txn,
Database files,
Database blocks,
int flags)
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
openFiles
protected Set openFiles
files
protected Db files
blocks
protected Db blocks
txn
protected DbTxn txn
flags
protected int flags
DbDirectory
public DbDirectory(DbTxn txn,
Db files,
Db blocks,
int flags)
- Instantiate a DbDirectory. The same threading rules that apply to
Berkeley DB handles apply to instances of DbDirectory.
- Parameters:
txn
- a transaction handle that is going to be used for all db
operations done by this instance. This parameter may be
null
.files
- a db handle to store file records.blocks
- a db handle to store file data blocks.flags
- flags used for db read operations.
DbDirectory
public DbDirectory(Transaction txn,
Database files,
Database blocks,
int flags)
DbDirectory
public DbDirectory(Transaction txn,
Database files,
Database blocks)
close
public void close()
throws IOException
- Specified by:
close
in class Directory
- Throws:
IOException
flush
public void flush()
throws IOException
- Flush the currently open files. After they have been flushed it is
safe to commit the transaction without closing this DbDirectory
instance first.
- Throws:
IOException
- See Also:
setTransaction(Transaction)
createOutput
public IndexOutput createOutput(String name)
throws IOException
- Specified by:
createOutput
in class Directory
- Throws:
IOException
deleteFile
public void deleteFile(String name)
throws IOException
- Specified by:
deleteFile
in class Directory
- Throws:
IOException
fileExists
public boolean fileExists(String name)
throws IOException
- Specified by:
fileExists
in class Directory
- Throws:
IOException
fileLength
public long fileLength(String name)
throws IOException
- Specified by:
fileLength
in class Directory
- Throws:
IOException
fileModified
public long fileModified(String name)
throws IOException
- Specified by:
fileModified
in class Directory
- Throws:
IOException
list
public String[] list()
throws IOException
- Specified by:
list
in class Directory
- Throws:
IOException
openInput
public IndexInput openInput(String name)
throws IOException
- Specified by:
openInput
in class Directory
- Throws:
IOException
makeLock
public Lock makeLock(String name)
- Overrides:
makeLock
in class Directory
renameFile
public void renameFile(String from,
String to)
throws IOException
- Specified by:
renameFile
in class Directory
- Throws:
IOException
touchFile
public void touchFile(String name)
throws IOException
- Specified by:
touchFile
in class Directory
- Throws:
IOException
setTransaction
public void setTransaction(Transaction txn)
- Once a transaction handle was committed it is no longer valid. In
order to continue using this DbDirectory instance after a commit, the
transaction handle has to be replaced.
- Parameters:
txn
- the new transaction handle to use
setTransaction
public void setTransaction(DbTxn txn)
- Once a transaction handle was committed it is no longer valid. In
order to continue using this DbDirectory instance after a commit, the
transaction handle has to be replaced.
- Parameters:
txn
- the new transaction handle to use
Copyright © 2000-2008 Apache Software Foundation. All Rights Reserved.