package com.senseidb.search.req; import java.util.Set; /** * Used to customize search request before it's issued from a broker per each node. * It's supplied via {@link SenseiRequestCustomizerFactory} on each broker request. * * @author Dmytro Ivchenko */ public interface SenseiRequestCustomizer { /** * Customizes request by changing some fields. It's called per each node request. * It can change existing request or produce a new instance of {@link SenseiRequest}. * @param request request to customize * @param partitions partitions against which this request if issued. Typically it's a single partition per each node. * @return customized request */ public SenseiRequest customize(SenseiRequest request, Set<Integer> partitions); }