Package org.ametys.cms.search.solr
Class SolrQuerySearchAction
java.lang.Object
org.apache.avalon.framework.logger.AbstractLogEnabled
org.apache.cocoon.acting.AbstractAction
org.apache.cocoon.acting.ServiceableAction
org.ametys.cms.search.cocoon.SearchAction
org.ametys.cms.search.solr.SolrQuerySearchAction
- All Implemented Interfaces:
Component,Contextualizable,LogEnabled,Serviceable,Action
Execute a solr query with custom columns and facets.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprotected classObject representing search values. -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected ColumnHelperThe helper for columnsprotected ContentTypesHelperThe content types helperFields inherited from class org.ametys.cms.search.cocoon.SearchAction
_contentTypeExtensionPoint, _context, _getQueryFromJSONHelper, _queryBuilder, _searcherFactory, _searchModelManager, _serverCommHelper, QUERY_ERROR, SEARCH_CONTENTS, SEARCH_LOCALE, SEARCH_MODEL, SEARCH_RESULTSFields inherited from class org.apache.cocoon.acting.ServiceableAction
managerFields inherited from class org.apache.cocoon.acting.AbstractAction
EMPTY_MAP -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voiddoSearch(Request request, SearchModel model, int offset, int maxResults, Map<String, Object> jsParameters, Map<String, Object> contextualParameters) Do the search and set the results in request attributes.getContentSearcher(SolrQuerySearchAction.SearchValues searchValues, int offset, int maxResults, Collection<String> facets, List<Sort> sorts) Get the content search from the search valuesprotected StringgetQueryString(SolrQuerySearchAction.SearchValues searchValues) Get the query string from the search values.protected SearchResults<Content>getResults(SolrQuerySearchAction.SearchValues searchValues, int offset, int maxResults, Collection<String> facets, List<Sort> sorts) Create the searcher and execute it from the search values.protected SolrQuerySearchAction.SearchValuesgetSearchValues(Map<String, Object> jsParameters) Get the object representing search values from the JS parameters.voidservice(ServiceManager serviceManager) Methods inherited from class org.ametys.cms.search.cocoon.SearchAction
act, contextualize, getMaxResults, getOffset, getSearchModel, getSortMethods inherited from class org.apache.avalon.framework.logger.AbstractLogEnabled
enableLogging, getLogger, setupLogger, setupLogger, setupLogger
-
Field Details
-
_contentTypesHelper
The content types helper -
_columnHelper
The helper for columns
-
-
Constructor Details
-
SolrQuerySearchAction
public SolrQuerySearchAction()
-
-
Method Details
-
service
- Specified by:
servicein interfaceServiceable- Overrides:
servicein classSearchAction- Throws:
ServiceException
-
doSearch
protected void doSearch(Request request, SearchModel model, int offset, int maxResults, Map<String, Object> jsParameters, Map<String, throws ExceptionObject> contextualParameters) Description copied from class:SearchActionDo the search and set the results in request attributes.- Overrides:
doSearchin classSearchAction- Parameters:
request- The request. The results or contents' id have to be set in request attributesmodel- The search modeloffset- The index of searchmaxResults- The max resultsjsParameters- The JS parameterscontextualParameters- The contextual parameters- Throws:
Exception- if the search failed
-
getSearchValues
Get the object representing search values from the JS parameters.- Parameters:
jsParameters- The JS parameters- Returns:
- an object representing the search values
-
getQueryString
protected String getQueryString(SolrQuerySearchAction.SearchValues searchValues) throws QuerySyntaxException Get the query string from the search values.- Parameters:
searchValues- The search values- Returns:
- the query string
- Throws:
QuerySyntaxException- if an error occurs
-
getResults
protected SearchResults<Content> getResults(SolrQuerySearchAction.SearchValues searchValues, int offset, int maxResults, Collection<String> facets, List<Sort> sorts) throws Exception Create the searcher and execute it from the search values.- Parameters:
searchValues- The search valuesoffset- The offsetmaxResults- The max number of resultsfacets- Facets renamed for Solrsorts- The sorts- Returns:
- the search results
- Throws:
Exception- if an error occurs
-
getContentSearcher
protected ContentSearcherFactory.SimpleContentSearcher getContentSearcher(SolrQuerySearchAction.SearchValues searchValues, int offset, int maxResults, Collection<String> facets, List<Sort> sorts) Get the content search from the search values- Parameters:
searchValues- The search valuesoffset- The offsetmaxResults- The max number of resultsfacets- Facets renamed for Solrsorts- The sorts- Returns:
- the content searcher
-