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/16 18:20:04 UTC
[jira] [Updated] (BEAM-2304) State declared with one class cannot
be accessed as a superclass (applies to BagState|CombiningState <:
GroupingState)
[ https://issues.apache.org/jira/browse/BEAM-2304?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Kenneth Knowles updated BEAM-2304:
----------------------------------
Summary: State declared with one class cannot be accessed as a superclass (applies to BagState|CombiningState <: GroupingState) (was: State API cannot recognize State superclases)
> State declared with one class cannot be accessed as a superclass (applies to BagState|CombiningState <: GroupingState)
> ----------------------------------------------------------------------------------------------------------------------
>
> Key: BEAM-2304
> URL: https://issues.apache.org/jira/browse/BEAM-2304
> Project: Beam
> Issue Type: Bug
> Components: sdk-java-core
> Reporter: Reuven Lax
> Assignee: Kenneth Knowles
> Labels: starter
>
> The following code:
> @StateId("foo")
> private final StateSpec<CombiningState<Integer, int[], Integer>> state =
> StateSpecs.combining(Sum.ofIntegers());
> @ProcessElement
> public void processElement(ProcessContext c,
> @StateId("foo") GroupingState<Integer, Integer> state) {
> }
> Fails with:
> parameter of type GroupingState<Integer, Integer> at index 1: reference to StateId exists with different type CombiningState<Integer, int[], Integer>
> However since GroupingState<Integer, Integer> is the base class, ideally this should work - and would make the API easier to use if it did.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)