Class FacetDefinition

  • All Implemented Interfaces:
    io.vertigo.core.node.definition.Definition

    public final class FacetDefinition
    extends io.vertigo.core.node.definition.AbstractDefinition
    Définition de Facette. Une facette porte sur un champ donné de l'index. On distingue deux types de facettes. - celles remontant les terms d'un champ - celles remontant les valeurs d'une facette discrétisée par une liste de segments. Une facette - est identifiés par un nom unique au sein de son index. - posséde un Titre. Exemple : Pour une liste d'articles, on créera des définitions de facette - pour segmenter les prix, . 0-10€ . 10-50€ . >50€ - pour donner les principaux fabricants, (facette de type 'term') - etc..
    Author:
    pchretien
    • Method Detail

      • createFacetDefinitionByRange

        public static FacetDefinition createFacetDefinitionByRange​(String name,
                                                                   io.vertigo.datamodel.structure.definitions.DtField dtField,
                                                                   io.vertigo.core.locale.MessageText label,
                                                                   List<FacetValue> facetValues,
                                                                   boolean multiSelectable,
                                                                   FacetDefinition.FacetOrder order)
        Creates a new facetDefinition of type 'range'. A range facet is defined by a list of filters. Examples : [0 -10[ [0-100[ [100-*[
        Parameters:
        name - the name of the facet
        dtField - the field of the facet
        label - the label of the facet
        facetValues - the list of filters
        multiSelectable - Can select multiple values
        order - Facet Order
        Returns:
        new facetDefinition of type 'range'
      • createFacetDefinitionByTerm

        public static FacetDefinition createFacetDefinitionByTerm​(String name,
                                                                  io.vertigo.datamodel.structure.definitions.DtField dtField,
                                                                  io.vertigo.core.locale.MessageText label,
                                                                  boolean multiSelectable,
                                                                  FacetDefinition.FacetOrder order)
        Creates a new facetDefinition of type 'term'.
        Parameters:
        name - the name of the facet
        dtField - the field of the facet
        label - the label of the facet
        multiSelectable - Can select multiple values
        order - Facet Order
        Returns:
        new facetDefinition of type 'term'
      • createCustomFacetDefinition

        public static FacetDefinition createCustomFacetDefinition​(String name,
                                                                  io.vertigo.datamodel.structure.definitions.DtField dtField,
                                                                  io.vertigo.core.locale.MessageText label,
                                                                  Map<String,​String> customParams,
                                                                  FacetDefinition.FacetOrder order)
        Creates a new facetDefinition of type 'term'.
        Parameters:
        name - the name of the facet
        dtField - the field of the facet
        label - the label of the facet
        multiSelectable - Can select multiple values
        order - Facet Order
        Returns:
        new facetDefinition of type 'term'
      • getLabel

        public io.vertigo.core.locale.MessageText getLabel()
        Returns:
        the label of the facet
      • getDtField

        public io.vertigo.datamodel.structure.definitions.DtField getDtField()
        Ce champ est nécessairement inclus dans l'index.
        Returns:
        Champ sur lequel porte la facette
      • getFacetRanges

        public List<FacetValue> getFacetRanges()
        Returns:
        Liste des sélections/range.
      • getCustomParams

        public Map<String,​String> getCustomParams()
        Returns:
        Custom facet params
      • isCustomFacet

        public boolean isCustomFacet()
        Returns:
        if the facet is of type 'custom'
      • isRangeFacet

        public boolean isRangeFacet()
        Returns:
        if the facet is of type 'range'
      • isMultiSelectable

        public boolean isMultiSelectable()
        Returns:
        if the facet is multiSelectable