You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@beam.apache.org by "Kenneth Knowles (JIRA)" <ji...@apache.org> on 2017/05/02 20:32:04 UTC
[jira] [Resolved] (BEAM-40) Replace rawtype lambda-incompatible
uses of SerializableFunction with SimpleFunction (as appropriate)
[ https://issues.apache.org/jira/browse/BEAM-40?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Kenneth Knowles resolved BEAM-40.
---------------------------------
Resolution: Not A Problem
> Replace rawtype lambda-incompatible uses of SerializableFunction with SimpleFunction (as appropriate)
> -----------------------------------------------------------------------------------------------------
>
> Key: BEAM-40
> URL: https://issues.apache.org/jira/browse/BEAM-40
> Project: Beam
> Issue Type: Task
> Components: sdk-java-core
> Reporter: Kenneth Knowles
> Assignee: Kenneth Knowles
> Priority: Minor
> Labels: Java8, backward-incompatible
> Fix For: First stable release
>
>
> When a lambda or method reference is used in Java 8 to provide a SerializableFunction<InputT, OutputT>, it is instantiated at the raw type SerializableFunction. We occasionally require reflective access to the actual parameter for OutputT, but it will be unavailable.
> MapElements and FlatMapElements thus use the analogous abstract class SimpleFunction in such situations to prevent use of a lambda or method reference. They then support lambda via separate constructors that require user help to determine the concrete output type.
> This ticket calls for an audit of such situations.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)