Package org.ametys.cms.search
Class QueryBuilder
java.lang.Object
org.apache.avalon.framework.logger.AbstractLogEnabled
org.ametys.cms.search.QueryBuilder
- All Implemented Interfaces:
Component
,LogEnabled
,Serviceable
Builds a
Query
object from a user search.-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected AdvancedQueryBuilder
The advanced query builderprotected TreeMaker
The Advanced tree makerprotected ContentTypeExtensionPoint
The content type extension point.protected SearchModelHelper
The search model helperstatic final String
Key of flag present in contextual parameters to indicate the current search is multilingualstatic final String
The component role.static final String
Key of flag present in contextual parameters to indicate the current search modelstatic final String
Key of flag present in contextual parameters to indicate the provided value was already escaped -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbuild
(SearchModel model, String searchMode, Map<String, Object> values, Map<String, Object> contextualParameters) Build theQuery
object.protected org.ametys.cms.search.QueryBuilder.CriteriaQueries
getAdvancedCriteriaQuery
(SearchUIModel model, Map<String, Object> values, String language, Map<String, Object> contextualParameters) Get a complex Query from the advanced search values.protected org.ametys.cms.search.QueryBuilder.CriteriaQueries
getCriteriaQueries
(SearchModel model, Map<String, Object> values, String language, Map<String, Object> contextualParameters) Get the list of query on given model's criteria.protected org.ametys.cms.search.QueryBuilder.CriteriaQueries
getCriteriaQueries
(ViewItemAccessor criteria, Map<String, Object> values, String language, Map<String, Object> contextualParameters) Get the list of query on criteria.void
service
(ServiceManager serviceManager) Methods inherited from class org.apache.avalon.framework.logger.AbstractLogEnabled
enableLogging, getLogger, setupLogger, setupLogger, setupLogger
-
Field Details
-
ROLE
The component role. -
MULTILINGUAL_SEARCH
Key of flag present in contextual parameters to indicate the current search is multilingual- See Also:
-
VALUE_IS_ESCAPED
Key of flag present in contextual parameters to indicate the provided value was already escaped- See Also:
-
SEARCH_MODEL
Key of flag present in contextual parameters to indicate the current search model- See Also:
-
_cTypeEP
The content type extension point. -
_advancedTreeMaker
The Advanced tree maker -
_advancedQueryBuilder
The advanced query builder -
_searchModelHelper
The search model helper
-
-
Constructor Details
-
QueryBuilder
public QueryBuilder()
-
-
Method Details
-
service
- Specified by:
service
in interfaceServiceable
- Throws:
ServiceException
-
build
public Query build(SearchModel model, String searchMode, Map<String, Object> values, Map<String, Object> contextualParameters) Build theQuery
object.- Parameters:
model
- the search model.searchMode
- the search mode.values
- the user search values.contextualParameters
- the search contextual parameters.- Returns:
- a
Query
object representing the search.
-
getCriteriaQueries
protected org.ametys.cms.search.QueryBuilder.CriteriaQueries getCriteriaQueries(SearchModel model, Map<String, Object> values, String language, Map<String, Object> contextualParameters) Get the list of query on given model's criteria.- Parameters:
model
- the modelvalues
- The submitted valueslanguage
- The query language.contextualParameters
- The contextual parameters- Returns:
- The criteria
Query
.
-
getCriteriaQueries
protected org.ametys.cms.search.QueryBuilder.CriteriaQueries getCriteriaQueries(ViewItemAccessor criteria, Map<String, Object> values, String language, Map<String, Object> contextualParameters) Get the list of query on criteria.- Parameters:
criteria
- the list of criteriavalues
- The submitted valueslanguage
- The query language.contextualParameters
- The contextual parameters- Returns:
- The criteria
Query
.
-
getAdvancedCriteriaQuery
protected org.ametys.cms.search.QueryBuilder.CriteriaQueries getAdvancedCriteriaQuery(SearchUIModel model, Map<String, Object> values, String language, Map<String, Object> contextualParameters) Get a complex Query from the advanced search values.- Parameters:
model
- the model containing criterion definitionsvalues
- The submitted valueslanguage
- The query language.contextualParameters
- The contextual parameters- Returns:
- The criteria
Query
.
-