diff --git a/src/main/java/net/onrc/onos/core/topology/SwitchImpl.java b/src/main/java/net/onrc/onos/core/topology/SwitchImpl.java
index 3fe053c..1e5e1e2 100644
--- a/src/main/java/net/onrc/onos/core/topology/SwitchImpl.java
+++ b/src/main/java/net/onrc/onos/core/topology/SwitchImpl.java
@@ -99,7 +99,7 @@
     @Override
     public Iterable<Link> getOutgoingLinks() {
         LinkedList<Link> links = new LinkedList<Link>();
-        for (Port port : getPorts()) {
+        for (Port port : ports.values()) {
             Link link = port.getOutgoingLink();
             if (link != null) {
                 links.add(link);
@@ -111,7 +111,7 @@
     @Override
     public Iterable<Link> getIncomingLinks() {
         LinkedList<Link> links = new LinkedList<Link>();
-        for (Port port : getPorts()) {
+        for (Port port : ports.values()) {
             Link link = port.getIncomingLink();
             if (link != null) {
                 links.add(link);
