<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc -->
<title>org.apache.geode.cache.lucene (Apache Geode 1.15.1)</title>
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
</head>
<body>
<h1 class="bar"><a href="../../../../../org/apache/geode/cache/lucene/package-summary.html" target="classFrame">org.apache.geode.cache.lucene</a></h1>
<div class="indexContainer">
<h2 title="Interfaces">Interfaces</h2>
<ul title="Interfaces">
<li><a href="LuceneIndex.html" title="interface in org.apache.geode.cache.lucene" target="classFrame"><span class="interfaceName">LuceneIndex</span></a></li>
<li><a href="LuceneIndexFactory.html" title="interface in org.apache.geode.cache.lucene" target="classFrame"><span class="interfaceName">LuceneIndexFactory</span></a></li>
<li><a href="LuceneQuery.html" title="interface in org.apache.geode.cache.lucene" target="classFrame"><span class="interfaceName">LuceneQuery</span></a></li>
<li><a href="LuceneQueryFactory.html" title="interface in org.apache.geode.cache.lucene" target="classFrame"><span class="interfaceName">LuceneQueryFactory</span></a></li>
<li><a href="LuceneQueryProvider.html" title="interface in org.apache.geode.cache.lucene" target="classFrame"><span class="interfaceName">LuceneQueryProvider</span></a></li>
<li><a href="LuceneResultStruct.html" title="interface in org.apache.geode.cache.lucene" target="classFrame"><span class="interfaceName">LuceneResultStruct</span></a></li>
<li><a href="LuceneSerializer.html" title="interface in org.apache.geode.cache.lucene" target="classFrame"><span class="interfaceName">LuceneSerializer</span></a></li>
<li><a href="LuceneService.html" title="interface in org.apache.geode.cache.lucene" target="classFrame"><span class="interfaceName">LuceneService</span></a></li>
<li><a href="PageableLuceneQueryResults.html" title="interface in org.apache.geode.cache.lucene" target="classFrame"><span class="interfaceName">PageableLuceneQueryResults</span></a></li>
</ul>
<h2 title="Classes">Classes</h2>
<ul title="Classes">
<li><a href="FlatFormatSerializer.html" title="class in org.apache.geode.cache.lucene" target="classFrame">FlatFormatSerializer</a></li>
<li><a href="LuceneServiceProvider.html" title="class in org.apache.geode.cache.lucene" target="classFrame">LuceneServiceProvider</a></li>
</ul>
<h2 title="Exceptions">Exceptions</h2>
<ul title="Exceptions">
<li><a href="LuceneIndexDestroyedException.html" title="class in org.apache.geode.cache.lucene" target="classFrame">LuceneIndexDestroyedException</a></li>
<li><a href="LuceneIndexExistsException.html" title="class in org.apache.geode.cache.lucene" target="classFrame">LuceneIndexExistsException</a></li>
<li><a href="LuceneIndexNotFoundException.html" title="class in org.apache.geode.cache.lucene" target="classFrame">LuceneIndexNotFoundException</a></li>
<li><a href="LuceneQueryException.html" title="class in org.apache.geode.cache.lucene" target="classFrame">LuceneQueryException</a></li>
</ul>
</div>
</body>
</html>
