## Uses of Class
org.apache.lucene.index.IndexWriter

Packages that use IndexWriter
org.apache.lucene.index: Code to maintain and access indices.
org.apache.lucene.search: Code to search indices.

### Uses of IndexWriter in org.apache.lucene.index

Methods in org.apache.lucene.index with parameters of type IndexWriter
`protected void` ConcurrentMergeScheduler.`doMerge(IndexWriter writer, MergePolicy.OneMerge merge)` Does the actual merge, by calling `merge(org.apache.lucene.index.MergePolicy.OneMerge)`
`protected DirectoryReader` StandardDirectoryReader.`doOpenIfChanged(IndexWriter writer, boolean applyAllDeletes)`
`protected abstract DirectoryReader` DirectoryReader.`doOpenIfChanged(IndexWriter writer, boolean applyAllDeletes)` Implement this method to support `DirectoryReader.openIfChanged(DirectoryReader,IndexWriter,boolean)`.
`protected DirectoryReader` FilterDirectoryReader.`doOpenIfChanged(IndexWriter writer, boolean applyAllDeletes)`
`protected ConcurrentMergeScheduler.MergeThread` ConcurrentMergeScheduler.`getMergeThread(IndexWriter writer, MergePolicy.OneMerge merge)` Create and return a new MergeThread
`protected boolean` ConcurrentMergeScheduler.`maybeStall(IndexWriter writer)` This is invoked by `ConcurrentMergeScheduler.merge(org.apache.lucene.index.IndexWriter, org.apache.lucene.index.MergeTrigger, boolean)` to possibly stall the incoming thread when there are too many merges running or pending.
`abstract void` MergeScheduler.`merge(IndexWriter writer, MergeTrigger trigger, boolean newMergesFound)` Run the merges provided by `getNextMerge()`.
`void` NoMergeScheduler.`merge(IndexWriter writer, MergeTrigger trigger, boolean newMergesFound)`
`void` ConcurrentMergeScheduler.`merge(IndexWriter writer, MergeTrigger trigger, boolean newMergesFound)`
`void` SerialMergeScheduler.`merge(IndexWriter writer, MergeTrigger trigger, boolean newMergesFound)` Just do the merges in sequence.
`static DirectoryReader` DirectoryReader.`open(IndexWriter writer)` Open a near real time IndexReader from the `IndexWriter`.
`static DirectoryReader` DirectoryReader.`open(IndexWriter writer, boolean applyAllDeletes, boolean writeAllDeletes)` Expert: open a near real time IndexReader from the `IndexWriter`, controlling whether past deletions should be applied.
`static DirectoryReader` DirectoryReader.`openIfChanged(DirectoryReader oldReader, IndexWriter writer)` Expert: If there changes (committed or not) in the `IndexWriter` versus what the provided reader is searching, then open and return a new IndexReader searching both committed and uncommitted changes from the writer; else, return null (though, the current implementation never returns null).
`static DirectoryReader` DirectoryReader.`openIfChanged(DirectoryReader oldReader, IndexWriter writer, boolean applyAllDeletes)` Expert: Opens a new reader, if there are any changes, controlling whether past deletions should be applied.

Constructors in org.apache.lucene.index with parameters of type IndexWriter
Constructor and Description
`MergeThread(IndexWriter writer, MergePolicy.OneMerge merge)` Sole constructor.
`ReaderManager(IndexWriter writer)` Creates and returns a new ReaderManager from the given `IndexWriter`.
`ReaderManager(IndexWriter writer, boolean applyAllDeletes, boolean writeAllDeletes)` Expert: creates and returns a new ReaderManager from the given `IndexWriter`, controlling whether past deletions should be applied.

### Uses of IndexWriter in org.apache.lucene.search

Constructors in org.apache.lucene.search with parameters of type IndexWriter
Constructor and Description
`ControlledRealTimeReopenThread(IndexWriter writer, ReferenceManager<T> manager, double targetMaxStaleSec, double targetMinStaleSec)` Create ControlledRealTimeReopenThread, to periodically reopen the `ReferenceManager`.
`SearcherManager(IndexWriter writer, boolean applyAllDeletes, boolean writeAllDeletes, SearcherFactory searcherFactory)` Expert: creates and returns a new SearcherManager from the given `IndexWriter`, controlling whether past deletions should be applied.
`SearcherManager(IndexWriter writer, SearcherFactory searcherFactory)` Creates and returns a new SearcherManager from the given `IndexWriter`.