Event handling

Use of @EventHandler annotation to push data into a SEP

Single event handler per class

The goal is to invoke a method on a user created node when an Eventarrow-up-right is posted to the encapsulating SEP.

The method must accept a single argument that is of type Event arrow-up-rightand be marked with @EventHandlerarrow-up-right annotation. There are no requirements on method naming, only the method signature and annotation are analysed by Fluxtion.

Fluxtion employs pattern type matching analysis to ensure the correct method dispatch occurs.

Example

The example is located herearrow-up-right. A single event type MyEvent will be dispateched to an event handler method, MyEventProcessor.handleEvent

Node class

In this example MyEventProcessor arrow-up-righthandles MyEvent. arrow-up-rightThe method is marked with the annotation @EventHandlerarrow-up-right to identify it as an event handler method to the Fluxtion compiler at generation time.

public class MyEventProcessor {
    
    @EventHandler
    public void handleEvent(MyEvent event){}
}

Generated SEP

Fluxtion ESC will generate the following SEP. The interface method onEvent discovers the runtime type (line 11) and dipatches the event to a type specific handleEvent method (line 20). The execution path is invoked in the handleEvent method.

Graph builder

The SEPConfig class that constructs the graph imperatively is shown below. Use of SEPConfig is described in imperative graph building.

Last updated

Was this helpful?