final UnaryFunction valueExtractor = reduceStateByKey.getValueExtractor();
final UnaryFunction valueExtractor = reduceStateByKey.getValueExtractor();
final UnaryFunction valueExtractor = operator.getValueExtractor(); final Windowing windowing = operator.getWindowing() == null ? AttachedWindowing.INSTANCE
final UnaryFunction udfValue = origOperator.getValueExtractor();
@Test public void testBuild() { Flow flow = Flow.create("TEST"); Dataset<String> dataset = Util.createMockDataset(flow, 2); Time<String> windowing = Time.of(Duration.ofHours(1)); Dataset<Pair<String, Long>> reduced = ReduceStateByKey.named("ReduceStateByKey1") .of(dataset) .keyBy(s -> s) .valueBy(s -> 1L) .stateFactory(WordCountState::new) .mergeStatesBy(WordCountState::combine) .windowBy(windowing) .output(); assertEquals(flow, reduced.getFlow()); assertEquals(1, flow.size()); ReduceStateByKey reduce = (ReduceStateByKey) flow.operators().iterator().next(); assertEquals(flow, reduce.getFlow()); assertEquals("ReduceStateByKey1", reduce.getName()); assertNotNull(reduce.getKeyExtractor()); assertNotNull(reduce.getValueExtractor()); assertNotNull(reduce.getStateMerger()); assertNotNull(reduce.getStateFactory()); assertEquals(reduced, reduce.output()); assertSame(windowing, reduce.getWindowing()); }
final UnaryFunction valueExtractor = origOperator.getValueExtractor();