On 2012/05/17 22:52:23, skybrian wrote:
Okay, yeah, a TODO is fine as it looks kind of difficult.
OK, I'll create an issue, add a TODO referencing it and update the CL. (one of the difficulties is that the only way to get at properties of an AutoBean is to "visit" it, so I think we'd still need some flag to turn off "auto-editing of proxies on property retrieval")
I see now that we are calling ValueProxy.equals() which calls deepEquals(). Worse, when AutoBeanUtils.diff() is called with a ValueProxy, it looks like we
will be doing
a deep equality check twice. (For the "fast" check and again for each
property.) That might be the other perf issue with ValueProxies, as reported in issue 7231 (comment #3).
And I'm not entirely sure whether deepEquals() will call equals() at
some deeper
level.
It won't. equals() is only used for values which aren't AutoBeans (i.e. those handled by ValueCodex). http://gwt-code-reviews.appspot.com/1601806/ -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
