You can always access the Lucene directories through plain Lucene,
the Directory structure is in no way different with or without Hibernate
Search. However there are some more convenient ways to access a given
Directory. The SearchFactory keeps track of the
DirectoryProviders per indexed class. One directory
provider can be shared amongst several indexed classes if the classes
share the same underlying index directory. While usually not the case, a
given entity can have several DirectoryProviders if
the index is sharded (see Section 3.2, “Sharding indexes”).
Example 8.2. Accessing the Lucene Directory
DirectoryProvider[] provider = searchFactory.getDirectoryProviders(Order.class); org.apache.lucene.store.Directory directory = provider[0].getDirectory();
In this example, directory points to the lucene index storing
Orders information. Note that the obtained Lucene
directory must not be closed (this is Hibernate Search
responsibility).