commons-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Oliver Heger (JIRA)" <>
Subject [jira] Commented: (CONFIGURATION-272) ConfigurationUtils.copy results in escaped "," characters no longer being escaped
Date Sat, 07 Jul 2007 15:14:05 GMT


Oliver Heger commented on CONFIGURATION-272:

I think the problem here is that ConfigurationUtils operates on plain Configuration objects
and does not know about specifics like list delimiters available only for classes derived
from AbstractConfiguration. And performing a cast to AbstractConfiguration in these methods
would be really ugly IMO.

A solution would be to add new copy() and append() methods to AbstractConfiguration with the
same semantics. Then we had full control over the copy process and could also determine, which
events to generate (maybe it does not make sense to trigger an event for each copied property,
but only one event for the whole copy operation).

copy() and append() in ConfigurationUtils could then be deprecated, or at least a remark could
be added to their documentation that the variants implemented by AbstractConfiguration are

> ConfigurationUtils.copy results in escaped "," characters no longer being escaped
> ---------------------------------------------------------------------------------
>                 Key: CONFIGURATION-272
>                 URL:
>             Project: Commons Configuration
>          Issue Type: Bug
>    Affects Versions: 1.4
>         Environment: commons 1.4
>            Reporter: John Meagher
>            Assignee: Emmanuel Bourg
>             Fix For: 1.5
> When using ConfigurationUtils.copy to go between configuration formats any escaped out
"," characters are put into the output configuration without the escape character.  This results
in a different value being returned from getString calls as it now things the property is
a list.  If 4 escape characters are used instead of the expected 1 then the copy will end
up with the correct value, but then the original will end up with the escape character as
part of the property value.  
> Example:
> SomeLongProperty=This is a test\, it is only a test
> # Ends up right in the copy, but not right in the original
> SomeOtherProperty=This is also a test\\\\, it is also only a test
> After copy:
> # Missing "\" before ","
> SomeLongProperty=This is a test, it is only a test
> SomeOtherProperty=This is also a test\, it is also only a test

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message