commons-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Oliver Heger (JIRA)" <j...@apache.org>
Subject [jira] Commented: (CONFIGURATION-374) Unexpected trimming of values in MapConfiguration
Date Wed, 01 Apr 2009 18:46:12 GMT

    [ https://issues.apache.org/jira/browse/CONFIGURATION-374?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12694683#action_12694683
] 

Oliver Heger commented on CONFIGURATION-374:
--------------------------------------------

Looking at the code this feature (at least b) does not seem to be too difficult to implement
as {{PropertyConverter.split()}} already provides a way of disabling trimming. Documentation
is of course also important.

Just wondering whether there are other Configuration implementations which also have the same
problem?

> Unexpected trimming of values in MapConfiguration
> -------------------------------------------------
>
>                 Key: CONFIGURATION-374
>                 URL: https://issues.apache.org/jira/browse/CONFIGURATION-374
>             Project: Commons Configuration
>          Issue Type: Improvement
>    Affects Versions: 1.6
>         Environment: N/A
>            Reporter: Arnauld Van Muysewinkel
>         Attachments: TrimTest.java
>
>
> When using a MapConfiguration (typically over a Properties object), all spaces surrounding
a value are trimmed during the array conversion MapConfiguration.getProperty calling PropertyConverter.split(String,
char) -> PropertyConverter.split(String, char, true).
> I can understand the rational behind this, but:
> 1/ It can be misleading because it is not documented in the API.
> It's even more surprising, since it's a behavior of getting an array, but which has side
effect on getting a string.
> In other words: enabling/disabling delimiter parsing also enables/disables trimming of
values (even if not an array).
> This is illustrated by the tests "getStringWithSpacesTrimmed" and "getStringWithSpacesNotTrimmed"
in the attached test file
> a) The exact behavior should be documented at the proper place in the JavaDoc
> 2/ It should be possible:
> b) either to disable the automatic trimming (something similar to setDelimiterParsingDisabled(boolean),
e.g. setTrimmingDisabled(boolean), and in this case it should be possible to enable/disable
it independently from the delimiter parsing;
> c) or to escape the spaces (see tests "getStringArrayWithSpacesEscaped" and "getStringWithSpacesEscaped"),
this would be consistent with the parsing of the delimiter itself.
> Ideally all of a), b) and c) should be implemented.

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


Mime
View raw message