code: private void collectVertices(final AbstractJobVertex jv, final List<AbstractJobVertex> collector) {
  
  		if (jv == null) {
  			final Iterator<AbstractJobInputVertex> iter = getInputVertices();
  			while (iter.hasNext()) {
  				collectVertices(iter.next(), collector);
  			}
  		} else {
  
  			if (!collector.contains(jv)) {
  				collector.add(jv);
  			} else {
  				return;
  			}
  
  			for (int i = 0; i < jv.getNumberOfForwardConnections(); i++) {
  				collectVertices(jv.getForwardConnection(i).getConnectedVertex(), collector);
  			}
  		}
  	}
docs: Auxiliary method to collect all vertices which are reachable from the input vertices.
  
  @param jv
  the currently considered job vertex
  @param collector
  a temporary list to store the vertices that have already been visisted