* Process an incoming HELLO message
* @param msg Message to be processed (should not be {@code null})
*/
public void processHello(Message msg){
long now = System.currentTimeMillis();
LinkTuple existingTuple = null;
// try to find whether a link tuple has already been added for that neighbor
for (LinkTuple tuple : _linkSet){
if (tuple.getAddress().equals(msg.getOrigAddress())){
existingTuple = tuple;
break;
}
}
// if not, add a tuple
if (existingTuple == null){
existingTuple = new LinkTuple(msg.getOrigAddress());
_linkSet.add(existingTuple);
calculateDijkstra();
}
// Update expiration time of the tuple
existingTuple.setExpireTime(now + Constants.HELLO_HOLD_TIME);
}