You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by rm...@apache.org on 2011/07/07 16:18:33 UTC

svn commit: r1143840 [18/22] - in /lucene/dev/branches/flexscoring: ./ dev-tools/eclipse/ dev-tools/idea/.idea/ dev-tools/idea/lucene/contrib/ dev-tools/idea/lucene/contrib/demo/ dev-tools/idea/lucene/contrib/highlighter/ dev-tools/idea/lucene/contrib/...

Modified: lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/BCDIntField.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/BCDIntField.java?rev=1143840&r1=1143839&r2=1143840&view=diff
==============================================================================
--- lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/BCDIntField.java (original)
+++ lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/BCDIntField.java Thu Jul  7 14:18:02 2011
@@ -17,9 +17,9 @@
 
 package org.apache.solr.schema;
 
+import org.apache.lucene.queries.function.ValueSource;
 import org.apache.lucene.search.SortField;
 import org.apache.solr.search.QParser;
-import org.apache.solr.search.function.ValueSource;
 import org.apache.lucene.document.Fieldable;
 import org.apache.solr.util.BCDUtils;
 import org.apache.solr.response.TextResponseWriter;

Modified: lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/BoolField.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/BoolField.java?rev=1143840&r1=1143839&r2=1143840&view=diff
==============================================================================
--- lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/BoolField.java (original)
+++ lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/BoolField.java Thu Jul  7 14:18:02 2011
@@ -18,13 +18,16 @@
 package org.apache.solr.schema;
 
 import org.apache.lucene.index.IndexReader;
+import org.apache.lucene.queries.function.DocValues;
+import org.apache.lucene.queries.function.ValueSource;
+import org.apache.lucene.queries.function.docvalues.BoolDocValues;
+import org.apache.lucene.queries.function.valuesource.OrdFieldSource;
 import org.apache.lucene.search.FieldCache;
 import org.apache.lucene.search.SortField;
 import org.apache.lucene.util.BytesRef;
 import org.apache.lucene.util.CharsRef;
-import org.apache.solr.search.MutableValue;
-import org.apache.solr.search.MutableValueBool;
-import org.apache.solr.search.MutableValueInt;
+import org.apache.lucene.util.mutable.MutableValue;
+import org.apache.lucene.util.mutable.MutableValueBool;
 import org.apache.solr.search.QParser;
 import org.apache.solr.search.function.*;
 import org.apache.lucene.analysis.Analyzer;

Modified: lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/ByteField.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/ByteField.java?rev=1143840&r1=1143839&r2=1143840&view=diff
==============================================================================
--- lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/ByteField.java (original)
+++ lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/ByteField.java Thu Jul  7 14:18:02 2011
@@ -17,14 +17,14 @@ package org.apache.solr.schema;
  */
 
 import org.apache.lucene.document.Fieldable;
+import org.apache.lucene.queries.function.ValueSource;
+import org.apache.lucene.queries.function.valuesource.ByteFieldSource;
 import org.apache.lucene.search.SortField;
 import org.apache.lucene.search.cache.ByteValuesCreator;
 import org.apache.lucene.search.cache.CachedArrayCreator;
 
 import org.apache.solr.response.TextResponseWriter;
 import org.apache.solr.search.QParser;
-import org.apache.solr.search.function.ValueSource;
-import org.apache.solr.search.function.ByteFieldSource;
 
 import java.io.IOException;
 import java.util.Map;
@@ -42,7 +42,7 @@ public class ByteField extends FieldType
   @Override
   public SortField getSortField(SchemaField field, boolean reverse) {
     field.checkSortability();
-    return new SortField(field.name, SortField.BYTE, reverse);
+    return new SortField(field.name, SortField.Type.BYTE, reverse);
   }
 
   @Override

Modified: lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/DateField.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/DateField.java?rev=1143840&r1=1143839&r2=1143840&view=diff
==============================================================================
--- lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/DateField.java (original)
+++ lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/DateField.java Thu Jul  7 14:18:02 2011
@@ -19,6 +19,10 @@ package org.apache.solr.schema;
 
 import org.apache.lucene.document.Fieldable;
 import org.apache.lucene.index.IndexReader.AtomicReaderContext;
+import org.apache.lucene.queries.function.DocValues;
+import org.apache.lucene.queries.function.ValueSource;
+import org.apache.lucene.queries.function.docvalues.StringIndexDocValues;
+import org.apache.lucene.queries.function.valuesource.FieldCacheSource;
 import org.apache.lucene.search.Query;
 import org.apache.lucene.search.SortField;
 import org.apache.lucene.search.TermRangeQuery;

Modified: lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/DoubleField.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/DoubleField.java?rev=1143840&r1=1143839&r2=1143840&view=diff
==============================================================================
--- lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/DoubleField.java (original)
+++ lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/DoubleField.java Thu Jul  7 14:18:02 2011
@@ -18,13 +18,13 @@
 package org.apache.solr.schema;
 
 import org.apache.lucene.document.Fieldable;
+import org.apache.lucene.queries.function.ValueSource;
+import org.apache.lucene.queries.function.valuesource.DoubleFieldSource;
 import org.apache.lucene.search.SortField;
 import org.apache.lucene.search.cache.CachedArrayCreator;
 import org.apache.lucene.search.cache.DoubleValuesCreator;
 import org.apache.solr.response.TextResponseWriter;
 import org.apache.solr.search.QParser;
-import org.apache.solr.search.function.DoubleFieldSource;
-import org.apache.solr.search.function.ValueSource;
 
 import java.io.IOException;
 import java.util.Map;
@@ -42,7 +42,7 @@ public class DoubleField extends FieldTy
   @Override
   public SortField getSortField(SchemaField field, boolean reverse) {
     field.checkSortability();
-    return new SortField(field.name, SortField.DOUBLE, reverse);
+    return new SortField(field.name, SortField.Type.DOUBLE, reverse);
   }
 
   @Override

Modified: lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/ExternalFileField.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/ExternalFileField.java?rev=1143840&r1=1143839&r2=1143840&view=diff
==============================================================================
--- lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/ExternalFileField.java (original)
+++ lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/ExternalFileField.java Thu Jul  7 14:18:02 2011
@@ -16,9 +16,9 @@
  */
 package org.apache.solr.schema;
 
+import org.apache.lucene.queries.function.ValueSource;
 import org.apache.lucene.search.SortField;
 import org.apache.lucene.document.Fieldable;
-import org.apache.solr.search.function.ValueSource;
 import org.apache.solr.search.function.FileFloatSource;
 import org.apache.solr.search.QParser;
 import org.apache.solr.response.TextResponseWriter;

Modified: lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/FieldType.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/FieldType.java?rev=1143840&r1=1143839&r2=1143840&view=diff
==============================================================================
--- lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/FieldType.java (original)
+++ lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/FieldType.java Thu Jul  7 14:18:02 2011
@@ -24,6 +24,7 @@ import org.apache.lucene.analysis.tokena
 import org.apache.lucene.document.Field;
 import org.apache.lucene.document.Fieldable;
 import org.apache.lucene.index.Term;
+import org.apache.lucene.queries.function.ValueSource;
 import org.apache.lucene.search.Query;
 import org.apache.lucene.search.Similarity;
 import org.apache.lucene.search.SortField;
@@ -38,7 +39,6 @@ import org.apache.solr.common.SolrExcept
 import org.apache.solr.response.TextResponseWriter;
 import org.apache.solr.search.QParser;
 import org.apache.solr.search.Sorting;
-import org.apache.solr.search.function.ValueSource;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 

Modified: lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/FloatField.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/FloatField.java?rev=1143840&r1=1143839&r2=1143840&view=diff
==============================================================================
--- lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/FloatField.java (original)
+++ lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/FloatField.java Thu Jul  7 14:18:02 2011
@@ -17,12 +17,12 @@
 
 package org.apache.solr.schema;
 
+import org.apache.lucene.queries.function.ValueSource;
+import org.apache.lucene.queries.function.valuesource.FloatFieldSource;
 import org.apache.lucene.search.SortField;
 import org.apache.lucene.search.cache.CachedArrayCreator;
 import org.apache.lucene.search.cache.FloatValuesCreator;
 import org.apache.solr.search.QParser;
-import org.apache.solr.search.function.ValueSource;
-import org.apache.solr.search.function.FloatFieldSource;
 import org.apache.lucene.document.Fieldable;
 import org.apache.solr.response.TextResponseWriter;
 
@@ -40,7 +40,7 @@ public class FloatField extends FieldTyp
   @Override
   public SortField getSortField(SchemaField field,boolean reverse) {
     field.checkSortability();
-    return new SortField(field.name,SortField.FLOAT, reverse);
+    return new SortField(field.name,SortField.Type.FLOAT, reverse);
   }
 
   @Override

Modified: lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/GeoHashField.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/GeoHashField.java?rev=1143840&r1=1143839&r2=1143840&view=diff
==============================================================================
--- lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/GeoHashField.java (original)
+++ lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/GeoHashField.java Thu Jul  7 14:18:02 2011
@@ -18,6 +18,8 @@
 package org.apache.solr.schema;
 
 import org.apache.lucene.document.Fieldable;
+import org.apache.lucene.queries.function.ValueSource;
+import org.apache.lucene.queries.function.valuesource.LiteralValueSource;
 import org.apache.lucene.search.Query;
 import org.apache.lucene.search.SortField;
 import org.apache.lucene.spatial.geohash.GeoHashUtils;
@@ -28,8 +30,6 @@ import org.apache.solr.response.TextResp
 import org.apache.solr.search.QParser;
 import org.apache.solr.search.SolrConstantScoreQuery;
 import org.apache.solr.search.SpatialOptions;
-import org.apache.solr.search.function.LiteralValueSource;
-import org.apache.solr.search.function.ValueSource;
 import org.apache.solr.search.function.ValueSourceRangeFilter;
 import org.apache.solr.search.function.distance.GeohashHaversineFunction;
 

Modified: lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/IntField.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/IntField.java?rev=1143840&r1=1143839&r2=1143840&view=diff
==============================================================================
--- lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/IntField.java (original)
+++ lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/IntField.java Thu Jul  7 14:18:02 2011
@@ -17,12 +17,12 @@
 
 package org.apache.solr.schema;
 
+import org.apache.lucene.queries.function.ValueSource;
+import org.apache.lucene.queries.function.valuesource.IntFieldSource;
 import org.apache.lucene.search.SortField;
 import org.apache.lucene.search.cache.CachedArrayCreator;
 import org.apache.lucene.search.cache.IntValuesCreator;
 import org.apache.solr.search.QParser;
-import org.apache.solr.search.function.ValueSource;
-import org.apache.solr.search.function.IntFieldSource;
 import org.apache.lucene.document.Fieldable;
 import org.apache.solr.response.TextResponseWriter;
 
@@ -40,7 +40,7 @@ public class IntField extends FieldType 
   @Override
   public SortField getSortField(SchemaField field,boolean reverse) {
     field.checkSortability();
-    return new SortField(field.name,SortField.INT, reverse);
+    return new SortField(field.name,SortField.Type.INT, reverse);
   }
 
   @Override

Modified: lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/LatLonType.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/LatLonType.java?rev=1143840&r1=1143839&r2=1143840&view=diff
==============================================================================
--- lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/LatLonType.java (original)
+++ lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/LatLonType.java Thu Jul  7 14:18:02 2011
@@ -20,6 +20,9 @@ import org.apache.lucene.document.Field;
 import org.apache.lucene.document.Fieldable;
 import org.apache.lucene.index.IndexReader;
 import org.apache.lucene.index.IndexReader.AtomicReaderContext;
+import org.apache.lucene.queries.function.DocValues;
+import org.apache.lucene.queries.function.ValueSource;
+import org.apache.lucene.queries.function.valuesource.VectorValueSource;
 import org.apache.lucene.search.*;
 import org.apache.lucene.spatial.DistanceUtils;
 import org.apache.lucene.spatial.tier.InvalidGeoException;
@@ -28,9 +31,6 @@ import org.apache.solr.common.SolrExcept
 import org.apache.solr.response.TextResponseWriter;
 import org.apache.solr.search.QParser;
 import org.apache.solr.search.SpatialOptions;
-import org.apache.solr.search.function.DocValues;
-import org.apache.solr.search.function.ValueSource;
-import org.apache.solr.search.function.VectorValueSource;
 
 import java.io.IOException;
 import java.util.ArrayList;
@@ -384,7 +384,7 @@ class SpatialDistanceQuery extends Query
     int doc=-1;
     final DocValues latVals;
     final DocValues lonVals;
-    final Bits delDocs;
+    final Bits liveDocs;
 
 
     final double lonMin, lonMax, lon2Min, lon2Max, latMin, latMax;
@@ -406,7 +406,7 @@ class SpatialDistanceQuery extends Query
       this.qWeight = qWeight;
       this.reader = readerContext.reader;
       this.maxDoc = reader.maxDoc();
-      this.delDocs = reader.getDeletedDocs();
+      this.liveDocs = reader.getLiveDocs();
       latVals = latSource.getValues(weight.latContext, readerContext);
       lonVals = lonSource.getValues(weight.lonContext, readerContext);
 
@@ -484,7 +484,7 @@ class SpatialDistanceQuery extends Query
         if (doc>=maxDoc) {
           return doc=NO_MORE_DOCS;
         }
-        if (delDocs != null && delDocs.get(doc)) continue;
+        if (liveDocs != null && !liveDocs.get(doc)) continue;
         if (!match()) continue;
         return doc;
       }

Modified: lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/LongField.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/LongField.java?rev=1143840&r1=1143839&r2=1143840&view=diff
==============================================================================
--- lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/LongField.java (original)
+++ lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/LongField.java Thu Jul  7 14:18:02 2011
@@ -18,13 +18,13 @@
 package org.apache.solr.schema;
 
 import org.apache.lucene.document.Fieldable;
+import org.apache.lucene.queries.function.ValueSource;
+import org.apache.lucene.queries.function.valuesource.LongFieldSource;
 import org.apache.lucene.search.SortField;
 import org.apache.lucene.search.cache.CachedArrayCreator;
 import org.apache.lucene.search.cache.LongValuesCreator;
 import org.apache.solr.response.TextResponseWriter;
 import org.apache.solr.search.QParser;
-import org.apache.solr.search.function.ValueSource;
-import org.apache.solr.search.function.LongFieldSource;
 
 import java.io.IOException;
 import java.util.Map;
@@ -42,7 +42,7 @@ public class LongField extends FieldType
   @Override
   public SortField getSortField(SchemaField field,boolean reverse) {
     field.checkSortability();
-    return new SortField(field.name,SortField.LONG, reverse);
+    return new SortField(field.name,SortField.Type.LONG, reverse);
   }
 
   @Override

Modified: lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/PointType.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/PointType.java?rev=1143840&r1=1143839&r2=1143840&view=diff
==============================================================================
--- lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/PointType.java (original)
+++ lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/PointType.java Thu Jul  7 14:18:02 2011
@@ -19,6 +19,8 @@ package org.apache.solr.schema;
 
 import org.apache.lucene.document.Field;
 import org.apache.lucene.document.Fieldable;
+import org.apache.lucene.queries.function.ValueSource;
+import org.apache.lucene.queries.function.valuesource.VectorValueSource;
 import org.apache.lucene.search.BooleanClause;
 import org.apache.lucene.search.BooleanQuery;
 import org.apache.lucene.search.Query;
@@ -31,8 +33,6 @@ import org.apache.solr.common.params.Sol
 import org.apache.solr.response.TextResponseWriter;
 import org.apache.solr.search.QParser;
 import org.apache.solr.search.SpatialOptions;
-import org.apache.solr.search.function.VectorValueSource;
-import org.apache.solr.search.function.ValueSource;
 
 import java.io.IOException;
 import java.util.Map;

Modified: lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/RandomSortField.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/RandomSortField.java?rev=1143840&r1=1143839&r2=1143840&view=diff
==============================================================================
--- lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/RandomSortField.java (original)
+++ lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/RandomSortField.java Thu Jul  7 14:18:02 2011
@@ -23,13 +23,13 @@ import java.util.Map;
 import org.apache.lucene.document.Fieldable;
 import org.apache.lucene.index.IndexReader;
 import org.apache.lucene.index.IndexReader.AtomicReaderContext;
+import org.apache.lucene.queries.function.DocValues;
+import org.apache.lucene.queries.function.ValueSource;
+import org.apache.lucene.queries.function.docvalues.IntDocValues;
 import org.apache.lucene.search.*;
 import org.apache.lucene.util.ReaderUtil;
 import org.apache.solr.response.TextResponseWriter;
 import org.apache.solr.search.QParser;
-import org.apache.solr.search.function.DocValues;
-import org.apache.solr.search.function.IntDocValues;
-import org.apache.solr.search.function.ValueSource;
 
 /**
  * Utility Field used for random sorting.  It should not be passed a value.

Modified: lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/ShortField.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/ShortField.java?rev=1143840&r1=1143839&r2=1143840&view=diff
==============================================================================
--- lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/ShortField.java (original)
+++ lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/ShortField.java Thu Jul  7 14:18:02 2011
@@ -17,14 +17,14 @@ package org.apache.solr.schema;
  */
 
 import org.apache.lucene.document.Fieldable;
+import org.apache.lucene.queries.function.ValueSource;
+import org.apache.lucene.queries.function.valuesource.ShortFieldSource;
 import org.apache.lucene.search.SortField;
 import org.apache.lucene.search.cache.CachedArrayCreator;
 import org.apache.lucene.search.cache.ShortValuesCreator;
 
 import org.apache.solr.response.TextResponseWriter;
 import org.apache.solr.search.QParser;
-import org.apache.solr.search.function.ValueSource;
-import org.apache.solr.search.function.ShortFieldSource;
 
 import java.io.IOException;
 import java.util.Map;
@@ -45,7 +45,7 @@ public class ShortField extends FieldTyp
   @Override
   public SortField getSortField(SchemaField field, boolean reverse) {
     field.checkSortability();
-    return new SortField(field.name, SortField.SHORT, reverse);
+    return new SortField(field.name, SortField.Type.SHORT, reverse);
   }
 
   @Override

Modified: lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/SortableDoubleField.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/SortableDoubleField.java?rev=1143840&r1=1143839&r2=1143840&view=diff
==============================================================================
--- lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/SortableDoubleField.java (original)
+++ lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/SortableDoubleField.java Thu Jul  7 14:18:02 2011
@@ -17,16 +17,16 @@
 
 package org.apache.solr.schema;
 
+import org.apache.lucene.queries.function.DocValues;
+import org.apache.lucene.queries.function.ValueSource;
+import org.apache.lucene.queries.function.docvalues.StringIndexDocValues;
+import org.apache.lucene.queries.function.valuesource.FieldCacheSource;
 import org.apache.lucene.search.SortField;
 import org.apache.lucene.util.BytesRef;
 import org.apache.lucene.util.CharsRef;
-import org.apache.solr.search.MutableValueDouble;
-import org.apache.solr.search.MutableValue;
+import org.apache.lucene.util.mutable.MutableValue;
+import org.apache.lucene.util.mutable.MutableValueDouble;
 import org.apache.solr.search.QParser;
-import org.apache.solr.search.function.ValueSource;
-import org.apache.solr.search.function.FieldCacheSource;
-import org.apache.solr.search.function.DocValues;
-import org.apache.solr.search.function.StringIndexDocValues;
 import org.apache.lucene.document.Fieldable;
 import org.apache.lucene.index.IndexReader.AtomicReaderContext;
 import org.apache.solr.util.NumberUtils;

Modified: lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/SortableFloatField.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/SortableFloatField.java?rev=1143840&r1=1143839&r2=1143840&view=diff
==============================================================================
--- lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/SortableFloatField.java (original)
+++ lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/SortableFloatField.java Thu Jul  7 14:18:02 2011
@@ -17,16 +17,16 @@
 
 package org.apache.solr.schema;
 
+import org.apache.lucene.queries.function.DocValues;
+import org.apache.lucene.queries.function.ValueSource;
+import org.apache.lucene.queries.function.docvalues.StringIndexDocValues;
+import org.apache.lucene.queries.function.valuesource.FieldCacheSource;
 import org.apache.lucene.search.SortField;
 import org.apache.lucene.util.BytesRef;
 import org.apache.lucene.util.CharsRef;
-import org.apache.solr.search.MutableValueFloat;
-import org.apache.solr.search.MutableValue;
+import org.apache.lucene.util.mutable.MutableValue;
+import org.apache.lucene.util.mutable.MutableValueFloat;
 import org.apache.solr.search.QParser;
-import org.apache.solr.search.function.ValueSource;
-import org.apache.solr.search.function.FieldCacheSource;
-import org.apache.solr.search.function.DocValues;
-import org.apache.solr.search.function.StringIndexDocValues;
 import org.apache.lucene.document.Fieldable;
 import org.apache.lucene.index.IndexReader.AtomicReaderContext;
 import org.apache.solr.util.NumberUtils;

Modified: lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/SortableIntField.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/SortableIntField.java?rev=1143840&r1=1143839&r2=1143840&view=diff
==============================================================================
--- lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/SortableIntField.java (original)
+++ lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/SortableIntField.java Thu Jul  7 14:18:02 2011
@@ -17,16 +17,16 @@
 
 package org.apache.solr.schema;
 
+import org.apache.lucene.queries.function.DocValues;
+import org.apache.lucene.queries.function.ValueSource;
+import org.apache.lucene.queries.function.docvalues.StringIndexDocValues;
+import org.apache.lucene.queries.function.valuesource.FieldCacheSource;
 import org.apache.lucene.search.SortField;
 import org.apache.lucene.util.BytesRef;
 import org.apache.lucene.util.CharsRef;
-import org.apache.solr.search.MutableValueInt;
-import org.apache.solr.search.MutableValue;
+import org.apache.lucene.util.mutable.MutableValue;
+import org.apache.lucene.util.mutable.MutableValueInt;
 import org.apache.solr.search.QParser;
-import org.apache.solr.search.function.ValueSource;
-import org.apache.solr.search.function.FieldCacheSource;
-import org.apache.solr.search.function.DocValues;
-import org.apache.solr.search.function.StringIndexDocValues;
 import org.apache.lucene.document.Fieldable;
 import org.apache.lucene.index.IndexReader.AtomicReaderContext;
 import org.apache.solr.util.NumberUtils;

Modified: lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/SortableLongField.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/SortableLongField.java?rev=1143840&r1=1143839&r2=1143840&view=diff
==============================================================================
--- lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/SortableLongField.java (original)
+++ lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/SortableLongField.java Thu Jul  7 14:18:02 2011
@@ -17,16 +17,16 @@
 
 package org.apache.solr.schema;
 
+import org.apache.lucene.queries.function.DocValues;
+import org.apache.lucene.queries.function.ValueSource;
+import org.apache.lucene.queries.function.docvalues.StringIndexDocValues;
+import org.apache.lucene.queries.function.valuesource.FieldCacheSource;
 import org.apache.lucene.search.SortField;
 import org.apache.lucene.util.BytesRef;
 import org.apache.lucene.util.CharsRef;
-import org.apache.solr.search.MutableValueLong;
-import org.apache.solr.search.MutableValue;
+import org.apache.lucene.util.mutable.MutableValue;
+import org.apache.lucene.util.mutable.MutableValueLong;
 import org.apache.solr.search.QParser;
-import org.apache.solr.search.function.ValueSource;
-import org.apache.solr.search.function.FieldCacheSource;
-import org.apache.solr.search.function.DocValues;
-import org.apache.solr.search.function.StringIndexDocValues;
 import org.apache.lucene.document.Fieldable;
 import org.apache.lucene.index.IndexReader.AtomicReaderContext;
 import org.apache.solr.util.NumberUtils;

Modified: lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/StrField.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/StrField.java?rev=1143840&r1=1143839&r2=1143840&view=diff
==============================================================================
--- lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/StrField.java (original)
+++ lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/StrField.java Thu Jul  7 14:18:02 2011
@@ -17,11 +17,11 @@
 
 package org.apache.solr.schema;
 
+import org.apache.lucene.queries.function.ValueSource;
 import org.apache.lucene.search.SortField;
 import org.apache.lucene.document.Fieldable;
 import org.apache.lucene.util.BytesRef;
 import org.apache.solr.response.TextResponseWriter;
-import org.apache.solr.search.function.ValueSource;
 import org.apache.solr.search.QParser;
 
 import java.util.Map;

Modified: lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/StrFieldSource.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/StrFieldSource.java?rev=1143840&r1=1143839&r2=1143840&view=diff
==============================================================================
--- lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/StrFieldSource.java (original)
+++ lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/StrFieldSource.java Thu Jul  7 14:18:02 2011
@@ -18,9 +18,9 @@
 package org.apache.solr.schema;
 
 import org.apache.lucene.index.IndexReader.AtomicReaderContext;
-import org.apache.solr.search.function.DocValues;
-import org.apache.solr.search.function.FieldCacheSource;
-import org.apache.solr.search.function.StringIndexDocValues;
+import org.apache.lucene.queries.function.DocValues;
+import org.apache.lucene.queries.function.docvalues.StringIndexDocValues;
+import org.apache.lucene.queries.function.valuesource.FieldCacheSource;
 
 import java.io.IOException;
 import java.util.Map;

Modified: lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/TrieDateField.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/TrieDateField.java?rev=1143840&r1=1143839&r2=1143840&view=diff
==============================================================================
--- lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/TrieDateField.java (original)
+++ lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/TrieDateField.java Thu Jul  7 14:18:02 2011
@@ -17,7 +17,7 @@
 
 package org.apache.solr.schema;
 
-import org.apache.solr.search.function.ValueSource;
+import org.apache.lucene.queries.function.ValueSource;
 import org.apache.solr.search.QParser;
 import org.apache.solr.response.TextResponseWriter;
 import org.apache.lucene.document.Fieldable;

Modified: lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/TrieField.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/TrieField.java?rev=1143840&r1=1143839&r2=1143840&view=diff
==============================================================================
--- lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/TrieField.java (original)
+++ lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/schema/TrieField.java Thu Jul  7 14:18:02 2011
@@ -19,6 +19,11 @@ package org.apache.solr.schema;
 import org.apache.lucene.document.Fieldable;
 import org.apache.lucene.document.Field;
 import org.apache.lucene.document.NumericField;
+import org.apache.lucene.queries.function.ValueSource;
+import org.apache.lucene.queries.function.valuesource.DoubleFieldSource;
+import org.apache.lucene.queries.function.valuesource.FloatFieldSource;
+import org.apache.lucene.queries.function.valuesource.IntFieldSource;
+import org.apache.lucene.queries.function.valuesource.LongFieldSource;
 import org.apache.lucene.search.*;
 import org.apache.lucene.search.cache.CachedArrayCreator;
 import org.apache.lucene.search.cache.DoubleValuesCreator;
@@ -28,11 +33,11 @@ import org.apache.lucene.search.cache.Lo
 import org.apache.lucene.util.BytesRef;
 import org.apache.lucene.util.CharsRef;
 import org.apache.lucene.util.NumericUtils;
+import org.apache.lucene.util.mutable.MutableValueDate;
+import org.apache.lucene.util.mutable.MutableValueLong;
 import org.apache.solr.analysis.*;
 import org.apache.solr.common.SolrException;
 import org.apache.solr.response.TextResponseWriter;
-import org.apache.solr.search.MutableValueDate;
-import org.apache.solr.search.MutableValueLong;
 import org.apache.solr.search.QParser;
 import org.apache.solr.search.function.*;
 

Modified: lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/search/BoostQParserPlugin.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/search/BoostQParserPlugin.java?rev=1143840&r1=1143839&r2=1143840&view=diff
==============================================================================
--- lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/search/BoostQParserPlugin.java (original)
+++ lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/search/BoostQParserPlugin.java Thu Jul  7 14:18:02 2011
@@ -16,15 +16,15 @@
  */
 package org.apache.solr.search;
 
+import org.apache.lucene.queries.function.BoostedQuery;
+import org.apache.lucene.queries.function.FunctionQuery;
+import org.apache.lucene.queries.function.ValueSource;
+import org.apache.lucene.queries.function.valuesource.QueryValueSource;
 import org.apache.lucene.queryParser.ParseException;
 import org.apache.lucene.search.Query;
 import org.apache.solr.common.params.SolrParams;
 import org.apache.solr.common.util.NamedList;
 import org.apache.solr.request.SolrQueryRequest;
-import org.apache.solr.search.function.BoostedQuery;
-import org.apache.solr.search.function.FunctionQuery;
-import org.apache.solr.search.function.QueryValueSource;
-import org.apache.solr.search.function.ValueSource;
 
 /**
  * Create a boosted query from the input value.  The main value is the query to be boosted.
@@ -34,7 +34,8 @@ import org.apache.solr.search.function.V
  * The query to be boosted may be of any type.
  *
  * <p>Example: <code>{!boost b=recip(ms(NOW,mydatefield),3.16e-11,1,1)}foo</code> creates a query "foo"
- * which is boosted by the date boosting function referenced in {@link org.apache.solr.search.function.ReciprocalFloatFunction}
+ * which is boosted by the date boosting function referenced in
+ * {@link org.apache.lucene.queries.function.valuesource.ReciprocalFloatFunction}
  */
 public class BoostQParserPlugin extends QParserPlugin {
   public static String NAME = "boost";
@@ -54,10 +55,10 @@ public class BoostQParserPlugin extends 
       public Query parse() throws ParseException {
         b = localParams.get(BOOSTFUNC);
         baseParser = subQuery(localParams.get(QueryParsing.V), null);
-        Query q = baseParser.parse();
+        Query q = baseParser.getQuery();
 
         if (b == null) return q;
-        Query bq = subQuery(b, FunctionQParserPlugin.NAME).parse();
+        Query bq = subQuery(b, FunctionQParserPlugin.NAME).getQuery();
         if (bq instanceof FunctionQuery) {
           vs = ((FunctionQuery)bq).getValueSource();
         } else {

Modified: lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/search/DisMaxQParser.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/search/DisMaxQParser.java?rev=1143840&r1=1143839&r2=1143840&view=diff
==============================================================================
--- lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/search/DisMaxQParser.java (original)
+++ lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/search/DisMaxQParser.java Thu Jul  7 14:18:02 2011
@@ -106,7 +106,7 @@ public class DisMaxQParser extends QPars
         if (null == boostFunc || "".equals(boostFunc)) continue;
         Map<String, Float> ff = SolrPluginUtils.parseFieldBoosts(boostFunc);
         for (String f : ff.keySet()) {
-          Query fq = subQuery(f, FunctionQParserPlugin.NAME).parse();
+          Query fq = subQuery(f, FunctionQParserPlugin.NAME).getQuery();
           Float b = ff.get(f);
           if (null != b) {
             fq.setBoost(b);
@@ -125,7 +125,7 @@ public class DisMaxQParser extends QPars
       boostQueries = new ArrayList<Query>();
       for (String qs : boostParams) {
         if (qs.trim().length() == 0) continue;
-        Query q = subQuery(qs, null).parse();
+        Query q = subQuery(qs, null).getQuery();
         boostQueries.add(q);
       }
     }
@@ -190,7 +190,7 @@ public class DisMaxQParser extends QPars
     String altQ = solrParams.get(DisMaxParams.ALTQ);
     if (altQ != null) {
       QParser altQParser = subQuery(altQ, null);
-      return altQParser.parse();
+      return altQParser.getQuery();
     } else {
       throw new SolrException(SolrException.ErrorCode.BAD_REQUEST, "missing query string");
     }

Modified: lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/search/ExtendedDismaxQParserPlugin.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/search/ExtendedDismaxQParserPlugin.java?rev=1143840&r1=1143839&r2=1143840&view=diff
==============================================================================
--- lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/search/ExtendedDismaxQParserPlugin.java (original)
+++ lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/search/ExtendedDismaxQParserPlugin.java Thu Jul  7 14:18:02 2011
@@ -22,6 +22,11 @@
 
 package org.apache.solr.search;
 
+import org.apache.lucene.queries.function.BoostedQuery;
+import org.apache.lucene.queries.function.FunctionQuery;
+import org.apache.lucene.queries.function.ValueSource;
+import org.apache.lucene.queries.function.valuesource.ProductFloatFunction;
+import org.apache.lucene.queries.function.valuesource.QueryValueSource;
 import org.apache.lucene.queryParser.ParseException;
 import org.apache.lucene.queryParser.QueryParser;
 import org.apache.lucene.search.*;
@@ -34,11 +39,6 @@ import org.apache.solr.common.util.Named
 import org.apache.solr.request.SolrQueryRequest;
 import org.apache.solr.schema.FieldType;
 import org.apache.solr.search.QueryUtils;
-import org.apache.solr.search.function.BoostedQuery;
-import org.apache.solr.search.function.FunctionQuery;
-import org.apache.solr.search.function.ProductFloatFunction;
-import org.apache.solr.search.function.QueryValueSource;
-import org.apache.solr.search.function.ValueSource;
 import org.apache.solr.util.SolrPluginUtils;
 import org.apache.solr.analysis.*;
 

Modified: lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/search/FunctionQParser.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/search/FunctionQParser.java?rev=1143840&r1=1143839&r2=1143840&view=diff
==============================================================================
--- lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/search/FunctionQParser.java (original)
+++ lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/search/FunctionQParser.java Thu Jul  7 14:18:02 2011
@@ -16,6 +16,9 @@
  */
 package org.apache.solr.search;
 
+import org.apache.lucene.queries.function.FunctionQuery;
+import org.apache.lucene.queries.function.ValueSource;
+import org.apache.lucene.queries.function.valuesource.*;
 import org.apache.lucene.queryParser.ParseException;
 import org.apache.lucene.search.Query;
 import org.apache.solr.common.params.SolrParams;

Modified: lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/search/FunctionRangeQParserPlugin.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/search/FunctionRangeQParserPlugin.java?rev=1143840&r1=1143839&r2=1143840&view=diff
==============================================================================
--- lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/search/FunctionRangeQParserPlugin.java (original)
+++ lucene/dev/branches/flexscoring/solr/src/java/org/apache/solr/search/FunctionRangeQParserPlugin.java Thu Jul  7 14:18:02 2011
@@ -16,13 +16,23 @@
  */
 package org.apache.solr.search;
 
+import org.apache.lucene.index.IndexReader;
+import org.apache.lucene.queries.function.DocValues;
+import org.apache.lucene.queries.function.FunctionQuery;
+import org.apache.lucene.queries.function.ValueSource;
+import org.apache.lucene.queries.function.ValueSourceScorer;
+import org.apache.lucene.queries.function.valuesource.QueryValueSource;
 import org.apache.lucene.queryParser.ParseException;
-import org.apache.lucene.search.Query;
+import org.apache.lucene.search.*;
 import org.apache.solr.common.params.SolrParams;
 import org.apache.solr.common.util.NamedList;
+import org.apache.solr.core.SolrConfig;
 import org.apache.solr.request.SolrQueryRequest;
 import org.apache.solr.search.function.*;
 
+import java.io.IOException;
+import java.util.Map;
+
 /**
  * Create a range query over a function.
  * <br>Other parameters:
@@ -48,7 +58,7 @@ public class FunctionRangeQParserPlugin 
       @Override
       public Query parse() throws ParseException {
         funcStr = localParams.get(QueryParsing.V, null);
-        Query funcQ = subQuery(funcStr, FunctionQParserPlugin.NAME).parse();
+        Query funcQ = subQuery(funcStr, FunctionQParserPlugin.NAME).getQuery();
         if (funcQ instanceof FunctionQuery) {
           vs = ((FunctionQuery)funcQ).getValueSource();
         } else {
@@ -62,10 +72,51 @@ public class FunctionRangeQParserPlugin 
 
         // TODO: add a score=val option to allow score to be the value
         ValueSourceRangeFilter rf = new ValueSourceRangeFilter(vs, l, u, includeLower, includeUpper);
-        SolrConstantScoreQuery csq = new SolrConstantScoreQuery(rf);
-        return csq;
+        FunctionRangeQuery frq = new FunctionRangeQuery(rf);
+        return frq;
       }
     };
   }
 
 }
+
+// This class works as either a normal constant score query, or as a PostFilter using a collector
+class FunctionRangeQuery extends SolrConstantScoreQuery implements PostFilter {
+  final ValueSourceRangeFilter rangeFilt;
+
+  public FunctionRangeQuery(ValueSourceRangeFilter filter) {
+    super(filter);
+    this.rangeFilt = filter;
+  }
+
+  @Override
+  public DelegatingCollector getFilterCollector(IndexSearcher searcher) {
+    Map fcontext = ValueSource.newContext(searcher);
+    return new FunctionRangeCollector(fcontext);
+  }
+
+  class FunctionRangeCollector extends DelegatingCollector {
+    final Map fcontext;
+    ValueSourceScorer scorer;
+    int maxdoc;
+
+    public FunctionRangeCollector(Map fcontext) {
+      this.fcontext = fcontext;
+    }
+
+    @Override
+    public void collect(int doc) throws IOException {
+      if (doc<maxdoc && scorer.matches(doc)) {
+        delegate.collect(doc);
+      }
+    }
+
+    @Override
+    public void setNextReader(IndexReader.AtomicReaderContext context) throws IOException {
+      maxdoc = context.reader.maxDoc();
+      DocValues dv = rangeFilt.getValueSource().getValues(fcontext, context);
+      scorer = dv.getRangeScorer(context.reader, rangeFilt.getLowerVal(), rangeFilt.getUpperVal(), rangeFilt.isIncludeLower(), rangeFilt.isIncludeUpper());
+      super.setNextReader(context);
+    }
+  }
+}