You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@accumulo.apache.org by "Mike Drob (JIRA)" <ji...@apache.org> on 2014/03/17 18:23:45 UTC

[jira] [Created] (ACCUMULO-2486) Use covariant return types in SKVI.deepCopy

Mike Drob created ACCUMULO-2486:
-----------------------------------

             Summary: Use covariant return types in SKVI.deepCopy
                 Key: ACCUMULO-2486
                 URL: https://issues.apache.org/jira/browse/ACCUMULO-2486
             Project: Accumulo
          Issue Type: Improvement
            Reporter: Mike Drob
             Fix For: 1.7.0


Starting with Java 5, subclasses with method overrides can declare covariant return types. In general, I believe that we want to do this, as it provides stronger type guarantees with not a lot of extra cost.

Example:
{code}
public interface SortedKeyValueIterator {
      SortedKeyValueIterator deepCopy(IteratorEnvironment env);
}

public interface InterruptibleIterator extends SortedKeyValueIterator {
      @Override
      InterruptibleIterator deepCopy(IteratorEnvironment env);
}
{code}

I believe this change will be fully backwards compatible with the existing APIs.



--
This message was sent by Atlassian JIRA
(v6.2#6252)