List of usage examples for com.liferay.portal.kernel.search SearchContext getCompanyId
public long getCompanyId()
From source file:org.rsc.liferay.solr.SolrIndexSearcher.java
License:Open Source License
protected Hits doSearch(SearchContext searchContext, Query query) throws Exception { SolrQuery solrQuery = translateQuery(searchContext.getCompanyId(), query, searchContext.getSorts(), searchContext.getStart(), searchContext.getEnd()); Map<String, Facet> facets = searchContext.getFacets(); for (Facet facet : facets.values()) { if (facet.isStatic()) { continue; }/* ww w . j a va2s .c o m*/ FacetConfiguration facetConfiguration = facet.getFacetConfiguration(); if (facet instanceof RangeFacet) { solrQuery.addFacetField(facetConfiguration.getFieldName()); JSONObject dataJSONObject = facetConfiguration.getData(); JSONArray rangesJSONArray = dataJSONObject.getJSONArray("ranges"); if (rangesJSONArray == null) { continue; } for (int i = 0; i < rangesJSONArray.length(); i++) { JSONObject rangeJSONObject = rangesJSONArray.getJSONObject(i); String range = rangeJSONObject.getString("range"); String facetQuery = facetConfiguration.getFieldName() + StringPool.COLON + range; solrQuery.addFacetQuery(facetQuery); } } else { solrQuery.addFacetField(facetConfiguration.getFieldName()); } String facetSort = FacetParams.FACET_SORT_COUNT; String order = facetConfiguration.getOrder(); if (order.equals("OrderValueAsc")) { facetSort = FacetParams.FACET_SORT_INDEX; } solrQuery.add("f." + facetConfiguration.getFieldName() + ".facet.sort", facetSort); } solrQuery.setFacetLimit(-1); QueryResponse queryResponse = _solrServer.query(solrQuery, METHOD.POST); boolean allResults = false; if (solrQuery.getRows() == 0) { allResults = true; } List<FacetField> facetFields = queryResponse.getFacetFields(); if (facetFields != null) { for (FacetField facetField : facetFields) { Facet facet = facets.get(facetField.getName()); FacetCollector facetCollector = null; if (facet instanceof RangeFacet) { facetCollector = new SolrFacetQueryCollector(facetField.getName(), queryResponse.getFacetQuery()); } else { facetCollector = new SolrFacetFieldCollector(facetField.getName(), facetField); } facet.setFacetCollector(facetCollector); } } return subset(solrQuery, query, query.getQueryConfig(), queryResponse, allResults); }
From source file:org.rsc.liferay.solr.SolrIndexWriter.java
License:Open Source License
@Override public void deletePortletDocuments(SearchContext searchContext, String portletId) throws SearchException { try {/*from w w w.ja va2s . c om*/ long companyId = searchContext.getCompanyId(); StringBundler sb = null; if (companyId > 0) { sb = new StringBundler(9); sb.append(StringPool.PLUS); sb.append(Field.COMPANY_ID); sb.append(StringPool.COLON); sb.append(companyId); sb.append(StringPool.SPACE); } if (sb == null) { sb = new StringBundler(4); } sb.append(StringPool.PLUS); sb.append(Field.PORTLET_ID); sb.append(StringPool.COLON); sb.append(portletId); _solrServer.deleteByQuery(sb.toString()); if (_commit) { _solrServer.commit(); } } catch (Exception e) { _log.error(e, e); throw new SearchException(e.getMessage()); } }
From source file:org.rsc.liferay.solr.SolrSpellCheckIndexWriter.java
License:Open Source License
protected String buildDeleteQuery(SearchContext searchContext, String type) { StringBundler sb = new StringBundler(14); sb.append(StringPool.PLUS);//from w w w . j a v a2s. c o m sb.append(Field.COMPANY_ID); sb.append(StringPool.COLON); sb.append(searchContext.getCompanyId()); addQuerySeparator(sb); sb.append(Field.PORTLET_ID); sb.append(StringPool.COLON); sb.append(PortletKeys.SEARCH); addQuerySeparator(sb); addQueryType(sb, type); return sb.toString(); }
From source file:vn.com.ecopharma.emp.service.impl.EmpLocalServiceImpl.java
License:Open Source License
/** * @param query//from w w w . j a v a 2s . c om * @param searchContext * @param start * @param end * @return * @throws ParseException */ @Deprecated public List<Document> filterEmployeeByAutocompleteQuery(String query, SearchContext searchContext, int start, int end) throws ParseException { final Map<String, Object> filters = new HashMap<>(); filters.put(GLOBAL_FILTER, query); return filterEmployeeByFields(searchContext, filters, null, searchContext.getCompanyId(), start, end); }
From source file:vn.com.ecopharma.emp.service.impl.EmpLocalServiceImpl.java
License:Open Source License
public List<Document> filterEmployeeByAutocompleteQuery(String query, Map<String, Object> filters, SearchContext searchContext, int start, int end) throws ParseException { filters.put("AUTO_COMPLETE", new AbstractMap.SimpleEntry<String[], String>(getAutocompleteSearchFields(), query)); return filterEmployeeByFields(searchContext, filters, null, searchContext.getCompanyId(), start, end); }