public interface Block
execute method
.
Expr
.Modifier and Type | Interface and Description |
---|---|
static interface |
Block.Impl |
static interface |
Block.MultiOutImpl |
static interface |
Block.Out |
static interface |
Block.OutImpl |
Modifier and Type | Method and Description |
---|---|
static Block.Impl |
ackReturn(java.lang.Object arg)
Accumulate value according to depot source options to return with depot appends done with AckLevel.ACK
|
static Block.OutImpl |
agg(Agg agg)
Aggregates input in a
batch block to a single value. |
static Block.Impl |
agg(java.lang.String pstateVar,
Agg agg)
Update PState partition on current task with given aggregator.
|
static Block.Impl |
allPartition()
Executes subsequent code on all tasks in module
|
static Block.Impl |
allPartition(java.lang.String pobjectVar)
Executes subsequent code on all partitions of given depot or PState
|
static Block.Impl |
anchor(java.lang.String anchor)
Attaches a no-op node with the given anchor
|
static Block.Impl |
atomicBlock(Block block)
Runs subblock until it completes synchronously.
|
static Block.Impl |
batchBlock(Block batchBlock)
Specifies a batch block.
|
static Block.Impl |
branch(java.lang.String anchor,
Block block) |
static Block.OutImpl |
compoundAgg(CompoundAgg compoundAgg)
Aggregates input in a
batch block to a single value. |
static Block.Impl |
compoundAgg(java.lang.String pstateVar,
CompoundAgg compoundAgg)
Update PState partition on current task with given aggregation template.
|
static Block.Impl |
cond(Case... cases)
Evaluates condition for each
Case in order. |
static Block.Impl |
continueLoop(java.lang.Object... args)
Executes another iteration of the loop.
|
static Block.Impl |
create()
Creates an empty Block that can have additional code attached.
|
static Block.Impl |
customPartition(RamaFunction1<java.lang.Integer,java.lang.Integer> op)
Changes task to task ID specified by custom partitioner function with one argument.
|
static <T0> Block.Impl |
customPartition(RamaFunction2<java.lang.Integer,T0,java.lang.Integer> op,
java.lang.Object arg0)
Changes task to task ID specified by custom partitioner function with two arguments.
|
static <T0,T1> Block.Impl |
customPartition(RamaFunction3<java.lang.Integer,T0,T1,java.lang.Integer> op,
java.lang.Object arg0,
java.lang.Object arg1)
Changes task to task ID specified by custom partitioner function with three arguments.
|
static <T0,T1,T2> Block.Impl |
customPartition(RamaFunction4<java.lang.Integer,T0,T1,T2,java.lang.Integer> op,
java.lang.Object arg0,
java.lang.Object arg1,
java.lang.Object arg2)
Changes task to task ID specified by custom partitioner function with four arguments.
|
static <T0,T1,T2,T3> |
customPartition(RamaFunction5<java.lang.Integer,T0,T1,T2,T3,java.lang.Integer> op,
java.lang.Object arg0,
java.lang.Object arg1,
java.lang.Object arg2,
java.lang.Object arg3)
Changes task to task ID specified by custom partitioner function with five arguments.
|
static <T0,T1,T2,T3,T4> |
customPartition(RamaFunction6<java.lang.Integer,T0,T1,T2,T3,T4,java.lang.Integer> op,
java.lang.Object arg0,
java.lang.Object arg1,
java.lang.Object arg2,
java.lang.Object arg3,
java.lang.Object arg4)
Changes task to task ID specified by custom partitioner function with six arguments.
|
static <T0,T1,T2,T3,T4,T5> |
customPartition(RamaFunction7<java.lang.Integer,T0,T1,T2,T3,T4,T5,java.lang.Integer> op,
java.lang.Object arg0,
java.lang.Object arg1,
java.lang.Object arg2,
java.lang.Object arg3,
java.lang.Object arg4,
java.lang.Object arg5)
Changes task to task ID specified by custom partitioner function with seven arguments.
|
static <T0,T1,T2,T3,T4,T5,T6> |
customPartition(RamaFunction8<java.lang.Integer,T0,T1,T2,T3,T4,T5,T6,java.lang.Integer> op,
java.lang.Object arg0,
java.lang.Object arg1,
java.lang.Object arg2,
java.lang.Object arg3,
java.lang.Object arg4,
java.lang.Object arg5,
java.lang.Object arg6)
Changes task to task ID specified by custom partitioner function with eight arguments.
|
static Block.Impl |
customPartition(java.lang.String pobjectVar,
RamaFunction1<java.lang.Integer,java.lang.Integer> op)
Changes to task containing PState partition specified by custom partitioner function with one argument.
|
static <T0> Block.Impl |
customPartition(java.lang.String pobjectVar,
RamaFunction2<java.lang.Integer,T0,java.lang.Integer> op,
java.lang.Object arg0)
Changes to task containing PState partition specified by custom partitioner function with two arguments.
|
static <T0,T1> Block.Impl |
customPartition(java.lang.String pobjectVar,
RamaFunction3<java.lang.Integer,T0,T1,java.lang.Integer> op,
java.lang.Object arg0,
java.lang.Object arg1)
Changes to task containing PState partition specified by custom partitioner function with three arguments.
|
static <T0,T1,T2> Block.Impl |
customPartition(java.lang.String pobjectVar,
RamaFunction4<java.lang.Integer,T0,T1,T2,java.lang.Integer> op,
java.lang.Object arg0,
java.lang.Object arg1,
java.lang.Object arg2)
Changes to task containing PState partition specified by custom partitioner function with four arguments.
|
static <T0,T1,T2,T3> |
customPartition(java.lang.String pobjectVar,
RamaFunction5<java.lang.Integer,T0,T1,T2,T3,java.lang.Integer> op,
java.lang.Object arg0,
java.lang.Object arg1,
java.lang.Object arg2,
java.lang.Object arg3)
Changes to task containing PState partition specified by custom partitioner function with five arguments.
|
static <T0,T1,T2,T3,T4> |
customPartition(java.lang.String pobjectVar,
RamaFunction6<java.lang.Integer,T0,T1,T2,T3,T4,java.lang.Integer> op,
java.lang.Object arg0,
java.lang.Object arg1,
java.lang.Object arg2,
java.lang.Object arg3,
java.lang.Object arg4)
Changes to task containing PState partition specified by custom partitioner function with six arguments.
|
static <T0,T1,T2,T3,T4,T5> |
customPartition(java.lang.String pobjectVar,
RamaFunction7<java.lang.Integer,T0,T1,T2,T3,T4,T5,java.lang.Integer> op,
java.lang.Object arg0,
java.lang.Object arg1,
java.lang.Object arg2,
java.lang.Object arg3,
java.lang.Object arg4,
java.lang.Object arg5)
Changes to task containing PState partition specified by custom partitioner function with seven arguments.
|
static <T0,T1,T2,T3,T4,T5,T6> |
customPartition(java.lang.String pobjectVar,
RamaFunction8<java.lang.Integer,T0,T1,T2,T3,T4,T5,T6,java.lang.Integer> op,
java.lang.Object arg0,
java.lang.Object arg1,
java.lang.Object arg2,
java.lang.Object arg3,
java.lang.Object arg4,
java.lang.Object arg5,
java.lang.Object arg6)
Changes to task containing PState partition specified by custom partitioner function with eight arguments.
|
static Block.OutImpl |
depotPartitionAppend(java.lang.String depotVar,
java.lang.Object arg)
Append data to the partition of the depot represented by current task.
|
static Block.OutImpl |
depotPartitionAppend(java.lang.String depotVar,
java.lang.Object arg,
AckLevel ackLevel)
Append data to the partition of the depot represented by current task.
|
static Block.Impl |
directPartition(java.lang.Object argTaskId)
Changes to specified task ID
|
static Block.Impl |
directPartition(java.lang.String pobjectVar,
java.lang.Object argPartitionId)
Changes to specified partition of the given depot or PState
|
static <R> Block.OutImpl |
each(RamaFunction0<R> op)
Invokes a function of zero arguments.
|
static <T0,R> Block.OutImpl |
each(RamaFunction1<T0,R> op,
java.lang.Object arg0)
Invokes a function of one argument.
|
static <T0,T1,R> Block.OutImpl |
each(RamaFunction2<T0,T1,R> op,
java.lang.Object arg0,
java.lang.Object arg1)
Invokes a function of two arguments.
|
static <T0,T1,T2,R> |
each(RamaFunction3<T0,T1,T2,R> op,
java.lang.Object arg0,
java.lang.Object arg1,
java.lang.Object arg2)
Invokes a function of three arguments.
|
static <T0,T1,T2,T3,R> |
each(RamaFunction4<T0,T1,T2,T3,R> op,
java.lang.Object arg0,
java.lang.Object arg1,
java.lang.Object arg2,
java.lang.Object arg3)
Invokes a function of four arguments.
|
static <T0,T1,T2,T3,T4,R> |
each(RamaFunction5<T0,T1,T2,T3,T4,R> op,
java.lang.Object arg0,
java.lang.Object arg1,
java.lang.Object arg2,
java.lang.Object arg3,
java.lang.Object arg4)
Invokes a function of five arguments.
|
static <T0,T1,T2,T3,T4,T5,R> |
each(RamaFunction6<T0,T1,T2,T3,T4,T5,R> op,
java.lang.Object arg0,
java.lang.Object arg1,
java.lang.Object arg2,
java.lang.Object arg3,
java.lang.Object arg4,
java.lang.Object arg5)
Invokes a function of six arguments.
|
static <T0,T1,T2,T3,T4,T5,T6,R> |
each(RamaFunction7<T0,T1,T2,T3,T4,T5,T6,R> op,
java.lang.Object arg0,
java.lang.Object arg1,
java.lang.Object arg2,
java.lang.Object arg3,
java.lang.Object arg4,
java.lang.Object arg5,
java.lang.Object arg6)
Invokes a function of seven arguments.
|
static <T0,T1,T2,T3,T4,T5,T6,T7,R> |
each(RamaFunction8<T0,T1,T2,T3,T4,T5,T6,T7,R> op,
java.lang.Object arg0,
java.lang.Object arg1,
java.lang.Object arg2,
java.lang.Object arg3,
java.lang.Object arg4,
java.lang.Object arg5,
java.lang.Object arg6,
java.lang.Object arg7)
Invokes a function of eight arguments.
|
static Block.MultiOutImpl |
each(RamaOperation0 op)
Invokes an operation of zero arguments.
|
static <T0> Block.MultiOutImpl |
each(RamaOperation1<T0> op,
java.lang.Object arg0)
Invokes an operation of one argument.
|
static <T0,T1> Block.MultiOutImpl |
each(RamaOperation2<T0,T1> op,
java.lang.Object arg0,
java.lang.Object arg1)
Invokes an operation of two arguments.
|
static <T0,T1,T2> Block.MultiOutImpl |
each(RamaOperation3<T0,T1,T2> op,
java.lang.Object arg0,
java.lang.Object arg1,
java.lang.Object arg2)
Invokes an operation of three arguments.
|
static <T0,T1,T2,T3> |
each(RamaOperation4<T0,T1,T2,T3> op,
java.lang.Object arg0,
java.lang.Object arg1,
java.lang.Object arg2,
java.lang.Object arg3)
Invokes an operation of four arguments.
|
static <T0,T1,T2,T3,T4> |
each(RamaOperation5<T0,T1,T2,T3,T4> op,
java.lang.Object arg0,
java.lang.Object arg1,
java.lang.Object arg2,
java.lang.Object arg3,
java.lang.Object arg4)
Invokes an operation of five arguments.
|
static <T0,T1,T2,T3,T4,T5> |
each(RamaOperation6<T0,T1,T2,T3,T4,T5> op,
java.lang.Object arg0,
java.lang.Object arg1,
java.lang.Object arg2,
java.lang.Object arg3,
java.lang.Object arg4,
java.lang.Object arg5)
Invokes an operation of six arguments.
|
static <T0,T1,T2,T3,T4,T5,T6> |
each(RamaOperation7<T0,T1,T2,T3,T4,T5,T6> op,
java.lang.Object arg0,
java.lang.Object arg1,
java.lang.Object arg2,
java.lang.Object arg3,
java.lang.Object arg4,
java.lang.Object arg5,
java.lang.Object arg6)
Invokes an operation of seven arguments.
|
static <T0,T1,T2,T3,T4,T5,T6,T7> |
each(RamaOperation8<T0,T1,T2,T3,T4,T5,T6,T7> op,
java.lang.Object arg0,
java.lang.Object arg1,
java.lang.Object arg2,
java.lang.Object arg3,
java.lang.Object arg4,
java.lang.Object arg5,
java.lang.Object arg6,
java.lang.Object arg7)
Invokes an operation of eight arguments.
|
static Block.OutImpl |
eachAsync(RamaFunction0<java.util.concurrent.CompletableFuture> op)
Invokes a function of zero arguments that returns its result asynchronously via a returned CompletableFuture.
|
static <T0> Block.OutImpl |
eachAsync(RamaFunction1<T0,java.util.concurrent.CompletableFuture> op,
java.lang.Object arg0)
Invokes a function of one argument that returns its result asynchronously via a returned CompletableFuture.
|
static <T0,T1> Block.OutImpl |
eachAsync(RamaFunction2<T0,T1,java.util.concurrent.CompletableFuture> op,
java.lang.Object arg0,
java.lang.Object arg1)
Invokes a function of two arguments that returns its result asynchronously via a returned CompletableFuture.
|
static <T0,T1,T2> Block.OutImpl |
eachAsync(RamaFunction3<T0,T1,T2,java.util.concurrent.CompletableFuture> op,
java.lang.Object arg0,
java.lang.Object arg1,
java.lang.Object arg2)
Invokes a function of three arguments that returns its result asynchronously via a returned CompletableFuture.
|
static <T0,T1,T2,T3> |
eachAsync(RamaFunction4<T0,T1,T2,T3,java.util.concurrent.CompletableFuture> op,
java.lang.Object arg0,
java.lang.Object arg1,
java.lang.Object arg2,
java.lang.Object arg3)
Invokes a function of four arguments that returns its result asynchronously via a returned CompletableFuture.
|
static <T0,T1,T2,T3,T4> |
eachAsync(RamaFunction5<T0,T1,T2,T3,T4,java.util.concurrent.CompletableFuture> op,
java.lang.Object arg0,
java.lang.Object arg1,
java.lang.Object arg2,
java.lang.Object arg3,
java.lang.Object arg4)
Invokes a function of five arguments that returns its result asynchronously via a returned CompletableFuture.
|
static <T0,T1,T2,T3,T4,T5> |
eachAsync(RamaFunction6<T0,T1,T2,T3,T4,T5,java.util.concurrent.CompletableFuture> op,
java.lang.Object arg0,
java.lang.Object arg1,
java.lang.Object arg2,
java.lang.Object arg3,
java.lang.Object arg4,
java.lang.Object arg5)
Invokes a function of six arguments that returns its result asynchronously via a returned CompletableFuture.
|
static <T0,T1,T2,T3,T4,T5,T6> |
eachAsync(RamaFunction7<T0,T1,T2,T3,T4,T5,T6,java.util.concurrent.CompletableFuture> op,
java.lang.Object arg0,
java.lang.Object arg1,
java.lang.Object arg2,
java.lang.Object arg3,
java.lang.Object arg4,
java.lang.Object arg5,
java.lang.Object arg6)
Invokes a function of seven arguments that returns its result asynchronously via a returned CompletableFuture.
|
static <T0,T1,T2,T3,T4,T5,T6,T7> |
eachAsync(RamaFunction8<T0,T1,T2,T3,T4,T5,T6,T7,java.util.concurrent.CompletableFuture> op,
java.lang.Object arg0,
java.lang.Object arg1,
java.lang.Object arg2,
java.lang.Object arg3,
java.lang.Object arg4,
java.lang.Object arg5,
java.lang.Object arg6,
java.lang.Object arg7)
Invokes a function of eight arguments that returns its result asynchronously via a returned CompletableFuture.
|
static Block.Impl |
emitLoop(java.lang.Object... args)
Emits from a loop.
|
static Block.OutImpl |
explodeMaterialized(java.lang.String pstateVar)
Emits all tuples across all partitions of a temporary PState created from
materialize(java.lang.Object...) . |
static Block.OutImpl |
explodeMicrobatch(java.lang.String microbatchVar)
Emits all data for this microbatch source across all partitions of depot
|
static Block.Impl |
freshBatchSource()
Declares a new batch source within pre-agg portion of a
batch block |
static Block.Impl |
globalPartition()
Changes to task 0
|
static Block.Impl |
globalPartition(java.lang.String pobjectVar)
Changes to partition 0 of given depot or PState.
|
static Block.Impl |
groupBy(java.lang.String var0,
Block groupByBlock)
Groups input by one key and performs aggregations in the specified block on each group of data independently.
|
static Block.Impl |
groupBy(java.lang.String var0,
java.lang.String var1,
Block groupByBlock)
Groups input by two keys and performs aggregations in the specified block on each group of data independently.
|
static Block.Impl |
groupBy(java.lang.String var0,
java.lang.String var1,
java.lang.String var2,
Block groupByBlock)
Groups input by three keys and performs aggregations in the specified block on each group of data independently.
|
static Block.Impl |
groupBy(java.lang.String var0,
java.lang.String var1,
java.lang.String var2,
java.lang.String var3,
Block groupByBlock)
Groups input by four keys and performs aggregations in the specified block on each group of data independently.
|
static Block.Impl |
groupBy(java.lang.String var0,
java.lang.String var1,
java.lang.String var2,
java.lang.String var3,
java.lang.String var4,
Block groupByBlock)
Groups input by five keys and performs aggregations in the specified block on each group of data independently.
|
static Block.Impl |
groupBy(java.lang.String var0,
java.lang.String var1,
java.lang.String var2,
java.lang.String var3,
java.lang.String var4,
java.lang.String var5,
Block groupByBlock)
Groups input by six keys and performs aggregations in the specified block on each group of data independently.
|
static Block.Impl |
hashPartition(java.lang.Object arg)
Changes tasks based on hash of argument modulo number of tasks in module.
|
static Block.Impl |
hashPartition(java.lang.String pobjectVar,
java.lang.Object arg)
Changes tasks based on hash of argument modulo number of partitions of given depot or PState.
|
static Block.Impl |
hook(java.lang.String anchor)
Changes attachment point for subsequent code to node with given anchor
|
static Block.Impl |
ifTrue(java.lang.Object arg,
Block thenBlock)
If argument is truthy (not null or boolean false), runs the given subblock.
|
static Block.Impl |
ifTrue(java.lang.Object arg,
Block thenBlock,
Block elseBlock)
If argument is truthy (not null or boolean false), runs thenBlock.
|
static Block.OutImpl |
invokeQuery(java.lang.String queryVarOrTopologyName,
java.lang.Object... args)
Invokes a colocated or mirror query topology
|
static Block.Impl |
keepTrue(java.lang.Object arg)
Continues dataflow execution only if arg is truthy (not null or boolean false).
|
static Block.Impl |
limitAgg(LimitAgg limitAgg)
Limits incoming data to a fixed amount according to optional sort options.
|
static Block.Impl |
localClear(java.lang.String pstateVar)
Removes all data from the PState partition on current task.
|
static Block.OutImpl |
localSelect(java.lang.String pstateVar,
Path path)
Navigates into the PState partition on current task using the given
Path . |
static Block.Impl |
localTransform(java.lang.String pstateVar,
Path path)
Executes
transform Path on the PState partition on current task. |
static Block.OutImpl |
loop(Block loopBlock)
Creates a dataflow loop with the given body.
|
static Block.OutImpl |
loopWithVars(LoopVars loopVars,
Block loopBlock)
Creates a dataflow loop with the given vars and body.
|
static Block.Impl |
macro(Block block)
Inserts all code from given Block into the current callsite.
|
static Block.OutImpl |
materialize(java.lang.Object... args)
Produces a temporary PState of tuples within a batch block in a microbatch topology.
|
static Block.Impl |
originPartition()
Changes back to starting task for a query topology invocation.
|
static Block.Impl |
pathPartition(java.lang.String pstateVar,
Path path)
Changes to task for given PState containing data for given
Path |
static Block.OutImpl |
select(java.lang.Object arg,
Path path)
Changes to task for given PState containing data for given
Path and then performs
a localSelect . |
static Block.Impl |
shufflePartition()
Changes to a random task using random round-robin algorithm.
|
static Block.OutImpl |
subBatch(SubBatch subBatch)
Use specified SubBatch as a batch source in a
batch block . |
static Block.Impl |
subSource(java.lang.Object arg,
SubSource... subsources)
Conditionally dispatch code based on type of input object
|
static Block.Impl |
unify(java.lang.String anchor1,
java.lang.String anchor2,
java.lang.String... anchors)
Attaches subsequent code to each of the anchors specified, merging computation flowing out
of those nodes.
|
static Block.Impl |
yieldIfOvertime()
Yield the task thread if current event is using too much time.
|
static Block.Impl create()
Block.each(Ops.PRINTLN)
is the
same as Block.create().each(Ops.PRINTLN)
static Block.Impl anchor(java.lang.String anchor)
anchor
- Label for the nodestatic Block.Impl atomicBlock(Block block)
block
- Subblockstatic Block.Impl branch(java.lang.String anchor, Block block)
static <R> Block.OutImpl each(RamaFunction0<R> op)
Expr
.
A function always emits exactly one time. Output can be captured with a call to
out
following this node. Built-in functions and operations can be
found as static fields of the Ops class
.op
- Function to execute. Can also be specified as a lambda or method reference.static <T0,R> Block.OutImpl each(RamaFunction1<T0,R> op, java.lang.Object arg0)
Expr
.
A function always emits exactly one time. Output can be captured with a call to
out
following this node. Built-in functions and operations can be
found as static fields of the Ops class
.op
- Function to execute. Can also be specified as a lambda or method reference.static <T0,T1,R> Block.OutImpl each(RamaFunction2<T0,T1,R> op, java.lang.Object arg0, java.lang.Object arg1)
Expr
.
A function always emits exactly one time. Output can be captured with a call to
out
following this node. Built-in functions and operations can be
found as static fields of the Ops class
.op
- Function to execute. Can also be specified as a lambda or method reference.static <T0,T1,T2,R> Block.OutImpl each(RamaFunction3<T0,T1,T2,R> op, java.lang.Object arg0, java.lang.Object arg1, java.lang.Object arg2)
Expr
.
A function always emits exactly one time. Output can be captured with a call to
out
following this node. Built-in functions and operations can be
found as static fields of the Ops class
.op
- Function to execute. Can also be specified as a lambda or method reference.static <T0,T1,T2,T3,R> Block.OutImpl each(RamaFunction4<T0,T1,T2,T3,R> op, java.lang.Object arg0, java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3)
Expr
.
A function always emits exactly one time. Output can be captured with a call to
out
following this node. Built-in functions and operations can be
found as static fields of the Ops class
.op
- Function to execute. Can also be specified as a lambda or method reference.static <T0,T1,T2,T3,T4,R> Block.OutImpl each(RamaFunction5<T0,T1,T2,T3,T4,R> op, java.lang.Object arg0, java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3, java.lang.Object arg4)
Expr
.
A function always emits exactly one time. Output can be captured with a call to
out
following this node. Built-in functions and operations can be
found as static fields of the Ops class
.op
- Function to execute. Can also be specified as a lambda or method reference.static <T0,T1,T2,T3,T4,T5,R> Block.OutImpl each(RamaFunction6<T0,T1,T2,T3,T4,T5,R> op, java.lang.Object arg0, java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3, java.lang.Object arg4, java.lang.Object arg5)
Expr
.
A function always emits exactly one time. Output can be captured with a call to
out
following this node. Built-in functions and operations can be
found as static fields of the Ops class
.op
- Function to execute. Can also be specified as a lambda or method reference.static <T0,T1,T2,T3,T4,T5,T6,R> Block.OutImpl each(RamaFunction7<T0,T1,T2,T3,T4,T5,T6,R> op, java.lang.Object arg0, java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3, java.lang.Object arg4, java.lang.Object arg5, java.lang.Object arg6)
Expr
.
A function always emits exactly one time. Output can be captured with a call to
out
following this node. Built-in functions and operations can be
found as static fields of the Ops class
.op
- Function to execute. Can also be specified as a lambda or method reference.static <T0,T1,T2,T3,T4,T5,T6,T7,R> Block.OutImpl each(RamaFunction8<T0,T1,T2,T3,T4,T5,T6,T7,R> op, java.lang.Object arg0, java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3, java.lang.Object arg4, java.lang.Object arg5, java.lang.Object arg6, java.lang.Object arg7)
Expr
.
A function always emits exactly one time. Output can be captured with a call to
out
following this node. Built-in functions and operations can be
found as static fields of the Ops class
.op
- Function to execute. Can also be specified as a lambda or method reference.static Block.MultiOutImpl each(RamaOperation0 op)
Expr
.
An operation can emit any number of times to any number of output streams. Output can be captured
with calls to outStream
and
out
following this node. Built-in functions and operations
can be found as static fields of the Ops class
.op
- Operation to execute. Can also be specified as a lambda or method reference.static <T0> Block.MultiOutImpl each(RamaOperation1<T0> op, java.lang.Object arg0)
Expr
.
An operation can emit any number of times to any number of output streams. Output can be captured
with calls to outStream
and
out
following this node. Built-in functions and operations
can be found as static fields of the Ops class
.op
- Operation to execute. Can also be specified as a lambda or method reference.static <T0,T1> Block.MultiOutImpl each(RamaOperation2<T0,T1> op, java.lang.Object arg0, java.lang.Object arg1)
Expr
.
An operation can emit any number of times to any number of output streams. Output can be captured
with calls to outStream
and
out
following this node. Built-in functions and operations
can be found as static fields of the Ops class
.op
- Operation to execute. Can also be specified as a lambda or method reference.static <T0,T1,T2> Block.MultiOutImpl each(RamaOperation3<T0,T1,T2> op, java.lang.Object arg0, java.lang.Object arg1, java.lang.Object arg2)
Expr
.
An operation can emit any number of times to any number of output streams. Output can be captured
with calls to outStream
and
out
following this node. Built-in functions and operations
can be found as static fields of the Ops class
.op
- Operation to execute. Can also be specified as a lambda or method reference.static <T0,T1,T2,T3> Block.MultiOutImpl each(RamaOperation4<T0,T1,T2,T3> op, java.lang.Object arg0, java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3)
Expr
.
An operation can emit any number of times to any number of output streams. Output can be captured
with calls to outStream
and
out
following this node. Built-in functions and operations
can be found as static fields of the Ops class
.op
- Operation to execute. Can also be specified as a lambda or method reference.static <T0,T1,T2,T3,T4> Block.MultiOutImpl each(RamaOperation5<T0,T1,T2,T3,T4> op, java.lang.Object arg0, java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3, java.lang.Object arg4)
Expr
.
An operation can emit any number of times to any number of output streams. Output can be captured
with calls to outStream
and
out
following this node. Built-in functions and operations
can be found as static fields of the Ops class
.op
- Operation to execute. Can also be specified as a lambda or method reference.static <T0,T1,T2,T3,T4,T5> Block.MultiOutImpl each(RamaOperation6<T0,T1,T2,T3,T4,T5> op, java.lang.Object arg0, java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3, java.lang.Object arg4, java.lang.Object arg5)
Expr
.
An operation can emit any number of times to any number of output streams. Output can be captured
with calls to outStream
and
out
following this node. Built-in functions and operations
can be found as static fields of the Ops class
.op
- Operation to execute. Can also be specified as a lambda or method reference.static <T0,T1,T2,T3,T4,T5,T6> Block.MultiOutImpl each(RamaOperation7<T0,T1,T2,T3,T4,T5,T6> op, java.lang.Object arg0, java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3, java.lang.Object arg4, java.lang.Object arg5, java.lang.Object arg6)
Expr
.
An operation can emit any number of times to any number of output streams. Output can be captured
with calls to outStream
and
out
following this node. Built-in functions and operations
can be found as static fields of the Ops class
.op
- Operation to execute. Can also be specified as a lambda or method reference.static <T0,T1,T2,T3,T4,T5,T6,T7> Block.MultiOutImpl each(RamaOperation8<T0,T1,T2,T3,T4,T5,T6,T7> op, java.lang.Object arg0, java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3, java.lang.Object arg4, java.lang.Object arg5, java.lang.Object arg6, java.lang.Object arg7)
Expr
.
An operation can emit any number of times to any number of output streams. Output can be captured
with calls to outStream
and
out
following this node. Built-in functions and operations
can be found as static fields of the Ops class
.op
- Operation to execute. Can also be specified as a lambda or method reference.static Block.OutImpl eachAsync(RamaFunction0<java.util.concurrent.CompletableFuture> op)
Expr
.
Output can be captured with a call to
out
following this node. The var bound by out
is the value delivered to the returned CompletableFuture.op
- Function to execute. Can also be specified as a lambda or method reference.static <T0> Block.OutImpl eachAsync(RamaFunction1<T0,java.util.concurrent.CompletableFuture> op, java.lang.Object arg0)
Expr
.
Output can be captured with a call to
out
following this node. The var bound by out
is the value delivered to the returned CompletableFuture.op
- Function to execute. Can also be specified as a lambda or method reference.static <T0,T1> Block.OutImpl eachAsync(RamaFunction2<T0,T1,java.util.concurrent.CompletableFuture> op, java.lang.Object arg0, java.lang.Object arg1)
Expr
.
Output can be captured with a call to
out
following this node. The var bound by out
is the value delivered to the returned CompletableFuture.op
- Function to execute. Can also be specified as a lambda or method reference.static <T0,T1,T2> Block.OutImpl eachAsync(RamaFunction3<T0,T1,T2,java.util.concurrent.CompletableFuture> op, java.lang.Object arg0, java.lang.Object arg1, java.lang.Object arg2)
Expr
.
Output can be captured with a call to
out
following this node. The var bound by out
is the value delivered to the returned CompletableFuture.op
- Function to execute. Can also be specified as a lambda or method reference.static <T0,T1,T2,T3> Block.OutImpl eachAsync(RamaFunction4<T0,T1,T2,T3,java.util.concurrent.CompletableFuture> op, java.lang.Object arg0, java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3)
Expr
.
Output can be captured with a call to
out
following this node. The var bound by out
is the value delivered to the returned CompletableFuture.op
- Function to execute. Can also be specified as a lambda or method reference.static <T0,T1,T2,T3,T4> Block.OutImpl eachAsync(RamaFunction5<T0,T1,T2,T3,T4,java.util.concurrent.CompletableFuture> op, java.lang.Object arg0, java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3, java.lang.Object arg4)
Expr
.
Output can be captured with a call to
out
following this node. The var bound by out
is the value delivered to the returned CompletableFuture.op
- Function to execute. Can also be specified as a lambda or method reference.static <T0,T1,T2,T3,T4,T5> Block.OutImpl eachAsync(RamaFunction6<T0,T1,T2,T3,T4,T5,java.util.concurrent.CompletableFuture> op, java.lang.Object arg0, java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3, java.lang.Object arg4, java.lang.Object arg5)
Expr
.
Output can be captured with a call to
out
following this node. The var bound by out
is the value delivered to the returned CompletableFuture.op
- Function to execute. Can also be specified as a lambda or method reference.static <T0,T1,T2,T3,T4,T5,T6> Block.OutImpl eachAsync(RamaFunction7<T0,T1,T2,T3,T4,T5,T6,java.util.concurrent.CompletableFuture> op, java.lang.Object arg0, java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3, java.lang.Object arg4, java.lang.Object arg5, java.lang.Object arg6)
Expr
.
Output can be captured with a call to
out
following this node. The var bound by out
is the value delivered to the returned CompletableFuture.op
- Function to execute. Can also be specified as a lambda or method reference.static <T0,T1,T2,T3,T4,T5,T6,T7> Block.OutImpl eachAsync(RamaFunction8<T0,T1,T2,T3,T4,T5,T6,T7,java.util.concurrent.CompletableFuture> op, java.lang.Object arg0, java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3, java.lang.Object arg4, java.lang.Object arg5, java.lang.Object arg6, java.lang.Object arg7)
Expr
.
Output can be captured with a call to
out
following this node. The var bound by out
is the value delivered to the returned CompletableFuture.op
- Function to execute. Can also be specified as a lambda or method reference.static Block.Impl customPartition(RamaFunction1<java.lang.Integer,java.lang.Integer> op)
op
- Custom partitioner function. Can also be specified as a lambda or method reference.static <T0> Block.Impl customPartition(RamaFunction2<java.lang.Integer,T0,java.lang.Integer> op, java.lang.Object arg0)
op
- Custom partitioner function. Can also be specified as a lambda or method reference.static <T0,T1> Block.Impl customPartition(RamaFunction3<java.lang.Integer,T0,T1,java.lang.Integer> op, java.lang.Object arg0, java.lang.Object arg1)
op
- Custom partitioner function. Can also be specified as a lambda or method reference.static <T0,T1,T2> Block.Impl customPartition(RamaFunction4<java.lang.Integer,T0,T1,T2,java.lang.Integer> op, java.lang.Object arg0, java.lang.Object arg1, java.lang.Object arg2)
op
- Custom partitioner function. Can also be specified as a lambda or method reference.static <T0,T1,T2,T3> Block.Impl customPartition(RamaFunction5<java.lang.Integer,T0,T1,T2,T3,java.lang.Integer> op, java.lang.Object arg0, java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3)
op
- Custom partitioner function. Can also be specified as a lambda or method reference.static <T0,T1,T2,T3,T4> Block.Impl customPartition(RamaFunction6<java.lang.Integer,T0,T1,T2,T3,T4,java.lang.Integer> op, java.lang.Object arg0, java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3, java.lang.Object arg4)
op
- Custom partitioner function. Can also be specified as a lambda or method reference.static <T0,T1,T2,T3,T4,T5> Block.Impl customPartition(RamaFunction7<java.lang.Integer,T0,T1,T2,T3,T4,T5,java.lang.Integer> op, java.lang.Object arg0, java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3, java.lang.Object arg4, java.lang.Object arg5)
op
- Custom partitioner function. Can also be specified as a lambda or method reference.static <T0,T1,T2,T3,T4,T5,T6> Block.Impl customPartition(RamaFunction8<java.lang.Integer,T0,T1,T2,T3,T4,T5,T6,java.lang.Integer> op, java.lang.Object arg0, java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3, java.lang.Object arg4, java.lang.Object arg5, java.lang.Object arg6)
op
- Custom partitioner function. Can also be specified as a lambda or method reference.static Block.Impl customPartition(java.lang.String pobjectVar, RamaFunction1<java.lang.Integer,java.lang.Integer> op)
op
- Custom partitioner function. Can also be specified as a lambda or method reference.static <T0> Block.Impl customPartition(java.lang.String pobjectVar, RamaFunction2<java.lang.Integer,T0,java.lang.Integer> op, java.lang.Object arg0)
op
- Custom partitioner function. Can also be specified as a lambda or method reference.static <T0,T1> Block.Impl customPartition(java.lang.String pobjectVar, RamaFunction3<java.lang.Integer,T0,T1,java.lang.Integer> op, java.lang.Object arg0, java.lang.Object arg1)
op
- Custom partitioner function. Can also be specified as a lambda or method reference.static <T0,T1,T2> Block.Impl customPartition(java.lang.String pobjectVar, RamaFunction4<java.lang.Integer,T0,T1,T2,java.lang.Integer> op, java.lang.Object arg0, java.lang.Object arg1, java.lang.Object arg2)
op
- Custom partitioner function. Can also be specified as a lambda or method reference.static <T0,T1,T2,T3> Block.Impl customPartition(java.lang.String pobjectVar, RamaFunction5<java.lang.Integer,T0,T1,T2,T3,java.lang.Integer> op, java.lang.Object arg0, java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3)
op
- Custom partitioner function. Can also be specified as a lambda or method reference.static <T0,T1,T2,T3,T4> Block.Impl customPartition(java.lang.String pobjectVar, RamaFunction6<java.lang.Integer,T0,T1,T2,T3,T4,java.lang.Integer> op, java.lang.Object arg0, java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3, java.lang.Object arg4)
op
- Custom partitioner function. Can also be specified as a lambda or method reference.static <T0,T1,T2,T3,T4,T5> Block.Impl customPartition(java.lang.String pobjectVar, RamaFunction7<java.lang.Integer,T0,T1,T2,T3,T4,T5,java.lang.Integer> op, java.lang.Object arg0, java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3, java.lang.Object arg4, java.lang.Object arg5)
op
- Custom partitioner function. Can also be specified as a lambda or method reference.static <T0,T1,T2,T3,T4,T5,T6> Block.Impl customPartition(java.lang.String pobjectVar, RamaFunction8<java.lang.Integer,T0,T1,T2,T3,T4,T5,T6,java.lang.Integer> op, java.lang.Object arg0, java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3, java.lang.Object arg4, java.lang.Object arg5, java.lang.Object arg6)
op
- Custom partitioner function. Can also be specified as a lambda or method reference.static Block.Impl groupBy(java.lang.String var0, Block groupByBlock)
batchBlock
. Emits into postagg the vars for keys
and results of aggregations.groupByBlock
- Block containing aggregation codestatic Block.Impl groupBy(java.lang.String var0, java.lang.String var1, Block groupByBlock)
batchBlock
. Emits into postagg the vars for keys
and results of aggregations.groupByBlock
- Block containing aggregation codestatic Block.Impl groupBy(java.lang.String var0, java.lang.String var1, java.lang.String var2, Block groupByBlock)
batchBlock
. Emits into postagg the vars for keys
and results of aggregations.groupByBlock
- Block containing aggregation codestatic Block.Impl groupBy(java.lang.String var0, java.lang.String var1, java.lang.String var2, java.lang.String var3, Block groupByBlock)
batchBlock
. Emits into postagg the vars for keys
and results of aggregations.groupByBlock
- Block containing aggregation codestatic Block.Impl groupBy(java.lang.String var0, java.lang.String var1, java.lang.String var2, java.lang.String var3, java.lang.String var4, Block groupByBlock)
batchBlock
. Emits into postagg the vars for keys
and results of aggregations.groupByBlock
- Block containing aggregation codestatic Block.Impl groupBy(java.lang.String var0, java.lang.String var1, java.lang.String var2, java.lang.String var3, java.lang.String var4, java.lang.String var5, Block groupByBlock)
batchBlock
. Emits into postagg the vars for keys
and results of aggregations.groupByBlock
- Block containing aggregation codestatic Block.Impl hook(java.lang.String anchor)
anchor
- Label of node to attach tostatic Block.Impl ifTrue(java.lang.Object arg, Block thenBlock)
arg
- Value, var, or Expr
to test for truthiness (not null or boolean false). Common to use an
Expr
here.thenBlock
- Subblock run if condition passesstatic Block.Impl ifTrue(java.lang.Object arg, Block thenBlock, Block elseBlock)
arg
- Value, var, or Expr
to test for truthiness (not null or boolean false). Common to
use an Expr
here.thenBlock
- Subblock run if condition passeselseBlock
- Subblock run if condition does not passstatic Block.Impl keepTrue(java.lang.Object arg)
arg
- Value, var, or Expr
static Block.Impl unify(java.lang.String anchor1, java.lang.String anchor2, java.lang.String... anchors)
static Block.OutImpl loop(Block loopBlock)
emitLoop
is used
to emit from the loop, and continueLoop
is used to execute
the loop body again. A loop call can be optionally followed by a call to
out
to capture any output emitted as vars.loopBlock
- Body of the loopstatic Block.OutImpl loopWithVars(LoopVars loopVars, Block loopBlock)
emitLoop
is
used to emit from the loop, and continueLoop
is used to execute
the loop body again. The vars are given initial values and updated with each call to
continueLoop
. A loopWithVars call can be optionally followed by
a call to out
to capture any output emitted as vars.loopVars
- Declaration of vars for each iteration of looploopBlock
- Body of the loopstatic Block.Impl continueLoop(java.lang.Object... args)
loop
or
loopWithVars
. When used with
loopWithVars
, must provide as input values for all loop vars for the
next loop iteration.args
- Values for loop vars for next iteration of loopstatic Block.Impl emitLoop(java.lang.Object... args)
loop
or
loopWithVars
. This is only way for code following
loop
or loopWithVars
to execute.args
- Values to emitstatic Block.OutImpl select(java.lang.Object arg, Path path)
Path
and then performs
a localSelect
. PState reference can be colocated PState or
mirror PState.
Code after select stays on new task and does not go back to original task.arg
- PState or object to query. Only changes tasks if PState var.path
- Path definitionstatic Block.OutImpl localSelect(java.lang.String pstateVar, Path path)
Path
.
Emits once for every value navigated to. Use out
to capture emits
into subsequent dataflow code.pstateVar
- PState to querypath
- Path definitionstatic Block.Impl localTransform(java.lang.String pstateVar, Path path)
transform Path
on the PState partition on current task.pstateVar
- PState to modifypath
- Path definitionstatic Block.Impl localClear(java.lang.String pstateVar)
pstateVar
- PState to clearstatic Block.Impl hashPartition(java.lang.Object arg)
arg
- Value, var, or Expr
static Block.Impl hashPartition(java.lang.String pobjectVar, java.lang.Object arg)
pobjectVar
- Depot or PState referencearg
- Value, var, or Expr
static Block.Impl allPartition()
static Block.Impl allPartition(java.lang.String pobjectVar)
pobjectVar
- Depot or PState referencestatic Block.Impl globalPartition()
static Block.Impl globalPartition(java.lang.String pobjectVar)
pobjectVar
- Depot or PState referencestatic Block.Impl shufflePartition()
static Block.Impl directPartition(java.lang.Object argTaskId)
argTaskId
- Value, var, or Expr
static Block.Impl directPartition(java.lang.String pobjectVar, java.lang.Object argPartitionId)
pobjectVar
- Depot or PState referenceargPartitionId
- Value, var, or Expr
static Block.Impl pathPartition(java.lang.String pstateVar, Path path)
Path
pstateVar
- PState referencepath
- Path definitionstatic Block.Impl originPartition()
static Block.OutImpl agg(Agg agg)
batch block
to a single value.
Capture output with out
.agg
- Aggregator to usestatic Block.Impl agg(java.lang.String pstateVar, Agg agg)
pstateVar
- PState referenceagg
- Aggregator to usestatic Block.Impl limitAgg(LimitAgg limitAgg)
limitAgg
- Definition of aggregatorstatic Block.OutImpl compoundAgg(CompoundAgg compoundAgg)
batch block
to a single value.
Aggregation specified using a data structure template. Capture output with out
.compoundAgg
- Data structure template of aggregationstatic Block.Impl compoundAgg(java.lang.String pstateVar, CompoundAgg compoundAgg)
pstateVar
- PState referencecompoundAgg
- Data structure template of aggregationstatic Block.Impl batchBlock(Block batchBlock)
batchBlock
- Body of batch blockstatic Block.Impl freshBatchSource()
batch block
static Block.OutImpl materialize(java.lang.Object... args)
out
call to name the PState.args
- Values to capture into tuplesstatic Block.OutImpl explodeMaterialized(java.lang.String pstateVar)
materialize(java.lang.Object...)
.
Use subsequent out
call to assign vars to each element of materialized tuples.pstateVar
- Temporary PState referencestatic Block.OutImpl explodeMicrobatch(java.lang.String microbatchVar)
microbatchVar
- Var representing microbatch coming from depot sourcestatic Block.OutImpl invokeQuery(java.lang.String queryVarOrTopologyName, java.lang.Object... args)
queryVarOrTopologyName
- Either the name of a query topology in same module or var for another
module's query topology assigned when calling clusterQuery
args
- Arguments to query topologystatic Block.OutImpl depotPartitionAppend(java.lang.String depotVar, java.lang.Object arg, AckLevel ackLevel)
depotVar
- Depot referencearg
- Value, var, or Expr
ackLevel
- AckLevel
static Block.OutImpl depotPartitionAppend(java.lang.String depotVar, java.lang.Object arg)
depotVar
- Depot referencearg
- Value, var, or Expr
static Block.OutImpl subBatch(SubBatch subBatch)
batch block
.
Capture output of SubBatch into vars using subsequent out
call.static Block.Impl macro(Block block)
block
- Dataflow codestatic Block.Impl subSource(java.lang.Object arg, SubSource... subsources)
arg
- Object to dispatch onsubsources
- Any number of declarations specifying a matching type and dataflow codestatic Block.Impl cond(Case... cases)
Case
in order. Stops checking on first matching condition and evaluates that case's dataflow code. If no condition matches, dataflow stops.cases
- Any number of Case
declarationsstatic Block.Impl yieldIfOvertime()
static Block.Impl ackReturn(java.lang.Object arg)
arg
- Value to accumulate