You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@commons.apache.org by Henning Schmiedehausen <hp...@intermeta.de> on 2002/12/03 12:25:54 UTC

[CONFIGURATION] Big cleanup for BaseConfiguration.java, now actually works

[Martin: Cc to commons-dev, that's why it is in english]

Hi,

I stumped over the following problem:

foo.bar =   aaa
foo.bar =   bbb, ccc


I expected a Configuration object to return for getVector("foo.bar") :

[ "aaa", "bbb", "ccc" ]

but I got

[ "aaa", "bbb, ccc" ]

Which basically sucks and is not the expected behaviour. Then I took
a look into BaseConfiguration (and recoiled in horror).

The attached patch(es) fix up the mess surrounding the internal store,
implement a Container wrapper for Vectors (as suggested in the comments)
and return the correct values for the scenario described above. These
are two patches, one is with additional commons-logging debugging
integrated but adds another jar to the dependencies.

As the comments suggest, that this container change should be post-1.0
(which IMHO would really be bad, the current code doesn't work correct
and is obfuscated) and the last changes are from August, I'd really like
to see this getting in _before_ 1.0 release.

As this seems to be Turbine spawned code, I hope, someone will check
this in (I'm using this with Turbine). Alternatively, someone might
simply give me karma on the repository (I'm a committer for Turbine so I
might be qualified for this. :-) ) 



	Regards
		Henning




-- 
Dipl.-Inf. (Univ.) Henning P. Schmiedehausen       -- Geschaeftsfuehrer
INTERMETA - Gesellschaft fuer Mehrwertdienste mbH     hps@intermeta.de

Am Schwabachgrund 22  Fon.: 09131 / 50654-0   info@intermeta.de
D-91054 Buckenhof     Fax.: 09131 / 50654-20