View Source Skitter.BIS.PassiveSource (Skitter v0.5.3)

Strategy for reactive source components.

This strategy can be used to create a source component. It is designed for components that send data into the workflow as a response to incoming data.

When the component is deployed, the strategy will spawn a single worker and call the component's subscribe callback with the arguments provided in the workflow. This callback should ensure that messages are sent to the worker in response to external events. Any time a message is sent to the worker, the strategy will call the process callback of the component, the component should emit a (list of) data elements based on the received message.

The strategy ensures that process is called on a random worker node, to evenly distribute the incoming data over the cluster.

Component Properties

  • in ports: none
  • out ports: This strategy places no limitations on the out ports of the component.
  • callbacks:
    • subscribe (required): Called at deployment time with the workflow arguments. This callback should ensure the worker receives messages in response to event.
    • process (required): Called for each received message. This callback should emit the list of received data to its out port to push them into the workflow.