Class BaseDirectory

java.lang.Object
org.apache.lucene.store.Directory
org.apache.lucene.store.BaseDirectory
All Implemented Interfaces:
Closeable, AutoCloseable
Direct Known Subclasses:
CompoundFileDirectory, FileSwitchDirectory, FSDirectory, RAMDirectory

public abstract class BaseDirectory extends Directory
Base implementation for a concrete Directory.
  • Field Details

    • isOpen

      protected volatile boolean isOpen
    • lockFactory

      protected LockFactory lockFactory
      Holds the LockFactory instance (implements locking for this Directory instance).
  • Constructor Details

    • BaseDirectory

      protected BaseDirectory()
      Sole constructor.
  • Method Details

    • makeLock

      public Lock makeLock(String name)
      Description copied from class: Directory
      Construct a Lock.
      Specified by:
      makeLock in class Directory
      Parameters:
      name - the name of the lock file
    • clearLock

      public void clearLock(String name) throws IOException
      Description copied from class: Directory
      Attempt to clear (forcefully unlock and remove) the specified lock. Only call this at a time when you are certain this lock is no longer in use.
      Specified by:
      clearLock in class Directory
      Parameters:
      name - name of the lock to be cleared.
      Throws:
      IOException
    • setLockFactory

      public void setLockFactory(LockFactory lockFactory) throws IOException
      Description copied from class: Directory
      Set the LockFactory that this Directory instance should use for its locking implementation. Each * instance of LockFactory should only be used for one directory (ie, do not share a single instance across multiple Directories).
      Specified by:
      setLockFactory in class Directory
      Parameters:
      lockFactory - instance of LockFactory.
      Throws:
      IOException
    • getLockFactory

      public LockFactory getLockFactory()
      Description copied from class: Directory
      Get the LockFactory that this Directory instance is using for its locking implementation. Note that this may be null for Directory implementations that provide their own locking implementation.
      Specified by:
      getLockFactory in class Directory
    • ensureOpen

      protected final void ensureOpen() throws AlreadyClosedException
      Overrides:
      ensureOpen in class Directory
      Throws:
      AlreadyClosedException - if this Directory is closed