Class DefaultPlatformFieldSearchFacadeStrategy<T extends ItemModel>

  • All Implemented Interfaces:
    com.hybris.cockpitng.dataaccess.facades.search.FieldSearchFacade<T>, com.hybris.cockpitng.dataaccess.facades.search.FieldSearchFacadeStrategy<T>
    Direct Known Subclasses:
    DefaultYFormsFieldSearchFacadeStrategy

    public class DefaultPlatformFieldSearchFacadeStrategy<T extends ItemModel>
    extends java.lang.Object
    implements com.hybris.cockpitng.dataaccess.facades.search.FieldSearchFacadeStrategy<T>
    Platform specific implementation of FieldSearchFacadeStrategy

    • Field Detail

      • STRATEGY_NAME

        public static final java.lang.String STRATEGY_NAME
        Strategy name to be used in configuration when preferred search strategy is to be changed
        See Also:
        Constant Field Values
    • Constructor Detail

      • DefaultPlatformFieldSearchFacadeStrategy

        public DefaultPlatformFieldSearchFacadeStrategy()
    • Method Detail

      • canHandle

        public boolean canHandle​(java.lang.String typeCode)
        Specified by:
        canHandle in interface com.hybris.cockpitng.dataaccess.facades.search.FieldSearchFacadeStrategy<T extends ItemModel>
      • search

        public com.hybris.cockpitng.search.data.pageable.Pageable search​(com.hybris.cockpitng.search.data.SearchQueryData searchQueryData)
        Specified by:
        search in interface com.hybris.cockpitng.dataaccess.facades.search.FieldSearchFacade<T extends ItemModel>
      • searchInternal

        protected com.hybris.cockpitng.search.data.pageable.Pageable searchInternal​(com.hybris.cockpitng.search.data.SearchQueryData searchQueryData)
      • adjustSearchQuery

        protected com.hybris.cockpitng.search.data.SearchQueryData adjustSearchQuery​(com.hybris.cockpitng.search.data.SearchQueryData searchQueryData)
        This method allows filtering or altering the search data before the real query will be passed to the search engine.
        Parameters:
        searchQueryData - query to adjust
      • createSearchQueryDataBuilderWithAttributes

        protected com.hybris.backoffice.widgets.advancedsearch.engine.AdvancedSearchQueryData.Builder createSearchQueryDataBuilderWithAttributes​(com.hybris.cockpitng.search.data.SearchQueryData searchQueryData)
      • parseSearchQueryAttributes

        protected java.util.List<com.hybris.cockpitng.search.data.SearchQueryCondition> parseSearchQueryAttributes​(com.hybris.cockpitng.search.data.SearchQueryData searchQueryData)
      • buildQuery

        protected GenericSearchQuery buildQuery​(com.hybris.cockpitng.search.data.SearchQueryData searchQueryData)
        Uses GenericQuery to build flexible search query based on SearchQueryData information.
        Parameters:
        searchQueryData -
        Returns:
        String representing flexible search query
      • createSortCondition

        protected GenericSearchOrderBy createSortCondition​(GenericQuery query,
                                                           java.lang.String typeCode,
                                                           com.hybris.cockpitng.search.data.SearchQueryData searchQueryData)
      • createEnumSortOrder

        protected GenericSearchOrderBy createEnumSortOrder​(GenericQuery query,
                                                           java.lang.String sortType,
                                                           java.lang.String qualifier,
                                                           boolean asc)
      • sorEnumByLocalizedNameEnabled

        protected boolean sorEnumByLocalizedNameEnabled()
      • getConditionsOperator

        protected Operator getConditionsOperator​(com.hybris.cockpitng.search.data.SearchQueryData searchQueryData)
        Returns logical operator which joins query conditions (or, and)
        Parameters:
        searchQueryData -
        Returns:
        OR operator
      • isSortable

        public boolean isSortable​(com.hybris.cockpitng.dataaccess.facades.type.DataType type,
                                  java.lang.String attributeQualifier,
                                  com.hybris.cockpitng.dataaccess.context.Context context)
        Specified by:
        isSortable in interface com.hybris.cockpitng.dataaccess.facades.search.FieldSearchFacade<T extends ItemModel>
      • setGenericSearchService

        public void setGenericSearchService​(GenericSearchService genericSearchService)
      • setTypeService

        public void setTypeService​(TypeService typeService)
      • setCommonI18NService

        public void setCommonI18NService​(CommonI18NService commonI18NService)
      • setCockpitProperties

        public void setCockpitProperties​(com.hybris.cockpitng.core.util.CockpitProperties cockpitProperties)
      • getCockpitProperties

        protected com.hybris.cockpitng.core.util.CockpitProperties getCockpitProperties()
      • setGenericMultiConditionQueryBuilder

        public void setGenericMultiConditionQueryBuilder​(ConditionQueryBuilder genericMultiConditionQueryBuilder)
      • getStrategyName

        public java.lang.String getStrategyName()
        Specified by:
        getStrategyName in interface com.hybris.cockpitng.dataaccess.facades.search.FieldSearchFacadeStrategy<T extends ItemModel>