/** * @return id of irVertex. */ String getId() { return irVertex.getId(); }
/** * @return whether or not the loop termination condition has been met. */ public Boolean loopTerminationConditionMet() { return loopTerminationConditionMet(maxNumberOfIterations); } /**
@Override public CachedSourceVertex getClone() { final CachedSourceVertex that = new CachedSourceVertex<>(this.readables); this.copyExecutionPropertiesTo(that); return that; }
/** * @param dag that contains the {@code v}. * @param v to inspect. * @return whether or not the vertex has parent with MetricCollectTransform. */ private boolean hasParentWithMetricCollectTransform(final DAG<IRVertex, IREdge> dag, final IRVertex v) { List<IRVertex> parents = dag.getParents(v.getId()); for (IRVertex parent : parents) { if (parent instanceof OperatorVertex && ((OperatorVertex) v).getTransform() instanceof MetricCollectTransform) { return true; } } return false; }
@Override public void emitWatermark(final Watermark watermark) { operatorVertex.getTransform().onWatermark(watermark); }
@Override public void emit(final O output) { nextOperatorVertex.getTransform().onData(output); }
@Override public OperatorVertex getClone() { return new OperatorVertex(this); }
/** * Retrieve communication pattern of the edge. * * @param src source vertex. * @param dst destination vertex. * @return the communication pattern. */ public static CommunicationPatternProperty.Value getEdgeCommunicationPattern(final IRVertex src, final IRVertex dst) { if (dst instanceof OperatorVertex && (((OperatorVertex) dst).getTransform() instanceof ReduceByKeyTransform || ((OperatorVertex) dst).getTransform() instanceof GroupByKeyTransform)) { return CommunicationPatternProperty.Value.Shuffle; } else { return CommunicationPatternProperty.Value.OneToOne; } }
@Override public LoopVertex getClone() { return new LoopVertex(this); }
/** * Static function to copy executionProperties from a vertex to the other. * @param thatVertex the edge to copy executionProperties to. */ public final void copyExecutionPropertiesTo(final IRVertex thatVertex) { this.getExecutionProperties().forEachProperties(thatVertex::setProperty); }
@Override public InMemorySourceVertex<T> getClone() { return new InMemorySourceVertex<>(this); }
/** * @return id of irVertex. */ String getId() { return irVertex.getId(); }
@Override public OperatorVertex getClone() { return new OperatorVertex(this); }
@Override public CachedSourceVertex getClone() { final CachedSourceVertex that = new CachedSourceVertex<>(this.readables); this.copyExecutionPropertiesTo(that); return that; }
@Override public LoopVertex getClone() { return new LoopVertex(this); }
/** * Static function to copy executionProperties from a vertex to the other. * @param thatVertex the edge to copy executionProperties to. */ public final void copyExecutionPropertiesTo(final IRVertex thatVertex) { this.getExecutionProperties().forEachProperties(thatVertex::setProperty); }
/** * @return whether or not the loop termination condition has been met. */ public Boolean loopTerminationConditionMet() { return loopTerminationConditionMet(maxNumberOfIterations); } /**
@Override public InMemorySourceVertex<T> getClone() { return new InMemorySourceVertex<>(this); }
public void setIRVertexPutOnHold(final IRVertex irVertex) { idOfVertexPutOnHold = irVertex.getId(); }
public void setIRVertexPutOnHold(final IRVertex irVertex) { idOfVertexPutOnHold = irVertex.getId(); }