This commit addresses issues 1129, 1161, and 1163 and it includes some general 
cleanup.

Issue 1129:
The fix is that if we are in a manually serialized type that uses Object or Object[]
we will consider all serializable subtypes of Object.  Without being able to deal
with arrays dynamically and without giving additional information to CFS this is the
best that we can do.  We should be able to handle this correctly in RPC v2.

Issue 1161: 
We only checked for native methods if the class was automatically serializable. 
Since all of our JRE classes with native methods use custom field serializers we
never saw the native method warning.  When external developers added auto
serializable types to the JRE they did get warnings.  This patch will skip the check
for native methods if the type is part of our JRE emulation.  We assume that all 
types whose package names begin with "java." are part of our JRE.    This does not 
account for javax and org.* packages which are part of the real JRE.

Issue 1163:
There were a few problems with this code.  First, when generating a log message we
did not store whether or not it was a warning or an error.  If the type was seen
multiple times, it was possible that what was previously a warning would be treated
as an error.

Second, abstract classes that did not have any instantiable subtypes would be
considered an error.

General cleanup:
Removed several warnings about assignment to parameters and member 
visibility causing synthetic access methods to be generated.  Updated the test code 
to remove work arounds for TypeSerializer exceptions which were no longer necessary.

Based on scottb's review feedback, I renamed some of the test classes to clarify 
how they are used.  Fixed a couple of latent bugs where we were forcing abstract classes 
to be default instantiable.  I moved the async interface validation code into the 
ProxyCreator class since it is not really appropriate for STOB.  Lastly, updated 
the documentation for STOB to give more background on how it works.

Review by: scottb



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