You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by sh...@apache.org on 2012/01/12 08:43:44 UTC
svn commit: r1230431 - in /lucene/dev/trunk: ./
dev-tools/idea/lucene/contrib/ lucene/
lucene/contrib/sandbox/src/test/org/apache/lucene/sandbox/queries/regex/
lucene/src/java/org/apache/lucene/codecs/lucene3x/ modules/benchmark/
modules/facet/ modules...
Author: shaie
Date: Thu Jan 12 07:43:42 2012
New Revision: 1230431
URL: http://svn.apache.org/viewvc?rev=1230431&view=rev
Log:
LUCENE-3686: CategoryEnhancement must override Object.equals()
Modified:
lucene/dev/trunk/ (props changed)
lucene/dev/trunk/dev-tools/idea/lucene/contrib/ (props changed)
lucene/dev/trunk/lucene/ (props changed)
lucene/dev/trunk/lucene/contrib/sandbox/src/test/org/apache/lucene/sandbox/queries/regex/TestSpanRegexQuery.java (props changed)
lucene/dev/trunk/lucene/src/java/org/apache/lucene/codecs/lucene3x/TermInfosReaderIndex.java (props changed)
lucene/dev/trunk/modules/benchmark/ (props changed)
lucene/dev/trunk/modules/facet/ (props changed)
lucene/dev/trunk/modules/facet/src/java/org/apache/lucene/facet/enhancements/CategoryEnhancement.java
lucene/dev/trunk/modules/facet/src/java/org/apache/lucene/facet/enhancements/association/AssociationEnhancement.java
lucene/dev/trunk/modules/queryparser/src/test/org/apache/lucene/queryparser/xml/builders/TestNumericRangeFilterBuilder.java (props changed)
lucene/dev/trunk/solr/ (props changed)
lucene/dev/trunk/solr/CHANGES.txt (props changed)
lucene/dev/trunk/solr/LICENSE.txt (props changed)
lucene/dev/trunk/solr/NOTICE.txt (props changed)
lucene/dev/trunk/solr/README.txt (props changed)
lucene/dev/trunk/solr/build.xml (props changed)
lucene/dev/trunk/solr/client/ (props changed)
lucene/dev/trunk/solr/common-build.xml (props changed)
lucene/dev/trunk/solr/contrib/ (props changed)
lucene/dev/trunk/solr/contrib/clustering/src/test-files/ (props changed)
lucene/dev/trunk/solr/contrib/dataimporthandler-extras/src/java/ (props changed)
lucene/dev/trunk/solr/contrib/dataimporthandler/src/java/ (props changed)
lucene/dev/trunk/solr/contrib/dataimporthandler/src/test-files/ (props changed)
lucene/dev/trunk/solr/contrib/dataimporthandler/src/test/org/ (props changed)
lucene/dev/trunk/solr/contrib/uima/src/java/ (props changed)
lucene/dev/trunk/solr/contrib/uima/src/test-files/ (props changed)
lucene/dev/trunk/solr/core/ (props changed)
lucene/dev/trunk/solr/core/src/java/ (props changed)
lucene/dev/trunk/solr/core/src/test/ (props changed)
lucene/dev/trunk/solr/dev-tools/ (props changed)
lucene/dev/trunk/solr/example/ (props changed)
lucene/dev/trunk/solr/lib/ (props changed)
lucene/dev/trunk/solr/scripts/ (props changed)
lucene/dev/trunk/solr/site/ (props changed)
lucene/dev/trunk/solr/site-src/ (props changed)
lucene/dev/trunk/solr/solrj/ (props changed)
lucene/dev/trunk/solr/solrj/src/java/ (props changed)
lucene/dev/trunk/solr/solrj/src/test/org/apache/solr/client/ (props changed)
lucene/dev/trunk/solr/solrj/src/test/org/apache/solr/client/solrj/ (props changed)
lucene/dev/trunk/solr/solrj/src/test/org/apache/solr/common/ (props changed)
lucene/dev/trunk/solr/test-framework/ (props changed)
lucene/dev/trunk/solr/testlogging.properties (props changed)
lucene/dev/trunk/solr/webapp/ (props changed)
Modified: lucene/dev/trunk/modules/facet/src/java/org/apache/lucene/facet/enhancements/CategoryEnhancement.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/modules/facet/src/java/org/apache/lucene/facet/enhancements/CategoryEnhancement.java?rev=1230431&r1=1230430&r2=1230431&view=diff
==============================================================================
--- lucene/dev/trunk/modules/facet/src/java/org/apache/lucene/facet/enhancements/CategoryEnhancement.java (original)
+++ lucene/dev/trunk/modules/facet/src/java/org/apache/lucene/facet/enhancements/CategoryEnhancement.java Thu Jan 12 07:43:42 2012
@@ -47,24 +47,24 @@ import org.apache.lucene.facet.taxonomy.
* @lucene.experimental
*/
public interface CategoryEnhancement {
-
+
/**
* Get the bytes to be added to the category token payload for this
* enhancement.
* <p>
- * <b>NOTE</b>: The returned array is copied, it is recommended to allocate
- * a new one each time.
+ * <b>NOTE</b>: The returned array is copied, it is recommended to allocate a
+ * new one each time.
* <p>
* The bytes generated by this method are the input of
* {@link #extractCategoryTokenData(byte[], int, int)}.
*
* @param categoryAttribute
- * The attribute of the category.
+ * The attribute of the category.
* @return The bytes to be added to the category token payload for this
* enhancement.
*/
byte[] getCategoryTokenBytes(CategoryAttribute categoryAttribute);
-
+
/**
* Get the data of this enhancement from a category token payload.
* <p>
@@ -72,56 +72,61 @@ public interface CategoryEnhancement {
* {@link #getCategoryTokenBytes(CategoryAttribute)}.
*
* @param buffer
- * The payload buffer.
+ * The payload buffer.
* @param offset
- * The offset of this enhancement's data in the buffer.
+ * The offset of this enhancement's data in the buffer.
* @param length
- * The length of this enhancement's data (bytes).
+ * The length of this enhancement's data (bytes).
* @return An Object containing the data.
*/
Object extractCategoryTokenData(byte[] buffer, int offset, int length);
-
+
/**
- * Declarative method to indicate whether this enhancement generates
- * separate category list.
+ * Declarative method to indicate whether this enhancement generates separate
+ * category list.
*
* @return {@code true} if generates category list, else {@code false}.
*/
boolean generatesCategoryList();
-
+
/**
* Returns the text of this enhancement's category list term.
*
* @return The text of this enhancement's category list term.
*/
String getCategoryListTermText();
-
+
/**
- * Get the {@link CategoryListTokenizer} which generates the category list
- * for this enhancement. If {@link #generatesCategoryList()} returns
- * {@code false} this method will not be called.
+ * Get the {@link CategoryListTokenizer} which generates the category list for
+ * this enhancement. If {@link #generatesCategoryList()} returns {@code false}
+ * this method will not be called.
*
* @param tokenizer
- * The input stream containing categories.
+ * The input stream containing categories.
* @param indexingParams
- * The indexing params to use.
+ * The indexing params to use.
* @param taxonomyWriter
- * The taxonomy to add categories and get their ordinals.
+ * The taxonomy to add categories and get their ordinals.
* @return A {@link CategoryListTokenizer} generating the category list for
* this enhancement, with {@code tokenizer} as it's input.
*/
CategoryListTokenizer getCategoryListTokenizer(TokenStream tokenizer,
- EnhancementsIndexingParams indexingParams,
- TaxonomyWriter taxonomyWriter);
-
+ EnhancementsIndexingParams indexingParams, TaxonomyWriter taxonomyWriter);
+
/**
* Get a {@link CategoryProperty} class to be retained when creating
* {@link CategoryParentsStream}.
*
* @return the {@link CategoryProperty} class to be retained when creating
- * {@link CategoryParentsStream}, or {@code null} if there is no
- * such property.
+ * {@link CategoryParentsStream}, or {@code null} if there is no such
+ * property.
*/
Class<? extends CategoryProperty> getRetainableProperty();
-
+
+ /**
+ * Category enhancements must override {@link Object#equals(Object)}, as it is
+ * used in
+ * {@link EnhancementsPayloadIterator#getCategoryData(CategoryEnhancement)}.
+ */
+ public boolean equals(Object o);
}
Modified: lucene/dev/trunk/modules/facet/src/java/org/apache/lucene/facet/enhancements/association/AssociationEnhancement.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/modules/facet/src/java/org/apache/lucene/facet/enhancements/association/AssociationEnhancement.java?rev=1230431&r1=1230430&r2=1230431&view=diff
==============================================================================
--- lucene/dev/trunk/modules/facet/src/java/org/apache/lucene/facet/enhancements/association/AssociationEnhancement.java (original)
+++ lucene/dev/trunk/modules/facet/src/java/org/apache/lucene/facet/enhancements/association/AssociationEnhancement.java Thu Jan 12 07:43:42 2012
@@ -150,4 +150,17 @@ public class AssociationEnhancement impl
return null;
}
+ @Override
+ public boolean equals(Object o) {
+ if (o == this) {
+ return true;
+ }
+ return (o instanceof AssociationEnhancement);
+ }
+
+ @Override
+ public int hashCode() {
+ return super.hashCode();
+ }
+
}