ordercheck passes.


git-svn-id: https://google-web-toolkit.googlecode.com/svn/trunk@27 8db76d5a-ed1c-0410-87a9-c151d255dfc7
diff --git a/dev/core/src/com/google/gwt/dev/jdt/AbstractCompiler.java b/dev/core/src/com/google/gwt/dev/jdt/AbstractCompiler.java
index 1d8c947..0c2f341 100644
--- a/dev/core/src/com/google/gwt/dev/jdt/AbstractCompiler.java
+++ b/dev/core/src/com/google/gwt/dev/jdt/AbstractCompiler.java
@@ -62,6 +62,10 @@
    */
   private class CompilerImpl extends Compiler {
 
+    public HashSet resolved = new HashSet();
+
+    private Set cuds;
+
     public CompilerImpl(INameEnvironment environment,
         IErrorHandlingPolicy policy, Map settings,
         ICompilerRequestor requestor, IProblemFactory problemFactory) {
@@ -82,7 +86,7 @@
         if (cud.scope != null) {
           cud.scope.faultInTypes();
         }
-        
+
         // verify inherited methods
         if (cud.scope != null) {
           cud.scope.verifyMethods(lookupEnvironment.methodVerifier());
@@ -110,9 +114,8 @@
 
       ICompilationUnit cu = cud.compilationResult.compilationUnit;
       String loc = String.valueOf(cu.getFileName());
-      TreeLogger logger =
-          threadLogger.branch(TreeLogger.SPAM,
-            "Scanning for additional dependencies: " + loc, null);
+      TreeLogger logger = threadLogger.branch(TreeLogger.SPAM,
+          "Scanning for additional dependencies: " + loc, null);
 
       // Examine the cud for magic types.
       //
@@ -121,7 +124,7 @@
         typeNames = doFindAdditionalTypesUsingJsni(logger, cud);
       } catch (UnableToCompleteException e) {
         problemReporter.abortDueToInternalError(
-          "Unable to resolve required JSNI dependencies", cud);
+            "Unable to resolve required JSNI dependencies", cud);
         return;
       }
 
@@ -144,7 +147,7 @@
         typeNames = doFindAdditionalTypesUsingRebinds(logger, cud);
       } catch (UnableToCompleteException e) {
         problemReporter.abortDueToInternalError(
-          "Unable to resolve required rebind dependencies", cud);
+            "Unable to resolve required rebind dependencies", cud);
         return;
       }
 
@@ -164,37 +167,36 @@
         // sanity check rebind results
         if (type == null) {
           problemReporter.abortDueToInternalError("Rebind result '" + typeName
-            + "' could not be found");
+              + "' could not be found");
           return;
         }
         if (!type.isClass()) {
           problemReporter.abortDueToInternalError("Rebind result '" + typeName
-            + "' must be a class");
+              + "' must be a class");
           return;
         }
         if (type.isAbstract()) {
           problemReporter.abortDueToInternalError("Rebind result '" + typeName
-            + "' cannot be abstract");
+              + "' cannot be abstract");
           return;
         }
         if (type.isNestedType() && !type.isStatic()) {
           problemReporter.abortDueToInternalError("Rebind result '" + typeName
-            + "' cannot be a non-static nested class");
+              + "' cannot be a non-static nested class");
           return;
         }
         if (type.isLocalType()) {
           problemReporter.abortDueToInternalError("Rebind result '" + typeName
-            + "' cannot be a local class");
+              + "' cannot be a local class");
           return;
         }
         // look for a noArg ctor
-        MethodBinding noArgCtor =
-            type.getExactMethod("<init>".toCharArray(),
-              TypeBinding.NoParameters, cud.scope);
+        MethodBinding noArgCtor = type.getExactMethod("<init>".toCharArray(),
+            TypeBinding.NoParameters, cud.scope);
 
         if (noArgCtor == null) {
           problemReporter.abortDueToInternalError("Rebind result '" + typeName
-            + "' has no default (zero argument) constructors.");
+              + "' has no default (zero argument) constructors.");
           return;
         }
       }
@@ -249,10 +251,6 @@
 
       return null;
     }
-
-    public HashSet resolved = new HashSet();
-
-    private Set cuds;
   }
 
   private class ICompilerRequestorImpl implements ICompilerRequestor {
@@ -281,10 +279,9 @@
           msg = msg.substring(msg.indexOf(' '));
 
           if (error.getID() >= IProblem.InvalidUsageOfTypeParameters
-            && error.getID() <= IProblem.InvalidUsageOfAnnotationDeclarations) {
+              && error.getID() <= IProblem.InvalidUsageOfAnnotationDeclarations) {
             // this error involves 5.0 compliance, use a custom message
-            msg =
-                "GWT does not yet support the Java 5.0 language enhancements; only 1.4 compatible source may be used";
+            msg = "GWT does not yet support the Java 5.0 language enhancements; only 1.4 compatible source may be used";
           }
 
           // Append 'Line #: msg' to the error message.
@@ -326,12 +323,10 @@
       // CompilationUnitDeclarations than needed.
       String qname = CharOperation.toString(compoundTypeName);
       if (nameEnvironmentAnswerForTypeName.containsKey(qname)) {
-        return (NameEnvironmentAnswer) (nameEnvironmentAnswerForTypeName
-          .get(qname));
+        return (NameEnvironmentAnswer) (nameEnvironmentAnswerForTypeName.get(qname));
       }
-      TreeLogger logger =
-          threadLogger.branch(TreeLogger.SPAM, "Compiler is asking about '"
-            + qname + "'", null);
+      TreeLogger logger = threadLogger.branch(TreeLogger.SPAM,
+          "Compiler is asking about '" + qname + "'", null);
 
       if (sourceOracle.isPackage(qname)) {
         logger.log(TreeLogger.SPAM, "Found to be a package", null);
@@ -373,7 +368,7 @@
         cup = sourceOracle.findCompilationUnit(logger, qname);
         if (cup != null) {
           logger.log(TreeLogger.SPAM, "Found type in compilation unit: "
-            + cup.getLocation(), null);
+              + cup.getLocation(), null);
           ICompilationUnitAdapter unit = new ICompilationUnitAdapter(cup);
           NameEnvironmentAnswer out = new NameEnvironmentAnswer(unit, null);
           nameEnvironmentAnswerForTypeName.put(qname, out);
@@ -411,39 +406,52 @@
     }
   }
 
+  private final CompilerImpl compiler;
+
+  private final boolean doGenerateBytes;
+
+  private final Set knownPackages = new HashSet();
+
+  private final Map nameEnvironmentAnswerForTypeName = new HashMap();
+
+  private final SourceOracle sourceOracle;
+
+  private final ThreadLocalTreeLoggerProxy threadLogger = new ThreadLocalTreeLoggerProxy();
+
+  private final Map unitsByTypeName = new HashMap();
+
   protected AbstractCompiler(SourceOracle sourceOracle, boolean doGenerateBytes) {
     this.sourceOracle = sourceOracle;
     this.doGenerateBytes = doGenerateBytes;
     rememberPackage("");
 
     INameEnvironment env = new INameEnvironmentImpl();
-    IErrorHandlingPolicy pol =
-        DefaultErrorHandlingPolicies.proceedWithAllProblems();
+    IErrorHandlingPolicy pol = DefaultErrorHandlingPolicies.proceedWithAllProblems();
     IProblemFactory probFact = new DefaultProblemFactory(Locale.getDefault());
     ICompilerRequestor req = new ICompilerRequestorImpl();
     Map settings = new HashMap();
     settings.put(CompilerOptions.OPTION_LineNumberAttribute,
-      CompilerOptions.GENERATE);
+        CompilerOptions.GENERATE);
     settings.put(CompilerOptions.OPTION_SourceFileAttribute,
-      CompilerOptions.GENERATE);
+        CompilerOptions.GENERATE);
     /*
      * Tricks like "boolean stopHere = true;" depend on this setting to work in
      * hosted mode. In web mode, our compiler should optimize them out once we
      * do real data flow.
      */
     settings.put(CompilerOptions.OPTION_PreserveUnusedLocal,
-      CompilerOptions.PRESERVE);
+        CompilerOptions.PRESERVE);
     settings.put(CompilerOptions.OPTION_ReportDeprecation,
-      CompilerOptions.IGNORE);
+        CompilerOptions.IGNORE);
     settings.put(CompilerOptions.OPTION_LocalVariableAttribute,
-      CompilerOptions.GENERATE);
+        CompilerOptions.GENERATE);
     settings.put(CompilerOptions.OPTION_Source, CompilerOptions.VERSION_1_4);
     settings.put(CompilerOptions.OPTION_TargetPlatform,
-      CompilerOptions.VERSION_1_4);
+        CompilerOptions.VERSION_1_4);
 
     // This is needed by TypeOracleBuilder to parse metadata.
     settings.put(CompilerOptions.OPTION_DocCommentSupport,
-      CompilerOptions.ENABLED);
+        CompilerOptions.ENABLED);
 
     compiler = new CompilerImpl(env, pol, settings, req, probFact);
   }
@@ -472,8 +480,7 @@
     Set cuds = new HashSet();
     compiler.compile(units, cuds);
     int size = cuds.size();
-    CompilationUnitDeclaration[] cudArray =
-        new CompilationUnitDeclaration[size];
+    CompilationUnitDeclaration[] cudArray = new CompilationUnitDeclaration[size];
     return (CompilationUnitDeclaration[]) cuds.toArray(cudArray);
   }
 
@@ -583,13 +590,4 @@
       return binaryTypeName;
     }
   }
-
-  private final CompilerImpl compiler;
-  private final boolean doGenerateBytes;
-  private final Set knownPackages = new HashSet();
-  private final Map nameEnvironmentAnswerForTypeName = new HashMap();
-  private final SourceOracle sourceOracle;
-  private final ThreadLocalTreeLoggerProxy threadLogger =
-      new ThreadLocalTreeLoggerProxy();
-  private final Map unitsByTypeName = new HashMap();
 }
diff --git a/dev/core/src/com/google/gwt/dev/jdt/AstCompiler.java b/dev/core/src/com/google/gwt/dev/jdt/AstCompiler.java
index f96b201..73abbbb 100644
--- a/dev/core/src/com/google/gwt/dev/jdt/AstCompiler.java
+++ b/dev/core/src/com/google/gwt/dev/jdt/AstCompiler.java
@@ -44,6 +44,10 @@
    */
   private class CompilationUnitDeclarationCache {
 
+    private final Map lastModified = new HashMap();
+
+    private final Map map = new HashMap();
+
     public void remove(String newLoc) {
       map.remove(newLoc);
     }
@@ -73,12 +77,10 @@
         List element = (List) iter.next();
         outSet.addAll(element);
       }
-      CompilationUnitDeclaration[] out =
-          new CompilationUnitDeclaration[outSet.size()];
+      CompilationUnitDeclaration[] out = new CompilationUnitDeclaration[outSet.size()];
       int i = 0;
       for (Iterator iter = outSet.iterator(); iter.hasNext();) {
-        CompilationUnitDeclaration element =
-            (CompilationUnitDeclaration) iter.next();
+        CompilationUnitDeclaration element = (CompilationUnitDeclaration) iter.next();
         out[i] = element;
         i++;
       }
@@ -88,11 +90,10 @@
     private void removeAll(Collection c) {
       map.keySet().removeAll(c);
     }
-
-    private final Map lastModified = new HashMap();
-    private final Map map = new HashMap();
   }
 
+  private final CompilationUnitDeclarationCache cachedResults = new CompilationUnitDeclarationCache();
+
   public AstCompiler(SourceOracle sourceOracle) {
     super(sourceOracle, false);
   }
@@ -101,7 +102,7 @@
       TreeLogger logger, ICompilationUnit[] units) {
     List allUnits = Arrays.asList(units);
     List newUnits = new ArrayList();
- 
+
     // Check for newer units that need to be processed.
     for (Iterator iter = allUnits.iterator(); iter.hasNext();) {
       ICompilationUnitAdapter adapter = (ICompilationUnitAdapter) iter.next();
@@ -114,7 +115,7 @@
     ICompilationUnit[] toBeProcessed = new ICompilationUnit[newUnits.size()];
     newUnits.toArray(toBeProcessed);
     CompilationUnitDeclaration[] newCuds = compile(logger, toBeProcessed);
-    
+
     // Put new cuds into cache.
     for (int i = 0; i < newCuds.length; i++) {
       String newLoc = String.valueOf(newCuds[i].getFileName());
@@ -128,7 +129,4 @@
     cachedResults.removeAll(changedFiles);
     invalidateUnitsInFiles(changedFiles, typeNames);
   }
-
-  private final CompilationUnitDeclarationCache cachedResults =
-      new CompilationUnitDeclarationCache();
 }
diff --git a/dev/core/src/com/google/gwt/dev/jdt/ByteCode.java b/dev/core/src/com/google/gwt/dev/jdt/ByteCode.java
index 1034b35..f5b55c1 100644
--- a/dev/core/src/com/google/gwt/dev/jdt/ByteCode.java
+++ b/dev/core/src/com/google/gwt/dev/jdt/ByteCode.java
@@ -21,11 +21,11 @@
 
 public class ByteCode implements Serializable {
 
-  private static final String systemString =
-      System.getProperty("java.class.path", ".");
+  private static final String systemString = System.getProperty(
+      "java.class.path", ".");
 
-  private static final String systemStringAsIdentifier =
-      About.GWT_VERSION + "_" + systemString.hashCode();
+  private static final String systemStringAsIdentifier = About.GWT_VERSION
+      + "_" + systemString.hashCode();
 
   /**
    * This method returns the current system identifier, used to detect changes
@@ -38,10 +38,21 @@
     return systemStringAsIdentifier;
   }
 
+  private final String binaryTypeName;
+
+  private final byte[] bytes;
+
+  private final String location;
+
+  private final String version;
+
+  private final boolean isTransient;
+
   /**
    * Specifies the bytecode for a given type.
    */
-  public ByteCode(String binaryTypeName, byte[] bytes, String location, boolean isTransient) {
+  public ByteCode(String binaryTypeName, byte[] bytes, String location,
+      boolean isTransient) {
     this.binaryTypeName = binaryTypeName;
     this.bytes = bytes;
     this.location = location;
@@ -65,13 +76,6 @@
     return version;
   }
 
-  private final String binaryTypeName;
-  private final byte[] bytes;
-  private final String location;
-  private final String version;
-
-  private final boolean isTransient;
-
   public boolean isTransient() {
     return isTransient;
   }
diff --git a/dev/core/src/com/google/gwt/dev/jdt/ByteCodeCompiler.java b/dev/core/src/com/google/gwt/dev/jdt/ByteCodeCompiler.java
index 62b5391..fb0ded9 100644
--- a/dev/core/src/com/google/gwt/dev/jdt/ByteCodeCompiler.java
+++ b/dev/core/src/com/google/gwt/dev/jdt/ByteCodeCompiler.java
@@ -29,6 +29,8 @@
  */
 public class ByteCodeCompiler extends AbstractCompiler {
 
+  private final CacheManager cacheManager;
+
   /**
    * Creates a bytecode compiler for use not in hosted mode. All bytecode will
    * be thrown away after reload.
@@ -85,7 +87,7 @@
     // a policy of always trying to recompile if we don't have it cached.
     //
     ICompilationUnit start = getCompilationUnitForType(logger, binaryTypeName);
-    compile(logger, new ICompilationUnit[]{start});
+    compile(logger, new ICompilationUnit[] {start});
 
     // Check the cache again. If it's there now, we succeeded.
     // If it isn't there now, we've already logged the error.
@@ -148,14 +150,13 @@
       String loc = String.valueOf(result.compilationUnit.getFileName());
       boolean isTransient = true;
       if (result.compilationUnit instanceof ICompilationUnitAdapter) {
-        ICompilationUnitAdapter unit =
-            (ICompilationUnitAdapter) result.compilationUnit;
+        ICompilationUnitAdapter unit = (ICompilationUnitAdapter) result.compilationUnit;
         isTransient = unit.getCompilationUnitProvider().isTransient();
       }
       ByteCode byteCode = new ByteCode(className, bytes, loc, isTransient);
       if (cacheManager.acceptIntoCache(logger, className, byteCode)) {
         logger.log(TreeLogger.SPAM, "Successfully compiled and cached '"
-          + className + "'", null);
+            + className + "'", null);
       }
     }
   }
@@ -169,6 +170,4 @@
       String binaryTypeName) {
     return cacheManager.getByteCode(logger, binaryTypeName);
   }
-
-  private final CacheManager cacheManager;
 }
diff --git a/dev/core/src/com/google/gwt/dev/jdt/CacheManager.java b/dev/core/src/com/google/gwt/dev/jdt/CacheManager.java
index cb4b2c2..8af2f0f 100644
--- a/dev/core/src/com/google/gwt/dev/jdt/CacheManager.java
+++ b/dev/core/src/com/google/gwt/dev/jdt/CacheManager.java
@@ -55,6 +55,8 @@
    * Maps SourceTypeBindings to their associated types.
    */
   static class Mapper {
+    private final Map map = new IdentityHashMap();
+
     public JClassType get(SourceTypeBinding binding) {
       JClassType type = (JClassType) map.get(binding);
       return type;
@@ -68,14 +70,14 @@
     public void reset() {
       map.clear();
     }
-
-    private final Map map = new IdentityHashMap();
   }
 
   /**
    * This class is a very simple multi-valued map.
    */
   private static class Dependencies {
+    private Map map = new HashMap();
+
     /**
      * This method adds <code>item</code> to the list stored under
      * <code>key</code>.
@@ -128,33 +130,6 @@
         }
       }
     }
-
-    private Map map = new HashMap();
-  }
-
-  // This method must be outside of DiskCache because of the restruction against
-  // defining static methods in inner classes.
-  private static String possiblyAddTmpExtension(Object className) {
-    String fileName = className.toString();
-    if (fileName.indexOf("-") == -1) {
-      int hashCode = fileName.hashCode();
-      String hashCodeStr = Integer.toHexString(hashCode);
-      while (hashCodeStr.length() < 8) {
-        hashCodeStr = '0' + hashCodeStr;
-      }
-      fileName = fileName + "-" + hashCodeStr + ".tmp";
-    }
-    return fileName;
-  }
-
-  // This method must be outside of DiskCache because of the restruction against
-  // defining static methods in inner classes.
-  private static String possiblyRemoveTmpExtension(Object fileName) {
-    String className = fileName.toString();
-    if (className.indexOf("-") != -1) {
-      className = className.split("-")[0];
-    }
-    return className;
   }
 
   /**
@@ -165,6 +140,8 @@
 
     private class FileEntry implements Map.Entry {
 
+      private File file;
+
       private FileEntry(File file) {
         this.file = file;
       }
@@ -225,10 +202,14 @@
       private long lastModified() {
         return file.lastModified();
       }
-
-      private File file;
     }
 
+    private final Map cache = new HashMap();
+
+    // May be set to null after the fact if the cache directory becomes
+    // unusable.
+    private File directory;
+
     public DiskCache(File dirName) {
       if (dirName != null) {
         directory = dirName;
@@ -238,27 +219,6 @@
       }
     }
 
-    /**
-     * This is used to ensure that if something wicked happens to the cache
-     * directory while we are running, we do not crash.
-     */
-    private void possiblyCreateCacheDirectory() {
-      directory.mkdirs();
-      if (!(directory.exists() && directory.canWrite())) {
-        markCacheDirectoryUnusable();
-      }
-    }
-
-    /**
-     * This method marks the cache directory as being invalid, so we do not 
-     * try to use it.
-     */
-    private void markCacheDirectoryUnusable() {
-      System.err.println("The directory " + directory.getAbsolutePath()
-        + " is not usable as a cache directory");
-      directory = null;
-    }
-
     public void clear() {
       cache.clear();
       if (directory != null) {
@@ -271,8 +231,7 @@
     public Set entrySet() {
       Set out = new HashSet() {
         public boolean remove(Object o) {
-          boolean removed =
-              (DiskCache.this.remove(((Entry) o).getKey())) != null;
+          boolean removed = (DiskCache.this.remove(((Entry) o).getKey())) != null;
           super.remove(o);
           return removed;
         }
@@ -350,6 +309,27 @@
       return new FileEntry(key).lastModified();
     }
 
+    /**
+     * This method marks the cache directory as being invalid, so we do not try
+     * to use it.
+     */
+    private void markCacheDirectoryUnusable() {
+      System.err.println("The directory " + directory.getAbsolutePath()
+          + " is not usable as a cache directory");
+      directory = null;
+    }
+
+    /**
+     * This is used to ensure that if something wicked happens to the cache
+     * directory while we are running, we do not crash.
+     */
+    private void possiblyCreateCacheDirectory() {
+      directory.mkdirs();
+      if (!(directory.exists() && directory.canWrite())) {
+        markCacheDirectoryUnusable();
+      }
+    }
+
     private Object put(Object key, Object value, boolean persist) {
       Object out = get(key);
 
@@ -364,20 +344,14 @@
       cache.put(key, value);
       return out;
     }
-
-    private final Map cache = new HashMap();
-    // May be set to null after the fact if the cache directory becomes
-    // unusable.
-    private File directory;
   }
 
   /**
    * The set of all classes whose bytecode needs to exist as bootstrap bytecode
    * to be taken as given by the bytecode compiler.
    */
-  public static final Class[] BOOTSTRAP_CLASSES =
-      new Class[]{
-        JavaScriptHost.class, ShellJavaScriptHost.class, ShellGWT.class};
+  public static final Class[] BOOTSTRAP_CLASSES = new Class[] {
+      JavaScriptHost.class, ShellJavaScriptHost.class, ShellGWT.class};
 
   /**
    * The set of bootstrap classes, which are marked transient, but are
@@ -385,6 +359,68 @@
    */
   private static final Set TRANSIENT_CLASS_NAMES;
 
+  static {
+    TRANSIENT_CLASS_NAMES = new HashSet(BOOTSTRAP_CLASSES.length + 3);
+    for (int i = 0; i < BOOTSTRAP_CLASSES.length; i++) {
+      TRANSIENT_CLASS_NAMES.add(BOOTSTRAP_CLASSES[i].getName());
+    }
+  }
+
+  // This method must be outside of DiskCache because of the restruction against
+  // defining static methods in inner classes.
+  private static String possiblyAddTmpExtension(Object className) {
+    String fileName = className.toString();
+    if (fileName.indexOf("-") == -1) {
+      int hashCode = fileName.hashCode();
+      String hashCodeStr = Integer.toHexString(hashCode);
+      while (hashCodeStr.length() < 8) {
+        hashCodeStr = '0' + hashCodeStr;
+      }
+      fileName = fileName + "-" + hashCodeStr + ".tmp";
+    }
+    return fileName;
+  }
+
+  // This method must be outside of DiskCache because of the restruction against
+  // defining static methods in inner classes.
+  private static String possiblyRemoveTmpExtension(Object fileName) {
+    String className = fileName.toString();
+    if (className.indexOf("-") != -1) {
+      className = className.split("-")[0];
+    }
+    return className;
+  }
+
+  private final Set addedCups = new HashSet();
+
+  private final AstCompiler astCompiler;
+
+  private final DiskCache byteCodeCache;
+
+  private final File cacheDir;
+
+  private final Set changedFiles;
+
+  private final Map cudsByFileName;
+
+  private final Map cupsByLocation = new HashMap();
+
+  private boolean firstTime = true;
+
+  private final Mapper identityMapper = new Mapper();
+
+  private final Set invalidatedTypes = new HashSet();
+
+  private final TypeOracle oracle;
+
+  private final Map timesByLocation = new HashMap();
+
+  private boolean typeOracleBuilderFirstTime = true;
+
+  private final Map unitsByCup = new HashMap();
+
+  private final Set volatileFiles = new HashSet();
+
   /**
    * Creates a new <code>CacheManager</code>, creating a new
    * <code>TypeOracle</code>. This constructor does not specify a cache
@@ -481,11 +517,11 @@
       if (getByteCode(logger, binaryTypeName) == null) {
         byteCodeCache.put(binaryTypeName, byteCode, (!byteCode.isTransient()));
         logger.log(TreeLogger.SPAM, "Cached bytecode for " + binaryTypeName,
-          null);
+            null);
         return true;
       } else {
         logger.log(TreeLogger.SPAM, "Bytecode not re-cached for "
-          + binaryTypeName, null);
+            + binaryTypeName, null);
         return false;
       }
     }
@@ -531,8 +567,7 @@
         // is referenced must also be treated as changed.
         //
         String referencedFn = String.valueOf(referencedType.getFileName());
-        CompilationUnitDeclaration referencedCup =
-            (CompilationUnitDeclaration) cudsByFileName.get(referencedFn);
+        CompilationUnitDeclaration referencedCup = (CompilationUnitDeclaration) cudsByFileName.get(referencedFn);
         String fileName = String.valueOf(unitOfReferrer.getFileName());
         dependencies.add(fileName, referencedFn);
       };
@@ -579,9 +614,8 @@
       // we do not want bytecode created with a different classpath or os or
       // version of GWT.
       if ((byteCode != null)
-        && byteCode.getSystemIdentifier() != null
-        && (!(byteCode.getSystemIdentifier().equals(ByteCode
-          .getCurrentSystemIdentifier())))) {
+          && byteCode.getSystemIdentifier() != null
+          && (!(byteCode.getSystemIdentifier().equals(ByteCode.getCurrentSystemIdentifier())))) {
         byteCodeCache.remove(binaryTypeName);
         byteCode = null;
       }
@@ -647,13 +681,13 @@
       addDependentsToChangedFiles();
       for (Iterator iter = changedFiles.iterator(); iter.hasNext();) {
         String location = (String) iter.next();
-        CompilationUnitProvider cup =
-            (CompilationUnitProvider) getCupsByLocation().get(location);
+        CompilationUnitProvider cup = (CompilationUnitProvider) getCupsByLocation().get(
+            location);
         unitsByCup.remove(location);
         Util.invokeInaccessableMethod(TypeOracle.class,
-          "invalidateTypesInCompilationUnit",
-          new Class[]{CompilationUnitProvider.class}, typeOracle,
-          new Object[]{cup});
+            "invalidateTypesInCompilationUnit",
+            new Class[] {CompilationUnitProvider.class}, typeOracle,
+            new Object[] {cup});
       }
       astCompiler.invalidateChangedFiles(changedFiles, invalidatedTypes);
     } else {
@@ -669,7 +703,7 @@
     Long oldTime = (Long) getCupLastUpdateTime(cup);
     if (oldTime != null) {
       if (oldTime.longValue() >= lastModified.longValue()
-        && (!cup.isTransient())) {
+          && (!cup.isTransient())) {
         return true;
       }
     }
@@ -690,12 +724,12 @@
     synchronized (byteCodeCache) {
       if (getByteCode(logger, binaryTypeName) == null) {
         logger.log(TreeLogger.SPAM, "Bytecode for " + binaryTypeName
-          + " was not cached, so not removing", null);
+            + " was not cached, so not removing", null);
         return false;
       } else {
         byteCodeCache.remove(binaryTypeName);
         logger.log(TreeLogger.SPAM, "Bytecode not re-cached for "
-          + binaryTypeName, null);
+            + binaryTypeName, null);
         return false;
       }
     }
@@ -735,8 +769,7 @@
             continue;
           }
           String fileName = Util.findFileName(location);
-          CompilationUnitDeclaration compilationUnitDeclaration =
-              ((CompilationUnitDeclaration) cudsByFileName.get(location));
+          CompilationUnitDeclaration compilationUnitDeclaration = ((CompilationUnitDeclaration) cudsByFileName.get(location));
           if (compilationUnitDeclaration == null) {
             changedFiles.add(location);
             continue;
@@ -783,9 +816,8 @@
       AbstractCompiler compiler) {
     Set invalidTypes = new HashSet();
     if (logger.isLoggable(TreeLogger.TRACE)) {
-      TreeLogger branch =
-          logger.branch(TreeLogger.TRACE,
-            "The following compilation units have changed since "
+      TreeLogger branch = logger.branch(TreeLogger.TRACE,
+          "The following compilation units have changed since "
               + "the last compilation to bytecode", null);
       for (Iterator iter = changedFiles.iterator(); iter.hasNext();) {
         String filename = (String) iter.next();
@@ -823,27 +855,4 @@
       return false;
     }
   }
-
-  static {
-    TRANSIENT_CLASS_NAMES = new HashSet(BOOTSTRAP_CLASSES.length + 3);
-    for (int i = 0; i < BOOTSTRAP_CLASSES.length; i++) {
-      TRANSIENT_CLASS_NAMES.add(BOOTSTRAP_CLASSES[i].getName());
-    }
-  }
-
-  private final Set addedCups = new HashSet();
-  private final AstCompiler astCompiler;
-  private final DiskCache byteCodeCache;
-  private final File cacheDir;
-  private final Set changedFiles;
-  private final Map cudsByFileName;
-  private final Map cupsByLocation = new HashMap();
-  private boolean firstTime = true;
-  private final Mapper identityMapper = new Mapper();
-  private final Set invalidatedTypes = new HashSet();
-  private final TypeOracle oracle;
-  private final Map timesByLocation = new HashMap();
-  private boolean typeOracleBuilderFirstTime = true;
-  private final Map unitsByCup = new HashMap();
-  private final Set volatileFiles = new HashSet();
 }
diff --git a/dev/core/src/com/google/gwt/dev/jdt/CompilationUnitProviderWithAlternateSource.java b/dev/core/src/com/google/gwt/dev/jdt/CompilationUnitProviderWithAlternateSource.java
index df13bad..0b0bc5a 100644
--- a/dev/core/src/com/google/gwt/dev/jdt/CompilationUnitProviderWithAlternateSource.java
+++ b/dev/core/src/com/google/gwt/dev/jdt/CompilationUnitProviderWithAlternateSource.java
@@ -20,6 +20,10 @@
 
 public class CompilationUnitProviderWithAlternateSource implements
     CompilationUnitProvider {
+  private final CompilationUnitProvider cup;
+
+  private final char[] source;
+
   public CompilationUnitProviderWithAlternateSource(
       CompilationUnitProvider cup, char[] source) {
     this.cup = cup;
@@ -45,7 +49,4 @@
   public boolean isTransient() {
     return cup.isTransient();
   }
-
-  private final CompilationUnitProvider cup;
-  private final char[] source;
 }
diff --git a/dev/core/src/com/google/gwt/dev/jdt/FindDeferredBindingSitesVisitor.java b/dev/core/src/com/google/gwt/dev/jdt/FindDeferredBindingSitesVisitor.java
index 9798f69..ba25f9e 100644
--- a/dev/core/src/com/google/gwt/dev/jdt/FindDeferredBindingSitesVisitor.java
+++ b/dev/core/src/com/google/gwt/dev/jdt/FindDeferredBindingSitesVisitor.java
@@ -36,6 +36,8 @@
   public static final String REBIND_MAGIC_CLASS = "com.google.gwt.core.client.GWT";
   public static final String REBIND_MAGIC_METHOD = "create";
 
+  private final Set results;
+
   public FindDeferredBindingSitesVisitor(Set results) {
     this.results = results;
   }
@@ -66,15 +68,15 @@
     Expression[] args = messageSend.arguments;
     if (args.length != 1) {
       problemReporter.abortDueToInternalError(
-        "GWT.create() should take exactly one argument", messageSend);
+          "GWT.create() should take exactly one argument", messageSend);
       return;
     }
 
     Expression arg = args[0];
     if (!(arg instanceof ClassLiteralAccess)) {
       problemReporter.abortDueToInternalError(
-        "Only class literals may be used as arguments to GWT.create()",
-        messageSend);
+          "Only class literals may be used as arguments to GWT.create()",
+          messageSend);
       return;
     }
 
@@ -82,6 +84,4 @@
     String typeName = String.valueOf(cla.targetType.readableName());
     results.add(typeName);
   }
-
-  private final Set results;
 }
diff --git a/dev/core/src/com/google/gwt/dev/jdt/FindJsniRefVisitor.java b/dev/core/src/com/google/gwt/dev/jdt/FindJsniRefVisitor.java
index 173ba95..1ecb5f1 100644
--- a/dev/core/src/com/google/gwt/dev/jdt/FindJsniRefVisitor.java
+++ b/dev/core/src/com/google/gwt/dev/jdt/FindJsniRefVisitor.java
@@ -34,11 +34,11 @@
 
 public class FindJsniRefVisitor extends ASTVisitor {
 
-  private final Set/*<String>*/ jsniClasses;
+  private final Set/* <String> */jsniClasses;
   private final JsParser jsParser = new JsParser();
   private final JsProgram jsProgram = new JsProgram();
 
-  public FindJsniRefVisitor(Set/*<String>*/ jsniClasses) {
+  public FindJsniRefVisitor(Set/* <String> */jsniClasses) {
     this.jsniClasses = jsniClasses;
   }
 
@@ -48,10 +48,9 @@
     }
 
     // Handle JSNI block
-    char[] source = methodDeclaration.compilationResult().getCompilationUnit()
-      .getContents();
+    char[] source = methodDeclaration.compilationResult().getCompilationUnit().getContents();
     String jsniCode = String.valueOf(source, methodDeclaration.bodyStart,
-      methodDeclaration.bodyEnd - methodDeclaration.bodyStart + 1);
+        methodDeclaration.bodyEnd - methodDeclaration.bodyStart + 1);
     int startPos = jsniCode.indexOf("/*-{");
     int endPos = jsniCode.lastIndexOf("}-*/");
     if (startPos < 0 || endPos < 0) {
@@ -92,7 +91,7 @@
       });
     } catch (IOException e) {
       throw new InternalCompilerException(
-        "Internal error searching for JSNI references", e);
+          "Internal error searching for JSNI references", e);
     } catch (JsParserException e) {
       // ignore, we only care about finding valid references
     }
diff --git a/dev/core/src/com/google/gwt/dev/jdt/ICompilationUnitAdapter.java b/dev/core/src/com/google/gwt/dev/jdt/ICompilationUnitAdapter.java
index 3bd92b5..21cb5c9 100644
--- a/dev/core/src/com/google/gwt/dev/jdt/ICompilationUnitAdapter.java
+++ b/dev/core/src/com/google/gwt/dev/jdt/ICompilationUnitAdapter.java
@@ -23,6 +23,8 @@
 
 public class ICompilationUnitAdapter implements ICompilationUnit {
 
+  private final CompilationUnitProvider cup;
+
   public ICompilationUnitAdapter(CompilationUnitProvider cup) {
     assert (cup != null);
     this.cup = cup;
@@ -54,6 +56,4 @@
     final char[][] pkgParts = CharOperation.splitOn('.', pkg);
     return pkgParts;
   }
-
-  private final CompilationUnitProvider cup;
 }
diff --git a/dev/core/src/com/google/gwt/dev/jdt/Shared.java b/dev/core/src/com/google/gwt/dev/jdt/Shared.java
index 22f0615..b7de772 100644
--- a/dev/core/src/com/google/gwt/dev/jdt/Shared.java
+++ b/dev/core/src/com/google/gwt/dev/jdt/Shared.java
@@ -53,6 +53,41 @@
   static final String[][] NO_STRING_ARR_ARR = new String[0][];
   static final String[] NO_STRINGS = new String[0];
 
+  public static int bindingToModifierBits(FieldBinding binding) {
+    int bits = 0;
+    bits |= (binding.isPublic() ? MOD_PUBLIC : 0);
+    bits |= (binding.isPrivate() ? MOD_PRIVATE : 0);
+    bits |= (binding.isProtected() ? MOD_PROTECTED : 0);
+    bits |= (binding.isStatic() ? MOD_STATIC : 0);
+    bits |= (binding.isTransient() ? MOD_TRANSIENT : 0);
+    bits |= (binding.isFinal() ? MOD_FINAL : 0);
+    bits |= (binding.isVolatile() ? MOD_VOLATILE : 0);
+    return bits;
+  }
+
+  public static int bindingToModifierBits(MethodBinding binding) {
+    int bits = 0;
+    bits |= (binding.isPublic() ? MOD_PUBLIC : 0);
+    bits |= (binding.isPrivate() ? MOD_PRIVATE : 0);
+    bits |= (binding.isProtected() ? MOD_PROTECTED : 0);
+    bits |= (binding.isStatic() ? MOD_STATIC : 0);
+    bits |= (binding.isFinal() ? MOD_FINAL : 0);
+    bits |= (binding.isNative() ? MOD_NATIVE : 0);
+    bits |= (binding.isAbstract() ? MOD_ABSTRACT : 0);
+    return bits;
+  }
+
+  public static int bindingToModifierBits(ReferenceBinding binding) {
+    int bits = 0;
+    bits |= (binding.isPublic() ? MOD_PUBLIC : 0);
+    bits |= (binding.isPrivate() ? MOD_PRIVATE : 0);
+    bits |= (binding.isProtected() ? MOD_PROTECTED : 0);
+    bits |= (binding.isStatic() ? MOD_STATIC : 0);
+    bits |= (binding.isFinal() ? MOD_FINAL : 0);
+    bits |= (binding.isAbstract() ? MOD_ABSTRACT : 0);
+    return bits;
+  }
+
   static String[] modifierBitsToNames(int bits) {
     List strings = new ArrayList();
 
@@ -85,7 +120,7 @@
     if (0 != (bits & MOD_NATIVE)) {
       strings.add("native");
     }
-    
+
     if (0 != (bits & MOD_TRANSIENT)) {
       strings.add("transient");
     }
@@ -97,39 +132,4 @@
     return (String[]) strings.toArray(NO_STRINGS);
   }
 
-  public static int bindingToModifierBits(ReferenceBinding binding) {
-    int bits = 0; 
-    bits |= (binding.isPublic() ? MOD_PUBLIC : 0);
-    bits |= (binding.isPrivate() ? MOD_PRIVATE : 0);
-    bits |= (binding.isProtected() ? MOD_PROTECTED : 0);
-    bits |= (binding.isStatic() ? MOD_STATIC : 0);
-    bits |= (binding.isFinal() ? MOD_FINAL : 0);
-    bits |= (binding.isAbstract() ? MOD_ABSTRACT : 0);
-    return bits;
-  }
-
-  public static int bindingToModifierBits(FieldBinding binding) {
-    int bits = 0;
-    bits |= (binding.isPublic() ? MOD_PUBLIC : 0);
-    bits |= (binding.isPrivate() ? MOD_PRIVATE : 0);
-    bits |= (binding.isProtected() ? MOD_PROTECTED : 0);
-    bits |= (binding.isStatic() ? MOD_STATIC : 0);
-    bits |= (binding.isTransient() ? MOD_TRANSIENT : 0);
-    bits |= (binding.isFinal() ? MOD_FINAL : 0);
-    bits |= (binding.isVolatile() ? MOD_VOLATILE : 0);
-    return bits;
-  }
-
-  public static int bindingToModifierBits(MethodBinding binding) {
-    int bits = 0;
-    bits |= (binding.isPublic() ? MOD_PUBLIC : 0);
-    bits |= (binding.isPrivate() ? MOD_PRIVATE : 0);
-    bits |= (binding.isProtected() ? MOD_PROTECTED : 0);
-    bits |= (binding.isStatic() ? MOD_STATIC : 0);
-    bits |= (binding.isFinal() ? MOD_FINAL : 0);
-    bits |= (binding.isNative() ? MOD_NATIVE : 0);
-    bits |= (binding.isAbstract() ? MOD_ABSTRACT : 0);
-    return bits;
-  }
-
 }
diff --git a/dev/core/src/com/google/gwt/dev/jdt/SourceOracleOnTypeOracle.java b/dev/core/src/com/google/gwt/dev/jdt/SourceOracleOnTypeOracle.java
index 9a35568..9e9c371 100644
--- a/dev/core/src/com/google/gwt/dev/jdt/SourceOracleOnTypeOracle.java
+++ b/dev/core/src/com/google/gwt/dev/jdt/SourceOracleOnTypeOracle.java
@@ -22,6 +22,8 @@
 
 public class SourceOracleOnTypeOracle implements SourceOracle {
 
+  private final TypeOracle typeOracle;
+
   public SourceOracleOnTypeOracle(TypeOracle typeOracle) {
     this.typeOracle = typeOracle;
   }
@@ -42,6 +44,4 @@
       return false;
     }
   }
-
-  private final TypeOracle typeOracle;
 }
diff --git a/dev/core/src/com/google/gwt/dev/jdt/StandardSourceOracle.java b/dev/core/src/com/google/gwt/dev/jdt/StandardSourceOracle.java
index 926945f..e9c923e 100644
--- a/dev/core/src/com/google/gwt/dev/jdt/StandardSourceOracle.java
+++ b/dev/core/src/com/google/gwt/dev/jdt/StandardSourceOracle.java
@@ -37,6 +37,12 @@
  */
 public class StandardSourceOracle implements SourceOracle {
 
+  private final Map cupsByTypeName = new HashMap();
+
+  private final Set knownPackages = new HashSet();
+
+  private final TypeOracle typeOracle;
+
   /**
    * @param typeOracle answers questions about compilation unit locations
    * @param genDir for compilation units whose location does not correspond to a
@@ -59,8 +65,7 @@
 
     // Check the cache first.
     //
-    CompilationUnitProvider cup =
-        (CompilationUnitProvider) cupsByTypeName.get(typeName);
+    CompilationUnitProvider cup = (CompilationUnitProvider) cupsByTypeName.get(typeName);
 
     if (cup != null) {
       // Found in cache.
@@ -83,8 +88,8 @@
     //
     if (cup != null) {
       try {
-        CompilationUnitProvider specialCup =
-            doFilterCompilationUnit(logger, typeName, cup);
+        CompilationUnitProvider specialCup = doFilterCompilationUnit(logger,
+            typeName, cup);
 
         if (specialCup != null) {
           // Use the cup that the subclass returned instead. Note that even
@@ -119,10 +124,6 @@
     return typeOracle;
   }
 
-   void invalidateCups(Set typeNames) {
-   cupsByTypeName.keySet().removeAll(typeNames);
-  }
-
   /**
    * Determines whether or not a particular name is a package name.
    */
@@ -180,6 +181,10 @@
     return null;
   }
 
+  void invalidateCups(Set typeNames) {
+    cupsByTypeName.keySet().removeAll(typeNames);
+  }
+
   /**
    * Remember that this package was added. Used for generated packages.
    */
@@ -192,8 +197,4 @@
     }
     knownPackages.add(packageName);
   }
-
-  private final Map cupsByTypeName = new HashMap();
-  private final Set knownPackages = new HashSet();
-  private final TypeOracle typeOracle;
 }
diff --git a/dev/core/src/com/google/gwt/dev/jdt/StaticCompilationUnitProvider.java b/dev/core/src/com/google/gwt/dev/jdt/StaticCompilationUnitProvider.java
index 013b343..673781e 100644
--- a/dev/core/src/com/google/gwt/dev/jdt/StaticCompilationUnitProvider.java
+++ b/dev/core/src/com/google/gwt/dev/jdt/StaticCompilationUnitProvider.java
@@ -19,6 +19,12 @@
 
 public class StaticCompilationUnitProvider implements CompilationUnitProvider {
 
+  private final String packageName;
+
+  private final String simpleTypeName;
+
+  private final char[] source;
+
   /**
    * @param source if <code>null</code>, override this class and return
    *          source from {@link #getSource()}
@@ -63,8 +69,4 @@
   public String toString() {
     return getLocation();
   }
-
-  private final String packageName;
-  private final String simpleTypeName;
-  private final char[] source;
 }
diff --git a/dev/core/src/com/google/gwt/dev/jdt/TypeOracleBuilder.java b/dev/core/src/com/google/gwt/dev/jdt/TypeOracleBuilder.java
index cd408bb..7d3c0da 100644
--- a/dev/core/src/com/google/gwt/dev/jdt/TypeOracleBuilder.java
+++ b/dev/core/src/com/google/gwt/dev/jdt/TypeOracleBuilder.java
@@ -106,23 +106,20 @@
         // is referenced must also be removed.
         //
         String referencedFn = String.valueOf(referencedType.getFileName());
-        CompilationUnitDeclaration referencedCud =
-            (CompilationUnitDeclaration) cudsByFileName.get(referencedFn);
+        CompilationUnitDeclaration referencedCud = (CompilationUnitDeclaration) cudsByFileName.get(referencedFn);
         if (referencedCud == null) {
           // This is a referenced to a bad or non-existent unit.
           // So, remove the referrer's unit if it hasn't been already.
           //
           String referrerFn = String.valueOf(unitOfReferrer.getFileName());
           if (cudsByFileName.containsKey(referrerFn)
-            && !pendingRemovals.contains(referrerFn)) {
-            TreeLogger branch =
-                logger.branch(TreeLogger.TRACE,
-                  "Cascaded removal of compilation unit '" + referrerFn + "'",
-                  null);
-            final String badTypeName =
-                CharOperation.toString(referencedType.compoundName);
+              && !pendingRemovals.contains(referrerFn)) {
+            TreeLogger branch = logger.branch(TreeLogger.TRACE,
+                "Cascaded removal of compilation unit '" + referrerFn + "'",
+                null);
+            final String badTypeName = CharOperation.toString(referencedType.compoundName);
             branch.branch(TreeLogger.TRACE,
-              "Due to reference to unavailable type: " + badTypeName, null);
+                "Due to reference to unavailable type: " + badTypeName, null);
             pendingRemovals.add(referrerFn);
           }
         }
@@ -145,8 +142,7 @@
       // Find references to type in units that aren't valid.
       //
       for (Iterator iter = cudsByFileName.values().iterator(); iter.hasNext();) {
-        CompilationUnitDeclaration cud =
-            (CompilationUnitDeclaration) iter.next();
+        CompilationUnitDeclaration cud = (CompilationUnitDeclaration) iter.next();
         cud.traverse(trv, cud.scope);
       }
     } while (!pendingRemovals.isEmpty());
@@ -169,7 +165,7 @@
         char[] source = cud.compilationResult.compilationUnit.getContents();
         Util.maybeDumpSource(logger, fileName, source, null);
         logger.log(TreeLogger.TRACE, "Removing problematic compilation unit '"
-          + fileName + "'", null);
+            + fileName + "'", null);
       }
     }
 
@@ -180,6 +176,8 @@
     }
   }
 
+  private final CacheManager cacheManager;
+
   /**
    * Constructs a default instance, with a default cacheManager. This is not to
    * be used in Hosted Mode, as caching will then not work.
@@ -230,19 +228,17 @@
         location = Util.findFileName(location);
         if (!(new File(location).exists() || cup.isTransient())) {
           iter.remove();
-          logger
-            .log(
+          logger.log(
               TreeLogger.TRACE,
               "The file "
-                + location
-                + " was removed by the user.  All types therein are now unavailable.",
+                  + location
+                  + " was removed by the user.  All types therein are now unavailable.",
               null);
         }
       }
     }
-    CompilationUnitProvider[] cups =
-        (CompilationUnitProvider[]) Util.toArray(CompilationUnitProvider.class,
-          addedCups);
+    CompilationUnitProvider[] cups = (CompilationUnitProvider[]) Util.toArray(
+        CompilationUnitProvider.class, addedCups);
     Arrays.sort(cups, CompilationUnitProvider.LOCATION_COMPARATOR);
 
     // Make sure we can find the java.lang.Object compilation unit.
@@ -265,9 +261,8 @@
       throw new UnableToCompleteException();
     }
     cacheManager.invalidateOnRefresh(oracle);
-    CompilationUnitDeclaration[] cuds =
-        cacheManager.getAstCompiler().getCompilationUnitDeclarations(logger,
-          units);
+    CompilationUnitDeclaration[] cuds = cacheManager.getAstCompiler().getCompilationUnitDeclarations(
+        logger, units);
 
     // Build a list that makes it easy to remove problems.
     //
@@ -309,17 +304,13 @@
 
       cud.traverse(new ASTVisitor() {
         public boolean visit(TypeDeclaration typeDecl, BlockScope scope) {
-          JClassType enclosingType =
-              identityMapper.get((SourceTypeBinding) typeDecl.binding
-                .enclosingType());
+          JClassType enclosingType = identityMapper.get((SourceTypeBinding) typeDecl.binding.enclosingType());
           processType(typeDecl, enclosingType, true);
           return true;
         }
 
         public boolean visit(TypeDeclaration typeDecl, ClassScope scope) {
-          JClassType enclosingType =
-              identityMapper.get((SourceTypeBinding) typeDecl.binding
-                .enclosingType());
+          JClassType enclosingType = identityMapper.get((SourceTypeBinding) typeDecl.binding.enclosingType());
           processType(typeDecl, enclosingType, false);
           return true;
         }
@@ -338,8 +329,8 @@
       CompilationUnitDeclaration cud = (CompilationUnitDeclaration) iter.next();
       String loc = String.valueOf(cud.getFileName());
       String processing = "Processing types in compilation unit: " + loc;
-      final TreeLogger cudLogger =
-          logger.branch(TreeLogger.SPAM, processing, null);
+      final TreeLogger cudLogger = logger.branch(TreeLogger.SPAM, processing,
+          null);
       final char[] source = cud.compilationResult.compilationUnit.getContents();
 
       cud.traverse(new ASTVisitor() {
@@ -373,7 +364,7 @@
       }, cud.scope);
     }
     Util.invokeInaccessableMethod(TypeOracle.class, "refresh",
-      new Class[]{TreeLogger.class}, oracle, new Object[]{logger});
+        new Class[] {TreeLogger.class}, oracle, new Object[] {logger});
     return oracle;
   }
 
@@ -393,8 +384,7 @@
   }
 
   private String getPackage(TypeDeclaration typeDecl) {
-    final char[][] pkgParts =
-        typeDecl.compilationResult.compilationUnit.getPackageName();
+    final char[][] pkgParts = typeDecl.compilationResult.compilationUnit.getPackageName();
     return String.valueOf(CharOperation.concatWith(pkgParts, '.'));
   }
 
@@ -542,9 +532,9 @@
     int bodyStart = typeDecl.bodyStart;
     int bodyEnd = typeDecl.bodyEnd;
 
-    JClassType type =
-        new JClassType(oracle, cup, pkg, enclosingType, isLocalType,
-          jclassName, declStart, declEnd, bodyStart, bodyEnd, jclassIsIntf);
+    JClassType type = new JClassType(oracle, cup, pkg, enclosingType,
+        isLocalType, jclassName, declStart, declEnd, bodyStart, bodyEnd,
+        jclassIsIntf);
 
     cacheManager.setTypeForBinding(binding, type);
   }
@@ -619,19 +609,16 @@
 
     if (jmethod.isConstructor()) {
       name = String.valueOf(enclosingType.getSimpleSourceName());
-      method =
-          new JConstructor(enclosingType, name, declStart, declEnd, bodyStart,
-            bodyEnd);
+      method = new JConstructor(enclosingType, name, declStart, declEnd,
+          bodyStart, bodyEnd);
     } else {
       name = String.valueOf(jmethod.binding.selector);
-      method =
-          new JMethod(enclosingType, name, declStart, declEnd, bodyStart,
-            bodyEnd);
+      method = new JMethod(enclosingType, name, declStart, declEnd, bodyStart,
+          bodyEnd);
 
       // Set the return type.
       //
-      TypeBinding jreturnType =
-          ((MethodDeclaration) jmethod).returnType.resolvedType;
+      TypeBinding jreturnType = ((MethodDeclaration) jmethod).returnType.resolvedType;
       JType returnType = resolveType(logger, jreturnType);
       if (returnType == null) {
         // Unresolved type.
@@ -823,7 +810,7 @@
     //
     if (binding instanceof BinaryTypeBinding) {
       logger.log(TreeLogger.WARN,
-        "Source not available for this type, so it cannot be resolved", null);
+          "Source not available for this type, so it cannot be resolved", null);
     }
 
     String name = String.valueOf(binding.readableName());
@@ -908,6 +895,4 @@
     return true;
   }
 
-  private final CacheManager cacheManager;
-
 }
diff --git a/dev/core/src/com/google/gwt/dev/jdt/TypeRefVisitor.java b/dev/core/src/com/google/gwt/dev/jdt/TypeRefVisitor.java
index 40dc143..baeb129 100644
--- a/dev/core/src/com/google/gwt/dev/jdt/TypeRefVisitor.java
+++ b/dev/core/src/com/google/gwt/dev/jdt/TypeRefVisitor.java
@@ -90,17 +90,8 @@
     maybeDispatch(scope, x.resolvedType);
   }
 
-  private void maybeDispatch(Scope referencedFrom, TypeBinding binding) {
-    if (binding instanceof SourceTypeBinding) {
-      SourceTypeBinding type = (SourceTypeBinding) binding;
-      CompilationUnitScope from = findUnitScope(referencedFrom);
-      onTypeRef(type, from.referenceContext);
-    } else if (binding instanceof ArrayBinding) {
-      maybeDispatch(referencedFrom, ((ArrayBinding) binding).leafComponentType);
-    } else {
-      // We don't care about other cases.
-    }
-  }
+  protected abstract void onTypeRef(SourceTypeBinding referencedType,
+      CompilationUnitDeclaration unitOfReferrer);
 
   private CompilationUnitScope findUnitScope(Scope referencedFrom) {
     assert (referencedFrom != null);
@@ -112,6 +103,15 @@
     return (CompilationUnitScope) scope;
   }
 
-  protected abstract void onTypeRef(SourceTypeBinding referencedType,
-      CompilationUnitDeclaration unitOfReferrer);
+  private void maybeDispatch(Scope referencedFrom, TypeBinding binding) {
+    if (binding instanceof SourceTypeBinding) {
+      SourceTypeBinding type = (SourceTypeBinding) binding;
+      CompilationUnitScope from = findUnitScope(referencedFrom);
+      onTypeRef(type, from.referenceContext);
+    } else if (binding instanceof ArrayBinding) {
+      maybeDispatch(referencedFrom, ((ArrayBinding) binding).leafComponentType);
+    } else {
+      // We don't care about other cases.
+    }
+  }
 }
diff --git a/dev/core/src/com/google/gwt/dev/jdt/URLCompilationUnitProvider.java b/dev/core/src/com/google/gwt/dev/jdt/URLCompilationUnitProvider.java
index cada895..6f2a218 100644
--- a/dev/core/src/com/google/gwt/dev/jdt/URLCompilationUnitProvider.java
+++ b/dev/core/src/com/google/gwt/dev/jdt/URLCompilationUnitProvider.java
@@ -30,20 +30,33 @@
     String s = url.toExternalForm();
     File f = null;
     if (s.startsWith("file:")) {
-      // Strip the file: off, and use the result.  If the result
-      // does not start with file, we cannot simplify.  Using URI
+      // Strip the file: off, and use the result. If the result
+      // does not start with file, we cannot simplify. Using URI
       // to do the simplification fails for paths with spaces.
       // Any number of slashes at the beginning cause no problem for Java, so
       // if c:/windows exists so will ///////c:/windows.
-        f = new File(s.substring(5));
-        if (!f.exists()) {
-          f = null;
-        }
+      f = new File(s.substring(5));
+      if (!f.exists()) {
+        f = null;
+      }
     } else {
       f = null;
     }
     return f;
   }
+
+  private final File file;
+
+  private final String location;
+
+  private final String packageName;
+
+  private char[] source;
+
+  private long sourceCurrentTime = Long.MIN_VALUE;
+
+  private final URL url;
+
   public URLCompilationUnitProvider(URL url, String packageName) {
     assert (url != null);
     assert (packageName != null);
@@ -110,11 +123,4 @@
   public String toString() {
     return location;
   }
-
-  private final File file;
-  private final String location;
-  private final String packageName;
-  private char[] source;
-  private long sourceCurrentTime = Long.MIN_VALUE;
-  private final URL url;
 }
diff --git a/dev/core/src/com/google/gwt/dev/jdt/WebModeCompilerFrontEnd.java b/dev/core/src/com/google/gwt/dev/jdt/WebModeCompilerFrontEnd.java
index 1a86026..27f31e7 100644
--- a/dev/core/src/com/google/gwt/dev/jdt/WebModeCompilerFrontEnd.java
+++ b/dev/core/src/com/google/gwt/dev/jdt/WebModeCompilerFrontEnd.java
@@ -29,6 +29,8 @@
 
 public class WebModeCompilerFrontEnd extends AstCompiler {
 
+  private final RebindPermutationOracle rebindPermOracle;
+
   public WebModeCompilerFrontEnd(SourceOracle sourceOracle,
       RebindPermutationOracle rebindPermOracle) {
     super(sourceOracle);
@@ -75,25 +77,23 @@
   protected String[] doFindAdditionalTypesUsingRebinds(TreeLogger logger,
       CompilationUnitDeclaration cud) throws UnableToCompleteException {
     Set dependentTypeNames = new HashSet();
-    
+
     // Find all the deferred binding request types.
     //
     Set requestedTypes = new HashSet();
     FindDeferredBindingSitesVisitor v = new FindDeferredBindingSitesVisitor(
-      requestedTypes);
+        requestedTypes);
     cud.traverse(v, cud.scope);
-    
+
     // For each, ask the host for every possible deferred binding answer.
     //
     for (Iterator iter = requestedTypes.iterator(); iter.hasNext();) {
       String reqType = (String) iter.next();
       String[] resultTypes = rebindPermOracle.getAllPossibleRebindAnswers(
-        getLogger(), reqType);
-      
+          getLogger(), reqType);
+
       Util.addAll(dependentTypeNames, resultTypes);
     }
     return (String[]) dependentTypeNames.toArray(Empty.STRINGS);
   }
-
-  private final RebindPermutationOracle rebindPermOracle;
 }