Author: sco...@google.com
Date: Tue Mar 31 09:44:02 2009
New Revision: 5125

Modified:
     
changes/scottb/memory/dev/core/src/com/google/gwt/dev/javac/CompilationState.java
     
changes/scottb/memory/dev/core/src/com/google/gwt/dev/javac/JavaSourceOracle.java
     
changes/scottb/memory/dev/core/src/com/google/gwt/dev/javac/impl/JavaSourceOracleImpl.java
     
changes/scottb/memory/dev/core/src/com/google/gwt/dev/resource/ResourceOracle.java
     
changes/scottb/memory/dev/core/src/com/google/gwt/dev/resource/impl/ResourceOracleImpl.java
     
changes/scottb/memory/dev/core/test/com/google/gwt/dev/javac/MockJavaSourceOracle.java
     
changes/scottb/memory/dev/core/test/com/google/gwt/dev/javac/impl/MockResourceOracle.java
     
changes/scottb/memory/dev/core/test/com/google/gwt/dev/shell/StandardGeneratorContextTest.java

Log:
Free up ResourceOracle, JavaSourceOracle, more CompilationState.

Conflicts:

        dev/core/src/com/google/gwt/dev/javac/CompilationState.java
        dev/core/test/com/google/gwt/dev/javac/impl/MockResourceOracle.java

Modified:  
changes/scottb/memory/dev/core/src/com/google/gwt/dev/javac/CompilationState.java
==============================================================================
---  
changes/scottb/memory/dev/core/src/com/google/gwt/dev/javac/CompilationState.java
        
(original)
+++  
changes/scottb/memory/dev/core/src/com/google/gwt/dev/javac/CompilationState.java
        
Tue Mar 31 09:44:02 2009
@@ -138,9 +138,12 @@
          it.remove();
        }
      }
+    unitMap.clear();
      updateExposedUnits();
      jdtCompiler = null;
      mediator = new TypeOracleMediator();
+    sourceOracle.clear();
+    invalidatorState = new CompilationUnitInvalidator.InvalidatorState();
    }

    /**

Modified:  
changes/scottb/memory/dev/core/src/com/google/gwt/dev/javac/JavaSourceOracle.java
==============================================================================
---  
changes/scottb/memory/dev/core/src/com/google/gwt/dev/javac/JavaSourceOracle.java
        
(original)
+++  
changes/scottb/memory/dev/core/src/com/google/gwt/dev/javac/JavaSourceOracle.java
        
Tue Mar 31 09:44:02 2009
@@ -51,6 +51,12 @@
  public interface JavaSourceOracle {

    /**
+   * Frees up all existing resources and transient internal state. The
+   * underlying ResourceOracle must be refreshed to be valid again.
+   */
+  void clear();
+
+  /**
     * Returns an unmodifiable set of fully-qualified class names with  
constant
     * lookup time.
     */

Modified:  
changes/scottb/memory/dev/core/src/com/google/gwt/dev/javac/impl/JavaSourceOracleImpl.java
==============================================================================
---  
changes/scottb/memory/dev/core/src/com/google/gwt/dev/javac/impl/JavaSourceOracleImpl.java
       
(original)
+++  
changes/scottb/memory/dev/core/src/com/google/gwt/dev/javac/impl/JavaSourceOracleImpl.java
       
Tue Mar 31 09:44:02 2009
@@ -141,6 +141,15 @@
      this.oracle = oracle;
    }

+  public void clear() {
+    cachedResources = Collections.emptySet();
+    exposedClassNames = Collections.emptySet();
+    exposedSourceFiles = Collections.emptySet();
+    exposedSourceMap = Collections.emptyMap();
+    sourceFiles.clear();
+    oracle.clear();
+  }
+
    public Set<String> getClassNames() {
      refresh();
      return exposedClassNames;

Modified:  
changes/scottb/memory/dev/core/src/com/google/gwt/dev/resource/ResourceOracle.java
==============================================================================
---  
changes/scottb/memory/dev/core/src/com/google/gwt/dev/resource/ResourceOracle.java
       
(original)
+++  
changes/scottb/memory/dev/core/src/com/google/gwt/dev/resource/ResourceOracle.java
       
Tue Mar 31 09:44:02 2009
@@ -56,6 +56,12 @@
  public interface ResourceOracle {

    /**
+   * Frees up all existing resources and transient internal state. This
+   * ResourceOracle must be refreshed to be valid again.
+   */
+  void clear();
+
+  /**
     * Returns an unmodifiable set of unique abstract path names with  
constant
     * lookup time.
     */

Modified:  
changes/scottb/memory/dev/core/src/com/google/gwt/dev/resource/impl/ResourceOracleImpl.java
==============================================================================
---  
changes/scottb/memory/dev/core/src/com/google/gwt/dev/resource/impl/ResourceOracleImpl.java
      
(original)
+++  
changes/scottb/memory/dev/core/src/com/google/gwt/dev/resource/impl/ResourceOracleImpl.java
      
Tue Mar 31 09:44:02 2009
@@ -270,6 +270,13 @@
      this(getAllClassPathEntries(logger, classLoader));
    }

+  public void clear() {
+    exposedPathNames = Collections.emptySet();
+    exposedResourceMap = Collections.emptyMap();
+    exposedResources = Collections.emptySet();
+    internalMap = Collections.emptyMap();
+  }
+
    public Set<String> getPathNames() {
      return exposedPathNames;
    }

Modified:  
changes/scottb/memory/dev/core/test/com/google/gwt/dev/javac/MockJavaSourceOracle.java
==============================================================================
---  
changes/scottb/memory/dev/core/test/com/google/gwt/dev/javac/MockJavaSourceOracle.java
   
(original)
+++  
changes/scottb/memory/dev/core/test/com/google/gwt/dev/javac/MockJavaSourceOracle.java
   
Tue Mar 31 09:44:02 2009
@@ -38,6 +38,9 @@
      add(sourceFiles);
    }

+  public void clear() {
+  }
+
    public Set<String> getClassNames() {
      return exportedMap.keySet();
    }

Modified:  
changes/scottb/memory/dev/core/test/com/google/gwt/dev/javac/impl/MockResourceOracle.java
==============================================================================
---  
changes/scottb/memory/dev/core/test/com/google/gwt/dev/javac/impl/MockResourceOracle.java
        
(original)
+++  
changes/scottb/memory/dev/core/test/com/google/gwt/dev/javac/impl/MockResourceOracle.java
        
Tue Mar 31 09:44:02 2009
@@ -38,6 +38,9 @@
      add(resources);
    }

+  public void clear() {
+  }
+
    public Set<String> getPathNames() {
      return exportedMap.keySet();
    }

Modified:  
changes/scottb/memory/dev/core/test/com/google/gwt/dev/shell/StandardGeneratorContextTest.java
==============================================================================
---  
changes/scottb/memory/dev/core/test/com/google/gwt/dev/shell/StandardGeneratorContextTest.java
   
(original)
+++  
changes/scottb/memory/dev/core/test/com/google/gwt/dev/shell/StandardGeneratorContextTest.java
   
Tue Mar 31 09:44:02 2009
@@ -57,6 +57,9 @@

      public MockCompilationState() {
        super(TreeLogger.NULL, new JavaSourceOracle() {
+        public void clear() {
+        }
+
          public Set<String> getClassNames() {
            return Collections.emptySet();
          }
@@ -123,12 +126,12 @@
            public InputStream openContents() {
              return new ByteArrayInputStream(Util.getBytes("w00t!"));
            }
-
+
            @Override
            public boolean wasRerooted() {
              return false;
            }
-
+
          };
        }
        return null;

--~--~---------~--~----~------------~-------~--~----~
http://groups.google.com/group/Google-Web-Toolkit-Contributors
-~----------~----~----~----~------~----~------~--~---

Reply via email to