You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Metafora consumers may want to accept commands from sources other than their coordinator such as:
Signals
Builtin HTTP handler
RPC for cluster management
There's really no reason why the Coordinator has to be the only way to receive commands, so there's 2 approaches for accepting commands from:
Create a Consumer#Command(cmd Command) error API that submits a command via the cmdChan (or is it safe to just call Consumer#handleCommand directly?).
Create a separate Commander interface from the Coordinator interface and provide an adapter to multiplex multiple commander interfaces together to support commands from multiple sources.
The first option is easier for users, but the second option is more flexible.
Workaround
In the mean time metafora apps can simply submit commands to their coordinators for the consumer to pick up. This is a senseless roundtrip whose only benefits are the simplicity of a single code path for command processing.
The text was updated successfully, but these errors were encountered:
Metafora consumers may want to accept commands from sources other than their coordinator such as:
There's really no reason why the Coordinator has to be the only way to receive commands, so there's 2 approaches for accepting commands from:
Consumer#Command(cmd Command) error
API that submits a command via the cmdChan (or is it safe to just callConsumer#handleCommand
directly?).Commander
interface from theCoordinator
interface and provide an adapter to multiplex multiple commander interfaces together to support commands from multiple sources.The first option is easier for users, but the second option is more flexible.
Workaround
In the mean time metafora apps can simply submit commands to their coordinators for the consumer to pick up. This is a senseless roundtrip whose only benefits are the simplicity of a single code path for command processing.
The text was updated successfully, but these errors were encountered: