diff --git a/contrib/miscellaneous/src/java/org/apache/lucene/misc/LengthNormModifier.java b/contrib/miscellaneous/src/java/org/apache/lucene/misc/LengthNormModifier.java index 900acb50f9c..23ebfe8e04a 100644 --- a/contrib/miscellaneous/src/java/org/apache/lucene/misc/LengthNormModifier.java +++ b/contrib/miscellaneous/src/java/org/apache/lucene/misc/LengthNormModifier.java @@ -1,20 +1,20 @@ package org.apache.lucene.misc; /** - * Copyright 2006 The Apache Software Foundation - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ + * Copyright 2006 The Apache Software Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ import org.apache.lucene.index.Term; import org.apache.lucene.index.TermEnum; @@ -37,120 +37,120 @@ import java.util.Date; * index. *
* - * @version $Id:$ + * @version $Id$ */ public class LengthNormModifier { - - /** - * Command Line Execution method - * - *- * Usage: LengthNormModifier /path/index package.SimilarityClassName field1 field2 ... - *- */ - public static void main(String[] args) throws IOException { - if (args.length < 3) { - System.err.println("Usage: LengthNormModifier
reSetNorms
- */
- public LengthNormModifier(Directory d, Similarity s) {
- dir = d;
- sim = s;
- }
-
- /**
- * Re-Set the norms for the specified field.
- *
- * - * Opens a new IndexReader on the Directory given to this instance, - * modifies the norms using the Similarity given to this instance, - * and closes the IndexReader. - *
- * - * @param field the field whose norms - */ - public void reSetNorms(String field) throws IOException { - String fieldName = field.intern(); - int[] termCounts = new int[0]; - - IndexReader reader = null; - TermEnum termEnum = null; - TermDocs termDocs = null; - try { - reader = IndexReader.open(dir); - termCounts = new int[reader.maxDoc()]; - try { - termEnum = reader.terms(new Term(field,"")); - try { - termDocs = reader.termDocs(); - do { - Term term = termEnum.term(); - if (term != null && term.field().equals(fieldName)) { - termDocs.seek(termEnum.term()); - while (termDocs.next()) { - termCounts[termDocs.doc()] += termDocs.freq(); - } - } - } while (termEnum.next()); - - } finally { - if (null != termDocs) termDocs.close(); - } - } finally { - if (null != termEnum) termEnum.close(); - } - } finally { - if (null != reader) reader.close(); - } - - try { - reader = IndexReader.open(dir); - for (int d = 0; d < termCounts.length; d++) { - if (! reader.isDeleted(d)) { - byte norm = sim.encodeNorm - (sim.lengthNorm(fieldName, termCounts[d])); - reader.setNorm(d, fieldName, norm); - } - } - - } finally { - if (null != reader) reader.close(); - } + + /** + * Command Line Execution method + * + *+ * Usage: LengthNormModifier /path/index package.SimilarityClassName field1 field2 ... + *+ */ + public static void main(String[] args) throws IOException { + if (args.length < 3) { + System.err.println("Usage: LengthNormModifier
reSetNorms
+ */
+ public LengthNormModifier(Directory d, Similarity s) {
+ dir = d;
+ sim = s;
+ }
+
+ /**
+ * Re-Set the norms for the specified field.
+ *
+ * + * Opens a new IndexReader on the Directory given to this instance, + * modifies the norms using the Similarity given to this instance, + * and closes the IndexReader. + *
+ * + * @param field the field whose norms + */ + public void reSetNorms(String field) throws IOException { + String fieldName = field.intern(); + int[] termCounts = new int[0]; + + IndexReader reader = null; + TermEnum termEnum = null; + TermDocs termDocs = null; + try { + reader = IndexReader.open(dir); + termCounts = new int[reader.maxDoc()]; + try { + termEnum = reader.terms(new Term(field,"")); + try { + termDocs = reader.termDocs(); + do { + Term term = termEnum.term(); + if (term != null && term.field().equals(fieldName)) { + termDocs.seek(termEnum.term()); + while (termDocs.next()) { + termCounts[termDocs.doc()] += termDocs.freq(); + } + } + } while (termEnum.next()); + + } finally { + if (null != termDocs) termDocs.close(); + } + } finally { + if (null != termEnum) termEnum.close(); + } + } finally { + if (null != reader) reader.close(); + } + + try { + reader = IndexReader.open(dir); + for (int d = 0; d < termCounts.length; d++) { + if (! reader.isDeleted(d)) { + byte norm = sim.encodeNorm + (sim.lengthNorm(fieldName, termCounts[d])); + reader.setNorm(d, fieldName, norm); + } + } + + } finally { + if (null != reader) reader.close(); + } + } + }