this.key = key; this.timerInternals = timerInternals; this.paneInfoTracker = new PaneInfoTracker(timerInternals); this.stateInternals = stateInternals; this.outputter = outputter;
private void prefetchOnTrigger( final ReduceFn<K, InputT, OutputT, W>.Context directContext, ReduceFn<K, InputT, OutputT, W>.Context renamedContext) { paneInfoTracker.prefetchPaneInfo(directContext); watermarkHold.prefetchExtract(renamedContext); nonEmptyPanes.isEmpty(renamedContext.state()).readLater(); reduceFn.prefetchOnTrigger(directContext.state()); }
final PaneInfo pane = paneInfoTracker.getNextPaneInfo(directContext, isFinished).read(); paneInfoTracker.storeCurrentPaneInfo(directContext, pane);
paneInfoTracker.clear(directContext.state()); } else {
paneInfoTracker.clear(directContext.state()); activeWindows.remove(directContext.window());