test_class.declarator: controller
test_class.modifier: private
test_class.original_string: private Controller controller;
test_class.type: Controller
test_class.var_name: controller
test_class.declarator: tp
test_class.modifier: private
test_class.original_string: private MockThreadPoolService tp;
test_class.type: MockThreadPoolService
test_class.var_name: tp
test_class.declarator: syncService
test_class.modifier: private
test_class.original_string: private MockSyncService syncService;
test_class.type: MockSyncService
test_class.var_name: syncService
test_class.declarator: testPacket
test_class.modifier: private
test_class.original_string: private IPacket testPacket;
test_class.type: IPacket
test_class.var_name: testPacket
test_class.declarator: pi
test_class.modifier: private
test_class.original_string: private OFPacketIn pi;
test_class.type: OFPacketIn
test_class.var_name: pi
test_class.declarator: factory = OFFactories.getFactory(OFVersion.OF_10)
test_class.modifier: private final
test_class.original_string: private final OFFactory factory = OFFactories.getFactory(OFVersion.OF_10);
test_class.type: OFFactory
test_class.var_name: factory
test_class.declarator: DATAPATH_ID_0 = DatapathId.of(0)
test_class.modifier: private static
test_class.original_string: private static DatapathId DATAPATH_ID_0 = DatapathId.of(0);
test_class.type: DatapathId
test_class.var_name: DATAPATH_ID_0
test_class.file: src/agents/apps/floodlight/floodlight-1.2/src/test/java/net/floodlightcontroller/core/internal/ControllerTest.java
test_class.identifier: ControllerTest
test_class.superclass: extends FloodlightTestCase
test_case.body: @Test
      public void testHandleOutgoingMessage() throws Exception {
          OFMessage m = factory.buildEchoRequest().build();
          IOFSwitchBackend sw = createMock(IOFSwitchBackend.class);
          expect(sw.getId()).andReturn(DATAPATH_ID_0).anyTimes();
  
          // Add listeners
          IOFMessageListener test1 = createMock(IOFMessageListener.class);
          expect(test1.getName()).andReturn("test1").anyTimes();
          setupListenerOrdering(test1);
  
          IOFMessageListener test2 = createMock(IOFMessageListener.class);
          expect(test2.getName()).andReturn("test2").anyTimes();
          test2.isCallbackOrderingPostreq(OFType.ECHO_REQUEST, "test1");
          expectLastCall().andReturn(true).atLeastOnce();
          setupListenerOrdering(test2);
  
          IOFMessageListener test3 = createMock(IOFMessageListener.class);
          expect(test3.getName()).andReturn("test3").anyTimes();
          test3.isCallbackOrderingPostreq(OFType.ECHO_REQUEST, "test2");
          expectLastCall().andReturn(true).atLeastOnce();
          setupListenerOrdering(test3);
  
          // expected ordering is test3, test2, test1
  
          replay(test1, test2, test3);
          controller.addOFMessageListener(OFType.ECHO_REQUEST, test1);
          controller.addOFMessageListener(OFType.ECHO_REQUEST, test3);
          controller.addOFMessageListener(OFType.ECHO_REQUEST, test2);
          verify(test1);
          verify(test2);
          verify(test3);
  
          // Test inject with null switch and no message. Should not work.
          reset(test1, test2, test3);
          replay(test1, test2, test3, sw);
          try {
              controller.handleOutgoingMessage(null, pi);
              fail("handleOutgoindMessage should have thrown a NPE");
          } catch (NullPointerException e) {
              // expected
          }
          try {
              controller.handleOutgoingMessage(sw, null);
              fail("handleOutgoingMessage should have thrown a NPE");
          } catch (NullPointerException e) {
              // expected
          }
          verify(test1);
          verify(test2);
          verify(test3);
          verify(sw);
  
          // Test the handleOutgoingMessage
          reset(test1, test2, test3, sw);
          expect(sw.getId()).andReturn(DATAPATH_ID_0).anyTimes();
          expect(test2.receive(same(sw), same(m) , isA(FloodlightContext.class)))
                  .andReturn(Command.STOP);
          expect(test3.receive(same(sw), same(m) , isA(FloodlightContext.class)))
                  .andReturn(Command.CONTINUE);
          // test1 will not receive any message!
          replay(test1, test2, test3, sw);
          controller.handleOutgoingMessage(sw, m);
          verify(test1);
          verify(test2);
          verify(test3);
          verify(sw);
  
          // Test the handleOutgoingMessage with null context
          reset(test1, test2, test3, sw);
          expect(sw.getId()).andReturn(DATAPATH_ID_0).anyTimes();
          expect(test2.receive(same(sw), same(m) , isA(FloodlightContext.class)))
                  .andReturn(Command.STOP);
          expect(test3.receive(same(sw), same(m) , isA(FloodlightContext.class)))
                  .andReturn(Command.CONTINUE);
          // test1 will not receive any message!
          replay(test1, test2, test3, sw);
          controller.handleOutgoingMessage(sw, m);
          verify(test1);
          verify(test2);
          verify(test3);
          verify(sw);
  
          // Test for message without listeners
          reset(test1, test2, test3, sw);
          replay(test1, test2, test3, sw);
          m = factory.buildEchoReply().build();
          controller.handleOutgoingMessage(sw, m);
          verify(test1);
          verify(test2);
          verify(test3);
          verify(sw);
      }
test_case.class_method_signature: ControllerTest.testHandleOutgoingMessage()
test_case.full_signature: @Test public void testHandleOutgoingMessage()
test_case.identifier: testHandleOutgoingMessage
test_case.invocations: build buildEchoRequest createMock anyTimes andReturn expect getId createMock anyTimes andReturn expect getName setupListenerOrdering createMock anyTimes andReturn expect getName isCallbackOrderingPostreq atLeastOnce andReturn expectLastCall setupListenerOrdering createMock anyTimes andReturn expect getName isCallbackOrderingPostreq atLeastOnce andReturn expectLastCall setupListenerOrdering replay addOFMessageListener addOFMessageListener addOFMessageListener verify verify verify reset replay handleOutgoingMessage fail handleOutgoingMessage fail verify verify verify verify reset anyTimes andReturn expect getId andReturn expect receive same same isA andReturn expect receive same same isA replay handleOutgoingMessage verify verify verify verify reset anyTimes andReturn expect getId andReturn expect receive same same isA andReturn expect receive same same isA replay handleOutgoingMessage verify verify verify verify reset replay build buildEchoReply handleOutgoingMessage verify verify verify verify
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void testHandleOutgoingMessage()
focal_class.declarator: log = LoggerFactory.getLogger(Controller.class)
focal_class.modifier: protected static final
focal_class.original_string: protected static final Logger log = LoggerFactory.getLogger(Controller.class);
focal_class.type: Logger
focal_class.var_name: log
focal_class.declarator: notifier = NotificationManagerFactory.getNotificationManager(Controller.class)
focal_class.modifier: protected static final
focal_class.original_string: protected static final INotificationManager notifier = NotificationManagerFactory.getNotificationManager(Controller.class);
focal_class.type: INotificationManager
focal_class.var_name: notifier
focal_class.declarator: ERROR_DATABASE = "The controller could not communicate with the system database."
focal_class.modifier: static final
focal_class.original_string: static final String ERROR_DATABASE = "The controller could not communicate with the system database.";
focal_class.type: String
focal_class.var_name: ERROR_DATABASE
focal_class.declarator: messageListeners
focal_class.modifier: protected
focal_class.original_string: protected ConcurrentMap<OFType, ListenerDispatcher<OFType,IOFMessageListener>> messageListeners;
focal_class.type: ConcurrentMap<OFType, ListenerDispatcher<OFType,IOFMessageListener>>
focal_class.var_name: messageListeners
focal_class.declarator: completionListeners
focal_class.modifier: protected
focal_class.original_string: protected ConcurrentLinkedQueue<IControllerCompletionListener> completionListeners;
focal_class.type: ConcurrentLinkedQueue<IControllerCompletionListener>
focal_class.var_name: completionListeners
focal_class.declarator: controllerNodeIPsCache
focal_class.modifier: protected
focal_class.original_string: protected HashMap<String, String> controllerNodeIPsCache;
focal_class.type: HashMap<String, String>
focal_class.var_name: controllerNodeIPsCache
focal_class.declarator: haListeners
focal_class.modifier: protected
focal_class.original_string: protected ListenerDispatcher<HAListenerTypeMarker,IHAListener> haListeners;
focal_class.type: ListenerDispatcher<HAListenerTypeMarker,IHAListener>
focal_class.var_name: haListeners
focal_class.declarator: providerMap
focal_class.modifier: protected
focal_class.original_string: protected Map<String, List<IInfoProvider>> providerMap;
focal_class.type: Map<String, List<IInfoProvider>>
focal_class.var_name: providerMap
focal_class.declarator: updates
focal_class.modifier: protected
focal_class.original_string: protected BlockingQueue<IUpdate> updates;
focal_class.type: BlockingQueue<IUpdate>
focal_class.var_name: updates
focal_class.declarator: counters
focal_class.modifier: protected
focal_class.original_string: protected ControllerCounters counters;
focal_class.type: ControllerCounters
focal_class.var_name: counters
focal_class.declarator: timer
focal_class.modifier: protected
focal_class.original_string: protected Timer timer;
focal_class.type: Timer
focal_class.var_name: timer
focal_class.declarator: moduleLoaderState
focal_class.modifier: private
focal_class.original_string: private ModuleLoaderState moduleLoaderState;
focal_class.type: ModuleLoaderState
focal_class.var_name: moduleLoaderState
focal_class.declarator: storageSourceService
focal_class.modifier: private
focal_class.original_string: private IStorageSourceService storageSourceService;
focal_class.type: IStorageSourceService
focal_class.var_name: storageSourceService
focal_class.declarator: switchService
focal_class.modifier: private
focal_class.original_string: private IOFSwitchService switchService;
focal_class.type: IOFSwitchService
focal_class.var_name: switchService
focal_class.declarator: debugCounterService
focal_class.modifier: private
focal_class.original_string: private 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: restApiService
focal_class.modifier: private
focal_class.original_string: private IRestApiService restApiService;
focal_class.type: IRestApiService
focal_class.var_name: restApiService
focal_class.declarator: pktinProcTimeService
focal_class.modifier: private
focal_class.original_string: private IPktInProcessingTimeService pktinProcTimeService;
focal_class.type: IPktInProcessingTimeService
focal_class.var_name: pktinProcTimeService
focal_class.declarator: threadPoolService
focal_class.modifier: private
focal_class.original_string: private IThreadPoolService threadPoolService;
focal_class.type: IThreadPoolService
focal_class.var_name: threadPoolService
focal_class.declarator: syncService
focal_class.modifier: private
focal_class.original_string: private ISyncService syncService;
focal_class.type: ISyncService
focal_class.var_name: syncService
focal_class.declarator: shutdownService
focal_class.modifier: private
focal_class.original_string: private IShutdownService shutdownService;
focal_class.type: IShutdownService
focal_class.var_name: shutdownService
focal_class.declarator: openFlowPort = TransportPort.of(6653)
focal_class.modifier: private static
focal_class.original_string: private static TransportPort openFlowPort = TransportPort.of(6653);
focal_class.type: TransportPort
focal_class.var_name: openFlowPort
focal_class.declarator: openFlowAddresses = new HashSet<IPv4Address>()
focal_class.modifier: private static
focal_class.original_string: private static Set<IPv4Address> openFlowAddresses = new HashSet<IPv4Address>();
focal_class.type: Set<IPv4Address>
focal_class.var_name: openFlowAddresses
focal_class.declarator: SEND_BUFFER_SIZE = 4 * 1024 * 1024
focal_class.modifier: public static final
focal_class.original_string: public static final int SEND_BUFFER_SIZE = 4 * 1024 * 1024;
focal_class.type: int
focal_class.var_name: SEND_BUFFER_SIZE
focal_class.declarator: workerThreads = 16
focal_class.modifier: protected
focal_class.original_string: protected int workerThreads = 16;
focal_class.type: int
focal_class.var_name: workerThreads
focal_class.declarator: controllerId = "my-floodlight-controller"
focal_class.modifier: protected
focal_class.original_string: protected String controllerId = "my-floodlight-controller";
focal_class.type: String
focal_class.var_name: controllerId
focal_class.declarator: notifiedRole
focal_class.modifier: protected volatile
focal_class.original_string: protected volatile HARole notifiedRole;
focal_class.type: HARole
focal_class.var_name: notifiedRole
focal_class.declarator: INITIAL_ROLE_CHANGE_DESCRIPTION = "Controller startup."
focal_class.modifier: private static final
focal_class.original_string: private static final String INITIAL_ROLE_CHANGE_DESCRIPTION = "Controller startup.";
focal_class.type: String
focal_class.var_name: INITIAL_ROLE_CHANGE_DESCRIPTION
focal_class.declarator: roleManager
focal_class.modifier: private
focal_class.original_string: private RoleManager roleManager;
focal_class.type: RoleManager
focal_class.var_name: roleManager
focal_class.declarator: CONTROLLER_TABLE_NAME = "controller_controller"
focal_class.modifier: protected static final
focal_class.original_string: protected static final String CONTROLLER_TABLE_NAME = "controller_controller";
focal_class.type: String
focal_class.var_name: CONTROLLER_TABLE_NAME
focal_class.declarator: CONTROLLER_ID = "id"
focal_class.modifier: protected static final
focal_class.original_string: protected static final String CONTROLLER_ID = "id";
focal_class.type: String
focal_class.var_name: CONTROLLER_ID
focal_class.declarator: SWITCH_CONFIG_TABLE_NAME = "controller_switchconfig"
focal_class.modifier: protected static final
focal_class.original_string: protected static final String SWITCH_CONFIG_TABLE_NAME = "controller_switchconfig";
focal_class.type: String
focal_class.var_name: SWITCH_CONFIG_TABLE_NAME
focal_class.declarator: SWITCH_CONFIG_CORE_SWITCH = "core_switch"
focal_class.modifier: protected static final
focal_class.original_string: protected static final String SWITCH_CONFIG_CORE_SWITCH = "core_switch";
focal_class.type: String
focal_class.var_name: SWITCH_CONFIG_CORE_SWITCH
focal_class.declarator: CONTROLLER_INTERFACE_TABLE_NAME = "controller_controllerinterface"
focal_class.modifier: protected static final
focal_class.original_string: protected static final String CONTROLLER_INTERFACE_TABLE_NAME = "controller_controllerinterface";
focal_class.type: String
focal_class.var_name: CONTROLLER_INTERFACE_TABLE_NAME
focal_class.declarator: CONTROLLER_INTERFACE_ID = "id"
focal_class.modifier: protected static final
focal_class.original_string: protected static final String CONTROLLER_INTERFACE_ID = "id";
focal_class.type: String
focal_class.var_name: CONTROLLER_INTERFACE_ID
focal_class.declarator: CONTROLLER_INTERFACE_CONTROLLER_ID = "controller_id"
focal_class.modifier: protected static final
focal_class.original_string: protected static final String CONTROLLER_INTERFACE_CONTROLLER_ID = "controller_id";
focal_class.type: String
focal_class.var_name: CONTROLLER_INTERFACE_CONTROLLER_ID
focal_class.declarator: CONTROLLER_INTERFACE_TYPE = "type"
focal_class.modifier: protected static final
focal_class.original_string: protected static final String CONTROLLER_INTERFACE_TYPE = "type";
focal_class.type: String
focal_class.var_name: CONTROLLER_INTERFACE_TYPE
focal_class.declarator: CONTROLLER_INTERFACE_NUMBER = "number"
focal_class.modifier: protected static final
focal_class.original_string: protected static final String CONTROLLER_INTERFACE_NUMBER = "number";
focal_class.type: String
focal_class.var_name: CONTROLLER_INTERFACE_NUMBER
focal_class.declarator: CONTROLLER_INTERFACE_DISCOVERED_IP = "discovered_ip"
focal_class.modifier: protected static final
focal_class.original_string: protected static final String CONTROLLER_INTERFACE_DISCOVERED_IP = "discovered_ip";
focal_class.type: String
focal_class.var_name: CONTROLLER_INTERFACE_DISCOVERED_IP
focal_class.declarator: FLOW_PRIORITY_TABLE_NAME = "controller_forwardingconfig"
focal_class.modifier: private static final
focal_class.original_string: private static final String FLOW_PRIORITY_TABLE_NAME = "controller_forwardingconfig";
focal_class.type: String
focal_class.var_name: FLOW_PRIORITY_TABLE_NAME
focal_class.declarator: FLOW_COLUMN_PRIMARY_KEY = "id"
focal_class.modifier: private static final
focal_class.original_string: private static final String FLOW_COLUMN_PRIMARY_KEY = "id";
focal_class.type: String
focal_class.var_name: FLOW_COLUMN_PRIMARY_KEY
focal_class.declarator: FLOW_VALUE_PRIMARY_KEY = "forwarding"
focal_class.modifier: private static final
focal_class.original_string: private static final String FLOW_VALUE_PRIMARY_KEY = "forwarding";
focal_class.type: String
focal_class.var_name: FLOW_VALUE_PRIMARY_KEY
focal_class.declarator: FLOW_COLUMN_ACCESS_PRIORITY = "access_priority"
focal_class.modifier: private static final
focal_class.original_string: private static final String FLOW_COLUMN_ACCESS_PRIORITY = "access_priority";
focal_class.type: String
focal_class.var_name: FLOW_COLUMN_ACCESS_PRIORITY
focal_class.declarator: FLOW_COLUMN_CORE_PRIORITY = "core_priority"
focal_class.modifier: private static final
focal_class.original_string: private static final String FLOW_COLUMN_CORE_PRIORITY = "core_priority";
focal_class.type: String
focal_class.var_name: FLOW_COLUMN_CORE_PRIORITY
focal_class.declarator: FLOW_COLUMN_NAMES = new String[] {
              FLOW_COLUMN_PRIMARY_KEY,
              FLOW_COLUMN_ACCESS_PRIORITY,
              FLOW_COLUMN_CORE_PRIORITY
      }
focal_class.modifier: private static final
focal_class.original_string: private static final String[] FLOW_COLUMN_NAMES = new String[] {
              FLOW_COLUMN_PRIMARY_KEY,
              FLOW_COLUMN_ACCESS_PRIORITY,
              FLOW_COLUMN_CORE_PRIORITY
      };
focal_class.type: String[]
focal_class.var_name: FLOW_COLUMN_NAMES
focal_class.declarator: ALWAYS_DECODE_ETH = true
focal_class.modifier: protected static final
focal_class.original_string: protected static final boolean ALWAYS_DECODE_ETH = true;
focal_class.type: boolean
focal_class.var_name: ALWAYS_DECODE_ETH
focal_class.declarator: uplinkPortPrefixSet
focal_class.original_string: Set<String> uplinkPortPrefixSet;
focal_class.type: Set<String>
focal_class.var_name: uplinkPortPrefixSet
focal_class.declarator: overload_drop = Boolean.parseBoolean(System.getProperty("overload_drop", "false"))
focal_class.modifier: protected final
focal_class.original_string: protected final boolean overload_drop = Boolean.parseBoolean(System.getProperty("overload_drop", "false"));
focal_class.type: boolean
focal_class.var_name: overload_drop
focal_class.declarator: loadmonitor = new LoadMonitor(log)
focal_class.modifier: protected final
focal_class.original_string: protected final LoadMonitor loadmonitor = new LoadMonitor(log);
focal_class.type: LoadMonitor
focal_class.var_name: loadmonitor
focal_class.declarator: flcontext_cache =
          new ThreadLocal <Stack<FloodlightContext>> () {
              @Override
              protected Stack<FloodlightContext> initialValue() {
                  return new Stack<FloodlightContext>();
              }
          }
focal_class.modifier: protected static final
focal_class.original_string: protected static final ThreadLocal<Stack<FloodlightContext>> flcontext_cache =
          new ThreadLocal <Stack<FloodlightContext>> () {
              @Override
              protected Stack<FloodlightContext> initialValue() {
                  return new Stack<FloodlightContext>();
              }
          };
focal_class.type: ThreadLocal<Stack<FloodlightContext>>
focal_class.var_name: flcontext_cache
focal_class.declarator: FLOW_PRIORITY_CHANGED_AFTER_STARTUP =
              "Flow priority configuration has changed after " +
              "controller startup. Restart controller for new " +
              "configuration to take effect."
focal_class.modifier: private static final
focal_class.original_string: private static final String FLOW_PRIORITY_CHANGED_AFTER_STARTUP =
              "Flow priority configuration has changed after " +
              "controller startup. Restart controller for new " +
              "configuration to take effect.";
focal_class.type: String
focal_class.var_name: FLOW_PRIORITY_CHANGED_AFTER_STARTUP
focal_class.file: src/agents/apps/floodlight/floodlight-1.2/src/main/java/net/floodlightcontroller/core/internal/Controller.java
focal_class.identifier: Controller
focal_class.interfaces: implements IFloodlightProviderService, IStorageSourceListener, IInfoProvider
focal_class.class_method_signature: Controller.getUplinkPortPrefixSet()
focal_class.full_signature: @Override public Set<String> getUplinkPortPrefixSet()
focal_class.identifier: getUplinkPortPrefixSet
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: Set<String>
focal_class.signature: Set<String> getUplinkPortPrefixSet()
focal_class.class_method_signature: Controller.setUplinkPortPrefixSet(Set<String> prefixSet)
focal_class.full_signature: public void setUplinkPortPrefixSet(Set<String> prefixSet)
focal_class.identifier: setUplinkPortPrefixSet
focal_class.modifiers: public
focal_class.parameters: (Set<String> prefixSet)
focal_class.return: void
focal_class.signature: void setUplinkPortPrefixSet(Set<String> prefixSet)
focal_class.class_method_signature: Controller.getModuleLoaderState()
focal_class.full_signature: @Override public ModuleLoaderState getModuleLoaderState()
focal_class.identifier: getModuleLoaderState
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: ModuleLoaderState
focal_class.signature: ModuleLoaderState getModuleLoaderState()
focal_class.class_method_signature: Controller.setStorageSourceService(IStorageSourceService storageSource)
focal_class.full_signature:  void setStorageSourceService(IStorageSourceService storageSource)
focal_class.identifier: setStorageSourceService
focal_class.parameters: (IStorageSourceService storageSource)
focal_class.return: void
focal_class.signature: void setStorageSourceService(IStorageSourceService storageSource)
focal_class.class_method_signature: Controller.getStorageSourceService()
focal_class.full_signature:  IStorageSourceService getStorageSourceService()
focal_class.identifier: getStorageSourceService
focal_class.parameters: ()
focal_class.return: IStorageSourceService
focal_class.signature: IStorageSourceService getStorageSourceService()
focal_class.class_method_signature: Controller.getShutdownService()
focal_class.full_signature:  IShutdownService getShutdownService()
focal_class.identifier: getShutdownService
focal_class.parameters: ()
focal_class.return: IShutdownService
focal_class.signature: IShutdownService getShutdownService()
focal_class.class_method_signature: Controller.setShutdownService(IShutdownService shutdownService)
focal_class.full_signature:  void setShutdownService(IShutdownService shutdownService)
focal_class.identifier: setShutdownService
focal_class.parameters: (IShutdownService shutdownService)
focal_class.return: void
focal_class.signature: void setShutdownService(IShutdownService shutdownService)
focal_class.class_method_signature: Controller.setDebugEvent(IDebugEventService debugEvent)
focal_class.full_signature: public void setDebugEvent(IDebugEventService debugEvent)
focal_class.identifier: setDebugEvent
focal_class.modifiers: public
focal_class.parameters: (IDebugEventService debugEvent)
focal_class.return: void
focal_class.signature: void setDebugEvent(IDebugEventService debugEvent)
focal_class.class_method_signature: Controller.setDebugCounter(IDebugCounterService debugCounters)
focal_class.full_signature:  void setDebugCounter(IDebugCounterService debugCounters)
focal_class.identifier: setDebugCounter
focal_class.parameters: (IDebugCounterService debugCounters)
focal_class.return: void
focal_class.signature: void setDebugCounter(IDebugCounterService debugCounters)
focal_class.class_method_signature: Controller.getDebugCounter()
focal_class.full_signature:  IDebugCounterService getDebugCounter()
focal_class.identifier: getDebugCounter
focal_class.parameters: ()
focal_class.return: IDebugCounterService
focal_class.signature: IDebugCounterService getDebugCounter()
focal_class.class_method_signature: Controller.setSyncService(ISyncService syncService)
focal_class.full_signature:  void setSyncService(ISyncService syncService)
focal_class.identifier: setSyncService
focal_class.parameters: (ISyncService syncService)
focal_class.return: void
focal_class.signature: void setSyncService(ISyncService syncService)
focal_class.class_method_signature: Controller.setPktInProcessingService(IPktInProcessingTimeService pits)
focal_class.full_signature:  void setPktInProcessingService(IPktInProcessingTimeService pits)
focal_class.identifier: setPktInProcessingService
focal_class.parameters: (IPktInProcessingTimeService pits)
focal_class.return: void
focal_class.signature: void setPktInProcessingService(IPktInProcessingTimeService pits)
focal_class.class_method_signature: Controller.setRestApiService(IRestApiService restApi)
focal_class.full_signature:  void setRestApiService(IRestApiService restApi)
focal_class.identifier: setRestApiService
focal_class.parameters: (IRestApiService restApi)
focal_class.return: void
focal_class.signature: void setRestApiService(IRestApiService restApi)
focal_class.class_method_signature: Controller.setThreadPoolService(IThreadPoolService tp)
focal_class.full_signature:  void setThreadPoolService(IThreadPoolService tp)
focal_class.identifier: setThreadPoolService
focal_class.parameters: (IThreadPoolService tp)
focal_class.return: void
focal_class.signature: void setThreadPoolService(IThreadPoolService tp)
focal_class.class_method_signature: Controller.getThreadPoolService()
focal_class.full_signature:  IThreadPoolService getThreadPoolService()
focal_class.identifier: getThreadPoolService
focal_class.parameters: ()
focal_class.return: IThreadPoolService
focal_class.signature: IThreadPoolService getThreadPoolService()
focal_class.class_method_signature: Controller.setSwitchService(IOFSwitchService switchService)
focal_class.full_signature: public void setSwitchService(IOFSwitchService switchService)
focal_class.identifier: setSwitchService
focal_class.modifiers: public
focal_class.parameters: (IOFSwitchService switchService)
focal_class.return: void
focal_class.signature: void setSwitchService(IOFSwitchService switchService)
focal_class.class_method_signature: Controller.getSwitchService()
focal_class.full_signature: public IOFSwitchService getSwitchService()
focal_class.identifier: getSwitchService
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: IOFSwitchService
focal_class.signature: IOFSwitchService getSwitchService()
focal_class.class_method_signature: Controller.getWorkerThreads()
focal_class.full_signature: @Override public int getWorkerThreads()
focal_class.identifier: getWorkerThreads
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: int
focal_class.signature: int getWorkerThreads()
focal_class.class_method_signature: Controller.getRole()
focal_class.full_signature: @Override public HARole getRole()
focal_class.identifier: getRole
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: HARole
focal_class.signature: HARole getRole()
focal_class.class_method_signature: Controller.getRoleInfo()
focal_class.full_signature: @Override public RoleInfo getRoleInfo()
focal_class.identifier: getRoleInfo
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: RoleInfo
focal_class.signature: RoleInfo getRoleInfo()
focal_class.class_method_signature: Controller.setRole(HARole role, String changeDescription)
focal_class.full_signature: @Override public void setRole(HARole role, String changeDescription)
focal_class.identifier: setRole
focal_class.modifiers: @Override public
focal_class.parameters: (HARole role, String changeDescription)
focal_class.return: void
focal_class.signature: void setRole(HARole role, String changeDescription)
focal_class.class_method_signature: Controller.flcontext_alloc()
focal_class.full_signature: protected static FloodlightContext flcontext_alloc()
focal_class.identifier: flcontext_alloc
focal_class.modifiers: protected static
focal_class.parameters: ()
focal_class.return: FloodlightContext
focal_class.signature: FloodlightContext flcontext_alloc()
focal_class.class_method_signature: Controller.flcontext_free(FloodlightContext flcontext)
focal_class.full_signature: protected void flcontext_free(FloodlightContext flcontext)
focal_class.identifier: flcontext_free
focal_class.modifiers: protected
focal_class.parameters: (FloodlightContext flcontext)
focal_class.return: void
focal_class.signature: void flcontext_free(FloodlightContext flcontext)
focal_class.class_method_signature: Controller.handleMessage(IOFSwitch sw, OFMessage m,
                                   FloodlightContext bContext)
focal_class.full_signature: @Override public void handleMessage(IOFSwitch sw, OFMessage m,
                                   FloodlightContext bContext)
focal_class.identifier: handleMessage
focal_class.modifiers: @Override public
focal_class.parameters: (IOFSwitch sw, OFMessage m,
                                   FloodlightContext bContext)
focal_class.return: void
focal_class.signature: void handleMessage(IOFSwitch sw, OFMessage m,
                                   FloodlightContext bContext)
focal_class.class_method_signature: Controller.reassertRole(OFSwitchHandshakeHandler ofSwitchHandshakeHandler, HARole role)
focal_class.full_signature:  void reassertRole(OFSwitchHandshakeHandler ofSwitchHandshakeHandler, HARole role)
focal_class.identifier: reassertRole
focal_class.parameters: (OFSwitchHandshakeHandler ofSwitchHandshakeHandler, HARole role)
focal_class.return: void
focal_class.signature: void reassertRole(OFSwitchHandshakeHandler ofSwitchHandshakeHandler, HARole role)
focal_class.class_method_signature: Controller.getControllerId()
focal_class.full_signature: @Override public String getControllerId()
focal_class.identifier: getControllerId
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String getControllerId()
focal_class.class_method_signature: Controller.getOFAddresses()
focal_class.full_signature: @Override public Set<IPv4Address> getOFAddresses()
focal_class.identifier: getOFAddresses
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: Set<IPv4Address>
focal_class.signature: Set<IPv4Address> getOFAddresses()
focal_class.class_method_signature: Controller.getOFPort()
focal_class.full_signature: @Override public TransportPort getOFPort()
focal_class.identifier: getOFPort
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: TransportPort
focal_class.signature: TransportPort getOFPort()
focal_class.class_method_signature: Controller.addCompletionListener(IControllerCompletionListener listener)
focal_class.full_signature: @Override public synchronized void addCompletionListener(IControllerCompletionListener listener)
focal_class.identifier: addCompletionListener
focal_class.modifiers: @Override public synchronized
focal_class.parameters: (IControllerCompletionListener listener)
focal_class.return: void
focal_class.signature: void addCompletionListener(IControllerCompletionListener listener)
focal_class.class_method_signature: Controller.removeCompletionListener(IControllerCompletionListener listener)
focal_class.full_signature: @Override public synchronized void removeCompletionListener(IControllerCompletionListener listener)
focal_class.identifier: removeCompletionListener
focal_class.modifiers: @Override public synchronized
focal_class.parameters: (IControllerCompletionListener listener)
focal_class.return: void
focal_class.signature: void removeCompletionListener(IControllerCompletionListener listener)
focal_class.class_method_signature: Controller.addOFMessageListener(OFType type, IOFMessageListener listener)
focal_class.full_signature: @Override public synchronized void addOFMessageListener(OFType type, IOFMessageListener listener)
focal_class.identifier: addOFMessageListener
focal_class.modifiers: @Override public synchronized
focal_class.parameters: (OFType type, IOFMessageListener listener)
focal_class.return: void
focal_class.signature: void addOFMessageListener(OFType type, IOFMessageListener listener)
focal_class.class_method_signature: Controller.removeOFMessageListener(OFType type, IOFMessageListener listener)
focal_class.full_signature: @Override public synchronized void removeOFMessageListener(OFType type, IOFMessageListener listener)
focal_class.identifier: removeOFMessageListener
focal_class.modifiers: @Override public synchronized
focal_class.parameters: (OFType type, IOFMessageListener listener)
focal_class.return: void
focal_class.signature: void removeOFMessageListener(OFType type, IOFMessageListener listener)
focal_class.class_method_signature: Controller.logListeners()
focal_class.full_signature: private void logListeners()
focal_class.identifier: logListeners
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void logListeners()
focal_class.class_method_signature: Controller.removeOFMessageListeners(OFType type)
focal_class.full_signature: public void removeOFMessageListeners(OFType type)
focal_class.identifier: removeOFMessageListeners
focal_class.modifiers: public
focal_class.parameters: (OFType type)
focal_class.return: void
focal_class.signature: void removeOFMessageListeners(OFType type)
focal_class.class_method_signature: Controller.getListeners()
focal_class.full_signature: @Override public Map<OFType, List<IOFMessageListener>> getListeners()
focal_class.identifier: getListeners
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: Map<OFType, List<IOFMessageListener>>
focal_class.signature: Map<OFType, List<IOFMessageListener>> getListeners()
focal_class.class_method_signature: Controller.handleOutgoingMessage(IOFSwitch sw, OFMessage m)
focal_class.full_signature: @Override public void handleOutgoingMessage(IOFSwitch sw, OFMessage m)
focal_class.identifier: handleOutgoingMessage
focal_class.modifiers: @Override public
focal_class.parameters: (IOFSwitch sw, OFMessage m)
focal_class.return: void
focal_class.signature: void handleOutgoingMessage(IOFSwitch sw, OFMessage m)
focal_class.class_method_signature: Controller.getInitialRole(Map<String, String> configParams)
focal_class.full_signature: protected HARole getInitialRole(Map<String, String> configParams)
focal_class.identifier: getInitialRole
focal_class.modifiers: protected
focal_class.parameters: (Map<String, String> configParams)
focal_class.return: HARole
focal_class.signature: HARole getInitialRole(Map<String, String> configParams)
focal_class.class_method_signature: Controller.run()
focal_class.full_signature: @Override public void run()
focal_class.identifier: run
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void run()
focal_class.class_method_signature: Controller.setConfigParams(Map<String, String> configParams)
focal_class.full_signature: private void setConfigParams(Map<String, String> configParams)
focal_class.identifier: setConfigParams
focal_class.modifiers: private
focal_class.parameters: (Map<String, String> configParams)
focal_class.return: void
focal_class.signature: void setConfigParams(Map<String, String> configParams)
focal_class.class_method_signature: Controller.init(Map<String, String> configParams)
focal_class.full_signature: public void init(Map<String, String> configParams)
focal_class.identifier: init
focal_class.modifiers: public
focal_class.parameters: (Map<String, String> configParams)
focal_class.return: void
focal_class.signature: void init(Map<String, String> configParams)
focal_class.class_method_signature: Controller.startupComponents(FloodlightModuleLoader floodlightModuleLoader)
focal_class.full_signature: public void startupComponents(FloodlightModuleLoader floodlightModuleLoader)
focal_class.identifier: startupComponents
focal_class.modifiers: public
focal_class.parameters: (FloodlightModuleLoader floodlightModuleLoader)
focal_class.return: void
focal_class.signature: void startupComponents(FloodlightModuleLoader floodlightModuleLoader)
focal_class.class_method_signature: Controller.readFlowPriorityConfigurationFromStorage()
focal_class.full_signature: private void readFlowPriorityConfigurationFromStorage()
focal_class.identifier: readFlowPriorityConfigurationFromStorage
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void readFlowPriorityConfigurationFromStorage()
focal_class.class_method_signature: Controller.addInfoProvider(String type, IInfoProvider provider)
focal_class.full_signature: @Override public void addInfoProvider(String type, IInfoProvider provider)
focal_class.identifier: addInfoProvider
focal_class.modifiers: @Override public
focal_class.parameters: (String type, IInfoProvider provider)
focal_class.return: void
focal_class.signature: void addInfoProvider(String type, IInfoProvider provider)
focal_class.class_method_signature: Controller.removeInfoProvider(String type, IInfoProvider provider)
focal_class.full_signature: @Override public void removeInfoProvider(String type, IInfoProvider provider)
focal_class.identifier: removeInfoProvider
focal_class.modifiers: @Override public
focal_class.parameters: (String type, IInfoProvider provider)
focal_class.return: void
focal_class.signature: void removeInfoProvider(String type, IInfoProvider provider)
focal_class.class_method_signature: Controller.getControllerInfo(String type)
focal_class.full_signature: @Override public Map<String, Object> getControllerInfo(String type)
focal_class.identifier: getControllerInfo
focal_class.modifiers: @Override public
focal_class.parameters: (String type)
focal_class.return: Map<String, Object>
focal_class.signature: Map<String, Object> getControllerInfo(String type)
focal_class.class_method_signature: Controller.addHAListener(IHAListener listener)
focal_class.full_signature: @Override public void addHAListener(IHAListener listener)
focal_class.identifier: addHAListener
focal_class.modifiers: @Override public
focal_class.parameters: (IHAListener listener)
focal_class.return: void
focal_class.signature: void addHAListener(IHAListener listener)
focal_class.class_method_signature: Controller.removeHAListener(IHAListener listener)
focal_class.full_signature: @Override public void removeHAListener(IHAListener listener)
focal_class.identifier: removeHAListener
focal_class.modifiers: @Override public
focal_class.parameters: (IHAListener listener)
focal_class.return: void
focal_class.signature: void removeHAListener(IHAListener listener)
focal_class.class_method_signature: Controller.handleControllerNodeIPChanges()
focal_class.full_signature: protected void handleControllerNodeIPChanges()
focal_class.identifier: handleControllerNodeIPChanges
focal_class.modifiers: protected
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void handleControllerNodeIPChanges()
focal_class.class_method_signature: Controller.getControllerNodeIPs()
focal_class.full_signature: @Override public Map<String, String> getControllerNodeIPs()
focal_class.identifier: getControllerNodeIPs
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: Map<String, String>
focal_class.signature: Map<String, String> getControllerNodeIPs()
focal_class.class_method_signature: Controller.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: Controller.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: Controller.getSystemStartTime()
focal_class.full_signature: @Override public long getSystemStartTime()
focal_class.identifier: getSystemStartTime
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: long
focal_class.signature: long getSystemStartTime()
focal_class.class_method_signature: Controller.getMemory()
focal_class.full_signature: @Override public Map<String, Long> getMemory()
focal_class.identifier: getMemory
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: Map<String, Long>
focal_class.signature: Map<String, Long> getMemory()
focal_class.class_method_signature: Controller.getUptime()
focal_class.full_signature: @Override public Long getUptime()
focal_class.identifier: getUptime
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: Long
focal_class.signature: Long getUptime()
focal_class.class_method_signature: Controller.addUpdateToQueue(IUpdate update)
focal_class.full_signature: @Override public void addUpdateToQueue(IUpdate update)
focal_class.identifier: addUpdateToQueue
focal_class.modifiers: @Override public
focal_class.parameters: (IUpdate update)
focal_class.return: void
focal_class.signature: void addUpdateToQueue(IUpdate update)
focal_class.class_method_signature: Controller.processUpdateQueueForTesting()
focal_class.full_signature:  void processUpdateQueueForTesting()
focal_class.identifier: processUpdateQueueForTesting
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void processUpdateQueueForTesting()
focal_class.class_method_signature: Controller.isUpdateQueueEmptyForTesting()
focal_class.full_signature:  boolean isUpdateQueueEmptyForTesting()
focal_class.identifier: isUpdateQueueEmptyForTesting
focal_class.parameters: ()
focal_class.return: boolean
focal_class.signature: boolean isUpdateQueueEmptyForTesting()
focal_class.class_method_signature: Controller.resetModuleState()
focal_class.full_signature:  void resetModuleState()
focal_class.identifier: resetModuleState
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void resetModuleState()
focal_class.class_method_signature: Controller.setModuleLoaderStateForTesting(ModuleLoaderState state)
focal_class.full_signature:  void setModuleLoaderStateForTesting(ModuleLoaderState state)
focal_class.identifier: setModuleLoaderStateForTesting
focal_class.parameters: (ModuleLoaderState state)
focal_class.return: void
focal_class.signature: void setModuleLoaderStateForTesting(ModuleLoaderState state)
focal_class.class_method_signature: Controller.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_class.class_method_signature: Controller.setNotifiedRole(HARole newRole)
focal_class.full_signature: protected void setNotifiedRole(HARole newRole)
focal_class.identifier: setNotifiedRole
focal_class.modifiers: protected
focal_class.parameters: (HARole newRole)
focal_class.return: void
focal_class.signature: void setNotifiedRole(HARole newRole)
focal_class.class_method_signature: Controller.getRoleManager()
focal_class.full_signature: @Override public RoleManager getRoleManager()
focal_class.identifier: getRoleManager
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: RoleManager
focal_class.signature: RoleManager getRoleManager()
focal_class.class_method_signature: Controller.getId()
focal_class.full_signature: public Optional<ControllerId> getId()
focal_class.identifier: getId
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: Optional<ControllerId>
focal_class.signature: Optional<ControllerId> getId()
focal_class.class_method_signature: Controller.getTimer()
focal_class.full_signature: @Override public Timer getTimer()
focal_class.identifier: getTimer
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: Timer
focal_class.signature: Timer getTimer()
focal_class.class_method_signature: Controller.getCounters()
focal_class.full_signature: public ControllerCounters getCounters()
focal_class.identifier: getCounters
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: ControllerCounters
focal_class.signature: ControllerCounters getCounters()
focal_method.body: @Override
      public void handleOutgoingMessage(IOFSwitch sw, OFMessage m) {
          if (sw == null)
              throw new NullPointerException("Switch must not be null");
          if (m == null)
              throw new NullPointerException("OFMessage must not be null");
  
          FloodlightContext bc = new FloodlightContext();
  
          List<IOFMessageListener> listeners = null;
          if (messageListeners.containsKey(m.getType())) {
              listeners = messageListeners.get(m.getType()).getOrderedListeners();
          }
  
          if (listeners != null) {
              for (IOFMessageListener listener : listeners) {
                  if (Command.STOP.equals(listener.receive(sw, m, bc))) {
                      break;
                  }
              }
          }
      }
focal_method.class_method_signature: Controller.handleOutgoingMessage(IOFSwitch sw, OFMessage m)
focal_method.full_signature: @Override public void handleOutgoingMessage(IOFSwitch sw, OFMessage m)
focal_method.identifier: handleOutgoingMessage
focal_method.invocations: containsKey getType getOrderedListeners get getType equals receive
focal_method.modifiers: @Override public
focal_method.parameters: (IOFSwitch sw, OFMessage m)
focal_method.return: void
focal_method.signature: void handleOutgoingMessage(IOFSwitch sw, OFMessage m)