[
https://issues.apache.org/jira/browse/FLINK-3563?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Timo Walther reassigned FLINK-3563:
-----------------------------------
Assignee: Timo Walther
> .returns() doesn't compile when using .map() with a custom MapFunction
> ----------------------------------------------------------------------
>
> Key: FLINK-3563
> URL: https://issues.apache.org/jira/browse/FLINK-3563
> Project: Flink
> Issue Type: Bug
> Components: Type Serialization System
> Affects Versions: 0.10.1
> Reporter: Simone Robutti
> Assignee: Timo Walther
> Priority: Minor
>
> Defined a DummyMapFunction that goes from a java Map to another java Map like
> this:
> {code:title=DummyMapFunction.scalaborderStyle=solid}
> class DummyMapFunction() extends MapFunction[java.util.Map[String, Any],
> java.util.Map[FieldName, Any]] {
> override def map(input: java.util.Map[String, Any]):
> java.util.Map[FieldName, Any] = {
> val result: java.util.Map[FieldName, Any] = new
> java.util.HashMap[FieldName, Any]()
> result
> }
> }
> {code}
> and trying to use it with a map:
> {code:title=Main.java}
> DummyMapFunction operator = new DummyMapFunction();
> DataSource<Map<String, Object>> dataset = env.fromCollection(input);
> List<java.util.Map<FieldName, Object>> collectedResult =
> dataset.map(operator).returns(java.util.Map.class).collect();
> {code}
> the returns call doesn't compile because it can't resolve the returns method
> with the parameter.
> But if insted of creating a variable of type DummyMapFunction I create a
> {code}
> MapFunction operator=new DummyMapFuction();
> {code}
> or I explicitly cast the variable to a MapFunction, it compiles and work
> flawlessly.
> This is a trick that works but I think is an unexpected behaviour.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)