{
//==== Iterate through all the nodes in this graph
Iterator items = this.getRadialGraph().getDataGraph().nodes();
while(items.hasNext())
{
Node node = (Node)items.next();
//=== If it is a focus node, check its citation list for new papers
if(node.getString("refType").equals("FOCUS"))
{
String bibcode = node.getString("bibcode");
int focusKey = node.getInt("DEFAULT_NODE_KEY");
SecondaryResults newNodes = executeSecondaryQuery(bibcode, "cit", focusKey, this.getRadialGraph().getDataGraph().getNodeTable());
//=== Take the new nodes, and their associated edges, and add them into the graph
for(int i=0; i<newNodes.getGraph().getNodeCount(); i++)
{
int key = newNodes.getGraph().getNodeTable().getInt(i, "DEFAULT_NODE_KEY");
Node addMe = newNodes.getGraph().getNodeFromKey(key);
this.getRadialGraph().getDataGraph().getNodes().addTuple(addMe);
Iterator edgeIt = newNodes.getGraph().edges();
while(edgeIt.hasNext())
{
Edge edge = (Edge)edgeIt.next();
if(edge.getInt("source") == addMe.getInt("DEFAULT_NODE_KEY"))
{
this.getRadialGraph().getDataGraph().addEdge(edge.getInt("source"), edge.getInt("target"));
}
}
}