From abb2ff0e1ad82f23e48e8a412bce8ff014422181 Mon Sep 17 00:00:00 2001 From: Srinivasan Ramasubramanian <srini@bigswitch.com> Date: Thu, 9 Aug 2012 21:52:30 -0700 Subject: [PATCH] Always recompute topology upon link updates. --- .../topology/TopologyManager.java | 19 +++++-------------- 1 file changed, 5 insertions(+), 14 deletions(-) diff --git a/src/main/java/net/floodlightcontroller/topology/TopologyManager.java b/src/main/java/net/floodlightcontroller/topology/TopologyManager.java index c261a23a3..aa46c60d4 100644 --- a/src/main/java/net/floodlightcontroller/topology/TopologyManager.java +++ b/src/main/java/net/floodlightcontroller/topology/TopologyManager.java @@ -106,11 +106,8 @@ public class TopologyManager implements @Override public void run() { try { - boolean recomputeFlag = false; - recomputeFlag = applyUpdates(); - if (recomputeFlag) { - createNewInstance(); - } + applyUpdates(); + createNewInstance(); lastUpdateTime = new Date(); informListeners(); } @@ -798,9 +795,8 @@ public class TopologyManager implements } - public boolean applyUpdates() { + public void applyUpdates() { - boolean topologyRecomputeRequired = false; appliedUpdates.clear(); LDUpdate update = null; while (ldUpdates.peek() != null) { @@ -816,23 +812,18 @@ public class TopologyManager implements addOrUpdateLink(update.getSrc(), update.getSrcPort(), update.getDst(), update.getDstPort(), update.getType()); - topologyRecomputeRequired = true; } else if (update.getOperation() == UpdateOperation.LINK_REMOVED){ removeLink(update.getSrc(), update.getSrcPort(), update.getDst(), update.getDstPort()); - topologyRecomputeRequired = true; } else if (update.getOperation() == UpdateOperation.SWITCH_REMOVED) { - topologyRecomputeRequired = removeSwitch(update.getSrc()); + removeSwitch(update.getSrc()); } else if (update.getOperation() == UpdateOperation.PORT_DOWN) { - topologyRecomputeRequired = removeSwitchPort(update.getSrc(), - update.getSrcPort()); + removeSwitchPort(update.getSrc(), update.getSrcPort()); } // Add to the list of applied updates. appliedUpdates.add(update); } - - return topologyRecomputeRequired; } /** -- GitLab