You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@commons.apache.org by grumpoxl <mh...@stargate.net> on 2003/03/06 15:45:46 UTC

Re: [collections] Desirability of typed and other validated Collections

> It seems like a waste of time to write/maintain code that will be obsolete 
> quite soon.  I don't find casting collection objects to be terribly painful 
> and 1.5 will provide the function you would be coding.
> 
> David

It is true that Java 1.5 will include generics, and that any typed
Collections that I create will eventually be replaced.  However, it
seems to me that Java 1.5 will not be available anytime soon, so any
classes written to solve this problem will not be obsolete for a good
while.  

Even after the release of 1.5, not all developers will have access to
it.  The HP-UX production machines at my current job are still running
1.3, due to a kernel upgrade that 1.4 requires.  I'm sure that a lot of
developers are in similar situations.

It seems that the general Jakarta philosophy still leans toward
supporting Java 1.3 at a minimum.  So, the question isn't so much about
the possibility of these classes being replaced by better
versions from Sun, but whether or not typed Collections would be a
useful addition to the collections package.  I am going to write the
classes either way, I was just wondering if anyone else was interested.

I wasn't proposing to get rid of the casting involved when retrieving
Objects from Collections, there is no way to do that while implementing
Collection or Map.  I was proposing overrides to add(Object),
addAll(Collection), and the Constructors, to add validation to the input
Objects or Collections.  Anyone sending or receiving a Collection could
instantly validate whether the content is what they expect, rather than
casting and getting a ClassCastException along the way.  I would imagine
that illegal classes would still throw some type of RuntimeException,
perhaps a custom Exception which is more descriptive than ClassCast.
 
Anyone else agree/disagree?
 

> >Is there any interest in creating typed Collections?  Even though it
> >looks like Java is providing generics with 1.5, this could serve as a
> >good holdover until then,
> >
> >- a TypedCollection(Integer.class) would only allow Integers to its add
> >methods
> >
> >- a TypedMap(String.class, Integer.class) would only allow String keys
> >and Integer values
> >
> >I understand that this type of thing could already by done using
> >Predicates and 



---------------------------------------------------------------------
To unsubscribe, e-mail: commons-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: commons-dev-help@jakarta.apache.org