Index: java/org/apache/lucene/index/DocumentWriter.java
===================================================================
--- java/org/apache/lucene/index/DocumentWriter.java	(revision 478711)
+++ java/org/apache/lucene/index/DocumentWriter.java	(working copy)
@@ -33,6 +33,7 @@
 import java.util.Arrays;
 import java.util.Enumeration;
 import java.util.Hashtable;
+import java.util.Iterator;
 
 final class DocumentWriter {
   private Analyzer analyzer;
@@ -128,9 +129,9 @@
   // Tokenizes the fields of a document into Postings.
   private final void invertDocument(Document doc)
           throws IOException {
-    Enumeration fields = doc.fields();
-    while (fields.hasMoreElements()) {
-      Fieldable field = (Fieldable) fields.nextElement();
+    Iterator fieldIterator = doc.getFields().iterator();
+    while (fieldIterator.hasNext()) {
+      Fieldable field = (Fieldable) fieldIterator.next();
       String fieldName = field.name();
       int fieldNumber = fieldInfos.fieldNumber(fieldName);
 
Index: java/org/apache/lucene/index/FieldsWriter.java
===================================================================
--- java/org/apache/lucene/index/FieldsWriter.java	(revision 478711)
+++ java/org/apache/lucene/index/FieldsWriter.java	(working copy)
@@ -18,11 +18,10 @@
 
 import java.io.ByteArrayOutputStream;
 import java.io.IOException;
-import java.util.Enumeration;
+import java.util.Iterator;
 import java.util.zip.Deflater;
 
 import org.apache.lucene.document.Document;
-import org.apache.lucene.document.Field;
 import org.apache.lucene.document.Fieldable;
 import org.apache.lucene.store.Directory;
 import org.apache.lucene.store.IndexOutput;
@@ -54,17 +53,17 @@
         indexStream.writeLong(fieldsStream.getFilePointer());
 
         int storedCount = 0;
-        Enumeration fields = doc.fields();
-        while (fields.hasMoreElements()) {
-            Fieldable field = (Fieldable) fields.nextElement();
+        Iterator fieldIterator = doc.getFields().iterator();
+        while (fieldIterator.hasNext()) {
+            Fieldable field = (Fieldable) fieldIterator.next();
             if (field.isStored())
                 storedCount++;
         }
         fieldsStream.writeVInt(storedCount);
 
-        fields = doc.fields();
-        while (fields.hasMoreElements()) {
-            Fieldable field = (Fieldable) fields.nextElement();
+        fieldIterator = doc.getFields().iterator();
+        while (fieldIterator.hasNext()) {
+            Fieldable field = (Fieldable) fieldIterator.next();
             // if the field as an instanceof FieldsReader.FieldForMerge, we're in merge mode
             // and field.binaryValue() already returns the compressed value for a field
             // with isCompressed()==true, so we disable compression in that case
Index: java/org/apache/lucene/index/ParallelReader.java
===================================================================
--- java/org/apache/lucene/index/ParallelReader.java	(revision 478711)
+++ java/org/apache/lucene/index/ParallelReader.java	(working copy)
@@ -155,9 +155,9 @@
           }
       }
       if (include) {
-        Enumeration fields = reader.document(n, fieldSelector).fields();
-        while (fields.hasMoreElements()) {
-          result.add((Fieldable)fields.nextElement());
+        Iterator fieldIterator = reader.document(n, fieldSelector).getFields().iterator();
+        while (fieldIterator.hasNext()) {
+          result.add((Fieldable)fieldIterator.next());
         }
       }
     }
