private boolean foundInChain(Link link, Node candidate) {
		String targetId = link.to;
		Node targetNode = findNodeById(targetId);
		if (targetNode == candidate) {
			return true;
		}
		// This algorithm relies on a nicely structured graph with well defined flows and splits (no weird cross links
		// across flows/splits)
		List<Link> outboundLinks = findLinksFrom(targetNode, true);
		for (Link lnk : outboundLinks) {
			if (foundInChain(lnk, candidate)) {
				return true;
			}
		}
		return false;
	}
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