swirl_stream (swirl v0.2.8)

View Source

Summary

Types

event/0

-type event() :: [{atom(), value()}].

flow/0

-type flow() ::
          #flow{id :: binary(),
                module :: module(),
                module_vsn :: undefined | module_vsn(),
                stream_filter :: undefined | string(),
                stream_names :: undefined | stream_names(),
                mapper_window :: undefined | pos_integer(),
                mapper_nodes :: undefined | [node()],
                mapper_opts :: mapper_opts(),
                reducer_window :: undefined | pos_integer(),
                reducer_node :: node(),
                reducer_opts :: reducer_opts(),
                reducer_skip :: undefined | boolean(),
                output_opts :: output_opts(),
                heartbeat :: undefined | pos_integer(),
                window_sync :: undefined | boolean(),
                started_at :: undefined | erlang:timestamp(),
                start_node :: node()}.

mapper_opts/0

-type mapper_opts() :: term().

module_vsn/0

-type module_vsn() :: pos_integer().

output_opts/0

-type output_opts() :: term().

reducer_opts/0

-type reducer_opts() :: term().

stream_name/0

-type stream_name() :: atom().

stream_names/0

-type stream_names() :: [stream_name()].

value/0

-type value() :: integer() | float() | binary().

Functions

emit(StreamName, Event)

-spec emit(stream_name(), event()) -> ok.

lookup(StreamName)

-spec lookup(stream_name()) -> [tuple()].

register(Flow, TableId)

-spec register(flow(), ets:tab()) -> true.

unregister(Flow)

-spec unregister(flow()) -> true.