@@ -0,0 +1,916 @@
+package com.ohnosequences.typedGraphs;%0A%0Aimport java.util.List;%0A%0A/*%0AThis class is just a convenience for retrieving node/s given an index.%0A*/%0Apublic class Retriever %7B%0A%0A  Retriever() %7B%7D;%0A  /*%0A  Given a unique index and a value of the indexed property, get the node.%0A  */%0A  public %3C%0A    N extends Node%3CN,NT%3E,%0A    NT extends Enum%3CNT%3E & NodeType%3CN,NT%3E,%0A    P extends Property%3CN,NT%3E,%0A    PT extends PropertyType%3CN,NT, P,PT, V%3E,%0A    V%0A  %3E Node%3CN,NT%3E getNodeFrom(NodeUniqueIndex%3CN,NT,P,PT,V%3E index, V value) %7B %0A%0A    return index.getNode(value); %0A  %7D%0A%0A  /*%0A  Given a list index and a value of the indexed property, get the nodes.%0A  */%0A  public %3C%0A    N extends Node%3CN,NT%3E,%0A    NT extends Enum%3CNT%3E & NodeType%3CN,NT%3E,%0A    P extends Property%3CN,NT%3E,%0A    PT extends PropertyType%3CN,NT, P,PT, V%3E,%0A    V%0A  %3E List%3C? extends Node%3CN,NT%3E%3E getNodesFrom(NodeListIndex%3CN,NT,P,PT,V%3E index, V value) %7B %0A%0A    return index.getNodes(value); %0A  %7D%0A%7D

add a generic retriever