IN - the input data type.OUT - the output data type.public interface InvocationChannel<IN,OUT> extends Channel.InputChannel<IN>
Channel.InputChannel<IN>, Channel.OutputChannel<OUT>| Modifier and Type | Method and Description |
|---|---|
InvocationChannel<IN,OUT> |
after(long delay,
TimeUnit timeUnit)
Tells the channel to delay the transfer of data of the specified time duration.
Note that an abortion command will be delayed as well. |
InvocationChannel<IN,OUT> |
after(TimeDuration delay)
Tells the channel to delay the transfer of data of the specified time duration.
Note that an abortion command will be delayed as well. |
InvocationChannel<IN,OUT> |
now()
Tells the channel to not delay the transfer of data.
|
InvocationChannel<IN,OUT> |
orderByCall()
Tells the channel to sort the passed input data based on the order of the calls to the
pass methods.
|
InvocationChannel<IN,OUT> |
orderByChance()
Tells the channel to avoid sorting the passed input in any particular order.
|
InvocationChannel<IN,OUT> |
orderByDelay()
Tells the channel to sort the passed input data based on the specific delay.
Note that only the inputs passed with a 0 delay will be delivered in the same order as they are passed to the channel, while the others will be delivered as soon as the dedicated runner handles the specific execution. |
InvocationChannel<IN,OUT> |
pass(Channel.OutputChannel<? extends IN> channel)
Passes the data returned by the specified channel to this one.
|
InvocationChannel<IN,OUT> |
pass(IN... inputs)
Passes the specified input data to this channel.
|
InvocationChannel<IN,OUT> |
pass(IN input)
Passes the specified input to this channel.
|
InvocationChannel<IN,OUT> |
pass(Iterable<? extends IN> inputs)
Passes the data returned by the specified iterable to this channel.
|
Channel.OutputChannel<OUT> |
result()
Closes the input channel and returns the output one.
|
@NotNull InvocationChannel<IN,OUT> after(@NotNull TimeDuration delay)
after in interface Channel.InputChannel<IN>delay - the delay.@NotNull InvocationChannel<IN,OUT> after(long delay, @NotNull TimeUnit timeUnit)
after in interface Channel.InputChannel<IN>delay - the delay value.timeUnit - the delay time unit.@NotNull InvocationChannel<IN,OUT> now()
now in interface Channel.InputChannel<IN>@NotNull InvocationChannel<IN,OUT> orderByCall()
orderByCall in interface Channel.InputChannel<IN>Channel.InputChannel.orderByChance(),
Channel.InputChannel.orderByDelay()@NotNull InvocationChannel<IN,OUT> orderByChance()
orderByChance in interface Channel.InputChannel<IN>Channel.InputChannel.orderByCall(),
Channel.InputChannel.orderByDelay()@NotNull InvocationChannel<IN,OUT> orderByDelay()
orderByDelay in interface Channel.InputChannel<IN>Channel.InputChannel.orderByCall(),
Channel.InputChannel.orderByChance()@NotNull InvocationChannel<IN,OUT> pass(@Nullable Channel.OutputChannel<? extends IN> channel)
pass in interface Channel.InputChannel<IN>channel - the output channel.@NotNull InvocationChannel<IN,OUT> pass(@Nullable Iterable<? extends IN> inputs)
pass in interface Channel.InputChannel<IN>inputs - the iterable returning the input data.@NotNull InvocationChannel<IN,OUT> pass(@Nullable IN input)
pass in interface Channel.InputChannel<IN>input - the input.@NotNull InvocationChannel<IN,OUT> pass(@Nullable IN... inputs)
pass in interface Channel.InputChannel<IN>inputs - the input data.@NotNull Channel.OutputChannel<OUT> result()
IllegalStateException - if this method has been already called.