Class DefaultSolrRSQLFilterBuilder

    • Constructor Detail

      • DefaultSolrRSQLFilterBuilder

        public DefaultSolrRSQLFilterBuilder​(SolrRSQLArgumentParser argumentParser,
                                            com.broadleafcommerce.search.provider.solr.SolrFieldService solrFieldService)
    • Method Detail

      • createFilter

        public String createFilter​(cz.jirutka.rsql.parser.ast.Node node,
                                   List<com.broadleafcommerce.search.api.domain.FieldDefinition> fields,
                                   String locale)
        Description copied from interface: SolrRSQLFilterBuilder
        Create a filter query based on a generic Node and root domain fields.
        Specified by:
        createFilter in interface SolrRSQLFilterBuilder
        Parameters:
        node - A generic node structure in a structured RSQL query
        fields - The fields for the root domain
        locale - (optional) the locale of the query
        Returns:
        The query criteria
      • createFilter

        public String createFilter​(cz.jirutka.rsql.parser.ast.LogicalNode logicalNode,
                                   List<com.broadleafcommerce.search.api.domain.FieldDefinition> fields,
                                   String locale)
        Description copied from interface: SolrRSQLFilterBuilder
        Create a filter query based on a logical Node and root domain fields. Logical nodes are 'and'/'or' combinations of comparison nodes.
        Specified by:
        createFilter in interface SolrRSQLFilterBuilder
        Parameters:
        logicalNode - A logical node structure in a structured RSQL query
        fields - The fields for the root domain
        locale - (optional) the locale of the query
        Returns:
        The query criteria
      • createFilter

        public String createFilter​(cz.jirutka.rsql.parser.ast.ComparisonNode comparisonNode,
                                   List<com.broadleafcommerce.search.api.domain.FieldDefinition> fields,
                                   String locale)
        Description copied from interface: SolrRSQLFilterBuilder
        Create a filter query based on a comparison Node and root domain fields. Comparison nodes filter values on a specific field.
        Specified by:
        createFilter in interface SolrRSQLFilterBuilder
        Parameters:
        comparisonNode - A comparison node structure in a structured RSQL query
        fields - The fields for the root domain
        locale - (optional) the locale of the query
        Returns:
        The query criteria
      • createFilter

        public String createFilter​(String selector,
                                   cz.jirutka.rsql.parser.ast.ComparisonOperator operator,
                                   List<String> arguments,
                                   List<com.broadleafcommerce.search.api.domain.FieldDefinition> fields,
                                   String locale)
        Description copied from interface: SolrRSQLFilterBuilder
        Create a filter query based on a set of comparison parameters and a root domain fields.
        Specified by:
        createFilter in interface SolrRSQLFilterBuilder
        Parameters:
        selector - The field
        operator - The type of comparison (=,!=,lt,etc...)
        arguments - One or more values to check against the field
        fields - The fields for the root domain
        locale - (optional) the locale of the query
        Returns:
        The query criteria
      • getSolrFieldService

        protected com.broadleafcommerce.search.provider.solr.SolrFieldService getSolrFieldService()