FAILURE: Integrated in River-trunk-jdk7 #153 (See https://builds.apache.org/job/River-trunk-jdk7/153/)
RIVER-336 Update to ClassLoading. Convert remaining tests to utilise the new java.rmi.server.RMIClassLoaderSpi provider in ClassLoading
Reduce number of tasks executed in RandomStressTest to avoid OOME on 32 bit platforms.
Updated configuration.policy to ensure that all configuration files had sufficient permission to be tested, broken.prop wasn't being tested, not sure how long this has been the case, but it's fixed now. (peter_firmstone: http://svn.apache.org/viewvc/?view=rev&rev=1590379)
RIVER-336 Minor update to ClassLoading. Be careful with MarshalledObject obtained from ActivationGroupDesc (peter_firmstone: http://svn.apache.org/viewvc/?view=rev&rev=1590241)
RIVER-336 Minor update to ClassLoading to allow modular frameworks to specify the ClassLoader used to load a RMIClassLoaderSpi provider. (peter_firmstone: http://svn.apache.org/viewvc/?view=rev&rev=1590226)
RIVER-336 Refactoring of work done by Sim & Gregg. Updated all River code in the main src distribution to utilize ClassLoading, instead of RMIClassLoader, including marshaling and unmarshaling of MarshalledObject's using MarshalledInstance, this ensures that the replacement service provider mechanism is fully utilized, instead of using RMIClassLoader. Since both replacement provider classes for RMIClassLoader, proposed to date, have identical methods to RMIClassLoaderSpi, RMIClassLoaderSpi has been retained, to ensure that existing providers can be utilized without requiring recompilation. ServiceLoader is used to load RMIClassLoaderSpi, however this is done directly by ClassLoading, not RMIClassLoader and clients may specify which instance they want from a list of available providers by setting the system property "net.jini.loader.ClassLoading.provider".
ClassLoading was chosen to delegate to the provider, since it already contained two methods compatible with and delegated to RMIClassLoader and it only required two more static methods to replace RMIClassLoader functionality and delegate directly to an RMIClassLoaderSpi provider.
Tests that test PreferredClassProvider have been converted to utilize ClassLoading instead of RMIClassLoader.
ClassLoading also has a third method that delegates to the three argument version of Class.forName, this new method fixes a hotspot and source of lock contention in mahalo's RandomStressTest, by thread confining calls for each ClassLoader when loading classes, as a result the Class.forName hot spot has been reduced from 50% cpu to under 3% cpu.
In addition debug mode has been set back to false for transaction testing. (peter_firmstone: http://svn.apache.org/viewvc/?view=rev&rev=1590000)