org.apache.solr.update.processor

Class ParseFloatFieldUpdateProcessorFactory

  • All Implemented Interfaces:
    NamedListInitializedPlugin, SolrCoreAware


    public class ParseFloatFieldUpdateProcessorFactory
    extends ParseNumericFieldUpdateProcessorFactory

    Attempts to mutate selected fields that have only CharSequence-typed values into Float values. If required, rounding uses ceiling mode: RoundingMode.CEILING. Grouping separators (',' in the ROOT locale) are parsed.

    The default selection behavior is to mutate both those fields that don't match a schema field, as well as those fields that match a schema field with a field type that uses class solr.TrieFloatField.

    If all values are parseable as float (or are already Float), then the field will be mutated, replacing each value with its parsed Float equivalent; otherwise, no mutation will occur.

    The locale to use when parsing field values, which will affect the recognized grouping separator and decimal characters, may optionally be specified. If no locale is configured, then Locale.ROOT will be used. The following configuration specifies the Russian/Russia locale, which will parse the string "12 345,899" as 12345.899f (the grouping separator character is U+00AO NO-BREAK SPACE).

     <processor class="solr.ParseFloatFieldUpdateProcessorFactory">
       <str name="locale">ru_RU</str>
     </processor>

    See Locale for a description of acceptable language, country (optional) and variant (optional) values, joined with underscore(s).