The thread is here: http://mail.openjdk.java.net/pipermail/lambda-dev/2013-November/011397.html
On Wed, Nov 13, 2013 at 7:40 PM, Paul Benedict <pbened...@apache.org> wrote: > I will forward a portion of this email to the OpenJDK folks and see what > they think about compatibility options. > > > On Wed, Nov 13, 2013 at 3:49 PM, Thomas Neidhart < > thomas.neidh...@gmail.com> wrote: > >> Hi, >> >> during the vote for collections 4.0 we have discovered a problem wrt the >> MultiMap interface in general and specifically the MultiKeyMap. >> >> Java 8 introduces a new default method in the Map interface: >> >> boolean remove(Object key, Object value) >> >> This clashes with the method in MultiMap: >> >> V remove(K key, V value) >> >> and the remove methods for multiple keys in MultiKeyMap: >> >> V remove(K key1, K key2) >> >> >> Just changing the return type does not solve the problem, as one can not >> re-define a method in an interface without using the @Override >> annotation, but this would only work when compiling with JDK 8 and fail >> for other JDKs. >> >> For the MultiKeyMap it would be semantically wrong too, thus I propose a >> name change. >> >> For MultiMap: >> >> boolean removeMapping(K key, V value) >> >> For MultiKeyMap (for all remove(K ...) methods): >> >> V removeMultiKey(K key1, K key2) >> V removeMultiKey(K key1, K key2, K key3) >> ... >> >> >> In the case of the MultiMap, I think returning a boolean makes more >> sense, similar as Java 8 does it. >> >> For the MultiKeyMap, returning the previously mapped value is preferable >> imho. >> >> Any objections? >> >> Thomas >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org >> For additional commands, e-mail: dev-h...@commons.apache.org >> >> > > > -- > Cheers, > Paul > -- Cheers, Paul