public interface IndexManagerType extends IndexFamilyType
IndexFamilyType
, i.e. for representations of indexing and query technologies,
such as embedding Apache Lucene or remote via Elasticsearch.
From the point of view of Hibernate Search, an IndexManagerType
is the same as an IndexFamilyType
,
but IndexFamilyType
is part of Hibernate Search APIs
and we simply don't want to expose the methods of IndexManagerType
to users.
Instances of implementations of this interface could be used as keys in a Map, so make sure to implement appropriate equals and hashCode functions.
The purpose is that some components will have to adapt their output depending on the target technology being used, so they might need to know the type. We refrain from using Enums as that would not be extensible, and avoid using the class type of an IndexManager to allow creating multiple custom implementations for the same type of technology.
Modifier and Type | Method and Description |
---|---|
IndexFamilyImplementor |
createIndexFamily(ServiceManager serviceManager,
SearchConfiguration cfg) |
IndexFamilyImplementor createIndexFamily(ServiceManager serviceManager, SearchConfiguration cfg)
serviceManager
- the service managercfg
- the Hibernate Search configuration, providing in particular access to configuration properties.Copyright © 2006-2019 Red Hat, Inc. and others. Licensed under the GNU Lesser General Public License (LGPL), version 2.1 or later.