public class ElasticSearchServiceConnector
extends org.exoplatform.commons.api.search.SearchServiceConnector
| Modifier and Type | Field and Description |
|---|---|
static int |
HIGHLIGHT_FRAGMENT_NUMBER_DEFAULT_VALUE |
static String |
HIGHLIGHT_FRAGMENT_NUMBER_PARAM_NAME |
static int |
HIGHLIGHT_FRAGMENT_SIZE_DEFAULT_VALUE |
static String |
HIGHLIGHT_FRAGMENT_SIZE_PARAM_NAME |
int |
highlightFragmentNumber |
int |
highlightFragmentSize |
| Constructor and Description |
|---|
ElasticSearchServiceConnector(org.exoplatform.container.xml.InitParams initParams,
ElasticSearchingClient client) |
| Modifier and Type | Method and Description |
|---|---|
protected String |
buildDetail(org.json.simple.JSONObject jsonHit,
org.exoplatform.commons.api.search.data.SearchContext searchContext) |
protected String |
buildFilteredQuery(String query,
Collection<String> sites,
List<ElasticSearchFilter> filters,
int offset,
int limit,
String sort,
String order) |
protected org.exoplatform.commons.api.search.data.SearchResult |
buildHit(org.json.simple.JSONObject jsonHit,
org.exoplatform.commons.api.search.data.SearchContext searchContext) |
protected String |
buildQuery(String query,
Collection<String> sites,
int offset,
int limit,
String sort,
String order) |
protected Collection<org.exoplatform.commons.api.search.data.SearchResult> |
buildResult(String jsonResponse,
org.exoplatform.commons.api.search.data.SearchContext context) |
protected String |
escapeReservedCharacters(String query)
Escaped reserved characters by ES when using query_string.
|
Collection<org.exoplatform.commons.api.search.data.SearchResult> |
filteredSearch(org.exoplatform.commons.api.search.data.SearchContext context,
String query,
List<ElasticSearchFilter> filters,
Collection<String> sites,
int offset,
int limit,
String sort,
String order)
Search on ES with additional filter on the search query
Different Filter are:
- Term Filter (Check if a specific term of a field exist)
- Not exist Filter (Check if a term not exist)
- Exist Filter (check if a term exist)
|
protected String |
getAdditionalFilters(List<ElasticSearchFilter> filters) |
ElasticSearchingClient |
getClient() |
protected String |
getFields() |
String |
getImg() |
String |
getIndex() |
protected String |
getPermissionFilter() |
List<String> |
getSearchFields() |
protected String |
getSitesFilter(Collection<String> sitesCollection) |
protected String |
getSourceFields() |
String |
getTitleElasticFieldName() |
protected String |
getTitleFromJsonResult(org.json.simple.JSONObject hitSource) |
String |
getType() |
protected Long |
getUpdatedDateFromResult(org.json.simple.JSONObject hitSource) |
protected String |
getUrlFromJsonResult(org.json.simple.JSONObject hitSource,
org.exoplatform.commons.api.search.data.SearchContext context) |
Collection<org.exoplatform.commons.api.search.data.SearchResult> |
search(org.exoplatform.commons.api.search.data.SearchContext context,
String query,
Collection<String> sites,
int offset,
int limit,
String sort,
String order) |
void |
setImg(String img) |
void |
setIndex(String index) |
void |
setSearchFields(List<String> searchFields) |
void |
setTitleElasticFieldName(String titleElasticFieldName) |
void |
setType(String type) |
getDisplayName, getSearchType, isEnable, isEnabledForAnonymous, setDisplayName, setEnable, setEnabledForAnonymous, setSearchTypepublic static final String HIGHLIGHT_FRAGMENT_SIZE_PARAM_NAME
public static final int HIGHLIGHT_FRAGMENT_SIZE_DEFAULT_VALUE
public static final String HIGHLIGHT_FRAGMENT_NUMBER_PARAM_NAME
public static final int HIGHLIGHT_FRAGMENT_NUMBER_DEFAULT_VALUE
public int highlightFragmentSize
public int highlightFragmentNumber
public ElasticSearchServiceConnector(org.exoplatform.container.xml.InitParams initParams,
ElasticSearchingClient client)
public Collection<org.exoplatform.commons.api.search.data.SearchResult> search(org.exoplatform.commons.api.search.data.SearchContext context, String query, Collection<String> sites, int offset, int limit, String sort, String order)
search in class org.exoplatform.commons.api.search.SearchServiceConnectorpublic Collection<org.exoplatform.commons.api.search.data.SearchResult> filteredSearch(org.exoplatform.commons.api.search.data.SearchContext context, String query, List<ElasticSearchFilter> filters, Collection<String> sites, int offset, int limit, String sort, String order)
context - query - filters - sites - offset - limit - sort - order - protected String buildQuery(String query, Collection<String> sites, int offset, int limit, String sort, String order)
protected String buildFilteredQuery(String query, Collection<String> sites, List<ElasticSearchFilter> filters, int offset, int limit, String sort, String order)
protected String escapeReservedCharacters(String query)
query - The unescaped query stringprotected Collection<org.exoplatform.commons.api.search.data.SearchResult> buildResult(String jsonResponse, org.exoplatform.commons.api.search.data.SearchContext context)
protected org.exoplatform.commons.api.search.data.SearchResult buildHit(org.json.simple.JSONObject jsonHit,
org.exoplatform.commons.api.search.data.SearchContext searchContext)
protected String buildDetail(org.json.simple.JSONObject jsonHit, org.exoplatform.commons.api.search.data.SearchContext searchContext)
protected Long getUpdatedDateFromResult(org.json.simple.JSONObject hitSource)
protected String getUrlFromJsonResult(org.json.simple.JSONObject hitSource, org.exoplatform.commons.api.search.data.SearchContext context)
protected String getTitleFromJsonResult(org.json.simple.JSONObject hitSource)
protected String getAdditionalFilters(List<ElasticSearchFilter> filters)
protected String getFields()
protected String getPermissionFilter()
protected String getSitesFilter(Collection<String> sitesCollection)
protected String getSourceFields()
public String getIndex()
public void setIndex(String index)
public String getImg()
public void setImg(String img)
public String getTitleElasticFieldName()
public void setTitleElasticFieldName(String titleElasticFieldName)
public String getType()
public void setType(String type)
public ElasticSearchingClient getClient()
Copyright © 2003–2020 eXo Platform SAS. All rights reserved.