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

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

## Uses of LockFactory in org.apache.lucene.store

Subclasses of LockFactory in org.apache.lucene.store
Modifier and Type
Class
Description
`class`
`FSLockFactory`
Base class for file system based locking implementation.
`final class`
`NativeFSLockFactory`
Implements `LockFactory` using native OS file locks.
`final class`
`NoLockFactory`
Use this `LockFactory` to disable locking entirely.
`final class`
`SimpleFSLockFactory`
Implements `LockFactory` using `Files.createFile(java.nio.file.Path, java.nio.file.attribute.FileAttribute<?>...)`.
`final class`
`SingleInstanceLockFactory`
Implements `LockFactory` for a single in-process instance, meaning all locking will take place through this one instance.
`final class`
`VerifyingLockFactory`
A `LockFactory` that wraps another `LockFactory` and verifies that each lock obtain/release is "correct" (never results in two processes holding the lock at the same time).
Fields in org.apache.lucene.store declared as LockFactory
Modifier and Type
Field
Description
`protected final LockFactory`
BaseDirectory.`lockFactory`
Holds the LockFactory instance (implements locking for this Directory instance).
Methods in org.apache.lucene.store with parameters of type LockFactory
Modifier and Type
Method
Description
`static FSDirectory`
FSDirectory.`open(Path path, LockFactory lockFactory)`
Just like `FSDirectory.open(Path)`, but allows you to also specify a custom `LockFactory`.
Constructors in org.apache.lucene.store with parameters of type LockFactory
Modifier
Constructor
Description
`protected`
`BaseDirectory(LockFactory lockFactory)`
Sole constructor.
``
`ByteBuffersDirectory(LockFactory lockFactory)`
``
`ByteBuffersDirectory(LockFactory factory, Supplier<ByteBuffersDataOutput> bbOutputSupplier, BiFunction<String,ByteBuffersDataOutput,IndexInput> outputToInput)`
`protected`
`FSDirectory(Path path, LockFactory lockFactory)`
Create a new FSDirectory for the named location (ctor for subclasses).
``
`MMapDirectory(Path path, LockFactory lockFactory)`
Create a new MMapDirectory for the named location.
``
`MMapDirectory(Path path, LockFactory lockFactory, long maxChunkSize)`
Create a new MMapDirectory for the named location, specifying the maximum chunk size used for memory mapping.
``
`NIOFSDirectory(Path path, LockFactory lockFactory)`
Create a new NIOFSDirectory for the named location.
``
`VerifyingLockFactory(LockFactory lf, InputStream in, OutputStream out)`

## Uses of LockFactory in org.apache.lucene.util

Methods in org.apache.lucene.util with parameters of type LockFactory
Modifier and Type
Method
Description
`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, LockFactory lf)`
Creates a specific FSDirectory instance starting from its class name