We have done our utmost to maintain the exact same functionality as
Collections 3.1. We have eliminated all deprecated classes that were
scheduled for removal in 4.0. Furthermore, we have deprecated all the
TypedXXX classes since they are made obsolete by generics.
The following classes were not converted, or were only partially converted:
- MultiMap and derivatives: MultiMap with generics breaks the java.util.Map
contract, so only partial conversion was possible.
- All TransformedXXX collections: These classes break the
java.util.Collection contract (or the java.util.Map contract, as appropriate)
once generics are added. They were not converted to support generics at all.
We are considering adding MorphCollection, MorphMap, MorphSet, etc.
interfaces to support MultiMaps and TransformedXXX collections. These
interfaces would be the same as their non-morph counterparts, but 'getting'
would be templated independently of 'setting/adding'. For example, the
MultiMap<K,V> interface would extend MorphMap<K,V,Collection<V>>. However,
this is a large step as it would move these collections out from under the
standard collection interfaces defined in java.util. We welcome any
suggestions regarding this.
The collections pass all the unit tests. We have released it as a beta, but
plan to move quickly towards a final release. We look forward to any
suggestions and feedback from the community.