Documentation ¶
Index ¶
- func RegisterBuiltinNodeTypes()
- func RegisterBuiltinSourceTypes()
- type Executor
- func (e *Executor) Execute()
- func (e *Executor) FindNodeByID(id string) *node.Context
- func (e *Executor) GetSource() *node.Source
- func (e *Executor) InitMessaging(c config.Config) error
- func (e *Executor) SendMessage(msg message.Message) error
- func (e *Executor) Shutdown() (done chan struct{})
- func (e *Executor) StartMessaging()
- type NoOpMessageReceiver
- type Opt
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func RegisterBuiltinNodeTypes ¶
func RegisterBuiltinNodeTypes()
RegisterBuiltinNodeTypes initializes the node registry with all built-in node types
func RegisterBuiltinSourceTypes ¶
func RegisterBuiltinSourceTypes()
RegisterBuiltinSourceTypes initializes the node registry with all built-in source types
Types ¶
type Executor ¶
type Executor struct {
// contains filtered or unexported fields
}
Executor is the main processing engine in firebolt. It starts your data `source`, and pipes the data from that source through the configured processing `nodes`. The executor is responsible for _managing_ the source and the nodes, the nodes are responsible for _performing_ the application's data processing stages.
func (*Executor) Execute ¶
func (e *Executor) Execute()
Execute starts processing based on your application's source and node configuration. This call will block forever while the application runs, unless an unrecoverable error is encountered or the source exits.
func (*Executor) FindNodeByID ¶
FindNodeByID finds the node with the specified ID, or returns 'nil' if no node is configured with that ID.
func (*Executor) InitMessaging ¶
InitMessaging should set up the configured messaging transport, and it MUST ensure that the executor's fbcontext is set, but it MUST NOT actually start receiving messages
func (*Executor) SendMessage ¶
SendMessage broadcasts the passed message to all nodes that are subscribed to the MessageType.
func (*Executor) Shutdown ¶
func (e *Executor) Shutdown() (done chan struct{})
Shutdown stops the source and allows the nodes to finish processing before the Execute() call returns
func (*Executor) StartMessaging ¶
func (e *Executor) StartMessaging()
StartMessaging runs the message receiver and blocks until any pending / non-ack'd messages have been processed.
type NoOpMessageReceiver ¶
type NoOpMessageReceiver struct { }
NoOpMessageReceiver is a message receiver that does, well, nothing
func (*NoOpMessageReceiver) Initialized ¶
func (n *NoOpMessageReceiver) Initialized() bool
Initialized is a no-op
func (*NoOpMessageReceiver) SetNotificationFunc ¶
func (n *NoOpMessageReceiver) SetNotificationFunc(notifier message.NotificationFunc)
SetNotificationFunc is a no-op
type Opt ¶
Opt is an option type that can be passed to New to tell it how to set up the returned *Executor
func WithConfig ¶
WithConfig is an Opt that sets up an Executor with c
func WithConfigFile ¶
WithConfigFile is an option type that parses a config file and sets up an Executor with the file.