Index: src/java/org/apache/lucene/store/instantiated/InstantiatedIndexWriter.java =================================================================== --- src/java/org/apache/lucene/store/instantiated/InstantiatedIndexWriter.java (revision 821307) +++ src/java/org/apache/lucene/store/instantiated/InstantiatedIndexWriter.java (arbetskopia) @@ -37,6 +37,7 @@ import org.apache.lucene.analysis.TokenStream; import org.apache.lucene.document.Document; import org.apache.lucene.document.Field; +import org.apache.lucene.document.Fieldable; import org.apache.lucene.index.IndexReader; import org.apache.lucene.index.IndexWriter; import org.apache.lucene.index.Term; @@ -455,7 +456,7 @@ // normalize settings per field name in document Map fieldSettingsByFieldName = new HashMap(); - for (Field field : (List) document.getDocument().getFields()) { + for (Fieldable field : (List) document.getDocument().getFields()) { FieldSetting fieldSetting = fieldSettingsByFieldName.get(field.name()); if (fieldSetting == null) { fieldSetting = new FieldSetting(); @@ -499,12 +500,12 @@ } } - Map> tokensByField = new LinkedHashMap>(20); + Map> tokensByField = new LinkedHashMap>(20); // tokenize indexed fields. - for (Iterator it = (Iterator) document.getDocument().getFields().iterator(); it.hasNext();) { + for (Iterator it = (Iterator) document.getDocument().getFields().iterator(); it.hasNext();) { - Field field = it.next(); + Fieldable field = it.next(); FieldSetting fieldSetting = fieldSettingsByFieldName.get(field.name()); @@ -554,7 +555,7 @@ termDocumentInformationFactoryByDocument.put(document, termDocumentInformationFactoryByTermTextAndFieldSetting); // build term vector, term positions and term offsets - for (Map.Entry> eField_Tokens : tokensByField.entrySet()) { + for (Map.Entry> eField_Tokens : tokensByField.entrySet()) { FieldSetting fieldSetting = fieldSettingsByFieldName.get(eField_Tokens.getKey().name()); Map termDocumentInformationFactoryByTermText = termDocumentInformationFactoryByTermTextAndFieldSetting.get(fieldSettingsByFieldName.get(eField_Tokens.getKey().name())); Index: src/java/org/apache/lucene/store/instantiated/InstantiatedIndex.java =================================================================== --- src/java/org/apache/lucene/store/instantiated/InstantiatedIndex.java (revision 821307) +++ src/java/org/apache/lucene/store/instantiated/InstantiatedIndex.java (arbetskopia) @@ -28,7 +28,7 @@ import org.apache.lucene.analysis.Analyzer; import org.apache.lucene.document.Document; -import org.apache.lucene.document.Field; +import org.apache.lucene.document.Fieldable; import org.apache.lucene.index.IndexReader; import org.apache.lucene.index.Term; import org.apache.lucene.index.TermEnum; @@ -182,14 +182,14 @@ InstantiatedDocument document = new InstantiatedDocument(); // copy stored fields from source reader Document sourceDocument = sourceIndexReader.document(i); - for (Field field : (List) sourceDocument.getFields()) { + for (Fieldable field : sourceDocument.getFields()) { if (fields == null || fields.contains(field.name())) { document.getDocument().add(field); } } document.setDocumentNumber(i); documentsByNumber[i] = document; - for (Field field : (List) document.getDocument().getFields()) { + for (Fieldable field : document.getDocument().getFields()) { if (fields == null || fields.contains(field.name())) { if (field.isTermVectorStored()) { if (document.getVectorSpace() == null) { @@ -266,7 +266,7 @@ if (document == null) { continue; // deleted } - for (Field field : (List) document.getDocument().getFields()) { + for (Fieldable field : document.getDocument().getFields()) { if (field.isTermVectorStored() && field.isStoreOffsetWithTermVector()) { TermPositionVector termPositionVector = (TermPositionVector) sourceIndexReader.getTermFreqVector(document.getDocumentNumber(), field.name()); if (termPositionVector != null) {