cells

module
v0.0.0-...-1a1bb61 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 30, 2022 License: BSD-3-Clause

README

Tideland Go Cells

GitHub release GitHub license Go Module GoDoc Workflow Go Report Card

Description

Tideland Go Cells provides a light-weight event-processing. It is realized as a mesh of cells which can subsribe to each other. One cell can subscribe to multiple cells as well as multiple cells can subscribe to one cell. Each cell runs an individual developed and/or configured behavior with an own state.

I hope you like it. ;)

Behaviors

The project already contains some standard behaviors, the number is still growing.

  • Aggregator aggregates events and emits each aggregated value.
  • Broadcaster simply emits received events to all subscribers.
  • Callback calls a number of passed functions for each received event.
  • Collector collects events which can be processed on demand.
  • Combo waits for a user-defined combination of events.
  • Condition tests events for conditions using a tester function and calls a processor then.
  • Countdown counts a number of events down to zero and executes an event returning function. The event will be emitted then.
  • Counter counts events, the counters can be retrieved.
  • Evaluator evaluates events based on a user-defined function which returns a rating.
  • Filter re-emits received events based on a user-defined filter. Those can be including or excluding.
  • Mapper allows to analyse events and map them into new one for emitting.
  • One-Time processes a user defined function only once for the first event, it will never called again. Outgoing events can be emitted during processing.
  • Pairer allows to define a criterion for a first and second evend and a timeout between those. Matches and timouts will be emitted.
  • Rate Evaluator measures times between a number of criterion fitting events and emits statistical data about these fittings.
  • Rate Window Evaluator checks if a number of events in a given timespan matches a given criterion. In case it processes them.

Contributors

Directories

Path Synopsis
behaviors
Package mesh is the runtime package of the Tideland cells event processing.
Package mesh is the runtime package of the Tideland cells event processing.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL