Package org.apache.solr.update.processor
Class ConcatFieldUpdateProcessorFactory
- java.lang.Object
-
- org.apache.solr.update.processor.UpdateRequestProcessorFactory
-
- org.apache.solr.update.processor.FieldMutatingUpdateProcessorFactory
-
- org.apache.solr.update.processor.ConcatFieldUpdateProcessorFactory
-
- All Implemented Interfaces:
NamedListInitializedPlugin
,SolrCoreAware
public final class ConcatFieldUpdateProcessorFactory extends FieldMutatingUpdateProcessorFactory
Concatenates multiple values for fields matching the specified conditions using a configurabledelimiter
which defaults to ",
".By default, this processor concatenates the values for any field name which according to the schema is
multiValued="false"
and usesTextField
orStrField
For example, in the configuration below, any "single valued" string and text field which is found to contain multiple values except for the
primary_author
field will be concatenated using the string ";
" as a delimiter. For theprimary_author
field, the multiple values will be left alone forFirstFieldValueUpdateProcessorFactory
to deal with.<processor class="solr.ConcatFieldUpdateProcessorFactory"> <str name="delimiter">; </str> <lst name="exclude"> <str name="fieldName">primary_author</str> </lst> </processor> <processor class="solr.FirstFieldValueUpdateProcessorFactory"> <str name="fieldName">primary_author</str> </processor>
- Since:
- 4.0.0
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.apache.solr.update.processor.FieldMutatingUpdateProcessorFactory
FieldMutatingUpdateProcessorFactory.SelectorParams
-
Nested classes/interfaces inherited from class org.apache.solr.update.processor.UpdateRequestProcessorFactory
UpdateRequestProcessorFactory.RunAlways
-
-
Constructor Summary
Constructors Constructor Description ConcatFieldUpdateProcessorFactory()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description FieldMutatingUpdateProcessor.FieldNameSelector
getDefaultSelector(SolrCore core)
Defines the default selection behavior when the user has not configured any specific criteria for selecting fields.UpdateRequestProcessor
getInstance(SolrQueryRequest req, SolrQueryResponse rsp, UpdateRequestProcessor next)
void
init(org.apache.solr.common.util.NamedList<?> args)
Handles common initialization related to source fields for constructing the FieldNameSelector to be used.-
Methods inherited from class org.apache.solr.update.processor.FieldMutatingUpdateProcessorFactory
getSelector, inform, parseSelectorExclusionParams, parseSelectorParams
-
-
-
-
Method Detail
-
init
public void init(org.apache.solr.common.util.NamedList<?> args)
Description copied from class:FieldMutatingUpdateProcessorFactory
Handles common initialization related to source fields for constructing the FieldNameSelector to be used.Will error if any unexpected init args are found, so subclasses should remove any subclass-specific init args before calling this method.
- Specified by:
init
in interfaceNamedListInitializedPlugin
- Overrides:
init
in classFieldMutatingUpdateProcessorFactory
- Parameters:
args
- non-null list of initialization parameters (may be empty)
-
getInstance
public UpdateRequestProcessor getInstance(SolrQueryRequest req, SolrQueryResponse rsp, UpdateRequestProcessor next)
- Specified by:
getInstance
in classUpdateRequestProcessorFactory
-
getDefaultSelector
public FieldMutatingUpdateProcessor.FieldNameSelector getDefaultSelector(SolrCore core)
Description copied from class:FieldMutatingUpdateProcessorFactory
Defines the default selection behavior when the user has not configured any specific criteria for selecting fields. The Default implementation matches all fields, and should be overridden by subclasses as needed.- Overrides:
getDefaultSelector
in classFieldMutatingUpdateProcessorFactory
- See Also:
FieldMutatingUpdateProcessor.SELECT_ALL_FIELDS
-
-