## Uses of Class
org.apache.lucene.store.FSDirectory

- Packages that use FSDirectory
  Package | Description
  --- | ---
  org.apache.lucene.store | Binary i/o API, used for all index data.
  org.apache.lucene.util | Some utility classes.

- - ### Uses of FSDirectory in org.apache.lucene.store

    Subclasses of FSDirectory in org.apache.lucene.store
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `MMapDirectory` | File-based `Directory` implementation that uses mmap for reading, and `FSDirectory.FSIndexOutput` for writing.
    `class` | `NIOFSDirectory` | An `FSDirectory` implementation that uses java.nio's FileChannel's positional read, which allows multiple threads to read from the same file without synchronizing.

    Methods in org.apache.lucene.store that return FSDirectory
    Modifier and Type | Method | Description
    --- | --- | ---
    `static FSDirectory` | FSDirectory.`open​(Path path)` | Creates an FSDirectory instance, trying to pick the best implementation given the current environment.
    `static FSDirectory` | FSDirectory.`open​(Path path, LockFactory lockFactory)` | Just like `open(Path)`, but allows you to also specify a custom `LockFactory`.

    Methods in org.apache.lucene.store with parameters of type FSDirectory
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected abstract Lock` | FSLockFactory.`obtainFSLock​(FSDirectory dir, String lockName)` | Implement this method to obtain a lock for a FSDirectory instance.
    `protected Lock` | NativeFSLockFactory.`obtainFSLock​(FSDirectory dir, String lockName)` |
    `protected Lock` | SimpleFSLockFactory.`obtainFSLock​(FSDirectory dir, String lockName)` |

  - ### Uses of FSDirectory in org.apache.lucene.util

    Methods in org.apache.lucene.util that return FSDirectory
    Modifier and Type | Method | Description
    --- | --- | ---
    `static FSDirectory` | CommandLineUtil.`newFSDirectory​(Class<? extends FSDirectory> clazz, Path path)` | Creates a new specific FSDirectory instance
    `static FSDirectory` | CommandLineUtil.`newFSDirectory​(Class<? extends FSDirectory> clazz, Path path, LockFactory lf)` | Creates a new specific FSDirectory instance
    `static FSDirectory` | CommandLineUtil.`newFSDirectory​(String clazzName, Path path)` | Creates a specific FSDirectory instance starting from its class name, using the default lock factory
    `static FSDirectory` | CommandLineUtil.`newFSDirectory​(String clazzName, Path path, LockFactory lf)` | Creates a specific FSDirectory instance starting from its class name

    Methods in org.apache.lucene.util that return types with arguments of type FSDirectory
    Modifier and Type | Method | Description
    --- | --- | ---
    `static Class<? extends FSDirectory>` | CommandLineUtil.`loadFSDirectoryClass​(String clazzName)` | Loads a specific FSDirectory implementation

    Method parameters in org.apache.lucene.util with type arguments of type FSDirectory
    Modifier and Type | Method | Description
    --- | --- | ---
    `static FSDirectory` | CommandLineUtil.`newFSDirectory​(Class<? extends FSDirectory> clazz, Path path)` | Creates a new specific FSDirectory instance
    `static FSDirectory` | CommandLineUtil.`newFSDirectory​(Class<? extends FSDirectory> clazz, Path path, LockFactory lf)` | Creates a new specific FSDirectory instance