Changes are split into three categories:
- Major changes: The major new features that all users should know about.
- Minor changes: Any smaller changes, including bugfixes.
- API changes: Any changes to the API that could impact existing users.
Version 0.2
Major changes
- Added Pool proxy (PTOYS-4).
- Added Dispatcher proxy (PTOYS-9).
- Compatibility for CGLIB 2.0.2 (PTOYS-7) and CGLIB 2.1.
- Classes compiled for JDK 1.3.
- Multicaster proxies implement now Multicast.
- A lot of Javadoc and package overviews with examples.
- Removed Future object (PTOYS-2)
- Ensure proxies can be serialized by JDK and XStream even with JDK 1.3.
Minor changes
- Fix equality for delegated objects (PTOYS-3).
- Fix recursion problem for delegating objects (PTOYS-8).
- Decorates can now call the protected methods of its delegate.
- Echo objects use now the given ProxyFactory.
- Echo objects will now also trace return values and thrown exceptions.
- Fixed a lot of cuncurrency issues.
- Multicaster will no longer try and fail to proxy final classes.
- Multicaster handles now all primitive types.
- Hot swapping proxy could not handle concrete classes (fix by Aaron Knauf).
- Fixed implicit and unnecessary references of the proxy instance to the ProxyFactory.
- Delegating proxies cache the matching methods internally.
API changes
- Copied ClassHierarchyInspector to ReflectionUtils in new package com.thoughtworks.proxy.kit and deprecated ClassHierarchyInspector.
- Methods of ReflectionUtils use now Set instances instead of Class arrays.
- Moved ObjectReference and SimpleReference into new package com.thoughtworks.proxy.kit.
- SimpleInvoker into new package com.thoughtworks.proxy.kit.
- InvocationDecorator methods now all receive at any time the proxy, the called method and the arguments.
- DelegatingInvoker no longer has public constants, use always Delegating.MODE_XXX constants
- The delegation mode is no longer set by a boolean (STATIC_TYPE or DYNAMIC_TYPE), but an integer value now (MODE_XXX).
- DelegatingInvoker no longer has public constants, use always Delegating.MODE_XXX constants
Version 0.1
Initial release.