/** * Equivalent to {@code andThen("andThen", consumer)}. * @see #andThen(String, Consumer2) */ default Tuple2Task<T1, T2> andThen(final Consumer2<T1, T2> consumer) { return cast(andThen("andThen: " + _taskDescriptor.getDescription(consumer.getClass().getName()), tuple -> consumer.accept(tuple._1(), tuple._2()))); }
@Test public void testPar2AndThenDsc() { AtomicInteger value = new AtomicInteger(); Task<?> task = Task.par(Task.value(1), Task.value(2)).andThen("test", (a, b) -> value.set(a + b)); runAndWait("TestTaskFactoryMethods.testPar2AndThenDsc", task); assertEquals(value.get(), 1 + 2); assertEquals(countTasks(task.getTrace()), 2 + 1 + 2); }
@Test public void testPar2AndThen() { AtomicInteger value = new AtomicInteger(); Task<?> task = Task.par(Task.value(1), Task.value(2)).andThen((a, b) -> value.set(a + b)); runAndWait("TestTaskFactoryMethods.testPar2AndThen", task); assertEquals(value.get(), 1 + 2); assertEquals(countTasks(task.getTrace()), 2 + 1 + 2); }
return cast(andThen(desc, tuple -> consumer.accept(tuple._1(), tuple._2())));
/** * Equivalent to {@code andThen("andThen", consumer)}. * @see #andThen(String, Consumer2) */ default Tuple2Task<T1, T2> andThen(final Consumer2<T1, T2> consumer) { return cast(andThen("andThen: " + _taskDescriptor.getDescription(consumer.getClass().getName()), tuple -> consumer.accept(tuple._1(), tuple._2()))); }
return cast(andThen(desc, tuple -> consumer.accept(tuple._1(), tuple._2())));