org.apache.solr.update.processor
Class AllValuesOrNoneFieldMutatingUpdateProcessor

java.lang.Object
  extended by org.apache.solr.update.processor.UpdateRequestProcessor
      extended by org.apache.solr.update.processor.FieldMutatingUpdateProcessor
          extended by org.apache.solr.update.processor.AllValuesOrNoneFieldMutatingUpdateProcessor

public abstract class AllValuesOrNoneFieldMutatingUpdateProcessor
extends FieldMutatingUpdateProcessor

Abstract subclass of FieldMutatingUpdateProcessor for implementing UpdateProcessors that will mutate all individual values of a selected field independently. If not all individual values are acceptable - i.e., mutateValue(srcVal) returns SKIP_FIELD_VALUE_LIST_SINGLETON for at least one value - then none of the values are mutated: mutate(srcField) will return srcField.

See Also:
FieldMutatingUpdateProcessorFactory, FieldValueMutatingUpdateProcessor

Nested Class Summary
 
Nested classes/interfaces inherited from class org.apache.solr.update.processor.FieldMutatingUpdateProcessor
FieldMutatingUpdateProcessor.FieldNameSelector
 
Field Summary
static Object DELETE_VALUE_SINGLETON
           
static Object SKIP_FIELD_VALUE_LIST_SINGLETON
           
 
Fields inherited from class org.apache.solr.update.processor.FieldMutatingUpdateProcessor
SELECT_ALL_FIELDS, SELECT_NO_FIELDS
 
Fields inherited from class org.apache.solr.update.processor.UpdateRequestProcessor
next
 
Constructor Summary
AllValuesOrNoneFieldMutatingUpdateProcessor(FieldMutatingUpdateProcessor.FieldNameSelector selector, UpdateRequestProcessor next)
           
 
Method Summary
protected  SolrInputField mutate(SolrInputField srcField)
          Method for mutating SolrInputFields associated with fields identified by the FieldNameSelector associated with this processor
protected abstract  Object mutateValue(Object srcVal)
          Mutates individual values of a field as needed, or returns the original value.
 
Methods inherited from class org.apache.solr.update.processor.FieldMutatingUpdateProcessor
createFieldNameSelector, processAdd, wrap
 
Methods inherited from class org.apache.solr.update.processor.UpdateRequestProcessor
finish, processCommit, processDelete, processMergeIndexes, processRollback
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

DELETE_VALUE_SINGLETON

public static final Object DELETE_VALUE_SINGLETON

SKIP_FIELD_VALUE_LIST_SINGLETON

public static final Object SKIP_FIELD_VALUE_LIST_SINGLETON
Constructor Detail

AllValuesOrNoneFieldMutatingUpdateProcessor

public AllValuesOrNoneFieldMutatingUpdateProcessor(FieldMutatingUpdateProcessor.FieldNameSelector selector,
                                                   UpdateRequestProcessor next)
Method Detail

mutateValue

protected abstract Object mutateValue(Object srcVal)
Mutates individual values of a field as needed, or returns the original value.

Parameters:
srcVal - a value from a matched field which should be mutated
Returns:
the value to use as a replacement for src, or DELETE_VALUE_SINGLETON to indicate that the value should be removed completely, or SKIP_FIELD_VALUE_LIST_SINGLETON to indicate that a field value is not consistent with
See Also:
DELETE_VALUE_SINGLETON, SKIP_FIELD_VALUE_LIST_SINGLETON

mutate

protected final SolrInputField mutate(SolrInputField srcField)
Description copied from class: FieldMutatingUpdateProcessor
Method for mutating SolrInputFields associated with fields identified by the FieldNameSelector associated with this processor

Specified by:
mutate in class FieldMutatingUpdateProcessor
Parameters:
srcField - the SolrInputField to mutate, may be modified in place and returned
Returns:
the SolrInputField to use in replacing the original (src) value. If null the field will be removed.


Copyright © 2000-2014 Apache Software Foundation. All Rights Reserved.