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 org.apache.lucene.store.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.
Field Summary |
protected com.sleepycat.db.internal.Db |
blocks
|
protected com.sleepycat.db.internal.Db |
files
|
protected int |
flags
|
protected Set |
openFiles
|
protected com.sleepycat.db.internal.DbTxn |
txn
|
Fields inherited from class org.apache.lucene.store.Directory |
isOpen, lockFactory |
Constructor Summary |
DbDirectory(com.sleepycat.db.internal.DbTxn txn,
com.sleepycat.db.internal.Db files,
com.sleepycat.db.internal.Db blocks,
int flags)
Instantiate a DbDirectory. |
DbDirectory(com.sleepycat.db.Transaction txn,
com.sleepycat.db.Database files,
com.sleepycat.db.Database blocks)
|
DbDirectory(com.sleepycat.db.Transaction txn,
com.sleepycat.db.Database files,
com.sleepycat.db.Database blocks,
int flags)
|
Methods inherited from class org.apache.lucene.store.Directory |
clearLock, copy, ensureOpen, getLockFactory, getLockID, listAll, openInput, setLockFactory, sync, toString |
openFiles
protected Set openFiles
files
protected com.sleepycat.db.internal.Db files
blocks
protected com.sleepycat.db.internal.Db blocks
txn
protected com.sleepycat.db.internal.DbTxn txn
flags
protected int flags
DbDirectory
public DbDirectory(com.sleepycat.db.internal.DbTxn txn,
com.sleepycat.db.internal.Db files,
com.sleepycat.db.internal.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(com.sleepycat.db.Transaction txn,
com.sleepycat.db.Database files,
com.sleepycat.db.Database blocks,
int flags)
DbDirectory
public DbDirectory(com.sleepycat.db.Transaction txn,
com.sleepycat.db.Database files,
com.sleepycat.db.Database blocks)
close
public void close()
throws IOException
- Specified by:
close
in class org.apache.lucene.store.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(com.sleepycat.db.Transaction)
createOutput
public org.apache.lucene.store.IndexOutput createOutput(String name)
throws IOException
- Specified by:
createOutput
in class org.apache.lucene.store.Directory
- Throws:
IOException
deleteFile
public void deleteFile(String name)
throws IOException
- Specified by:
deleteFile
in class org.apache.lucene.store.Directory
- Throws:
IOException
fileExists
public boolean fileExists(String name)
throws IOException
- Specified by:
fileExists
in class org.apache.lucene.store.Directory
- Throws:
IOException
fileLength
public long fileLength(String name)
throws IOException
- Specified by:
fileLength
in class org.apache.lucene.store.Directory
- Throws:
IOException
fileModified
public long fileModified(String name)
throws IOException
- Specified by:
fileModified
in class org.apache.lucene.store.Directory
- Throws:
IOException
list
public String[] list()
throws IOException
- Specified by:
list
in class org.apache.lucene.store.Directory
- Throws:
IOException
openInput
public org.apache.lucene.store.IndexInput openInput(String name)
throws IOException
- Specified by:
openInput
in class org.apache.lucene.store.Directory
- Throws:
IOException
makeLock
public org.apache.lucene.store.Lock makeLock(String name)
- Overrides:
makeLock
in class org.apache.lucene.store.Directory
renameFile
public void renameFile(String from,
String to)
throws IOException
- Specified by:
renameFile
in class org.apache.lucene.store.Directory
- Throws:
IOException
touchFile
public void touchFile(String name)
throws IOException
- Specified by:
touchFile
in class org.apache.lucene.store.Directory
- Throws:
IOException
setTransaction
public void setTransaction(com.sleepycat.db.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(com.sleepycat.db.internal.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-2010 Apache Software Foundation. All Rights Reserved.