@groovy.util.logging.Slf4j @groovy.transform.CompileStatic class JoinByOp extends java.lang.Object
Joins two channels by closure-extracted keys. This operator implements join logic similar to Nextflow's join operator, but uses closures to dynamically extract the join key from each item instead of requiring tuple indices. Supports: - Different key extractors for left and right channels - Cartesian product for duplicate keys - Remainder option for outer join (emit unmatched items with null partner)
| Constructor and description |
|---|
JoinByOp(groovyx.gpars.dataflow.DataflowReadChannel left, groovyx.gpars.dataflow.DataflowReadChannel right, groovy.lang.Closure leftKeyExtractor, groovy.lang.Closure rightKeyExtractor, java.util.Map opts)Create a new JoinByOp operator. |
JoinByOp(groovyx.gpars.dataflow.DataflowReadChannel left, groovyx.gpars.dataflow.DataflowReadChannel right, groovy.lang.Closure leftKeyExtractor, groovy.lang.Closure rightKeyExtractor) |
JoinByOp(groovyx.gpars.dataflow.DataflowReadChannel left, groovyx.gpars.dataflow.DataflowReadChannel right, groovy.lang.Closure keyExtractor, java.util.Map opts) |
JoinByOp(groovyx.gpars.dataflow.DataflowReadChannel left, groovyx.gpars.dataflow.DataflowReadChannel right, groovy.lang.Closure keyExtractor) |
| Type Params | Return Type | Name and description |
|---|---|---|
|
groovyx.gpars.dataflow.DataflowWriteChannel |
apply()Apply the join operator. |
| Methods inherited from class | Name |
|---|---|
class java.lang.Object |
java.lang.Object#equals(java.lang.Object), java.lang.Object#toString(), java.lang.Object#hashCode(), java.lang.Object#getClass(), java.lang.Object#notify(), java.lang.Object#notifyAll(), java.lang.Object#wait(long), java.lang.Object#wait(long, int), java.lang.Object#wait() |
Create a new JoinByOp operator.
left - The left input channelright - The right input channelleftKeyExtractor - Closure that extracts the join key from left itemsrightKeyExtractor - Closure that extracts the join key from right itemsopts - Optional configuration (remainder for outer join)