test_class.declarator: ldm
test_class.modifier: private
test_class.original_string: private TestLinkDiscoveryManager ldm;
test_class.type: TestLinkDiscoveryManager
test_class.var_name: ldm
test_class.declarator: log = LoggerFactory.getLogger(LinkDiscoveryManagerTest.class)
test_class.modifier: protected static
test_class.original_string: protected static Logger log = LoggerFactory.getLogger(LinkDiscoveryManagerTest.class);
test_class.type: Logger
test_class.var_name: log
test_class.file: src/agents/apps/floodlight/floodlight-1.0/src/test/java/net/floodlightcontroller/linkdiscovery/internal/LinkDiscoveryManagerTest.java
test_class.identifier: LinkDiscoveryManagerTest
test_class.superclass: extends FloodlightTestCase
test_case.body: @Test
      public void testDeleteLink() throws Exception {
          LinkDiscoveryManager linkDiscovery = getLinkDiscoveryManager();
  
          Link lt = new Link(DatapathId.of(1L), OFPort.of(2), DatapathId.of(2L), OFPort.of(1));
          LinkInfo info = new LinkInfo(new Date(),
          		new Date(), null);
          linkDiscovery.addOrUpdateLink(lt, info);
          linkDiscovery.deleteLinks(Collections.singletonList(lt), "Test");
  
          // check invariants hold
          assertNull(linkDiscovery.switchLinks.get(lt.getSrc()));
          assertNull(linkDiscovery.switchLinks.get(lt.getDst()));
          assertNull(linkDiscovery.portLinks.get(lt.getSrc()));
          assertNull(linkDiscovery.portLinks.get(lt.getDst()));
          assertTrue(linkDiscovery.links.isEmpty());
      }
test_case.class_method_signature: LinkDiscoveryManagerTest.testDeleteLink()
test_case.full_signature: @Test public void testDeleteLink()
test_case.identifier: testDeleteLink
test_case.invocations: getLinkDiscoveryManager of of of of addOrUpdateLink deleteLinks singletonList assertNull get getSrc assertNull get getDst assertNull get getSrc assertNull get getDst assertTrue isEmpty
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void testDeleteLink()
focal_class.declarator: log = LoggerFactory.getLogger(LinkDiscoveryManager.class)
focal_class.modifier: protected static final
focal_class.original_string: protected static final Logger log = LoggerFactory.getLogger(LinkDiscoveryManager.class);
focal_class.type: Logger
focal_class.var_name: log
focal_class.declarator: notifier =
  			NotificationManagerFactory.getNotificationManager(LinkDiscoveryManager.class)
focal_class.modifier: protected static final
focal_class.original_string: protected static final INotificationManager notifier =
  			NotificationManagerFactory.getNotificationManager(LinkDiscoveryManager.class);
focal_class.type: INotificationManager
focal_class.var_name: notifier
focal_class.declarator: MODULE_NAME = "linkdiscovery"
focal_class.modifier: public static final
focal_class.original_string: public static final String MODULE_NAME = "linkdiscovery";
focal_class.type: String
focal_class.var_name: MODULE_NAME
focal_class.declarator: TOPOLOGY_TABLE_NAME = "controller_topologyconfig"
focal_class.modifier: private static final
focal_class.original_string: private static final String TOPOLOGY_TABLE_NAME = "controller_topologyconfig";
focal_class.type: String
focal_class.var_name: TOPOLOGY_TABLE_NAME
focal_class.declarator: TOPOLOGY_ID = "id"
focal_class.modifier: private static final
focal_class.original_string: private static final String TOPOLOGY_ID = "id";
focal_class.type: String
focal_class.var_name: TOPOLOGY_ID
focal_class.declarator: TOPOLOGY_AUTOPORTFAST = "autoportfast"
focal_class.modifier: private static final
focal_class.original_string: private static final String TOPOLOGY_AUTOPORTFAST = "autoportfast";
focal_class.type: String
focal_class.var_name: TOPOLOGY_AUTOPORTFAST
focal_class.declarator: LINK_TABLE_NAME = "controller_link"
focal_class.modifier: private static final
focal_class.original_string: private static final String LINK_TABLE_NAME = "controller_link";
focal_class.type: String
focal_class.var_name: LINK_TABLE_NAME
focal_class.declarator: LINK_ID = "id"
focal_class.modifier: private static final
focal_class.original_string: private static final String LINK_ID = "id";
focal_class.type: String
focal_class.var_name: LINK_ID
focal_class.declarator: LINK_SRC_SWITCH = "src_switch_id"
focal_class.modifier: private static final
focal_class.original_string: private static final String LINK_SRC_SWITCH = "src_switch_id";
focal_class.type: String
focal_class.var_name: LINK_SRC_SWITCH
focal_class.declarator: LINK_SRC_PORT = "src_port"
focal_class.modifier: private static final
focal_class.original_string: private static final String LINK_SRC_PORT = "src_port";
focal_class.type: String
focal_class.var_name: LINK_SRC_PORT
focal_class.declarator: LINK_DST_SWITCH = "dst_switch_id"
focal_class.modifier: private static final
focal_class.original_string: private static final String LINK_DST_SWITCH = "dst_switch_id";
focal_class.type: String
focal_class.var_name: LINK_DST_SWITCH
focal_class.declarator: LINK_DST_PORT = "dst_port"
focal_class.modifier: private static final
focal_class.original_string: private static final String LINK_DST_PORT = "dst_port";
focal_class.type: String
focal_class.var_name: LINK_DST_PORT
focal_class.declarator: LINK_VALID_TIME = "valid_time"
focal_class.modifier: private static final
focal_class.original_string: private static final String LINK_VALID_TIME = "valid_time";
focal_class.type: String
focal_class.var_name: LINK_VALID_TIME
focal_class.declarator: LINK_TYPE = "link_type"
focal_class.modifier: private static final
focal_class.original_string: private static final String LINK_TYPE = "link_type";
focal_class.type: String
focal_class.var_name: LINK_TYPE
focal_class.declarator: SWITCH_CONFIG_TABLE_NAME = "controller_switchconfig"
focal_class.modifier: private static final
focal_class.original_string: private static final String SWITCH_CONFIG_TABLE_NAME = "controller_switchconfig";
focal_class.type: String
focal_class.var_name: SWITCH_CONFIG_TABLE_NAME
focal_class.declarator: eventCategory
focal_class.modifier: protected
focal_class.original_string: protected IEventCategory<DirectLinkEvent> eventCategory;
focal_class.type: IEventCategory<DirectLinkEvent>
focal_class.var_name: eventCategory
focal_class.declarator: floodlightProviderService
focal_class.modifier: protected
focal_class.original_string: protected IFloodlightProviderService floodlightProviderService;
focal_class.type: IFloodlightProviderService
focal_class.var_name: floodlightProviderService
focal_class.declarator: switchService
focal_class.modifier: protected
focal_class.original_string: protected IOFSwitchService switchService;
focal_class.type: IOFSwitchService
focal_class.var_name: switchService
focal_class.declarator: storageSourceService
focal_class.modifier: protected
focal_class.original_string: protected IStorageSourceService storageSourceService;
focal_class.type: IStorageSourceService
focal_class.var_name: storageSourceService
focal_class.declarator: threadPoolService
focal_class.modifier: protected
focal_class.original_string: protected IThreadPoolService threadPoolService;
focal_class.type: IThreadPoolService
focal_class.var_name: threadPoolService
focal_class.declarator: restApiService
focal_class.modifier: protected
focal_class.original_string: protected IRestApiService restApiService;
focal_class.type: IRestApiService
focal_class.var_name: restApiService
focal_class.declarator: debugCounterService
focal_class.modifier: protected
focal_class.original_string: protected IDebugCounterService debugCounterService;
focal_class.type: IDebugCounterService
focal_class.var_name: debugCounterService
focal_class.declarator: debugEventService
focal_class.modifier: protected
focal_class.original_string: protected IDebugEventService debugEventService;
focal_class.type: IDebugEventService
focal_class.var_name: debugEventService
focal_class.declarator: shutdownService
focal_class.modifier: protected
focal_class.original_string: protected IShutdownService shutdownService;
focal_class.type: IShutdownService
focal_class.var_name: shutdownService
focal_class.declarator: role
focal_class.modifier: protected
focal_class.original_string: protected HARole role;
focal_class.type: HARole
focal_class.var_name: role
focal_class.declarator: LLDP_STANDARD_DST_MAC_STRING =
  			HexString.fromHexString("01:80:c2:00:00:0e")
focal_class.modifier: private static final
focal_class.original_string: private static final byte[] LLDP_STANDARD_DST_MAC_STRING =
  			HexString.fromHexString("01:80:c2:00:00:0e");
focal_class.type: byte[]
focal_class.var_name: LLDP_STANDARD_DST_MAC_STRING
focal_class.declarator: LINK_LOCAL_MASK = 0xfffffffffff0L
focal_class.modifier: private static final
focal_class.original_string: private static final long LINK_LOCAL_MASK = 0xfffffffffff0L;
focal_class.type: long
focal_class.var_name: LINK_LOCAL_MASK
focal_class.declarator: LINK_LOCAL_VALUE = 0x0180c2000000L
focal_class.modifier: private static final
focal_class.original_string: private static final long LINK_LOCAL_VALUE = 0x0180c2000000L;
focal_class.type: long
focal_class.var_name: LINK_LOCAL_VALUE
focal_class.declarator: EVENT_HISTORY_SIZE = 1024
focal_class.modifier: protected static
focal_class.original_string: protected static int EVENT_HISTORY_SIZE = 1024;
focal_class.type: int
focal_class.var_name: EVENT_HISTORY_SIZE
focal_class.declarator: LLDP_BSN_DST_MAC_STRING = "ff:ff:ff:ff:ff:ff"
focal_class.modifier: private static final
focal_class.original_string: private static final String LLDP_BSN_DST_MAC_STRING = "ff:ff:ff:ff:ff:ff";
focal_class.type: String
focal_class.var_name: LLDP_BSN_DST_MAC_STRING
focal_class.declarator: TLV_DIRECTION_TYPE = 0x73
focal_class.modifier: private static final
focal_class.original_string: private static final byte TLV_DIRECTION_TYPE = 0x73;
focal_class.type: byte
focal_class.var_name: TLV_DIRECTION_TYPE
focal_class.declarator: TLV_DIRECTION_LENGTH = 1
focal_class.modifier: private static final
focal_class.original_string: private static final short TLV_DIRECTION_LENGTH = 1;
focal_class.type: short
focal_class.var_name: TLV_DIRECTION_LENGTH
focal_class.declarator: TLV_DIRECTION_VALUE_FORWARD[] = { 0x01 }
focal_class.modifier: private static final
focal_class.original_string: private static final byte TLV_DIRECTION_VALUE_FORWARD[] = { 0x01 };
focal_class.type: byte
focal_class.var_name: TLV_DIRECTION_VALUE_FORWARD
focal_class.declarator: TLV_DIRECTION_VALUE_REVERSE[] = { 0x02 }
focal_class.modifier: private static final
focal_class.original_string: private static final byte TLV_DIRECTION_VALUE_REVERSE[] = { 0x02 };
focal_class.type: byte
focal_class.var_name: TLV_DIRECTION_VALUE_REVERSE
focal_class.declarator: forwardTLV = new LLDPTLV().setType(TLV_DIRECTION_TYPE)
  			.setLength(TLV_DIRECTION_LENGTH)
  			.setValue(TLV_DIRECTION_VALUE_FORWARD)
focal_class.modifier: private static final
focal_class.original_string: private static final LLDPTLV forwardTLV = new LLDPTLV().setType(TLV_DIRECTION_TYPE)
  			.setLength(TLV_DIRECTION_LENGTH)
  			.setValue(TLV_DIRECTION_VALUE_FORWARD);
focal_class.type: LLDPTLV
focal_class.var_name: forwardTLV
focal_class.declarator: reverseTLV = new LLDPTLV().setType(TLV_DIRECTION_TYPE)
  			.setLength(TLV_DIRECTION_LENGTH)
  			.setValue(TLV_DIRECTION_VALUE_REVERSE)
focal_class.modifier: private static final
focal_class.original_string: private static final LLDPTLV reverseTLV = new LLDPTLV().setType(TLV_DIRECTION_TYPE)
  			.setLength(TLV_DIRECTION_LENGTH)
  			.setValue(TLV_DIRECTION_VALUE_REVERSE);
focal_class.type: LLDPTLV
focal_class.var_name: reverseTLV
focal_class.declarator: discoveryTask
focal_class.modifier: protected
focal_class.original_string: protected SingletonTask discoveryTask;
focal_class.type: SingletonTask
focal_class.var_name: discoveryTask
focal_class.declarator: DISCOVERY_TASK_INTERVAL = 1
focal_class.modifier: protected final
focal_class.original_string: protected final int DISCOVERY_TASK_INTERVAL = 1;
focal_class.type: int
focal_class.var_name: DISCOVERY_TASK_INTERVAL
focal_class.declarator: LINK_TIMEOUT = 35
focal_class.modifier: protected final
focal_class.original_string: protected final int LINK_TIMEOUT = 35;
focal_class.type: int
focal_class.var_name: LINK_TIMEOUT
focal_class.declarator: LLDP_TO_ALL_INTERVAL = 15
focal_class.modifier: protected final
focal_class.original_string: protected final int LLDP_TO_ALL_INTERVAL = 15;
focal_class.type: int
focal_class.var_name: LLDP_TO_ALL_INTERVAL
focal_class.declarator: lldpClock = 0
focal_class.modifier: protected
focal_class.original_string: protected long lldpClock = 0;
focal_class.type: long
focal_class.var_name: lldpClock
focal_class.declarator: LLDP_TO_KNOWN_INTERVAL = 20
focal_class.modifier: protected final
focal_class.original_string: protected final int LLDP_TO_KNOWN_INTERVAL = 20;
focal_class.type: int
focal_class.var_name: LLDP_TO_KNOWN_INTERVAL
focal_class.declarator: controllerTLV
focal_class.modifier: protected
focal_class.original_string: protected LLDPTLV controllerTLV;
focal_class.type: LLDPTLV
focal_class.var_name: controllerTLV
focal_class.declarator: lock
focal_class.modifier: protected
focal_class.original_string: protected ReentrantReadWriteLock lock;
focal_class.type: ReentrantReadWriteLock
focal_class.var_name: lock
focal_class.declarator: lldpTimeCount = 0
focal_class.original_string: int lldpTimeCount = 0;
focal_class.type: int
focal_class.var_name: lldpTimeCount
focal_class.declarator: AUTOPORTFAST_DEFAULT = false
focal_class.modifier: protected
focal_class.original_string: protected boolean AUTOPORTFAST_DEFAULT = false;
focal_class.type: boolean
focal_class.var_name: AUTOPORTFAST_DEFAULT
focal_class.declarator: autoPortFastFeature = AUTOPORTFAST_DEFAULT
focal_class.modifier: protected
focal_class.original_string: protected boolean autoPortFastFeature = AUTOPORTFAST_DEFAULT;
focal_class.type: boolean
focal_class.var_name: autoPortFastFeature
focal_class.declarator: links
focal_class.modifier: protected
focal_class.original_string: protected Map<Link, LinkInfo> links;
focal_class.type: Map<Link, LinkInfo>
focal_class.var_name: links
focal_class.declarator: switchLinks
focal_class.modifier: protected
focal_class.original_string: protected Map<DatapathId, Set<Link>> switchLinks;
focal_class.type: Map<DatapathId, Set<Link>>
focal_class.var_name: switchLinks
focal_class.declarator: portLinks
focal_class.modifier: protected
focal_class.original_string: protected Map<NodePortTuple, Set<Link>> portLinks;
focal_class.type: Map<NodePortTuple, Set<Link>>
focal_class.var_name: portLinks
focal_class.declarator: shuttingDown = false
focal_class.modifier: protected volatile
focal_class.original_string: protected volatile boolean shuttingDown = false;
focal_class.type: boolean
focal_class.var_name: shuttingDown
focal_class.declarator: linkDiscoveryAware
focal_class.modifier: protected
focal_class.original_string: protected ArrayList<ILinkDiscoveryListener> linkDiscoveryAware;
focal_class.type: ArrayList<ILinkDiscoveryListener>
focal_class.var_name: linkDiscoveryAware
focal_class.declarator: updates
focal_class.modifier: protected
focal_class.original_string: protected BlockingQueue<LDUpdate> updates;
focal_class.type: BlockingQueue<LDUpdate>
focal_class.var_name: updates
focal_class.declarator: updatesThread
focal_class.modifier: protected
focal_class.original_string: protected Thread updatesThread;
focal_class.type: Thread
focal_class.var_name: updatesThread
focal_class.declarator: suppressLinkDiscovery
focal_class.modifier: protected
focal_class.original_string: protected Set<NodePortTuple> suppressLinkDiscovery;
focal_class.type: Set<NodePortTuple>
focal_class.var_name: suppressLinkDiscovery
focal_class.declarator: quarantineQueue
focal_class.modifier: protected
focal_class.original_string: protected LinkedBlockingQueue<NodePortTuple> quarantineQueue;
focal_class.type: LinkedBlockingQueue<NodePortTuple>
focal_class.var_name: quarantineQueue
focal_class.declarator: maintenanceQueue
focal_class.modifier: protected
focal_class.original_string: protected LinkedBlockingQueue<NodePortTuple> maintenanceQueue;
focal_class.type: LinkedBlockingQueue<NodePortTuple>
focal_class.var_name: maintenanceQueue
focal_class.declarator: toRemoveFromQuarantineQueue
focal_class.modifier: protected
focal_class.original_string: protected LinkedBlockingQueue<NodePortTuple> toRemoveFromQuarantineQueue;
focal_class.type: LinkedBlockingQueue<NodePortTuple>
focal_class.var_name: toRemoveFromQuarantineQueue
focal_class.declarator: toRemoveFromMaintenanceQueue
focal_class.modifier: protected
focal_class.original_string: protected LinkedBlockingQueue<NodePortTuple> toRemoveFromMaintenanceQueue;
focal_class.type: LinkedBlockingQueue<NodePortTuple>
focal_class.var_name: toRemoveFromMaintenanceQueue
focal_class.declarator: bddpTask
focal_class.modifier: protected
focal_class.original_string: protected SingletonTask bddpTask;
focal_class.type: SingletonTask
focal_class.var_name: bddpTask
focal_class.declarator: BDDP_TASK_INTERVAL = 100
focal_class.modifier: protected final
focal_class.original_string: protected final int BDDP_TASK_INTERVAL = 100;
focal_class.type: int
focal_class.var_name: BDDP_TASK_INTERVAL
focal_class.declarator: BDDP_TASK_SIZE = 10
focal_class.modifier: protected final
focal_class.original_string: protected final int BDDP_TASK_SIZE = 10;
focal_class.type: int
focal_class.var_name: BDDP_TASK_SIZE
focal_class.declarator: ignoreMACSet
focal_class.modifier: protected
focal_class.original_string: protected Set<MACRange> ignoreMACSet;
focal_class.type: Set<MACRange>
focal_class.var_name: ignoreMACSet
focal_class.declarator: haListener
focal_class.modifier: private
focal_class.original_string: private IHAListener haListener;
focal_class.type: IHAListener
focal_class.var_name: haListener
focal_class.declarator: ctrQuarantineDrops
focal_class.modifier: private
focal_class.original_string: private IDebugCounter ctrQuarantineDrops;
focal_class.type: IDebugCounter
focal_class.var_name: ctrQuarantineDrops
focal_class.declarator: ctrIgnoreSrcMacDrops
focal_class.modifier: private
focal_class.original_string: private IDebugCounter ctrIgnoreSrcMacDrops;
focal_class.type: IDebugCounter
focal_class.var_name: ctrIgnoreSrcMacDrops
focal_class.declarator: ctrIncoming
focal_class.modifier: private
focal_class.original_string: private IDebugCounter ctrIncoming;
focal_class.type: IDebugCounter
focal_class.var_name: ctrIncoming
focal_class.declarator: ctrLinkLocalDrops
focal_class.modifier: private
focal_class.original_string: private IDebugCounter ctrLinkLocalDrops;
focal_class.type: IDebugCounter
focal_class.var_name: ctrLinkLocalDrops
focal_class.declarator: ctrLldpEol
focal_class.modifier: private
focal_class.original_string: private IDebugCounter ctrLldpEol;
focal_class.type: IDebugCounter
focal_class.var_name: ctrLldpEol
focal_class.declarator: PACKAGE = LinkDiscoveryManager.class.getPackage().getName()
focal_class.modifier: private final
focal_class.original_string: private final String PACKAGE = LinkDiscoveryManager.class.getPackage().getName();
focal_class.type: String
focal_class.var_name: PACKAGE
focal_class.file: src/agents/apps/floodlight/floodlight-1.0/src/main/java/net/floodlightcontroller/linkdiscovery/internal/LinkDiscoveryManager.java
focal_class.identifier: LinkDiscoveryManager
focal_class.interfaces: implements IOFMessageListener,
  IOFSwitchListener, IStorageSourceListener, ILinkDiscoveryService,
  IFloodlightModule, IInfoProvider
focal_class.class_method_signature: LinkDiscoveryManager.generateLLDPMessage(DatapathId sw, OFPort port,
  			boolean isStandard, boolean isReverse)
focal_class.full_signature: @Override public OFPacketOut generateLLDPMessage(DatapathId sw, OFPort port,
  			boolean isStandard, boolean isReverse)
focal_class.identifier: generateLLDPMessage
focal_class.modifiers: @Override public
focal_class.parameters: (DatapathId sw, OFPort port,
  			boolean isStandard, boolean isReverse)
focal_class.return: OFPacketOut
focal_class.signature: OFPacketOut generateLLDPMessage(DatapathId sw, OFPort port,
  			boolean isStandard, boolean isReverse)
focal_class.class_method_signature: LinkDiscoveryManager.getLldpFrequency()
focal_class.full_signature: public int getLldpFrequency()
focal_class.identifier: getLldpFrequency
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: int
focal_class.signature: int getLldpFrequency()
focal_class.class_method_signature: LinkDiscoveryManager.getLldpTimeout()
focal_class.full_signature: public int getLldpTimeout()
focal_class.identifier: getLldpTimeout
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: int
focal_class.signature: int getLldpTimeout()
focal_class.class_method_signature: LinkDiscoveryManager.getPortLinks()
focal_class.full_signature: @Override public Map<NodePortTuple, Set<Link>> getPortLinks()
focal_class.identifier: getPortLinks
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: Map<NodePortTuple, Set<Link>>
focal_class.signature: Map<NodePortTuple, Set<Link>> getPortLinks()
focal_class.class_method_signature: LinkDiscoveryManager.getSuppressLLDPsInfo()
focal_class.full_signature: @Override public Set<NodePortTuple> getSuppressLLDPsInfo()
focal_class.identifier: getSuppressLLDPsInfo
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: Set<NodePortTuple>
focal_class.signature: Set<NodePortTuple> getSuppressLLDPsInfo()
focal_class.class_method_signature: LinkDiscoveryManager.AddToSuppressLLDPs(DatapathId sw, OFPort port)
focal_class.full_signature: @Override public void AddToSuppressLLDPs(DatapathId sw, OFPort port)
focal_class.identifier: AddToSuppressLLDPs
focal_class.modifiers: @Override public
focal_class.parameters: (DatapathId sw, OFPort port)
focal_class.return: void
focal_class.signature: void AddToSuppressLLDPs(DatapathId sw, OFPort port)
focal_class.class_method_signature: LinkDiscoveryManager.RemoveFromSuppressLLDPs(DatapathId sw, OFPort port)
focal_class.full_signature: @Override public void RemoveFromSuppressLLDPs(DatapathId sw, OFPort port)
focal_class.identifier: RemoveFromSuppressLLDPs
focal_class.modifiers: @Override public
focal_class.parameters: (DatapathId sw, OFPort port)
focal_class.return: void
focal_class.signature: void RemoveFromSuppressLLDPs(DatapathId sw, OFPort port)
focal_class.class_method_signature: LinkDiscoveryManager.isShuttingDown()
focal_class.full_signature: public boolean isShuttingDown()
focal_class.identifier: isShuttingDown
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: boolean
focal_class.signature: boolean isShuttingDown()
focal_class.class_method_signature: LinkDiscoveryManager.isTunnelPort(DatapathId sw, OFPort port)
focal_class.full_signature: @Override public boolean isTunnelPort(DatapathId sw, OFPort port)
focal_class.identifier: isTunnelPort
focal_class.modifiers: @Override public
focal_class.parameters: (DatapathId sw, OFPort port)
focal_class.return: boolean
focal_class.signature: boolean isTunnelPort(DatapathId sw, OFPort port)
focal_class.class_method_signature: LinkDiscoveryManager.getLinkType(Link lt, LinkInfo info)
focal_class.full_signature: @Override public ILinkDiscovery.LinkType getLinkType(Link lt, LinkInfo info)
focal_class.identifier: getLinkType
focal_class.modifiers: @Override public
focal_class.parameters: (Link lt, LinkInfo info)
focal_class.return: ILinkDiscovery.LinkType
focal_class.signature: ILinkDiscovery.LinkType getLinkType(Link lt, LinkInfo info)
focal_class.class_method_signature: LinkDiscoveryManager.getQuarantinedPorts(DatapathId sw)
focal_class.full_signature: @Override public Set<OFPort> getQuarantinedPorts(DatapathId sw)
focal_class.identifier: getQuarantinedPorts
focal_class.modifiers: @Override public
focal_class.parameters: (DatapathId sw)
focal_class.return: Set<OFPort>
focal_class.signature: Set<OFPort> getQuarantinedPorts(DatapathId sw)
focal_class.class_method_signature: LinkDiscoveryManager.getSwitchLinks()
focal_class.full_signature: @Override public Map<DatapathId, Set<Link>> getSwitchLinks()
focal_class.identifier: getSwitchLinks
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: Map<DatapathId, Set<Link>>
focal_class.signature: Map<DatapathId, Set<Link>> getSwitchLinks()
focal_class.class_method_signature: LinkDiscoveryManager.addMACToIgnoreList(MacAddress mac, int ignoreBits)
focal_class.full_signature: @Override public void addMACToIgnoreList(MacAddress mac, int ignoreBits)
focal_class.identifier: addMACToIgnoreList
focal_class.modifiers: @Override public
focal_class.parameters: (MacAddress mac, int ignoreBits)
focal_class.return: void
focal_class.signature: void addMACToIgnoreList(MacAddress mac, int ignoreBits)
focal_class.class_method_signature: LinkDiscoveryManager.isAutoPortFastFeature()
focal_class.full_signature: @Override public boolean isAutoPortFastFeature()
focal_class.identifier: isAutoPortFastFeature
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: boolean
focal_class.signature: boolean isAutoPortFastFeature()
focal_class.class_method_signature: LinkDiscoveryManager.setAutoPortFastFeature(boolean autoPortFastFeature)
focal_class.full_signature: @Override public void setAutoPortFastFeature(boolean autoPortFastFeature)
focal_class.identifier: setAutoPortFastFeature
focal_class.modifiers: @Override public
focal_class.parameters: (boolean autoPortFastFeature)
focal_class.return: void
focal_class.signature: void setAutoPortFastFeature(boolean autoPortFastFeature)
focal_class.class_method_signature: LinkDiscoveryManager.addListener(ILinkDiscoveryListener listener)
focal_class.full_signature: @Override public void addListener(ILinkDiscoveryListener listener)
focal_class.identifier: addListener
focal_class.modifiers: @Override public
focal_class.parameters: (ILinkDiscoveryListener listener)
focal_class.return: void
focal_class.signature: void addListener(ILinkDiscoveryListener listener)
focal_class.class_method_signature: LinkDiscoveryManager.getLinks()
focal_class.full_signature: @Override public Map<Link, LinkInfo> getLinks()
focal_class.identifier: getLinks
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: Map<Link, LinkInfo>
focal_class.signature: Map<Link, LinkInfo> getLinks()
focal_class.class_method_signature: LinkDiscoveryManager.getLinkInfo(Link link)
focal_class.full_signature: @Override public LinkInfo getLinkInfo(Link link)
focal_class.identifier: getLinkInfo
focal_class.modifiers: @Override public
focal_class.parameters: (Link link)
focal_class.return: LinkInfo
focal_class.signature: LinkInfo getLinkInfo(Link link)
focal_class.class_method_signature: LinkDiscoveryManager.getName()
focal_class.full_signature: @Override public String getName()
focal_class.identifier: getName
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String getName()
focal_class.class_method_signature: LinkDiscoveryManager.receive(IOFSwitch sw, OFMessage msg,
  			FloodlightContext cntx)
focal_class.full_signature: @Override public Command receive(IOFSwitch sw, OFMessage msg,
  			FloodlightContext cntx)
focal_class.identifier: receive
focal_class.modifiers: @Override public
focal_class.parameters: (IOFSwitch sw, OFMessage msg,
  			FloodlightContext cntx)
focal_class.return: Command
focal_class.signature: Command receive(IOFSwitch sw, OFMessage msg,
  			FloodlightContext cntx)
focal_class.class_method_signature: LinkDiscoveryManager.isCallbackOrderingPrereq(OFType type, String name)
focal_class.full_signature: @Override public boolean isCallbackOrderingPrereq(OFType type, String name)
focal_class.identifier: isCallbackOrderingPrereq
focal_class.modifiers: @Override public
focal_class.parameters: (OFType type, String name)
focal_class.return: boolean
focal_class.signature: boolean isCallbackOrderingPrereq(OFType type, String name)
focal_class.class_method_signature: LinkDiscoveryManager.isCallbackOrderingPostreq(OFType type, String name)
focal_class.full_signature: @Override public boolean isCallbackOrderingPostreq(OFType type, String name)
focal_class.identifier: isCallbackOrderingPostreq
focal_class.modifiers: @Override public
focal_class.parameters: (OFType type, String name)
focal_class.return: boolean
focal_class.signature: boolean isCallbackOrderingPostreq(OFType type, String name)
focal_class.class_method_signature: LinkDiscoveryManager.handlePacketIn(DatapathId sw, OFPacketIn pi,
  			FloodlightContext cntx)
focal_class.full_signature: protected Command handlePacketIn(DatapathId sw, OFPacketIn pi,
  			FloodlightContext cntx)
focal_class.identifier: handlePacketIn
focal_class.modifiers: protected
focal_class.parameters: (DatapathId sw, OFPacketIn pi,
  			FloodlightContext cntx)
focal_class.return: Command
focal_class.signature: Command handlePacketIn(DatapathId sw, OFPacketIn pi,
  			FloodlightContext cntx)
focal_class.class_method_signature: LinkDiscoveryManager.ignorePacketInFromSource(MacAddress srcMAC)
focal_class.full_signature: private boolean ignorePacketInFromSource(MacAddress srcMAC)
focal_class.identifier: ignorePacketInFromSource
focal_class.modifiers: private
focal_class.parameters: (MacAddress srcMAC)
focal_class.return: boolean
focal_class.signature: boolean ignorePacketInFromSource(MacAddress srcMAC)
focal_class.class_method_signature: LinkDiscoveryManager.handleLldp(LLDP lldp, DatapathId sw, OFPort inPort,
  			boolean isStandard, FloodlightContext cntx)
focal_class.full_signature: private Command handleLldp(LLDP lldp, DatapathId sw, OFPort inPort,
  			boolean isStandard, FloodlightContext cntx)
focal_class.identifier: handleLldp
focal_class.modifiers: private
focal_class.parameters: (LLDP lldp, DatapathId sw, OFPort inPort,
  			boolean isStandard, FloodlightContext cntx)
focal_class.return: Command
focal_class.signature: Command handleLldp(LLDP lldp, DatapathId sw, OFPort inPort,
  			boolean isStandard, FloodlightContext cntx)
focal_class.class_method_signature: LinkDiscoveryManager.processNewPort(DatapathId sw, OFPort p)
focal_class.full_signature: private void processNewPort(DatapathId sw, OFPort p)
focal_class.identifier: processNewPort
focal_class.modifiers: private
focal_class.parameters: (DatapathId sw, OFPort p)
focal_class.return: void
focal_class.signature: void processNewPort(DatapathId sw, OFPort p)
focal_class.class_method_signature: LinkDiscoveryManager.doUpdatesThread()
focal_class.full_signature: @LogMessageDoc(level = "ERROR", message = "Error in link discovery updates loop", explanation = "An unknown error occured while dispatching " + "link update notifications", recommendation = LogMessageDoc.GENERIC_ACTION) private void doUpdatesThread()
focal_class.identifier: doUpdatesThread
focal_class.modifiers: @LogMessageDoc(level = "ERROR", message = "Error in link discovery updates loop", explanation = "An unknown error occured while dispatching " + "link update notifications", recommendation = LogMessageDoc.GENERIC_ACTION) private
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void doUpdatesThread()
focal_class.class_method_signature: LinkDiscoveryManager.isLinkDiscoverySuppressed(DatapathId sw, OFPort portNumber)
focal_class.full_signature: protected boolean isLinkDiscoverySuppressed(DatapathId sw, OFPort portNumber)
focal_class.identifier: isLinkDiscoverySuppressed
focal_class.modifiers: protected
focal_class.parameters: (DatapathId sw, OFPort portNumber)
focal_class.return: boolean
focal_class.signature: boolean isLinkDiscoverySuppressed(DatapathId sw, OFPort portNumber)
focal_class.class_method_signature: LinkDiscoveryManager.discoverLinks()
focal_class.full_signature: protected void discoverLinks()
focal_class.identifier: discoverLinks
focal_class.modifiers: protected
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void discoverLinks()
focal_class.class_method_signature: LinkDiscoveryManager.addToQuarantineQueue(NodePortTuple npt)
focal_class.full_signature: protected void addToQuarantineQueue(NodePortTuple npt)
focal_class.identifier: addToQuarantineQueue
focal_class.modifiers: protected
focal_class.parameters: (NodePortTuple npt)
focal_class.return: void
focal_class.signature: void addToQuarantineQueue(NodePortTuple npt)
focal_class.class_method_signature: LinkDiscoveryManager.flagToRemoveFromQuarantineQueue(NodePortTuple npt)
focal_class.full_signature: protected void flagToRemoveFromQuarantineQueue(NodePortTuple npt)
focal_class.identifier: flagToRemoveFromQuarantineQueue
focal_class.modifiers: protected
focal_class.parameters: (NodePortTuple npt)
focal_class.return: void
focal_class.signature: void flagToRemoveFromQuarantineQueue(NodePortTuple npt)
focal_class.class_method_signature: LinkDiscoveryManager.addToMaintenanceQueue(NodePortTuple npt)
focal_class.full_signature: protected void addToMaintenanceQueue(NodePortTuple npt)
focal_class.identifier: addToMaintenanceQueue
focal_class.modifiers: protected
focal_class.parameters: (NodePortTuple npt)
focal_class.return: void
focal_class.signature: void addToMaintenanceQueue(NodePortTuple npt)
focal_class.class_method_signature: LinkDiscoveryManager.flagToRemoveFromMaintenanceQueue(NodePortTuple npt)
focal_class.full_signature: protected void flagToRemoveFromMaintenanceQueue(NodePortTuple npt)
focal_class.identifier: flagToRemoveFromMaintenanceQueue
focal_class.modifiers: protected
focal_class.parameters: (NodePortTuple npt)
focal_class.return: void
focal_class.signature: void flagToRemoveFromMaintenanceQueue(NodePortTuple npt)
focal_class.class_method_signature: LinkDiscoveryManager.processBDDPLists()
focal_class.full_signature: protected void processBDDPLists()
focal_class.identifier: processBDDPLists
focal_class.modifiers: protected
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void processBDDPLists()
focal_class.class_method_signature: LinkDiscoveryManager.generateSwitchPortStatusUpdate(DatapathId sw, OFPort port)
focal_class.full_signature: private void generateSwitchPortStatusUpdate(DatapathId sw, OFPort port)
focal_class.identifier: generateSwitchPortStatusUpdate
focal_class.modifiers: private
focal_class.parameters: (DatapathId sw, OFPort port)
focal_class.return: void
focal_class.signature: void generateSwitchPortStatusUpdate(DatapathId sw, OFPort port)
focal_class.class_method_signature: LinkDiscoveryManager.discover(NodePortTuple npt)
focal_class.full_signature: protected void discover(NodePortTuple npt)
focal_class.identifier: discover
focal_class.modifiers: protected
focal_class.parameters: (NodePortTuple npt)
focal_class.return: void
focal_class.signature: void discover(NodePortTuple npt)
focal_class.class_method_signature: LinkDiscoveryManager.discover(DatapathId sw, OFPort port)
focal_class.full_signature: protected void discover(DatapathId sw, OFPort port)
focal_class.identifier: discover
focal_class.modifiers: protected
focal_class.parameters: (DatapathId sw, OFPort port)
focal_class.return: void
focal_class.signature: void discover(DatapathId sw, OFPort port)
focal_class.class_method_signature: LinkDiscoveryManager.isIncomingDiscoveryAllowed(DatapathId sw, OFPort port,
  			boolean isStandard)
focal_class.full_signature: protected boolean isIncomingDiscoveryAllowed(DatapathId sw, OFPort port,
  			boolean isStandard)
focal_class.identifier: isIncomingDiscoveryAllowed
focal_class.modifiers: protected
focal_class.parameters: (DatapathId sw, OFPort port,
  			boolean isStandard)
focal_class.return: boolean
focal_class.signature: boolean isIncomingDiscoveryAllowed(DatapathId sw, OFPort port,
  			boolean isStandard)
focal_class.class_method_signature: LinkDiscoveryManager.isOutgoingDiscoveryAllowed(DatapathId sw, OFPort port,
  			boolean isStandard,
  			boolean isReverse)
focal_class.full_signature: protected boolean isOutgoingDiscoveryAllowed(DatapathId sw, OFPort port,
  			boolean isStandard,
  			boolean isReverse)
focal_class.identifier: isOutgoingDiscoveryAllowed
focal_class.modifiers: protected
focal_class.parameters: (DatapathId sw, OFPort port,
  			boolean isStandard,
  			boolean isReverse)
focal_class.return: boolean
focal_class.signature: boolean isOutgoingDiscoveryAllowed(DatapathId sw, OFPort port,
  			boolean isStandard,
  			boolean isReverse)
focal_class.class_method_signature: LinkDiscoveryManager.getDiscoveryActions(IOFSwitch sw, OFPort port)
focal_class.full_signature: protected List<OFAction> getDiscoveryActions(IOFSwitch sw, OFPort port)
focal_class.identifier: getDiscoveryActions
focal_class.modifiers: protected
focal_class.parameters: (IOFSwitch sw, OFPort port)
focal_class.return: List<OFAction>
focal_class.signature: List<OFAction> getDiscoveryActions(IOFSwitch sw, OFPort port)
focal_class.class_method_signature: LinkDiscoveryManager.sendDiscoveryMessage(DatapathId sw, OFPort port,
  			boolean isStandard, boolean isReverse)
focal_class.full_signature: @LogMessageDoc(level = "ERROR", message = "Failure sending LLDP out port {port} on switch {switch}", explanation = "An I/O error occured while sending LLDP message " + "to the switch.", recommendation = LogMessageDoc.CHECK_SWITCH) protected void sendDiscoveryMessage(DatapathId sw, OFPort port,
  			boolean isStandard, boolean isReverse)
focal_class.identifier: sendDiscoveryMessage
focal_class.modifiers: @LogMessageDoc(level = "ERROR", message = "Failure sending LLDP out port {port} on switch {switch}", explanation = "An I/O error occured while sending LLDP message " + "to the switch.", recommendation = LogMessageDoc.CHECK_SWITCH) protected
focal_class.parameters: (DatapathId sw, OFPort port,
  			boolean isStandard, boolean isReverse)
focal_class.return: void
focal_class.signature: void sendDiscoveryMessage(DatapathId sw, OFPort port,
  			boolean isStandard, boolean isReverse)
focal_class.class_method_signature: LinkDiscoveryManager.discoverOnAllPorts()
focal_class.full_signature: protected void discoverOnAllPorts()
focal_class.identifier: discoverOnAllPorts
focal_class.modifiers: protected
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void discoverOnAllPorts()
focal_class.class_method_signature: LinkDiscoveryManager.getUpdateOperation(OFPortState srcPortState, OFPortState dstPortState)
focal_class.full_signature: protected UpdateOperation getUpdateOperation(OFPortState srcPortState, OFPortState dstPortState)
focal_class.identifier: getUpdateOperation
focal_class.modifiers: protected
focal_class.parameters: (OFPortState srcPortState, OFPortState dstPortState)
focal_class.return: UpdateOperation
focal_class.signature: UpdateOperation getUpdateOperation(OFPortState srcPortState, OFPortState dstPortState)
focal_class.class_method_signature: LinkDiscoveryManager.getUpdateOperation(OFPortState srcPortState)
focal_class.full_signature: protected UpdateOperation getUpdateOperation(OFPortState srcPortState)
focal_class.identifier: getUpdateOperation
focal_class.modifiers: protected
focal_class.parameters: (OFPortState srcPortState)
focal_class.return: UpdateOperation
focal_class.signature: UpdateOperation getUpdateOperation(OFPortState srcPortState)
focal_class.class_method_signature: LinkDiscoveryManager.isLinkAllowed(DatapathId src, OFPort srcPort,
  			DatapathId dst, OFPort dstPort)
focal_class.full_signature: protected boolean isLinkAllowed(DatapathId src, OFPort srcPort,
  			DatapathId dst, OFPort dstPort)
focal_class.identifier: isLinkAllowed
focal_class.modifiers: protected
focal_class.parameters: (DatapathId src, OFPort srcPort,
  			DatapathId dst, OFPort dstPort)
focal_class.return: boolean
focal_class.signature: boolean isLinkAllowed(DatapathId src, OFPort srcPort,
  			DatapathId dst, OFPort dstPort)
focal_class.class_method_signature: LinkDiscoveryManager.addLink(Link lt, LinkInfo newInfo)
focal_class.full_signature: private boolean addLink(Link lt, LinkInfo newInfo)
focal_class.identifier: addLink
focal_class.modifiers: private
focal_class.parameters: (Link lt, LinkInfo newInfo)
focal_class.return: boolean
focal_class.signature: boolean addLink(Link lt, LinkInfo newInfo)
focal_class.class_method_signature: LinkDiscoveryManager.updateLink(Link lt, LinkInfo oldInfo, LinkInfo newInfo)
focal_class.full_signature: protected boolean updateLink(Link lt, LinkInfo oldInfo, LinkInfo newInfo)
focal_class.identifier: updateLink
focal_class.modifiers: protected
focal_class.parameters: (Link lt, LinkInfo oldInfo, LinkInfo newInfo)
focal_class.return: boolean
focal_class.signature: boolean updateLink(Link lt, LinkInfo oldInfo, LinkInfo newInfo)
focal_class.class_method_signature: LinkDiscoveryManager.addOrUpdateLink(Link lt, LinkInfo newInfo)
focal_class.full_signature: @LogMessageDocs({ @LogMessageDoc(message="Inter-switch link detected:", explanation="Detected a new link between two openflow switches," + "use show link to find current status"), @LogMessageDoc(message="Inter-switch link updated:", explanation="Detected a link change between two openflow switches, " + "use show link to find current status") }) protected boolean addOrUpdateLink(Link lt, LinkInfo newInfo)
focal_class.identifier: addOrUpdateLink
focal_class.modifiers: @LogMessageDocs({ @LogMessageDoc(message="Inter-switch link detected:", explanation="Detected a new link between two openflow switches," + "use show link to find current status"), @LogMessageDoc(message="Inter-switch link updated:", explanation="Detected a link change between two openflow switches, " + "use show link to find current status") }) protected
focal_class.parameters: (Link lt, LinkInfo newInfo)
focal_class.return: boolean
focal_class.signature: boolean addOrUpdateLink(Link lt, LinkInfo newInfo)
focal_class.class_method_signature: LinkDiscoveryManager.deleteLink(Link link, String reason)
focal_class.full_signature: protected void deleteLink(Link link, String reason)
focal_class.identifier: deleteLink
focal_class.modifiers: protected
focal_class.parameters: (Link link, String reason)
focal_class.return: void
focal_class.signature: void deleteLink(Link link, String reason)
focal_class.class_method_signature: LinkDiscoveryManager.deleteLinks(List<Link> links, String reason)
focal_class.full_signature: protected void deleteLinks(List<Link> links, String reason)
focal_class.identifier: deleteLinks
focal_class.modifiers: protected
focal_class.parameters: (List<Link> links, String reason)
focal_class.return: void
focal_class.signature: void deleteLinks(List<Link> links, String reason)
focal_class.class_method_signature: LinkDiscoveryManager.deleteLinks(List<Link> links, String reason,
  			List<LDUpdate> updateList)
focal_class.full_signature: @LogMessageDoc(message="Inter-switch link removed:", explanation="A previously detected link between two openflow switches no longer exists, " + "use show link to find current status") protected void deleteLinks(List<Link> links, String reason,
  			List<LDUpdate> updateList)
focal_class.identifier: deleteLinks
focal_class.modifiers: @LogMessageDoc(message="Inter-switch link removed:", explanation="A previously detected link between two openflow switches no longer exists, " + "use show link to find current status") protected
focal_class.parameters: (List<Link> links, String reason,
  			List<LDUpdate> updateList)
focal_class.return: void
focal_class.signature: void deleteLinks(List<Link> links, String reason,
  			List<LDUpdate> updateList)
focal_class.class_method_signature: LinkDiscoveryManager.deleteLinksOnPort(NodePortTuple npt, String reason)
focal_class.full_signature: protected void deleteLinksOnPort(NodePortTuple npt, String reason)
focal_class.identifier: deleteLinksOnPort
focal_class.modifiers: protected
focal_class.parameters: (NodePortTuple npt, String reason)
focal_class.return: void
focal_class.signature: void deleteLinksOnPort(NodePortTuple npt, String reason)
focal_class.class_method_signature: LinkDiscoveryManager.timeoutLinks()
focal_class.full_signature: protected void timeoutLinks()
focal_class.identifier: timeoutLinks
focal_class.modifiers: protected
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void timeoutLinks()
focal_class.class_method_signature: LinkDiscoveryManager.setControllerTLV()
focal_class.full_signature: @LogMessageDoc(level="WARN", message="Could not get list of interfaces of local machine to " + "encode in TLV: {detail-msg}", explanation="Outgoing LLDP packets encode a unique hash to " + "identify the local machine. The list of network " + "interfaces is used as input and the controller failed " + "to query this list", recommendation=LogMessageDoc.REPORT_CONTROLLER_BUG) protected void setControllerTLV()
focal_class.identifier: setControllerTLV
focal_class.modifiers: @LogMessageDoc(level="WARN", message="Could not get list of interfaces of local machine to " + "encode in TLV: {detail-msg}", explanation="Outgoing LLDP packets encode a unique hash to " + "identify the local machine. The list of network " + "interfaces is used as input and the controller failed " + "to query this list", recommendation=LogMessageDoc.REPORT_CONTROLLER_BUG) protected
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void setControllerTLV()
focal_class.class_method_signature: LinkDiscoveryManager.handlePortDown(DatapathId switchId, OFPort portNumber)
focal_class.full_signature: private void handlePortDown(DatapathId switchId, OFPort portNumber)
focal_class.identifier: handlePortDown
focal_class.modifiers: private
focal_class.parameters: (DatapathId switchId, OFPort portNumber)
focal_class.return: void
focal_class.signature: void handlePortDown(DatapathId switchId, OFPort portNumber)
focal_class.class_method_signature: LinkDiscoveryManager.switchPortChanged(DatapathId switchId,
  			OFPortDesc port,
  			PortChangeType type)
focal_class.full_signature: @Override public void switchPortChanged(DatapathId switchId,
  			OFPortDesc port,
  			PortChangeType type)
focal_class.identifier: switchPortChanged
focal_class.modifiers: @Override public
focal_class.parameters: (DatapathId switchId,
  			OFPortDesc port,
  			PortChangeType type)
focal_class.return: void
focal_class.signature: void switchPortChanged(DatapathId switchId,
  			OFPortDesc port,
  			PortChangeType type)
focal_class.class_method_signature: LinkDiscoveryManager.switchAdded(DatapathId switchId)
focal_class.full_signature: @Override public void switchAdded(DatapathId switchId)
focal_class.identifier: switchAdded
focal_class.modifiers: @Override public
focal_class.parameters: (DatapathId switchId)
focal_class.return: void
focal_class.signature: void switchAdded(DatapathId switchId)
focal_class.class_method_signature: LinkDiscoveryManager.switchRemoved(DatapathId sw)
focal_class.full_signature: @Override public void switchRemoved(DatapathId sw)
focal_class.identifier: switchRemoved
focal_class.modifiers: @Override public
focal_class.parameters: (DatapathId sw)
focal_class.return: void
focal_class.signature: void switchRemoved(DatapathId sw)
focal_class.class_method_signature: LinkDiscoveryManager.switchActivated(DatapathId switchId)
focal_class.full_signature: @Override public void switchActivated(DatapathId switchId)
focal_class.identifier: switchActivated
focal_class.modifiers: @Override public
focal_class.parameters: (DatapathId switchId)
focal_class.return: void
focal_class.signature: void switchActivated(DatapathId switchId)
focal_class.class_method_signature: LinkDiscoveryManager.switchChanged(DatapathId switchId)
focal_class.full_signature: @Override public void switchChanged(DatapathId switchId)
focal_class.identifier: switchChanged
focal_class.modifiers: @Override public
focal_class.parameters: (DatapathId switchId)
focal_class.return: void
focal_class.signature: void switchChanged(DatapathId switchId)
focal_class.class_method_signature: LinkDiscoveryManager.setStorageSource(IStorageSourceService storageSourceService)
focal_class.full_signature: public void setStorageSource(IStorageSourceService storageSourceService)
focal_class.identifier: setStorageSource
focal_class.modifiers: public
focal_class.parameters: (IStorageSourceService storageSourceService)
focal_class.return: void
focal_class.signature: void setStorageSource(IStorageSourceService storageSourceService)
focal_class.class_method_signature: LinkDiscoveryManager.getStorageSource()
focal_class.full_signature: public IStorageSourceService getStorageSource()
focal_class.identifier: getStorageSource
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: IStorageSourceService
focal_class.signature: IStorageSourceService getStorageSource()
focal_class.class_method_signature: LinkDiscoveryManager.rowsModified(String tableName, Set<Object> rowKeys)
focal_class.full_signature: @Override public void rowsModified(String tableName, Set<Object> rowKeys)
focal_class.identifier: rowsModified
focal_class.modifiers: @Override public
focal_class.parameters: (String tableName, Set<Object> rowKeys)
focal_class.return: void
focal_class.signature: void rowsModified(String tableName, Set<Object> rowKeys)
focal_class.class_method_signature: LinkDiscoveryManager.rowsDeleted(String tableName, Set<Object> rowKeys)
focal_class.full_signature: @Override public void rowsDeleted(String tableName, Set<Object> rowKeys)
focal_class.identifier: rowsDeleted
focal_class.modifiers: @Override public
focal_class.parameters: (String tableName, Set<Object> rowKeys)
focal_class.return: void
focal_class.signature: void rowsDeleted(String tableName, Set<Object> rowKeys)
focal_class.class_method_signature: LinkDiscoveryManager.readTopologyConfigFromStorage()
focal_class.full_signature: protected void readTopologyConfigFromStorage()
focal_class.identifier: readTopologyConfigFromStorage
focal_class.modifiers: protected
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void readTopologyConfigFromStorage()
focal_class.class_method_signature: LinkDiscoveryManager.clearAllLinks()
focal_class.full_signature:  void clearAllLinks()
focal_class.identifier: clearAllLinks
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void clearAllLinks()
focal_class.class_method_signature: LinkDiscoveryManager.writeLinkToStorage(Link lt, LinkInfo linkInfo)
focal_class.full_signature: protected void writeLinkToStorage(Link lt, LinkInfo linkInfo)
focal_class.identifier: writeLinkToStorage
focal_class.modifiers: protected
focal_class.parameters: (Link lt, LinkInfo linkInfo)
focal_class.return: void
focal_class.signature: void writeLinkToStorage(Link lt, LinkInfo linkInfo)
focal_class.class_method_signature: LinkDiscoveryManager.removeLinkFromStorage(Link lt)
focal_class.full_signature: protected void removeLinkFromStorage(Link lt)
focal_class.identifier: removeLinkFromStorage
focal_class.modifiers: protected
focal_class.parameters: (Link lt)
focal_class.return: void
focal_class.signature: void removeLinkFromStorage(Link lt)
focal_class.class_method_signature: LinkDiscoveryManager.readLinkValidTime(Link lt)
focal_class.full_signature: public Long readLinkValidTime(Link lt)
focal_class.identifier: readLinkValidTime
focal_class.modifiers: public
focal_class.parameters: (Link lt)
focal_class.return: Long
focal_class.signature: Long readLinkValidTime(Link lt)
focal_class.class_method_signature: LinkDiscoveryManager.getLinkId(Link lt)
focal_class.full_signature: private String getLinkId(Link lt)
focal_class.identifier: getLinkId
focal_class.modifiers: private
focal_class.parameters: (Link lt)
focal_class.return: String
focal_class.signature: String getLinkId(Link lt)
focal_class.class_method_signature: LinkDiscoveryManager.getModuleServices()
focal_class.full_signature: @Override public Collection<Class<? extends IFloodlightService>> getModuleServices()
focal_class.identifier: getModuleServices
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: Collection<Class<? extends IFloodlightService>>
focal_class.signature: Collection<Class<? extends IFloodlightService>> getModuleServices()
focal_class.class_method_signature: LinkDiscoveryManager.getServiceImpls()
focal_class.full_signature: @Override public Map<Class<? extends IFloodlightService>, IFloodlightService> getServiceImpls()
focal_class.identifier: getServiceImpls
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: Map<Class<? extends IFloodlightService>, IFloodlightService>
focal_class.signature: Map<Class<? extends IFloodlightService>, IFloodlightService> getServiceImpls()
focal_class.class_method_signature: LinkDiscoveryManager.getModuleDependencies()
focal_class.full_signature: @Override public Collection<Class<? extends IFloodlightService>> getModuleDependencies()
focal_class.identifier: getModuleDependencies
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: Collection<Class<? extends IFloodlightService>>
focal_class.signature: Collection<Class<? extends IFloodlightService>> getModuleDependencies()
focal_class.class_method_signature: LinkDiscoveryManager.init(FloodlightModuleContext context)
focal_class.full_signature: @Override public void init(FloodlightModuleContext context)
focal_class.identifier: init
focal_class.modifiers: @Override public
focal_class.parameters: (FloodlightModuleContext context)
focal_class.return: void
focal_class.signature: void init(FloodlightModuleContext context)
focal_class.class_method_signature: LinkDiscoveryManager.startUp(FloodlightModuleContext context)
focal_class.full_signature: @Override @LogMessageDocs({ @LogMessageDoc(level = "ERROR", message = "No storage source found.", explanation = "Storage source was not initialized; cannot initialize " + "link discovery.", recommendation = LogMessageDoc.REPORT_CONTROLLER_BUG), @LogMessageDoc(level = "ERROR", message = "Error in installing listener for " + "switch config table {table}", explanation = "Failed to install storage notification for the " + "switch config table", recommendation = LogMessageDoc.REPORT_CONTROLLER_BUG), @LogMessageDoc(level = "ERROR", message = "No storage source found.", explanation = "Storage source was not initialized; cannot initialize " + "link discovery.", recommendation = LogMessageDoc.REPORT_CONTROLLER_BUG), @LogMessageDoc(level = "ERROR", message = "Exception in LLDP send timer.", explanation = "An unknown error occured while sending LLDP " + "messages to switches.", recommendation = LogMessageDoc.CHECK_SWITCH) }) public void startUp(FloodlightModuleContext context)
focal_class.identifier: startUp
focal_class.modifiers: @Override @LogMessageDocs({ @LogMessageDoc(level = "ERROR", message = "No storage source found.", explanation = "Storage source was not initialized; cannot initialize " + "link discovery.", recommendation = LogMessageDoc.REPORT_CONTROLLER_BUG), @LogMessageDoc(level = "ERROR", message = "Error in installing listener for " + "switch config table {table}", explanation = "Failed to install storage notification for the " + "switch config table", recommendation = LogMessageDoc.REPORT_CONTROLLER_BUG), @LogMessageDoc(level = "ERROR", message = "No storage source found.", explanation = "Storage source was not initialized; cannot initialize " + "link discovery.", recommendation = LogMessageDoc.REPORT_CONTROLLER_BUG), @LogMessageDoc(level = "ERROR", message = "Exception in LLDP send timer.", explanation = "An unknown error occured while sending LLDP " + "messages to switches.", recommendation = LogMessageDoc.CHECK_SWITCH) }) public
focal_class.parameters: (FloodlightModuleContext context)
focal_class.return: void
focal_class.signature: void startUp(FloodlightModuleContext context)
focal_class.class_method_signature: LinkDiscoveryManager.registerLinkDiscoveryDebugCounters()
focal_class.full_signature: private void registerLinkDiscoveryDebugCounters()
focal_class.identifier: registerLinkDiscoveryDebugCounters
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void registerLinkDiscoveryDebugCounters()
focal_class.class_method_signature: LinkDiscoveryManager.registerLinkDiscoveryDebugEvents()
focal_class.full_signature: private void registerLinkDiscoveryDebugEvents()
focal_class.identifier: registerLinkDiscoveryDebugEvents
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void registerLinkDiscoveryDebugEvents()
focal_class.class_method_signature: LinkDiscoveryManager.getInfo(String type)
focal_class.full_signature: @Override public Map<String, Object> getInfo(String type)
focal_class.identifier: getInfo
focal_class.modifiers: @Override public
focal_class.parameters: (String type)
focal_class.return: Map<String, Object>
focal_class.signature: Map<String, Object> getInfo(String type)
focal_method.body: protected void deleteLink(Link link, String reason) {
  		if (link == null)
  			return;
  		List<Link> linkList = new ArrayList<Link>();
  		linkList.add(link);
  		deleteLinks(linkList, reason);
  	}
focal_method.class_method_signature: LinkDiscoveryManager.deleteLink(Link link, String reason)
focal_method.full_signature: protected void deleteLink(Link link, String reason)
focal_method.identifier: deleteLink
focal_method.invocations: add deleteLinks
focal_method.modifiers: protected
focal_method.parameters: (Link link, String reason)
focal_method.return: void
focal_method.signature: void deleteLink(Link link, String reason)