Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Ability to control flow from programmable transforms #1942

Open
binarylogic opened this issue Feb 26, 2020 · 1 comment
Open

Ability to control flow from programmable transforms #1942

binarylogic opened this issue Feb 26, 2020 · 1 comment
Labels
have: nice This feature is nice to have. It is low priority. meta: idea Anything in the idea phase. Needs further discussion and consensus before work can begin. needs: approval Needs review & approval before work can begin. needs: requirements Needs a a list of requirements before work can be begin transform: lua Anything `lua` transform related type: enhancement A value-adding code change that enhances its existing functionality.

Comments

@binarylogic
Copy link
Contributor

binarylogic commented Feb 26, 2020

Something that would be very powerful would be the ability to dynamically define channels from programmable transforms. This would unblock complex control flow logic. For example:

[transforms.control_flow]
  type = "lua"
  source = """
if ... then
  emit(event, 'lane1')
else
  emit(event, 'lane2')
end

This would produce named outputs, similar to the swimlanes transform that could then be connected downstream:

[sinks.first]
  inputs = ["control_flow.lane1"]

[sinks.second]
  inputs = ["control_flow.lane2"]
@binarylogic binarylogic added type: enhancement A value-adding code change that enhances its existing functionality. meta: idea Anything in the idea phase. Needs further discussion and consensus before work can begin. transform: lua Anything `lua` transform related needs: approval Needs review & approval before work can begin. needs: requirements Needs a a list of requirements before work can be begin labels Feb 26, 2020
@ghost ghost self-assigned this Feb 28, 2020
@binarylogic
Copy link
Contributor Author

@a-rodin I'm unassigning you and deferring this issue for later. While I think this is cool feature users can use the new swimlanes transforms to achieve this. And if the conditions in that transform are not enough, a workaround is to add a field as a flag and use that in a downstream swimlanes transform.

@binarylogic binarylogic unassigned ghost Apr 15, 2020
@binarylogic binarylogic added the have: nice This feature is nice to have. It is low priority. label Apr 18, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
have: nice This feature is nice to have. It is low priority. meta: idea Anything in the idea phase. Needs further discussion and consensus before work can begin. needs: approval Needs review & approval before work can begin. needs: requirements Needs a a list of requirements before work can be begin transform: lua Anything `lua` transform related type: enhancement A value-adding code change that enhances its existing functionality.
Projects
None yet
Development

No branches or pull requests

1 participant