private void followLink(StringBuilder graphText, Link link, Node nodeToFinishFollowingAt,
			List<Node> unvisitedNodes, List<Link> unfollowedLinks) {
		unfollowedLinks.remove(link);
		Node target = findNodeById(link.to);
		printNode(graphText, target, unvisitedNodes);
		List<Link> toFollow = findLinksFrom(target, false);
		printTransitions(graphText, unvisitedNodes, unfollowedLinks, toFollow, nodeToFinishFollowingAt);
		followLinks(graphText, toFollow, nodeToFinishFollowingAt, unvisitedNodes, unfollowedLinks);
	}
Walk a specified link to see if it ever hits the candidate node.

@param link points to the head of a chain of nodes
@param candidate the node possibly found on the chain of nodes
@return true if the candidate is found down the specified chain
spring-xd-dirt/src/main/java/org/springframework/xd/dirt/job/dsl/Graph.java