/* * DrakkarKeel - An Enterprise Collaborative Search Platform * * The contents of this file are subject under the terms described in the * DRAKKARKEEL_LICENSE file included in this distribution; you may not use this * file except in compliance with the License. * * 2013-2014 DrakkarKeel Platform. */ package drakkar.mast.retrieval.improves; import drakkar.oar.ResultSetMetaData; import drakkar.mast.SearchException; import drakkar.mast.SearchableException; import drakkar.mast.retrieval.Searchable; import java.util.List; import java.util.Map; /** * Esta clase maneja los diferentes métodos de búsquedas colaborativas ó no, soportadas * por DrakkarKeel para los principios de búsquedas: MultiSearch y MultiSearch and Split * * */ public class MultiSearch implements ResultsSetImprovable { private DefaultMultiSearch dMultiSearch; private CollaborativeMultiSearch cMultiSearch; /** * Constructor de la clase * * @param searchers lista de buscadores */ public MultiSearch(Map<Integer, Searchable> searcherHash, List<Searchable> searchersList) { this.dMultiSearch = new DefaultMultiSearch(searcherHash, searchersList); this.cMultiSearch = new CollaborativeMultiSearch(dMultiSearch); } /** * {@inheritDoc} */ public ResultSetMetaData search(String query, boolean caseSensitive) throws SearchException { return this.dMultiSearch.search(query, caseSensitive); } /** * {@inheritDoc} */ public ResultSetMetaData search(String query, int field, boolean caseSensitive) throws SearchException { return this.dMultiSearch.search(query, field, caseSensitive); } /** * {@inheritDoc} */ public ResultSetMetaData search(String query, int[] fields, boolean caseSensitive) throws SearchException { return this.dMultiSearch.search(query, fields, caseSensitive); } /** * {@inheritDoc} */ public ResultSetMetaData search(String query, String docType, boolean caseSensitive) throws SearchException { return this.dMultiSearch.search(query, docType, caseSensitive); } /** * {@inheritDoc} */ public ResultSetMetaData search(String query, String[] docTypes, boolean caseSensitive) throws SearchException { return this.dMultiSearch.search(query, docTypes, caseSensitive); } /** * {@inheritDoc} */ public ResultSetMetaData search(String query, String docType, int field, boolean caseSensitive) throws SearchException { return this.dMultiSearch.search(query, docType, field, caseSensitive); } /** * {@inheritDoc} */ public ResultSetMetaData search(String query, String docType, int[] fields, boolean caseSensitive) throws SearchException { return this.dMultiSearch.search(query, docType, fields, caseSensitive); } /** * {@inheritDoc} */ public ResultSetMetaData search(String query, String[] docTypes, int field, boolean caseSensitive) throws SearchException { return this.dMultiSearch.search(query, docTypes, field, caseSensitive); } /** * {@inheritDoc} */ public ResultSetMetaData search(String query, String[] docTypes, int[] fields, boolean caseSensitive) throws SearchException { return this.dMultiSearch.search(query, docTypes, fields, caseSensitive); } //--- - - - - -- - - - - - - - - - -- - - - - // /** * {@inheritDoc} */ public ResultSetMetaData search(int[] searchers, String query, boolean caseSensitive) throws SearchableException, SearchException { return this.dMultiSearch.search(searchers, query, caseSensitive); } /** * {@inheritDoc} */ public ResultSetMetaData search(int[] searchers, String query, int field, boolean caseSensitive) throws SearchableException, SearchException { return this.dMultiSearch.search(searchers, query, field, caseSensitive); } /** * {@inheritDoc} */ public ResultSetMetaData search(int[] searchers, String query, int[] fields, boolean caseSensitive) throws SearchableException, SearchException { return this.dMultiSearch.search(searchers, query, fields, caseSensitive); } /** * {@inheritDoc} */ public ResultSetMetaData search(int[] searchers, String query, String docType, boolean caseSensitive) throws SearchableException, SearchException { return this.dMultiSearch.search(searchers, query, docType, caseSensitive); } /** * {@inheritDoc} */ public ResultSetMetaData search(int[] searchers, String query, String[] docTypes, boolean caseSensitive) throws SearchableException, SearchException { return this.dMultiSearch.search(searchers, query, docTypes, caseSensitive); } /** * {@inheritDoc} */ public ResultSetMetaData search(int[] searchers, String query, String docType, int field, boolean caseSensitive) throws SearchableException, SearchException { return this.dMultiSearch.search(searchers, query, docType, field, caseSensitive); } /** * {@inheritDoc} */ public ResultSetMetaData search(int[] searchers, String query, String docType, int[] fields, boolean caseSensitive) throws SearchableException, SearchException { return this.dMultiSearch.search(searchers, query, docType, fields, caseSensitive); } /** * {@inheritDoc} */ public ResultSetMetaData search(int[] searchers, String query, String[] docTypes, int field, boolean caseSensitive) throws SearchableException, SearchException { return this.dMultiSearch.search(searchers, query, docTypes, field, caseSensitive); } /** * {@inheritDoc} */ public ResultSetMetaData search(int[] searchers, String query, String[] docTypes, int[] fields, boolean caseSensitive) throws SearchableException, SearchException { return this.dMultiSearch.search(searchers, query, docTypes, fields, caseSensitive); } //-- - - - - - - -- - - - - - - - - - - - // /** * {@inheritDoc} */ public List<ResultSetMetaData> search(String query, boolean caseSensitive, int members) throws SearchException { return this.cMultiSearch.search(query, caseSensitive, members); } /** * {@inheritDoc} */ public List<ResultSetMetaData> search(String query, int field, boolean caseSensitive, int members) throws SearchException { return this.cMultiSearch.search(query, field, caseSensitive, members); } /** * {@inheritDoc} */ public List<ResultSetMetaData> search(String query, int[] fields, boolean caseSensitive, int members) throws SearchException { return this.cMultiSearch.search(query, fields, caseSensitive, members); } /** * {@inheritDoc} */ public List<ResultSetMetaData> search(String query, String docType, boolean caseSensitive, int members) throws SearchException { return this.cMultiSearch.search(query, docType, caseSensitive, members); } /** /** * {@inheritDoc} */ public List<ResultSetMetaData> search(String query, String[] docTypes, boolean caseSensitive, int members) throws SearchException { return this.cMultiSearch.search(query, docTypes, caseSensitive, members); } /** * {@inheritDoc} */ public List<ResultSetMetaData> search(String query, String docType, int field, boolean caseSensitive, int members) throws SearchException { return this.cMultiSearch.search(query, docType, field, caseSensitive, members); } /** * {@inheritDoc} */ public List<ResultSetMetaData> search(String query, String docType, int[] fields, boolean caseSensitive, int members) throws SearchException { return this.cMultiSearch.search(query, docType, fields, caseSensitive, members); } /** /** * {@inheritDoc} */ public List<ResultSetMetaData> search(String query, String[] docTypes, int field, boolean caseSensitive, int members) throws SearchException { return this.cMultiSearch.search(query, docTypes, field, caseSensitive, members); } /** /** * {@inheritDoc} */ public List<ResultSetMetaData> search(String query, String[] docTypes, int[] fields, boolean caseSensitive, int members) throws SearchException { return this.cMultiSearch.search(query, docTypes, fields, caseSensitive, members); } //- -- - - - - - - - - -- -- - - - - -- - // /** /** * {@inheritDoc} */ public List<ResultSetMetaData> search(int[] searchers, String query, boolean caseSensitive, int members) throws SearchException, SearchableException { return this.cMultiSearch.search(searchers, query, caseSensitive, members); } /** * {@inheritDoc} */ public List<ResultSetMetaData> search(int[] searchers, String query, int field, boolean caseSensitive, int members) throws SearchException, SearchableException { return this.cMultiSearch.search(searchers, query, field, caseSensitive, members); } /** * {@inheritDoc} */ public List<ResultSetMetaData> search(int[] searchers, String query, int[] fields, boolean caseSensitive, int members) throws SearchException, SearchableException { return this.cMultiSearch.search(searchers, query, fields, caseSensitive, members); } /** * {@inheritDoc} */ public List<ResultSetMetaData> search(int[] searchers, String query, String docType, boolean caseSensitive, int members) throws SearchException, SearchableException { return this.cMultiSearch.search(searchers, query, docType, caseSensitive, members); } /** * {@inheritDoc} */ public List<ResultSetMetaData> search(int[] searchers, String query, String[] docTypes, boolean caseSensitive, int members) throws SearchException, SearchableException { return this.cMultiSearch.search(searchers, query, docTypes, caseSensitive, members); } /** * {@inheritDoc} */ public List<ResultSetMetaData> search(int[] searchers, String query, String docType, int field, boolean caseSensitive, int members) throws SearchException, SearchableException { return this.cMultiSearch.search(searchers, query, docType, field, caseSensitive, members); } /** * {@inheritDoc} */ public List<ResultSetMetaData> search(int[] searchers, String query, String docType, int[] fields, boolean caseSensitive, int members) throws SearchException, SearchableException { return this.cMultiSearch.search(searchers, query, docType, fields, caseSensitive, members); } /** * {@inheritDoc} */ public List<ResultSetMetaData> search(int[] searchers, String query, String[] docTypes, int field, boolean caseSensitive, int members) throws SearchException, SearchableException { return this.cMultiSearch.search(searchers, query, docTypes, field, caseSensitive, members); } /** * {@inheritDoc} */ public List<ResultSetMetaData> search(int[] searchers, String query, String[] docTypes, int[] fields, boolean caseSensitive, int members) throws SearchException, SearchableException { return this.cMultiSearch.search(searchers, query, docTypes, fields, caseSensitive, members); } }