Package org.ametys.cms.search.model.impl
Class AbstractCriterionDefinition<T>
java.lang.Object
org.ametys.runtime.model.AbstractModelItem
org.ametys.runtime.model.DefaultElementDefinition<T>
org.ametys.cms.search.model.impl.AbstractCriterionDefinition<T>
- Type Parameters:
T
- Type of the criterion value
- All Implemented Interfaces:
Comparable<ModelItem>
,CriterionDefinition<T>
,ElementDefinition<T>
,ModelItem
,Labelable
,ModifiableLabelable
- Direct Known Subclasses:
AbstractSearchServiceCriterionDefinition
,DefaultSearchModelCriterionDefinition
,ReferencingCriterionDefinition
public abstract class AbstractCriterionDefinition<T>
extends DefaultElementDefinition<T>
implements CriterionDefinition<T>
Abstract implementation for
CriterionDefinition
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected CriterionDefinitionHelper
The criterion definition helperThe criterion's joined pathsprotected Query.LogicalOperator
Logical operator to use for multi-valued criteriaprotected String
The criterion's solr facet field nameFields inherited from class org.ametys.runtime.model.DefaultElementDefinition
_logger
Fields inherited from class org.ametys.runtime.model.AbstractModelItem
__context, __serviceManager
Fields inherited from interface org.ametys.runtime.model.ElementDefinition
CONFIG_DEFAULT_VALUE_TYPE
Fields inherited from interface org.ametys.runtime.model.ModelItem
ITEM_PATH_SEPARATOR
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected CriterionDefinitionHelper
Retrieves theCriterionDefinitionHelper
protected String
Retrieves the default widget for the criterionprotected Map
<String, I18nizableText> Retrieves the default widget parameters for the criterionconvertQueryValue
(Object value, Map<String, Object> contextualParameters) Converts the given value to have the right typed for value to give to theCriterionDefinition.getQuery(Object, Map, String, Map)
methodgetJoinedPaths
(Map<String, Object> contextualParameters) Retrieves the joined paths of the criterionprotected Query.LogicalOperator
Retrieves the logical operator for multi-valued criteriagetQuery
(Object value, Query.Operator operator, Map<String, Object> allValues, String language, Map<String, Object> contextualParameters) Get theQuery
associated to the given value.protected CMSDataContext
getQueryContext
(String language, Map<String, Object> contextualParameters) Retrieves the context to use in querygetSolrFacetFieldName
(Map<String, Object> contextualParameters) Retrieves the name of the criterion's solr facet fieldgetType()
Retrieves the type.Retrieves the widget to use for rendering.Get the widget's parametersvoid
setJoinedPaths
(List<String> joinedPath) Set the criterion's joined pathsvoid
setSolrFacetFieldName
(String solrFacetFieldName) Set the criterion's solr facet field nameMethods inherited from class org.ametys.runtime.model.DefaultElementDefinition
_defaultValueToJSON, _getDefaultValues, _getSimpleDefaultValue, _toJSON, _widgetToJSON, _widgetToSAX, getCustomEnumerator, getCustomValidator, getDefaultValue, getEnumerator, getEnumeratorConfiguration, getParsedDefaultValues, getValidator, getValidatorConfiguration, isMultiple, of, setCustomEnumerator, setCustomValidator, setDefaultValue, setEnumerator, setEnumeratorConfiguration, setMultiple, setParsedDefaultValues, setType, setValidator, setValidatorConfiguration, setWidget, setWidgetParameters, toSAX
Methods inherited from class org.ametys.runtime.model.AbstractModelItem
_getModelItemHelper, _shouldJSONBeEmpty, _widgetParameterToSAX, addItemChecker, compareTo, disableConditionsToJSON, equals, getDescription, getDisableConditions, getItemCheckers, getLabel, getModel, getName, getParent, getPath, getPluginName, hashCode, setContext, setDescription, setDisableConditions, setLabel, setModel, setName, setParent, setPluginName, setServiceManager, toJSON, toString
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface java.lang.Comparable
compareTo
Methods inherited from interface org.ametys.cms.search.model.CriterionDefinition
getQuery, getQuery
Methods inherited from interface org.ametys.runtime.model.ElementDefinition
getCustomEnumerator, getCustomValidator, getDefaultValue, getEnumerator, getEnumeratorConfiguration, getParsedDefaultValues, getValidator, getValidatorConfiguration, isEditable, isMultiple, setCustomEnumerator, setCustomValidator, setDefaultValue, setEnumerator, setEnumeratorConfiguration, setMultiple, setParsedDefaultValues, setValidator, setValidatorConfiguration
Methods inherited from interface org.ametys.runtime.util.Labelable
getDescription, getLabel, getName
Methods inherited from interface org.ametys.runtime.model.ModelItem
addItemChecker, getDisableConditions, getItemCheckers, getModel, getParent, getPath, getPluginName, setDisableConditions, setModel, setParent, setPluginName, setType, setWidget, setWidgetParameters, toJSON, toSAX
Methods inherited from interface org.ametys.runtime.util.ModifiableLabelable
setDescription, setLabel, setName
-
Field Details
-
_criterionDefinitionHelper
The criterion definition helper -
_multipleOperandOperator
Logical operator to use for multi-valued criteria -
_solrFacetFieldName
The criterion's solr facet field name -
_joinedPaths
The criterion's joined paths
-
-
Constructor Details
-
AbstractCriterionDefinition
public AbstractCriterionDefinition()
-
-
Method Details
-
getMultipleOperandOperator
Retrieves the logical operator for multi-valued criteria- Returns:
- the the logical operator for multi-valued criteria
-
getQuery
public Query getQuery(Object value, Query.Operator operator, Map<String, Object> allValues, String language, Map<String, Object> contextualParameters) Description copied from interface:CriterionDefinition
Get theQuery
associated to the given value.- Specified by:
getQuery
in interfaceCriterionDefinition<T>
- Parameters:
value
- The user-submitted value (or the default value if not set) for this criterion.operator
- In advanced search mode, the operator chosen by the user.null
to use the criterion-defined operator (simple search mode).allValues
- All the user-submitted values.language
- The current search language.contextualParameters
- the search contextual parameters.- Returns:
Query
associated to the given value.
-
convertQueryValue
Description copied from interface:CriterionDefinition
Converts the given value to have the right typed for value to give to theCriterionDefinition.getQuery(Object, Map, String, Map)
method- Specified by:
convertQueryValue
in interfaceCriterionDefinition<T>
- Parameters:
value
- the value to convertcontextualParameters
- the search contextual parameters.- Returns:
- the value, converted to a well typed value
-
getQueryContext
Retrieves the context to use in query- Parameters:
language
- The current search language.contextualParameters
- the search contextual parameters.- Returns:
- the context to use in query
-
getSolrFacetFieldName
Description copied from interface:CriterionDefinition
Retrieves the name of the criterion's solr facet field- Specified by:
getSolrFacetFieldName
in interfaceCriterionDefinition<T>
- Parameters:
contextualParameters
- the search contextual parameters.- Returns:
- the name of the criterion's solr facet field. Can be
null
if the criterion is not facetable
-
setSolrFacetFieldName
Set the criterion's solr facet field name- Parameters:
solrFacetFieldName
- the solr facet field name to set
-
getJoinedPaths
Description copied from interface:CriterionDefinition
Retrieves the joined paths of the criterion- Specified by:
getJoinedPaths
in interfaceCriterionDefinition<T>
- Parameters:
contextualParameters
- the search contextual parameters.- Returns:
- the joined paths, or an empty list if the criterion is not joined
-
setJoinedPaths
Set the criterion's joined paths- Parameters:
joinedPath
- the joined paths to set
-
getWidget
Description copied from interface:ModelItem
Retrieves the widget to use for rendering.- Specified by:
getWidget
in interfaceModelItem
- Overrides:
getWidget
in classDefaultElementDefinition<T>
- Returns:
- the widget or
null
if none is defined.
-
_getDefaultWidget
Retrieves the default widget for the criterion- Returns:
- the default widget for the criterion
-
getWidgetParameters
Description copied from interface:ModelItem
Get the widget's parameters- Specified by:
getWidgetParameters
in interfaceModelItem
- Overrides:
getWidgetParameters
in classDefaultElementDefinition<T>
- Returns:
- the widget's parameters
-
_getDefaultWidgetParameters
Retrieves the default widget parameters for the criterion- Returns:
- the default widget parameters for the criterion
-
getType
Description copied from interface:ModelItem
Retrieves the type.- Specified by:
getType
in interfaceCriterionDefinition<T>
- Specified by:
getType
in interfaceElementDefinition<T>
- Specified by:
getType
in interfaceModelItem
- Overrides:
getType
in classDefaultElementDefinition<T>
- Returns:
- the type.
-
_getCriterionDefinitionHelper
Retrieves theCriterionDefinitionHelper
- Returns:
- the
CriterionDefinitionHelper
-