[
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.