Fix toward Bug 341.
Store the neighbor nodes in a HashMap indexed by the local Port ID
instead of a LinkedList.

This makes the output of the getTopoShortestPath() predictable
regardless where or when it is executed.

NOTE: This is NOT the root cause for this bug.
After some investigation, it seems that the DataPathSummary string
in the Flow vertexes in the Network MAP contains the correct
shortest path, but somehow the wm/flow/getsummary/ REST call
(method FlowManager::getAllFlowsWithoutFlowEntries()) returns
the old information.

The initial suspect is that we don't do conn.endTx(Transaction.COMMIT)
inside that method (so the returned IFlowPath object is valid),
but according to Pankaj this shouldn't be the root cause.
Investigation continues.

Reviewed by: Jono
1 file changed