Actually after initial cache filling all these units are used. I see
preparing new TypeData only for changed units, when I modify them and
hit Refresh in DevMode browser.

I've added lazy TypeData into CompiledClass and filling TypeData
information instead of cache. I'm not sure however if adding TypeData
into CompiledClass is perfect, it seems that we add information from one
layer into other layer.


http://gwt-code-reviews.appspot.com/1420809/diff/1/dev/core/src/com/google/gwt/dev/javac/TypeOracleMediator.java
File dev/core/src/com/google/gwt/dev/javac/TypeOracleMediator.java
(right):

http://gwt-code-reviews.appspot.com/1420809/diff/1/dev/core/src/com/google/gwt/dev/javac/TypeOracleMediator.java#newcode249
dev/core/src/com/google/gwt/dev/javac/TypeOracleMediator.java:249: new
ReferenceMap(AbstractReferenceMap.HARD, AbstractReferenceMap.SOFT);
On 2011/04/26 15:30:36, scottb wrote:
Needs to be synchronized?
This code was removed.

http://gwt-code-reviews.appspot.com/1420809/diff/1/dev/core/src/com/google/gwt/dev/javac/TypeOracleMediator.java#newcode467
dev/core/src/com/google/gwt/dev/javac/TypeOracleMediator.java:467:
Map<String, Object> values = Maps.newHashMap(annotData.getValues());
What's the motivation here?
This methods updates this annotation values map, so makes shared cached
state invalid. So, we want to update copy instead.

http://gwt-code-reviews.appspot.com/1420809/

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

Reply via email to