In addition to Splitting implemented via issue #35, there is a need for Combining/Merging at least Inputs. A use-case is within the Smart Emission Project: here we need to collect (harvest) data from multiple remote HTTP REST APIs, see smartemission/smartemission#61.
This could be implemented by allowing an Input to collect from multiple HTTP endpoints, but this would require specific implementations for each Input type.
Basic idea is to use the notation also used for Splitting via issue #35, for example to merge two inputs input1 and input2 into single filter and output, the following Chain would be defined:
(input1)(input2) | filter | output
This would be the most common use-case. Additional cases could be applied with sub-Chaining, for example:
(input1 | filter1) (input2 | filter2) | filter | output
Dependent on the ease of implementation, the latter cases may be included or else be deferred to a separate issue.
In addition to Splitting implemented via issue #35, there is a need for Combining/Merging at least
Inputs. A use-case is within the Smart Emission Project: here we need to collect (harvest) data from multiple remote HTTP REST APIs, see smartemission/smartemission#61.This could be implemented by allowing an
Inputto collect from multiple HTTP endpoints, but this would require specific implementations for eachInputtype.Basic idea is to use the notation also used for Splitting via issue #35, for example to merge two inputs
input1andinput2into singlefilterandoutput, the followingChainwould be defined:This would be the most common use-case. Additional cases could be applied with sub-Chaining, for example:
Dependent on the ease of implementation, the latter cases may be included or else be deferred to a separate issue.