[
https://issues.apache.org/jira/browse/BEAM-765?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16048645#comment-16048645
]
Kenneth Knowles commented on BEAM-765:
--------------------------------------
The reason for this ticket is that these classes are separate only because of
legacy reasons. For users of Beam, {{OnceTrigger}} and {{Trigger}} are separate
because so the type system ensures that {{OnceTrigger}} only fires once, while
{{Trigger}} might fire more than once. But for the backend that is just running
the state machine, it does not really matter. So {{OnceTriggerStateMachine}}
can be removed and everything that extends it can instead extend
{{TriggerStateMachine}}.
> TriggerStateMachine does not need to be separate from OnceTriggerStateMachine
> -----------------------------------------------------------------------------
>
> Key: BEAM-765
> URL: https://issues.apache.org/jira/browse/BEAM-765
> Project: Beam
> Issue Type: Improvement
> Components: runner-core
> Reporter: Kenneth Knowles
> Assignee: Innocent
> Priority: Trivial
>
> In runners-core, the state machine implementation of triggers does not need
> to have the fine-grained type-like enforcement of whether a trigger is a
> {{OnceTrigger}} or not. It may simplify the code.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)