Index: src/main/java/org/apache/jackrabbit/core/query/lucene/AbstractExcerpt.java =================================================================== --- src/main/java/org/apache/jackrabbit/core/query/lucene/AbstractExcerpt.java (revision 1004031) +++ src/main/java/org/apache/jackrabbit/core/query/lucene/AbstractExcerpt.java (working copy) @@ -82,7 +82,7 @@ IndexReader reader = index.getIndexReader(); try { checkRewritten(reader); - Term idTerm = new Term(FieldNames.UUID, id.toString()); + Term idTerm = TermFactory.createUUIDTerm(id.toString()); TermDocs tDocs = reader.termDocs(idTerm); int docNumber; Document doc; Index: src/main/java/org/apache/jackrabbit/core/query/lucene/CachingIndexReader.java =================================================================== --- src/main/java/org/apache/jackrabbit/core/query/lucene/CachingIndexReader.java (revision 1004031) +++ src/main/java/org/apache/jackrabbit/core/query/lucene/CachingIndexReader.java (working copy) @@ -192,7 +192,7 @@ parent = DocId.create(parentUUIDs); } else { if (!existing) { - Term id = new Term(FieldNames.UUID, parentUUIDs[0]); + Term id = TermFactory.createUUIDTerm(parentUUIDs[0]); TermDocs docs = termDocs(id); try { while (docs.next()) { @@ -431,7 +431,7 @@ // initialize in multiple passes with // a fixed number of nodes at a time - final Term[] startUUID = new Term[]{new Term(FieldNames.UUID, "")}; + final Term[] startUUID = new Term[]{TermFactory.createUUIDTerm("")}; for (;;) { final Map docs = new HashMap(); @@ -439,7 +439,7 @@ if (startUUID[0].text().length() != 0) { // force reading the next uuid after startUUID - startUUID[0] = new Term(FieldNames.UUID, startUUID[0].text() + "_"); + startUUID[0] = TermFactory.createUUIDTerm(startUUID[0].text() + "_"); } // read UUIDs collectTermDocs(reader, startUUID[0], new TermDocsCollector() { @@ -489,7 +489,7 @@ }); // scan UUIDs again to get document numbers for parents - collectTermDocs(reader, new Term(FieldNames.UUID, ""), new TermDocsCollector() { + collectTermDocs(reader, TermFactory.createUUIDTerm(""), new TermDocsCollector() { public boolean collect(Term term, TermDocs tDocs) throws IOException { NodeId id = new NodeId(term.text()); while (tDocs.next()) { Index: src/main/java/org/apache/jackrabbit/core/query/lucene/CachingMultiIndexReader.java =================================================================== --- src/main/java/org/apache/jackrabbit/core/query/lucene/CachingMultiIndexReader.java (revision 1004031) +++ src/main/java/org/apache/jackrabbit/core/query/lucene/CachingMultiIndexReader.java (working copy) @@ -182,7 +182,7 @@ * {@inheritDoc} */ public ForeignSegmentDocId createDocId(NodeId id) throws IOException { - Term term = new Term(FieldNames.UUID, id.toString()); + Term term = TermFactory.createUUIDTerm(id.toString()); int doc; long tick; for (ReadOnlyIndexReader subReader : subReaders) { Index: src/main/java/org/apache/jackrabbit/core/query/lucene/ChildAxisQuery.java =================================================================== --- src/main/java/org/apache/jackrabbit/core/query/lucene/ChildAxisQuery.java (revision 1004031) +++ src/main/java/org/apache/jackrabbit/core/query/lucene/ChildAxisQuery.java (working copy) @@ -639,7 +639,7 @@ } for (ChildNodeEntry entry : entries) { NodeId childId = entry.getId(); - Term uuidTerm = new Term(FieldNames.UUID, childId.toString()); + Term uuidTerm = TermFactory.createUUIDTerm(childId.toString()); TermDocs docs = reader.termDocs(uuidTerm); try { if (docs.next()) { Index: src/main/java/org/apache/jackrabbit/core/query/lucene/DerefQuery.java =================================================================== --- src/main/java/org/apache/jackrabbit/core/query/lucene/DerefQuery.java (revision 1004031) +++ src/main/java/org/apache/jackrabbit/core/query/lucene/DerefQuery.java (working copy) @@ -346,7 +346,7 @@ // bitset. hits.clear(); for (String uuid : uuids) { - TermDocs node = reader.termDocs(new Term(FieldNames.UUID, uuid)); + TermDocs node = reader.termDocs(TermFactory.createUUIDTerm(uuid)); try { while (node.next()) { hits.set(node.doc()); Index: src/main/java/org/apache/jackrabbit/core/query/lucene/MultiIndex.java =================================================================== --- src/main/java/org/apache/jackrabbit/core/query/lucene/MultiIndex.java (revision 1004031) +++ src/main/java/org/apache/jackrabbit/core/query/lucene/MultiIndex.java (working copy) @@ -504,7 +504,7 @@ } int num; try { - Term idTerm = new Term(FieldNames.UUID, id.toString()); + Term idTerm = TermFactory.createUUIDTerm(id.toString()); executeAndLog(new Start(Action.INTERNAL_TRANSACTION)); num = volatileIndex.removeDocument(idTerm); if (num > 0) { @@ -1979,7 +1979,7 @@ Util.disposeDocument(doc); index.notifyIfIndexingQueueIsEmpty(); } - Term idTerm = new Term(FieldNames.UUID, uuidString); + Term idTerm = TermFactory.createUUIDTerm(uuidString); // if the document cannot be deleted from the volatile index // delete it from one of the persistent indexes. int num = index.volatileIndex.removeDocument(idTerm); Index: src/main/java/org/apache/jackrabbit/core/query/lucene/PredicateDerefQuery.java =================================================================== --- src/main/java/org/apache/jackrabbit/core/query/lucene/PredicateDerefQuery.java (revision 1004031) +++ src/main/java/org/apache/jackrabbit/core/query/lucene/PredicateDerefQuery.java (working copy) @@ -339,7 +339,7 @@ if (values[v].startsWith(prefix)) { String uuid = values[v].substring(prefix.length()); - TermDocs node = reader.termDocs(new Term(FieldNames.UUID, uuid)); + TermDocs node = reader.termDocs(TermFactory.createUUIDTerm(uuid)); try { while (node.next()) { if (subQueryHits.get(node.doc())) { Index: src/main/java/org/apache/jackrabbit/core/query/lucene/QueryHitsQuery.java =================================================================== --- src/main/java/org/apache/jackrabbit/core/query/lucene/QueryHitsQuery.java (revision 1004031) +++ src/main/java/org/apache/jackrabbit/core/query/lucene/QueryHitsQuery.java (working copy) @@ -194,7 +194,7 @@ try { while ((node = hits.nextScoreNode()) != null) { String uuid = node.getNodeId().toString(); - Term id = new Term(FieldNames.UUID, uuid); + Term id = TermFactory.createUUIDTerm(uuid); TermDocs tDocs = reader.termDocs(id); try { if (tDocs.next()) { Index: src/main/java/org/apache/jackrabbit/core/query/lucene/ScoreNode.java =================================================================== --- src/main/java/org/apache/jackrabbit/core/query/lucene/ScoreNode.java (revision 1004031) +++ src/main/java/org/apache/jackrabbit/core/query/lucene/ScoreNode.java (working copy) @@ -102,7 +102,7 @@ */ public int getDoc(IndexReader reader) throws IOException { if (doc == -1) { - TermDocs docs = reader.termDocs(new Term(FieldNames.UUID, id.toString())); + TermDocs docs = reader.termDocs(TermFactory.createUUIDTerm(id.toString())); try { if (docs.next()) { return docs.doc(); Index: src/main/java/org/apache/jackrabbit/core/query/lucene/SimilarityQuery.java =================================================================== --- src/main/java/org/apache/jackrabbit/core/query/lucene/SimilarityQuery.java (revision 1004031) +++ src/main/java/org/apache/jackrabbit/core/query/lucene/SimilarityQuery.java (working copy) @@ -55,7 +55,7 @@ more.setFieldNames(new String[]{FieldNames.FULLTEXT}); more.setMinWordLen(4); Query similarityQuery = null; - TermDocs td = reader.termDocs(new Term(FieldNames.UUID, uuid)); + TermDocs td = reader.termDocs(TermFactory.createUUIDTerm(uuid)); try { if (td.next()) { similarityQuery = more.like(td.doc()); Index: src/main/java/org/apache/jackrabbit/core/query/lucene/TermFactory.java =================================================================== --- src/main/java/org/apache/jackrabbit/core/query/lucene/TermFactory.java (revision 0) +++ src/main/java/org/apache/jackrabbit/core/query/lucene/TermFactory.java (revision 0) @@ -0,0 +1,42 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You 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. + */ +package org.apache.jackrabbit.core.query.lucene; + +import org.apache.lucene.index.Term; + +/** + * TermFactory is a factory for Term instances with + * frequently used field names. + */ +public final class TermFactory { + + /** + * Template for UUID terms. + */ + private static final Term UUID_TERM_TEMPLATE = new Term(FieldNames.UUID); + + /** + * Creates a Term with the given id value and with a field + * name {@link FieldNames#UUID}. + * + * @param id the id. + * @return the UUIDTerm. + */ + public static Term createUUIDTerm(String id) { + return UUID_TERM_TEMPLATE.createTerm(id); + } +} Property changes on: src\main\java\org\apache\jackrabbit\core\query\lucene\TermFactory.java ___________________________________________________________________ Added: svn:eol-style + native