From 80d5081750a0c0e7b5a1e62a54306cb9be741611 Mon Sep 17 00:00:00 2001
From: Srinivasan Ramasubramanian <srini@bigswitch.com>
Date: Sat, 11 Aug 2012 12:00:42 -0700
Subject: [PATCH] Update the ILinkDiscovery service method to include link and
 linkinfo to get the link type.

---
 .../linkdiscovery/ILinkDiscoveryService.java          |  2 +-
 .../linkdiscovery/internal/LinkDiscoveryManager.java  | 11 -----------
 .../linkdiscovery/web/LinksResource.java              |  2 +-
 3 files changed, 2 insertions(+), 13 deletions(-)

diff --git a/src/main/java/net/floodlightcontroller/linkdiscovery/ILinkDiscoveryService.java b/src/main/java/net/floodlightcontroller/linkdiscovery/ILinkDiscoveryService.java
index 3e43b6c52..c4421acfc 100644
--- a/src/main/java/net/floodlightcontroller/linkdiscovery/ILinkDiscoveryService.java
+++ b/src/main/java/net/floodlightcontroller/linkdiscovery/ILinkDiscoveryService.java
@@ -37,7 +37,7 @@ public interface ILinkDiscoveryService extends IFloodlightService {
      * @param info
      * @return
      */
-    public ILinkDiscovery.LinkType getLinkType(LinkInfo info);
+    public ILinkDiscovery.LinkType getLinkType(Link lt, LinkInfo info);
 
     /**
      * Returns an unmodifiable map from switch id to a set of all links with it 
diff --git a/src/main/java/net/floodlightcontroller/linkdiscovery/internal/LinkDiscoveryManager.java b/src/main/java/net/floodlightcontroller/linkdiscovery/internal/LinkDiscoveryManager.java
index 18a5fd7d2..b818e8f7b 100644
--- a/src/main/java/net/floodlightcontroller/linkdiscovery/internal/LinkDiscoveryManager.java
+++ b/src/main/java/net/floodlightcontroller/linkdiscovery/internal/LinkDiscoveryManager.java
@@ -740,17 +740,6 @@ IFloodlightModule, IInfoProvider, IHAListener {
         else return UpdateOperation.PORT_DOWN;
     }
 
-    @Override
-    public LinkType getLinkType(LinkInfo info) {
-
-        if (info.getUnicastValidTime() != null)
-            return LinkType.DIRECT_LINK;
-        else if (info.getMulticastValidTime() != null)
-            return LinkType.MULTIHOP_LINK;
-
-        return LinkType.INVALID_LINK;
-    }
-
     protected boolean addOrUpdateLink(Link lt, LinkInfo newInfo) {
 
         NodePortTuple srcNpt, dstNpt;
diff --git a/src/main/java/net/floodlightcontroller/linkdiscovery/web/LinksResource.java b/src/main/java/net/floodlightcontroller/linkdiscovery/web/LinksResource.java
index 8fe1ff046..1c44848b9 100644
--- a/src/main/java/net/floodlightcontroller/linkdiscovery/web/LinksResource.java
+++ b/src/main/java/net/floodlightcontroller/linkdiscovery/web/LinksResource.java
@@ -25,7 +25,7 @@ public class LinksResource extends ServerResource {
             links.putAll(ld.getLinks());
             for (Link link: links.keySet()) {
                 LinkInfo info = links.get(link);
-                LinkWithType lwt = new LinkWithType(link, ld.getLinkType(info));
+                LinkWithType lwt = new LinkWithType(link, ld.getLinkType(link, info));
                 returnLinkSet.add(lwt);
             }
         }
-- 
GitLab