[jira] [Commented] (COLLECTIONS-461) splitmap.TransformedMap is not really a Map

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

[jira] [Commented] (COLLECTIONS-461) splitmap.TransformedMap is not really a Map

ASF GitHub Bot (Jira)

    [ https://issues.apache.org/jira/browse/COLLECTIONS-461?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13657369#comment-13657369 ]

Thomas Neidhart commented on COLLECTIONS-461:
---------------------------------------------

Ok to add the following note to the javadoc of Put:

{noformat}
 * NOTE: the "write" interface of a {@link Map} may have different types
 * compared to the "read" part, thus {@link #put(Object, Object)} must return
 * {@link Object} as the actual value type can not be determined.
{noformat}
               

> splitmap.TransformedMap is not really a Map
> -------------------------------------------
>
>                 Key: COLLECTIONS-461
>                 URL: https://issues.apache.org/jira/browse/COLLECTIONS-461
>             Project: Commons Collections
>          Issue Type: Bug
>            Reporter: Sebb
>             Fix For: 4.x
>
>
> splitmap.TransformedMap is part of the Get/Put hierarchy, but it does not behave like a proper Java Map.
> In particular, java.util.Map.put(K, V) returns V.
> However the collections Put interface returns Object.
> As far as I can tell, this was done in order to be able to include TransformedMap in the hiearchy. But the side effect is to break the generics for all the non-transformer maps in the hierarchy.
> Maybe there should be a separate PutTransformed interface which has the appropriate generic types, i.e.
> public T put(K key, V value)

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira