[
https://issues.apache.org/jira/browse/COLLECTIONS-294?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Benjamin Bentmann updated COLLECTIONS-294:
------------------------------------------
Attachment: COLLECTIONS-294-CaseInsensitiveMap.patch
Yes, you're right, the map thing is trickier than I realized. Attached is a new
patch that makes key comparisons behave as {{equalsIgnoreCase()}} would do
(watch out for the extended unit test that fails when using
{{String.toLowerCase()}} in {{convertKey()}}).
A question that pops up is whether {{CaseInsensitiveMap}} should have been
case-preserving for keys, i.e. store keys in their original case but compare
case-insensitively. I mean, there seem to be two different use cases involved
here:
# case-insentive key lookup, i.e. {{map.get("key") == map.get("KEY")}} but
possibly {{map.keySet().contains("Key")}}
# automatic key normalization to lower/upper case to provide a specific key set
view
> Fix case-insensitive string handling
> ------------------------------------
>
> Key: COLLECTIONS-294
> URL: https://issues.apache.org/jira/browse/COLLECTIONS-294
> Project: Commons Collections
> Issue Type: Bug
> Components: Map
> Affects Versions: 3.2
> Reporter: Benjamin Bentmann
> Attachments: COLLECTIONS-294-CaseInsensitiveMap.patch,
> COLLECTIONS-294.patch
>
>
> For example, the behavior of the {{CaseInsensitiveMap}} is currently
> platform-dependent, please see [Common Bug
> #3|http://www.nabble.com/Re%3A-Common-Bugs-p14931921s177.html] for details.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.