[ 
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)

Reply via email to