public class SolrSearchService extends Object implements SearchService<SolrQuery>
SearchService using Solr as the underlying search engine.| Modifier and Type | Field and Description |
|---|---|
protected String[] |
additionalFilterQueries
Set of additional filter queries that should be used on all search requests
|
static String |
DEFAULT_FILE_NAME_FIELD_NAME |
protected String |
defaultIndexId
The ID of the default index.
|
protected Map<String,String> |
deleteQueryMappings
ID regex/delete query mappings that can be used to specify special delete queries for certain files,
e.g.
|
static String |
DOCUMENT_LIST_DOCUMENTS_PROPERTY_NAME |
static String |
DOCUMENT_LIST_MAX_SCORE_PROPERTY_NAME |
static String |
DOCUMENT_LIST_NUM_FOUND_PROPERTY_NAME |
static String |
DOCUMENT_LIST_START_PROPERTY_NAME |
protected String |
fileNameFieldName
The file name field name (default is file-name).
|
protected FileTypeMap |
mimeTypesMap
Mime type map used to retrieve the mime types of files when submitting binary/structured content for indexing.
|
protected String |
multiValueIgnorePattern
The regex pattern used to ignore those additional fields that shouldn't be parsed for multi value.
|
protected String |
multiValueSeparator
Multi value separator for additional fields of structured documents.
|
static String |
SOLR_CONTENT_STREAM_UPDATE_URL |
protected org.apache.solr.client.solrj.SolrClient |
solrClient
The Solr client used to execute requests against a Solr server.
|
protected SolrDocumentBuilderImpl |
solrDocumentBuilder
The Solr document builder, to build Solr documents from generic XML documents.
|
| Constructor and Description |
|---|
SolrSearchService() |
| Modifier and Type | Method and Description |
|---|---|
protected void |
addAdditionalFilterQueries(String indexId,
SolrQuery solrQuery) |
void |
commit() |
void |
commit(String indexId) |
SolrQuery |
createQuery() |
SolrQuery |
createQuery(Map<String,String[]> params) |
void |
delete(String site,
String id) |
void |
delete(String indexId,
String site,
String id) |
protected Collection<Map<String,Object>> |
extractDocs(org.apache.solr.common.SolrDocumentList docList) |
protected String |
getDeleteQuery(String id) |
protected String |
getIndexPrefix(String indexId) |
protected String |
getSuccessfulMessage(String indexId,
String idOrQuery,
String operation,
Object solrResponse) |
Map<String,Object> |
search(SolrQuery query) |
Map<String,Object> |
search(String indexId,
SolrQuery query) |
void |
setAdditionalFilterQueries(String[] additionalFilterQueries)
Sets the set of additional filter queries that should be used on all search requests
|
void |
setDefaultIndexId(String defaultIndexId)
Sets the ID of the default index.
|
void |
setDeleteQueryMappings(Map<String,String> deleteQueryMappings)
Sets ID regex/delete query mappings that can be used to specify special delete queries for certain
files, e.g.
|
void |
setFileNameFieldName(String fileNameFieldName)
Sets the file name field (default is file-name).
|
void |
setMultiValueIgnorePattern(String multiValueIgnorePattern)
Sets the regex pattern used to ignore those additional fields that shouldn't be parsed for multi value.
|
void |
setMultiValueSeparator(String multiValueSeparator)
Sets the multi value separator for additional fields of structured documents.
|
void |
setSolrClient(org.apache.solr.client.solrj.SolrClient solrClient)
Sets the Solr client used to execute requests against a Solr server.
|
void |
setSolrDocumentBuilder(SolrDocumentBuilderImpl solrDocumentBuilder)
Sets the Solr document builder, to build Solr documents from generic XML documents.
|
protected org.apache.solr.common.params.SolrParams |
toActualSolrQuery(QueryParams queryParams) |
protected Map<String,Object> |
toMap(org.apache.solr.common.util.NamedList<Object> namedList) |
protected Object |
toSerializableValue(Object namedListValue) |
void |
update(String site,
String id,
String xml,
boolean ignoreRootInFieldNames) |
void |
update(String indexId,
String site,
String id,
String xml,
boolean ignoreRootInFieldNames) |
void |
updateContent(String site,
String id,
org.craftercms.core.service.Content content) |
void |
updateContent(String site,
String id,
org.craftercms.core.service.Content content,
Map<String,List<String>> additionalFields) |
void |
updateContent(String site,
String id,
File file) |
void |
updateContent(String site,
String id,
File file,
Map<String,List<String>> additionalFields) |
void |
updateContent(String indexId,
String site,
String id,
org.craftercms.core.service.Content content) |
void |
updateContent(String indexId,
String site,
String id,
org.craftercms.core.service.Content content,
Map<String,List<String>> additionalFields) |
void |
updateContent(String indexId,
String site,
String id,
File file) |
void |
updateContent(String indexId,
String site,
String id,
File file,
Map<String,List<String>> additionalFields) |
public static final String DEFAULT_FILE_NAME_FIELD_NAME
public static final String SOLR_CONTENT_STREAM_UPDATE_URL
public static final String DOCUMENT_LIST_START_PROPERTY_NAME
public static final String DOCUMENT_LIST_NUM_FOUND_PROPERTY_NAME
public static final String DOCUMENT_LIST_MAX_SCORE_PROPERTY_NAME
public static final String DOCUMENT_LIST_DOCUMENTS_PROPERTY_NAME
protected String defaultIndexId
protected String fileNameFieldName
protected org.apache.solr.client.solrj.SolrClient solrClient
protected SolrDocumentBuilderImpl solrDocumentBuilder
protected String multiValueSeparator
protected String multiValueIgnorePattern
protected Map<String,String> deleteQueryMappings
protected String[] additionalFilterQueries
protected FileTypeMap mimeTypesMap
public void setDefaultIndexId(String defaultIndexId)
public void setFileNameFieldName(String fileNameFieldName)
public void setSolrClient(org.apache.solr.client.solrj.SolrClient solrClient)
public void setSolrDocumentBuilder(SolrDocumentBuilderImpl solrDocumentBuilder)
public void setMultiValueSeparator(String multiValueSeparator)
public void setMultiValueIgnorePattern(String multiValueIgnorePattern)
public void setDeleteQueryMappings(Map<String,String> deleteQueryMappings)
public void setAdditionalFilterQueries(String[] additionalFilterQueries)
public SolrQuery createQuery()
createQuery in interface QueryFactory<SolrQuery>public SolrQuery createQuery(Map<String,String[]> params)
createQuery in interface QueryFactory<SolrQuery>public Map<String,Object> search(SolrQuery query)
search in interface SearchService<SolrQuery>public Map<String,Object> search(String indexId, SolrQuery query) throws SearchException
search in interface SearchService<SolrQuery>SearchExceptionpublic void update(String site, String id, String xml, boolean ignoreRootInFieldNames) throws SearchException
update in interface SearchService<SolrQuery>SearchExceptionpublic void update(String indexId, String site, String id, String xml, boolean ignoreRootInFieldNames) throws SearchException
update in interface SearchService<SolrQuery>SearchExceptionpublic void delete(String site, String id) throws SearchException
delete in interface SearchService<SolrQuery>SearchExceptionpublic void delete(String indexId, String site, String id) throws SearchException
delete in interface SearchService<SolrQuery>SearchExceptionpublic void updateContent(String site, String id, File file) throws SearchException
updateContent in interface SearchService<SolrQuery>SearchExceptionpublic void updateContent(String indexId, String site, String id, File file) throws SearchException
updateContent in interface SearchService<SolrQuery>SearchExceptionpublic void updateContent(String site, String id, File file, Map<String,List<String>> additionalFields) throws SearchException
updateContent in interface SearchService<SolrQuery>SearchExceptionpublic void updateContent(String indexId, String site, String id, File file, Map<String,List<String>> additionalFields) throws SearchException
updateContent in interface SearchService<SolrQuery>SearchExceptionpublic void updateContent(String site, String id, org.craftercms.core.service.Content content) throws SearchException
updateContent in interface SearchService<SolrQuery>SearchExceptionpublic void updateContent(String indexId, String site, String id, org.craftercms.core.service.Content content) throws SearchException
updateContent in interface SearchService<SolrQuery>SearchExceptionpublic void updateContent(String site, String id, org.craftercms.core.service.Content content, Map<String,List<String>> additionalFields) throws SearchException
updateContent in interface SearchService<SolrQuery>SearchExceptionpublic void updateContent(String indexId, String site, String id, org.craftercms.core.service.Content content, Map<String,List<String>> additionalFields) throws SearchException
updateContent in interface SearchService<SolrQuery>SearchExceptionpublic void commit()
throws SearchException
commit in interface SearchService<SolrQuery>SearchExceptionpublic void commit(String indexId) throws SearchException
commit in interface SearchService<SolrQuery>SearchExceptionprotected org.apache.solr.common.params.SolrParams toActualSolrQuery(QueryParams queryParams)
protected Collection<Map<String,Object>> extractDocs(org.apache.solr.common.SolrDocumentList docList)
protected String getSuccessfulMessage(String indexId, String idOrQuery, String operation, Object solrResponse)
Copyright © 2020 CrafterCMS. All rights reserved.