Class GenericConditionQueryBuilder
- java.lang.Object
-
- com.hybris.backoffice.cockpitng.search.builder.impl.GenericConditionQueryBuilder
-
- All Implemented Interfaces:
ConditionQueryBuilder
- Direct Known Subclasses:
LocalizedGenericConditionQueryBuilder,RuleEngineGenericConditionQueryBuilder
public class GenericConditionQueryBuilder extends java.lang.Object implements ConditionQueryBuilder
Query builder for a generic attribute.
Following attributes are supported:atomics references enums
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.StringEDITOR_PARAM_COMPARES_EXACT_DATEstatic java.lang.StringEDITOR_PARAM_DATE_SEARCH_ROUNDINGstatic java.lang.StringEDITOR_PARAM_EQUALS_COMPARES_EXACT_DATE
-
Constructor Summary
Constructors Constructor Description GenericConditionQueryBuilder()
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description protected java.util.List<GenericCondition>buildCondition(java.lang.Object value, com.hybris.cockpitng.search.data.ValueComparisonOperator attributeOperator, com.hybris.cockpitng.search.data.SearchQueryData searchQueryData, com.hybris.cockpitng.search.data.SearchAttributeDescriptor searchAttributeDescriptor)protected GenericQuerybuildMany2ManyQuery(RelationDescriptorModel relationDescriptor, java.lang.Object value, Operator operator)java.util.List<GenericCondition>buildQuery(GenericQuery query, java.lang.String typeCode, com.hybris.cockpitng.search.data.SearchAttributeDescriptor searchAttributeDescriptor, com.hybris.cockpitng.search.data.SearchQueryData searchQueryData)java.util.List<GenericCondition>buildQuery(GenericQuery query, java.lang.String typeCode, com.hybris.cockpitng.search.data.SearchQueryCondition condition, com.hybris.cockpitng.search.data.SearchQueryData searchQueryData)protected java.util.List<GenericCondition>buildQueryCondition(com.hybris.cockpitng.search.data.SearchAttributeDescriptor searchAttributeDescriptor, com.hybris.cockpitng.search.data.SearchQueryCondition searchQueryCondition, com.hybris.cockpitng.search.data.SearchQueryData searchQueryData)protected java.util.Optional<GenericCondition>buildStringCondition(java.lang.String value, com.hybris.cockpitng.search.data.ValueComparisonOperator attributeOperator, com.hybris.cockpitng.search.data.SearchQueryData searchQueryData, com.hybris.cockpitng.search.data.SearchAttributeDescriptor searchAttributeDescriptor)protected java.util.Optional<GenericCondition>buildUnaryCondition(java.lang.Object value, com.hybris.cockpitng.search.data.ValueComparisonOperator attributeOperator, com.hybris.cockpitng.search.data.SearchQueryData searchQueryData, com.hybris.cockpitng.search.data.SearchAttributeDescriptor searchAttributeDescriptor)protected GenericConditioncreateMany2ManyRelationCondition(RelationDescriptorModel relationDescriptor, java.lang.String typeCode, Operator operator, java.lang.Object value)protected GenericConditioncreateMany2OneRelationCondition(RelationDescriptorModel relationDescriptor, java.lang.String typeCode, java.lang.String qualifier, Operator operator, java.lang.Object value)protected GenericConditioncreateOne2ManyRelationCondition(RelationDescriptorModel relationDescriptor, java.lang.String typeCode, Operator operator, java.lang.Object value)protected GenericConditioncreateRelationCondition(RelationDescriptorModel relationDescriptor, java.lang.String typeCode, java.lang.String qualifier, com.hybris.cockpitng.search.data.ValueComparisonOperator comparisonOperator, java.lang.Object value)protected GenericConditioncreateSingleTokenCondition(com.hybris.cockpitng.search.data.SearchQueryData searchQueryData, com.hybris.cockpitng.search.data.SearchAttributeDescriptor searchAttributeDescriptor, java.lang.Object value)protected GenericConditioncreateSingleTokenCondition(com.hybris.cockpitng.search.data.SearchQueryData searchQueryData, com.hybris.cockpitng.search.data.SearchAttributeDescriptor searchAttributeDescriptor, java.lang.Object value, com.hybris.cockpitng.search.data.ValueComparisonOperator givenOperator)protected RelationEndCardinalityEnumgetCardinality(RelationDescriptorModel relationDescriptorModel)protected java.util.Optional<java.lang.Integer>getDateRounding(com.hybris.cockpitng.search.data.SearchAttributeDescriptor searchAttributeDescriptor)protected java.util.DategetRoundedDate(java.util.Date date, com.hybris.cockpitng.search.data.SearchAttributeDescriptor searchAttributeDescriptor)protected java.util.DategetSinceDate(java.util.Date date, com.hybris.cockpitng.search.data.SearchAttributeDescriptor searchAttributeDescriptor)protected java.util.DategetSinceDate(java.util.Date date, com.hybris.cockpitng.search.data.SearchAttributeDescriptor searchAttributeDescriptor, boolean hasEqualsComparesExactDateParameter)TypeServicegetTypeService()protected java.util.DategetUpToDate(java.util.Date date, com.hybris.cockpitng.search.data.SearchAttributeDescriptor searchAttributeDescriptor)protected java.util.DategetUpToDate(java.util.Date date, com.hybris.cockpitng.search.data.SearchAttributeDescriptor searchAttributeDescriptor, boolean hasEqualsComparesExactDateParameter)protected GenericConditionhandleUnaryOperator(java.lang.String typeCode, java.lang.String attributeName, com.hybris.cockpitng.search.data.ValueComparisonOperator operator, java.lang.Object value)protected booleanisComparesExactDate(com.hybris.cockpitng.search.data.SearchAttributeDescriptor searchAttributeDescriptor)protected booleanisEqualsComparesExactDate(com.hybris.cockpitng.search.data.SearchAttributeDescriptor searchAttributeDescriptor)protected booleanisMany2ManyRelationAttribute(AttributeDescriptorModel attrDescriptorModel)protected booleanisSupportedRelationType(AttributeDescriptorModel attrDescriptorModel)protected booleanisUnaryOperator(com.hybris.cockpitng.search.data.ValueComparisonOperator operator)Deprecated, for removal: This API element is subject to removal in a future version.since 1808, useValueComparisonOperator.isUnary()insteadprotected java.lang.Stringprepare(java.lang.String token, java.lang.String prefix, java.lang.String postfix, boolean exact)protected GenericConditionresolveDateEqualsCondition(com.hybris.cockpitng.search.data.SearchAttributeDescriptor searchAttributeDescriptor, java.lang.String qualifier, java.lang.String typeCode, java.util.Date extractedValue)protected GenericConditionresolveDateGreaterCondition(com.hybris.cockpitng.search.data.SearchAttributeDescriptor searchAttributeDescriptor, java.lang.String qualifier, java.lang.String typeCode, java.util.Date extractedValue)protected GenericConditionresolveDateGreaterOrEqualsCondition(com.hybris.cockpitng.search.data.SearchAttributeDescriptor searchAttributeDescriptor, java.lang.String qualifier, java.lang.String typeCode, java.util.Date extractedValue)protected GenericConditionresolveDateLessCondition(com.hybris.cockpitng.search.data.SearchAttributeDescriptor searchAttributeDescriptor, java.lang.String qualifier, java.lang.String typeCode, java.util.Date extractedValue)protected GenericConditionresolveDateLessOrEqualsCondition(com.hybris.cockpitng.search.data.SearchAttributeDescriptor searchAttributeDescriptor, java.lang.String qualifier, java.lang.String typeCode, java.util.Date extractedValue)voidsetModelService(ModelService modelService)voidsetSeparators(java.util.Set<java.lang.Character> separators)voidsetTypeService(TypeService typeService)protected java.util.List<java.lang.String>splitQuery(java.lang.String query)Helper method to split a single line of text into several tokens.
-
-
-
Field Detail
-
EDITOR_PARAM_COMPARES_EXACT_DATE
public static final java.lang.String EDITOR_PARAM_COMPARES_EXACT_DATE
- See Also:
- Constant Field Values
-
EDITOR_PARAM_EQUALS_COMPARES_EXACT_DATE
public static final java.lang.String EDITOR_PARAM_EQUALS_COMPARES_EXACT_DATE
- See Also:
- Constant Field Values
-
EDITOR_PARAM_DATE_SEARCH_ROUNDING
public static final java.lang.String EDITOR_PARAM_DATE_SEARCH_ROUNDING
- See Also:
- Constant Field Values
-
-
Method Detail
-
buildQueryCondition
protected java.util.List<GenericCondition> buildQueryCondition(com.hybris.cockpitng.search.data.SearchAttributeDescriptor searchAttributeDescriptor, com.hybris.cockpitng.search.data.SearchQueryCondition searchQueryCondition, com.hybris.cockpitng.search.data.SearchQueryData searchQueryData)
-
buildQuery
public java.util.List<GenericCondition> buildQuery(GenericQuery query, java.lang.String typeCode, com.hybris.cockpitng.search.data.SearchAttributeDescriptor searchAttributeDescriptor, com.hybris.cockpitng.search.data.SearchQueryData searchQueryData)
- Specified by:
buildQueryin interfaceConditionQueryBuilder
-
buildQuery
public java.util.List<GenericCondition> buildQuery(GenericQuery query, java.lang.String typeCode, com.hybris.cockpitng.search.data.SearchQueryCondition condition, com.hybris.cockpitng.search.data.SearchQueryData searchQueryData)
- Specified by:
buildQueryin interfaceConditionQueryBuilder
-
buildCondition
protected java.util.List<GenericCondition> buildCondition(java.lang.Object value, com.hybris.cockpitng.search.data.ValueComparisonOperator attributeOperator, com.hybris.cockpitng.search.data.SearchQueryData searchQueryData, com.hybris.cockpitng.search.data.SearchAttributeDescriptor searchAttributeDescriptor)
-
buildUnaryCondition
protected java.util.Optional<GenericCondition> buildUnaryCondition(java.lang.Object value, com.hybris.cockpitng.search.data.ValueComparisonOperator attributeOperator, com.hybris.cockpitng.search.data.SearchQueryData searchQueryData, com.hybris.cockpitng.search.data.SearchAttributeDescriptor searchAttributeDescriptor)
-
buildStringCondition
protected java.util.Optional<GenericCondition> buildStringCondition(java.lang.String value, com.hybris.cockpitng.search.data.ValueComparisonOperator attributeOperator, com.hybris.cockpitng.search.data.SearchQueryData searchQueryData, com.hybris.cockpitng.search.data.SearchAttributeDescriptor searchAttributeDescriptor)
-
isUnaryOperator
@Deprecated(since="1808", forRemoval=true) protected boolean isUnaryOperator(com.hybris.cockpitng.search.data.ValueComparisonOperator operator)Deprecated, for removal: This API element is subject to removal in a future version.since 1808, useValueComparisonOperator.isUnary()instead
-
createRelationCondition
protected GenericCondition createRelationCondition(RelationDescriptorModel relationDescriptor, java.lang.String typeCode, java.lang.String qualifier, com.hybris.cockpitng.search.data.ValueComparisonOperator comparisonOperator, java.lang.Object value)
-
getCardinality
protected RelationEndCardinalityEnum getCardinality(RelationDescriptorModel relationDescriptorModel)
-
createMany2OneRelationCondition
protected GenericCondition createMany2OneRelationCondition(RelationDescriptorModel relationDescriptor, java.lang.String typeCode, java.lang.String qualifier, Operator operator, java.lang.Object value)
-
createOne2ManyRelationCondition
protected GenericCondition createOne2ManyRelationCondition(RelationDescriptorModel relationDescriptor, java.lang.String typeCode, Operator operator, java.lang.Object value)
-
createMany2ManyRelationCondition
protected GenericCondition createMany2ManyRelationCondition(RelationDescriptorModel relationDescriptor, java.lang.String typeCode, Operator operator, java.lang.Object value)
-
buildMany2ManyQuery
protected GenericQuery buildMany2ManyQuery(RelationDescriptorModel relationDescriptor, java.lang.Object value, Operator operator)
-
createSingleTokenCondition
protected GenericCondition createSingleTokenCondition(com.hybris.cockpitng.search.data.SearchQueryData searchQueryData, com.hybris.cockpitng.search.data.SearchAttributeDescriptor searchAttributeDescriptor, java.lang.Object value)
-
createSingleTokenCondition
protected GenericCondition createSingleTokenCondition(com.hybris.cockpitng.search.data.SearchQueryData searchQueryData, com.hybris.cockpitng.search.data.SearchAttributeDescriptor searchAttributeDescriptor, java.lang.Object value, com.hybris.cockpitng.search.data.ValueComparisonOperator givenOperator)
-
getUpToDate
protected java.util.Date getUpToDate(java.util.Date date, com.hybris.cockpitng.search.data.SearchAttributeDescriptor searchAttributeDescriptor)
-
getUpToDate
protected java.util.Date getUpToDate(java.util.Date date, com.hybris.cockpitng.search.data.SearchAttributeDescriptor searchAttributeDescriptor, boolean hasEqualsComparesExactDateParameter)
-
getRoundedDate
protected java.util.Date getRoundedDate(java.util.Date date, com.hybris.cockpitng.search.data.SearchAttributeDescriptor searchAttributeDescriptor)
-
getSinceDate
protected java.util.Date getSinceDate(java.util.Date date, com.hybris.cockpitng.search.data.SearchAttributeDescriptor searchAttributeDescriptor)
-
getSinceDate
protected java.util.Date getSinceDate(java.util.Date date, com.hybris.cockpitng.search.data.SearchAttributeDescriptor searchAttributeDescriptor, boolean hasEqualsComparesExactDateParameter)
-
isEqualsComparesExactDate
protected boolean isEqualsComparesExactDate(com.hybris.cockpitng.search.data.SearchAttributeDescriptor searchAttributeDescriptor)
-
isComparesExactDate
protected boolean isComparesExactDate(com.hybris.cockpitng.search.data.SearchAttributeDescriptor searchAttributeDescriptor)
-
getDateRounding
protected java.util.Optional<java.lang.Integer> getDateRounding(com.hybris.cockpitng.search.data.SearchAttributeDescriptor searchAttributeDescriptor)
-
resolveDateEqualsCondition
protected GenericCondition resolveDateEqualsCondition(com.hybris.cockpitng.search.data.SearchAttributeDescriptor searchAttributeDescriptor, java.lang.String qualifier, java.lang.String typeCode, java.util.Date extractedValue)
-
resolveDateGreaterCondition
protected GenericCondition resolveDateGreaterCondition(com.hybris.cockpitng.search.data.SearchAttributeDescriptor searchAttributeDescriptor, java.lang.String qualifier, java.lang.String typeCode, java.util.Date extractedValue)
-
resolveDateLessCondition
protected GenericCondition resolveDateLessCondition(com.hybris.cockpitng.search.data.SearchAttributeDescriptor searchAttributeDescriptor, java.lang.String qualifier, java.lang.String typeCode, java.util.Date extractedValue)
-
resolveDateGreaterOrEqualsCondition
protected GenericCondition resolveDateGreaterOrEqualsCondition(com.hybris.cockpitng.search.data.SearchAttributeDescriptor searchAttributeDescriptor, java.lang.String qualifier, java.lang.String typeCode, java.util.Date extractedValue)
-
resolveDateLessOrEqualsCondition
protected GenericCondition resolveDateLessOrEqualsCondition(com.hybris.cockpitng.search.data.SearchAttributeDescriptor searchAttributeDescriptor, java.lang.String qualifier, java.lang.String typeCode, java.util.Date extractedValue)
-
handleUnaryOperator
protected GenericCondition handleUnaryOperator(java.lang.String typeCode, java.lang.String attributeName, com.hybris.cockpitng.search.data.ValueComparisonOperator operator, java.lang.Object value)
-
isSupportedRelationType
protected boolean isSupportedRelationType(AttributeDescriptorModel attrDescriptorModel)
-
isMany2ManyRelationAttribute
protected boolean isMany2ManyRelationAttribute(AttributeDescriptorModel attrDescriptorModel)
-
prepare
protected java.lang.String prepare(java.lang.String token, java.lang.String prefix, java.lang.String postfix, boolean exact)
-
splitQuery
protected java.util.List<java.lang.String> splitQuery(java.lang.String query)
Helper method to split a single line of text into several tokens.- Parameters:
query- the single line of text
-
getTypeService
public TypeService getTypeService()
-
setTypeService
public void setTypeService(TypeService typeService)
-
setSeparators
public void setSeparators(java.util.Set<java.lang.Character> separators)
-
setModelService
public void setModelService(ModelService modelService)
-
-