code: public static <N> void addIncomingEdges(DirectedGraph<N, DefaultEdge> graph, N target, Set<N> sources) {
          if (!graph.containsVertex(target)) {
              graph.addVertex(target);
          }
          for (N source : sources) {
              if (!graph.containsVertex(source)) {
                  graph.addVertex(source);
              }
              graph.addEdge(source, target);
          }
      }
docs: Add dependents on the give target vertex. Whether duplicates are created is dependent
  on the underlying {@link DirectedGraph} implementation.
  @param graph graph to be mutated
  @param target target vertex for the new edges
  @param sources source vertices for the new edges