[
https://issues.apache.org/jira/browse/COLLECTIONS-231?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Thomas Neidhart resolved COLLECTIONS-231.
-----------------------------------------
Resolution: Fixed
Change done with the exception of Unmodifiable decorators.
> Not return the base interface on decorate
> -----------------------------------------
>
> Key: COLLECTIONS-231
> URL: https://issues.apache.org/jira/browse/COLLECTIONS-231
> Project: Commons Collections
> Issue Type: Improvement
> Components: Map
> Affects Versions: 3.2
> Reporter: Torsten Curdt
> Fix For: 4.0
>
>
> At the moment I don't see a reason why the static "decorate" method does not
> return ListOrderedMap but just the base interface OrderedMap.
> I want to decorate a Map to be a ListOrderedMap but due to the fact that the
> constructor is not visible and decorate only returns the base interface
> OrderedMap an unnecessary cast is required.
> ListOrderedMap map = (ListOrderedMap)ListOrderedMap.decorate(new MyMap());
> As the decorate method is static and not part of any interface it should be
> fine to return the real type instead of the base. Otherwise I'd suggest to
> make the constructor visible. From the API POV It is not really
> understandable why this
> ListOrderedMap map = new ListOrderedMap();
> is fine and creates a HashMap under the hood while this
> ListOrderedMap map = new ListOrderedMap(new MyMap()));
> is not ok.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira