code: public boolean isWeaklyConnected() {
  
  		final AbstractJobVertex[] reachable = getAllReachableJobVertices();
  		final AbstractJobVertex[] all = getAllJobVertices();
  
  		// Check if number if reachable vertices matches number of registered vertices
  		if (reachable.length != all.length) {
  			return false;
  		}
  
  		final HashMap<JobVertexID, AbstractJobVertex> tmp = new HashMap<JobVertexID, AbstractJobVertex>();
  		for (int i = 0; i < reachable.length; i++) {
  			tmp.put(reachable[i].getID(), reachable[i]);
  		}
  
  		// Check if all is subset of reachable
  		for (int i = 0; i < all.length; i++) {
  			if (!tmp.containsKey(all[i].getID())) {
  				return false;
  			}
  		}
  
  		// Check if reachable is a subset of all
  		for (int i = 0; i < reachable.length; i++) {
  			if (!includedInJobGraph(reachable[i].getID())) {
  				return false;
  			}
  		}
  
  		return true;
  	}
docs: Checks if the job graph is weakly connected.
  
  @return <code>true</code> if the job graph is weakly connected, otherwise <code>false</code>