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;


Reply via email to