private Set getVertexGroupToDelete()

in common/src/main/java/org/apache/nemo/common/ir/IRDAG.java [195:214]


  private Set<IRVertex> getVertexGroupToDelete(final IRVertex vertexToDelete) {
    if (vertexToDelete instanceof RelayVertex) {
      return Sets.newHashSet(vertexToDelete);
    } else if (vertexToDelete instanceof SamplingVertex) {
      final Set<SamplingVertex> samplingVertexGroup = samplingVertexToGroup.get(vertexToDelete);
      final Set<IRVertex> converted = new HashSet<>(samplingVertexGroup.size());
      for (final IRVertex sv : samplingVertexGroup) {
        converted.add(sv); // explicit conversion to IRVertex is needed.. otherwise the compiler complains :(
      }
      return converted;
    } else if (vertexToDelete instanceof MessageAggregatorVertex || vertexToDelete instanceof MessageGeneratorVertex) {
      return messageVertexToGroup.get(vertexToDelete);
    } else if (vertexToDelete instanceof SignalVertex) {
      return Sets.newHashSet(vertexToDelete);
    } else if (vertexToDelete instanceof TaskSizeSplitterVertex) {
      return Sets.newHashSet(vertexToDelete);
    } else {
      throw new IllegalArgumentException(vertexToDelete.getId());
    }
  }