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 2016/02/20 03:19:18 UTC
[jira] [Created] (BEAM-40) Replace rawtype lambda-incompatible uses
of SerializableFunction with SimpleFunction (as appropriate)
Kenneth Knowles created BEAM-40:
-----------------------------------
Summary: 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
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.4#6332)