Partial review. I looked at the DeltaValueStore, Proxy* and AbstractRequest code in user and it looks good except one thing -- I don't think the commit method should be putting values in the deltaValueStore. We don't know for sure, if all fields have been persisted. And the entity value will be requested subsequently by any client code that hears the updates.
http://gwt-code-reviews.appspot.com/921801/diff/1/27 File user/src/com/google/gwt/requestfactory/client/impl/DeltaValueStoreJsonImpl.java (right): http://gwt-code-reviews.appspot.com/921801/diff/1/27#newcode164 user/src/com/google/gwt/requestfactory/client/impl/DeltaValueStoreJsonImpl.java:164: } What is the advantage of putting this in the valueStore? We don't know for sure, if all field values have persisted. It will be requested subsequently by any client code that hears the updates. http://gwt-code-reviews.appspot.com/921801/diff/1/27#newcode165 user/src/com/google/gwt/requestfactory/client/impl/DeltaValueStoreJsonImpl.java:165: assert master.records.containsKey(futureKey); Why are we not firing events here? http://gwt-code-reviews.appspot.com/921801/diff/1/29 File user/src/com/google/gwt/requestfactory/client/impl/ProxyImpl.java (right): http://gwt-code-reviews.appspot.com/921801/diff/1/29#newcode120 user/src/com/google/gwt/requestfactory/client/impl/ProxyImpl.java:120: } Is it documented somewhere that if the return type is an entityProxy, it automatically becomes editable? http://gwt-code-reviews.appspot.com/921801/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
