@Override public T getJoinBridge(Lifespan lifespan) { checkArgument(Lifespan.taskWide().equals(lifespan)); return joinBridge; }
@Override public void probeOperatorCreated(Lifespan lifespan) { checkArgument(!Lifespan.taskWide().equals(lifespan), "build operator should not produce or destroy probes"); joinLifecycle.retainForProbe(); }
@Override public void outerOperatorFactoryClosed(Lifespan lifespan) { checkArgument(Lifespan.taskWide().equals(lifespan), "join bridge is not partitioned"); joinLifecycle.releaseForOuter(); }
@Override public void probeOperatorClosed(Lifespan lifespan) { checkArgument(!Lifespan.taskWide().equals(lifespan), "build operator should not produce or destroy probes"); joinLifecycle.releaseForProbe(); }
@Override public void outerOperatorClosed(Lifespan lifespan) { checkArgument(Lifespan.taskWide().equals(lifespan), "join bridge is not partitioned"); joinLifecycle.releaseForOuter(); } }
@Override public void probeOperatorCreated(Lifespan lifespan) { checkArgument(!Lifespan.taskWide().equals(lifespan), "build operator should not produce or destroy probes"); joinLifecycle.retainForProbe(); }
@Override public void outerOperatorClosed(Lifespan lifespan) { checkArgument(Lifespan.taskWide().equals(lifespan), "join bridge is not partitioned"); joinLifecycle.releaseForOuter(); } }
@Override public void probeOperatorClosed(Lifespan lifespan) { checkArgument(!Lifespan.taskWide().equals(lifespan), "build operator should not produce or destroy probes"); joinLifecycle.releaseForProbe(); }
@Override public void probeOperatorFactoryClosed(Lifespan lifespan) { checkArgument(Lifespan.taskWide().equals(lifespan)); joinLifecycle.releaseForProbe(); }
@Override public void probeOperatorClosed(Lifespan lifespan) { checkArgument(Lifespan.taskWide().equals(lifespan)); joinLifecycle.releaseForProbe(); }
@Override public void outerOperatorCreated(Lifespan lifespan) { checkArgument(Lifespan.taskWide().equals(lifespan)); joinLifecycle.retainForOuter(); }
@Override public void outerOperatorCreated(Lifespan lifespan) { checkArgument(Lifespan.taskWide().equals(lifespan), "join bridge is not partitioned"); joinLifecycle.retainForOuter(); }
@Override public T getJoinBridge(Lifespan lifespan) { checkArgument(Lifespan.taskWide().equals(lifespan)); return joinBridge; }
@Override public void outerOperatorFactoryClosed(Lifespan lifespan) { checkArgument(Lifespan.taskWide().equals(lifespan)); joinLifecycle.releaseForOuter(); }
@Override public void outerOperatorFactoryClosed(Lifespan lifespan) { checkArgument(Lifespan.taskWide().equals(lifespan), "join bridge is not partitioned"); joinLifecycle.releaseForOuter(); }
@Override public void probeOperatorFactoryClosed(Lifespan lifespan) { checkArgument(!Lifespan.taskWide().equals(lifespan)); data(lifespan).joinLifecycle.releaseForProbe(); }
@Override public void outerOperatorCreated(Lifespan lifespan) { checkArgument(!Lifespan.taskWide().equals(lifespan)); data(lifespan).joinLifecycle.retainForOuter(); }
@Override public ListenableFuture<OuterPositionIterator> getOuterPositionsFuture(Lifespan lifespan) { checkArgument(Lifespan.taskWide().equals(lifespan), "join bridge is not partitioned"); return transform(joinLifecycle.whenBuildAndProbeFinishes(), ignored -> taskWideJoinBridge.getOuterPositionIterator(), directExecutor()); }
@Override public ListenableFuture<OuterPositionIterator> getOuterPositionsFuture(Lifespan lifespan) { checkArgument(Lifespan.taskWide().equals(lifespan)); return transform(joinLifecycle.whenBuildAndProbeFinishes(), ignored -> joinBridge.getOuterPositionIterator(), directExecutor()); }
@Override public ListenableFuture<OuterPositionIterator> getOuterPositionsFuture(Lifespan lifespan) { checkArgument(Lifespan.taskWide().equals(lifespan), "join bridge is not partitioned"); return transform(joinLifecycle.whenBuildAndProbeFinishes(), ignored -> taskWideJoinBridge.getOuterPositionIterator(), directExecutor()); }