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
Modifier and TypeClassDescriptionprotected class
Object representing search values. -
Field Summary
Modifier and TypeFieldDescriptionprotected ColumnHelper
The helper for columnsprotected ContentTypesHelper
The content types helper.Fields 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_RESULTS
Fields inherited from class org.apache.cocoon.acting.ServiceableAction
manager
Fields inherited from class org.apache.cocoon.acting.AbstractAction
EMPTY_MAP
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionprotected void
doSearch
(Request request, SearchUIModel 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 String
getQueryString
(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.SearchValues
getSearchValues
(Map<String, Object> jsParameters) Get the object representing search values from the JS parameters.void
service
(ServiceManager serviceManager) Methods inherited from class org.ametys.cms.search.cocoon.SearchAction
act, contextualize, getMaxResults, getOffset, getSearchUIModel, getSort
Methods 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:
service
in interfaceServiceable
- Overrides:
service
in classSearchAction
- Throws:
ServiceException
-
doSearch
protected void doSearch(Request request, SearchUIModel model, int offset, int maxResults, Map<String, Object> jsParameters, Map<String, throws ExceptionObject> contextualParameters) Description copied from class:SearchAction
Do the search and set the results in request attributes.- Overrides:
doSearch
in classSearchAction
- Parameters:
request
- The request. The results or contents' id have to be set in request attributesmodel
- The search UI 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
-