commons-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Nicholas Hemley <>
Subject [Pool] - GenericKeyedObjectPool - one object instance per key?
Date Thu, 19 Jul 2007 13:51:18 GMT

I am using the commons pool for a project and would like only one object instance to be stored
per key using the GenericKeyedObjectPool - is this actually possible?

The javadoc for KeyedObjectPool states that:
"KeyedObjectPool implementations may choose to store at most  one instance per key value,
or may choose to maintain a pool of instances  for each key (essentially creating a Map of

However, having looked in the codebase, the GenericKeyedObjectPool implements a linkedlist
of objects, with no option for setting one object per key only...

Also, I am unable to subclass GenericKeyedObjectPool to alter the behaviour since the members
are all private, so that is not an option.

Another option would be to add a custom implementation to my project, however certain member
variables e.g. GenericObjectPool.EVICTION_TIMER are not visible, which procludes this approach.
The only option would be to add a new class to the commons jar, which I am loathe to do since
then it will not be compatible with future releases e.g. v2.

Many thanks for any feedback.

Nic Hemley

 Yahoo! Answers - Get better answers from someone who knows. Tryit now.
  • Unnamed multipart/alternative (inline, 8-Bit, 0 bytes)
View raw message