This patch addresses issue 535, generates smaller client side proxies, and allows mixin interfaces for RemoteServices.

Refactored the generated client side proxy classes to move the boiler plate code into the new RemoteServiceProxy and RequestCallbackAdapter classes.

The client side proxy now uses RequestBuilder.  The underlying HTTP Request object will be returned by the proxy if the asynchronous remote service interface method returns a Request type.

Behavioral change: the client side proxy will use the RemoteService interface name for the type used in the GWT.create call instead of the interface on which the method is defined this was preventing mixins from working.  The server-side RPC class has been updated to use Class.getMethod instead of Class.getDeclaredMethod which avoids the recursive lookup.

Patch by: mmendez
Review by: scottb

git-svn-id: https://google-web-toolkit.googlecode.com/svn/trunk@1524 8db76d5a-ed1c-0410-87a9-c151d255dfc7
6 files changed