org.terrameta:plasma-flux

A dataflow framework based on RxJava with a "Pipes and Filters" abstraction for multi-stage flows, composed of heterogeneous types and transformations of data


License
JasPer-2.0

Documentation

plasma-flux

A dataflow framework based on RxJava with a "Pipes and Filters" abstraction facilitating multi-stage flows composed of heterogeneous types and transformations of data. RxJava alone is generally sufficient for composition of simple and some complex data flows. But when heterogeneous types of data along with various transformations and filters, and multiple threading or concurrent contexts are involved, pure RxJava functional expressions become cumbersome. Such complex multi-stage data flows typcially form large "tree", network or graph structures which are often found in execution engines, such as database (physical) operator execution.

Plasma Flux is a generic framework with does not prescribe the type(s) of data which compose a flow, but facilitates composition of complex flows using a "Pipes and Filters" abstraction where verious Producer and Consumer elements are linked through "Pipe" elements.