Konstantin Ignatyev created GEODE-336:
-----------------------------------------

             Summary: Function extends Identifiable without specifying generics 
type for Identifiable
                 Key: GEODE-336
                 URL: https://issues.apache.org/jira/browse/GEODE-336
             Project: Geode
          Issue Type: Bug
            Reporter: Konstantin Ignatyev
            Priority: Critical


Function interface is defined as 
public interface Function extends Identifiable { 
   public String getId();
...}

but that is not correct because Identifiable requires type parameter 
public interface Identifiable<T extends Comparable<T>> extends Serializable { 
   public T getId();
}

so when custom function is defined as 
class SomeFunction extends FunctionAdapter {
  override def getId:String = "SomeFunction-v1"
}

Java compiler tolerates that, but Scala compiler refuses to compile because  
because String is not compatible with 'Nothing' that is expected from getId 
because Function extends Identifiable without specifying type.

Solution:
define Function as
public interface Function extends Identifiable<String> 




--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to