Author: shalin
Date: Thu Jun 11 12:58:27 2009
New Revision: 783750
URL: http://svn.apache.org/viewvc?rev=783750&view=rev
Log:
SOLR-1120 follow up -- Adding a postTransform hook in EntityProcessor which can
be used to add, remove and modify variables added by Transformers
Modified:
lucene/solr/trunk/contrib/dataimporthandler/src/main/java/org/apache/solr/handler/dataimport/EntityProcessor.java
lucene/solr/trunk/contrib/dataimporthandler/src/main/java/org/apache/solr/handler/dataimport/EntityProcessorWrapper.java
lucene/solr/trunk/contrib/dataimporthandler/src/main/java/org/apache/solr/handler/dataimport/XPathEntityProcessor.java
Modified:
lucene/solr/trunk/contrib/dataimporthandler/src/main/java/org/apache/solr/handler/dataimport/EntityProcessor.java
URL:
http://svn.apache.org/viewvc/lucene/solr/trunk/contrib/dataimporthandler/src/main/java/org/apache/solr/handler/dataimport/EntityProcessor.java?rev=783750&r1=783749&r2=783750&view=diff
==============================================================================
---
lucene/solr/trunk/contrib/dataimporthandler/src/main/java/org/apache/solr/handler/dataimport/EntityProcessor.java
(original)
+++
lucene/solr/trunk/contrib/dataimporthandler/src/main/java/org/apache/solr/handler/dataimport/EntityProcessor.java
Thu Jun 11 12:58:27 2009
@@ -97,6 +97,15 @@
public abstract void destroy();
/**
+ * Invoked after the transformers are invoked. EntityProcessors can add,
remove or modify values
+ * added by Transformers in this method.
+ *
+ * @param r The transformed row
+ */
+ public void postTransform(Map<String, Object> r) {
+ }
+
+ /**
* Invoked when the Entity processor is detroyed. towards the end of import.
*/
public void close() {
Modified:
lucene/solr/trunk/contrib/dataimporthandler/src/main/java/org/apache/solr/handler/dataimport/EntityProcessorWrapper.java
URL:
http://svn.apache.org/viewvc/lucene/solr/trunk/contrib/dataimporthandler/src/main/java/org/apache/solr/handler/dataimport/EntityProcessorWrapper.java?rev=783750&r1=783749&r2=783750&view=diff
==============================================================================
---
lucene/solr/trunk/contrib/dataimporthandler/src/main/java/org/apache/solr/handler/dataimport/EntityProcessorWrapper.java
(original)
+++
lucene/solr/trunk/contrib/dataimporthandler/src/main/java/org/apache/solr/handler/dataimport/EntityProcessorWrapper.java
Thu Jun 11 12:58:27 2009
@@ -233,7 +233,10 @@
return null;
} else {
arow = applyTransformer(arow);
- if (arow != null) return arow;
+ if (arow != null) {
+ delegate.postTransform(arow);
+ return arow;
+ }
}
}
}
Modified:
lucene/solr/trunk/contrib/dataimporthandler/src/main/java/org/apache/solr/handler/dataimport/XPathEntityProcessor.java
URL:
http://svn.apache.org/viewvc/lucene/solr/trunk/contrib/dataimporthandler/src/main/java/org/apache/solr/handler/dataimport/XPathEntityProcessor.java?rev=783750&r1=783749&r2=783750&view=diff
==============================================================================
---
lucene/solr/trunk/contrib/dataimporthandler/src/main/java/org/apache/solr/handler/dataimport/XPathEntityProcessor.java
(original)
+++
lucene/solr/trunk/contrib/dataimporthandler/src/main/java/org/apache/solr/handler/dataimport/XPathEntityProcessor.java
Thu Jun 11 12:58:27 2009
@@ -172,6 +172,11 @@
}
}
+ @Override
+ public void postTransform(Map<String, Object> r) {
+ readUsefulVars(r);
+ }
+
@SuppressWarnings("unchecked")
private Map<String, Object> fetchNextRow() {
Map<String, Object> r = null;