package org.infinispan.query.spi; import org.hibernate.search.query.engine.spi.TimeoutExceptionFactory; import org.infinispan.query.SearchManager; import org.infinispan.query.Transformer; public interface SearchManagerImplementor extends SearchManager { /** * Registers a {@link org.infinispan.query.Transformer} for the supplied key class. When storing * keys in cache that are neither simple (String, int, ...) nor annotated with @Transformable, * Infinispan-Query will need to know what Transformer to use when transforming the keys to * Strings. Clients must specify what Transformer to use for a particular key class by * registering it through this method. * * @param keyClass * the key class for which the supplied transformerClass should be used * @param transformerClass * the transformer class to use for the supplied key class */ void registerKeyTransformer(Class<?> keyClass, Class<? extends Transformer> transformerClass); /** * Define the timeout exception factory to customize the exception thrown when the query timeout * is exceeded. * * @param timeoutExceptionFactory * the timeout exception factory to use */ void setTimeoutExceptionFactory(TimeoutExceptionFactory timeoutExceptionFactory); }